1// Copyright 2021 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// Creating a client
12//
13// Usage example:
14//
15//   import "google.golang.org/api/dfareporting/v3.5"
16//   ...
17//   ctx := context.Background()
18//   dfareportingService, err := dfareporting.NewService(ctx)
19//
20// In this example, Google Application Default Credentials are used for authentication.
21//
22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
23//
24// Other authentication options
25//
26// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:
27//
28//   dfareportingService, err := dfareporting.NewService(ctx, option.WithScopes(dfareporting.DfatraffickingScope))
29//
30// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
31//
32//   dfareportingService, err := dfareporting.NewService(ctx, option.WithAPIKey("AIza..."))
33//
34// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
35//
36//   config := &oauth2.Config{...}
37//   // ...
38//   token, err := config.Exchange(ctx, ...)
39//   dfareportingService, err := dfareporting.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
40//
41// See https://godoc.org/google.golang.org/api/option/ for details on options.
42package dfareporting // import "google.golang.org/api/dfareporting/v3.5"
43
44import (
45	"bytes"
46	"context"
47	"encoding/json"
48	"errors"
49	"fmt"
50	"io"
51	"net/http"
52	"net/url"
53	"strconv"
54	"strings"
55
56	googleapi "google.golang.org/api/googleapi"
57	gensupport "google.golang.org/api/internal/gensupport"
58	option "google.golang.org/api/option"
59	internaloption "google.golang.org/api/option/internaloption"
60	htransport "google.golang.org/api/transport/http"
61)
62
63// Always reference these packages, just in case the auto-generated code
64// below doesn't.
65var _ = bytes.NewBuffer
66var _ = strconv.Itoa
67var _ = fmt.Sprintf
68var _ = json.NewDecoder
69var _ = io.Copy
70var _ = url.Parse
71var _ = gensupport.MarshalJSON
72var _ = googleapi.Version
73var _ = errors.New
74var _ = strings.Replace
75var _ = context.Canceled
76var _ = internaloption.WithDefaultEndpoint
77
78const apiId = "dfareporting:v3.5"
79const apiName = "dfareporting"
80const apiVersion = "v3.5"
81const basePath = "https://dfareporting.googleapis.com/"
82const mtlsBasePath = "https://dfareporting.mtls.googleapis.com/"
83
84// OAuth2 scopes used by this API.
85const (
86	// Manage DoubleClick Digital Marketing conversions
87	DdmconversionsScope = "https://www.googleapis.com/auth/ddmconversions"
88
89	// View and manage DoubleClick for Advertisers reports
90	DfareportingScope = "https://www.googleapis.com/auth/dfareporting"
91
92	// View and manage your DoubleClick Campaign Manager's (DCM) display ad
93	// campaigns
94	DfatraffickingScope = "https://www.googleapis.com/auth/dfatrafficking"
95)
96
97// NewService creates a new Service.
98func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
99	scopesOption := option.WithScopes(
100		"https://www.googleapis.com/auth/ddmconversions",
101		"https://www.googleapis.com/auth/dfareporting",
102		"https://www.googleapis.com/auth/dfatrafficking",
103	)
104	// NOTE: prepend, so we don't override user-specified scopes.
105	opts = append([]option.ClientOption{scopesOption}, opts...)
106	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
107	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
108	client, endpoint, err := htransport.NewClient(ctx, opts...)
109	if err != nil {
110		return nil, err
111	}
112	s, err := New(client)
113	if err != nil {
114		return nil, err
115	}
116	if endpoint != "" {
117		s.BasePath = endpoint
118	}
119	return s, nil
120}
121
122// New creates a new Service. It uses the provided http.Client for requests.
123//
124// Deprecated: please use NewService instead.
125// To provide a custom HTTP client, use option.WithHTTPClient.
126// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
127func New(client *http.Client) (*Service, error) {
128	if client == nil {
129		return nil, errors.New("client is nil")
130	}
131	s := &Service{client: client, BasePath: basePath}
132	s.AccountActiveAdSummaries = NewAccountActiveAdSummariesService(s)
133	s.AccountPermissionGroups = NewAccountPermissionGroupsService(s)
134	s.AccountPermissions = NewAccountPermissionsService(s)
135	s.AccountUserProfiles = NewAccountUserProfilesService(s)
136	s.Accounts = NewAccountsService(s)
137	s.Ads = NewAdsService(s)
138	s.AdvertiserGroups = NewAdvertiserGroupsService(s)
139	s.AdvertiserLandingPages = NewAdvertiserLandingPagesService(s)
140	s.Advertisers = NewAdvertisersService(s)
141	s.Browsers = NewBrowsersService(s)
142	s.CampaignCreativeAssociations = NewCampaignCreativeAssociationsService(s)
143	s.Campaigns = NewCampaignsService(s)
144	s.ChangeLogs = NewChangeLogsService(s)
145	s.Cities = NewCitiesService(s)
146	s.ConnectionTypes = NewConnectionTypesService(s)
147	s.ContentCategories = NewContentCategoriesService(s)
148	s.Conversions = NewConversionsService(s)
149	s.Countries = NewCountriesService(s)
150	s.CreativeAssets = NewCreativeAssetsService(s)
151	s.CreativeFieldValues = NewCreativeFieldValuesService(s)
152	s.CreativeFields = NewCreativeFieldsService(s)
153	s.CreativeGroups = NewCreativeGroupsService(s)
154	s.Creatives = NewCreativesService(s)
155	s.DimensionValues = NewDimensionValuesService(s)
156	s.DirectorySites = NewDirectorySitesService(s)
157	s.DynamicTargetingKeys = NewDynamicTargetingKeysService(s)
158	s.EventTags = NewEventTagsService(s)
159	s.Files = NewFilesService(s)
160	s.FloodlightActivities = NewFloodlightActivitiesService(s)
161	s.FloodlightActivityGroups = NewFloodlightActivityGroupsService(s)
162	s.FloodlightConfigurations = NewFloodlightConfigurationsService(s)
163	s.InventoryItems = NewInventoryItemsService(s)
164	s.Languages = NewLanguagesService(s)
165	s.Metros = NewMetrosService(s)
166	s.MobileApps = NewMobileAppsService(s)
167	s.MobileCarriers = NewMobileCarriersService(s)
168	s.OperatingSystemVersions = NewOperatingSystemVersionsService(s)
169	s.OperatingSystems = NewOperatingSystemsService(s)
170	s.OrderDocuments = NewOrderDocumentsService(s)
171	s.Orders = NewOrdersService(s)
172	s.PlacementGroups = NewPlacementGroupsService(s)
173	s.PlacementStrategies = NewPlacementStrategiesService(s)
174	s.Placements = NewPlacementsService(s)
175	s.PlatformTypes = NewPlatformTypesService(s)
176	s.PostalCodes = NewPostalCodesService(s)
177	s.Projects = NewProjectsService(s)
178	s.Regions = NewRegionsService(s)
179	s.RemarketingListShares = NewRemarketingListSharesService(s)
180	s.RemarketingLists = NewRemarketingListsService(s)
181	s.Reports = NewReportsService(s)
182	s.Sites = NewSitesService(s)
183	s.Sizes = NewSizesService(s)
184	s.Subaccounts = NewSubaccountsService(s)
185	s.TargetableRemarketingLists = NewTargetableRemarketingListsService(s)
186	s.TargetingTemplates = NewTargetingTemplatesService(s)
187	s.UserProfiles = NewUserProfilesService(s)
188	s.UserRolePermissionGroups = NewUserRolePermissionGroupsService(s)
189	s.UserRolePermissions = NewUserRolePermissionsService(s)
190	s.UserRoles = NewUserRolesService(s)
191	s.VideoFormats = NewVideoFormatsService(s)
192	return s, nil
193}
194
195type Service struct {
196	client    *http.Client
197	BasePath  string // API endpoint base URL
198	UserAgent string // optional additional User-Agent fragment
199
200	AccountActiveAdSummaries *AccountActiveAdSummariesService
201
202	AccountPermissionGroups *AccountPermissionGroupsService
203
204	AccountPermissions *AccountPermissionsService
205
206	AccountUserProfiles *AccountUserProfilesService
207
208	Accounts *AccountsService
209
210	Ads *AdsService
211
212	AdvertiserGroups *AdvertiserGroupsService
213
214	AdvertiserLandingPages *AdvertiserLandingPagesService
215
216	Advertisers *AdvertisersService
217
218	Browsers *BrowsersService
219
220	CampaignCreativeAssociations *CampaignCreativeAssociationsService
221
222	Campaigns *CampaignsService
223
224	ChangeLogs *ChangeLogsService
225
226	Cities *CitiesService
227
228	ConnectionTypes *ConnectionTypesService
229
230	ContentCategories *ContentCategoriesService
231
232	Conversions *ConversionsService
233
234	Countries *CountriesService
235
236	CreativeAssets *CreativeAssetsService
237
238	CreativeFieldValues *CreativeFieldValuesService
239
240	CreativeFields *CreativeFieldsService
241
242	CreativeGroups *CreativeGroupsService
243
244	Creatives *CreativesService
245
246	DimensionValues *DimensionValuesService
247
248	DirectorySites *DirectorySitesService
249
250	DynamicTargetingKeys *DynamicTargetingKeysService
251
252	EventTags *EventTagsService
253
254	Files *FilesService
255
256	FloodlightActivities *FloodlightActivitiesService
257
258	FloodlightActivityGroups *FloodlightActivityGroupsService
259
260	FloodlightConfigurations *FloodlightConfigurationsService
261
262	InventoryItems *InventoryItemsService
263
264	Languages *LanguagesService
265
266	Metros *MetrosService
267
268	MobileApps *MobileAppsService
269
270	MobileCarriers *MobileCarriersService
271
272	OperatingSystemVersions *OperatingSystemVersionsService
273
274	OperatingSystems *OperatingSystemsService
275
276	OrderDocuments *OrderDocumentsService
277
278	Orders *OrdersService
279
280	PlacementGroups *PlacementGroupsService
281
282	PlacementStrategies *PlacementStrategiesService
283
284	Placements *PlacementsService
285
286	PlatformTypes *PlatformTypesService
287
288	PostalCodes *PostalCodesService
289
290	Projects *ProjectsService
291
292	Regions *RegionsService
293
294	RemarketingListShares *RemarketingListSharesService
295
296	RemarketingLists *RemarketingListsService
297
298	Reports *ReportsService
299
300	Sites *SitesService
301
302	Sizes *SizesService
303
304	Subaccounts *SubaccountsService
305
306	TargetableRemarketingLists *TargetableRemarketingListsService
307
308	TargetingTemplates *TargetingTemplatesService
309
310	UserProfiles *UserProfilesService
311
312	UserRolePermissionGroups *UserRolePermissionGroupsService
313
314	UserRolePermissions *UserRolePermissionsService
315
316	UserRoles *UserRolesService
317
318	VideoFormats *VideoFormatsService
319}
320
321func (s *Service) userAgent() string {
322	if s.UserAgent == "" {
323		return googleapi.UserAgent
324	}
325	return googleapi.UserAgent + " " + s.UserAgent
326}
327
328func NewAccountActiveAdSummariesService(s *Service) *AccountActiveAdSummariesService {
329	rs := &AccountActiveAdSummariesService{s: s}
330	return rs
331}
332
333type AccountActiveAdSummariesService struct {
334	s *Service
335}
336
337func NewAccountPermissionGroupsService(s *Service) *AccountPermissionGroupsService {
338	rs := &AccountPermissionGroupsService{s: s}
339	return rs
340}
341
342type AccountPermissionGroupsService struct {
343	s *Service
344}
345
346func NewAccountPermissionsService(s *Service) *AccountPermissionsService {
347	rs := &AccountPermissionsService{s: s}
348	return rs
349}
350
351type AccountPermissionsService struct {
352	s *Service
353}
354
355func NewAccountUserProfilesService(s *Service) *AccountUserProfilesService {
356	rs := &AccountUserProfilesService{s: s}
357	return rs
358}
359
360type AccountUserProfilesService struct {
361	s *Service
362}
363
364func NewAccountsService(s *Service) *AccountsService {
365	rs := &AccountsService{s: s}
366	return rs
367}
368
369type AccountsService struct {
370	s *Service
371}
372
373func NewAdsService(s *Service) *AdsService {
374	rs := &AdsService{s: s}
375	return rs
376}
377
378type AdsService struct {
379	s *Service
380}
381
382func NewAdvertiserGroupsService(s *Service) *AdvertiserGroupsService {
383	rs := &AdvertiserGroupsService{s: s}
384	return rs
385}
386
387type AdvertiserGroupsService struct {
388	s *Service
389}
390
391func NewAdvertiserLandingPagesService(s *Service) *AdvertiserLandingPagesService {
392	rs := &AdvertiserLandingPagesService{s: s}
393	return rs
394}
395
396type AdvertiserLandingPagesService struct {
397	s *Service
398}
399
400func NewAdvertisersService(s *Service) *AdvertisersService {
401	rs := &AdvertisersService{s: s}
402	return rs
403}
404
405type AdvertisersService struct {
406	s *Service
407}
408
409func NewBrowsersService(s *Service) *BrowsersService {
410	rs := &BrowsersService{s: s}
411	return rs
412}
413
414type BrowsersService struct {
415	s *Service
416}
417
418func NewCampaignCreativeAssociationsService(s *Service) *CampaignCreativeAssociationsService {
419	rs := &CampaignCreativeAssociationsService{s: s}
420	return rs
421}
422
423type CampaignCreativeAssociationsService struct {
424	s *Service
425}
426
427func NewCampaignsService(s *Service) *CampaignsService {
428	rs := &CampaignsService{s: s}
429	return rs
430}
431
432type CampaignsService struct {
433	s *Service
434}
435
436func NewChangeLogsService(s *Service) *ChangeLogsService {
437	rs := &ChangeLogsService{s: s}
438	return rs
439}
440
441type ChangeLogsService struct {
442	s *Service
443}
444
445func NewCitiesService(s *Service) *CitiesService {
446	rs := &CitiesService{s: s}
447	return rs
448}
449
450type CitiesService struct {
451	s *Service
452}
453
454func NewConnectionTypesService(s *Service) *ConnectionTypesService {
455	rs := &ConnectionTypesService{s: s}
456	return rs
457}
458
459type ConnectionTypesService struct {
460	s *Service
461}
462
463func NewContentCategoriesService(s *Service) *ContentCategoriesService {
464	rs := &ContentCategoriesService{s: s}
465	return rs
466}
467
468type ContentCategoriesService struct {
469	s *Service
470}
471
472func NewConversionsService(s *Service) *ConversionsService {
473	rs := &ConversionsService{s: s}
474	return rs
475}
476
477type ConversionsService struct {
478	s *Service
479}
480
481func NewCountriesService(s *Service) *CountriesService {
482	rs := &CountriesService{s: s}
483	return rs
484}
485
486type CountriesService struct {
487	s *Service
488}
489
490func NewCreativeAssetsService(s *Service) *CreativeAssetsService {
491	rs := &CreativeAssetsService{s: s}
492	return rs
493}
494
495type CreativeAssetsService struct {
496	s *Service
497}
498
499func NewCreativeFieldValuesService(s *Service) *CreativeFieldValuesService {
500	rs := &CreativeFieldValuesService{s: s}
501	return rs
502}
503
504type CreativeFieldValuesService struct {
505	s *Service
506}
507
508func NewCreativeFieldsService(s *Service) *CreativeFieldsService {
509	rs := &CreativeFieldsService{s: s}
510	return rs
511}
512
513type CreativeFieldsService struct {
514	s *Service
515}
516
517func NewCreativeGroupsService(s *Service) *CreativeGroupsService {
518	rs := &CreativeGroupsService{s: s}
519	return rs
520}
521
522type CreativeGroupsService struct {
523	s *Service
524}
525
526func NewCreativesService(s *Service) *CreativesService {
527	rs := &CreativesService{s: s}
528	return rs
529}
530
531type CreativesService struct {
532	s *Service
533}
534
535func NewDimensionValuesService(s *Service) *DimensionValuesService {
536	rs := &DimensionValuesService{s: s}
537	return rs
538}
539
540type DimensionValuesService struct {
541	s *Service
542}
543
544func NewDirectorySitesService(s *Service) *DirectorySitesService {
545	rs := &DirectorySitesService{s: s}
546	return rs
547}
548
549type DirectorySitesService struct {
550	s *Service
551}
552
553func NewDynamicTargetingKeysService(s *Service) *DynamicTargetingKeysService {
554	rs := &DynamicTargetingKeysService{s: s}
555	return rs
556}
557
558type DynamicTargetingKeysService struct {
559	s *Service
560}
561
562func NewEventTagsService(s *Service) *EventTagsService {
563	rs := &EventTagsService{s: s}
564	return rs
565}
566
567type EventTagsService struct {
568	s *Service
569}
570
571func NewFilesService(s *Service) *FilesService {
572	rs := &FilesService{s: s}
573	return rs
574}
575
576type FilesService struct {
577	s *Service
578}
579
580func NewFloodlightActivitiesService(s *Service) *FloodlightActivitiesService {
581	rs := &FloodlightActivitiesService{s: s}
582	return rs
583}
584
585type FloodlightActivitiesService struct {
586	s *Service
587}
588
589func NewFloodlightActivityGroupsService(s *Service) *FloodlightActivityGroupsService {
590	rs := &FloodlightActivityGroupsService{s: s}
591	return rs
592}
593
594type FloodlightActivityGroupsService struct {
595	s *Service
596}
597
598func NewFloodlightConfigurationsService(s *Service) *FloodlightConfigurationsService {
599	rs := &FloodlightConfigurationsService{s: s}
600	return rs
601}
602
603type FloodlightConfigurationsService struct {
604	s *Service
605}
606
607func NewInventoryItemsService(s *Service) *InventoryItemsService {
608	rs := &InventoryItemsService{s: s}
609	return rs
610}
611
612type InventoryItemsService struct {
613	s *Service
614}
615
616func NewLanguagesService(s *Service) *LanguagesService {
617	rs := &LanguagesService{s: s}
618	return rs
619}
620
621type LanguagesService struct {
622	s *Service
623}
624
625func NewMetrosService(s *Service) *MetrosService {
626	rs := &MetrosService{s: s}
627	return rs
628}
629
630type MetrosService struct {
631	s *Service
632}
633
634func NewMobileAppsService(s *Service) *MobileAppsService {
635	rs := &MobileAppsService{s: s}
636	return rs
637}
638
639type MobileAppsService struct {
640	s *Service
641}
642
643func NewMobileCarriersService(s *Service) *MobileCarriersService {
644	rs := &MobileCarriersService{s: s}
645	return rs
646}
647
648type MobileCarriersService struct {
649	s *Service
650}
651
652func NewOperatingSystemVersionsService(s *Service) *OperatingSystemVersionsService {
653	rs := &OperatingSystemVersionsService{s: s}
654	return rs
655}
656
657type OperatingSystemVersionsService struct {
658	s *Service
659}
660
661func NewOperatingSystemsService(s *Service) *OperatingSystemsService {
662	rs := &OperatingSystemsService{s: s}
663	return rs
664}
665
666type OperatingSystemsService struct {
667	s *Service
668}
669
670func NewOrderDocumentsService(s *Service) *OrderDocumentsService {
671	rs := &OrderDocumentsService{s: s}
672	return rs
673}
674
675type OrderDocumentsService struct {
676	s *Service
677}
678
679func NewOrdersService(s *Service) *OrdersService {
680	rs := &OrdersService{s: s}
681	return rs
682}
683
684type OrdersService struct {
685	s *Service
686}
687
688func NewPlacementGroupsService(s *Service) *PlacementGroupsService {
689	rs := &PlacementGroupsService{s: s}
690	return rs
691}
692
693type PlacementGroupsService struct {
694	s *Service
695}
696
697func NewPlacementStrategiesService(s *Service) *PlacementStrategiesService {
698	rs := &PlacementStrategiesService{s: s}
699	return rs
700}
701
702type PlacementStrategiesService struct {
703	s *Service
704}
705
706func NewPlacementsService(s *Service) *PlacementsService {
707	rs := &PlacementsService{s: s}
708	return rs
709}
710
711type PlacementsService struct {
712	s *Service
713}
714
715func NewPlatformTypesService(s *Service) *PlatformTypesService {
716	rs := &PlatformTypesService{s: s}
717	return rs
718}
719
720type PlatformTypesService struct {
721	s *Service
722}
723
724func NewPostalCodesService(s *Service) *PostalCodesService {
725	rs := &PostalCodesService{s: s}
726	return rs
727}
728
729type PostalCodesService struct {
730	s *Service
731}
732
733func NewProjectsService(s *Service) *ProjectsService {
734	rs := &ProjectsService{s: s}
735	return rs
736}
737
738type ProjectsService struct {
739	s *Service
740}
741
742func NewRegionsService(s *Service) *RegionsService {
743	rs := &RegionsService{s: s}
744	return rs
745}
746
747type RegionsService struct {
748	s *Service
749}
750
751func NewRemarketingListSharesService(s *Service) *RemarketingListSharesService {
752	rs := &RemarketingListSharesService{s: s}
753	return rs
754}
755
756type RemarketingListSharesService struct {
757	s *Service
758}
759
760func NewRemarketingListsService(s *Service) *RemarketingListsService {
761	rs := &RemarketingListsService{s: s}
762	return rs
763}
764
765type RemarketingListsService struct {
766	s *Service
767}
768
769func NewReportsService(s *Service) *ReportsService {
770	rs := &ReportsService{s: s}
771	rs.CompatibleFields = NewReportsCompatibleFieldsService(s)
772	rs.Files = NewReportsFilesService(s)
773	return rs
774}
775
776type ReportsService struct {
777	s *Service
778
779	CompatibleFields *ReportsCompatibleFieldsService
780
781	Files *ReportsFilesService
782}
783
784func NewReportsCompatibleFieldsService(s *Service) *ReportsCompatibleFieldsService {
785	rs := &ReportsCompatibleFieldsService{s: s}
786	return rs
787}
788
789type ReportsCompatibleFieldsService struct {
790	s *Service
791}
792
793func NewReportsFilesService(s *Service) *ReportsFilesService {
794	rs := &ReportsFilesService{s: s}
795	return rs
796}
797
798type ReportsFilesService struct {
799	s *Service
800}
801
802func NewSitesService(s *Service) *SitesService {
803	rs := &SitesService{s: s}
804	return rs
805}
806
807type SitesService struct {
808	s *Service
809}
810
811func NewSizesService(s *Service) *SizesService {
812	rs := &SizesService{s: s}
813	return rs
814}
815
816type SizesService struct {
817	s *Service
818}
819
820func NewSubaccountsService(s *Service) *SubaccountsService {
821	rs := &SubaccountsService{s: s}
822	return rs
823}
824
825type SubaccountsService struct {
826	s *Service
827}
828
829func NewTargetableRemarketingListsService(s *Service) *TargetableRemarketingListsService {
830	rs := &TargetableRemarketingListsService{s: s}
831	return rs
832}
833
834type TargetableRemarketingListsService struct {
835	s *Service
836}
837
838func NewTargetingTemplatesService(s *Service) *TargetingTemplatesService {
839	rs := &TargetingTemplatesService{s: s}
840	return rs
841}
842
843type TargetingTemplatesService struct {
844	s *Service
845}
846
847func NewUserProfilesService(s *Service) *UserProfilesService {
848	rs := &UserProfilesService{s: s}
849	return rs
850}
851
852type UserProfilesService struct {
853	s *Service
854}
855
856func NewUserRolePermissionGroupsService(s *Service) *UserRolePermissionGroupsService {
857	rs := &UserRolePermissionGroupsService{s: s}
858	return rs
859}
860
861type UserRolePermissionGroupsService struct {
862	s *Service
863}
864
865func NewUserRolePermissionsService(s *Service) *UserRolePermissionsService {
866	rs := &UserRolePermissionsService{s: s}
867	return rs
868}
869
870type UserRolePermissionsService struct {
871	s *Service
872}
873
874func NewUserRolesService(s *Service) *UserRolesService {
875	rs := &UserRolesService{s: s}
876	return rs
877}
878
879type UserRolesService struct {
880	s *Service
881}
882
883func NewVideoFormatsService(s *Service) *VideoFormatsService {
884	rs := &VideoFormatsService{s: s}
885	return rs
886}
887
888type VideoFormatsService struct {
889	s *Service
890}
891
892// Account: Contains properties of a Campaign Manager account.
893type Account struct {
894	// AccountPermissionIds: Account permissions assigned to this account.
895	AccountPermissionIds googleapi.Int64s `json:"accountPermissionIds,omitempty"`
896
897	// AccountProfile: Profile for this account. This is a read-only field
898	// that can be left blank.
899	//
900	// Possible values:
901	//   "ACCOUNT_PROFILE_BASIC"
902	//   "ACCOUNT_PROFILE_STANDARD"
903	AccountProfile string `json:"accountProfile,omitempty"`
904
905	// Active: Whether this account is active.
906	Active bool `json:"active,omitempty"`
907
908	// ActiveAdsLimitTier: Maximum number of active ads allowed for this
909	// account.
910	//
911	// Possible values:
912	//   "ACTIVE_ADS_TIER_40K"
913	//   "ACTIVE_ADS_TIER_75K"
914	//   "ACTIVE_ADS_TIER_100K"
915	//   "ACTIVE_ADS_TIER_200K"
916	//   "ACTIVE_ADS_TIER_300K"
917	//   "ACTIVE_ADS_TIER_500K"
918	//   "ACTIVE_ADS_TIER_750K"
919	//   "ACTIVE_ADS_TIER_1M"
920	ActiveAdsLimitTier string `json:"activeAdsLimitTier,omitempty"`
921
922	// ActiveViewOptOut: Whether to serve creatives with Active View tags.
923	// If disabled, viewability data will not be available for any
924	// impressions.
925	ActiveViewOptOut bool `json:"activeViewOptOut,omitempty"`
926
927	// AvailablePermissionIds: User role permissions available to the user
928	// roles of this account.
929	AvailablePermissionIds googleapi.Int64s `json:"availablePermissionIds,omitempty"`
930
931	// CountryId: ID of the country associated with this account.
932	CountryId int64 `json:"countryId,omitempty,string"`
933
934	// CurrencyId: ID of currency associated with this account. This is a
935	// required field. Acceptable values are: - "1" for USD - "2" for GBP -
936	// "3" for ESP - "4" for SEK - "5" for CAD - "6" for JPY - "7" for DEM -
937	// "8" for AUD - "9" for FRF - "10" for ITL - "11" for DKK - "12" for
938	// NOK - "13" for FIM - "14" for ZAR - "15" for IEP - "16" for NLG -
939	// "17" for EUR - "18" for KRW - "19" for TWD - "20" for SGD - "21" for
940	// CNY - "22" for HKD - "23" for NZD - "24" for MYR - "25" for BRL -
941	// "26" for PTE - "28" for CLP - "29" for TRY - "30" for ARS - "31" for
942	// PEN - "32" for ILS - "33" for CHF - "34" for VEF - "35" for COP -
943	// "36" for GTQ - "37" for PLN - "39" for INR - "40" for THB - "41" for
944	// IDR - "42" for CZK - "43" for RON - "44" for HUF - "45" for RUB -
945	// "46" for AED - "47" for BGN - "48" for HRK - "49" for MXN - "50" for
946	// NGN - "51" for EGP
947	CurrencyId int64 `json:"currencyId,omitempty,string"`
948
949	// DefaultCreativeSizeId: Default placement dimensions for this account.
950	DefaultCreativeSizeId int64 `json:"defaultCreativeSizeId,omitempty,string"`
951
952	// Description: Description of this account.
953	Description string `json:"description,omitempty"`
954
955	// Id: ID of this account. This is a read-only, auto-generated field.
956	Id int64 `json:"id,omitempty,string"`
957
958	// Kind: Identifies what kind of resource this is. Value: the fixed
959	// string "dfareporting#account".
960	Kind string `json:"kind,omitempty"`
961
962	// Locale: Locale of this account. Acceptable values are: - "cs" (Czech)
963	// - "de" (German) - "en" (English) - "en-GB" (English United Kingdom) -
964	// "es" (Spanish) - "fr" (French) - "it" (Italian) - "ja" (Japanese) -
965	// "ko" (Korean) - "pl" (Polish) - "pt-BR" (Portuguese Brazil) - "ru"
966	// (Russian) - "sv" (Swedish) - "tr" (Turkish) - "zh-CN" (Chinese
967	// Simplified) - "zh-TW" (Chinese Traditional)
968	Locale string `json:"locale,omitempty"`
969
970	// MaximumImageSize: Maximum image size allowed for this account, in
971	// kilobytes. Value must be greater than or equal to 1.
972	MaximumImageSize int64 `json:"maximumImageSize,omitempty,string"`
973
974	// Name: Name of this account. This is a required field, and must be
975	// less than 128 characters long and be globally unique.
976	Name string `json:"name,omitempty"`
977
978	// NielsenOcrEnabled: Whether campaigns created in this account will be
979	// enabled for Nielsen OCR reach ratings by default.
980	NielsenOcrEnabled bool `json:"nielsenOcrEnabled,omitempty"`
981
982	// ReportsConfiguration: Reporting configuration of this account.
983	ReportsConfiguration *ReportsConfiguration `json:"reportsConfiguration,omitempty"`
984
985	// ShareReportsWithTwitter: Share Path to Conversion reports with
986	// Twitter.
987	ShareReportsWithTwitter bool `json:"shareReportsWithTwitter,omitempty"`
988
989	// TeaserSizeLimit: File size limit in kilobytes of Rich Media teaser
990	// creatives. Acceptable values are 1 to 10240, inclusive.
991	TeaserSizeLimit int64 `json:"teaserSizeLimit,omitempty,string"`
992
993	// ServerResponse contains the HTTP response code and headers from the
994	// server.
995	googleapi.ServerResponse `json:"-"`
996
997	// ForceSendFields is a list of field names (e.g.
998	// "AccountPermissionIds") to unconditionally include in API requests.
999	// By default, fields with empty or default values are omitted from API
1000	// requests. However, any non-pointer, non-interface field appearing in
1001	// ForceSendFields will be sent to the server regardless of whether the
1002	// field is empty or not. This may be used to include empty fields in
1003	// Patch requests.
1004	ForceSendFields []string `json:"-"`
1005
1006	// NullFields is a list of field names (e.g. "AccountPermissionIds") to
1007	// include in API requests with the JSON null value. By default, fields
1008	// with empty values are omitted from API requests. However, any field
1009	// with an empty value appearing in NullFields will be sent to the
1010	// server as null. It is an error if a field in this list has a
1011	// non-empty value. This may be used to include null fields in Patch
1012	// requests.
1013	NullFields []string `json:"-"`
1014}
1015
1016func (s *Account) MarshalJSON() ([]byte, error) {
1017	type NoMethod Account
1018	raw := NoMethod(*s)
1019	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1020}
1021
1022// AccountActiveAdSummary: Gets a summary of active ads in an account.
1023type AccountActiveAdSummary struct {
1024	// AccountId: ID of the account.
1025	AccountId int64 `json:"accountId,omitempty,string"`
1026
1027	// ActiveAds: Ads that have been activated for the account
1028	ActiveAds int64 `json:"activeAds,omitempty,string"`
1029
1030	// ActiveAdsLimitTier: Maximum number of active ads allowed for the
1031	// account.
1032	//
1033	// Possible values:
1034	//   "ACTIVE_ADS_TIER_40K"
1035	//   "ACTIVE_ADS_TIER_75K"
1036	//   "ACTIVE_ADS_TIER_100K"
1037	//   "ACTIVE_ADS_TIER_200K"
1038	//   "ACTIVE_ADS_TIER_300K"
1039	//   "ACTIVE_ADS_TIER_500K"
1040	//   "ACTIVE_ADS_TIER_750K"
1041	//   "ACTIVE_ADS_TIER_1M"
1042	ActiveAdsLimitTier string `json:"activeAdsLimitTier,omitempty"`
1043
1044	// AvailableAds: Ads that can be activated for the account.
1045	AvailableAds int64 `json:"availableAds,omitempty,string"`
1046
1047	// Kind: Identifies what kind of resource this is. Value: the fixed
1048	// string "dfareporting#accountActiveAdSummary".
1049	Kind string `json:"kind,omitempty"`
1050
1051	// ServerResponse contains the HTTP response code and headers from the
1052	// server.
1053	googleapi.ServerResponse `json:"-"`
1054
1055	// ForceSendFields is a list of field names (e.g. "AccountId") to
1056	// unconditionally include in API requests. By default, fields with
1057	// empty or default values are omitted from API requests. However, any
1058	// non-pointer, non-interface field appearing in ForceSendFields will be
1059	// sent to the server regardless of whether the field is empty or not.
1060	// This may be used to include empty fields in Patch requests.
1061	ForceSendFields []string `json:"-"`
1062
1063	// NullFields is a list of field names (e.g. "AccountId") to include in
1064	// API requests with the JSON null value. By default, fields with empty
1065	// values are omitted from API requests. However, any field with an
1066	// empty value appearing in NullFields will be sent to the server as
1067	// null. It is an error if a field in this list has a non-empty value.
1068	// This may be used to include null fields in Patch requests.
1069	NullFields []string `json:"-"`
1070}
1071
1072func (s *AccountActiveAdSummary) MarshalJSON() ([]byte, error) {
1073	type NoMethod AccountActiveAdSummary
1074	raw := NoMethod(*s)
1075	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1076}
1077
1078// AccountPermission: AccountPermissions contains information about a
1079// particular account permission. Some features of Campaign Manager
1080// require an account permission to be present in the account.
1081type AccountPermission struct {
1082	// AccountProfiles: Account profiles associated with this account
1083	// permission. Possible values are: - "ACCOUNT_PROFILE_BASIC" -
1084	// "ACCOUNT_PROFILE_STANDARD"
1085	//
1086	// Possible values:
1087	//   "ACCOUNT_PROFILE_BASIC"
1088	//   "ACCOUNT_PROFILE_STANDARD"
1089	AccountProfiles []string `json:"accountProfiles,omitempty"`
1090
1091	// Id: ID of this account permission.
1092	Id int64 `json:"id,omitempty,string"`
1093
1094	// Kind: Identifies what kind of resource this is. Value: the fixed
1095	// string "dfareporting#accountPermission".
1096	Kind string `json:"kind,omitempty"`
1097
1098	// Level: Administrative level required to enable this account
1099	// permission.
1100	//
1101	// Possible values:
1102	//   "USER"
1103	//   "ADMINISTRATOR"
1104	Level string `json:"level,omitempty"`
1105
1106	// Name: Name of this account permission.
1107	Name string `json:"name,omitempty"`
1108
1109	// PermissionGroupId: Permission group of this account permission.
1110	PermissionGroupId int64 `json:"permissionGroupId,omitempty,string"`
1111
1112	// ServerResponse contains the HTTP response code and headers from the
1113	// server.
1114	googleapi.ServerResponse `json:"-"`
1115
1116	// ForceSendFields is a list of field names (e.g. "AccountProfiles") to
1117	// unconditionally include in API requests. By default, fields with
1118	// empty or default values are omitted from API requests. However, any
1119	// non-pointer, non-interface field appearing in ForceSendFields will be
1120	// sent to the server regardless of whether the field is empty or not.
1121	// This may be used to include empty fields in Patch requests.
1122	ForceSendFields []string `json:"-"`
1123
1124	// NullFields is a list of field names (e.g. "AccountProfiles") to
1125	// include in API requests with the JSON null value. By default, fields
1126	// with empty values are omitted from API requests. However, any field
1127	// with an empty value appearing in NullFields will be sent to the
1128	// server as null. It is an error if a field in this list has a
1129	// non-empty value. This may be used to include null fields in Patch
1130	// requests.
1131	NullFields []string `json:"-"`
1132}
1133
1134func (s *AccountPermission) MarshalJSON() ([]byte, error) {
1135	type NoMethod AccountPermission
1136	raw := NoMethod(*s)
1137	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1138}
1139
1140// AccountPermissionGroup: AccountPermissionGroups contains a mapping of
1141// permission group IDs to names. A permission group is a grouping of
1142// account permissions.
1143type AccountPermissionGroup struct {
1144	// Id: ID of this account permission group.
1145	Id int64 `json:"id,omitempty,string"`
1146
1147	// Kind: Identifies what kind of resource this is. Value: the fixed
1148	// string "dfareporting#accountPermissionGroup".
1149	Kind string `json:"kind,omitempty"`
1150
1151	// Name: Name of this account permission group.
1152	Name string `json:"name,omitempty"`
1153
1154	// ServerResponse contains the HTTP response code and headers from the
1155	// server.
1156	googleapi.ServerResponse `json:"-"`
1157
1158	// ForceSendFields is a list of field names (e.g. "Id") to
1159	// unconditionally include in API requests. By default, fields with
1160	// empty or default values are omitted from API requests. However, any
1161	// non-pointer, non-interface field appearing in ForceSendFields will be
1162	// sent to the server regardless of whether the field is empty or not.
1163	// This may be used to include empty fields in Patch requests.
1164	ForceSendFields []string `json:"-"`
1165
1166	// NullFields is a list of field names (e.g. "Id") to include in API
1167	// requests with the JSON null value. By default, fields with empty
1168	// values are omitted from API requests. However, any field with an
1169	// empty value appearing in NullFields will be sent to the server as
1170	// null. It is an error if a field in this list has a non-empty value.
1171	// This may be used to include null fields in Patch requests.
1172	NullFields []string `json:"-"`
1173}
1174
1175func (s *AccountPermissionGroup) MarshalJSON() ([]byte, error) {
1176	type NoMethod AccountPermissionGroup
1177	raw := NoMethod(*s)
1178	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1179}
1180
1181// AccountPermissionGroupsListResponse: Account Permission Group List
1182// Response
1183type AccountPermissionGroupsListResponse struct {
1184	// AccountPermissionGroups: Account permission group collection.
1185	AccountPermissionGroups []*AccountPermissionGroup `json:"accountPermissionGroups,omitempty"`
1186
1187	// Kind: Identifies what kind of resource this is. Value: the fixed
1188	// string "dfareporting#accountPermissionGroupsListResponse".
1189	Kind string `json:"kind,omitempty"`
1190
1191	// ServerResponse contains the HTTP response code and headers from the
1192	// server.
1193	googleapi.ServerResponse `json:"-"`
1194
1195	// ForceSendFields is a list of field names (e.g.
1196	// "AccountPermissionGroups") to unconditionally include in API
1197	// requests. By default, fields with empty or default values are omitted
1198	// from API requests. However, any non-pointer, non-interface field
1199	// appearing in ForceSendFields will be sent to the server regardless of
1200	// whether the field is empty or not. This may be used to include empty
1201	// fields in Patch requests.
1202	ForceSendFields []string `json:"-"`
1203
1204	// NullFields is a list of field names (e.g. "AccountPermissionGroups")
1205	// to include in API requests with the JSON null value. By default,
1206	// fields with empty values are omitted from API requests. However, any
1207	// field with an empty value appearing in NullFields will be sent to the
1208	// server as null. It is an error if a field in this list has a
1209	// non-empty value. This may be used to include null fields in Patch
1210	// requests.
1211	NullFields []string `json:"-"`
1212}
1213
1214func (s *AccountPermissionGroupsListResponse) MarshalJSON() ([]byte, error) {
1215	type NoMethod AccountPermissionGroupsListResponse
1216	raw := NoMethod(*s)
1217	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1218}
1219
1220// AccountPermissionsListResponse: Account Permission List Response
1221type AccountPermissionsListResponse struct {
1222	// AccountPermissions: Account permission collection.
1223	AccountPermissions []*AccountPermission `json:"accountPermissions,omitempty"`
1224
1225	// Kind: Identifies what kind of resource this is. Value: the fixed
1226	// string "dfareporting#accountPermissionsListResponse".
1227	Kind string `json:"kind,omitempty"`
1228
1229	// ServerResponse contains the HTTP response code and headers from the
1230	// server.
1231	googleapi.ServerResponse `json:"-"`
1232
1233	// ForceSendFields is a list of field names (e.g. "AccountPermissions")
1234	// to unconditionally include in API requests. By default, fields with
1235	// empty or default values are omitted from API requests. However, any
1236	// non-pointer, non-interface field appearing in ForceSendFields will be
1237	// sent to the server regardless of whether the field is empty or not.
1238	// This may be used to include empty fields in Patch requests.
1239	ForceSendFields []string `json:"-"`
1240
1241	// NullFields is a list of field names (e.g. "AccountPermissions") to
1242	// include in API requests with the JSON null value. By default, fields
1243	// with empty values are omitted from API requests. However, any field
1244	// with an empty value appearing in NullFields will be sent to the
1245	// server as null. It is an error if a field in this list has a
1246	// non-empty value. This may be used to include null fields in Patch
1247	// requests.
1248	NullFields []string `json:"-"`
1249}
1250
1251func (s *AccountPermissionsListResponse) MarshalJSON() ([]byte, error) {
1252	type NoMethod AccountPermissionsListResponse
1253	raw := NoMethod(*s)
1254	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1255}
1256
1257// AccountUserProfile: AccountUserProfiles contains properties of a
1258// Campaign Manager user profile. This resource is specifically for
1259// managing user profiles, whereas UserProfiles is for accessing the
1260// API.
1261type AccountUserProfile struct {
1262	// AccountId: Account ID of the user profile. This is a read-only field
1263	// that can be left blank.
1264	AccountId int64 `json:"accountId,omitempty,string"`
1265
1266	// Active: Whether this user profile is active. This defaults to false,
1267	// and must be set true on insert for the user profile to be usable.
1268	Active bool `json:"active,omitempty"`
1269
1270	// AdvertiserFilter: Filter that describes which advertisers are visible
1271	// to the user profile.
1272	AdvertiserFilter *ObjectFilter `json:"advertiserFilter,omitempty"`
1273
1274	// CampaignFilter: Filter that describes which campaigns are visible to
1275	// the user profile.
1276	CampaignFilter *ObjectFilter `json:"campaignFilter,omitempty"`
1277
1278	// Comments: Comments for this user profile.
1279	Comments string `json:"comments,omitempty"`
1280
1281	// Email: Email of the user profile. The email addresss must be linked
1282	// to a Google Account. This field is required on insertion and is
1283	// read-only after insertion.
1284	Email string `json:"email,omitempty"`
1285
1286	// Id: ID of the user profile. This is a read-only, auto-generated
1287	// field.
1288	Id int64 `json:"id,omitempty,string"`
1289
1290	// Kind: Identifies what kind of resource this is. Value: the fixed
1291	// string "dfareporting#accountUserProfile".
1292	Kind string `json:"kind,omitempty"`
1293
1294	// Locale: Locale of the user profile. This is a required field.
1295	// Acceptable values are: - "cs" (Czech) - "de" (German) - "en"
1296	// (English) - "en-GB" (English United Kingdom) - "es" (Spanish) - "fr"
1297	// (French) - "it" (Italian) - "ja" (Japanese) - "ko" (Korean) - "pl"
1298	// (Polish) - "pt-BR" (Portuguese Brazil) - "ru" (Russian) - "sv"
1299	// (Swedish) - "tr" (Turkish) - "zh-CN" (Chinese Simplified) - "zh-TW"
1300	// (Chinese Traditional)
1301	Locale string `json:"locale,omitempty"`
1302
1303	// Name: Name of the user profile. This is a required field. Must be
1304	// less than 64 characters long, must be globally unique, and cannot
1305	// contain whitespace or any of the following characters: "&;<>"#%,".
1306	Name string `json:"name,omitempty"`
1307
1308	// SiteFilter: Filter that describes which sites are visible to the user
1309	// profile.
1310	SiteFilter *ObjectFilter `json:"siteFilter,omitempty"`
1311
1312	// SubaccountId: Subaccount ID of the user profile. This is a read-only
1313	// field that can be left blank.
1314	SubaccountId int64 `json:"subaccountId,omitempty,string"`
1315
1316	// TraffickerType: Trafficker type of this user profile. This is a
1317	// read-only field.
1318	//
1319	// Possible values:
1320	//   "INTERNAL_NON_TRAFFICKER"
1321	//   "INTERNAL_TRAFFICKER"
1322	//   "EXTERNAL_TRAFFICKER"
1323	TraffickerType string `json:"traffickerType,omitempty"`
1324
1325	// UserAccessType: User type of the user profile. This is a read-only
1326	// field that can be left blank.
1327	//
1328	// Possible values:
1329	//   "NORMAL_USER"
1330	//   "SUPER_USER"
1331	//   "INTERNAL_ADMINISTRATOR"
1332	//   "READ_ONLY_SUPER_USER"
1333	UserAccessType string `json:"userAccessType,omitempty"`
1334
1335	// UserRoleFilter: Filter that describes which user roles are visible to
1336	// the user profile.
1337	UserRoleFilter *ObjectFilter `json:"userRoleFilter,omitempty"`
1338
1339	// UserRoleId: User role ID of the user profile. This is a required
1340	// field.
1341	UserRoleId int64 `json:"userRoleId,omitempty,string"`
1342
1343	// ServerResponse contains the HTTP response code and headers from the
1344	// server.
1345	googleapi.ServerResponse `json:"-"`
1346
1347	// ForceSendFields is a list of field names (e.g. "AccountId") to
1348	// unconditionally include in API requests. By default, fields with
1349	// empty or default values are omitted from API requests. However, any
1350	// non-pointer, non-interface field appearing in ForceSendFields will be
1351	// sent to the server regardless of whether the field is empty or not.
1352	// This may be used to include empty fields in Patch requests.
1353	ForceSendFields []string `json:"-"`
1354
1355	// NullFields is a list of field names (e.g. "AccountId") to include in
1356	// API requests with the JSON null value. By default, fields with empty
1357	// values are omitted from API requests. However, any field with an
1358	// empty value appearing in NullFields will be sent to the server as
1359	// null. It is an error if a field in this list has a non-empty value.
1360	// This may be used to include null fields in Patch requests.
1361	NullFields []string `json:"-"`
1362}
1363
1364func (s *AccountUserProfile) MarshalJSON() ([]byte, error) {
1365	type NoMethod AccountUserProfile
1366	raw := NoMethod(*s)
1367	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1368}
1369
1370// AccountUserProfilesListResponse: Account User Profile List Response
1371type AccountUserProfilesListResponse struct {
1372	// AccountUserProfiles: Account user profile collection.
1373	AccountUserProfiles []*AccountUserProfile `json:"accountUserProfiles,omitempty"`
1374
1375	// Kind: Identifies what kind of resource this is. Value: the fixed
1376	// string "dfareporting#accountUserProfilesListResponse".
1377	Kind string `json:"kind,omitempty"`
1378
1379	// NextPageToken: Pagination token to be used for the next list
1380	// operation.
1381	NextPageToken string `json:"nextPageToken,omitempty"`
1382
1383	// ServerResponse contains the HTTP response code and headers from the
1384	// server.
1385	googleapi.ServerResponse `json:"-"`
1386
1387	// ForceSendFields is a list of field names (e.g. "AccountUserProfiles")
1388	// to unconditionally include in API requests. By default, fields with
1389	// empty or default values are omitted from API requests. However, any
1390	// non-pointer, non-interface field appearing in ForceSendFields will be
1391	// sent to the server regardless of whether the field is empty or not.
1392	// This may be used to include empty fields in Patch requests.
1393	ForceSendFields []string `json:"-"`
1394
1395	// NullFields is a list of field names (e.g. "AccountUserProfiles") to
1396	// include in API requests with the JSON null value. By default, fields
1397	// with empty values are omitted from API requests. However, any field
1398	// with an empty value appearing in NullFields will be sent to the
1399	// server as null. It is an error if a field in this list has a
1400	// non-empty value. This may be used to include null fields in Patch
1401	// requests.
1402	NullFields []string `json:"-"`
1403}
1404
1405func (s *AccountUserProfilesListResponse) MarshalJSON() ([]byte, error) {
1406	type NoMethod AccountUserProfilesListResponse
1407	raw := NoMethod(*s)
1408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1409}
1410
1411// AccountsListResponse: Account List Response
1412type AccountsListResponse struct {
1413	// Accounts: Account collection.
1414	Accounts []*Account `json:"accounts,omitempty"`
1415
1416	// Kind: Identifies what kind of resource this is. Value: the fixed
1417	// string "dfareporting#accountsListResponse".
1418	Kind string `json:"kind,omitempty"`
1419
1420	// NextPageToken: Pagination token to be used for the next list
1421	// operation.
1422	NextPageToken string `json:"nextPageToken,omitempty"`
1423
1424	// ServerResponse contains the HTTP response code and headers from the
1425	// server.
1426	googleapi.ServerResponse `json:"-"`
1427
1428	// ForceSendFields is a list of field names (e.g. "Accounts") to
1429	// unconditionally include in API requests. By default, fields with
1430	// empty or default values are omitted from API requests. However, any
1431	// non-pointer, non-interface field appearing in ForceSendFields will be
1432	// sent to the server regardless of whether the field is empty or not.
1433	// This may be used to include empty fields in Patch requests.
1434	ForceSendFields []string `json:"-"`
1435
1436	// NullFields is a list of field names (e.g. "Accounts") to include in
1437	// API requests with the JSON null value. By default, fields with empty
1438	// values are omitted from API requests. However, any field with an
1439	// empty value appearing in NullFields will be sent to the server as
1440	// null. It is an error if a field in this list has a non-empty value.
1441	// This may be used to include null fields in Patch requests.
1442	NullFields []string `json:"-"`
1443}
1444
1445func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1446	type NoMethod AccountsListResponse
1447	raw := NoMethod(*s)
1448	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1449}
1450
1451// Activities: Represents an activity group.
1452type Activities struct {
1453	// Filters: List of activity filters. The dimension values need to be
1454	// all either of type "dfa:activity" or "dfa:activityGroup".
1455	Filters []*DimensionValue `json:"filters,omitempty"`
1456
1457	// Kind: The kind of resource this is, in this case
1458	// dfareporting#activities.
1459	Kind string `json:"kind,omitempty"`
1460
1461	// MetricNames: List of names of floodlight activity metrics.
1462	MetricNames []string `json:"metricNames,omitempty"`
1463
1464	// ForceSendFields is a list of field names (e.g. "Filters") to
1465	// unconditionally include in API requests. By default, fields with
1466	// empty or default values are omitted from API requests. However, any
1467	// non-pointer, non-interface field appearing in ForceSendFields will be
1468	// sent to the server regardless of whether the field is empty or not.
1469	// This may be used to include empty fields in Patch requests.
1470	ForceSendFields []string `json:"-"`
1471
1472	// NullFields is a list of field names (e.g. "Filters") to include in
1473	// API requests with the JSON null value. By default, fields with empty
1474	// values are omitted from API requests. However, any field with an
1475	// empty value appearing in NullFields will be sent to the server as
1476	// null. It is an error if a field in this list has a non-empty value.
1477	// This may be used to include null fields in Patch requests.
1478	NullFields []string `json:"-"`
1479}
1480
1481func (s *Activities) MarshalJSON() ([]byte, error) {
1482	type NoMethod Activities
1483	raw := NoMethod(*s)
1484	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1485}
1486
1487// Ad: Contains properties of a Campaign Manager ad.
1488type Ad struct {
1489	// AccountId: Account ID of this ad. This is a read-only field that can
1490	// be left blank.
1491	AccountId int64 `json:"accountId,omitempty,string"`
1492
1493	// Active: Whether this ad is active. When true, archived must be false.
1494	Active bool `json:"active,omitempty"`
1495
1496	// AdvertiserId: Advertiser ID of this ad. This is a required field on
1497	// insertion.
1498	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
1499
1500	// AdvertiserIdDimensionValue: Dimension value for the ID of the
1501	// advertiser. This is a read-only, auto-generated field.
1502	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
1503
1504	// Archived: Whether this ad is archived. When true, active must be
1505	// false.
1506	Archived bool `json:"archived,omitempty"`
1507
1508	// AudienceSegmentId: Audience segment ID that is being targeted for
1509	// this ad. Applicable when type is AD_SERVING_STANDARD_AD.
1510	AudienceSegmentId int64 `json:"audienceSegmentId,omitempty,string"`
1511
1512	// CampaignId: Campaign ID of this ad. This is a required field on
1513	// insertion.
1514	CampaignId int64 `json:"campaignId,omitempty,string"`
1515
1516	// CampaignIdDimensionValue: Dimension value for the ID of the campaign.
1517	// This is a read-only, auto-generated field.
1518	CampaignIdDimensionValue *DimensionValue `json:"campaignIdDimensionValue,omitempty"`
1519
1520	// ClickThroughUrl: Click-through URL for this ad. This is a required
1521	// field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER.
1522	ClickThroughUrl *ClickThroughUrl `json:"clickThroughUrl,omitempty"`
1523
1524	// ClickThroughUrlSuffixProperties: Click-through URL suffix properties
1525	// for this ad. Applies to the URL in the ad or (if overriding ad
1526	// properties) the URL in the creative.
1527	ClickThroughUrlSuffixProperties *ClickThroughUrlSuffixProperties `json:"clickThroughUrlSuffixProperties,omitempty"`
1528
1529	// Comments: Comments for this ad.
1530	Comments string `json:"comments,omitempty"`
1531
1532	// Compatibility: Compatibility of this ad. Applicable when type is
1533	// AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to
1534	// either rendering on desktop or on mobile devices or in mobile apps
1535	// for regular or interstitial ads, respectively. APP and
1536	// APP_INTERSTITIAL are only used for existing default ads. New mobile
1537	// placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and
1538	// default ads created for those placements will be limited to those
1539	// compatibility types. IN_STREAM_VIDEO refers to rendering in-stream
1540	// video ads developed with the VAST standard.
1541	//
1542	// Possible values:
1543	//   "DISPLAY"
1544	//   "DISPLAY_INTERSTITIAL"
1545	//   "APP"
1546	//   "APP_INTERSTITIAL"
1547	//   "IN_STREAM_VIDEO"
1548	//   "IN_STREAM_AUDIO"
1549	Compatibility string `json:"compatibility,omitempty"`
1550
1551	// CreateInfo: Information about the creation of this ad. This is a
1552	// read-only field.
1553	CreateInfo *LastModifiedInfo `json:"createInfo,omitempty"`
1554
1555	// CreativeGroupAssignments: Creative group assignments for this ad.
1556	// Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment
1557	// per creative group number is allowed for a maximum of two
1558	// assignments.
1559	CreativeGroupAssignments []*CreativeGroupAssignment `json:"creativeGroupAssignments,omitempty"`
1560
1561	// CreativeRotation: Creative rotation for this ad. Applicable when type
1562	// is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or
1563	// AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field
1564	// should have exactly one creativeAssignment .
1565	CreativeRotation *CreativeRotation `json:"creativeRotation,omitempty"`
1566
1567	// DayPartTargeting: Time and day targeting information for this ad.
1568	// This field must be left blank if the ad is using a targeting
1569	// template. Applicable when type is AD_SERVING_STANDARD_AD.
1570	DayPartTargeting *DayPartTargeting `json:"dayPartTargeting,omitempty"`
1571
1572	// DefaultClickThroughEventTagProperties: Default click-through event
1573	// tag properties for this ad.
1574	DefaultClickThroughEventTagProperties *DefaultClickThroughEventTagProperties `json:"defaultClickThroughEventTagProperties,omitempty"`
1575
1576	// DeliverySchedule: Delivery schedule information for this ad.
1577	// Applicable when type is AD_SERVING_STANDARD_AD or
1578	// AD_SERVING_TRACKING. This field along with subfields priority and
1579	// impressionRatio are required on insertion when type is
1580	// AD_SERVING_STANDARD_AD.
1581	DeliverySchedule *DeliverySchedule `json:"deliverySchedule,omitempty"`
1582
1583	// DynamicClickTracker: Whether this ad is a dynamic click tracker.
1584	// Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required
1585	// field on insert, and is read-only after insert.
1586	DynamicClickTracker bool `json:"dynamicClickTracker,omitempty"`
1587
1588	EndTime string `json:"endTime,omitempty"`
1589
1590	// EventTagOverrides: Event tag overrides for this ad.
1591	EventTagOverrides []*EventTagOverride `json:"eventTagOverrides,omitempty"`
1592
1593	// GeoTargeting: Geographical targeting information for this ad. This
1594	// field must be left blank if the ad is using a targeting template.
1595	// Applicable when type is AD_SERVING_STANDARD_AD.
1596	GeoTargeting *GeoTargeting `json:"geoTargeting,omitempty"`
1597
1598	// Id: ID of this ad. This is a read-only, auto-generated field.
1599	Id int64 `json:"id,omitempty,string"`
1600
1601	// IdDimensionValue: Dimension value for the ID of this ad. This is a
1602	// read-only, auto-generated field.
1603	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
1604
1605	// KeyValueTargetingExpression: Key-value targeting information for this
1606	// ad. This field must be left blank if the ad is using a targeting
1607	// template. Applicable when type is AD_SERVING_STANDARD_AD.
1608	KeyValueTargetingExpression *KeyValueTargetingExpression `json:"keyValueTargetingExpression,omitempty"`
1609
1610	// Kind: Identifies what kind of resource this is. Value: the fixed
1611	// string "dfareporting#ad".
1612	Kind string `json:"kind,omitempty"`
1613
1614	// LanguageTargeting: Language targeting information for this ad. This
1615	// field must be left blank if the ad is using a targeting template.
1616	// Applicable when type is AD_SERVING_STANDARD_AD.
1617	LanguageTargeting *LanguageTargeting `json:"languageTargeting,omitempty"`
1618
1619	// LastModifiedInfo: Information about the most recent modification of
1620	// this ad. This is a read-only field.
1621	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
1622
1623	// Name: Name of this ad. This is a required field and must be less than
1624	// 256 characters long.
1625	Name string `json:"name,omitempty"`
1626
1627	// PlacementAssignments: Placement assignments for this ad.
1628	PlacementAssignments []*PlacementAssignment `json:"placementAssignments,omitempty"`
1629
1630	// RemarketingListExpression: Remarketing list targeting expression for
1631	// this ad. This field must be left blank if the ad is using a targeting
1632	// template. Applicable when type is AD_SERVING_STANDARD_AD.
1633	RemarketingListExpression *ListTargetingExpression `json:"remarketingListExpression,omitempty"`
1634
1635	// Size: Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD.
1636	Size *Size `json:"size,omitempty"`
1637
1638	// SslCompliant: Whether this ad is ssl compliant. This is a read-only
1639	// field that is auto-generated when the ad is inserted or updated.
1640	SslCompliant bool `json:"sslCompliant,omitempty"`
1641
1642	// SslRequired: Whether this ad requires ssl. This is a read-only field
1643	// that is auto-generated when the ad is inserted or updated.
1644	SslRequired bool `json:"sslRequired,omitempty"`
1645
1646	StartTime string `json:"startTime,omitempty"`
1647
1648	// SubaccountId: Subaccount ID of this ad. This is a read-only field
1649	// that can be left blank.
1650	SubaccountId int64 `json:"subaccountId,omitempty,string"`
1651
1652	// TargetingTemplateId: Targeting template ID, used to apply
1653	// preconfigured targeting information to this ad. This cannot be set
1654	// while any of dayPartTargeting, geoTargeting,
1655	// keyValueTargetingExpression, languageTargeting,
1656	// remarketingListExpression, or technologyTargeting are set. Applicable
1657	// when type is AD_SERVING_STANDARD_AD.
1658	TargetingTemplateId int64 `json:"targetingTemplateId,omitempty,string"`
1659
1660	// TechnologyTargeting: Technology platform targeting information for
1661	// this ad. This field must be left blank if the ad is using a targeting
1662	// template. Applicable when type is AD_SERVING_STANDARD_AD.
1663	TechnologyTargeting *TechnologyTargeting `json:"technologyTargeting,omitempty"`
1664
1665	// Type: Type of ad. This is a required field on insertion. Note that
1666	// default ads ( AD_SERVING_DEFAULT_AD) cannot be created directly (see
1667	// Creative resource).
1668	//
1669	// Possible values:
1670	//   "AD_SERVING_STANDARD_AD"
1671	//   "AD_SERVING_DEFAULT_AD"
1672	//   "AD_SERVING_CLICK_TRACKER"
1673	//   "AD_SERVING_TRACKING"
1674	//   "AD_SERVING_BRAND_SAFE_AD"
1675	Type string `json:"type,omitempty"`
1676
1677	// ServerResponse contains the HTTP response code and headers from the
1678	// server.
1679	googleapi.ServerResponse `json:"-"`
1680
1681	// ForceSendFields is a list of field names (e.g. "AccountId") to
1682	// unconditionally include in API requests. By default, fields with
1683	// empty or default values are omitted from API requests. However, any
1684	// non-pointer, non-interface field appearing in ForceSendFields will be
1685	// sent to the server regardless of whether the field is empty or not.
1686	// This may be used to include empty fields in Patch requests.
1687	ForceSendFields []string `json:"-"`
1688
1689	// NullFields is a list of field names (e.g. "AccountId") to include in
1690	// API requests with the JSON null value. By default, fields with empty
1691	// values are omitted from API requests. However, any field with an
1692	// empty value appearing in NullFields will be sent to the server as
1693	// null. It is an error if a field in this list has a non-empty value.
1694	// This may be used to include null fields in Patch requests.
1695	NullFields []string `json:"-"`
1696}
1697
1698func (s *Ad) MarshalJSON() ([]byte, error) {
1699	type NoMethod Ad
1700	raw := NoMethod(*s)
1701	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1702}
1703
1704// AdBlockingConfiguration: Campaign ad blocking settings.
1705type AdBlockingConfiguration struct {
1706	// Enabled: Whether this campaign has enabled ad blocking. When true, ad
1707	// blocking is enabled for placements in the campaign, but this may be
1708	// overridden by site and placement settings. When false, ad blocking is
1709	// disabled for all placements under the campaign, regardless of site
1710	// and placement settings.
1711	Enabled bool `json:"enabled,omitempty"`
1712
1713	// ForceSendFields is a list of field names (e.g. "Enabled") to
1714	// unconditionally include in API requests. By default, fields with
1715	// empty or default values are omitted from API requests. However, any
1716	// non-pointer, non-interface field appearing in ForceSendFields will be
1717	// sent to the server regardless of whether the field is empty or not.
1718	// This may be used to include empty fields in Patch requests.
1719	ForceSendFields []string `json:"-"`
1720
1721	// NullFields is a list of field names (e.g. "Enabled") to include in
1722	// API requests with the JSON null value. By default, fields with empty
1723	// values are omitted from API requests. However, any field with an
1724	// empty value appearing in NullFields will be sent to the server as
1725	// null. It is an error if a field in this list has a non-empty value.
1726	// This may be used to include null fields in Patch requests.
1727	NullFields []string `json:"-"`
1728}
1729
1730func (s *AdBlockingConfiguration) MarshalJSON() ([]byte, error) {
1731	type NoMethod AdBlockingConfiguration
1732	raw := NoMethod(*s)
1733	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1734}
1735
1736// AdSlot: Ad Slot
1737type AdSlot struct {
1738	// Comment: Comment for this ad slot.
1739	Comment string `json:"comment,omitempty"`
1740
1741	// Compatibility: Ad slot compatibility. DISPLAY and
1742	// DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile
1743	// devices or in mobile apps for regular or interstitial ads
1744	// respectively. APP and APP_INTERSTITIAL are for rendering in mobile
1745	// apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads
1746	// developed with the VAST standard.
1747	//
1748	// Possible values:
1749	//   "DISPLAY"
1750	//   "DISPLAY_INTERSTITIAL"
1751	//   "APP"
1752	//   "APP_INTERSTITIAL"
1753	//   "IN_STREAM_VIDEO"
1754	//   "IN_STREAM_AUDIO"
1755	Compatibility string `json:"compatibility,omitempty"`
1756
1757	// Height: Height of this ad slot.
1758	Height int64 `json:"height,omitempty,string"`
1759
1760	// LinkedPlacementId: ID of the placement from an external platform that
1761	// is linked to this ad slot.
1762	LinkedPlacementId int64 `json:"linkedPlacementId,omitempty,string"`
1763
1764	// Name: Name of this ad slot.
1765	Name string `json:"name,omitempty"`
1766
1767	// PaymentSourceType: Payment source type of this ad slot.
1768	//
1769	// Possible values:
1770	//   "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID"
1771	//   "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID"
1772	PaymentSourceType string `json:"paymentSourceType,omitempty"`
1773
1774	// Primary: Primary ad slot of a roadblock inventory item.
1775	Primary bool `json:"primary,omitempty"`
1776
1777	// Width: Width of this ad slot.
1778	Width int64 `json:"width,omitempty,string"`
1779
1780	// ForceSendFields is a list of field names (e.g. "Comment") to
1781	// unconditionally include in API requests. By default, fields with
1782	// empty or default values are omitted from API requests. However, any
1783	// non-pointer, non-interface field appearing in ForceSendFields will be
1784	// sent to the server regardless of whether the field is empty or not.
1785	// This may be used to include empty fields in Patch requests.
1786	ForceSendFields []string `json:"-"`
1787
1788	// NullFields is a list of field names (e.g. "Comment") to include in
1789	// API requests with the JSON null value. By default, fields with empty
1790	// values are omitted from API requests. However, any field with an
1791	// empty value appearing in NullFields will be sent to the server as
1792	// null. It is an error if a field in this list has a non-empty value.
1793	// This may be used to include null fields in Patch requests.
1794	NullFields []string `json:"-"`
1795}
1796
1797func (s *AdSlot) MarshalJSON() ([]byte, error) {
1798	type NoMethod AdSlot
1799	raw := NoMethod(*s)
1800	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1801}
1802
1803// AdsListResponse: Ad List Response
1804type AdsListResponse struct {
1805	// Ads: Ad collection.
1806	Ads []*Ad `json:"ads,omitempty"`
1807
1808	// Kind: Identifies what kind of resource this is. Value: the fixed
1809	// string "dfareporting#adsListResponse".
1810	Kind string `json:"kind,omitempty"`
1811
1812	// NextPageToken: Pagination token to be used for the next list
1813	// operation.
1814	NextPageToken string `json:"nextPageToken,omitempty"`
1815
1816	// ServerResponse contains the HTTP response code and headers from the
1817	// server.
1818	googleapi.ServerResponse `json:"-"`
1819
1820	// ForceSendFields is a list of field names (e.g. "Ads") to
1821	// unconditionally include in API requests. By default, fields with
1822	// empty or default values are omitted from API requests. However, any
1823	// non-pointer, non-interface field appearing in ForceSendFields will be
1824	// sent to the server regardless of whether the field is empty or not.
1825	// This may be used to include empty fields in Patch requests.
1826	ForceSendFields []string `json:"-"`
1827
1828	// NullFields is a list of field names (e.g. "Ads") to include in API
1829	// requests with the JSON null value. By default, fields with empty
1830	// values are omitted from API requests. However, any field with an
1831	// empty value appearing in NullFields will be sent to the server as
1832	// null. It is an error if a field in this list has a non-empty value.
1833	// This may be used to include null fields in Patch requests.
1834	NullFields []string `json:"-"`
1835}
1836
1837func (s *AdsListResponse) MarshalJSON() ([]byte, error) {
1838	type NoMethod AdsListResponse
1839	raw := NoMethod(*s)
1840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1841}
1842
1843// Advertiser: Contains properties of a Campaign Manager advertiser.
1844type Advertiser struct {
1845	// AccountId: Account ID of this advertiser.This is a read-only field
1846	// that can be left blank.
1847	AccountId int64 `json:"accountId,omitempty,string"`
1848
1849	// AdvertiserGroupId: ID of the advertiser group this advertiser belongs
1850	// to. You can group advertisers for reporting purposes, allowing you to
1851	// see aggregated information for all advertisers in each group.
1852	AdvertiserGroupId int64 `json:"advertiserGroupId,omitempty,string"`
1853
1854	// ClickThroughUrlSuffix: Suffix added to click-through URL of ad
1855	// creative associations under this advertiser. Must be less than 129
1856	// characters long.
1857	ClickThroughUrlSuffix string `json:"clickThroughUrlSuffix,omitempty"`
1858
1859	// DefaultClickThroughEventTagId: ID of the click-through event tag to
1860	// apply by default to the landing pages of this advertiser's campaigns.
1861	DefaultClickThroughEventTagId int64 `json:"defaultClickThroughEventTagId,omitempty,string"`
1862
1863	// DefaultEmail: Default email address used in sender field for tag
1864	// emails.
1865	DefaultEmail string `json:"defaultEmail,omitempty"`
1866
1867	// FloodlightConfigurationId: Floodlight configuration ID of this
1868	// advertiser. The floodlight configuration ID will be created
1869	// automatically, so on insert this field should be left blank. This
1870	// field can be set to another advertiser's floodlight configuration ID
1871	// in order to share that advertiser's floodlight configuration with
1872	// this advertiser, so long as: - This advertiser's original floodlight
1873	// configuration is not already associated with floodlight activities or
1874	// floodlight activity groups. - This advertiser's original floodlight
1875	// configuration is not already shared with another advertiser.
1876	FloodlightConfigurationId int64 `json:"floodlightConfigurationId,omitempty,string"`
1877
1878	// FloodlightConfigurationIdDimensionValue: Dimension value for the ID
1879	// of the floodlight configuration. This is a read-only, auto-generated
1880	// field.
1881	FloodlightConfigurationIdDimensionValue *DimensionValue `json:"floodlightConfigurationIdDimensionValue,omitempty"`
1882
1883	// Id: ID of this advertiser. This is a read-only, auto-generated field.
1884	Id int64 `json:"id,omitempty,string"`
1885
1886	// IdDimensionValue: Dimension value for the ID of this advertiser. This
1887	// is a read-only, auto-generated field.
1888	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
1889
1890	// Kind: Identifies what kind of resource this is. Value: the fixed
1891	// string "dfareporting#advertiser".
1892	Kind string `json:"kind,omitempty"`
1893
1894	// MeasurementPartnerLink: Measurement partner advertiser link for tag
1895	// wrapping.
1896	MeasurementPartnerLink *MeasurementPartnerAdvertiserLink `json:"measurementPartnerLink,omitempty"`
1897
1898	// Name: Name of this advertiser. This is a required field and must be
1899	// less than 256 characters long and unique among advertisers of the
1900	// same account.
1901	Name string `json:"name,omitempty"`
1902
1903	// OriginalFloodlightConfigurationId: Original floodlight configuration
1904	// before any sharing occurred. Set the floodlightConfigurationId of
1905	// this advertiser to originalFloodlightConfigurationId to unshare the
1906	// advertiser's current floodlight configuration. You cannot unshare an
1907	// advertiser's floodlight configuration if the shared configuration has
1908	// activities associated with any campaign or placement.
1909	OriginalFloodlightConfigurationId int64 `json:"originalFloodlightConfigurationId,omitempty,string"`
1910
1911	// Status: Status of this advertiser.
1912	//
1913	// Possible values:
1914	//   "APPROVED"
1915	//   "ON_HOLD"
1916	Status string `json:"status,omitempty"`
1917
1918	// SubaccountId: Subaccount ID of this advertiser.This is a read-only
1919	// field that can be left blank.
1920	SubaccountId int64 `json:"subaccountId,omitempty,string"`
1921
1922	// Suspended: Suspension status of this advertiser.
1923	Suspended bool `json:"suspended,omitempty"`
1924
1925	// ServerResponse contains the HTTP response code and headers from the
1926	// server.
1927	googleapi.ServerResponse `json:"-"`
1928
1929	// ForceSendFields is a list of field names (e.g. "AccountId") to
1930	// unconditionally include in API requests. By default, fields with
1931	// empty or default values are omitted from API requests. However, any
1932	// non-pointer, non-interface field appearing in ForceSendFields will be
1933	// sent to the server regardless of whether the field is empty or not.
1934	// This may be used to include empty fields in Patch requests.
1935	ForceSendFields []string `json:"-"`
1936
1937	// NullFields is a list of field names (e.g. "AccountId") to include in
1938	// API requests with the JSON null value. By default, fields with empty
1939	// values are omitted from API requests. However, any field with an
1940	// empty value appearing in NullFields will be sent to the server as
1941	// null. It is an error if a field in this list has a non-empty value.
1942	// This may be used to include null fields in Patch requests.
1943	NullFields []string `json:"-"`
1944}
1945
1946func (s *Advertiser) MarshalJSON() ([]byte, error) {
1947	type NoMethod Advertiser
1948	raw := NoMethod(*s)
1949	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1950}
1951
1952// AdvertiserGroup: Groups advertisers together so that reports can be
1953// generated for the entire group at once.
1954type AdvertiserGroup struct {
1955	// AccountId: Account ID of this advertiser group. This is a read-only
1956	// field that can be left blank.
1957	AccountId int64 `json:"accountId,omitempty,string"`
1958
1959	// Id: ID of this advertiser group. This is a read-only, auto-generated
1960	// field.
1961	Id int64 `json:"id,omitempty,string"`
1962
1963	// Kind: Identifies what kind of resource this is. Value: the fixed
1964	// string "dfareporting#advertiserGroup".
1965	Kind string `json:"kind,omitempty"`
1966
1967	// Name: Name of this advertiser group. This is a required field and
1968	// must be less than 256 characters long and unique among advertiser
1969	// groups of the same account.
1970	Name string `json:"name,omitempty"`
1971
1972	// ServerResponse contains the HTTP response code and headers from the
1973	// server.
1974	googleapi.ServerResponse `json:"-"`
1975
1976	// ForceSendFields is a list of field names (e.g. "AccountId") to
1977	// unconditionally include in API requests. By default, fields with
1978	// empty or default values are omitted from API requests. However, any
1979	// non-pointer, non-interface field appearing in ForceSendFields will be
1980	// sent to the server regardless of whether the field is empty or not.
1981	// This may be used to include empty fields in Patch requests.
1982	ForceSendFields []string `json:"-"`
1983
1984	// NullFields is a list of field names (e.g. "AccountId") to include in
1985	// API requests with the JSON null value. By default, fields with empty
1986	// values are omitted from API requests. However, any field with an
1987	// empty value appearing in NullFields will be sent to the server as
1988	// null. It is an error if a field in this list has a non-empty value.
1989	// This may be used to include null fields in Patch requests.
1990	NullFields []string `json:"-"`
1991}
1992
1993func (s *AdvertiserGroup) MarshalJSON() ([]byte, error) {
1994	type NoMethod AdvertiserGroup
1995	raw := NoMethod(*s)
1996	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1997}
1998
1999// AdvertiserGroupsListResponse: Advertiser Group List Response
2000type AdvertiserGroupsListResponse struct {
2001	// AdvertiserGroups: Advertiser group collection.
2002	AdvertiserGroups []*AdvertiserGroup `json:"advertiserGroups,omitempty"`
2003
2004	// Kind: Identifies what kind of resource this is. Value: the fixed
2005	// string "dfareporting#advertiserGroupsListResponse".
2006	Kind string `json:"kind,omitempty"`
2007
2008	// NextPageToken: Pagination token to be used for the next list
2009	// operation.
2010	NextPageToken string `json:"nextPageToken,omitempty"`
2011
2012	// ServerResponse contains the HTTP response code and headers from the
2013	// server.
2014	googleapi.ServerResponse `json:"-"`
2015
2016	// ForceSendFields is a list of field names (e.g. "AdvertiserGroups") to
2017	// unconditionally include in API requests. By default, fields with
2018	// empty or default values are omitted from API requests. However, any
2019	// non-pointer, non-interface field appearing in ForceSendFields will be
2020	// sent to the server regardless of whether the field is empty or not.
2021	// This may be used to include empty fields in Patch requests.
2022	ForceSendFields []string `json:"-"`
2023
2024	// NullFields is a list of field names (e.g. "AdvertiserGroups") to
2025	// include in API requests with the JSON null value. By default, fields
2026	// with empty values are omitted from API requests. However, any field
2027	// with an empty value appearing in NullFields will be sent to the
2028	// server as null. It is an error if a field in this list has a
2029	// non-empty value. This may be used to include null fields in Patch
2030	// requests.
2031	NullFields []string `json:"-"`
2032}
2033
2034func (s *AdvertiserGroupsListResponse) MarshalJSON() ([]byte, error) {
2035	type NoMethod AdvertiserGroupsListResponse
2036	raw := NoMethod(*s)
2037	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2038}
2039
2040// AdvertiserLandingPagesListResponse: Landing Page List Response
2041type AdvertiserLandingPagesListResponse struct {
2042	// Kind: Identifies what kind of resource this is. Value: the fixed
2043	// string "dfareporting#advertiserLandingPagesListResponse".
2044	Kind string `json:"kind,omitempty"`
2045
2046	// LandingPages: Landing page collection
2047	LandingPages []*LandingPage `json:"landingPages,omitempty"`
2048
2049	// NextPageToken: Pagination token to be used for the next list
2050	// operation.
2051	NextPageToken string `json:"nextPageToken,omitempty"`
2052
2053	// ServerResponse contains the HTTP response code and headers from the
2054	// server.
2055	googleapi.ServerResponse `json:"-"`
2056
2057	// ForceSendFields is a list of field names (e.g. "Kind") to
2058	// unconditionally include in API requests. By default, fields with
2059	// empty or default values are omitted from API requests. However, any
2060	// non-pointer, non-interface field appearing in ForceSendFields will be
2061	// sent to the server regardless of whether the field is empty or not.
2062	// This may be used to include empty fields in Patch requests.
2063	ForceSendFields []string `json:"-"`
2064
2065	// NullFields is a list of field names (e.g. "Kind") to include in API
2066	// requests with the JSON null value. By default, fields with empty
2067	// values are omitted from API requests. However, any field with an
2068	// empty value appearing in NullFields will be sent to the server as
2069	// null. It is an error if a field in this list has a non-empty value.
2070	// This may be used to include null fields in Patch requests.
2071	NullFields []string `json:"-"`
2072}
2073
2074func (s *AdvertiserLandingPagesListResponse) MarshalJSON() ([]byte, error) {
2075	type NoMethod AdvertiserLandingPagesListResponse
2076	raw := NoMethod(*s)
2077	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2078}
2079
2080// AdvertisersListResponse: Advertiser List Response
2081type AdvertisersListResponse struct {
2082	// Advertisers: Advertiser collection.
2083	Advertisers []*Advertiser `json:"advertisers,omitempty"`
2084
2085	// Kind: Identifies what kind of resource this is. Value: the fixed
2086	// string "dfareporting#advertisersListResponse".
2087	Kind string `json:"kind,omitempty"`
2088
2089	// NextPageToken: Pagination token to be used for the next list
2090	// operation.
2091	NextPageToken string `json:"nextPageToken,omitempty"`
2092
2093	// ServerResponse contains the HTTP response code and headers from the
2094	// server.
2095	googleapi.ServerResponse `json:"-"`
2096
2097	// ForceSendFields is a list of field names (e.g. "Advertisers") to
2098	// unconditionally include in API requests. By default, fields with
2099	// empty or default values are omitted from API requests. However, any
2100	// non-pointer, non-interface field appearing in ForceSendFields will be
2101	// sent to the server regardless of whether the field is empty or not.
2102	// This may be used to include empty fields in Patch requests.
2103	ForceSendFields []string `json:"-"`
2104
2105	// NullFields is a list of field names (e.g. "Advertisers") to include
2106	// in API requests with the JSON null value. By default, fields with
2107	// empty values are omitted from API requests. However, any field with
2108	// an empty value appearing in NullFields will be sent to the server as
2109	// null. It is an error if a field in this list has a non-empty value.
2110	// This may be used to include null fields in Patch requests.
2111	NullFields []string `json:"-"`
2112}
2113
2114func (s *AdvertisersListResponse) MarshalJSON() ([]byte, error) {
2115	type NoMethod AdvertisersListResponse
2116	raw := NoMethod(*s)
2117	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2118}
2119
2120// AudienceSegment: Audience Segment.
2121type AudienceSegment struct {
2122	// Allocation: Weight allocated to this segment. The weight assigned
2123	// will be understood in proportion to the weights assigned to other
2124	// segments in the same segment group. Acceptable values are 1 to 1000,
2125	// inclusive.
2126	Allocation int64 `json:"allocation,omitempty"`
2127
2128	// Id: ID of this audience segment. This is a read-only, auto-generated
2129	// field.
2130	Id int64 `json:"id,omitempty,string"`
2131
2132	// Name: Name of this audience segment. This is a required field and
2133	// must be less than 65 characters long.
2134	Name string `json:"name,omitempty"`
2135
2136	// ForceSendFields is a list of field names (e.g. "Allocation") to
2137	// unconditionally include in API requests. By default, fields with
2138	// empty or default values are omitted from API requests. However, any
2139	// non-pointer, non-interface field appearing in ForceSendFields will be
2140	// sent to the server regardless of whether the field is empty or not.
2141	// This may be used to include empty fields in Patch requests.
2142	ForceSendFields []string `json:"-"`
2143
2144	// NullFields is a list of field names (e.g. "Allocation") to include in
2145	// API requests with the JSON null value. By default, fields with empty
2146	// values are omitted from API requests. However, any field with an
2147	// empty value appearing in NullFields will be sent to the server as
2148	// null. It is an error if a field in this list has a non-empty value.
2149	// This may be used to include null fields in Patch requests.
2150	NullFields []string `json:"-"`
2151}
2152
2153func (s *AudienceSegment) MarshalJSON() ([]byte, error) {
2154	type NoMethod AudienceSegment
2155	raw := NoMethod(*s)
2156	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2157}
2158
2159// AudienceSegmentGroup: Audience Segment Group.
2160type AudienceSegmentGroup struct {
2161	// AudienceSegments: Audience segments assigned to this group. The
2162	// number of segments must be between 2 and 100.
2163	AudienceSegments []*AudienceSegment `json:"audienceSegments,omitempty"`
2164
2165	// Id: ID of this audience segment group. This is a read-only,
2166	// auto-generated field.
2167	Id int64 `json:"id,omitempty,string"`
2168
2169	// Name: Name of this audience segment group. This is a required field
2170	// and must be less than 65 characters long.
2171	Name string `json:"name,omitempty"`
2172
2173	// ForceSendFields is a list of field names (e.g. "AudienceSegments") to
2174	// unconditionally include in API requests. By default, fields with
2175	// empty or default values are omitted from API requests. However, any
2176	// non-pointer, non-interface field appearing in ForceSendFields will be
2177	// sent to the server regardless of whether the field is empty or not.
2178	// This may be used to include empty fields in Patch requests.
2179	ForceSendFields []string `json:"-"`
2180
2181	// NullFields is a list of field names (e.g. "AudienceSegments") to
2182	// include in API requests with the JSON null value. By default, fields
2183	// with empty values are omitted from API requests. However, any field
2184	// with an empty value appearing in NullFields will be sent to the
2185	// server as null. It is an error if a field in this list has a
2186	// non-empty value. This may be used to include null fields in Patch
2187	// requests.
2188	NullFields []string `json:"-"`
2189}
2190
2191func (s *AudienceSegmentGroup) MarshalJSON() ([]byte, error) {
2192	type NoMethod AudienceSegmentGroup
2193	raw := NoMethod(*s)
2194	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2195}
2196
2197// Browser: Contains information about a browser that can be targeted by
2198// ads.
2199type Browser struct {
2200	// BrowserVersionId: ID referring to this grouping of browser and
2201	// version numbers. This is the ID used for targeting.
2202	BrowserVersionId int64 `json:"browserVersionId,omitempty,string"`
2203
2204	// DartId: DART ID of this browser. This is the ID used when generating
2205	// reports.
2206	DartId int64 `json:"dartId,omitempty,string"`
2207
2208	// Kind: Identifies what kind of resource this is. Value: the fixed
2209	// string "dfareporting#browser".
2210	Kind string `json:"kind,omitempty"`
2211
2212	// MajorVersion: Major version number (leftmost number) of this browser.
2213	// For example, for Chrome 5.0.376.86 beta, this field should be set to
2214	// 5. An asterisk (*) may be used to target any version number, and a
2215	// question mark (?) may be used to target cases where the version
2216	// number cannot be identified. For example, Chrome *.* targets any
2217	// version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets
2218	// Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad
2219	// server knows the browser is Firefox but can't tell which version it
2220	// is.
2221	MajorVersion string `json:"majorVersion,omitempty"`
2222
2223	// MinorVersion: Minor version number (number after first dot on left)
2224	// of this browser. For example, for Chrome 5.0.375.86 beta, this field
2225	// should be set to 0. An asterisk (*) may be used to target any version
2226	// number, and a question mark (?) may be used to target cases where the
2227	// version number cannot be identified. For example, Chrome *.* targets
2228	// any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets
2229	// Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad
2230	// server knows the browser is Firefox but can't tell which version it
2231	// is.
2232	MinorVersion string `json:"minorVersion,omitempty"`
2233
2234	// Name: Name of this browser.
2235	Name string `json:"name,omitempty"`
2236
2237	// ForceSendFields is a list of field names (e.g. "BrowserVersionId") to
2238	// unconditionally include in API requests. By default, fields with
2239	// empty or default values are omitted from API requests. However, any
2240	// non-pointer, non-interface field appearing in ForceSendFields will be
2241	// sent to the server regardless of whether the field is empty or not.
2242	// This may be used to include empty fields in Patch requests.
2243	ForceSendFields []string `json:"-"`
2244
2245	// NullFields is a list of field names (e.g. "BrowserVersionId") to
2246	// include in API requests with the JSON null value. By default, fields
2247	// with empty values are omitted from API requests. However, any field
2248	// with an empty value appearing in NullFields will be sent to the
2249	// server as null. It is an error if a field in this list has a
2250	// non-empty value. This may be used to include null fields in Patch
2251	// requests.
2252	NullFields []string `json:"-"`
2253}
2254
2255func (s *Browser) MarshalJSON() ([]byte, error) {
2256	type NoMethod Browser
2257	raw := NoMethod(*s)
2258	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2259}
2260
2261// BrowsersListResponse: Browser List Response
2262type BrowsersListResponse struct {
2263	// Browsers: Browser collection.
2264	Browsers []*Browser `json:"browsers,omitempty"`
2265
2266	// Kind: Identifies what kind of resource this is. Value: the fixed
2267	// string "dfareporting#browsersListResponse".
2268	Kind string `json:"kind,omitempty"`
2269
2270	// ServerResponse contains the HTTP response code and headers from the
2271	// server.
2272	googleapi.ServerResponse `json:"-"`
2273
2274	// ForceSendFields is a list of field names (e.g. "Browsers") to
2275	// unconditionally include in API requests. By default, fields with
2276	// empty or default values are omitted from API requests. However, any
2277	// non-pointer, non-interface field appearing in ForceSendFields will be
2278	// sent to the server regardless of whether the field is empty or not.
2279	// This may be used to include empty fields in Patch requests.
2280	ForceSendFields []string `json:"-"`
2281
2282	// NullFields is a list of field names (e.g. "Browsers") to include in
2283	// API requests with the JSON null value. By default, fields with empty
2284	// values are omitted from API requests. However, any field with an
2285	// empty value appearing in NullFields will be sent to the server as
2286	// null. It is an error if a field in this list has a non-empty value.
2287	// This may be used to include null fields in Patch requests.
2288	NullFields []string `json:"-"`
2289}
2290
2291func (s *BrowsersListResponse) MarshalJSON() ([]byte, error) {
2292	type NoMethod BrowsersListResponse
2293	raw := NoMethod(*s)
2294	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2295}
2296
2297// Campaign: Contains properties of a Campaign Manager campaign.
2298type Campaign struct {
2299	// AccountId: Account ID of this campaign. This is a read-only field
2300	// that can be left blank.
2301	AccountId int64 `json:"accountId,omitempty,string"`
2302
2303	// AdBlockingConfiguration: Ad blocking settings for this campaign.
2304	AdBlockingConfiguration *AdBlockingConfiguration `json:"adBlockingConfiguration,omitempty"`
2305
2306	// AdditionalCreativeOptimizationConfigurations: Additional creative
2307	// optimization configurations for the campaign.
2308	AdditionalCreativeOptimizationConfigurations []*CreativeOptimizationConfiguration `json:"additionalCreativeOptimizationConfigurations,omitempty"`
2309
2310	// AdvertiserGroupId: Advertiser group ID of the associated advertiser.
2311	AdvertiserGroupId int64 `json:"advertiserGroupId,omitempty,string"`
2312
2313	// AdvertiserId: Advertiser ID of this campaign. This is a required
2314	// field.
2315	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
2316
2317	// AdvertiserIdDimensionValue: Dimension value for the advertiser ID of
2318	// this campaign. This is a read-only, auto-generated field.
2319	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
2320
2321	// Archived: Whether this campaign has been archived.
2322	Archived bool `json:"archived,omitempty"`
2323
2324	// AudienceSegmentGroups: Audience segment groups assigned to this
2325	// campaign. Cannot have more than 300 segment groups.
2326	AudienceSegmentGroups []*AudienceSegmentGroup `json:"audienceSegmentGroups,omitempty"`
2327
2328	// BillingInvoiceCode: Billing invoice code included in the Campaign
2329	// Manager client billing invoices associated with the campaign.
2330	BillingInvoiceCode string `json:"billingInvoiceCode,omitempty"`
2331
2332	// ClickThroughUrlSuffixProperties: Click-through URL suffix override
2333	// properties for this campaign.
2334	ClickThroughUrlSuffixProperties *ClickThroughUrlSuffixProperties `json:"clickThroughUrlSuffixProperties,omitempty"`
2335
2336	// Comment: Arbitrary comments about this campaign. Must be less than
2337	// 256 characters long.
2338	Comment string `json:"comment,omitempty"`
2339
2340	// CreateInfo: Information about the creation of this campaign. This is
2341	// a read-only field.
2342	CreateInfo *LastModifiedInfo `json:"createInfo,omitempty"`
2343
2344	// CreativeGroupIds: List of creative group IDs that are assigned to the
2345	// campaign.
2346	CreativeGroupIds googleapi.Int64s `json:"creativeGroupIds,omitempty"`
2347
2348	// CreativeOptimizationConfiguration: Creative optimization
2349	// configuration for the campaign.
2350	CreativeOptimizationConfiguration *CreativeOptimizationConfiguration `json:"creativeOptimizationConfiguration,omitempty"`
2351
2352	// DefaultClickThroughEventTagProperties: Click-through event tag ID
2353	// override properties for this campaign.
2354	DefaultClickThroughEventTagProperties *DefaultClickThroughEventTagProperties `json:"defaultClickThroughEventTagProperties,omitempty"`
2355
2356	// DefaultLandingPageId: The default landing page ID for this campaign.
2357	DefaultLandingPageId int64 `json:"defaultLandingPageId,omitempty,string"`
2358
2359	EndDate string `json:"endDate,omitempty"`
2360
2361	// EventTagOverrides: Overrides that can be used to activate or
2362	// deactivate advertiser event tags.
2363	EventTagOverrides []*EventTagOverride `json:"eventTagOverrides,omitempty"`
2364
2365	// ExternalId: External ID for this campaign.
2366	ExternalId string `json:"externalId,omitempty"`
2367
2368	// Id: ID of this campaign. This is a read-only auto-generated field.
2369	Id int64 `json:"id,omitempty,string"`
2370
2371	// IdDimensionValue: Dimension value for the ID of this campaign. This
2372	// is a read-only, auto-generated field.
2373	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
2374
2375	// Kind: Identifies what kind of resource this is. Value: the fixed
2376	// string "dfareporting#campaign".
2377	Kind string `json:"kind,omitempty"`
2378
2379	// LastModifiedInfo: Information about the most recent modification of
2380	// this campaign. This is a read-only field.
2381	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
2382
2383	// MeasurementPartnerLink: Measurement partner campaign link for tag
2384	// wrapping.
2385	MeasurementPartnerLink *MeasurementPartnerCampaignLink `json:"measurementPartnerLink,omitempty"`
2386
2387	// Name: Name of this campaign. This is a required field and must be
2388	// less than 256 characters long and unique among campaigns of the same
2389	// advertiser.
2390	Name string `json:"name,omitempty"`
2391
2392	// NielsenOcrEnabled: Whether Nielsen reports are enabled for this
2393	// campaign.
2394	NielsenOcrEnabled bool `json:"nielsenOcrEnabled,omitempty"`
2395
2396	StartDate string `json:"startDate,omitempty"`
2397
2398	// SubaccountId: Subaccount ID of this campaign. This is a read-only
2399	// field that can be left blank.
2400	SubaccountId int64 `json:"subaccountId,omitempty,string"`
2401
2402	// TraffickerEmails: Campaign trafficker contact emails.
2403	TraffickerEmails []string `json:"traffickerEmails,omitempty"`
2404
2405	// ServerResponse contains the HTTP response code and headers from the
2406	// server.
2407	googleapi.ServerResponse `json:"-"`
2408
2409	// ForceSendFields is a list of field names (e.g. "AccountId") to
2410	// unconditionally include in API requests. By default, fields with
2411	// empty or default values are omitted from API requests. However, any
2412	// non-pointer, non-interface field appearing in ForceSendFields will be
2413	// sent to the server regardless of whether the field is empty or not.
2414	// This may be used to include empty fields in Patch requests.
2415	ForceSendFields []string `json:"-"`
2416
2417	// NullFields is a list of field names (e.g. "AccountId") to include in
2418	// API requests with the JSON null value. By default, fields with empty
2419	// values are omitted from API requests. However, any field with an
2420	// empty value appearing in NullFields will be sent to the server as
2421	// null. It is an error if a field in this list has a non-empty value.
2422	// This may be used to include null fields in Patch requests.
2423	NullFields []string `json:"-"`
2424}
2425
2426func (s *Campaign) MarshalJSON() ([]byte, error) {
2427	type NoMethod Campaign
2428	raw := NoMethod(*s)
2429	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2430}
2431
2432// CampaignCreativeAssociation: Identifies a creative which has been
2433// associated with a given campaign.
2434type CampaignCreativeAssociation struct {
2435	// CreativeId: ID of the creative associated with the campaign. This is
2436	// a required field.
2437	CreativeId int64 `json:"creativeId,omitempty,string"`
2438
2439	// Kind: Identifies what kind of resource this is. Value: the fixed
2440	// string "dfareporting#campaignCreativeAssociation".
2441	Kind string `json:"kind,omitempty"`
2442
2443	// ServerResponse contains the HTTP response code and headers from the
2444	// server.
2445	googleapi.ServerResponse `json:"-"`
2446
2447	// ForceSendFields is a list of field names (e.g. "CreativeId") to
2448	// unconditionally include in API requests. By default, fields with
2449	// empty or default values are omitted from API requests. However, any
2450	// non-pointer, non-interface field appearing in ForceSendFields will be
2451	// sent to the server regardless of whether the field is empty or not.
2452	// This may be used to include empty fields in Patch requests.
2453	ForceSendFields []string `json:"-"`
2454
2455	// NullFields is a list of field names (e.g. "CreativeId") to include in
2456	// API requests with the JSON null value. By default, fields with empty
2457	// values are omitted from API requests. However, any field with an
2458	// empty value appearing in NullFields will be sent to the server as
2459	// null. It is an error if a field in this list has a non-empty value.
2460	// This may be used to include null fields in Patch requests.
2461	NullFields []string `json:"-"`
2462}
2463
2464func (s *CampaignCreativeAssociation) MarshalJSON() ([]byte, error) {
2465	type NoMethod CampaignCreativeAssociation
2466	raw := NoMethod(*s)
2467	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2468}
2469
2470// CampaignCreativeAssociationsListResponse: Campaign Creative
2471// Association List Response
2472type CampaignCreativeAssociationsListResponse struct {
2473	// CampaignCreativeAssociations: Campaign creative association
2474	// collection
2475	CampaignCreativeAssociations []*CampaignCreativeAssociation `json:"campaignCreativeAssociations,omitempty"`
2476
2477	// Kind: Identifies what kind of resource this is. Value: the fixed
2478	// string "dfareporting#campaignCreativeAssociationsListResponse".
2479	Kind string `json:"kind,omitempty"`
2480
2481	// NextPageToken: Pagination token to be used for the next list
2482	// operation.
2483	NextPageToken string `json:"nextPageToken,omitempty"`
2484
2485	// ServerResponse contains the HTTP response code and headers from the
2486	// server.
2487	googleapi.ServerResponse `json:"-"`
2488
2489	// ForceSendFields is a list of field names (e.g.
2490	// "CampaignCreativeAssociations") to unconditionally include in API
2491	// requests. By default, fields with empty or default values are omitted
2492	// from API requests. However, any non-pointer, non-interface field
2493	// appearing in ForceSendFields will be sent to the server regardless of
2494	// whether the field is empty or not. This may be used to include empty
2495	// fields in Patch requests.
2496	ForceSendFields []string `json:"-"`
2497
2498	// NullFields is a list of field names (e.g.
2499	// "CampaignCreativeAssociations") to include in API requests with the
2500	// JSON null value. By default, fields with empty values are omitted
2501	// from API requests. However, any field with an empty value appearing
2502	// in NullFields will be sent to the server as null. It is an error if a
2503	// field in this list has a non-empty value. This may be used to include
2504	// null fields in Patch requests.
2505	NullFields []string `json:"-"`
2506}
2507
2508func (s *CampaignCreativeAssociationsListResponse) MarshalJSON() ([]byte, error) {
2509	type NoMethod CampaignCreativeAssociationsListResponse
2510	raw := NoMethod(*s)
2511	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2512}
2513
2514// CampaignsListResponse: Campaign List Response
2515type CampaignsListResponse struct {
2516	// Campaigns: Campaign collection.
2517	Campaigns []*Campaign `json:"campaigns,omitempty"`
2518
2519	// Kind: Identifies what kind of resource this is. Value: the fixed
2520	// string "dfareporting#campaignsListResponse".
2521	Kind string `json:"kind,omitempty"`
2522
2523	// NextPageToken: Pagination token to be used for the next list
2524	// operation.
2525	NextPageToken string `json:"nextPageToken,omitempty"`
2526
2527	// ServerResponse contains the HTTP response code and headers from the
2528	// server.
2529	googleapi.ServerResponse `json:"-"`
2530
2531	// ForceSendFields is a list of field names (e.g. "Campaigns") to
2532	// unconditionally include in API requests. By default, fields with
2533	// empty or default values are omitted from API requests. However, any
2534	// non-pointer, non-interface field appearing in ForceSendFields will be
2535	// sent to the server regardless of whether the field is empty or not.
2536	// This may be used to include empty fields in Patch requests.
2537	ForceSendFields []string `json:"-"`
2538
2539	// NullFields is a list of field names (e.g. "Campaigns") to include in
2540	// API requests with the JSON null value. By default, fields with empty
2541	// values are omitted from API requests. However, any field with an
2542	// empty value appearing in NullFields will be sent to the server as
2543	// null. It is an error if a field in this list has a non-empty value.
2544	// This may be used to include null fields in Patch requests.
2545	NullFields []string `json:"-"`
2546}
2547
2548func (s *CampaignsListResponse) MarshalJSON() ([]byte, error) {
2549	type NoMethod CampaignsListResponse
2550	raw := NoMethod(*s)
2551	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2552}
2553
2554// ChangeLog: Describes a change that a user has made to a resource.
2555type ChangeLog struct {
2556	// AccountId: Account ID of the modified object.
2557	AccountId int64 `json:"accountId,omitempty,string"`
2558
2559	// Action: Action which caused the change.
2560	Action string `json:"action,omitempty"`
2561
2562	ChangeTime string `json:"changeTime,omitempty"`
2563
2564	// FieldName: Field name of the object which changed.
2565	FieldName string `json:"fieldName,omitempty"`
2566
2567	// Id: ID of this change log.
2568	Id int64 `json:"id,omitempty,string"`
2569
2570	// Kind: Identifies what kind of resource this is. Value: the fixed
2571	// string "dfareporting#changeLog".
2572	Kind string `json:"kind,omitempty"`
2573
2574	// NewValue: New value of the object field.
2575	NewValue string `json:"newValue,omitempty"`
2576
2577	// ObjectId: ID of the object of this change log. The object could be a
2578	// campaign, placement, ad, or other type.
2579	ObjectId int64 `json:"objectId,omitempty,string"`
2580
2581	// ObjectType: Object type of the change log.
2582	ObjectType string `json:"objectType,omitempty"`
2583
2584	// OldValue: Old value of the object field.
2585	OldValue string `json:"oldValue,omitempty"`
2586
2587	// SubaccountId: Subaccount ID of the modified object.
2588	SubaccountId int64 `json:"subaccountId,omitempty,string"`
2589
2590	// TransactionId: Transaction ID of this change log. When a single API
2591	// call results in many changes, each change will have a separate ID in
2592	// the change log but will share the same transactionId.
2593	TransactionId int64 `json:"transactionId,omitempty,string"`
2594
2595	// UserProfileId: ID of the user who modified the object.
2596	UserProfileId int64 `json:"userProfileId,omitempty,string"`
2597
2598	// UserProfileName: User profile name of the user who modified the
2599	// object.
2600	UserProfileName string `json:"userProfileName,omitempty"`
2601
2602	// ServerResponse contains the HTTP response code and headers from the
2603	// server.
2604	googleapi.ServerResponse `json:"-"`
2605
2606	// ForceSendFields is a list of field names (e.g. "AccountId") to
2607	// unconditionally include in API requests. By default, fields with
2608	// empty or default values are omitted from API requests. However, any
2609	// non-pointer, non-interface field appearing in ForceSendFields will be
2610	// sent to the server regardless of whether the field is empty or not.
2611	// This may be used to include empty fields in Patch requests.
2612	ForceSendFields []string `json:"-"`
2613
2614	// NullFields is a list of field names (e.g. "AccountId") to include in
2615	// API requests with the JSON null value. By default, fields with empty
2616	// values are omitted from API requests. However, any field with an
2617	// empty value appearing in NullFields will be sent to the server as
2618	// null. It is an error if a field in this list has a non-empty value.
2619	// This may be used to include null fields in Patch requests.
2620	NullFields []string `json:"-"`
2621}
2622
2623func (s *ChangeLog) MarshalJSON() ([]byte, error) {
2624	type NoMethod ChangeLog
2625	raw := NoMethod(*s)
2626	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2627}
2628
2629// ChangeLogsListResponse: Change Log List Response
2630type ChangeLogsListResponse struct {
2631	// ChangeLogs: Change log collection.
2632	ChangeLogs []*ChangeLog `json:"changeLogs,omitempty"`
2633
2634	// Kind: Identifies what kind of resource this is. Value: the fixed
2635	// string "dfareporting#changeLogsListResponse".
2636	Kind string `json:"kind,omitempty"`
2637
2638	// NextPageToken: Pagination token to be used for the next list
2639	// operation.
2640	NextPageToken string `json:"nextPageToken,omitempty"`
2641
2642	// ServerResponse contains the HTTP response code and headers from the
2643	// server.
2644	googleapi.ServerResponse `json:"-"`
2645
2646	// ForceSendFields is a list of field names (e.g. "ChangeLogs") to
2647	// unconditionally include in API requests. By default, fields with
2648	// empty or default values are omitted from API requests. However, any
2649	// non-pointer, non-interface field appearing in ForceSendFields will be
2650	// sent to the server regardless of whether the field is empty or not.
2651	// This may be used to include empty fields in Patch requests.
2652	ForceSendFields []string `json:"-"`
2653
2654	// NullFields is a list of field names (e.g. "ChangeLogs") to include in
2655	// API requests with the JSON null value. By default, fields with empty
2656	// values are omitted from API requests. However, any field with an
2657	// empty value appearing in NullFields will be sent to the server as
2658	// null. It is an error if a field in this list has a non-empty value.
2659	// This may be used to include null fields in Patch requests.
2660	NullFields []string `json:"-"`
2661}
2662
2663func (s *ChangeLogsListResponse) MarshalJSON() ([]byte, error) {
2664	type NoMethod ChangeLogsListResponse
2665	raw := NoMethod(*s)
2666	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2667}
2668
2669// ChannelGrouping: Represents a DfaReporting channel grouping.
2670type ChannelGrouping struct {
2671	// FallbackName: ChannelGrouping fallback name.
2672	FallbackName string `json:"fallbackName,omitempty"`
2673
2674	// Kind: The kind of resource this is, in this case
2675	// dfareporting#channelGrouping.
2676	Kind string `json:"kind,omitempty"`
2677
2678	// Name: ChannelGrouping name.
2679	Name string `json:"name,omitempty"`
2680
2681	// Rules: The rules contained within this channel grouping.
2682	Rules []*ChannelGroupingRule `json:"rules,omitempty"`
2683
2684	// ForceSendFields is a list of field names (e.g. "FallbackName") to
2685	// unconditionally include in API requests. By default, fields with
2686	// empty or default values are omitted from API requests. However, any
2687	// non-pointer, non-interface field appearing in ForceSendFields will be
2688	// sent to the server regardless of whether the field is empty or not.
2689	// This may be used to include empty fields in Patch requests.
2690	ForceSendFields []string `json:"-"`
2691
2692	// NullFields is a list of field names (e.g. "FallbackName") to include
2693	// in API requests with the JSON null value. By default, fields with
2694	// empty values are omitted from API requests. However, any field with
2695	// an empty value appearing in NullFields will be sent to the server as
2696	// null. It is an error if a field in this list has a non-empty value.
2697	// This may be used to include null fields in Patch requests.
2698	NullFields []string `json:"-"`
2699}
2700
2701func (s *ChannelGrouping) MarshalJSON() ([]byte, error) {
2702	type NoMethod ChannelGrouping
2703	raw := NoMethod(*s)
2704	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2705}
2706
2707// ChannelGroupingRule: Represents a DfaReporting channel grouping rule.
2708type ChannelGroupingRule struct {
2709	// DisjunctiveMatchStatements: The disjunctive match statements
2710	// contained within this rule.
2711	DisjunctiveMatchStatements []*DisjunctiveMatchStatement `json:"disjunctiveMatchStatements,omitempty"`
2712
2713	// Kind: The kind of resource this is, in this case
2714	// dfareporting#channelGroupingRule.
2715	Kind string `json:"kind,omitempty"`
2716
2717	// Name: Rule name.
2718	Name string `json:"name,omitempty"`
2719
2720	// ForceSendFields is a list of field names (e.g.
2721	// "DisjunctiveMatchStatements") to unconditionally include in API
2722	// requests. By default, fields with empty or default values are omitted
2723	// from API requests. However, any non-pointer, non-interface field
2724	// appearing in ForceSendFields will be sent to the server regardless of
2725	// whether the field is empty or not. This may be used to include empty
2726	// fields in Patch requests.
2727	ForceSendFields []string `json:"-"`
2728
2729	// NullFields is a list of field names (e.g.
2730	// "DisjunctiveMatchStatements") to include in API requests with the
2731	// JSON null value. By default, fields with empty values are omitted
2732	// from API requests. However, any field with an empty value appearing
2733	// in NullFields will be sent to the server as null. It is an error if a
2734	// field in this list has a non-empty value. This may be used to include
2735	// null fields in Patch requests.
2736	NullFields []string `json:"-"`
2737}
2738
2739func (s *ChannelGroupingRule) MarshalJSON() ([]byte, error) {
2740	type NoMethod ChannelGroupingRule
2741	raw := NoMethod(*s)
2742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2743}
2744
2745// CitiesListResponse: City List Response
2746type CitiesListResponse struct {
2747	// Cities: City collection.
2748	Cities []*City `json:"cities,omitempty"`
2749
2750	// Kind: Identifies what kind of resource this is. Value: the fixed
2751	// string "dfareporting#citiesListResponse".
2752	Kind string `json:"kind,omitempty"`
2753
2754	// ServerResponse contains the HTTP response code and headers from the
2755	// server.
2756	googleapi.ServerResponse `json:"-"`
2757
2758	// ForceSendFields is a list of field names (e.g. "Cities") to
2759	// unconditionally include in API requests. By default, fields with
2760	// empty or default values are omitted from API requests. However, any
2761	// non-pointer, non-interface field appearing in ForceSendFields will be
2762	// sent to the server regardless of whether the field is empty or not.
2763	// This may be used to include empty fields in Patch requests.
2764	ForceSendFields []string `json:"-"`
2765
2766	// NullFields is a list of field names (e.g. "Cities") to include in API
2767	// requests with the JSON null value. By default, fields with empty
2768	// values are omitted from API requests. However, any field with an
2769	// empty value appearing in NullFields will be sent to the server as
2770	// null. It is an error if a field in this list has a non-empty value.
2771	// This may be used to include null fields in Patch requests.
2772	NullFields []string `json:"-"`
2773}
2774
2775func (s *CitiesListResponse) MarshalJSON() ([]byte, error) {
2776	type NoMethod CitiesListResponse
2777	raw := NoMethod(*s)
2778	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2779}
2780
2781// City: Contains information about a city that can be targeted by ads.
2782type City struct {
2783	// CountryCode: Country code of the country to which this city belongs.
2784	CountryCode string `json:"countryCode,omitempty"`
2785
2786	// CountryDartId: DART ID of the country to which this city belongs.
2787	CountryDartId int64 `json:"countryDartId,omitempty,string"`
2788
2789	// DartId: DART ID of this city. This is the ID used for targeting and
2790	// generating reports.
2791	DartId int64 `json:"dartId,omitempty,string"`
2792
2793	// Kind: Identifies what kind of resource this is. Value: the fixed
2794	// string "dfareporting#city".
2795	Kind string `json:"kind,omitempty"`
2796
2797	// MetroCode: Metro region code of the metro region (DMA) to which this
2798	// city belongs.
2799	MetroCode string `json:"metroCode,omitempty"`
2800
2801	// MetroDmaId: ID of the metro region (DMA) to which this city belongs.
2802	MetroDmaId int64 `json:"metroDmaId,omitempty,string"`
2803
2804	// Name: Name of this city.
2805	Name string `json:"name,omitempty"`
2806
2807	// RegionCode: Region code of the region to which this city belongs.
2808	RegionCode string `json:"regionCode,omitempty"`
2809
2810	// RegionDartId: DART ID of the region to which this city belongs.
2811	RegionDartId int64 `json:"regionDartId,omitempty,string"`
2812
2813	// ForceSendFields is a list of field names (e.g. "CountryCode") to
2814	// unconditionally include in API requests. By default, fields with
2815	// empty or default values are omitted from API requests. However, any
2816	// non-pointer, non-interface field appearing in ForceSendFields will be
2817	// sent to the server regardless of whether the field is empty or not.
2818	// This may be used to include empty fields in Patch requests.
2819	ForceSendFields []string `json:"-"`
2820
2821	// NullFields is a list of field names (e.g. "CountryCode") to include
2822	// in API requests with the JSON null value. By default, fields with
2823	// empty values are omitted from API requests. However, any field with
2824	// an empty value appearing in NullFields will be sent to the server as
2825	// null. It is an error if a field in this list has a non-empty value.
2826	// This may be used to include null fields in Patch requests.
2827	NullFields []string `json:"-"`
2828}
2829
2830func (s *City) MarshalJSON() ([]byte, error) {
2831	type NoMethod City
2832	raw := NoMethod(*s)
2833	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2834}
2835
2836// ClickTag: Creative Click Tag.
2837type ClickTag struct {
2838	// ClickThroughUrl: Parameter value for the specified click tag. This
2839	// field contains a click-through url.
2840	ClickThroughUrl *CreativeClickThroughUrl `json:"clickThroughUrl,omitempty"`
2841
2842	// EventName: Advertiser event name associated with the click tag. This
2843	// field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives.
2844	// Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
2845	EventName string `json:"eventName,omitempty"`
2846
2847	// Name: Parameter name for the specified click tag. For
2848	// DISPLAY_IMAGE_GALLERY creative assets, this field must match the
2849	// value of the creative asset's creativeAssetId.name field.
2850	Name string `json:"name,omitempty"`
2851
2852	// ForceSendFields is a list of field names (e.g. "ClickThroughUrl") to
2853	// unconditionally include in API requests. By default, fields with
2854	// empty or default values are omitted from API requests. However, any
2855	// non-pointer, non-interface field appearing in ForceSendFields will be
2856	// sent to the server regardless of whether the field is empty or not.
2857	// This may be used to include empty fields in Patch requests.
2858	ForceSendFields []string `json:"-"`
2859
2860	// NullFields is a list of field names (e.g. "ClickThroughUrl") to
2861	// include in API requests with the JSON null value. By default, fields
2862	// with empty values are omitted from API requests. However, any field
2863	// with an empty value appearing in NullFields will be sent to the
2864	// server as null. It is an error if a field in this list has a
2865	// non-empty value. This may be used to include null fields in Patch
2866	// requests.
2867	NullFields []string `json:"-"`
2868}
2869
2870func (s *ClickTag) MarshalJSON() ([]byte, error) {
2871	type NoMethod ClickTag
2872	raw := NoMethod(*s)
2873	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2874}
2875
2876// ClickThroughUrl: Click-through URL
2877type ClickThroughUrl struct {
2878	// ComputedClickThroughUrl: Read-only convenience field representing the
2879	// actual URL that will be used for this click-through. The URL is
2880	// computed as follows: - If defaultLandingPage is enabled then the
2881	// campaign's default landing page URL is assigned to this field. - If
2882	// defaultLandingPage is not enabled and a landingPageId is specified
2883	// then that landing page's URL is assigned to this field. - If neither
2884	// of the above cases apply, then the customClickThroughUrl is assigned
2885	// to this field.
2886	ComputedClickThroughUrl string `json:"computedClickThroughUrl,omitempty"`
2887
2888	// CustomClickThroughUrl: Custom click-through URL. Applicable if the
2889	// defaultLandingPage field is set to false and the landingPageId field
2890	// is left unset.
2891	CustomClickThroughUrl string `json:"customClickThroughUrl,omitempty"`
2892
2893	// DefaultLandingPage: Whether the campaign default landing page is
2894	// used.
2895	DefaultLandingPage bool `json:"defaultLandingPage,omitempty"`
2896
2897	// LandingPageId: ID of the landing page for the click-through URL.
2898	// Applicable if the defaultLandingPage field is set to false.
2899	LandingPageId int64 `json:"landingPageId,omitempty,string"`
2900
2901	// ForceSendFields is a list of field names (e.g.
2902	// "ComputedClickThroughUrl") to unconditionally include in API
2903	// requests. By default, fields with empty or default values are omitted
2904	// from API requests. However, any non-pointer, non-interface field
2905	// appearing in ForceSendFields will be sent to the server regardless of
2906	// whether the field is empty or not. This may be used to include empty
2907	// fields in Patch requests.
2908	ForceSendFields []string `json:"-"`
2909
2910	// NullFields is a list of field names (e.g. "ComputedClickThroughUrl")
2911	// to include in API requests with the JSON null value. By default,
2912	// fields with empty values are omitted from API requests. However, any
2913	// field with an empty value appearing in NullFields will be sent to the
2914	// server as null. It is an error if a field in this list has a
2915	// non-empty value. This may be used to include null fields in Patch
2916	// requests.
2917	NullFields []string `json:"-"`
2918}
2919
2920func (s *ClickThroughUrl) MarshalJSON() ([]byte, error) {
2921	type NoMethod ClickThroughUrl
2922	raw := NoMethod(*s)
2923	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2924}
2925
2926// ClickThroughUrlSuffixProperties: Click Through URL Suffix settings.
2927type ClickThroughUrlSuffixProperties struct {
2928	// ClickThroughUrlSuffix: Click-through URL suffix to apply to all ads
2929	// in this entity's scope. Must be less than 128 characters long.
2930	ClickThroughUrlSuffix string `json:"clickThroughUrlSuffix,omitempty"`
2931
2932	// OverrideInheritedSuffix: Whether this entity should override the
2933	// inherited click-through URL suffix with its own defined value.
2934	OverrideInheritedSuffix bool `json:"overrideInheritedSuffix,omitempty"`
2935
2936	// ForceSendFields is a list of field names (e.g.
2937	// "ClickThroughUrlSuffix") to unconditionally include in API requests.
2938	// By default, fields with empty or default values are omitted from API
2939	// requests. However, any non-pointer, non-interface field appearing in
2940	// ForceSendFields will be sent to the server regardless of whether the
2941	// field is empty or not. This may be used to include empty fields in
2942	// Patch requests.
2943	ForceSendFields []string `json:"-"`
2944
2945	// NullFields is a list of field names (e.g. "ClickThroughUrlSuffix") to
2946	// include in API requests with the JSON null value. By default, fields
2947	// with empty values are omitted from API requests. However, any field
2948	// with an empty value appearing in NullFields will be sent to the
2949	// server as null. It is an error if a field in this list has a
2950	// non-empty value. This may be used to include null fields in Patch
2951	// requests.
2952	NullFields []string `json:"-"`
2953}
2954
2955func (s *ClickThroughUrlSuffixProperties) MarshalJSON() ([]byte, error) {
2956	type NoMethod ClickThroughUrlSuffixProperties
2957	raw := NoMethod(*s)
2958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2959}
2960
2961// CompanionClickThroughOverride: Companion Click-through override.
2962type CompanionClickThroughOverride struct {
2963	// ClickThroughUrl: Click-through URL of this companion click-through
2964	// override.
2965	ClickThroughUrl *ClickThroughUrl `json:"clickThroughUrl,omitempty"`
2966
2967	// CreativeId: ID of the creative for this companion click-through
2968	// override.
2969	CreativeId int64 `json:"creativeId,omitempty,string"`
2970
2971	// ForceSendFields is a list of field names (e.g. "ClickThroughUrl") to
2972	// unconditionally include in API requests. By default, fields with
2973	// empty or default values are omitted from API requests. However, any
2974	// non-pointer, non-interface field appearing in ForceSendFields will be
2975	// sent to the server regardless of whether the field is empty or not.
2976	// This may be used to include empty fields in Patch requests.
2977	ForceSendFields []string `json:"-"`
2978
2979	// NullFields is a list of field names (e.g. "ClickThroughUrl") to
2980	// include in API requests with the JSON null value. By default, fields
2981	// with empty values are omitted from API requests. However, any field
2982	// with an empty value appearing in NullFields will be sent to the
2983	// server as null. It is an error if a field in this list has a
2984	// non-empty value. This may be used to include null fields in Patch
2985	// requests.
2986	NullFields []string `json:"-"`
2987}
2988
2989func (s *CompanionClickThroughOverride) MarshalJSON() ([]byte, error) {
2990	type NoMethod CompanionClickThroughOverride
2991	raw := NoMethod(*s)
2992	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2993}
2994
2995// CompanionSetting: Companion Settings
2996type CompanionSetting struct {
2997	// CompanionsDisabled: Whether companions are disabled for this
2998	// placement.
2999	CompanionsDisabled bool `json:"companionsDisabled,omitempty"`
3000
3001	// EnabledSizes: Allowlist of companion sizes to be served to this
3002	// placement. Set this list to null or empty to serve all companion
3003	// sizes.
3004	EnabledSizes []*Size `json:"enabledSizes,omitempty"`
3005
3006	// ImageOnly: Whether to serve only static images as companions.
3007	ImageOnly bool `json:"imageOnly,omitempty"`
3008
3009	// Kind: Identifies what kind of resource this is. Value: the fixed
3010	// string "dfareporting#companionSetting".
3011	Kind string `json:"kind,omitempty"`
3012
3013	// ForceSendFields is a list of field names (e.g. "CompanionsDisabled")
3014	// to unconditionally include in API requests. By default, fields with
3015	// empty or default values are omitted from API requests. However, any
3016	// non-pointer, non-interface field appearing in ForceSendFields will be
3017	// sent to the server regardless of whether the field is empty or not.
3018	// This may be used to include empty fields in Patch requests.
3019	ForceSendFields []string `json:"-"`
3020
3021	// NullFields is a list of field names (e.g. "CompanionsDisabled") to
3022	// include in API requests with the JSON null value. By default, fields
3023	// with empty values are omitted from API requests. However, any field
3024	// with an empty value appearing in NullFields will be sent to the
3025	// server as null. It is an error if a field in this list has a
3026	// non-empty value. This may be used to include null fields in Patch
3027	// requests.
3028	NullFields []string `json:"-"`
3029}
3030
3031func (s *CompanionSetting) MarshalJSON() ([]byte, error) {
3032	type NoMethod CompanionSetting
3033	raw := NoMethod(*s)
3034	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3035}
3036
3037// CompatibleFields: Represents a response to the queryCompatibleFields
3038// method.
3039type CompatibleFields struct {
3040	// CrossDimensionReachReportCompatibleFields: Contains items that are
3041	// compatible to be selected for a report of type
3042	// "CROSS_DIMENSION_REACH".
3043	CrossDimensionReachReportCompatibleFields *CrossDimensionReachReportCompatibleFields `json:"crossDimensionReachReportCompatibleFields,omitempty"`
3044
3045	// FloodlightReportCompatibleFields: Contains items that are compatible
3046	// to be selected for a report of type "FLOODLIGHT".
3047	FloodlightReportCompatibleFields *FloodlightReportCompatibleFields `json:"floodlightReportCompatibleFields,omitempty"`
3048
3049	// Kind: The kind of resource this is, in this case
3050	// dfareporting#compatibleFields.
3051	Kind string `json:"kind,omitempty"`
3052
3053	// PathAttributionReportCompatibleFields: Contains items that are
3054	// compatible to be selected for a report of type "PATH_ATTRIBUTION".
3055	PathAttributionReportCompatibleFields *PathReportCompatibleFields `json:"pathAttributionReportCompatibleFields,omitempty"`
3056
3057	// PathReportCompatibleFields: Contains items that are compatible to be
3058	// selected for a report of type "PATH".
3059	PathReportCompatibleFields *PathReportCompatibleFields `json:"pathReportCompatibleFields,omitempty"`
3060
3061	// PathToConversionReportCompatibleFields: Contains items that are
3062	// compatible to be selected for a report of type "PATH_TO_CONVERSION".
3063	PathToConversionReportCompatibleFields *PathToConversionReportCompatibleFields `json:"pathToConversionReportCompatibleFields,omitempty"`
3064
3065	// ReachReportCompatibleFields: Contains items that are compatible to be
3066	// selected for a report of type "REACH".
3067	ReachReportCompatibleFields *ReachReportCompatibleFields `json:"reachReportCompatibleFields,omitempty"`
3068
3069	// ReportCompatibleFields: Contains items that are compatible to be
3070	// selected for a report of type "STANDARD".
3071	ReportCompatibleFields *ReportCompatibleFields `json:"reportCompatibleFields,omitempty"`
3072
3073	// ServerResponse contains the HTTP response code and headers from the
3074	// server.
3075	googleapi.ServerResponse `json:"-"`
3076
3077	// ForceSendFields is a list of field names (e.g.
3078	// "CrossDimensionReachReportCompatibleFields") to unconditionally
3079	// include in API requests. By default, fields with empty or default
3080	// values are omitted from API requests. However, any non-pointer,
3081	// non-interface field appearing in ForceSendFields will be sent to the
3082	// server regardless of whether the field is empty or not. This may be
3083	// used to include empty fields in Patch requests.
3084	ForceSendFields []string `json:"-"`
3085
3086	// NullFields is a list of field names (e.g.
3087	// "CrossDimensionReachReportCompatibleFields") to include in API
3088	// requests with the JSON null value. By default, fields with empty
3089	// values are omitted from API requests. However, any field with an
3090	// empty value appearing in NullFields will be sent to the server as
3091	// null. It is an error if a field in this list has a non-empty value.
3092	// This may be used to include null fields in Patch requests.
3093	NullFields []string `json:"-"`
3094}
3095
3096func (s *CompatibleFields) MarshalJSON() ([]byte, error) {
3097	type NoMethod CompatibleFields
3098	raw := NoMethod(*s)
3099	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3100}
3101
3102// ConnectionType: Contains information about an internet connection
3103// type that can be targeted by ads. Clients can use the connection type
3104// to target mobile vs. broadband users.
3105type ConnectionType struct {
3106	// Id: ID of this connection type.
3107	Id int64 `json:"id,omitempty,string"`
3108
3109	// Kind: Identifies what kind of resource this is. Value: the fixed
3110	// string "dfareporting#connectionType".
3111	Kind string `json:"kind,omitempty"`
3112
3113	// Name: Name of this connection type.
3114	Name string `json:"name,omitempty"`
3115
3116	// ServerResponse contains the HTTP response code and headers from the
3117	// server.
3118	googleapi.ServerResponse `json:"-"`
3119
3120	// ForceSendFields is a list of field names (e.g. "Id") to
3121	// unconditionally include in API requests. By default, fields with
3122	// empty or default values are omitted from API requests. However, any
3123	// non-pointer, non-interface field appearing in ForceSendFields will be
3124	// sent to the server regardless of whether the field is empty or not.
3125	// This may be used to include empty fields in Patch requests.
3126	ForceSendFields []string `json:"-"`
3127
3128	// NullFields is a list of field names (e.g. "Id") to include in API
3129	// requests with the JSON null value. By default, fields with empty
3130	// values are omitted from API requests. However, any field with an
3131	// empty value appearing in NullFields will be sent to the server as
3132	// null. It is an error if a field in this list has a non-empty value.
3133	// This may be used to include null fields in Patch requests.
3134	NullFields []string `json:"-"`
3135}
3136
3137func (s *ConnectionType) MarshalJSON() ([]byte, error) {
3138	type NoMethod ConnectionType
3139	raw := NoMethod(*s)
3140	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3141}
3142
3143// ConnectionTypesListResponse: Connection Type List Response
3144type ConnectionTypesListResponse struct {
3145	// ConnectionTypes: Collection of connection types such as broadband and
3146	// mobile.
3147	ConnectionTypes []*ConnectionType `json:"connectionTypes,omitempty"`
3148
3149	// Kind: Identifies what kind of resource this is. Value: the fixed
3150	// string "dfareporting#connectionTypesListResponse".
3151	Kind string `json:"kind,omitempty"`
3152
3153	// ServerResponse contains the HTTP response code and headers from the
3154	// server.
3155	googleapi.ServerResponse `json:"-"`
3156
3157	// ForceSendFields is a list of field names (e.g. "ConnectionTypes") to
3158	// unconditionally include in API requests. By default, fields with
3159	// empty or default values are omitted from API requests. However, any
3160	// non-pointer, non-interface field appearing in ForceSendFields will be
3161	// sent to the server regardless of whether the field is empty or not.
3162	// This may be used to include empty fields in Patch requests.
3163	ForceSendFields []string `json:"-"`
3164
3165	// NullFields is a list of field names (e.g. "ConnectionTypes") to
3166	// include in API requests with the JSON null value. By default, fields
3167	// with empty values are omitted from API requests. However, any field
3168	// with an empty value appearing in NullFields will be sent to the
3169	// server as null. It is an error if a field in this list has a
3170	// non-empty value. This may be used to include null fields in Patch
3171	// requests.
3172	NullFields []string `json:"-"`
3173}
3174
3175func (s *ConnectionTypesListResponse) MarshalJSON() ([]byte, error) {
3176	type NoMethod ConnectionTypesListResponse
3177	raw := NoMethod(*s)
3178	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3179}
3180
3181// ContentCategoriesListResponse: Content Category List Response
3182type ContentCategoriesListResponse struct {
3183	// ContentCategories: Content category collection.
3184	ContentCategories []*ContentCategory `json:"contentCategories,omitempty"`
3185
3186	// Kind: Identifies what kind of resource this is. Value: the fixed
3187	// string "dfareporting#contentCategoriesListResponse".
3188	Kind string `json:"kind,omitempty"`
3189
3190	// NextPageToken: Pagination token to be used for the next list
3191	// operation.
3192	NextPageToken string `json:"nextPageToken,omitempty"`
3193
3194	// ServerResponse contains the HTTP response code and headers from the
3195	// server.
3196	googleapi.ServerResponse `json:"-"`
3197
3198	// ForceSendFields is a list of field names (e.g. "ContentCategories")
3199	// to unconditionally include in API requests. By default, fields with
3200	// empty or default values are omitted from API requests. However, any
3201	// non-pointer, non-interface field appearing in ForceSendFields will be
3202	// sent to the server regardless of whether the field is empty or not.
3203	// This may be used to include empty fields in Patch requests.
3204	ForceSendFields []string `json:"-"`
3205
3206	// NullFields is a list of field names (e.g. "ContentCategories") to
3207	// include in API requests with the JSON null value. By default, fields
3208	// with empty values are omitted from API requests. However, any field
3209	// with an empty value appearing in NullFields will be sent to the
3210	// server as null. It is an error if a field in this list has a
3211	// non-empty value. This may be used to include null fields in Patch
3212	// requests.
3213	NullFields []string `json:"-"`
3214}
3215
3216func (s *ContentCategoriesListResponse) MarshalJSON() ([]byte, error) {
3217	type NoMethod ContentCategoriesListResponse
3218	raw := NoMethod(*s)
3219	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3220}
3221
3222// ContentCategory: Organizes placements according to the contents of
3223// their associated webpages.
3224type ContentCategory struct {
3225	// AccountId: Account ID of this content category. This is a read-only
3226	// field that can be left blank.
3227	AccountId int64 `json:"accountId,omitempty,string"`
3228
3229	// Id: ID of this content category. This is a read-only, auto-generated
3230	// field.
3231	Id int64 `json:"id,omitempty,string"`
3232
3233	// Kind: Identifies what kind of resource this is. Value: the fixed
3234	// string "dfareporting#contentCategory".
3235	Kind string `json:"kind,omitempty"`
3236
3237	// Name: Name of this content category. This is a required field and
3238	// must be less than 256 characters long and unique among content
3239	// categories of the same account.
3240	Name string `json:"name,omitempty"`
3241
3242	// ServerResponse contains the HTTP response code and headers from the
3243	// server.
3244	googleapi.ServerResponse `json:"-"`
3245
3246	// ForceSendFields is a list of field names (e.g. "AccountId") to
3247	// unconditionally include in API requests. By default, fields with
3248	// empty or default values are omitted from API requests. However, any
3249	// non-pointer, non-interface field appearing in ForceSendFields will be
3250	// sent to the server regardless of whether the field is empty or not.
3251	// This may be used to include empty fields in Patch requests.
3252	ForceSendFields []string `json:"-"`
3253
3254	// NullFields is a list of field names (e.g. "AccountId") to include in
3255	// API requests with the JSON null value. By default, fields with empty
3256	// values are omitted from API requests. However, any field with an
3257	// empty value appearing in NullFields will be sent to the server as
3258	// null. It is an error if a field in this list has a non-empty value.
3259	// This may be used to include null fields in Patch requests.
3260	NullFields []string `json:"-"`
3261}
3262
3263func (s *ContentCategory) MarshalJSON() ([]byte, error) {
3264	type NoMethod ContentCategory
3265	raw := NoMethod(*s)
3266	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3267}
3268
3269// Conversion: A Conversion represents when a user successfully performs
3270// a desired action after seeing an ad.
3271type Conversion struct {
3272	// ChildDirectedTreatment: Whether this particular request may come from
3273	// a user under the age of 13, under COPPA compliance.
3274	ChildDirectedTreatment bool `json:"childDirectedTreatment,omitempty"`
3275
3276	// CustomVariables: Custom floodlight variables.
3277	CustomVariables []*CustomFloodlightVariable `json:"customVariables,omitempty"`
3278
3279	// Dclid: The display click ID. This field is mutually exclusive with
3280	// encryptedUserId, encryptedUserIdCandidates[], matchId, mobileDeviceId
3281	// and gclid. This or encryptedUserId or encryptedUserIdCandidates[] or
3282	// matchId or mobileDeviceId or gclid is a required field.
3283	Dclid string `json:"dclid,omitempty"`
3284
3285	// EncryptedUserId: The alphanumeric encrypted user ID. When set,
3286	// encryptionInfo should also be specified. This field is mutually
3287	// exclusive with encryptedUserIdCandidates[], matchId, mobileDeviceId,
3288	// gclid and dclid. This or encryptedUserIdCandidates[] or matchId or
3289	// mobileDeviceId or gclid or dclid is a required field.
3290	EncryptedUserId string `json:"encryptedUserId,omitempty"`
3291
3292	// EncryptedUserIdCandidates: A list of the alphanumeric encrypted user
3293	// IDs. Any user ID with exposure prior to the conversion timestamp will
3294	// be used in the inserted conversion. If no such user ID is found then
3295	// the conversion will be rejected with INVALID_ARGUMENT error. When
3296	// set, encryptionInfo should also be specified. This field may only be
3297	// used when calling batchinsert; it is not supported by batchupdate.
3298	// This field is mutually exclusive with encryptedUserId, matchId,
3299	// mobileDeviceId, gclid and dclid. This or encryptedUserId or matchId
3300	// or mobileDeviceId or gclid or dclid is a required field.
3301	EncryptedUserIdCandidates []string `json:"encryptedUserIdCandidates,omitempty"`
3302
3303	// FloodlightActivityId: Floodlight Activity ID of this conversion. This
3304	// is a required field.
3305	FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"`
3306
3307	// FloodlightConfigurationId: Floodlight Configuration ID of this
3308	// conversion. This is a required field.
3309	FloodlightConfigurationId int64 `json:"floodlightConfigurationId,omitempty,string"`
3310
3311	// Gclid: The Google click ID. This field is mutually exclusive with
3312	// encryptedUserId, encryptedUserIdCandidates[], matchId, mobileDeviceId
3313	// and dclid. This or encryptedUserId or encryptedUserIdCandidates[] or
3314	// matchId or mobileDeviceId or dclid is a required field.
3315	Gclid string `json:"gclid,omitempty"`
3316
3317	// Kind: Identifies what kind of resource this is. Value: the fixed
3318	// string "dfareporting#conversion".
3319	Kind string `json:"kind,omitempty"`
3320
3321	// LimitAdTracking: Whether Limit Ad Tracking is enabled. When set to
3322	// true, the conversion will be used for reporting but not targeting.
3323	// This will prevent remarketing.
3324	LimitAdTracking bool `json:"limitAdTracking,omitempty"`
3325
3326	// MatchId: The match ID field. A match ID is your own first-party
3327	// identifier that has been synced with Google using the match ID
3328	// feature in Floodlight. This field is mutually exclusive with
3329	// encryptedUserId, encryptedUserIdCandidates[],mobileDeviceId, gclid
3330	// and dclid. This or encryptedUserId or encryptedUserIdCandidates[] or
3331	// mobileDeviceId or gclid or dclid is a required field.
3332	MatchId string `json:"matchId,omitempty"`
3333
3334	// MobileDeviceId: The mobile device ID. This field is mutually
3335	// exclusive with encryptedUserId, encryptedUserIdCandidates[], matchId,
3336	// gclid and dclid. This or encryptedUserId or
3337	// encryptedUserIdCandidates[] or matchId or gclid or dclid is a
3338	// required field.
3339	MobileDeviceId string `json:"mobileDeviceId,omitempty"`
3340
3341	// NonPersonalizedAd: Whether the conversion was for a non personalized
3342	// ad.
3343	NonPersonalizedAd bool `json:"nonPersonalizedAd,omitempty"`
3344
3345	// Ordinal: The ordinal of the conversion. Use this field to control how
3346	// conversions of the same user and day are de-duplicated. This is a
3347	// required field.
3348	Ordinal string `json:"ordinal,omitempty"`
3349
3350	// Quantity: The quantity of the conversion.
3351	Quantity int64 `json:"quantity,omitempty,string"`
3352
3353	// TimestampMicros: The timestamp of conversion, in Unix epoch micros.
3354	// This is a required field.
3355	TimestampMicros int64 `json:"timestampMicros,omitempty,string"`
3356
3357	// TreatmentForUnderage: Whether this particular request may come from a
3358	// user under the age of 16 (may differ by country), under compliance
3359	// with the European Union's General Data Protection Regulation (GDPR).
3360	TreatmentForUnderage bool `json:"treatmentForUnderage,omitempty"`
3361
3362	// Value: The value of the conversion.
3363	Value float64 `json:"value,omitempty"`
3364
3365	// ForceSendFields is a list of field names (e.g.
3366	// "ChildDirectedTreatment") to unconditionally include in API requests.
3367	// By default, fields with empty or default values are omitted from API
3368	// requests. However, any non-pointer, non-interface field appearing in
3369	// ForceSendFields will be sent to the server regardless of whether the
3370	// field is empty or not. This may be used to include empty fields in
3371	// Patch requests.
3372	ForceSendFields []string `json:"-"`
3373
3374	// NullFields is a list of field names (e.g. "ChildDirectedTreatment")
3375	// to include in API requests with the JSON null value. By default,
3376	// fields with empty values are omitted from API requests. However, any
3377	// field with an empty value appearing in NullFields will be sent to the
3378	// server as null. It is an error if a field in this list has a
3379	// non-empty value. This may be used to include null fields in Patch
3380	// requests.
3381	NullFields []string `json:"-"`
3382}
3383
3384func (s *Conversion) MarshalJSON() ([]byte, error) {
3385	type NoMethod Conversion
3386	raw := NoMethod(*s)
3387	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3388}
3389
3390func (s *Conversion) UnmarshalJSON(data []byte) error {
3391	type NoMethod Conversion
3392	var s1 struct {
3393		Value gensupport.JSONFloat64 `json:"value"`
3394		*NoMethod
3395	}
3396	s1.NoMethod = (*NoMethod)(s)
3397	if err := json.Unmarshal(data, &s1); err != nil {
3398		return err
3399	}
3400	s.Value = float64(s1.Value)
3401	return nil
3402}
3403
3404// ConversionError: The error code and description for a conversion that
3405// failed to insert or update.
3406type ConversionError struct {
3407	// Code: The error code.
3408	//
3409	// Possible values:
3410	//   "INVALID_ARGUMENT"
3411	//   "INTERNAL"
3412	//   "PERMISSION_DENIED"
3413	//   "NOT_FOUND"
3414	Code string `json:"code,omitempty"`
3415
3416	// Kind: Identifies what kind of resource this is. Value: the fixed
3417	// string "dfareporting#conversionError".
3418	Kind string `json:"kind,omitempty"`
3419
3420	// Message: A description of the error.
3421	Message string `json:"message,omitempty"`
3422
3423	// ForceSendFields is a list of field names (e.g. "Code") to
3424	// unconditionally include in API requests. By default, fields with
3425	// empty or default values are omitted from API requests. However, any
3426	// non-pointer, non-interface field appearing in ForceSendFields will be
3427	// sent to the server regardless of whether the field is empty or not.
3428	// This may be used to include empty fields in Patch requests.
3429	ForceSendFields []string `json:"-"`
3430
3431	// NullFields is a list of field names (e.g. "Code") to include in API
3432	// requests with the JSON null value. By default, fields with empty
3433	// values are omitted from API requests. However, any field with an
3434	// empty value appearing in NullFields will be sent to the server as
3435	// null. It is an error if a field in this list has a non-empty value.
3436	// This may be used to include null fields in Patch requests.
3437	NullFields []string `json:"-"`
3438}
3439
3440func (s *ConversionError) MarshalJSON() ([]byte, error) {
3441	type NoMethod ConversionError
3442	raw := NoMethod(*s)
3443	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3444}
3445
3446// ConversionStatus: The original conversion that was inserted or
3447// updated and whether there were any errors.
3448type ConversionStatus struct {
3449	// Conversion: The original conversion that was inserted or updated.
3450	Conversion *Conversion `json:"conversion,omitempty"`
3451
3452	// Errors: A list of errors related to this conversion.
3453	Errors []*ConversionError `json:"errors,omitempty"`
3454
3455	// Kind: Identifies what kind of resource this is. Value: the fixed
3456	// string "dfareporting#conversionStatus".
3457	Kind string `json:"kind,omitempty"`
3458
3459	// ForceSendFields is a list of field names (e.g. "Conversion") to
3460	// unconditionally include in API requests. By default, fields with
3461	// empty or default values are omitted from API requests. However, any
3462	// non-pointer, non-interface field appearing in ForceSendFields will be
3463	// sent to the server regardless of whether the field is empty or not.
3464	// This may be used to include empty fields in Patch requests.
3465	ForceSendFields []string `json:"-"`
3466
3467	// NullFields is a list of field names (e.g. "Conversion") to include in
3468	// API requests with the JSON null value. By default, fields with empty
3469	// values are omitted from API requests. However, any field with an
3470	// empty value appearing in NullFields will be sent to the server as
3471	// null. It is an error if a field in this list has a non-empty value.
3472	// This may be used to include null fields in Patch requests.
3473	NullFields []string `json:"-"`
3474}
3475
3476func (s *ConversionStatus) MarshalJSON() ([]byte, error) {
3477	type NoMethod ConversionStatus
3478	raw := NoMethod(*s)
3479	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3480}
3481
3482// ConversionsBatchInsertRequest: Insert Conversions Request.
3483type ConversionsBatchInsertRequest struct {
3484	// Conversions: The set of conversions to insert.
3485	Conversions []*Conversion `json:"conversions,omitempty"`
3486
3487	// EncryptionInfo: Describes how encryptedUserId or
3488	// encryptedUserIdCandidates[] is encrypted. This is a required field if
3489	// encryptedUserId or encryptedUserIdCandidates[] is used.
3490	EncryptionInfo *EncryptionInfo `json:"encryptionInfo,omitempty"`
3491
3492	// Kind: Identifies what kind of resource this is. Value: the fixed
3493	// string "dfareporting#conversionsBatchInsertRequest".
3494	Kind string `json:"kind,omitempty"`
3495
3496	// ForceSendFields is a list of field names (e.g. "Conversions") to
3497	// unconditionally include in API requests. By default, fields with
3498	// empty or default values are omitted from API requests. However, any
3499	// non-pointer, non-interface field appearing in ForceSendFields will be
3500	// sent to the server regardless of whether the field is empty or not.
3501	// This may be used to include empty fields in Patch requests.
3502	ForceSendFields []string `json:"-"`
3503
3504	// NullFields is a list of field names (e.g. "Conversions") to include
3505	// in API requests with the JSON null value. By default, fields with
3506	// empty values are omitted from API requests. However, any field with
3507	// an empty value appearing in NullFields will be sent to the server as
3508	// null. It is an error if a field in this list has a non-empty value.
3509	// This may be used to include null fields in Patch requests.
3510	NullFields []string `json:"-"`
3511}
3512
3513func (s *ConversionsBatchInsertRequest) MarshalJSON() ([]byte, error) {
3514	type NoMethod ConversionsBatchInsertRequest
3515	raw := NoMethod(*s)
3516	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3517}
3518
3519// ConversionsBatchInsertResponse: Insert Conversions Response.
3520type ConversionsBatchInsertResponse struct {
3521	// HasFailures: Indicates that some or all conversions failed to insert.
3522	HasFailures bool `json:"hasFailures,omitempty"`
3523
3524	// Kind: Identifies what kind of resource this is. Value: the fixed
3525	// string "dfareporting#conversionsBatchInsertResponse".
3526	Kind string `json:"kind,omitempty"`
3527
3528	// Status: The insert status of each conversion. Statuses are returned
3529	// in the same order that conversions are inserted.
3530	Status []*ConversionStatus `json:"status,omitempty"`
3531
3532	// ServerResponse contains the HTTP response code and headers from the
3533	// server.
3534	googleapi.ServerResponse `json:"-"`
3535
3536	// ForceSendFields is a list of field names (e.g. "HasFailures") to
3537	// unconditionally include in API requests. By default, fields with
3538	// empty or default values are omitted from API requests. However, any
3539	// non-pointer, non-interface field appearing in ForceSendFields will be
3540	// sent to the server regardless of whether the field is empty or not.
3541	// This may be used to include empty fields in Patch requests.
3542	ForceSendFields []string `json:"-"`
3543
3544	// NullFields is a list of field names (e.g. "HasFailures") to include
3545	// in API requests with the JSON null value. By default, fields with
3546	// empty values are omitted from API requests. However, any field with
3547	// an empty value appearing in NullFields will be sent to the server as
3548	// null. It is an error if a field in this list has a non-empty value.
3549	// This may be used to include null fields in Patch requests.
3550	NullFields []string `json:"-"`
3551}
3552
3553func (s *ConversionsBatchInsertResponse) MarshalJSON() ([]byte, error) {
3554	type NoMethod ConversionsBatchInsertResponse
3555	raw := NoMethod(*s)
3556	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3557}
3558
3559// ConversionsBatchUpdateRequest: Update Conversions Request.
3560type ConversionsBatchUpdateRequest struct {
3561	// Conversions: The set of conversions to update.
3562	Conversions []*Conversion `json:"conversions,omitempty"`
3563
3564	// EncryptionInfo: Describes how encryptedUserId is encrypted. This is a
3565	// required field if encryptedUserId is used.
3566	EncryptionInfo *EncryptionInfo `json:"encryptionInfo,omitempty"`
3567
3568	// Kind: Identifies what kind of resource this is. Value: the fixed
3569	// string "dfareporting#conversionsBatchUpdateRequest".
3570	Kind string `json:"kind,omitempty"`
3571
3572	// ForceSendFields is a list of field names (e.g. "Conversions") to
3573	// unconditionally include in API requests. By default, fields with
3574	// empty or default values are omitted from API requests. However, any
3575	// non-pointer, non-interface field appearing in ForceSendFields will be
3576	// sent to the server regardless of whether the field is empty or not.
3577	// This may be used to include empty fields in Patch requests.
3578	ForceSendFields []string `json:"-"`
3579
3580	// NullFields is a list of field names (e.g. "Conversions") to include
3581	// in API requests with the JSON null value. By default, fields with
3582	// empty values are omitted from API requests. However, any field with
3583	// an empty value appearing in NullFields will be sent to the server as
3584	// null. It is an error if a field in this list has a non-empty value.
3585	// This may be used to include null fields in Patch requests.
3586	NullFields []string `json:"-"`
3587}
3588
3589func (s *ConversionsBatchUpdateRequest) MarshalJSON() ([]byte, error) {
3590	type NoMethod ConversionsBatchUpdateRequest
3591	raw := NoMethod(*s)
3592	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3593}
3594
3595// ConversionsBatchUpdateResponse: Update Conversions Response.
3596type ConversionsBatchUpdateResponse struct {
3597	// HasFailures: Indicates that some or all conversions failed to update.
3598	HasFailures bool `json:"hasFailures,omitempty"`
3599
3600	// Kind: Identifies what kind of resource this is. Value: the fixed
3601	// string "dfareporting#conversionsBatchUpdateResponse".
3602	Kind string `json:"kind,omitempty"`
3603
3604	// Status: The update status of each conversion. Statuses are returned
3605	// in the same order that conversions are updated.
3606	Status []*ConversionStatus `json:"status,omitempty"`
3607
3608	// ServerResponse contains the HTTP response code and headers from the
3609	// server.
3610	googleapi.ServerResponse `json:"-"`
3611
3612	// ForceSendFields is a list of field names (e.g. "HasFailures") to
3613	// unconditionally include in API requests. By default, fields with
3614	// empty or default values are omitted from API requests. However, any
3615	// non-pointer, non-interface field appearing in ForceSendFields will be
3616	// sent to the server regardless of whether the field is empty or not.
3617	// This may be used to include empty fields in Patch requests.
3618	ForceSendFields []string `json:"-"`
3619
3620	// NullFields is a list of field names (e.g. "HasFailures") to include
3621	// in API requests with the JSON null value. By default, fields with
3622	// empty values are omitted from API requests. However, any field with
3623	// an empty value appearing in NullFields will be sent to the server as
3624	// null. It is an error if a field in this list has a non-empty value.
3625	// This may be used to include null fields in Patch requests.
3626	NullFields []string `json:"-"`
3627}
3628
3629func (s *ConversionsBatchUpdateResponse) MarshalJSON() ([]byte, error) {
3630	type NoMethod ConversionsBatchUpdateResponse
3631	raw := NoMethod(*s)
3632	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3633}
3634
3635// CountriesListResponse: Country List Response
3636type CountriesListResponse struct {
3637	// Countries: Country collection.
3638	Countries []*Country `json:"countries,omitempty"`
3639
3640	// Kind: Identifies what kind of resource this is. Value: the fixed
3641	// string "dfareporting#countriesListResponse".
3642	Kind string `json:"kind,omitempty"`
3643
3644	// ServerResponse contains the HTTP response code and headers from the
3645	// server.
3646	googleapi.ServerResponse `json:"-"`
3647
3648	// ForceSendFields is a list of field names (e.g. "Countries") to
3649	// unconditionally include in API requests. By default, fields with
3650	// empty or default values are omitted from API requests. However, any
3651	// non-pointer, non-interface field appearing in ForceSendFields will be
3652	// sent to the server regardless of whether the field is empty or not.
3653	// This may be used to include empty fields in Patch requests.
3654	ForceSendFields []string `json:"-"`
3655
3656	// NullFields is a list of field names (e.g. "Countries") to include in
3657	// API requests with the JSON null value. By default, fields with empty
3658	// values are omitted from API requests. However, any field with an
3659	// empty value appearing in NullFields will be sent to the server as
3660	// null. It is an error if a field in this list has a non-empty value.
3661	// This may be used to include null fields in Patch requests.
3662	NullFields []string `json:"-"`
3663}
3664
3665func (s *CountriesListResponse) MarshalJSON() ([]byte, error) {
3666	type NoMethod CountriesListResponse
3667	raw := NoMethod(*s)
3668	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3669}
3670
3671// Country: Contains information about a country that can be targeted by
3672// ads.
3673type Country struct {
3674	// CountryCode: Country code.
3675	CountryCode string `json:"countryCode,omitempty"`
3676
3677	// DartId: DART ID of this country. This is the ID used for targeting
3678	// and generating reports.
3679	DartId int64 `json:"dartId,omitempty,string"`
3680
3681	// Kind: Identifies what kind of resource this is. Value: the fixed
3682	// string "dfareporting#country".
3683	Kind string `json:"kind,omitempty"`
3684
3685	// Name: Name of this country.
3686	Name string `json:"name,omitempty"`
3687
3688	// SslEnabled: Whether ad serving supports secure servers in this
3689	// country.
3690	SslEnabled bool `json:"sslEnabled,omitempty"`
3691
3692	// ServerResponse contains the HTTP response code and headers from the
3693	// server.
3694	googleapi.ServerResponse `json:"-"`
3695
3696	// ForceSendFields is a list of field names (e.g. "CountryCode") to
3697	// unconditionally include in API requests. By default, fields with
3698	// empty or default values are omitted from API requests. However, any
3699	// non-pointer, non-interface field appearing in ForceSendFields will be
3700	// sent to the server regardless of whether the field is empty or not.
3701	// This may be used to include empty fields in Patch requests.
3702	ForceSendFields []string `json:"-"`
3703
3704	// NullFields is a list of field names (e.g. "CountryCode") to include
3705	// in API requests with the JSON null value. By default, fields with
3706	// empty values are omitted from API requests. However, any field with
3707	// an empty value appearing in NullFields will be sent to the server as
3708	// null. It is an error if a field in this list has a non-empty value.
3709	// This may be used to include null fields in Patch requests.
3710	NullFields []string `json:"-"`
3711}
3712
3713func (s *Country) MarshalJSON() ([]byte, error) {
3714	type NoMethod Country
3715	raw := NoMethod(*s)
3716	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3717}
3718
3719// Creative: Contains properties of a Creative.
3720type Creative struct {
3721	// AccountId: Account ID of this creative. This field, if left unset,
3722	// will be auto-generated for both insert and update operations.
3723	// Applicable to all creative types.
3724	AccountId int64 `json:"accountId,omitempty,string"`
3725
3726	// Active: Whether the creative is active. Applicable to all creative
3727	// types.
3728	Active bool `json:"active,omitempty"`
3729
3730	// AdParameters: Ad parameters user for VPAID creative. This is a
3731	// read-only field. Applicable to the following creative types: all
3732	// VPAID.
3733	AdParameters string `json:"adParameters,omitempty"`
3734
3735	// AdTagKeys: Keywords for a Rich Media creative. Keywords let you
3736	// customize the creative settings of a Rich Media ad running on your
3737	// site without having to contact the advertiser. You can use keywords
3738	// to dynamically change the look or functionality of a creative.
3739	// Applicable to the following creative types: all RICH_MEDIA, and all
3740	// VPAID.
3741	AdTagKeys []string `json:"adTagKeys,omitempty"`
3742
3743	// AdditionalSizes: Additional sizes associated with a responsive
3744	// creative. When inserting or updating a creative either the size ID
3745	// field or size width and height fields can be used. Applicable to
3746	// DISPLAY creatives when the primary asset type is HTML_IMAGE.
3747	AdditionalSizes []*Size `json:"additionalSizes,omitempty"`
3748
3749	// AdvertiserId: Advertiser ID of this creative. This is a required
3750	// field. Applicable to all creative types.
3751	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
3752
3753	// AllowScriptAccess: Whether script access is allowed for this
3754	// creative. This is a read-only and deprecated field which will
3755	// automatically be set to true on update. Applicable to the following
3756	// creative types: FLASH_INPAGE.
3757	AllowScriptAccess bool `json:"allowScriptAccess,omitempty"`
3758
3759	// Archived: Whether the creative is archived. Applicable to all
3760	// creative types.
3761	Archived bool `json:"archived,omitempty"`
3762
3763	// ArtworkType: Type of artwork used for the creative. This is a
3764	// read-only field. Applicable to the following creative types: all
3765	// RICH_MEDIA, and all VPAID.
3766	//
3767	// Possible values:
3768	//   "ARTWORK_TYPE_FLASH"
3769	//   "ARTWORK_TYPE_HTML5"
3770	//   "ARTWORK_TYPE_MIXED"
3771	//   "ARTWORK_TYPE_IMAGE"
3772	ArtworkType string `json:"artworkType,omitempty"`
3773
3774	// AuthoringSource: Source application where creative was authored.
3775	// Presently, only DBM authored creatives will have this field set.
3776	// Applicable to all creative types.
3777	//
3778	// Possible values:
3779	//   "CREATIVE_AUTHORING_SOURCE_DCM"
3780	//   "CREATIVE_AUTHORING_SOURCE_DBM"
3781	//   "CREATIVE_AUTHORING_SOURCE_STUDIO"
3782	//   "CREATIVE_AUTHORING_SOURCE_GWD"
3783	AuthoringSource string `json:"authoringSource,omitempty"`
3784
3785	// AuthoringTool: Authoring tool for HTML5 banner creatives. This is a
3786	// read-only field. Applicable to the following creative types:
3787	// HTML5_BANNER.
3788	//
3789	// Possible values:
3790	//   "NINJA"
3791	//   "SWIFFY"
3792	AuthoringTool string `json:"authoringTool,omitempty"`
3793
3794	// AutoAdvanceImages: Whether images are automatically advanced for
3795	// image gallery creatives. Applicable to the following creative types:
3796	// DISPLAY_IMAGE_GALLERY.
3797	AutoAdvanceImages bool `json:"autoAdvanceImages,omitempty"`
3798
3799	// BackgroundColor: The 6-character HTML color code, beginning with #,
3800	// for the background of the window area where the Flash file is
3801	// displayed. Default is white. Applicable to the following creative
3802	// types: FLASH_INPAGE.
3803	BackgroundColor string `json:"backgroundColor,omitempty"`
3804
3805	// BackupImageClickThroughUrl: Click-through URL for backup image.
3806	// Applicable to ENHANCED_BANNER when the primary asset type is not
3807	// HTML_IMAGE.
3808	BackupImageClickThroughUrl *CreativeClickThroughUrl `json:"backupImageClickThroughUrl,omitempty"`
3809
3810	// BackupImageFeatures: List of feature dependencies that will cause a
3811	// backup image to be served if the browser that serves the ad does not
3812	// support them. Feature dependencies are features that a browser must
3813	// be able to support in order to render your HTML5 creative asset
3814	// correctly. This field is initially auto-generated to contain all
3815	// features detected by Campaign Manager for all the assets of this
3816	// creative and can then be modified by the client. To reset this field,
3817	// copy over all the creativeAssets' detected features. Applicable to
3818	// the following creative types: HTML5_BANNER. Applicable to DISPLAY
3819	// when the primary asset type is not HTML_IMAGE.
3820	//
3821	// Possible values:
3822	//   "CSS_FONT_FACE"
3823	//   "CSS_BACKGROUND_SIZE"
3824	//   "CSS_BORDER_IMAGE"
3825	//   "CSS_BORDER_RADIUS"
3826	//   "CSS_BOX_SHADOW"
3827	//   "CSS_FLEX_BOX"
3828	//   "CSS_HSLA"
3829	//   "CSS_MULTIPLE_BGS"
3830	//   "CSS_OPACITY"
3831	//   "CSS_RGBA"
3832	//   "CSS_TEXT_SHADOW"
3833	//   "CSS_ANIMATIONS"
3834	//   "CSS_COLUMNS"
3835	//   "CSS_GENERATED_CONTENT"
3836	//   "CSS_GRADIENTS"
3837	//   "CSS_REFLECTIONS"
3838	//   "CSS_TRANSFORMS"
3839	//   "CSS_TRANSFORMS3D"
3840	//   "CSS_TRANSITIONS"
3841	//   "APPLICATION_CACHE"
3842	//   "CANVAS"
3843	//   "CANVAS_TEXT"
3844	//   "DRAG_AND_DROP"
3845	//   "HASH_CHANGE"
3846	//   "HISTORY"
3847	//   "AUDIO"
3848	//   "VIDEO"
3849	//   "INDEXED_DB"
3850	//   "INPUT_ATTR_AUTOCOMPLETE"
3851	//   "INPUT_ATTR_AUTOFOCUS"
3852	//   "INPUT_ATTR_LIST"
3853	//   "INPUT_ATTR_PLACEHOLDER"
3854	//   "INPUT_ATTR_MAX"
3855	//   "INPUT_ATTR_MIN"
3856	//   "INPUT_ATTR_MULTIPLE"
3857	//   "INPUT_ATTR_PATTERN"
3858	//   "INPUT_ATTR_REQUIRED"
3859	//   "INPUT_ATTR_STEP"
3860	//   "INPUT_TYPE_SEARCH"
3861	//   "INPUT_TYPE_TEL"
3862	//   "INPUT_TYPE_URL"
3863	//   "INPUT_TYPE_EMAIL"
3864	//   "INPUT_TYPE_DATETIME"
3865	//   "INPUT_TYPE_DATE"
3866	//   "INPUT_TYPE_MONTH"
3867	//   "INPUT_TYPE_WEEK"
3868	//   "INPUT_TYPE_TIME"
3869	//   "INPUT_TYPE_DATETIME_LOCAL"
3870	//   "INPUT_TYPE_NUMBER"
3871	//   "INPUT_TYPE_RANGE"
3872	//   "INPUT_TYPE_COLOR"
3873	//   "LOCAL_STORAGE"
3874	//   "POST_MESSAGE"
3875	//   "SESSION_STORAGE"
3876	//   "WEB_SOCKETS"
3877	//   "WEB_SQL_DATABASE"
3878	//   "WEB_WORKERS"
3879	//   "GEO_LOCATION"
3880	//   "INLINE_SVG"
3881	//   "SMIL"
3882	//   "SVG_HREF"
3883	//   "SVG_CLIP_PATHS"
3884	//   "TOUCH"
3885	//   "WEBGL"
3886	//   "SVG_FILTERS"
3887	//   "SVG_FE_IMAGE"
3888	BackupImageFeatures []string `json:"backupImageFeatures,omitempty"`
3889
3890	// BackupImageReportingLabel: Reporting label used for HTML5 banner
3891	// backup image. Applicable to the following creative types: DISPLAY
3892	// when the primary asset type is not HTML_IMAGE.
3893	BackupImageReportingLabel string `json:"backupImageReportingLabel,omitempty"`
3894
3895	// BackupImageTargetWindow: Target window for backup image. Applicable
3896	// to the following creative types: FLASH_INPAGE and HTML5_BANNER.
3897	// Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
3898	BackupImageTargetWindow *TargetWindow `json:"backupImageTargetWindow,omitempty"`
3899
3900	// ClickTags: Click tags of the creative. For DISPLAY, FLASH_INPAGE, and
3901	// HTML5_BANNER creatives, this is a subset of detected click tags for
3902	// the assets associated with this creative. After creating a flash
3903	// asset, detected click tags will be returned in the
3904	// creativeAssetMetadata. When inserting the creative, populate the
3905	// creative clickTags field using the creativeAssetMetadata.clickTags
3906	// field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly
3907	// one entry in this list for each image creative asset. A click tag is
3908	// matched with a corresponding creative asset by matching the
3909	// clickTag.name field with the creativeAsset.assetIdentifier.name
3910	// field. Applicable to the following creative types:
3911	// DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to
3912	// DISPLAY when the primary asset type is not HTML_IMAGE.
3913	ClickTags []*ClickTag `json:"clickTags,omitempty"`
3914
3915	// CommercialId: Industry standard ID assigned to creative for reach and
3916	// frequency. Applicable to INSTREAM_VIDEO_REDIRECT creatives.
3917	CommercialId string `json:"commercialId,omitempty"`
3918
3919	// CompanionCreatives: List of companion creatives assigned to an
3920	// in-Stream video creative. Acceptable values include IDs of existing
3921	// flash and image creatives. Applicable to the following creative
3922	// types: all VPAID, all INSTREAM_AUDIO and all INSTREAM_VIDEO with
3923	// dynamicAssetSelection set to false.
3924	CompanionCreatives googleapi.Int64s `json:"companionCreatives,omitempty"`
3925
3926	// Compatibility: Compatibilities associated with this creative. This is
3927	// a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to
3928	// rendering either on desktop or on mobile devices or in mobile apps
3929	// for regular or interstitial ads, respectively. APP and
3930	// APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing
3931	// creatives may have these compatibilities since new creatives will
3932	// either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead.
3933	// IN_STREAM_VIDEO refers to rendering in in-stream video ads developed
3934	// with the VAST standard. IN_STREAM_AUDIO refers to rendering in
3935	// in-stream audio ads developed with the VAST standard. Applicable to
3936	// all creative types. Acceptable values are: - "APP" -
3937	// "APP_INTERSTITIAL" - "IN_STREAM_VIDEO" - "IN_STREAM_AUDIO" -
3938	// "DISPLAY" - "DISPLAY_INTERSTITIAL"
3939	//
3940	// Possible values:
3941	//   "DISPLAY"
3942	//   "DISPLAY_INTERSTITIAL"
3943	//   "APP"
3944	//   "APP_INTERSTITIAL"
3945	//   "IN_STREAM_VIDEO"
3946	//   "IN_STREAM_AUDIO"
3947	Compatibility []string `json:"compatibility,omitempty"`
3948
3949	// ConvertFlashToHtml5: Whether Flash assets associated with the
3950	// creative need to be automatically converted to HTML5. This flag is
3951	// enabled by default and users can choose to disable it if they don't
3952	// want the system to generate and use HTML5 asset for this creative.
3953	// Applicable to the following creative type: FLASH_INPAGE. Applicable
3954	// to DISPLAY when the primary asset type is not HTML_IMAGE.
3955	ConvertFlashToHtml5 bool `json:"convertFlashToHtml5,omitempty"`
3956
3957	// CounterCustomEvents: List of counter events configured for the
3958	// creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only
3959	// and auto-generated from clickTags. Applicable to the following
3960	// creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.
3961	CounterCustomEvents []*CreativeCustomEvent `json:"counterCustomEvents,omitempty"`
3962
3963	// CreativeAssetSelection: Required if dynamicAssetSelection is true.
3964	CreativeAssetSelection *CreativeAssetSelection `json:"creativeAssetSelection,omitempty"`
3965
3966	// CreativeAssets: Assets associated with a creative. Applicable to all
3967	// but the following creative types: INTERNAL_REDIRECT,
3968	// INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT
3969	CreativeAssets []*CreativeAsset `json:"creativeAssets,omitempty"`
3970
3971	// CreativeFieldAssignments: Creative field assignments for this
3972	// creative. Applicable to all creative types.
3973	CreativeFieldAssignments []*CreativeFieldAssignment `json:"creativeFieldAssignments,omitempty"`
3974
3975	// CustomKeyValues: Custom key-values for a Rich Media creative.
3976	// Key-values let you customize the creative settings of a Rich Media ad
3977	// running on your site without having to contact the advertiser. You
3978	// can use key-values to dynamically change the look or functionality of
3979	// a creative. Applicable to the following creative types: all
3980	// RICH_MEDIA, and all VPAID.
3981	CustomKeyValues []string `json:"customKeyValues,omitempty"`
3982
3983	// DynamicAssetSelection: Set this to true to enable the use of rules to
3984	// target individual assets in this creative. When set to true
3985	// creativeAssetSelection must be set. This also controls asset-level
3986	// companions. When this is true, companion creatives should be assigned
3987	// to creative assets. Learn more. Applicable to INSTREAM_VIDEO
3988	// creatives.
3989	DynamicAssetSelection bool `json:"dynamicAssetSelection,omitempty"`
3990
3991	// ExitCustomEvents: List of exit events configured for the creative.
3992	// For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only
3993	// and auto-generated from clickTags, For DISPLAY, an event is also
3994	// created from the backupImageReportingLabel. Applicable to the
3995	// following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and
3996	// all VPAID. Applicable to DISPLAY when the primary asset type is not
3997	// HTML_IMAGE.
3998	ExitCustomEvents []*CreativeCustomEvent `json:"exitCustomEvents,omitempty"`
3999
4000	// FsCommand: OpenWindow FSCommand of this creative. This lets the SWF
4001	// file communicate with either Flash Player or the program hosting
4002	// Flash Player, such as a web browser. This is only triggered if
4003	// allowScriptAccess field is true. Applicable to the following creative
4004	// types: FLASH_INPAGE.
4005	FsCommand *FsCommand `json:"fsCommand,omitempty"`
4006
4007	// HtmlCode: HTML code for the creative. This is a required field when
4008	// applicable. This field is ignored if htmlCodeLocked is true.
4009	// Applicable to the following creative types: all CUSTOM, FLASH_INPAGE,
4010	// and HTML5_BANNER, and all RICH_MEDIA.
4011	HtmlCode string `json:"htmlCode,omitempty"`
4012
4013	// HtmlCodeLocked: Whether HTML code is generated by Campaign Manager or
4014	// manually entered. Set to true to ignore changes to htmlCode.
4015	// Applicable to the following creative types: FLASH_INPAGE and
4016	// HTML5_BANNER.
4017	HtmlCodeLocked bool `json:"htmlCodeLocked,omitempty"`
4018
4019	// Id: ID of this creative. This is a read-only, auto-generated field.
4020	// Applicable to all creative types.
4021	Id int64 `json:"id,omitempty,string"`
4022
4023	// IdDimensionValue: Dimension value for the ID of this creative. This
4024	// is a read-only field. Applicable to all creative types.
4025	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
4026
4027	// Kind: Identifies what kind of resource this is. Value: the fixed
4028	// string "dfareporting#creative".
4029	Kind string `json:"kind,omitempty"`
4030
4031	// LastModifiedInfo: Creative last modification information. This is a
4032	// read-only field. Applicable to all creative types.
4033	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
4034
4035	// LatestTraffickedCreativeId: Latest Studio trafficked creative ID
4036	// associated with rich media and VPAID creatives. This is a read-only
4037	// field. Applicable to the following creative types: all RICH_MEDIA,
4038	// and all VPAID.
4039	LatestTraffickedCreativeId int64 `json:"latestTraffickedCreativeId,omitempty,string"`
4040
4041	// MediaDescription: Description of the audio or video ad. Applicable to
4042	// the following creative types: all INSTREAM_VIDEO, INSTREAM_AUDIO, and
4043	// all VPAID.
4044	MediaDescription string `json:"mediaDescription,omitempty"`
4045
4046	// MediaDuration: Creative audio or video duration in seconds. This is a
4047	// read-only field. Applicable to the following creative types:
4048	// INSTREAM_VIDEO, INSTREAM_AUDIO, all RICH_MEDIA, and all VPAID.
4049	MediaDuration float64 `json:"mediaDuration,omitempty"`
4050
4051	// Name: Name of the creative. This is a required field and must be less
4052	// than 256 characters long. Applicable to all creative types.
4053	Name string `json:"name,omitempty"`
4054
4055	// ObaIcon: Online behavioral advertising icon to be added to the
4056	// creative. Applicable to the following creative types: all
4057	// INSTREAM_VIDEO.
4058	ObaIcon *ObaIcon `json:"obaIcon,omitempty"`
4059
4060	// OverrideCss: Override CSS value for rich media creatives. Applicable
4061	// to the following creative types: all RICH_MEDIA.
4062	OverrideCss string `json:"overrideCss,omitempty"`
4063
4064	// ProgressOffset: Amount of time to play the video before counting a
4065	// view. Applicable to the following creative types: all INSTREAM_VIDEO.
4066	ProgressOffset *VideoOffset `json:"progressOffset,omitempty"`
4067
4068	// RedirectUrl: URL of hosted image or hosted video or another ad tag.
4069	// For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video
4070	// redirect URL. The standard for a VAST (Video Ad Serving Template) ad
4071	// response allows for a redirect link to another VAST 2.0 or 3.0 call.
4072	// This is a required field when applicable. Applicable to the following
4073	// creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT,
4074	// INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT
4075	RedirectUrl string `json:"redirectUrl,omitempty"`
4076
4077	// RenderingId: ID of current rendering version. This is a read-only
4078	// field. Applicable to all creative types.
4079	RenderingId int64 `json:"renderingId,omitempty,string"`
4080
4081	// RenderingIdDimensionValue: Dimension value for the rendering ID of
4082	// this creative. This is a read-only field. Applicable to all creative
4083	// types.
4084	RenderingIdDimensionValue *DimensionValue `json:"renderingIdDimensionValue,omitempty"`
4085
4086	// RequiredFlashPluginVersion: The minimum required Flash plugin version
4087	// for this creative. For example, 11.2.202.235. This is a read-only
4088	// field. Applicable to the following creative types: all RICH_MEDIA,
4089	// and all VPAID.
4090	RequiredFlashPluginVersion string `json:"requiredFlashPluginVersion,omitempty"`
4091
4092	// RequiredFlashVersion: The internal Flash version for this creative as
4093	// calculated by Studio. This is a read-only field. Applicable to the
4094	// following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID.
4095	// Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
4096	RequiredFlashVersion int64 `json:"requiredFlashVersion,omitempty"`
4097
4098	// Size: Size associated with this creative. When inserting or updating
4099	// a creative either the size ID field or size width and height fields
4100	// can be used. This is a required field when applicable; however for
4101	// IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a
4102	// primary asset of type HTML_IMAGE, if left blank, this field will be
4103	// automatically set using the actual size of the associated image
4104	// assets. Applicable to the following creative types: DISPLAY,
4105	// DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all
4106	// RICH_MEDIA.
4107	Size *Size `json:"size,omitempty"`
4108
4109	// SkipOffset: Amount of time to play the video before the skip button
4110	// appears. Applicable to the following creative types: all
4111	// INSTREAM_VIDEO.
4112	SkipOffset *VideoOffset `json:"skipOffset,omitempty"`
4113
4114	// Skippable: Whether the user can choose to skip the creative.
4115	// Applicable to the following creative types: all INSTREAM_VIDEO and
4116	// all VPAID.
4117	Skippable bool `json:"skippable,omitempty"`
4118
4119	// SslCompliant: Whether the creative is SSL-compliant. This is a
4120	// read-only field. Applicable to all creative types.
4121	SslCompliant bool `json:"sslCompliant,omitempty"`
4122
4123	// SslOverride: Whether creative should be treated as SSL compliant even
4124	// if the system scan shows it's not. Applicable to all creative types.
4125	SslOverride bool `json:"sslOverride,omitempty"`
4126
4127	// StudioAdvertiserId: Studio advertiser ID associated with rich media
4128	// and VPAID creatives. This is a read-only field. Applicable to the
4129	// following creative types: all RICH_MEDIA, and all VPAID.
4130	StudioAdvertiserId int64 `json:"studioAdvertiserId,omitempty,string"`
4131
4132	// StudioCreativeId: Studio creative ID associated with rich media and
4133	// VPAID creatives. This is a read-only field. Applicable to the
4134	// following creative types: all RICH_MEDIA, and all VPAID.
4135	StudioCreativeId int64 `json:"studioCreativeId,omitempty,string"`
4136
4137	// StudioTraffickedCreativeId: Studio trafficked creative ID associated
4138	// with rich media and VPAID creatives. This is a read-only field.
4139	// Applicable to the following creative types: all RICH_MEDIA, and all
4140	// VPAID.
4141	StudioTraffickedCreativeId int64 `json:"studioTraffickedCreativeId,omitempty,string"`
4142
4143	// SubaccountId: Subaccount ID of this creative. This field, if left
4144	// unset, will be auto-generated for both insert and update operations.
4145	// Applicable to all creative types.
4146	SubaccountId int64 `json:"subaccountId,omitempty,string"`
4147
4148	// ThirdPartyBackupImageImpressionsUrl: Third-party URL used to record
4149	// backup image impressions. Applicable to the following creative types:
4150	// all RICH_MEDIA.
4151	ThirdPartyBackupImageImpressionsUrl string `json:"thirdPartyBackupImageImpressionsUrl,omitempty"`
4152
4153	// ThirdPartyRichMediaImpressionsUrl: Third-party URL used to record
4154	// rich media impressions. Applicable to the following creative types:
4155	// all RICH_MEDIA.
4156	ThirdPartyRichMediaImpressionsUrl string `json:"thirdPartyRichMediaImpressionsUrl,omitempty"`
4157
4158	// ThirdPartyUrls: Third-party URLs for tracking in-stream creative
4159	// events. Applicable to the following creative types: all
4160	// INSTREAM_VIDEO, all INSTREAM_AUDIO, and all VPAID.
4161	ThirdPartyUrls []*ThirdPartyTrackingUrl `json:"thirdPartyUrls,omitempty"`
4162
4163	// TimerCustomEvents: List of timer events configured for the creative.
4164	// For DISPLAY_IMAGE_GALLERY creatives, these are read-only and
4165	// auto-generated from clickTags. Applicable to the following creative
4166	// types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.
4167	// Applicable to DISPLAY when the primary asset is not HTML_IMAGE.
4168	TimerCustomEvents []*CreativeCustomEvent `json:"timerCustomEvents,omitempty"`
4169
4170	// TotalFileSize: Combined size of all creative assets. This is a
4171	// read-only field. Applicable to the following creative types: all
4172	// RICH_MEDIA, and all VPAID.
4173	TotalFileSize int64 `json:"totalFileSize,omitempty,string"`
4174
4175	// Type: Type of this creative. This is a required field. Applicable to
4176	// all creative types. *Note:* FLASH_INPAGE, HTML5_BANNER, and IMAGE are
4177	// only used for existing creatives. New creatives should use DISPLAY as
4178	// a replacement for these types.
4179	//
4180	// Possible values:
4181	//   "IMAGE"
4182	//   "DISPLAY_REDIRECT"
4183	//   "CUSTOM_DISPLAY"
4184	//   "INTERNAL_REDIRECT"
4185	//   "CUSTOM_DISPLAY_INTERSTITIAL"
4186	//   "INTERSTITIAL_INTERNAL_REDIRECT"
4187	//   "TRACKING_TEXT"
4188	//   "RICH_MEDIA_DISPLAY_BANNER"
4189	//   "RICH_MEDIA_INPAGE_FLOATING"
4190	//   "RICH_MEDIA_IM_EXPAND"
4191	//   "RICH_MEDIA_DISPLAY_EXPANDING"
4192	//   "RICH_MEDIA_DISPLAY_INTERSTITIAL"
4193	//   "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL"
4194	//   "RICH_MEDIA_MOBILE_IN_APP"
4195	//   "FLASH_INPAGE"
4196	//   "INSTREAM_VIDEO"
4197	//   "VPAID_LINEAR_VIDEO"
4198	//   "VPAID_NON_LINEAR_VIDEO"
4199	//   "INSTREAM_VIDEO_REDIRECT"
4200	//   "RICH_MEDIA_PEEL_DOWN"
4201	//   "HTML5_BANNER"
4202	//   "DISPLAY"
4203	//   "DISPLAY_IMAGE_GALLERY"
4204	//   "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
4205	//   "INSTREAM_AUDIO"
4206	Type string `json:"type,omitempty"`
4207
4208	// UniversalAdId: A Universal Ad ID as per the VAST 4.0 spec. Applicable
4209	// to the following creative types: INSTREAM_AUDIO and INSTREAM_VIDEO
4210	// and VPAID.
4211	UniversalAdId *UniversalAdId `json:"universalAdId,omitempty"`
4212
4213	// Version: The version number helps you keep track of multiple versions
4214	// of your creative in your reports. The version number will always be
4215	// auto-generated during insert operations to start at 1. For tracking
4216	// creatives the version cannot be incremented and will always remain at
4217	// 1. For all other creative types the version can be incremented only
4218	// by 1 during update operations. In addition, the version will be
4219	// automatically incremented by 1 when undergoing Rich Media creative
4220	// merging. Applicable to all creative types.
4221	Version int64 `json:"version,omitempty"`
4222
4223	// ServerResponse contains the HTTP response code and headers from the
4224	// server.
4225	googleapi.ServerResponse `json:"-"`
4226
4227	// ForceSendFields is a list of field names (e.g. "AccountId") to
4228	// unconditionally include in API requests. By default, fields with
4229	// empty or default values are omitted from API requests. However, any
4230	// non-pointer, non-interface field appearing in ForceSendFields will be
4231	// sent to the server regardless of whether the field is empty or not.
4232	// This may be used to include empty fields in Patch requests.
4233	ForceSendFields []string `json:"-"`
4234
4235	// NullFields is a list of field names (e.g. "AccountId") to include in
4236	// API requests with the JSON null value. By default, fields with empty
4237	// values are omitted from API requests. However, any field with an
4238	// empty value appearing in NullFields will be sent to the server as
4239	// null. It is an error if a field in this list has a non-empty value.
4240	// This may be used to include null fields in Patch requests.
4241	NullFields []string `json:"-"`
4242}
4243
4244func (s *Creative) MarshalJSON() ([]byte, error) {
4245	type NoMethod Creative
4246	raw := NoMethod(*s)
4247	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4248}
4249
4250func (s *Creative) UnmarshalJSON(data []byte) error {
4251	type NoMethod Creative
4252	var s1 struct {
4253		MediaDuration gensupport.JSONFloat64 `json:"mediaDuration"`
4254		*NoMethod
4255	}
4256	s1.NoMethod = (*NoMethod)(s)
4257	if err := json.Unmarshal(data, &s1); err != nil {
4258		return err
4259	}
4260	s.MediaDuration = float64(s1.MediaDuration)
4261	return nil
4262}
4263
4264// CreativeAsset: Creative Asset.
4265type CreativeAsset struct {
4266	// ActionScript3: Whether ActionScript3 is enabled for the flash asset.
4267	// This is a read-only field. Applicable to the following creative type:
4268	// FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is
4269	// not HTML_IMAGE.
4270	ActionScript3 bool `json:"actionScript3,omitempty"`
4271
4272	// Active: Whether the video or audio asset is active. This is a
4273	// read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the
4274	// following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO and all
4275	// VPAID.
4276	Active bool `json:"active,omitempty"`
4277
4278	// AdditionalSizes: Additional sizes associated with this creative
4279	// asset. HTML5 asset generated by compatible software such as GWD will
4280	// be able to support more sizes this creative asset can render.
4281	AdditionalSizes []*Size `json:"additionalSizes,omitempty"`
4282
4283	// Alignment: Possible alignments for an asset. This is a read-only
4284	// field. Applicable to the following creative types:
4285	// RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL .
4286	//
4287	// Possible values:
4288	//   "ALIGNMENT_TOP"
4289	//   "ALIGNMENT_RIGHT"
4290	//   "ALIGNMENT_BOTTOM"
4291	//   "ALIGNMENT_LEFT"
4292	Alignment string `json:"alignment,omitempty"`
4293
4294	// ArtworkType: Artwork type of rich media creative. This is a read-only
4295	// field. Applicable to the following creative types: all RICH_MEDIA.
4296	//
4297	// Possible values:
4298	//   "ARTWORK_TYPE_FLASH"
4299	//   "ARTWORK_TYPE_HTML5"
4300	//   "ARTWORK_TYPE_MIXED"
4301	//   "ARTWORK_TYPE_IMAGE"
4302	ArtworkType string `json:"artworkType,omitempty"`
4303
4304	// AssetIdentifier: Identifier of this asset. This is the same
4305	// identifier returned during creative asset insert operation. This is a
4306	// required field. Applicable to all but the following creative types:
4307	// all REDIRECT and TRACKING_TEXT.
4308	AssetIdentifier *CreativeAssetId `json:"assetIdentifier,omitempty"`
4309
4310	// AudioBitRate: Audio stream bit rate in kbps. This is a read-only
4311	// field. Applicable to the following creative types: INSTREAM_AUDIO,
4312	// INSTREAM_VIDEO and all VPAID.
4313	AudioBitRate int64 `json:"audioBitRate,omitempty"`
4314
4315	// AudioSampleRate: Audio sample bit rate in hertz. This is a read-only
4316	// field. Applicable to the following creative types: INSTREAM_AUDIO,
4317	// INSTREAM_VIDEO and all VPAID.
4318	AudioSampleRate int64 `json:"audioSampleRate,omitempty"`
4319
4320	// BackupImageExit: Exit event configured for the backup image.
4321	// Applicable to the following creative types: all RICH_MEDIA.
4322	BackupImageExit *CreativeCustomEvent `json:"backupImageExit,omitempty"`
4323
4324	// BitRate: Detected bit-rate for audio or video asset. This is a
4325	// read-only field. Applicable to the following creative types:
4326	// INSTREAM_AUDIO, INSTREAM_VIDEO and all VPAID.
4327	BitRate int64 `json:"bitRate,omitempty"`
4328
4329	// ChildAssetType: Rich media child asset type. This is a read-only
4330	// field. Applicable to the following creative types: all VPAID.
4331	//
4332	// Possible values:
4333	//   "CHILD_ASSET_TYPE_FLASH"
4334	//   "CHILD_ASSET_TYPE_VIDEO"
4335	//   "CHILD_ASSET_TYPE_IMAGE"
4336	//   "CHILD_ASSET_TYPE_DATA"
4337	ChildAssetType string `json:"childAssetType,omitempty"`
4338
4339	// CollapsedSize: Size of an asset when collapsed. This is a read-only
4340	// field. Applicable to the following creative types: all RICH_MEDIA and
4341	// all VPAID. Additionally, applicable to assets whose displayType is
4342	// ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
4343	CollapsedSize *Size `json:"collapsedSize,omitempty"`
4344
4345	// CompanionCreativeIds: List of companion creatives assigned to an
4346	// in-stream video creative asset. Acceptable values include IDs of
4347	// existing flash and image creatives. Applicable to INSTREAM_VIDEO
4348	// creative type with dynamicAssetSelection set to true.
4349	CompanionCreativeIds googleapi.Int64s `json:"companionCreativeIds,omitempty"`
4350
4351	// CustomStartTimeValue: Custom start time in seconds for making the
4352	// asset visible. Applicable to the following creative types: all
4353	// RICH_MEDIA. Value must be greater than or equal to 0.
4354	CustomStartTimeValue int64 `json:"customStartTimeValue,omitempty"`
4355
4356	// DetectedFeatures: List of feature dependencies for the creative asset
4357	// that are detected by Campaign Manager. Feature dependencies are
4358	// features that a browser must be able to support in order to render
4359	// your HTML5 creative correctly. This is a read-only, auto-generated
4360	// field. Applicable to the following creative types: HTML5_BANNER.
4361	// Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
4362	//
4363	// Possible values:
4364	//   "CSS_FONT_FACE"
4365	//   "CSS_BACKGROUND_SIZE"
4366	//   "CSS_BORDER_IMAGE"
4367	//   "CSS_BORDER_RADIUS"
4368	//   "CSS_BOX_SHADOW"
4369	//   "CSS_FLEX_BOX"
4370	//   "CSS_HSLA"
4371	//   "CSS_MULTIPLE_BGS"
4372	//   "CSS_OPACITY"
4373	//   "CSS_RGBA"
4374	//   "CSS_TEXT_SHADOW"
4375	//   "CSS_ANIMATIONS"
4376	//   "CSS_COLUMNS"
4377	//   "CSS_GENERATED_CONTENT"
4378	//   "CSS_GRADIENTS"
4379	//   "CSS_REFLECTIONS"
4380	//   "CSS_TRANSFORMS"
4381	//   "CSS_TRANSFORMS3D"
4382	//   "CSS_TRANSITIONS"
4383	//   "APPLICATION_CACHE"
4384	//   "CANVAS"
4385	//   "CANVAS_TEXT"
4386	//   "DRAG_AND_DROP"
4387	//   "HASH_CHANGE"
4388	//   "HISTORY"
4389	//   "AUDIO"
4390	//   "VIDEO"
4391	//   "INDEXED_DB"
4392	//   "INPUT_ATTR_AUTOCOMPLETE"
4393	//   "INPUT_ATTR_AUTOFOCUS"
4394	//   "INPUT_ATTR_LIST"
4395	//   "INPUT_ATTR_PLACEHOLDER"
4396	//   "INPUT_ATTR_MAX"
4397	//   "INPUT_ATTR_MIN"
4398	//   "INPUT_ATTR_MULTIPLE"
4399	//   "INPUT_ATTR_PATTERN"
4400	//   "INPUT_ATTR_REQUIRED"
4401	//   "INPUT_ATTR_STEP"
4402	//   "INPUT_TYPE_SEARCH"
4403	//   "INPUT_TYPE_TEL"
4404	//   "INPUT_TYPE_URL"
4405	//   "INPUT_TYPE_EMAIL"
4406	//   "INPUT_TYPE_DATETIME"
4407	//   "INPUT_TYPE_DATE"
4408	//   "INPUT_TYPE_MONTH"
4409	//   "INPUT_TYPE_WEEK"
4410	//   "INPUT_TYPE_TIME"
4411	//   "INPUT_TYPE_DATETIME_LOCAL"
4412	//   "INPUT_TYPE_NUMBER"
4413	//   "INPUT_TYPE_RANGE"
4414	//   "INPUT_TYPE_COLOR"
4415	//   "LOCAL_STORAGE"
4416	//   "POST_MESSAGE"
4417	//   "SESSION_STORAGE"
4418	//   "WEB_SOCKETS"
4419	//   "WEB_SQL_DATABASE"
4420	//   "WEB_WORKERS"
4421	//   "GEO_LOCATION"
4422	//   "INLINE_SVG"
4423	//   "SMIL"
4424	//   "SVG_HREF"
4425	//   "SVG_CLIP_PATHS"
4426	//   "TOUCH"
4427	//   "WEBGL"
4428	//   "SVG_FILTERS"
4429	//   "SVG_FE_IMAGE"
4430	DetectedFeatures []string `json:"detectedFeatures,omitempty"`
4431
4432	// DisplayType: Type of rich media asset. This is a read-only field.
4433	// Applicable to the following creative types: all RICH_MEDIA.
4434	//
4435	// Possible values:
4436	//   "ASSET_DISPLAY_TYPE_INPAGE"
4437	//   "ASSET_DISPLAY_TYPE_FLOATING"
4438	//   "ASSET_DISPLAY_TYPE_OVERLAY"
4439	//   "ASSET_DISPLAY_TYPE_EXPANDING"
4440	//   "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH"
4441	//   "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING"
4442	//   "ASSET_DISPLAY_TYPE_PEEL_DOWN"
4443	//   "ASSET_DISPLAY_TYPE_VPAID_LINEAR"
4444	//   "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR"
4445	//   "ASSET_DISPLAY_TYPE_BACKDROP"
4446	DisplayType string `json:"displayType,omitempty"`
4447
4448	// Duration: Duration in seconds for which an asset will be displayed.
4449	// Applicable to the following creative types: INSTREAM_AUDIO,
4450	// INSTREAM_VIDEO and VPAID_LINEAR_VIDEO. Value must be greater than or
4451	// equal to 1.
4452	Duration int64 `json:"duration,omitempty"`
4453
4454	// DurationType: Duration type for which an asset will be displayed.
4455	// Applicable to the following creative types: all RICH_MEDIA.
4456	//
4457	// Possible values:
4458	//   "ASSET_DURATION_TYPE_AUTO"
4459	//   "ASSET_DURATION_TYPE_NONE"
4460	//   "ASSET_DURATION_TYPE_CUSTOM"
4461	DurationType string `json:"durationType,omitempty"`
4462
4463	// ExpandedDimension: Detected expanded dimension for video asset. This
4464	// is a read-only field. Applicable to the following creative types:
4465	// INSTREAM_VIDEO and all VPAID.
4466	ExpandedDimension *Size `json:"expandedDimension,omitempty"`
4467
4468	// FileSize: File size associated with this creative asset. This is a
4469	// read-only field. Applicable to all but the following creative types:
4470	// all REDIRECT and TRACKING_TEXT.
4471	FileSize int64 `json:"fileSize,omitempty,string"`
4472
4473	// FlashVersion: Flash version of the asset. This is a read-only field.
4474	// Applicable to the following creative types: FLASH_INPAGE, all
4475	// RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary
4476	// asset type is not HTML_IMAGE.
4477	FlashVersion int64 `json:"flashVersion,omitempty"`
4478
4479	// FrameRate: Video frame rate for video asset in frames per second.
4480	// This is a read-only field. Applicable to the following creative
4481	// types: INSTREAM_VIDEO and all VPAID.
4482	FrameRate float64 `json:"frameRate,omitempty"`
4483
4484	// HideFlashObjects: Whether to hide Flash objects flag for an asset.
4485	// Applicable to the following creative types: all RICH_MEDIA.
4486	HideFlashObjects bool `json:"hideFlashObjects,omitempty"`
4487
4488	// HideSelectionBoxes: Whether to hide selection boxes flag for an
4489	// asset. Applicable to the following creative types: all RICH_MEDIA.
4490	HideSelectionBoxes bool `json:"hideSelectionBoxes,omitempty"`
4491
4492	// HorizontallyLocked: Whether the asset is horizontally locked. This is
4493	// a read-only field. Applicable to the following creative types: all
4494	// RICH_MEDIA.
4495	HorizontallyLocked bool `json:"horizontallyLocked,omitempty"`
4496
4497	// Id: Numeric ID of this creative asset. This is a required field and
4498	// should not be modified. Applicable to all but the following creative
4499	// types: all REDIRECT and TRACKING_TEXT.
4500	Id int64 `json:"id,omitempty,string"`
4501
4502	// IdDimensionValue: Dimension value for the ID of the asset. This is a
4503	// read-only, auto-generated field.
4504	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
4505
4506	// MediaDuration: Detected duration for audio or video asset. This is a
4507	// read-only field. Applicable to the following creative types:
4508	// INSTREAM_AUDIO, INSTREAM_VIDEO and all VPAID.
4509	MediaDuration float64 `json:"mediaDuration,omitempty"`
4510
4511	// MimeType: Detected MIME type for audio or video asset. This is a
4512	// read-only field. Applicable to the following creative types:
4513	// INSTREAM_AUDIO, INSTREAM_VIDEO and all VPAID.
4514	MimeType string `json:"mimeType,omitempty"`
4515
4516	// Offset: Offset position for an asset in collapsed mode. This is a
4517	// read-only field. Applicable to the following creative types: all
4518	// RICH_MEDIA and all VPAID. Additionally, only applicable to assets
4519	// whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or
4520	// ASSET_DISPLAY_TYPE_PEEL_DOWN.
4521	Offset *OffsetPosition `json:"offset,omitempty"`
4522
4523	// Orientation: Orientation of video asset. This is a read-only,
4524	// auto-generated field.
4525	//
4526	// Possible values:
4527	//   "LANDSCAPE"
4528	//   "PORTRAIT"
4529	//   "SQUARE"
4530	Orientation string `json:"orientation,omitempty"`
4531
4532	// OriginalBackup: Whether the backup asset is original or changed by
4533	// the user in Campaign Manager. Applicable to the following creative
4534	// types: all RICH_MEDIA.
4535	OriginalBackup bool `json:"originalBackup,omitempty"`
4536
4537	// PoliteLoad: Whether this asset is used as a polite load asset.
4538	PoliteLoad bool `json:"politeLoad,omitempty"`
4539
4540	// Position: Offset position for an asset. Applicable to the following
4541	// creative types: all RICH_MEDIA.
4542	Position *OffsetPosition `json:"position,omitempty"`
4543
4544	// PositionLeftUnit: Offset left unit for an asset. This is a read-only
4545	// field. Applicable to the following creative types: all RICH_MEDIA.
4546	//
4547	// Possible values:
4548	//   "OFFSET_UNIT_PIXEL"
4549	//   "OFFSET_UNIT_PERCENT"
4550	//   "OFFSET_UNIT_PIXEL_FROM_CENTER"
4551	PositionLeftUnit string `json:"positionLeftUnit,omitempty"`
4552
4553	// PositionTopUnit: Offset top unit for an asset. This is a read-only
4554	// field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY.
4555	// Applicable to the following creative types: all RICH_MEDIA.
4556	//
4557	// Possible values:
4558	//   "OFFSET_UNIT_PIXEL"
4559	//   "OFFSET_UNIT_PERCENT"
4560	//   "OFFSET_UNIT_PIXEL_FROM_CENTER"
4561	PositionTopUnit string `json:"positionTopUnit,omitempty"`
4562
4563	// ProgressiveServingUrl: Progressive URL for video asset. This is a
4564	// read-only field. Applicable to the following creative types:
4565	// INSTREAM_VIDEO and all VPAID.
4566	ProgressiveServingUrl string `json:"progressiveServingUrl,omitempty"`
4567
4568	// Pushdown: Whether the asset pushes down other content. Applicable to
4569	// the following creative types: all RICH_MEDIA. Additionally, only
4570	// applicable when the asset offsets are 0, the collapsedSize.width
4571	// matches size.width, and the collapsedSize.height is less than
4572	// size.height.
4573	Pushdown bool `json:"pushdown,omitempty"`
4574
4575	// PushdownDuration: Pushdown duration in seconds for an asset.
4576	// Applicable to the following creative types: all
4577	// RICH_MEDIA.Additionally, only applicable when the asset pushdown
4578	// field is true, the offsets are 0, the collapsedSize.width matches
4579	// size.width, and the collapsedSize.height is less than size.height.
4580	// Acceptable values are 0 to 9.99, inclusive.
4581	PushdownDuration float64 `json:"pushdownDuration,omitempty"`
4582
4583	// Role: Role of the asset in relation to creative. Applicable to all
4584	// but the following creative types: all REDIRECT and TRACKING_TEXT.
4585	// This is a required field. PRIMARY applies to DISPLAY, FLASH_INPAGE,
4586	// HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may
4587	// contain multiple primary assets), and all VPAID creatives.
4588	// BACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA,
4589	// and all VPAID creatives. Applicable to DISPLAY when the primary asset
4590	// type is not HTML_IMAGE. ADDITIONAL_IMAGE and ADDITIONAL_FLASH apply
4591	// to FLASH_INPAGE creatives. OTHER refers to assets from sources other
4592	// than Campaign Manager, such as Studio uploaded assets, applicable to
4593	// all RICH_MEDIA and all VPAID creatives. PARENT_VIDEO refers to videos
4594	// uploaded by the user in Campaign Manager and is applicable to
4595	// INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives. TRANSCODED_VIDEO
4596	// refers to videos transcoded by Campaign Manager from PARENT_VIDEO
4597	// assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO
4598	// creatives. ALTERNATE_VIDEO refers to the Campaign Manager
4599	// representation of child asset videos from Studio, and is applicable
4600	// to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed
4601	// within Campaign Manager. For VPAID_LINEAR_VIDEO creatives,
4602	// PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are
4603	// marked active serve as backup in case the VPAID creative cannot be
4604	// served. Only PARENT_VIDEO assets can be added or removed for an
4605	// INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative. PARENT_AUDIO refers to
4606	// audios uploaded by the user in Campaign Manager and is applicable to
4607	// INSTREAM_AUDIO creatives. TRANSCODED_AUDIO refers to audios
4608	// transcoded by Campaign Manager from PARENT_AUDIO assets and is
4609	// applicable to INSTREAM_AUDIO creatives.
4610	//
4611	// Possible values:
4612	//   "PRIMARY"
4613	//   "BACKUP_IMAGE"
4614	//   "ADDITIONAL_IMAGE"
4615	//   "ADDITIONAL_FLASH"
4616	//   "PARENT_VIDEO"
4617	//   "TRANSCODED_VIDEO"
4618	//   "OTHER"
4619	//   "ALTERNATE_VIDEO"
4620	//   "PARENT_AUDIO"
4621	//   "TRANSCODED_AUDIO"
4622	Role string `json:"role,omitempty"`
4623
4624	// Size: Size associated with this creative asset. This is a required
4625	// field when applicable; however for IMAGE and FLASH_INPAGE, creatives
4626	// if left blank, this field will be automatically set using the actual
4627	// size of the associated image asset. Applicable to the following
4628	// creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER,
4629	// IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary
4630	// asset type is not HTML_IMAGE.
4631	Size *Size `json:"size,omitempty"`
4632
4633	// SslCompliant: Whether the asset is SSL-compliant. This is a read-only
4634	// field. Applicable to all but the following creative types: all
4635	// REDIRECT and TRACKING_TEXT.
4636	SslCompliant bool `json:"sslCompliant,omitempty"`
4637
4638	// StartTimeType: Initial wait time type before making the asset
4639	// visible. Applicable to the following creative types: all RICH_MEDIA.
4640	//
4641	// Possible values:
4642	//   "ASSET_START_TIME_TYPE_NONE"
4643	//   "ASSET_START_TIME_TYPE_CUSTOM"
4644	StartTimeType string `json:"startTimeType,omitempty"`
4645
4646	// StreamingServingUrl: Streaming URL for video asset. This is a
4647	// read-only field. Applicable to the following creative types:
4648	// INSTREAM_VIDEO and all VPAID.
4649	StreamingServingUrl string `json:"streamingServingUrl,omitempty"`
4650
4651	// Transparency: Whether the asset is transparent. Applicable to the
4652	// following creative types: all RICH_MEDIA. Additionally, only
4653	// applicable to HTML5 assets.
4654	Transparency bool `json:"transparency,omitempty"`
4655
4656	// VerticallyLocked: Whether the asset is vertically locked. This is a
4657	// read-only field. Applicable to the following creative types: all
4658	// RICH_MEDIA.
4659	VerticallyLocked bool `json:"verticallyLocked,omitempty"`
4660
4661	// WindowMode: Window mode options for flash assets. Applicable to the
4662	// following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING,
4663	// RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and
4664	// RICH_MEDIA_INPAGE_FLOATING.
4665	//
4666	// Possible values:
4667	//   "OPAQUE"
4668	//   "WINDOW"
4669	//   "TRANSPARENT"
4670	WindowMode string `json:"windowMode,omitempty"`
4671
4672	// ZIndex: zIndex value of an asset. Applicable to the following
4673	// creative types: all RICH_MEDIA.Additionally, only applicable to
4674	// assets whose displayType is NOT one of the following types:
4675	// ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY. Acceptable
4676	// values are -999999999 to 999999999, inclusive.
4677	ZIndex int64 `json:"zIndex,omitempty"`
4678
4679	// ZipFilename: File name of zip file. This is a read-only field.
4680	// Applicable to the following creative types: HTML5_BANNER.
4681	ZipFilename string `json:"zipFilename,omitempty"`
4682
4683	// ZipFilesize: Size of zip file. This is a read-only field. Applicable
4684	// to the following creative types: HTML5_BANNER.
4685	ZipFilesize string `json:"zipFilesize,omitempty"`
4686
4687	// ForceSendFields is a list of field names (e.g. "ActionScript3") to
4688	// unconditionally include in API requests. By default, fields with
4689	// empty or default values are omitted from API requests. However, any
4690	// non-pointer, non-interface field appearing in ForceSendFields will be
4691	// sent to the server regardless of whether the field is empty or not.
4692	// This may be used to include empty fields in Patch requests.
4693	ForceSendFields []string `json:"-"`
4694
4695	// NullFields is a list of field names (e.g. "ActionScript3") to include
4696	// in API requests with the JSON null value. By default, fields with
4697	// empty values are omitted from API requests. However, any field with
4698	// an empty value appearing in NullFields will be sent to the server as
4699	// null. It is an error if a field in this list has a non-empty value.
4700	// This may be used to include null fields in Patch requests.
4701	NullFields []string `json:"-"`
4702}
4703
4704func (s *CreativeAsset) MarshalJSON() ([]byte, error) {
4705	type NoMethod CreativeAsset
4706	raw := NoMethod(*s)
4707	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4708}
4709
4710func (s *CreativeAsset) UnmarshalJSON(data []byte) error {
4711	type NoMethod CreativeAsset
4712	var s1 struct {
4713		FrameRate        gensupport.JSONFloat64 `json:"frameRate"`
4714		MediaDuration    gensupport.JSONFloat64 `json:"mediaDuration"`
4715		PushdownDuration gensupport.JSONFloat64 `json:"pushdownDuration"`
4716		*NoMethod
4717	}
4718	s1.NoMethod = (*NoMethod)(s)
4719	if err := json.Unmarshal(data, &s1); err != nil {
4720		return err
4721	}
4722	s.FrameRate = float64(s1.FrameRate)
4723	s.MediaDuration = float64(s1.MediaDuration)
4724	s.PushdownDuration = float64(s1.PushdownDuration)
4725	return nil
4726}
4727
4728// CreativeAssetId: Creative Asset ID.
4729type CreativeAssetId struct {
4730	// Name: Name of the creative asset. This is a required field while
4731	// inserting an asset. After insertion, this assetIdentifier is used to
4732	// identify the uploaded asset. Characters in the name must be
4733	// alphanumeric or one of the following: ".-_ ". Spaces are allowed.
4734	Name string `json:"name,omitempty"`
4735
4736	// Type: Type of asset to upload. This is a required field. FLASH and
4737	// IMAGE are no longer supported for new uploads. All image assets
4738	// should use HTML_IMAGE.
4739	//
4740	// Possible values:
4741	//   "IMAGE"
4742	//   "FLASH"
4743	//   "VIDEO"
4744	//   "HTML"
4745	//   "HTML_IMAGE"
4746	//   "AUDIO"
4747	Type string `json:"type,omitempty"`
4748
4749	// ForceSendFields is a list of field names (e.g. "Name") to
4750	// unconditionally include in API requests. By default, fields with
4751	// empty or default values are omitted from API requests. However, any
4752	// non-pointer, non-interface field appearing in ForceSendFields will be
4753	// sent to the server regardless of whether the field is empty or not.
4754	// This may be used to include empty fields in Patch requests.
4755	ForceSendFields []string `json:"-"`
4756
4757	// NullFields is a list of field names (e.g. "Name") to include in API
4758	// requests with the JSON null value. By default, fields with empty
4759	// values are omitted from API requests. However, any field with an
4760	// empty value appearing in NullFields will be sent to the server as
4761	// null. It is an error if a field in this list has a non-empty value.
4762	// This may be used to include null fields in Patch requests.
4763	NullFields []string `json:"-"`
4764}
4765
4766func (s *CreativeAssetId) MarshalJSON() ([]byte, error) {
4767	type NoMethod CreativeAssetId
4768	raw := NoMethod(*s)
4769	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4770}
4771
4772// CreativeAssetMetadata: CreativeAssets contains properties of a
4773// creative asset file which will be uploaded or has already been
4774// uploaded. Refer to the creative sample code for how to upload assets
4775// and insert a creative.
4776type CreativeAssetMetadata struct {
4777	// AssetIdentifier: ID of the creative asset. This is a required field.
4778	AssetIdentifier *CreativeAssetId `json:"assetIdentifier,omitempty"`
4779
4780	// ClickTags: List of detected click tags for assets. This is a
4781	// read-only, auto-generated field. This field is empty for a rich media
4782	// asset.
4783	ClickTags []*ClickTag `json:"clickTags,omitempty"`
4784
4785	// CounterCustomEvents: List of counter events configured for the asset.
4786	// This is a read-only, auto-generated field and only applicable to a
4787	// rich media asset.
4788	CounterCustomEvents []*CreativeCustomEvent `json:"counterCustomEvents,omitempty"`
4789
4790	// DetectedFeatures: List of feature dependencies for the creative asset
4791	// that are detected by Campaign Manager. Feature dependencies are
4792	// features that a browser must be able to support in order to render
4793	// your HTML5 creative correctly. This is a read-only, auto-generated
4794	// field.
4795	//
4796	// Possible values:
4797	//   "CSS_FONT_FACE"
4798	//   "CSS_BACKGROUND_SIZE"
4799	//   "CSS_BORDER_IMAGE"
4800	//   "CSS_BORDER_RADIUS"
4801	//   "CSS_BOX_SHADOW"
4802	//   "CSS_FLEX_BOX"
4803	//   "CSS_HSLA"
4804	//   "CSS_MULTIPLE_BGS"
4805	//   "CSS_OPACITY"
4806	//   "CSS_RGBA"
4807	//   "CSS_TEXT_SHADOW"
4808	//   "CSS_ANIMATIONS"
4809	//   "CSS_COLUMNS"
4810	//   "CSS_GENERATED_CONTENT"
4811	//   "CSS_GRADIENTS"
4812	//   "CSS_REFLECTIONS"
4813	//   "CSS_TRANSFORMS"
4814	//   "CSS_TRANSFORMS3D"
4815	//   "CSS_TRANSITIONS"
4816	//   "APPLICATION_CACHE"
4817	//   "CANVAS"
4818	//   "CANVAS_TEXT"
4819	//   "DRAG_AND_DROP"
4820	//   "HASH_CHANGE"
4821	//   "HISTORY"
4822	//   "AUDIO"
4823	//   "VIDEO"
4824	//   "INDEXED_DB"
4825	//   "INPUT_ATTR_AUTOCOMPLETE"
4826	//   "INPUT_ATTR_AUTOFOCUS"
4827	//   "INPUT_ATTR_LIST"
4828	//   "INPUT_ATTR_PLACEHOLDER"
4829	//   "INPUT_ATTR_MAX"
4830	//   "INPUT_ATTR_MIN"
4831	//   "INPUT_ATTR_MULTIPLE"
4832	//   "INPUT_ATTR_PATTERN"
4833	//   "INPUT_ATTR_REQUIRED"
4834	//   "INPUT_ATTR_STEP"
4835	//   "INPUT_TYPE_SEARCH"
4836	//   "INPUT_TYPE_TEL"
4837	//   "INPUT_TYPE_URL"
4838	//   "INPUT_TYPE_EMAIL"
4839	//   "INPUT_TYPE_DATETIME"
4840	//   "INPUT_TYPE_DATE"
4841	//   "INPUT_TYPE_MONTH"
4842	//   "INPUT_TYPE_WEEK"
4843	//   "INPUT_TYPE_TIME"
4844	//   "INPUT_TYPE_DATETIME_LOCAL"
4845	//   "INPUT_TYPE_NUMBER"
4846	//   "INPUT_TYPE_RANGE"
4847	//   "INPUT_TYPE_COLOR"
4848	//   "LOCAL_STORAGE"
4849	//   "POST_MESSAGE"
4850	//   "SESSION_STORAGE"
4851	//   "WEB_SOCKETS"
4852	//   "WEB_SQL_DATABASE"
4853	//   "WEB_WORKERS"
4854	//   "GEO_LOCATION"
4855	//   "INLINE_SVG"
4856	//   "SMIL"
4857	//   "SVG_HREF"
4858	//   "SVG_CLIP_PATHS"
4859	//   "TOUCH"
4860	//   "WEBGL"
4861	//   "SVG_FILTERS"
4862	//   "SVG_FE_IMAGE"
4863	DetectedFeatures []string `json:"detectedFeatures,omitempty"`
4864
4865	// ExitCustomEvents: List of exit events configured for the asset. This
4866	// is a read-only, auto-generated field and only applicable to a rich
4867	// media asset.
4868	ExitCustomEvents []*CreativeCustomEvent `json:"exitCustomEvents,omitempty"`
4869
4870	// Id: Numeric ID of the asset. This is a read-only, auto-generated
4871	// field.
4872	Id int64 `json:"id,omitempty,string"`
4873
4874	// IdDimensionValue: Dimension value for the numeric ID of the asset.
4875	// This is a read-only, auto-generated field.
4876	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
4877
4878	// Kind: Identifies what kind of resource this is. Value: the fixed
4879	// string "dfareporting#creativeAssetMetadata".
4880	Kind string `json:"kind,omitempty"`
4881
4882	// RichMedia: True if the uploaded asset is a rich media asset. This is
4883	// a read-only, auto-generated field.
4884	RichMedia bool `json:"richMedia,omitempty"`
4885
4886	// TimerCustomEvents: List of timer events configured for the asset.
4887	// This is a read-only, auto-generated field and only applicable to a
4888	// rich media asset.
4889	TimerCustomEvents []*CreativeCustomEvent `json:"timerCustomEvents,omitempty"`
4890
4891	// WarnedValidationRules: Rules validated during code generation that
4892	// generated a warning. This is a read-only, auto-generated field.
4893	// Possible values are: - "ADMOB_REFERENCED" -
4894	// "ASSET_FORMAT_UNSUPPORTED_DCM" - "ASSET_INVALID" -
4895	// "CLICK_TAG_HARD_CODED" - "CLICK_TAG_INVALID" - "CLICK_TAG_IN_GWD" -
4896	// "CLICK_TAG_MISSING" - "CLICK_TAG_MORE_THAN_ONE" -
4897	// "CLICK_TAG_NON_TOP_LEVEL" - "COMPONENT_UNSUPPORTED_DCM" -
4898	// "ENABLER_UNSUPPORTED_METHOD_DCM" - "EXTERNAL_FILE_REFERENCED" -
4899	// "FILE_DETAIL_EMPTY" - "FILE_TYPE_INVALID" - "GWD_PROPERTIES_INVALID"
4900	// - "HTML5_FEATURE_UNSUPPORTED" - "LINKED_FILE_NOT_FOUND" -
4901	// "MAX_FLASH_VERSION_11" - "MRAID_REFERENCED" - "NOT_SSL_COMPLIANT" -
4902	// "ORPHANED_ASSET" - "PRIMARY_HTML_MISSING" - "SVG_INVALID" -
4903	// "ZIP_INVALID"
4904	//
4905	// Possible values:
4906	//   "CLICK_TAG_NON_TOP_LEVEL"
4907	//   "CLICK_TAG_MISSING"
4908	//   "CLICK_TAG_MORE_THAN_ONE"
4909	//   "CLICK_TAG_INVALID"
4910	//   "ORPHANED_ASSET"
4911	//   "PRIMARY_HTML_MISSING"
4912	//   "EXTERNAL_FILE_REFERENCED"
4913	//   "MRAID_REFERENCED"
4914	//   "ADMOB_REFERENCED"
4915	//   "FILE_TYPE_INVALID"
4916	//   "ZIP_INVALID"
4917	//   "LINKED_FILE_NOT_FOUND"
4918	//   "MAX_FLASH_VERSION_11"
4919	//   "NOT_SSL_COMPLIANT"
4920	//   "FILE_DETAIL_EMPTY"
4921	//   "ASSET_INVALID"
4922	//   "GWD_PROPERTIES_INVALID"
4923	//   "ENABLER_UNSUPPORTED_METHOD_DCM"
4924	//   "ASSET_FORMAT_UNSUPPORTED_DCM"
4925	//   "COMPONENT_UNSUPPORTED_DCM"
4926	//   "HTML5_FEATURE_UNSUPPORTED"
4927	//   "CLICK_TAG_IN_GWD"
4928	//   "CLICK_TAG_HARD_CODED"
4929	//   "SVG_INVALID"
4930	//   "CLICK_TAG_IN_RICH_MEDIA"
4931	WarnedValidationRules []string `json:"warnedValidationRules,omitempty"`
4932
4933	// ServerResponse contains the HTTP response code and headers from the
4934	// server.
4935	googleapi.ServerResponse `json:"-"`
4936
4937	// ForceSendFields is a list of field names (e.g. "AssetIdentifier") to
4938	// unconditionally include in API requests. By default, fields with
4939	// empty or default values are omitted from API requests. However, any
4940	// non-pointer, non-interface field appearing in ForceSendFields will be
4941	// sent to the server regardless of whether the field is empty or not.
4942	// This may be used to include empty fields in Patch requests.
4943	ForceSendFields []string `json:"-"`
4944
4945	// NullFields is a list of field names (e.g. "AssetIdentifier") to
4946	// include in API requests with the JSON null value. By default, fields
4947	// with empty values are omitted from API requests. However, any field
4948	// with an empty value appearing in NullFields will be sent to the
4949	// server as null. It is an error if a field in this list has a
4950	// non-empty value. This may be used to include null fields in Patch
4951	// requests.
4952	NullFields []string `json:"-"`
4953}
4954
4955func (s *CreativeAssetMetadata) MarshalJSON() ([]byte, error) {
4956	type NoMethod CreativeAssetMetadata
4957	raw := NoMethod(*s)
4958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4959}
4960
4961// CreativeAssetSelection: Encapsulates the list of rules for asset
4962// selection and a default asset in case none of the rules match.
4963// Applicable to INSTREAM_VIDEO creatives.
4964type CreativeAssetSelection struct {
4965	// DefaultAssetId: A creativeAssets[].id. This should refer to one of
4966	// the parent assets in this creative, and will be served if none of the
4967	// rules match. This is a required field.
4968	DefaultAssetId int64 `json:"defaultAssetId,omitempty,string"`
4969
4970	// Rules: Rules determine which asset will be served to a viewer. Rules
4971	// will be evaluated in the order in which they are stored in this list.
4972	// This list must contain at least one rule. Applicable to
4973	// INSTREAM_VIDEO creatives.
4974	Rules []*Rule `json:"rules,omitempty"`
4975
4976	// ForceSendFields is a list of field names (e.g. "DefaultAssetId") to
4977	// unconditionally include in API requests. By default, fields with
4978	// empty or default values are omitted from API requests. However, any
4979	// non-pointer, non-interface field appearing in ForceSendFields will be
4980	// sent to the server regardless of whether the field is empty or not.
4981	// This may be used to include empty fields in Patch requests.
4982	ForceSendFields []string `json:"-"`
4983
4984	// NullFields is a list of field names (e.g. "DefaultAssetId") to
4985	// include in API requests with the JSON null value. By default, fields
4986	// with empty values are omitted from API requests. However, any field
4987	// with an empty value appearing in NullFields will be sent to the
4988	// server as null. It is an error if a field in this list has a
4989	// non-empty value. This may be used to include null fields in Patch
4990	// requests.
4991	NullFields []string `json:"-"`
4992}
4993
4994func (s *CreativeAssetSelection) MarshalJSON() ([]byte, error) {
4995	type NoMethod CreativeAssetSelection
4996	raw := NoMethod(*s)
4997	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4998}
4999
5000// CreativeAssignment: Creative Assignment.
5001type CreativeAssignment struct {
5002	// Active: Whether this creative assignment is active. When true, the
5003	// creative will be included in the ad's rotation.
5004	Active bool `json:"active,omitempty"`
5005
5006	// ApplyEventTags: Whether applicable event tags should fire when this
5007	// creative assignment is rendered. If this value is unset when the ad
5008	// is inserted or updated, it will default to true for all creative
5009	// types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT,
5010	// and INSTREAM_VIDEO.
5011	ApplyEventTags bool `json:"applyEventTags,omitempty"`
5012
5013	// ClickThroughUrl: Click-through URL of the creative assignment.
5014	ClickThroughUrl *ClickThroughUrl `json:"clickThroughUrl,omitempty"`
5015
5016	// CompanionCreativeOverrides: Companion creative overrides for this
5017	// creative assignment. Applicable to video ads.
5018	CompanionCreativeOverrides []*CompanionClickThroughOverride `json:"companionCreativeOverrides,omitempty"`
5019
5020	// CreativeGroupAssignments: Creative group assignments for this
5021	// creative assignment. Only one assignment per creative group number is
5022	// allowed for a maximum of two assignments.
5023	CreativeGroupAssignments []*CreativeGroupAssignment `json:"creativeGroupAssignments,omitempty"`
5024
5025	// CreativeId: ID of the creative to be assigned. This is a required
5026	// field.
5027	CreativeId int64 `json:"creativeId,omitempty,string"`
5028
5029	// CreativeIdDimensionValue: Dimension value for the ID of the creative.
5030	// This is a read-only, auto-generated field.
5031	CreativeIdDimensionValue *DimensionValue `json:"creativeIdDimensionValue,omitempty"`
5032
5033	EndTime string `json:"endTime,omitempty"`
5034
5035	// RichMediaExitOverrides: Rich media exit overrides for this creative
5036	// assignment. Applicable when the creative type is any of the
5037	// following: - DISPLAY - RICH_MEDIA_INPAGE - RICH_MEDIA_INPAGE_FLOATING
5038	// - RICH_MEDIA_IM_EXPAND - RICH_MEDIA_EXPANDING -
5039	// RICH_MEDIA_INTERSTITIAL_FLOAT - RICH_MEDIA_MOBILE_IN_APP -
5040	// RICH_MEDIA_MULTI_FLOATING - RICH_MEDIA_PEEL_DOWN - VPAID_LINEAR -
5041	// VPAID_NON_LINEAR
5042	RichMediaExitOverrides []*RichMediaExitOverride `json:"richMediaExitOverrides,omitempty"`
5043
5044	// Sequence: Sequence number of the creative assignment, applicable when
5045	// the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL. Acceptable
5046	// values are 1 to 65535, inclusive.
5047	Sequence int64 `json:"sequence,omitempty"`
5048
5049	// SslCompliant: Whether the creative to be assigned is SSL-compliant.
5050	// This is a read-only field that is auto-generated when the ad is
5051	// inserted or updated.
5052	SslCompliant bool `json:"sslCompliant,omitempty"`
5053
5054	StartTime string `json:"startTime,omitempty"`
5055
5056	// Weight: Weight of the creative assignment, applicable when the
5057	// rotation type is CREATIVE_ROTATION_TYPE_RANDOM. Value must be greater
5058	// than or equal to 1.
5059	Weight int64 `json:"weight,omitempty"`
5060
5061	// ForceSendFields is a list of field names (e.g. "Active") to
5062	// unconditionally include in API requests. By default, fields with
5063	// empty or default values are omitted from API requests. However, any
5064	// non-pointer, non-interface field appearing in ForceSendFields will be
5065	// sent to the server regardless of whether the field is empty or not.
5066	// This may be used to include empty fields in Patch requests.
5067	ForceSendFields []string `json:"-"`
5068
5069	// NullFields is a list of field names (e.g. "Active") to include in API
5070	// requests with the JSON null value. By default, fields with empty
5071	// values are omitted from API requests. However, any field with an
5072	// empty value appearing in NullFields will be sent to the server as
5073	// null. It is an error if a field in this list has a non-empty value.
5074	// This may be used to include null fields in Patch requests.
5075	NullFields []string `json:"-"`
5076}
5077
5078func (s *CreativeAssignment) MarshalJSON() ([]byte, error) {
5079	type NoMethod CreativeAssignment
5080	raw := NoMethod(*s)
5081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5082}
5083
5084// CreativeClickThroughUrl: Click-through URL
5085type CreativeClickThroughUrl struct {
5086	// ComputedClickThroughUrl: Read-only convenience field representing the
5087	// actual URL that will be used for this click-through. The URL is
5088	// computed as follows: - If landingPageId is specified then that
5089	// landing page's URL is assigned to this field. - Otherwise, the
5090	// customClickThroughUrl is assigned to this field.
5091	ComputedClickThroughUrl string `json:"computedClickThroughUrl,omitempty"`
5092
5093	// CustomClickThroughUrl: Custom click-through URL. Applicable if the
5094	// landingPageId field is left unset.
5095	CustomClickThroughUrl string `json:"customClickThroughUrl,omitempty"`
5096
5097	// LandingPageId: ID of the landing page for the click-through URL.
5098	LandingPageId int64 `json:"landingPageId,omitempty,string"`
5099
5100	// ForceSendFields is a list of field names (e.g.
5101	// "ComputedClickThroughUrl") to unconditionally include in API
5102	// requests. By default, fields with empty or default values are omitted
5103	// from API requests. However, any non-pointer, non-interface field
5104	// appearing in ForceSendFields will be sent to the server regardless of
5105	// whether the field is empty or not. This may be used to include empty
5106	// fields in Patch requests.
5107	ForceSendFields []string `json:"-"`
5108
5109	// NullFields is a list of field names (e.g. "ComputedClickThroughUrl")
5110	// to include in API requests with the JSON null value. By default,
5111	// fields with empty values are omitted from API requests. However, any
5112	// field with an empty value appearing in NullFields will be sent to the
5113	// server as null. It is an error if a field in this list has a
5114	// non-empty value. This may be used to include null fields in Patch
5115	// requests.
5116	NullFields []string `json:"-"`
5117}
5118
5119func (s *CreativeClickThroughUrl) MarshalJSON() ([]byte, error) {
5120	type NoMethod CreativeClickThroughUrl
5121	raw := NoMethod(*s)
5122	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5123}
5124
5125// CreativeCustomEvent: Creative Custom Event.
5126type CreativeCustomEvent struct {
5127	// AdvertiserCustomEventId: Unique ID of this event used by Reporting
5128	// and Data Transfer. This is a read-only field.
5129	AdvertiserCustomEventId int64 `json:"advertiserCustomEventId,omitempty,string"`
5130
5131	// AdvertiserCustomEventName: User-entered name for the event.
5132	AdvertiserCustomEventName string `json:"advertiserCustomEventName,omitempty"`
5133
5134	// AdvertiserCustomEventType: Type of the event. This is a read-only
5135	// field.
5136	//
5137	// Possible values:
5138	//   "ADVERTISER_EVENT_TIMER"
5139	//   "ADVERTISER_EVENT_EXIT"
5140	//   "ADVERTISER_EVENT_COUNTER"
5141	AdvertiserCustomEventType string `json:"advertiserCustomEventType,omitempty"`
5142
5143	// ArtworkLabel: Artwork label column, used to link events in Campaign
5144	// Manager back to events in Studio. This is a required field and should
5145	// not be modified after insertion.
5146	ArtworkLabel string `json:"artworkLabel,omitempty"`
5147
5148	// ArtworkType: Artwork type used by the creative.This is a read-only
5149	// field.
5150	//
5151	// Possible values:
5152	//   "ARTWORK_TYPE_FLASH"
5153	//   "ARTWORK_TYPE_HTML5"
5154	//   "ARTWORK_TYPE_MIXED"
5155	//   "ARTWORK_TYPE_IMAGE"
5156	ArtworkType string `json:"artworkType,omitempty"`
5157
5158	// ExitClickThroughUrl: Exit click-through URL for the event. This field
5159	// is used only for exit events.
5160	ExitClickThroughUrl *CreativeClickThroughUrl `json:"exitClickThroughUrl,omitempty"`
5161
5162	// Id: ID of this event. This is a required field and should not be
5163	// modified after insertion.
5164	Id int64 `json:"id,omitempty,string"`
5165
5166	// PopupWindowProperties: Properties for rich media popup windows. This
5167	// field is used only for exit events.
5168	PopupWindowProperties *PopupWindowProperties `json:"popupWindowProperties,omitempty"`
5169
5170	// TargetType: Target type used by the event.
5171	//
5172	// Possible values:
5173	//   "TARGET_BLANK"
5174	//   "TARGET_TOP"
5175	//   "TARGET_SELF"
5176	//   "TARGET_PARENT"
5177	//   "TARGET_POPUP"
5178	TargetType string `json:"targetType,omitempty"`
5179
5180	// VideoReportingId: Video reporting ID, used to differentiate multiple
5181	// videos in a single creative. This is a read-only field.
5182	VideoReportingId string `json:"videoReportingId,omitempty"`
5183
5184	// ForceSendFields is a list of field names (e.g.
5185	// "AdvertiserCustomEventId") to unconditionally include in API
5186	// requests. By default, fields with empty or default values are omitted
5187	// from API requests. However, any non-pointer, non-interface field
5188	// appearing in ForceSendFields will be sent to the server regardless of
5189	// whether the field is empty or not. This may be used to include empty
5190	// fields in Patch requests.
5191	ForceSendFields []string `json:"-"`
5192
5193	// NullFields is a list of field names (e.g. "AdvertiserCustomEventId")
5194	// to include in API requests with the JSON null value. By default,
5195	// fields with empty values are omitted from API requests. However, any
5196	// field with an empty value appearing in NullFields will be sent to the
5197	// server as null. It is an error if a field in this list has a
5198	// non-empty value. This may be used to include null fields in Patch
5199	// requests.
5200	NullFields []string `json:"-"`
5201}
5202
5203func (s *CreativeCustomEvent) MarshalJSON() ([]byte, error) {
5204	type NoMethod CreativeCustomEvent
5205	raw := NoMethod(*s)
5206	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5207}
5208
5209// CreativeField: Contains properties of a creative field.
5210type CreativeField struct {
5211	// AccountId: Account ID of this creative field. This is a read-only
5212	// field that can be left blank.
5213	AccountId int64 `json:"accountId,omitempty,string"`
5214
5215	// AdvertiserId: Advertiser ID of this creative field. This is a
5216	// required field on insertion.
5217	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
5218
5219	// AdvertiserIdDimensionValue: Dimension value for the ID of the
5220	// advertiser. This is a read-only, auto-generated field.
5221	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
5222
5223	// Id: ID of this creative field. This is a read-only, auto-generated
5224	// field.
5225	Id int64 `json:"id,omitempty,string"`
5226
5227	// Kind: Identifies what kind of resource this is. Value: the fixed
5228	// string "dfareporting#creativeField".
5229	Kind string `json:"kind,omitempty"`
5230
5231	// Name: Name of this creative field. This is a required field and must
5232	// be less than 256 characters long and unique among creative fields of
5233	// the same advertiser.
5234	Name string `json:"name,omitempty"`
5235
5236	// SubaccountId: Subaccount ID of this creative field. This is a
5237	// read-only field that can be left blank.
5238	SubaccountId int64 `json:"subaccountId,omitempty,string"`
5239
5240	// ServerResponse contains the HTTP response code and headers from the
5241	// server.
5242	googleapi.ServerResponse `json:"-"`
5243
5244	// ForceSendFields is a list of field names (e.g. "AccountId") to
5245	// unconditionally include in API requests. By default, fields with
5246	// empty or default values are omitted from API requests. However, any
5247	// non-pointer, non-interface field appearing in ForceSendFields will be
5248	// sent to the server regardless of whether the field is empty or not.
5249	// This may be used to include empty fields in Patch requests.
5250	ForceSendFields []string `json:"-"`
5251
5252	// NullFields is a list of field names (e.g. "AccountId") to include in
5253	// API requests with the JSON null value. By default, fields with empty
5254	// values are omitted from API requests. However, any field with an
5255	// empty value appearing in NullFields will be sent to the server as
5256	// null. It is an error if a field in this list has a non-empty value.
5257	// This may be used to include null fields in Patch requests.
5258	NullFields []string `json:"-"`
5259}
5260
5261func (s *CreativeField) MarshalJSON() ([]byte, error) {
5262	type NoMethod CreativeField
5263	raw := NoMethod(*s)
5264	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5265}
5266
5267// CreativeFieldAssignment: Creative Field Assignment.
5268type CreativeFieldAssignment struct {
5269	// CreativeFieldId: ID of the creative field.
5270	CreativeFieldId int64 `json:"creativeFieldId,omitempty,string"`
5271
5272	// CreativeFieldValueId: ID of the creative field value.
5273	CreativeFieldValueId int64 `json:"creativeFieldValueId,omitempty,string"`
5274
5275	// ForceSendFields is a list of field names (e.g. "CreativeFieldId") to
5276	// unconditionally include in API requests. By default, fields with
5277	// empty or default values are omitted from API requests. However, any
5278	// non-pointer, non-interface field appearing in ForceSendFields will be
5279	// sent to the server regardless of whether the field is empty or not.
5280	// This may be used to include empty fields in Patch requests.
5281	ForceSendFields []string `json:"-"`
5282
5283	// NullFields is a list of field names (e.g. "CreativeFieldId") to
5284	// include in API requests with the JSON null value. By default, fields
5285	// with empty values are omitted from API requests. However, any field
5286	// with an empty value appearing in NullFields will be sent to the
5287	// server as null. It is an error if a field in this list has a
5288	// non-empty value. This may be used to include null fields in Patch
5289	// requests.
5290	NullFields []string `json:"-"`
5291}
5292
5293func (s *CreativeFieldAssignment) MarshalJSON() ([]byte, error) {
5294	type NoMethod CreativeFieldAssignment
5295	raw := NoMethod(*s)
5296	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5297}
5298
5299// CreativeFieldValue: Contains properties of a creative field value.
5300type CreativeFieldValue struct {
5301	// Id: ID of this creative field value. This is a read-only,
5302	// auto-generated field.
5303	Id int64 `json:"id,omitempty,string"`
5304
5305	// Kind: Identifies what kind of resource this is. Value: the fixed
5306	// string "dfareporting#creativeFieldValue".
5307	Kind string `json:"kind,omitempty"`
5308
5309	// Value: Value of this creative field value. It needs to be less than
5310	// 256 characters in length and unique per creative field.
5311	Value string `json:"value,omitempty"`
5312
5313	// ServerResponse contains the HTTP response code and headers from the
5314	// server.
5315	googleapi.ServerResponse `json:"-"`
5316
5317	// ForceSendFields is a list of field names (e.g. "Id") to
5318	// unconditionally include in API requests. By default, fields with
5319	// empty or default values are omitted from API requests. However, any
5320	// non-pointer, non-interface field appearing in ForceSendFields will be
5321	// sent to the server regardless of whether the field is empty or not.
5322	// This may be used to include empty fields in Patch requests.
5323	ForceSendFields []string `json:"-"`
5324
5325	// NullFields is a list of field names (e.g. "Id") to include in API
5326	// requests with the JSON null value. By default, fields with empty
5327	// values are omitted from API requests. However, any field with an
5328	// empty value appearing in NullFields will be sent to the server as
5329	// null. It is an error if a field in this list has a non-empty value.
5330	// This may be used to include null fields in Patch requests.
5331	NullFields []string `json:"-"`
5332}
5333
5334func (s *CreativeFieldValue) MarshalJSON() ([]byte, error) {
5335	type NoMethod CreativeFieldValue
5336	raw := NoMethod(*s)
5337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5338}
5339
5340// CreativeFieldValuesListResponse: Creative Field Value List Response
5341type CreativeFieldValuesListResponse struct {
5342	// CreativeFieldValues: Creative field value collection.
5343	CreativeFieldValues []*CreativeFieldValue `json:"creativeFieldValues,omitempty"`
5344
5345	// Kind: Identifies what kind of resource this is. Value: the fixed
5346	// string "dfareporting#creativeFieldValuesListResponse".
5347	Kind string `json:"kind,omitempty"`
5348
5349	// NextPageToken: Pagination token to be used for the next list
5350	// operation.
5351	NextPageToken string `json:"nextPageToken,omitempty"`
5352
5353	// ServerResponse contains the HTTP response code and headers from the
5354	// server.
5355	googleapi.ServerResponse `json:"-"`
5356
5357	// ForceSendFields is a list of field names (e.g. "CreativeFieldValues")
5358	// to unconditionally include in API requests. By default, fields with
5359	// empty or default values are omitted from API requests. However, any
5360	// non-pointer, non-interface field appearing in ForceSendFields will be
5361	// sent to the server regardless of whether the field is empty or not.
5362	// This may be used to include empty fields in Patch requests.
5363	ForceSendFields []string `json:"-"`
5364
5365	// NullFields is a list of field names (e.g. "CreativeFieldValues") to
5366	// include in API requests with the JSON null value. By default, fields
5367	// with empty values are omitted from API requests. However, any field
5368	// with an empty value appearing in NullFields will be sent to the
5369	// server as null. It is an error if a field in this list has a
5370	// non-empty value. This may be used to include null fields in Patch
5371	// requests.
5372	NullFields []string `json:"-"`
5373}
5374
5375func (s *CreativeFieldValuesListResponse) MarshalJSON() ([]byte, error) {
5376	type NoMethod CreativeFieldValuesListResponse
5377	raw := NoMethod(*s)
5378	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5379}
5380
5381// CreativeFieldsListResponse: Creative Field List Response
5382type CreativeFieldsListResponse struct {
5383	// CreativeFields: Creative field collection.
5384	CreativeFields []*CreativeField `json:"creativeFields,omitempty"`
5385
5386	// Kind: Identifies what kind of resource this is. Value: the fixed
5387	// string "dfareporting#creativeFieldsListResponse".
5388	Kind string `json:"kind,omitempty"`
5389
5390	// NextPageToken: Pagination token to be used for the next list
5391	// operation.
5392	NextPageToken string `json:"nextPageToken,omitempty"`
5393
5394	// ServerResponse contains the HTTP response code and headers from the
5395	// server.
5396	googleapi.ServerResponse `json:"-"`
5397
5398	// ForceSendFields is a list of field names (e.g. "CreativeFields") to
5399	// unconditionally include in API requests. By default, fields with
5400	// empty or default values are omitted from API requests. However, any
5401	// non-pointer, non-interface field appearing in ForceSendFields will be
5402	// sent to the server regardless of whether the field is empty or not.
5403	// This may be used to include empty fields in Patch requests.
5404	ForceSendFields []string `json:"-"`
5405
5406	// NullFields is a list of field names (e.g. "CreativeFields") to
5407	// include in API requests with the JSON null value. By default, fields
5408	// with empty values are omitted from API requests. However, any field
5409	// with an empty value appearing in NullFields will be sent to the
5410	// server as null. It is an error if a field in this list has a
5411	// non-empty value. This may be used to include null fields in Patch
5412	// requests.
5413	NullFields []string `json:"-"`
5414}
5415
5416func (s *CreativeFieldsListResponse) MarshalJSON() ([]byte, error) {
5417	type NoMethod CreativeFieldsListResponse
5418	raw := NoMethod(*s)
5419	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5420}
5421
5422// CreativeGroup: Contains properties of a creative group.
5423type CreativeGroup struct {
5424	// AccountId: Account ID of this creative group. This is a read-only
5425	// field that can be left blank.
5426	AccountId int64 `json:"accountId,omitempty,string"`
5427
5428	// AdvertiserId: Advertiser ID of this creative group. This is a
5429	// required field on insertion.
5430	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
5431
5432	// AdvertiserIdDimensionValue: Dimension value for the ID of the
5433	// advertiser. This is a read-only, auto-generated field.
5434	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
5435
5436	// GroupNumber: Subgroup of the creative group. Assign your creative
5437	// groups to a subgroup in order to filter or manage them more easily.
5438	// This field is required on insertion and is read-only after insertion.
5439	// Acceptable values are 1 to 2, inclusive.
5440	GroupNumber int64 `json:"groupNumber,omitempty"`
5441
5442	// Id: ID of this creative group. This is a read-only, auto-generated
5443	// field.
5444	Id int64 `json:"id,omitempty,string"`
5445
5446	// Kind: Identifies what kind of resource this is. Value: the fixed
5447	// string "dfareporting#creativeGroup".
5448	Kind string `json:"kind,omitempty"`
5449
5450	// Name: Name of this creative group. This is a required field and must
5451	// be less than 256 characters long and unique among creative groups of
5452	// the same advertiser.
5453	Name string `json:"name,omitempty"`
5454
5455	// SubaccountId: Subaccount ID of this creative group. This is a
5456	// read-only field that can be left blank.
5457	SubaccountId int64 `json:"subaccountId,omitempty,string"`
5458
5459	// ServerResponse contains the HTTP response code and headers from the
5460	// server.
5461	googleapi.ServerResponse `json:"-"`
5462
5463	// ForceSendFields is a list of field names (e.g. "AccountId") to
5464	// unconditionally include in API requests. By default, fields with
5465	// empty or default values are omitted from API requests. However, any
5466	// non-pointer, non-interface field appearing in ForceSendFields will be
5467	// sent to the server regardless of whether the field is empty or not.
5468	// This may be used to include empty fields in Patch requests.
5469	ForceSendFields []string `json:"-"`
5470
5471	// NullFields is a list of field names (e.g. "AccountId") to include in
5472	// API requests with the JSON null value. By default, fields with empty
5473	// values are omitted from API requests. However, any field with an
5474	// empty value appearing in NullFields will be sent to the server as
5475	// null. It is an error if a field in this list has a non-empty value.
5476	// This may be used to include null fields in Patch requests.
5477	NullFields []string `json:"-"`
5478}
5479
5480func (s *CreativeGroup) MarshalJSON() ([]byte, error) {
5481	type NoMethod CreativeGroup
5482	raw := NoMethod(*s)
5483	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5484}
5485
5486// CreativeGroupAssignment: Creative Group Assignment.
5487type CreativeGroupAssignment struct {
5488	// CreativeGroupId: ID of the creative group to be assigned.
5489	CreativeGroupId int64 `json:"creativeGroupId,omitempty,string"`
5490
5491	// CreativeGroupNumber: Creative group number of the creative group
5492	// assignment.
5493	//
5494	// Possible values:
5495	//   "CREATIVE_GROUP_ONE"
5496	//   "CREATIVE_GROUP_TWO"
5497	CreativeGroupNumber string `json:"creativeGroupNumber,omitempty"`
5498
5499	// ForceSendFields is a list of field names (e.g. "CreativeGroupId") to
5500	// unconditionally include in API requests. By default, fields with
5501	// empty or default values are omitted from API requests. However, any
5502	// non-pointer, non-interface field appearing in ForceSendFields will be
5503	// sent to the server regardless of whether the field is empty or not.
5504	// This may be used to include empty fields in Patch requests.
5505	ForceSendFields []string `json:"-"`
5506
5507	// NullFields is a list of field names (e.g. "CreativeGroupId") to
5508	// include in API requests with the JSON null value. By default, fields
5509	// with empty values are omitted from API requests. However, any field
5510	// with an empty value appearing in NullFields will be sent to the
5511	// server as null. It is an error if a field in this list has a
5512	// non-empty value. This may be used to include null fields in Patch
5513	// requests.
5514	NullFields []string `json:"-"`
5515}
5516
5517func (s *CreativeGroupAssignment) MarshalJSON() ([]byte, error) {
5518	type NoMethod CreativeGroupAssignment
5519	raw := NoMethod(*s)
5520	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5521}
5522
5523// CreativeGroupsListResponse: Creative Group List Response
5524type CreativeGroupsListResponse struct {
5525	// CreativeGroups: Creative group collection.
5526	CreativeGroups []*CreativeGroup `json:"creativeGroups,omitempty"`
5527
5528	// Kind: Identifies what kind of resource this is. Value: the fixed
5529	// string "dfareporting#creativeGroupsListResponse".
5530	Kind string `json:"kind,omitempty"`
5531
5532	// NextPageToken: Pagination token to be used for the next list
5533	// operation.
5534	NextPageToken string `json:"nextPageToken,omitempty"`
5535
5536	// ServerResponse contains the HTTP response code and headers from the
5537	// server.
5538	googleapi.ServerResponse `json:"-"`
5539
5540	// ForceSendFields is a list of field names (e.g. "CreativeGroups") to
5541	// unconditionally include in API requests. By default, fields with
5542	// empty or default values are omitted from API requests. However, any
5543	// non-pointer, non-interface field appearing in ForceSendFields will be
5544	// sent to the server regardless of whether the field is empty or not.
5545	// This may be used to include empty fields in Patch requests.
5546	ForceSendFields []string `json:"-"`
5547
5548	// NullFields is a list of field names (e.g. "CreativeGroups") to
5549	// include in API requests with the JSON null value. By default, fields
5550	// with empty values are omitted from API requests. However, any field
5551	// with an empty value appearing in NullFields will be sent to the
5552	// server as null. It is an error if a field in this list has a
5553	// non-empty value. This may be used to include null fields in Patch
5554	// requests.
5555	NullFields []string `json:"-"`
5556}
5557
5558func (s *CreativeGroupsListResponse) MarshalJSON() ([]byte, error) {
5559	type NoMethod CreativeGroupsListResponse
5560	raw := NoMethod(*s)
5561	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5562}
5563
5564// CreativeOptimizationConfiguration: Creative optimization settings.
5565type CreativeOptimizationConfiguration struct {
5566	// Id: ID of this creative optimization config. This field is
5567	// auto-generated when the campaign is inserted or updated. It can be
5568	// null for existing campaigns.
5569	Id int64 `json:"id,omitempty,string"`
5570
5571	// Name: Name of this creative optimization config. This is a required
5572	// field and must be less than 129 characters long.
5573	Name string `json:"name,omitempty"`
5574
5575	// OptimizationActivitys: List of optimization activities associated
5576	// with this configuration.
5577	OptimizationActivitys []*OptimizationActivity `json:"optimizationActivitys,omitempty"`
5578
5579	// OptimizationModel: Optimization model for this configuration.
5580	//
5581	// Possible values:
5582	//   "CLICK"
5583	//   "POST_CLICK"
5584	//   "POST_IMPRESSION"
5585	//   "POST_CLICK_AND_IMPRESSION"
5586	//   "VIDEO_COMPLETION"
5587	OptimizationModel string `json:"optimizationModel,omitempty"`
5588
5589	// ForceSendFields is a list of field names (e.g. "Id") to
5590	// unconditionally include in API requests. By default, fields with
5591	// empty or default values are omitted from API requests. However, any
5592	// non-pointer, non-interface field appearing in ForceSendFields will be
5593	// sent to the server regardless of whether the field is empty or not.
5594	// This may be used to include empty fields in Patch requests.
5595	ForceSendFields []string `json:"-"`
5596
5597	// NullFields is a list of field names (e.g. "Id") to include in API
5598	// requests with the JSON null value. By default, fields with empty
5599	// values are omitted from API requests. However, any field with an
5600	// empty value appearing in NullFields will be sent to the server as
5601	// null. It is an error if a field in this list has a non-empty value.
5602	// This may be used to include null fields in Patch requests.
5603	NullFields []string `json:"-"`
5604}
5605
5606func (s *CreativeOptimizationConfiguration) MarshalJSON() ([]byte, error) {
5607	type NoMethod CreativeOptimizationConfiguration
5608	raw := NoMethod(*s)
5609	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5610}
5611
5612// CreativeRotation: Creative Rotation.
5613type CreativeRotation struct {
5614	// CreativeAssignments: Creative assignments in this creative rotation.
5615	CreativeAssignments []*CreativeAssignment `json:"creativeAssignments,omitempty"`
5616
5617	// CreativeOptimizationConfigurationId: Creative optimization
5618	// configuration that is used by this ad. It should refer to one of the
5619	// existing optimization configurations in the ad's campaign. If it is
5620	// unset or set to 0, then the campaign's default optimization
5621	// configuration will be used for this ad.
5622	CreativeOptimizationConfigurationId int64 `json:"creativeOptimizationConfigurationId,omitempty,string"`
5623
5624	// Type: Type of creative rotation. Can be used to specify whether to
5625	// use sequential or random rotation.
5626	//
5627	// Possible values:
5628	//   "CREATIVE_ROTATION_TYPE_SEQUENTIAL"
5629	//   "CREATIVE_ROTATION_TYPE_RANDOM"
5630	Type string `json:"type,omitempty"`
5631
5632	// WeightCalculationStrategy: Strategy for calculating weights. Used
5633	// with CREATIVE_ROTATION_TYPE_RANDOM.
5634	//
5635	// Possible values:
5636	//   "WEIGHT_STRATEGY_EQUAL"
5637	//   "WEIGHT_STRATEGY_CUSTOM"
5638	//   "WEIGHT_STRATEGY_HIGHEST_CTR"
5639	//   "WEIGHT_STRATEGY_OPTIMIZED"
5640	WeightCalculationStrategy string `json:"weightCalculationStrategy,omitempty"`
5641
5642	// ForceSendFields is a list of field names (e.g. "CreativeAssignments")
5643	// to unconditionally include in API requests. By default, fields with
5644	// empty or default values are omitted from API requests. However, any
5645	// non-pointer, non-interface field appearing in ForceSendFields will be
5646	// sent to the server regardless of whether the field is empty or not.
5647	// This may be used to include empty fields in Patch requests.
5648	ForceSendFields []string `json:"-"`
5649
5650	// NullFields is a list of field names (e.g. "CreativeAssignments") to
5651	// include in API requests with the JSON null value. By default, fields
5652	// with empty values are omitted from API requests. However, any field
5653	// with an empty value appearing in NullFields will be sent to the
5654	// server as null. It is an error if a field in this list has a
5655	// non-empty value. This may be used to include null fields in Patch
5656	// requests.
5657	NullFields []string `json:"-"`
5658}
5659
5660func (s *CreativeRotation) MarshalJSON() ([]byte, error) {
5661	type NoMethod CreativeRotation
5662	raw := NoMethod(*s)
5663	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5664}
5665
5666// CreativesListResponse: Creative List Response
5667type CreativesListResponse struct {
5668	// Creatives: Creative collection.
5669	Creatives []*Creative `json:"creatives,omitempty"`
5670
5671	// Kind: Identifies what kind of resource this is. Value: the fixed
5672	// string "dfareporting#creativesListResponse".
5673	Kind string `json:"kind,omitempty"`
5674
5675	// NextPageToken: Pagination token to be used for the next list
5676	// operation.
5677	NextPageToken string `json:"nextPageToken,omitempty"`
5678
5679	// ServerResponse contains the HTTP response code and headers from the
5680	// server.
5681	googleapi.ServerResponse `json:"-"`
5682
5683	// ForceSendFields is a list of field names (e.g. "Creatives") to
5684	// unconditionally include in API requests. By default, fields with
5685	// empty or default values are omitted from API requests. However, any
5686	// non-pointer, non-interface field appearing in ForceSendFields will be
5687	// sent to the server regardless of whether the field is empty or not.
5688	// This may be used to include empty fields in Patch requests.
5689	ForceSendFields []string `json:"-"`
5690
5691	// NullFields is a list of field names (e.g. "Creatives") to include in
5692	// API requests with the JSON null value. By default, fields with empty
5693	// values are omitted from API requests. However, any field with an
5694	// empty value appearing in NullFields will be sent to the server as
5695	// null. It is an error if a field in this list has a non-empty value.
5696	// This may be used to include null fields in Patch requests.
5697	NullFields []string `json:"-"`
5698}
5699
5700func (s *CreativesListResponse) MarshalJSON() ([]byte, error) {
5701	type NoMethod CreativesListResponse
5702	raw := NoMethod(*s)
5703	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5704}
5705
5706// CrossDimensionReachReportCompatibleFields: Represents fields that are
5707// compatible to be selected for a report of type
5708// "CROSS_DIMENSION_REACH".
5709type CrossDimensionReachReportCompatibleFields struct {
5710	// Breakdown: Dimensions which are compatible to be selected in the
5711	// "breakdown" section of the report.
5712	Breakdown []*Dimension `json:"breakdown,omitempty"`
5713
5714	// DimensionFilters: Dimensions which are compatible to be selected in
5715	// the "dimensionFilters" section of the report.
5716	DimensionFilters []*Dimension `json:"dimensionFilters,omitempty"`
5717
5718	// Kind: The kind of resource this is, in this case
5719	// dfareporting#crossDimensionReachReportCompatibleFields.
5720	Kind string `json:"kind,omitempty"`
5721
5722	// Metrics: Metrics which are compatible to be selected in the
5723	// "metricNames" section of the report.
5724	Metrics []*Metric `json:"metrics,omitempty"`
5725
5726	// OverlapMetrics: Metrics which are compatible to be selected in the
5727	// "overlapMetricNames" section of the report.
5728	OverlapMetrics []*Metric `json:"overlapMetrics,omitempty"`
5729
5730	// ForceSendFields is a list of field names (e.g. "Breakdown") to
5731	// unconditionally include in API requests. By default, fields with
5732	// empty or default values are omitted from API requests. However, any
5733	// non-pointer, non-interface field appearing in ForceSendFields will be
5734	// sent to the server regardless of whether the field is empty or not.
5735	// This may be used to include empty fields in Patch requests.
5736	ForceSendFields []string `json:"-"`
5737
5738	// NullFields is a list of field names (e.g. "Breakdown") to include in
5739	// API requests with the JSON null value. By default, fields with empty
5740	// values are omitted from API requests. However, any field with an
5741	// empty value appearing in NullFields will be sent to the server as
5742	// null. It is an error if a field in this list has a non-empty value.
5743	// This may be used to include null fields in Patch requests.
5744	NullFields []string `json:"-"`
5745}
5746
5747func (s *CrossDimensionReachReportCompatibleFields) MarshalJSON() ([]byte, error) {
5748	type NoMethod CrossDimensionReachReportCompatibleFields
5749	raw := NoMethod(*s)
5750	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5751}
5752
5753// CustomFloodlightVariable: A custom floodlight variable.
5754type CustomFloodlightVariable struct {
5755	// Kind: Identifies what kind of resource this is. Value: the fixed
5756	// string "dfareporting#customFloodlightVariable".
5757	Kind string `json:"kind,omitempty"`
5758
5759	// Type: The type of custom floodlight variable to supply a value for.
5760	// These map to the "u[1-20]=" in the tags.
5761	//
5762	// Possible values:
5763	//   "U1"
5764	//   "U2"
5765	//   "U3"
5766	//   "U4"
5767	//   "U5"
5768	//   "U6"
5769	//   "U7"
5770	//   "U8"
5771	//   "U9"
5772	//   "U10"
5773	//   "U11"
5774	//   "U12"
5775	//   "U13"
5776	//   "U14"
5777	//   "U15"
5778	//   "U16"
5779	//   "U17"
5780	//   "U18"
5781	//   "U19"
5782	//   "U20"
5783	//   "U21"
5784	//   "U22"
5785	//   "U23"
5786	//   "U24"
5787	//   "U25"
5788	//   "U26"
5789	//   "U27"
5790	//   "U28"
5791	//   "U29"
5792	//   "U30"
5793	//   "U31"
5794	//   "U32"
5795	//   "U33"
5796	//   "U34"
5797	//   "U35"
5798	//   "U36"
5799	//   "U37"
5800	//   "U38"
5801	//   "U39"
5802	//   "U40"
5803	//   "U41"
5804	//   "U42"
5805	//   "U43"
5806	//   "U44"
5807	//   "U45"
5808	//   "U46"
5809	//   "U47"
5810	//   "U48"
5811	//   "U49"
5812	//   "U50"
5813	//   "U51"
5814	//   "U52"
5815	//   "U53"
5816	//   "U54"
5817	//   "U55"
5818	//   "U56"
5819	//   "U57"
5820	//   "U58"
5821	//   "U59"
5822	//   "U60"
5823	//   "U61"
5824	//   "U62"
5825	//   "U63"
5826	//   "U64"
5827	//   "U65"
5828	//   "U66"
5829	//   "U67"
5830	//   "U68"
5831	//   "U69"
5832	//   "U70"
5833	//   "U71"
5834	//   "U72"
5835	//   "U73"
5836	//   "U74"
5837	//   "U75"
5838	//   "U76"
5839	//   "U77"
5840	//   "U78"
5841	//   "U79"
5842	//   "U80"
5843	//   "U81"
5844	//   "U82"
5845	//   "U83"
5846	//   "U84"
5847	//   "U85"
5848	//   "U86"
5849	//   "U87"
5850	//   "U88"
5851	//   "U89"
5852	//   "U90"
5853	//   "U91"
5854	//   "U92"
5855	//   "U93"
5856	//   "U94"
5857	//   "U95"
5858	//   "U96"
5859	//   "U97"
5860	//   "U98"
5861	//   "U99"
5862	//   "U100"
5863	Type string `json:"type,omitempty"`
5864
5865	// Value: The value of the custom floodlight variable. The length of
5866	// string must not exceed 100 characters.
5867	Value string `json:"value,omitempty"`
5868
5869	// ForceSendFields is a list of field names (e.g. "Kind") to
5870	// unconditionally include in API requests. By default, fields with
5871	// empty or default values are omitted from API requests. However, any
5872	// non-pointer, non-interface field appearing in ForceSendFields will be
5873	// sent to the server regardless of whether the field is empty or not.
5874	// This may be used to include empty fields in Patch requests.
5875	ForceSendFields []string `json:"-"`
5876
5877	// NullFields is a list of field names (e.g. "Kind") to include in API
5878	// requests with the JSON null value. By default, fields with empty
5879	// values are omitted from API requests. However, any field with an
5880	// empty value appearing in NullFields will be sent to the server as
5881	// null. It is an error if a field in this list has a non-empty value.
5882	// This may be used to include null fields in Patch requests.
5883	NullFields []string `json:"-"`
5884}
5885
5886func (s *CustomFloodlightVariable) MarshalJSON() ([]byte, error) {
5887	type NoMethod CustomFloodlightVariable
5888	raw := NoMethod(*s)
5889	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5890}
5891
5892// CustomRichMediaEvents: Represents a Custom Rich Media Events group.
5893type CustomRichMediaEvents struct {
5894	// FilteredEventIds: List of custom rich media event IDs. Dimension
5895	// values must be all of type dfa:richMediaEventTypeIdAndName.
5896	FilteredEventIds []*DimensionValue `json:"filteredEventIds,omitempty"`
5897
5898	// Kind: The kind of resource this is, in this case
5899	// dfareporting#customRichMediaEvents.
5900	Kind string `json:"kind,omitempty"`
5901
5902	// ForceSendFields is a list of field names (e.g. "FilteredEventIds") to
5903	// unconditionally include in API requests. By default, fields with
5904	// empty or default values are omitted from API requests. However, any
5905	// non-pointer, non-interface field appearing in ForceSendFields will be
5906	// sent to the server regardless of whether the field is empty or not.
5907	// This may be used to include empty fields in Patch requests.
5908	ForceSendFields []string `json:"-"`
5909
5910	// NullFields is a list of field names (e.g. "FilteredEventIds") to
5911	// include in API requests with the JSON null value. By default, fields
5912	// with empty values are omitted from API requests. However, any field
5913	// with an empty value appearing in NullFields will be sent to the
5914	// server as null. It is an error if a field in this list has a
5915	// non-empty value. This may be used to include null fields in Patch
5916	// requests.
5917	NullFields []string `json:"-"`
5918}
5919
5920func (s *CustomRichMediaEvents) MarshalJSON() ([]byte, error) {
5921	type NoMethod CustomRichMediaEvents
5922	raw := NoMethod(*s)
5923	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5924}
5925
5926// CustomViewabilityMetric: Custom Viewability Metric
5927type CustomViewabilityMetric struct {
5928	// Configuration: Configuration of the custom viewability metric.
5929	Configuration *CustomViewabilityMetricConfiguration `json:"configuration,omitempty"`
5930
5931	// Id: ID of the custom viewability metric.
5932	Id int64 `json:"id,omitempty,string"`
5933
5934	// Name: Name of the custom viewability metric.
5935	Name string `json:"name,omitempty"`
5936
5937	// ForceSendFields is a list of field names (e.g. "Configuration") to
5938	// unconditionally include in API requests. By default, fields with
5939	// empty or default values are omitted from API requests. However, any
5940	// non-pointer, non-interface field appearing in ForceSendFields will be
5941	// sent to the server regardless of whether the field is empty or not.
5942	// This may be used to include empty fields in Patch requests.
5943	ForceSendFields []string `json:"-"`
5944
5945	// NullFields is a list of field names (e.g. "Configuration") to include
5946	// in API requests with the JSON null value. By default, fields with
5947	// empty values are omitted from API requests. However, any field with
5948	// an empty value appearing in NullFields will be sent to the server as
5949	// null. It is an error if a field in this list has a non-empty value.
5950	// This may be used to include null fields in Patch requests.
5951	NullFields []string `json:"-"`
5952}
5953
5954func (s *CustomViewabilityMetric) MarshalJSON() ([]byte, error) {
5955	type NoMethod CustomViewabilityMetric
5956	raw := NoMethod(*s)
5957	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5958}
5959
5960// CustomViewabilityMetricConfiguration: The attributes, like playtime
5961// and percent onscreen, that define the Custom Viewability Metric.
5962type CustomViewabilityMetricConfiguration struct {
5963	// Audible: Whether the video must be audible to count an impression.
5964	Audible bool `json:"audible,omitempty"`
5965
5966	// TimeMillis: The time in milliseconds the video must play for the
5967	// Custom Viewability Metric to count an impression. If both this and
5968	// timePercent are specified, the earlier of the two will be used.
5969	TimeMillis int64 `json:"timeMillis,omitempty"`
5970
5971	// TimePercent: The percentage of video that must play for the Custom
5972	// Viewability Metric to count an impression. If both this and
5973	// timeMillis are specified, the earlier of the two will be used.
5974	TimePercent int64 `json:"timePercent,omitempty"`
5975
5976	// ViewabilityPercent: The percentage of video that must be on screen
5977	// for the Custom Viewability Metric to count an impression.
5978	ViewabilityPercent int64 `json:"viewabilityPercent,omitempty"`
5979
5980	// ForceSendFields is a list of field names (e.g. "Audible") to
5981	// unconditionally include in API requests. By default, fields with
5982	// empty or default values are omitted from API requests. However, any
5983	// non-pointer, non-interface field appearing in ForceSendFields will be
5984	// sent to the server regardless of whether the field is empty or not.
5985	// This may be used to include empty fields in Patch requests.
5986	ForceSendFields []string `json:"-"`
5987
5988	// NullFields is a list of field names (e.g. "Audible") to include in
5989	// API requests with the JSON null value. By default, fields with empty
5990	// values are omitted from API requests. However, any field with an
5991	// empty value appearing in NullFields will be sent to the server as
5992	// null. It is an error if a field in this list has a non-empty value.
5993	// This may be used to include null fields in Patch requests.
5994	NullFields []string `json:"-"`
5995}
5996
5997func (s *CustomViewabilityMetricConfiguration) MarshalJSON() ([]byte, error) {
5998	type NoMethod CustomViewabilityMetricConfiguration
5999	raw := NoMethod(*s)
6000	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6001}
6002
6003// DateRange: Represents a date range.
6004type DateRange struct {
6005	EndDate string `json:"endDate,omitempty"`
6006
6007	// Kind: The kind of resource this is, in this case
6008	// dfareporting#dateRange.
6009	Kind string `json:"kind,omitempty"`
6010
6011	// RelativeDateRange: The date range relative to the date of when the
6012	// report is run.
6013	//
6014	// Possible values:
6015	//   "TODAY"
6016	//   "YESTERDAY"
6017	//   "WEEK_TO_DATE"
6018	//   "MONTH_TO_DATE"
6019	//   "QUARTER_TO_DATE"
6020	//   "YEAR_TO_DATE"
6021	//   "PREVIOUS_WEEK"
6022	//   "PREVIOUS_MONTH"
6023	//   "PREVIOUS_QUARTER"
6024	//   "PREVIOUS_YEAR"
6025	//   "LAST_7_DAYS"
6026	//   "LAST_30_DAYS"
6027	//   "LAST_90_DAYS"
6028	//   "LAST_365_DAYS"
6029	//   "LAST_24_MONTHS"
6030	//   "LAST_14_DAYS"
6031	//   "LAST_60_DAYS"
6032	RelativeDateRange string `json:"relativeDateRange,omitempty"`
6033
6034	StartDate string `json:"startDate,omitempty"`
6035
6036	// ForceSendFields is a list of field names (e.g. "EndDate") to
6037	// unconditionally include in API requests. By default, fields with
6038	// empty or default values are omitted from API requests. However, any
6039	// non-pointer, non-interface field appearing in ForceSendFields will be
6040	// sent to the server regardless of whether the field is empty or not.
6041	// This may be used to include empty fields in Patch requests.
6042	ForceSendFields []string `json:"-"`
6043
6044	// NullFields is a list of field names (e.g. "EndDate") to include in
6045	// API requests with the JSON null value. By default, fields with empty
6046	// values are omitted from API requests. However, any field with an
6047	// empty value appearing in NullFields will be sent to the server as
6048	// null. It is an error if a field in this list has a non-empty value.
6049	// This may be used to include null fields in Patch requests.
6050	NullFields []string `json:"-"`
6051}
6052
6053func (s *DateRange) MarshalJSON() ([]byte, error) {
6054	type NoMethod DateRange
6055	raw := NoMethod(*s)
6056	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6057}
6058
6059// DayPartTargeting: Day Part Targeting.
6060type DayPartTargeting struct {
6061	// DaysOfWeek: Days of the week when the ad will serve. Acceptable
6062	// values are: - "SUNDAY" - "MONDAY" - "TUESDAY" - "WEDNESDAY" -
6063	// "THURSDAY" - "FRIDAY" - "SATURDAY"
6064	//
6065	// Possible values:
6066	//   "MONDAY"
6067	//   "TUESDAY"
6068	//   "WEDNESDAY"
6069	//   "THURSDAY"
6070	//   "FRIDAY"
6071	//   "SATURDAY"
6072	//   "SUNDAY"
6073	DaysOfWeek []string `json:"daysOfWeek,omitempty"`
6074
6075	// HoursOfDay: Hours of the day when the ad will serve, where 0 is
6076	// midnight to 1 AM and 23 is 11 PM to midnight. Can be specified with
6077	// days of week, in which case the ad would serve during these hours on
6078	// the specified days. For example if Monday, Wednesday, Friday are the
6079	// days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is
6080	// specified, the ad would serve Monday, Wednesdays, and Fridays at
6081	// 9-10am and 3-5pm. Acceptable values are 0 to 23, inclusive.
6082	HoursOfDay []int64 `json:"hoursOfDay,omitempty"`
6083
6084	// UserLocalTime: Whether or not to use the user's local time. If false,
6085	// the America/New York time zone applies.
6086	UserLocalTime bool `json:"userLocalTime,omitempty"`
6087
6088	// ForceSendFields is a list of field names (e.g. "DaysOfWeek") to
6089	// unconditionally include in API requests. By default, fields with
6090	// empty or default values are omitted from API requests. However, any
6091	// non-pointer, non-interface field appearing in ForceSendFields will be
6092	// sent to the server regardless of whether the field is empty or not.
6093	// This may be used to include empty fields in Patch requests.
6094	ForceSendFields []string `json:"-"`
6095
6096	// NullFields is a list of field names (e.g. "DaysOfWeek") to include in
6097	// API requests with the JSON null value. By default, fields with empty
6098	// values are omitted from API requests. However, any field with an
6099	// empty value appearing in NullFields will be sent to the server as
6100	// null. It is an error if a field in this list has a non-empty value.
6101	// This may be used to include null fields in Patch requests.
6102	NullFields []string `json:"-"`
6103}
6104
6105func (s *DayPartTargeting) MarshalJSON() ([]byte, error) {
6106	type NoMethod DayPartTargeting
6107	raw := NoMethod(*s)
6108	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6109}
6110
6111// DeepLink: Contains information about a landing page deep link.
6112type DeepLink struct {
6113	// AppUrl: The URL of the mobile app being linked to.
6114	AppUrl string `json:"appUrl,omitempty"`
6115
6116	// FallbackUrl: The fallback URL. This URL will be served to users who
6117	// do not have the mobile app installed.
6118	FallbackUrl string `json:"fallbackUrl,omitempty"`
6119
6120	// Kind: Identifies what kind of resource this is. Value: the fixed
6121	// string "dfareporting#deepLink".
6122	Kind string `json:"kind,omitempty"`
6123
6124	// MobileApp: The mobile app targeted by this deep link.
6125	MobileApp *MobileApp `json:"mobileApp,omitempty"`
6126
6127	// RemarketingListIds: Ads served to users on these remarketing lists
6128	// will use this deep link. Applicable when mobileApp.directory is
6129	// APPLE_APP_STORE.
6130	RemarketingListIds googleapi.Int64s `json:"remarketingListIds,omitempty"`
6131
6132	// ForceSendFields is a list of field names (e.g. "AppUrl") to
6133	// unconditionally include in API requests. By default, fields with
6134	// empty or default values are omitted from API requests. However, any
6135	// non-pointer, non-interface field appearing in ForceSendFields will be
6136	// sent to the server regardless of whether the field is empty or not.
6137	// This may be used to include empty fields in Patch requests.
6138	ForceSendFields []string `json:"-"`
6139
6140	// NullFields is a list of field names (e.g. "AppUrl") to include in API
6141	// requests with the JSON null value. By default, fields with empty
6142	// values are omitted from API requests. However, any field with an
6143	// empty value appearing in NullFields will be sent to the server as
6144	// null. It is an error if a field in this list has a non-empty value.
6145	// This may be used to include null fields in Patch requests.
6146	NullFields []string `json:"-"`
6147}
6148
6149func (s *DeepLink) MarshalJSON() ([]byte, error) {
6150	type NoMethod DeepLink
6151	raw := NoMethod(*s)
6152	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6153}
6154
6155// DefaultClickThroughEventTagProperties: Properties of inheriting and
6156// overriding the default click-through event tag. A campaign may
6157// override the event tag defined at the advertiser level, and an ad may
6158// also override the campaign's setting further.
6159type DefaultClickThroughEventTagProperties struct {
6160	// DefaultClickThroughEventTagId: ID of the click-through event tag to
6161	// apply to all ads in this entity's scope.
6162	DefaultClickThroughEventTagId int64 `json:"defaultClickThroughEventTagId,omitempty,string"`
6163
6164	// OverrideInheritedEventTag: Whether this entity should override the
6165	// inherited default click-through event tag with its own defined value.
6166	OverrideInheritedEventTag bool `json:"overrideInheritedEventTag,omitempty"`
6167
6168	// ForceSendFields is a list of field names (e.g.
6169	// "DefaultClickThroughEventTagId") to unconditionally include in API
6170	// requests. By default, fields with empty or default values are omitted
6171	// from API requests. However, any non-pointer, non-interface field
6172	// appearing in ForceSendFields will be sent to the server regardless of
6173	// whether the field is empty or not. This may be used to include empty
6174	// fields in Patch requests.
6175	ForceSendFields []string `json:"-"`
6176
6177	// NullFields is a list of field names (e.g.
6178	// "DefaultClickThroughEventTagId") to include in API requests with the
6179	// JSON null value. By default, fields with empty values are omitted
6180	// from API requests. However, any field with an empty value appearing
6181	// in NullFields will be sent to the server as null. It is an error if a
6182	// field in this list has a non-empty value. This may be used to include
6183	// null fields in Patch requests.
6184	NullFields []string `json:"-"`
6185}
6186
6187func (s *DefaultClickThroughEventTagProperties) MarshalJSON() ([]byte, error) {
6188	type NoMethod DefaultClickThroughEventTagProperties
6189	raw := NoMethod(*s)
6190	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6191}
6192
6193// DeliverySchedule: Delivery Schedule.
6194type DeliverySchedule struct {
6195	// FrequencyCap: Limit on the number of times an individual user can be
6196	// served the ad within a specified period of time.
6197	FrequencyCap *FrequencyCap `json:"frequencyCap,omitempty"`
6198
6199	// HardCutoff: Whether or not hard cutoff is enabled. If true, the ad
6200	// will not serve after the end date and time. Otherwise the ad will
6201	// continue to be served until it has reached its delivery goals.
6202	HardCutoff bool `json:"hardCutoff,omitempty"`
6203
6204	// ImpressionRatio: Impression ratio for this ad. This ratio determines
6205	// how often each ad is served relative to the others. For example, if
6206	// ad A has an impression ratio of 1 and ad B has an impression ratio of
6207	// 3, then Campaign Manager will serve ad B three times as often as ad
6208	// A. Acceptable values are 1 to 10, inclusive.
6209	ImpressionRatio int64 `json:"impressionRatio,omitempty,string"`
6210
6211	// Priority: Serving priority of an ad, with respect to other ads. The
6212	// lower the priority number, the greater the priority with which it is
6213	// served.
6214	//
6215	// Possible values:
6216	//   "AD_PRIORITY_01"
6217	//   "AD_PRIORITY_02"
6218	//   "AD_PRIORITY_03"
6219	//   "AD_PRIORITY_04"
6220	//   "AD_PRIORITY_05"
6221	//   "AD_PRIORITY_06"
6222	//   "AD_PRIORITY_07"
6223	//   "AD_PRIORITY_08"
6224	//   "AD_PRIORITY_09"
6225	//   "AD_PRIORITY_10"
6226	//   "AD_PRIORITY_11"
6227	//   "AD_PRIORITY_12"
6228	//   "AD_PRIORITY_13"
6229	//   "AD_PRIORITY_14"
6230	//   "AD_PRIORITY_15"
6231	//   "AD_PRIORITY_16"
6232	Priority string `json:"priority,omitempty"`
6233
6234	// ForceSendFields is a list of field names (e.g. "FrequencyCap") to
6235	// unconditionally include in API requests. By default, fields with
6236	// empty or default values are omitted from API requests. However, any
6237	// non-pointer, non-interface field appearing in ForceSendFields will be
6238	// sent to the server regardless of whether the field is empty or not.
6239	// This may be used to include empty fields in Patch requests.
6240	ForceSendFields []string `json:"-"`
6241
6242	// NullFields is a list of field names (e.g. "FrequencyCap") to include
6243	// in API requests with the JSON null value. By default, fields with
6244	// empty values are omitted from API requests. However, any field with
6245	// an empty value appearing in NullFields will be sent to the server as
6246	// null. It is an error if a field in this list has a non-empty value.
6247	// This may be used to include null fields in Patch requests.
6248	NullFields []string `json:"-"`
6249}
6250
6251func (s *DeliverySchedule) MarshalJSON() ([]byte, error) {
6252	type NoMethod DeliverySchedule
6253	raw := NoMethod(*s)
6254	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6255}
6256
6257// DfpSettings: Google Ad Manager Settings
6258type DfpSettings struct {
6259	// DfpNetworkCode: Ad Manager network code for this directory site.
6260	DfpNetworkCode string `json:"dfpNetworkCode,omitempty"`
6261
6262	// DfpNetworkName: Ad Manager network name for this directory site.
6263	DfpNetworkName string `json:"dfpNetworkName,omitempty"`
6264
6265	// ProgrammaticPlacementAccepted: Whether this directory site accepts
6266	// programmatic placements.
6267	ProgrammaticPlacementAccepted bool `json:"programmaticPlacementAccepted,omitempty"`
6268
6269	// PubPaidPlacementAccepted: Whether this directory site accepts
6270	// publisher-paid tags.
6271	PubPaidPlacementAccepted bool `json:"pubPaidPlacementAccepted,omitempty"`
6272
6273	// PublisherPortalOnly: Whether this directory site is available only
6274	// via Publisher Portal.
6275	PublisherPortalOnly bool `json:"publisherPortalOnly,omitempty"`
6276
6277	// ForceSendFields is a list of field names (e.g. "DfpNetworkCode") to
6278	// unconditionally include in API requests. By default, fields with
6279	// empty or default values are omitted from API requests. However, any
6280	// non-pointer, non-interface field appearing in ForceSendFields will be
6281	// sent to the server regardless of whether the field is empty or not.
6282	// This may be used to include empty fields in Patch requests.
6283	ForceSendFields []string `json:"-"`
6284
6285	// NullFields is a list of field names (e.g. "DfpNetworkCode") to
6286	// include in API requests with the JSON null value. By default, fields
6287	// with empty values are omitted from API requests. However, any field
6288	// with an empty value appearing in NullFields will be sent to the
6289	// server as null. It is an error if a field in this list has a
6290	// non-empty value. This may be used to include null fields in Patch
6291	// requests.
6292	NullFields []string `json:"-"`
6293}
6294
6295func (s *DfpSettings) MarshalJSON() ([]byte, error) {
6296	type NoMethod DfpSettings
6297	raw := NoMethod(*s)
6298	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6299}
6300
6301// Dimension: Represents a dimension.
6302type Dimension struct {
6303	// Kind: The kind of resource this is, in this case
6304	// dfareporting#dimension.
6305	Kind string `json:"kind,omitempty"`
6306
6307	// Name: The dimension name, e.g. dfa:advertiser
6308	Name string `json:"name,omitempty"`
6309
6310	// ForceSendFields is a list of field names (e.g. "Kind") to
6311	// unconditionally include in API requests. By default, fields with
6312	// empty or default values are omitted from API requests. However, any
6313	// non-pointer, non-interface field appearing in ForceSendFields will be
6314	// sent to the server regardless of whether the field is empty or not.
6315	// This may be used to include empty fields in Patch requests.
6316	ForceSendFields []string `json:"-"`
6317
6318	// NullFields is a list of field names (e.g. "Kind") to include in API
6319	// requests with the JSON null value. By default, fields with empty
6320	// values are omitted from API requests. However, any field with an
6321	// empty value appearing in NullFields will be sent to the server as
6322	// null. It is an error if a field in this list has a non-empty value.
6323	// This may be used to include null fields in Patch requests.
6324	NullFields []string `json:"-"`
6325}
6326
6327func (s *Dimension) MarshalJSON() ([]byte, error) {
6328	type NoMethod Dimension
6329	raw := NoMethod(*s)
6330	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6331}
6332
6333// DimensionFilter: Represents a dimension filter.
6334type DimensionFilter struct {
6335	// DimensionName: The name of the dimension to filter.
6336	DimensionName string `json:"dimensionName,omitempty"`
6337
6338	// Kind: The kind of resource this is, in this case
6339	// dfareporting#dimensionFilter.
6340	Kind string `json:"kind,omitempty"`
6341
6342	// Value: The value of the dimension to filter.
6343	Value string `json:"value,omitempty"`
6344
6345	// ForceSendFields is a list of field names (e.g. "DimensionName") to
6346	// unconditionally include in API requests. By default, fields with
6347	// empty or default values are omitted from API requests. However, any
6348	// non-pointer, non-interface field appearing in ForceSendFields will be
6349	// sent to the server regardless of whether the field is empty or not.
6350	// This may be used to include empty fields in Patch requests.
6351	ForceSendFields []string `json:"-"`
6352
6353	// NullFields is a list of field names (e.g. "DimensionName") to include
6354	// in API requests with the JSON null value. By default, fields with
6355	// empty values are omitted from API requests. However, any field with
6356	// an empty value appearing in NullFields will be sent to the server as
6357	// null. It is an error if a field in this list has a non-empty value.
6358	// This may be used to include null fields in Patch requests.
6359	NullFields []string `json:"-"`
6360}
6361
6362func (s *DimensionFilter) MarshalJSON() ([]byte, error) {
6363	type NoMethod DimensionFilter
6364	raw := NoMethod(*s)
6365	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6366}
6367
6368// DimensionValue: Represents a DimensionValue resource.
6369type DimensionValue struct {
6370	// DimensionName: The name of the dimension.
6371	DimensionName string `json:"dimensionName,omitempty"`
6372
6373	// Etag: The eTag of this response for caching purposes.
6374	Etag string `json:"etag,omitempty"`
6375
6376	// Id: The ID associated with the value if available.
6377	Id string `json:"id,omitempty"`
6378
6379	// Kind: The kind of resource this is, in this case
6380	// dfareporting#dimensionValue.
6381	Kind string `json:"kind,omitempty"`
6382
6383	// MatchType: Determines how the 'value' field is matched when
6384	// filtering. If not specified, defaults to EXACT. If set to
6385	// WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable
6386	// length character sequences, and it can be escaped with a backslash.
6387	// Note, only paid search dimensions ('dfa:paidSearch*') allow a
6388	// matchType other than EXACT.
6389	//
6390	// Possible values:
6391	//   "EXACT"
6392	//   "BEGINS_WITH"
6393	//   "CONTAINS"
6394	//   "WILDCARD_EXPRESSION"
6395	MatchType string `json:"matchType,omitempty"`
6396
6397	// Value: The value of the dimension.
6398	Value string `json:"value,omitempty"`
6399
6400	// ForceSendFields is a list of field names (e.g. "DimensionName") to
6401	// unconditionally include in API requests. By default, fields with
6402	// empty or default values are omitted from API requests. However, any
6403	// non-pointer, non-interface field appearing in ForceSendFields will be
6404	// sent to the server regardless of whether the field is empty or not.
6405	// This may be used to include empty fields in Patch requests.
6406	ForceSendFields []string `json:"-"`
6407
6408	// NullFields is a list of field names (e.g. "DimensionName") to include
6409	// in API requests with the JSON null value. By default, fields with
6410	// empty values are omitted from API requests. However, any field with
6411	// an empty value appearing in NullFields will be sent to the server as
6412	// null. It is an error if a field in this list has a non-empty value.
6413	// This may be used to include null fields in Patch requests.
6414	NullFields []string `json:"-"`
6415}
6416
6417func (s *DimensionValue) MarshalJSON() ([]byte, error) {
6418	type NoMethod DimensionValue
6419	raw := NoMethod(*s)
6420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6421}
6422
6423// DimensionValueList: Represents the list of DimensionValue resources.
6424type DimensionValueList struct {
6425	// Etag: The eTag of this response for caching purposes.
6426	Etag string `json:"etag,omitempty"`
6427
6428	// Items: The dimension values returned in this response.
6429	Items []*DimensionValue `json:"items,omitempty"`
6430
6431	// Kind: The kind of list this is, in this case
6432	// dfareporting#dimensionValueList.
6433	Kind string `json:"kind,omitempty"`
6434
6435	// NextPageToken: Continuation token used to page through dimension
6436	// values. To retrieve the next page of results, set the next request's
6437	// "pageToken" to the value of this field. The page token is only valid
6438	// for a limited amount of time and should not be persisted.
6439	NextPageToken string `json:"nextPageToken,omitempty"`
6440
6441	// ServerResponse contains the HTTP response code and headers from the
6442	// server.
6443	googleapi.ServerResponse `json:"-"`
6444
6445	// ForceSendFields is a list of field names (e.g. "Etag") to
6446	// unconditionally include in API requests. By default, fields with
6447	// empty or default values are omitted from API requests. However, any
6448	// non-pointer, non-interface field appearing in ForceSendFields will be
6449	// sent to the server regardless of whether the field is empty or not.
6450	// This may be used to include empty fields in Patch requests.
6451	ForceSendFields []string `json:"-"`
6452
6453	// NullFields is a list of field names (e.g. "Etag") to include in API
6454	// requests with the JSON null value. By default, fields with empty
6455	// values are omitted from API requests. However, any field with an
6456	// empty value appearing in NullFields will be sent to the server as
6457	// null. It is an error if a field in this list has a non-empty value.
6458	// This may be used to include null fields in Patch requests.
6459	NullFields []string `json:"-"`
6460}
6461
6462func (s *DimensionValueList) MarshalJSON() ([]byte, error) {
6463	type NoMethod DimensionValueList
6464	raw := NoMethod(*s)
6465	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6466}
6467
6468// DimensionValueRequest: Represents a DimensionValuesRequest.
6469type DimensionValueRequest struct {
6470	// DimensionName: The name of the dimension for which values should be
6471	// requested.
6472	DimensionName string `json:"dimensionName,omitempty"`
6473
6474	EndDate string `json:"endDate,omitempty"`
6475
6476	// Filters: The list of filters by which to filter values. The filters
6477	// are ANDed.
6478	Filters []*DimensionFilter `json:"filters,omitempty"`
6479
6480	// Kind: The kind of request this is, in this case
6481	// dfareporting#dimensionValueRequest .
6482	Kind string `json:"kind,omitempty"`
6483
6484	StartDate string `json:"startDate,omitempty"`
6485
6486	// ForceSendFields is a list of field names (e.g. "DimensionName") to
6487	// unconditionally include in API requests. By default, fields with
6488	// empty or default values are omitted from API requests. However, any
6489	// non-pointer, non-interface field appearing in ForceSendFields will be
6490	// sent to the server regardless of whether the field is empty or not.
6491	// This may be used to include empty fields in Patch requests.
6492	ForceSendFields []string `json:"-"`
6493
6494	// NullFields is a list of field names (e.g. "DimensionName") to include
6495	// in API requests with the JSON null value. By default, fields with
6496	// empty values are omitted from API requests. However, any field with
6497	// an empty value appearing in NullFields will be sent to the server as
6498	// null. It is an error if a field in this list has a non-empty value.
6499	// This may be used to include null fields in Patch requests.
6500	NullFields []string `json:"-"`
6501}
6502
6503func (s *DimensionValueRequest) MarshalJSON() ([]byte, error) {
6504	type NoMethod DimensionValueRequest
6505	raw := NoMethod(*s)
6506	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6507}
6508
6509// DirectorySite: DirectorySites contains properties of a website from
6510// the Site Directory. Sites need to be added to an account via the
6511// Sites resource before they can be assigned to a placement.
6512type DirectorySite struct {
6513	// Id: ID of this directory site. This is a read-only, auto-generated
6514	// field.
6515	Id int64 `json:"id,omitempty,string"`
6516
6517	// IdDimensionValue: Dimension value for the ID of this directory site.
6518	// This is a read-only, auto-generated field.
6519	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
6520
6521	// InpageTagFormats: Tag types for regular placements. Acceptable values
6522	// are: - "STANDARD" - "IFRAME_JAVASCRIPT_INPAGE" -
6523	// "INTERNAL_REDIRECT_INPAGE" - "JAVASCRIPT_INPAGE"
6524	//
6525	// Possible values:
6526	//   "STANDARD"
6527	//   "IFRAME_JAVASCRIPT_INPAGE"
6528	//   "INTERNAL_REDIRECT_INPAGE"
6529	//   "JAVASCRIPT_INPAGE"
6530	InpageTagFormats []string `json:"inpageTagFormats,omitempty"`
6531
6532	// InterstitialTagFormats: Tag types for interstitial placements.
6533	// Acceptable values are: - "IFRAME_JAVASCRIPT_INTERSTITIAL" -
6534	// "INTERNAL_REDIRECT_INTERSTITIAL" - "JAVASCRIPT_INTERSTITIAL"
6535	//
6536	// Possible values:
6537	//   "IFRAME_JAVASCRIPT_INTERSTITIAL"
6538	//   "INTERNAL_REDIRECT_INTERSTITIAL"
6539	//   "JAVASCRIPT_INTERSTITIAL"
6540	InterstitialTagFormats []string `json:"interstitialTagFormats,omitempty"`
6541
6542	// Kind: Identifies what kind of resource this is. Value: the fixed
6543	// string "dfareporting#directorySite".
6544	Kind string `json:"kind,omitempty"`
6545
6546	// Name: Name of this directory site.
6547	Name string `json:"name,omitempty"`
6548
6549	// Settings: Directory site settings.
6550	Settings *DirectorySiteSettings `json:"settings,omitempty"`
6551
6552	// Url: URL of this directory site.
6553	Url string `json:"url,omitempty"`
6554
6555	// ServerResponse contains the HTTP response code and headers from the
6556	// server.
6557	googleapi.ServerResponse `json:"-"`
6558
6559	// ForceSendFields is a list of field names (e.g. "Id") to
6560	// unconditionally include in API requests. By default, fields with
6561	// empty or default values are omitted from API requests. However, any
6562	// non-pointer, non-interface field appearing in ForceSendFields will be
6563	// sent to the server regardless of whether the field is empty or not.
6564	// This may be used to include empty fields in Patch requests.
6565	ForceSendFields []string `json:"-"`
6566
6567	// NullFields is a list of field names (e.g. "Id") to include in API
6568	// requests with the JSON null value. By default, fields with empty
6569	// values are omitted from API requests. However, any field with an
6570	// empty value appearing in NullFields will be sent to the server as
6571	// null. It is an error if a field in this list has a non-empty value.
6572	// This may be used to include null fields in Patch requests.
6573	NullFields []string `json:"-"`
6574}
6575
6576func (s *DirectorySite) MarshalJSON() ([]byte, error) {
6577	type NoMethod DirectorySite
6578	raw := NoMethod(*s)
6579	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6580}
6581
6582// DirectorySiteSettings: Directory Site Settings
6583type DirectorySiteSettings struct {
6584	// ActiveViewOptOut: Whether this directory site has disabled active
6585	// view creatives.
6586	ActiveViewOptOut bool `json:"activeViewOptOut,omitempty"`
6587
6588	// DfpSettings: Directory site Ad Manager settings.
6589	DfpSettings *DfpSettings `json:"dfpSettings,omitempty"`
6590
6591	// InstreamVideoPlacementAccepted: Whether this site accepts in-stream
6592	// video ads.
6593	InstreamVideoPlacementAccepted bool `json:"instreamVideoPlacementAccepted,omitempty"`
6594
6595	// InterstitialPlacementAccepted: Whether this site accepts interstitial
6596	// ads.
6597	InterstitialPlacementAccepted bool `json:"interstitialPlacementAccepted,omitempty"`
6598
6599	// ForceSendFields is a list of field names (e.g. "ActiveViewOptOut") to
6600	// unconditionally include in API requests. By default, fields with
6601	// empty or default values are omitted from API requests. However, any
6602	// non-pointer, non-interface field appearing in ForceSendFields will be
6603	// sent to the server regardless of whether the field is empty or not.
6604	// This may be used to include empty fields in Patch requests.
6605	ForceSendFields []string `json:"-"`
6606
6607	// NullFields is a list of field names (e.g. "ActiveViewOptOut") to
6608	// include in API requests with the JSON null value. By default, fields
6609	// with empty values are omitted from API requests. However, any field
6610	// with an empty value appearing in NullFields will be sent to the
6611	// server as null. It is an error if a field in this list has a
6612	// non-empty value. This may be used to include null fields in Patch
6613	// requests.
6614	NullFields []string `json:"-"`
6615}
6616
6617func (s *DirectorySiteSettings) MarshalJSON() ([]byte, error) {
6618	type NoMethod DirectorySiteSettings
6619	raw := NoMethod(*s)
6620	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6621}
6622
6623// DirectorySitesListResponse: Directory Site List Response
6624type DirectorySitesListResponse struct {
6625	// DirectorySites: Directory site collection.
6626	DirectorySites []*DirectorySite `json:"directorySites,omitempty"`
6627
6628	// Kind: Identifies what kind of resource this is. Value: the fixed
6629	// string "dfareporting#directorySitesListResponse".
6630	Kind string `json:"kind,omitempty"`
6631
6632	// NextPageToken: Pagination token to be used for the next list
6633	// operation.
6634	NextPageToken string `json:"nextPageToken,omitempty"`
6635
6636	// ServerResponse contains the HTTP response code and headers from the
6637	// server.
6638	googleapi.ServerResponse `json:"-"`
6639
6640	// ForceSendFields is a list of field names (e.g. "DirectorySites") to
6641	// unconditionally include in API requests. By default, fields with
6642	// empty or default values are omitted from API requests. However, any
6643	// non-pointer, non-interface field appearing in ForceSendFields will be
6644	// sent to the server regardless of whether the field is empty or not.
6645	// This may be used to include empty fields in Patch requests.
6646	ForceSendFields []string `json:"-"`
6647
6648	// NullFields is a list of field names (e.g. "DirectorySites") to
6649	// include in API requests with the JSON null value. By default, fields
6650	// with empty values are omitted from API requests. However, any field
6651	// with an empty value appearing in NullFields will be sent to the
6652	// server as null. It is an error if a field in this list has a
6653	// non-empty value. This may be used to include null fields in Patch
6654	// requests.
6655	NullFields []string `json:"-"`
6656}
6657
6658func (s *DirectorySitesListResponse) MarshalJSON() ([]byte, error) {
6659	type NoMethod DirectorySitesListResponse
6660	raw := NoMethod(*s)
6661	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6662}
6663
6664// DisjunctiveMatchStatement: Represents a Disjunctive Match Statement
6665// resource, which is a conjunction (and) of disjunctive (or) boolean
6666// statements.
6667type DisjunctiveMatchStatement struct {
6668	// EventFilters: The event filters contained within this disjunctive
6669	// match statement.
6670	EventFilters []*EventFilter `json:"eventFilters,omitempty"`
6671
6672	// Kind: The kind of resource this is, in this case
6673	// dfareporting#disjunctiveMatchStatement.
6674	Kind string `json:"kind,omitempty"`
6675
6676	// ForceSendFields is a list of field names (e.g. "EventFilters") to
6677	// unconditionally include in API requests. By default, fields with
6678	// empty or default values are omitted from API requests. However, any
6679	// non-pointer, non-interface field appearing in ForceSendFields will be
6680	// sent to the server regardless of whether the field is empty or not.
6681	// This may be used to include empty fields in Patch requests.
6682	ForceSendFields []string `json:"-"`
6683
6684	// NullFields is a list of field names (e.g. "EventFilters") to include
6685	// in API requests with the JSON null value. By default, fields with
6686	// empty values are omitted from API requests. However, any field with
6687	// an empty value appearing in NullFields will be sent to the server as
6688	// null. It is an error if a field in this list has a non-empty value.
6689	// This may be used to include null fields in Patch requests.
6690	NullFields []string `json:"-"`
6691}
6692
6693func (s *DisjunctiveMatchStatement) MarshalJSON() ([]byte, error) {
6694	type NoMethod DisjunctiveMatchStatement
6695	raw := NoMethod(*s)
6696	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6697}
6698
6699// DynamicTargetingKey: Contains properties of a dynamic targeting key.
6700// Dynamic targeting keys are unique, user-friendly labels, created at
6701// the advertiser level in DCM, that can be assigned to ads, creatives,
6702// and placements and used for targeting with Studio dynamic creatives.
6703// Use these labels instead of numeric Campaign Manager IDs (such as
6704// placement IDs) to save time and avoid errors in your dynamic feeds.
6705type DynamicTargetingKey struct {
6706	// Kind: Identifies what kind of resource this is. Value: the fixed
6707	// string "dfareporting#dynamicTargetingKey".
6708	Kind string `json:"kind,omitempty"`
6709
6710	// Name: Name of this dynamic targeting key. This is a required field.
6711	// Must be less than 256 characters long and cannot contain commas. All
6712	// characters are converted to lowercase.
6713	Name string `json:"name,omitempty"`
6714
6715	// ObjectId: ID of the object of this dynamic targeting key. This is a
6716	// required field.
6717	ObjectId int64 `json:"objectId,omitempty,string"`
6718
6719	// ObjectType: Type of the object of this dynamic targeting key. This is
6720	// a required field.
6721	//
6722	// Possible values:
6723	//   "OBJECT_ADVERTISER"
6724	//   "OBJECT_AD"
6725	//   "OBJECT_CREATIVE"
6726	//   "OBJECT_PLACEMENT"
6727	ObjectType string `json:"objectType,omitempty"`
6728
6729	// ServerResponse contains the HTTP response code and headers from the
6730	// server.
6731	googleapi.ServerResponse `json:"-"`
6732
6733	// ForceSendFields is a list of field names (e.g. "Kind") to
6734	// unconditionally include in API requests. By default, fields with
6735	// empty or default values are omitted from API requests. However, any
6736	// non-pointer, non-interface field appearing in ForceSendFields will be
6737	// sent to the server regardless of whether the field is empty or not.
6738	// This may be used to include empty fields in Patch requests.
6739	ForceSendFields []string `json:"-"`
6740
6741	// NullFields is a list of field names (e.g. "Kind") to include in API
6742	// requests with the JSON null value. By default, fields with empty
6743	// values are omitted from API requests. However, any field with an
6744	// empty value appearing in NullFields will be sent to the server as
6745	// null. It is an error if a field in this list has a non-empty value.
6746	// This may be used to include null fields in Patch requests.
6747	NullFields []string `json:"-"`
6748}
6749
6750func (s *DynamicTargetingKey) MarshalJSON() ([]byte, error) {
6751	type NoMethod DynamicTargetingKey
6752	raw := NoMethod(*s)
6753	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6754}
6755
6756// DynamicTargetingKeysListResponse: Dynamic Targeting Key List Response
6757type DynamicTargetingKeysListResponse struct {
6758	// DynamicTargetingKeys: Dynamic targeting key collection.
6759	DynamicTargetingKeys []*DynamicTargetingKey `json:"dynamicTargetingKeys,omitempty"`
6760
6761	// Kind: Identifies what kind of resource this is. Value: the fixed
6762	// string "dfareporting#dynamicTargetingKeysListResponse".
6763	Kind string `json:"kind,omitempty"`
6764
6765	// ServerResponse contains the HTTP response code and headers from the
6766	// server.
6767	googleapi.ServerResponse `json:"-"`
6768
6769	// ForceSendFields is a list of field names (e.g.
6770	// "DynamicTargetingKeys") to unconditionally include in API requests.
6771	// By default, fields with empty or default values are omitted from API
6772	// requests. However, any non-pointer, non-interface field appearing in
6773	// ForceSendFields will be sent to the server regardless of whether the
6774	// field is empty or not. This may be used to include empty fields in
6775	// Patch requests.
6776	ForceSendFields []string `json:"-"`
6777
6778	// NullFields is a list of field names (e.g. "DynamicTargetingKeys") to
6779	// include in API requests with the JSON null value. By default, fields
6780	// with empty values are omitted from API requests. However, any field
6781	// with an empty value appearing in NullFields will be sent to the
6782	// server as null. It is an error if a field in this list has a
6783	// non-empty value. This may be used to include null fields in Patch
6784	// requests.
6785	NullFields []string `json:"-"`
6786}
6787
6788func (s *DynamicTargetingKeysListResponse) MarshalJSON() ([]byte, error) {
6789	type NoMethod DynamicTargetingKeysListResponse
6790	raw := NoMethod(*s)
6791	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6792}
6793
6794// EncryptionInfo: A description of how user IDs are encrypted.
6795type EncryptionInfo struct {
6796	// EncryptionEntityId: The encryption entity ID. This should match the
6797	// encryption configuration for ad serving or Data Transfer.
6798	EncryptionEntityId int64 `json:"encryptionEntityId,omitempty,string"`
6799
6800	// EncryptionEntityType: The encryption entity type. This should match
6801	// the encryption configuration for ad serving or Data Transfer.
6802	//
6803	// Possible values:
6804	//   "ENCRYPTION_ENTITY_TYPE_UNKNOWN"
6805	//   "DCM_ACCOUNT"
6806	//   "DCM_ADVERTISER"
6807	//   "DBM_PARTNER"
6808	//   "DBM_ADVERTISER"
6809	//   "ADWORDS_CUSTOMER"
6810	//   "DFP_NETWORK_CODE"
6811	EncryptionEntityType string `json:"encryptionEntityType,omitempty"`
6812
6813	// EncryptionSource: Describes whether the encrypted cookie was received
6814	// from ad serving (the %m macro) or from Data Transfer.
6815	//
6816	// Possible values:
6817	//   "ENCRYPTION_SCOPE_UNKNOWN"
6818	//   "AD_SERVING"
6819	//   "DATA_TRANSFER"
6820	EncryptionSource string `json:"encryptionSource,omitempty"`
6821
6822	// Kind: Identifies what kind of resource this is. Value: the fixed
6823	// string "dfareporting#encryptionInfo".
6824	Kind string `json:"kind,omitempty"`
6825
6826	// ForceSendFields is a list of field names (e.g. "EncryptionEntityId")
6827	// to unconditionally include in API requests. By default, fields with
6828	// empty or default values are omitted from API requests. However, any
6829	// non-pointer, non-interface field appearing in ForceSendFields will be
6830	// sent to the server regardless of whether the field is empty or not.
6831	// This may be used to include empty fields in Patch requests.
6832	ForceSendFields []string `json:"-"`
6833
6834	// NullFields is a list of field names (e.g. "EncryptionEntityId") to
6835	// include in API requests with the JSON null value. By default, fields
6836	// with empty values are omitted from API requests. However, any field
6837	// with an empty value appearing in NullFields will be sent to the
6838	// server as null. It is an error if a field in this list has a
6839	// non-empty value. This may be used to include null fields in Patch
6840	// requests.
6841	NullFields []string `json:"-"`
6842}
6843
6844func (s *EncryptionInfo) MarshalJSON() ([]byte, error) {
6845	type NoMethod EncryptionInfo
6846	raw := NoMethod(*s)
6847	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6848}
6849
6850// EventFilter: Represents a DfaReporting event filter.
6851type EventFilter struct {
6852	// DimensionFilter: The dimension filter contained within this
6853	// EventFilter.
6854	DimensionFilter *PathReportDimensionValue `json:"dimensionFilter,omitempty"`
6855
6856	// Kind: The kind of resource this is, in this case
6857	// dfareporting#eventFilter.
6858	Kind string `json:"kind,omitempty"`
6859
6860	// ForceSendFields is a list of field names (e.g. "DimensionFilter") to
6861	// unconditionally include in API requests. By default, fields with
6862	// empty or default values are omitted from API requests. However, any
6863	// non-pointer, non-interface field appearing in ForceSendFields will be
6864	// sent to the server regardless of whether the field is empty or not.
6865	// This may be used to include empty fields in Patch requests.
6866	ForceSendFields []string `json:"-"`
6867
6868	// NullFields is a list of field names (e.g. "DimensionFilter") to
6869	// include in API requests with the JSON null value. By default, fields
6870	// with empty values are omitted from API requests. However, any field
6871	// with an empty value appearing in NullFields will be sent to the
6872	// server as null. It is an error if a field in this list has a
6873	// non-empty value. This may be used to include null fields in Patch
6874	// requests.
6875	NullFields []string `json:"-"`
6876}
6877
6878func (s *EventFilter) MarshalJSON() ([]byte, error) {
6879	type NoMethod EventFilter
6880	raw := NoMethod(*s)
6881	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6882}
6883
6884// EventTag: Contains properties of an event tag.
6885type EventTag struct {
6886	// AccountId: Account ID of this event tag. This is a read-only field
6887	// that can be left blank.
6888	AccountId int64 `json:"accountId,omitempty,string"`
6889
6890	// AdvertiserId: Advertiser ID of this event tag. This field or the
6891	// campaignId field is required on insertion.
6892	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
6893
6894	// AdvertiserIdDimensionValue: Dimension value for the ID of the
6895	// advertiser. This is a read-only, auto-generated field.
6896	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
6897
6898	// CampaignId: Campaign ID of this event tag. This field or the
6899	// advertiserId field is required on insertion.
6900	CampaignId int64 `json:"campaignId,omitempty,string"`
6901
6902	// CampaignIdDimensionValue: Dimension value for the ID of the campaign.
6903	// This is a read-only, auto-generated field.
6904	CampaignIdDimensionValue *DimensionValue `json:"campaignIdDimensionValue,omitempty"`
6905
6906	// EnabledByDefault: Whether this event tag should be automatically
6907	// enabled for all of the advertiser's campaigns and ads.
6908	EnabledByDefault bool `json:"enabledByDefault,omitempty"`
6909
6910	// ExcludeFromAdxRequests: Whether to remove this event tag from ads
6911	// that are trafficked through Display & Video 360 to Ad Exchange. This
6912	// may be useful if the event tag uses a pixel that is unapproved for Ad
6913	// Exchange bids on one or more networks, such as the Google Display
6914	// Network.
6915	ExcludeFromAdxRequests bool `json:"excludeFromAdxRequests,omitempty"`
6916
6917	// Id: ID of this event tag. This is a read-only, auto-generated field.
6918	Id int64 `json:"id,omitempty,string"`
6919
6920	// Kind: Identifies what kind of resource this is. Value: the fixed
6921	// string "dfareporting#eventTag".
6922	Kind string `json:"kind,omitempty"`
6923
6924	// Name: Name of this event tag. This is a required field and must be
6925	// less than 256 characters long.
6926	Name string `json:"name,omitempty"`
6927
6928	// SiteFilterType: Site filter type for this event tag. If no type is
6929	// specified then the event tag will be applied to all sites.
6930	//
6931	// Possible values:
6932	//   "ALLOWLIST"
6933	//   "BLOCKLIST"
6934	SiteFilterType string `json:"siteFilterType,omitempty"`
6935
6936	// SiteIds: Filter list of site IDs associated with this event tag. The
6937	// siteFilterType determines whether this is a allowlist or blocklist
6938	// filter.
6939	SiteIds googleapi.Int64s `json:"siteIds,omitempty"`
6940
6941	// SslCompliant: Whether this tag is SSL-compliant or not. This is a
6942	// read-only field.
6943	SslCompliant bool `json:"sslCompliant,omitempty"`
6944
6945	// Status: Status of this event tag. Must be ENABLED for this event tag
6946	// to fire. This is a required field.
6947	//
6948	// Possible values:
6949	//   "ENABLED"
6950	//   "DISABLED"
6951	Status string `json:"status,omitempty"`
6952
6953	// SubaccountId: Subaccount ID of this event tag. This is a read-only
6954	// field that can be left blank.
6955	SubaccountId int64 `json:"subaccountId,omitempty,string"`
6956
6957	// Type: Event tag type. Can be used to specify whether to use a
6958	// third-party pixel, a third-party JavaScript URL, or a third-party
6959	// click-through URL for either impression or click tracking. This is a
6960	// required field.
6961	//
6962	// Possible values:
6963	//   "IMPRESSION_IMAGE_EVENT_TAG"
6964	//   "IMPRESSION_JAVASCRIPT_EVENT_TAG"
6965	//   "CLICK_THROUGH_EVENT_TAG"
6966	Type string `json:"type,omitempty"`
6967
6968	// Url: Payload URL for this event tag. The URL on a click-through event
6969	// tag should have a landing page URL appended to the end of it. This
6970	// field is required on insertion.
6971	Url string `json:"url,omitempty"`
6972
6973	// UrlEscapeLevels: Number of times the landing page URL should be
6974	// URL-escaped before being appended to the click-through event tag URL.
6975	// Only applies to click-through event tags as specified by the event
6976	// tag type.
6977	UrlEscapeLevels int64 `json:"urlEscapeLevels,omitempty"`
6978
6979	// ServerResponse contains the HTTP response code and headers from the
6980	// server.
6981	googleapi.ServerResponse `json:"-"`
6982
6983	// ForceSendFields is a list of field names (e.g. "AccountId") to
6984	// unconditionally include in API requests. By default, fields with
6985	// empty or default values are omitted from API requests. However, any
6986	// non-pointer, non-interface field appearing in ForceSendFields will be
6987	// sent to the server regardless of whether the field is empty or not.
6988	// This may be used to include empty fields in Patch requests.
6989	ForceSendFields []string `json:"-"`
6990
6991	// NullFields is a list of field names (e.g. "AccountId") to include in
6992	// API requests with the JSON null value. By default, fields with empty
6993	// values are omitted from API requests. However, any field with an
6994	// empty value appearing in NullFields will be sent to the server as
6995	// null. It is an error if a field in this list has a non-empty value.
6996	// This may be used to include null fields in Patch requests.
6997	NullFields []string `json:"-"`
6998}
6999
7000func (s *EventTag) MarshalJSON() ([]byte, error) {
7001	type NoMethod EventTag
7002	raw := NoMethod(*s)
7003	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7004}
7005
7006// EventTagOverride: Event tag override information.
7007type EventTagOverride struct {
7008	// Enabled: Whether this override is enabled.
7009	Enabled bool `json:"enabled,omitempty"`
7010
7011	// Id: ID of this event tag override. This is a read-only,
7012	// auto-generated field.
7013	Id int64 `json:"id,omitempty,string"`
7014
7015	// ForceSendFields is a list of field names (e.g. "Enabled") to
7016	// unconditionally include in API requests. By default, fields with
7017	// empty or default values are omitted from API requests. However, any
7018	// non-pointer, non-interface field appearing in ForceSendFields will be
7019	// sent to the server regardless of whether the field is empty or not.
7020	// This may be used to include empty fields in Patch requests.
7021	ForceSendFields []string `json:"-"`
7022
7023	// NullFields is a list of field names (e.g. "Enabled") to include in
7024	// API requests with the JSON null value. By default, fields with empty
7025	// values are omitted from API requests. However, any field with an
7026	// empty value appearing in NullFields will be sent to the server as
7027	// null. It is an error if a field in this list has a non-empty value.
7028	// This may be used to include null fields in Patch requests.
7029	NullFields []string `json:"-"`
7030}
7031
7032func (s *EventTagOverride) MarshalJSON() ([]byte, error) {
7033	type NoMethod EventTagOverride
7034	raw := NoMethod(*s)
7035	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7036}
7037
7038// EventTagsListResponse: Event Tag List Response
7039type EventTagsListResponse struct {
7040	// EventTags: Event tag collection.
7041	EventTags []*EventTag `json:"eventTags,omitempty"`
7042
7043	// Kind: Identifies what kind of resource this is. Value: the fixed
7044	// string "dfareporting#eventTagsListResponse".
7045	Kind string `json:"kind,omitempty"`
7046
7047	// ServerResponse contains the HTTP response code and headers from the
7048	// server.
7049	googleapi.ServerResponse `json:"-"`
7050
7051	// ForceSendFields is a list of field names (e.g. "EventTags") to
7052	// unconditionally include in API requests. By default, fields with
7053	// empty or default values are omitted from API requests. However, any
7054	// non-pointer, non-interface field appearing in ForceSendFields will be
7055	// sent to the server regardless of whether the field is empty or not.
7056	// This may be used to include empty fields in Patch requests.
7057	ForceSendFields []string `json:"-"`
7058
7059	// NullFields is a list of field names (e.g. "EventTags") to include in
7060	// API requests with the JSON null value. By default, fields with empty
7061	// values are omitted from API requests. However, any field with an
7062	// empty value appearing in NullFields will be sent to the server as
7063	// null. It is an error if a field in this list has a non-empty value.
7064	// This may be used to include null fields in Patch requests.
7065	NullFields []string `json:"-"`
7066}
7067
7068func (s *EventTagsListResponse) MarshalJSON() ([]byte, error) {
7069	type NoMethod EventTagsListResponse
7070	raw := NoMethod(*s)
7071	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7072}
7073
7074// File: Represents a File resource. A file contains the metadata for a
7075// report run. It shows the status of the run and holds the URLs to the
7076// generated report data if the run is finished and the status is
7077// "REPORT_AVAILABLE".
7078type File struct {
7079	// DateRange: The date range for which the file has report data. The
7080	// date range will always be the absolute date range for which the
7081	// report is run.
7082	DateRange *DateRange `json:"dateRange,omitempty"`
7083
7084	// Etag: Etag of this resource.
7085	Etag string `json:"etag,omitempty"`
7086
7087	// FileName: The filename of the file.
7088	FileName string `json:"fileName,omitempty"`
7089
7090	// Format: The output format of the report. Only available once the file
7091	// is available.
7092	//
7093	// Possible values:
7094	//   "CSV"
7095	//   "EXCEL"
7096	Format string `json:"format,omitempty"`
7097
7098	// Id: The unique ID of this report file.
7099	Id int64 `json:"id,omitempty,string"`
7100
7101	// Kind: Identifies what kind of resource this is. Value: the fixed
7102	// string "dfareporting#file".
7103	Kind string `json:"kind,omitempty"`
7104
7105	// LastModifiedTime: The timestamp in milliseconds since epoch when this
7106	// file was last modified.
7107	LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"`
7108
7109	// ReportId: The ID of the report this file was generated from.
7110	ReportId int64 `json:"reportId,omitempty,string"`
7111
7112	// Status: The status of the report file.
7113	//
7114	// Possible values:
7115	//   "PROCESSING"
7116	//   "REPORT_AVAILABLE"
7117	//   "FAILED"
7118	//   "CANCELLED"
7119	Status string `json:"status,omitempty"`
7120
7121	// Urls: The URLs where the completed report file can be downloaded.
7122	Urls *FileUrls `json:"urls,omitempty"`
7123
7124	// ServerResponse contains the HTTP response code and headers from the
7125	// server.
7126	googleapi.ServerResponse `json:"-"`
7127
7128	// ForceSendFields is a list of field names (e.g. "DateRange") to
7129	// unconditionally include in API requests. By default, fields with
7130	// empty or default values are omitted from API requests. However, any
7131	// non-pointer, non-interface field appearing in ForceSendFields will be
7132	// sent to the server regardless of whether the field is empty or not.
7133	// This may be used to include empty fields in Patch requests.
7134	ForceSendFields []string `json:"-"`
7135
7136	// NullFields is a list of field names (e.g. "DateRange") to include in
7137	// API requests with the JSON null value. By default, fields with empty
7138	// values are omitted from API requests. However, any field with an
7139	// empty value appearing in NullFields will be sent to the server as
7140	// null. It is an error if a field in this list has a non-empty value.
7141	// This may be used to include null fields in Patch requests.
7142	NullFields []string `json:"-"`
7143}
7144
7145func (s *File) MarshalJSON() ([]byte, error) {
7146	type NoMethod File
7147	raw := NoMethod(*s)
7148	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7149}
7150
7151// FileUrls: The URLs where the completed report file can be downloaded.
7152type FileUrls struct {
7153	// ApiUrl: The URL for downloading the report data through the API.
7154	ApiUrl string `json:"apiUrl,omitempty"`
7155
7156	// BrowserUrl: The URL for downloading the report data through a
7157	// browser.
7158	BrowserUrl string `json:"browserUrl,omitempty"`
7159
7160	// ForceSendFields is a list of field names (e.g. "ApiUrl") to
7161	// unconditionally include in API requests. By default, fields with
7162	// empty or default values are omitted from API requests. However, any
7163	// non-pointer, non-interface field appearing in ForceSendFields will be
7164	// sent to the server regardless of whether the field is empty or not.
7165	// This may be used to include empty fields in Patch requests.
7166	ForceSendFields []string `json:"-"`
7167
7168	// NullFields is a list of field names (e.g. "ApiUrl") to include in API
7169	// requests with the JSON null value. By default, fields with empty
7170	// values are omitted from API requests. However, any field with an
7171	// empty value appearing in NullFields will be sent to the server as
7172	// null. It is an error if a field in this list has a non-empty value.
7173	// This may be used to include null fields in Patch requests.
7174	NullFields []string `json:"-"`
7175}
7176
7177func (s *FileUrls) MarshalJSON() ([]byte, error) {
7178	type NoMethod FileUrls
7179	raw := NoMethod(*s)
7180	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7181}
7182
7183// FileList: List of files for a report.
7184type FileList struct {
7185	// Etag: Etag of this resource.
7186	Etag string `json:"etag,omitempty"`
7187
7188	// Items: The files returned in this response.
7189	Items []*File `json:"items,omitempty"`
7190
7191	// Kind: Identifies what kind of resource this is. Value: the fixed
7192	// string "dfareporting#fileList".
7193	Kind string `json:"kind,omitempty"`
7194
7195	// NextPageToken: Continuation token used to page through files. To
7196	// retrieve the next page of results, set the next request's "pageToken"
7197	// to the value of this field. The page token is only valid for a
7198	// limited amount of time and should not be persisted.
7199	NextPageToken string `json:"nextPageToken,omitempty"`
7200
7201	// ServerResponse contains the HTTP response code and headers from the
7202	// server.
7203	googleapi.ServerResponse `json:"-"`
7204
7205	// ForceSendFields is a list of field names (e.g. "Etag") to
7206	// unconditionally include in API requests. By default, fields with
7207	// empty or default values are omitted from API requests. However, any
7208	// non-pointer, non-interface field appearing in ForceSendFields will be
7209	// sent to the server regardless of whether the field is empty or not.
7210	// This may be used to include empty fields in Patch requests.
7211	ForceSendFields []string `json:"-"`
7212
7213	// NullFields is a list of field names (e.g. "Etag") to include in API
7214	// requests with the JSON null value. By default, fields with empty
7215	// values are omitted from API requests. However, any field with an
7216	// empty value appearing in NullFields will be sent to the server as
7217	// null. It is an error if a field in this list has a non-empty value.
7218	// This may be used to include null fields in Patch requests.
7219	NullFields []string `json:"-"`
7220}
7221
7222func (s *FileList) MarshalJSON() ([]byte, error) {
7223	type NoMethod FileList
7224	raw := NoMethod(*s)
7225	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7226}
7227
7228// Flight: Flight
7229type Flight struct {
7230	EndDate string `json:"endDate,omitempty"`
7231
7232	// RateOrCost: Rate or cost of this flight.
7233	RateOrCost int64 `json:"rateOrCost,omitempty,string"`
7234
7235	StartDate string `json:"startDate,omitempty"`
7236
7237	// Units: Units of this flight.
7238	Units int64 `json:"units,omitempty,string"`
7239
7240	// ForceSendFields is a list of field names (e.g. "EndDate") to
7241	// unconditionally include in API requests. By default, fields with
7242	// empty or default values are omitted from API requests. However, any
7243	// non-pointer, non-interface field appearing in ForceSendFields will be
7244	// sent to the server regardless of whether the field is empty or not.
7245	// This may be used to include empty fields in Patch requests.
7246	ForceSendFields []string `json:"-"`
7247
7248	// NullFields is a list of field names (e.g. "EndDate") to include in
7249	// API requests with the JSON null value. By default, fields with empty
7250	// values are omitted from API requests. However, any field with an
7251	// empty value appearing in NullFields will be sent to the server as
7252	// null. It is an error if a field in this list has a non-empty value.
7253	// This may be used to include null fields in Patch requests.
7254	NullFields []string `json:"-"`
7255}
7256
7257func (s *Flight) MarshalJSON() ([]byte, error) {
7258	type NoMethod Flight
7259	raw := NoMethod(*s)
7260	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7261}
7262
7263// FloodlightActivitiesGenerateTagResponse: Floodlight Activity
7264// GenerateTag Response
7265type FloodlightActivitiesGenerateTagResponse struct {
7266	// FloodlightActivityTag: Generated tag for this Floodlight activity.
7267	// For global site tags, this is the event snippet.
7268	FloodlightActivityTag string `json:"floodlightActivityTag,omitempty"`
7269
7270	// GlobalSiteTagGlobalSnippet: The global snippet section of a global
7271	// site tag. The global site tag sets new cookies on your domain, which
7272	// will store a unique identifier for a user or the ad click that
7273	// brought the user to your site. Learn more.
7274	GlobalSiteTagGlobalSnippet string `json:"globalSiteTagGlobalSnippet,omitempty"`
7275
7276	// Kind: Identifies what kind of resource this is. Value: the fixed
7277	// string "dfareporting#floodlightActivitiesGenerateTagResponse".
7278	Kind string `json:"kind,omitempty"`
7279
7280	// ServerResponse contains the HTTP response code and headers from the
7281	// server.
7282	googleapi.ServerResponse `json:"-"`
7283
7284	// ForceSendFields is a list of field names (e.g.
7285	// "FloodlightActivityTag") to unconditionally include in API requests.
7286	// By default, fields with empty or default values are omitted from API
7287	// requests. However, any non-pointer, non-interface field appearing in
7288	// ForceSendFields will be sent to the server regardless of whether the
7289	// field is empty or not. This may be used to include empty fields in
7290	// Patch requests.
7291	ForceSendFields []string `json:"-"`
7292
7293	// NullFields is a list of field names (e.g. "FloodlightActivityTag") to
7294	// include in API requests with the JSON null value. By default, fields
7295	// with empty values are omitted from API requests. However, any field
7296	// with an empty value appearing in NullFields will be sent to the
7297	// server as null. It is an error if a field in this list has a
7298	// non-empty value. This may be used to include null fields in Patch
7299	// requests.
7300	NullFields []string `json:"-"`
7301}
7302
7303func (s *FloodlightActivitiesGenerateTagResponse) MarshalJSON() ([]byte, error) {
7304	type NoMethod FloodlightActivitiesGenerateTagResponse
7305	raw := NoMethod(*s)
7306	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7307}
7308
7309// FloodlightActivitiesListResponse: Floodlight Activity List Response
7310type FloodlightActivitiesListResponse struct {
7311	// FloodlightActivities: Floodlight activity collection.
7312	FloodlightActivities []*FloodlightActivity `json:"floodlightActivities,omitempty"`
7313
7314	// Kind: Identifies what kind of resource this is. Value: the fixed
7315	// string "dfareporting#floodlightActivitiesListResponse".
7316	Kind string `json:"kind,omitempty"`
7317
7318	// NextPageToken: Pagination token to be used for the next list
7319	// operation.
7320	NextPageToken string `json:"nextPageToken,omitempty"`
7321
7322	// ServerResponse contains the HTTP response code and headers from the
7323	// server.
7324	googleapi.ServerResponse `json:"-"`
7325
7326	// ForceSendFields is a list of field names (e.g.
7327	// "FloodlightActivities") to unconditionally include in API requests.
7328	// By default, fields with empty or default values are omitted from API
7329	// requests. However, any non-pointer, non-interface field appearing in
7330	// ForceSendFields will be sent to the server regardless of whether the
7331	// field is empty or not. This may be used to include empty fields in
7332	// Patch requests.
7333	ForceSendFields []string `json:"-"`
7334
7335	// NullFields is a list of field names (e.g. "FloodlightActivities") to
7336	// include in API requests with the JSON null value. By default, fields
7337	// with empty values are omitted from API requests. However, any field
7338	// with an empty value appearing in NullFields will be sent to the
7339	// server as null. It is an error if a field in this list has a
7340	// non-empty value. This may be used to include null fields in Patch
7341	// requests.
7342	NullFields []string `json:"-"`
7343}
7344
7345func (s *FloodlightActivitiesListResponse) MarshalJSON() ([]byte, error) {
7346	type NoMethod FloodlightActivitiesListResponse
7347	raw := NoMethod(*s)
7348	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7349}
7350
7351// FloodlightActivity: Contains properties of a Floodlight activity.
7352type FloodlightActivity struct {
7353	// AccountId: Account ID of this floodlight activity. This is a
7354	// read-only field that can be left blank.
7355	AccountId int64 `json:"accountId,omitempty,string"`
7356
7357	// AdvertiserId: Advertiser ID of this floodlight activity. If this
7358	// field is left blank, the value will be copied over either from the
7359	// activity group's advertiser or the existing activity's advertiser.
7360	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
7361
7362	// AdvertiserIdDimensionValue: Dimension value for the ID of the
7363	// advertiser. This is a read-only, auto-generated field.
7364	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
7365
7366	// AttributionEnabled: Whether the activity is enabled for attribution.
7367	AttributionEnabled bool `json:"attributionEnabled,omitempty"`
7368
7369	// CacheBustingType: Code type used for cache busting in the generated
7370	// tag. Applicable only when floodlightActivityGroupType is COUNTER and
7371	// countingMethod is STANDARD_COUNTING or UNIQUE_COUNTING.
7372	//
7373	// Possible values:
7374	//   "JAVASCRIPT"
7375	//   "ACTIVE_SERVER_PAGE"
7376	//   "JSP"
7377	//   "PHP"
7378	//   "COLD_FUSION"
7379	CacheBustingType string `json:"cacheBustingType,omitempty"`
7380
7381	// CountingMethod: Counting method for conversions for this floodlight
7382	// activity. This is a required field.
7383	//
7384	// Possible values:
7385	//   "STANDARD_COUNTING"
7386	//   "UNIQUE_COUNTING"
7387	//   "SESSION_COUNTING"
7388	//   "TRANSACTIONS_COUNTING"
7389	//   "ITEMS_SOLD_COUNTING"
7390	CountingMethod string `json:"countingMethod,omitempty"`
7391
7392	// DefaultTags: Dynamic floodlight tags.
7393	DefaultTags []*FloodlightActivityDynamicTag `json:"defaultTags,omitempty"`
7394
7395	// ExpectedUrl: URL where this tag will be deployed. If specified, must
7396	// be less than 256 characters long.
7397	ExpectedUrl string `json:"expectedUrl,omitempty"`
7398
7399	// FloodlightActivityGroupId: Floodlight activity group ID of this
7400	// floodlight activity. This is a required field.
7401	FloodlightActivityGroupId int64 `json:"floodlightActivityGroupId,omitempty,string"`
7402
7403	// FloodlightActivityGroupName: Name of the associated floodlight
7404	// activity group. This is a read-only field.
7405	FloodlightActivityGroupName string `json:"floodlightActivityGroupName,omitempty"`
7406
7407	// FloodlightActivityGroupTagString: Tag string of the associated
7408	// floodlight activity group. This is a read-only field.
7409	FloodlightActivityGroupTagString string `json:"floodlightActivityGroupTagString,omitempty"`
7410
7411	// FloodlightActivityGroupType: Type of the associated floodlight
7412	// activity group. This is a read-only field.
7413	//
7414	// Possible values:
7415	//   "COUNTER"
7416	//   "SALE"
7417	FloodlightActivityGroupType string `json:"floodlightActivityGroupType,omitempty"`
7418
7419	// FloodlightConfigurationId: Floodlight configuration ID of this
7420	// floodlight activity. If this field is left blank, the value will be
7421	// copied over either from the activity group's floodlight configuration
7422	// or from the existing activity's floodlight configuration.
7423	FloodlightConfigurationId int64 `json:"floodlightConfigurationId,omitempty,string"`
7424
7425	// FloodlightConfigurationIdDimensionValue: Dimension value for the ID
7426	// of the floodlight configuration. This is a read-only, auto-generated
7427	// field.
7428	FloodlightConfigurationIdDimensionValue *DimensionValue `json:"floodlightConfigurationIdDimensionValue,omitempty"`
7429
7430	// FloodlightTagType: The type of Floodlight tag this activity will
7431	// generate. This is a required field.
7432	//
7433	// Possible values:
7434	//   "IFRAME"
7435	//   "IMAGE"
7436	//   "GLOBAL_SITE_TAG"
7437	FloodlightTagType string `json:"floodlightTagType,omitempty"`
7438
7439	// Id: ID of this floodlight activity. This is a read-only,
7440	// auto-generated field.
7441	Id int64 `json:"id,omitempty,string"`
7442
7443	// IdDimensionValue: Dimension value for the ID of this floodlight
7444	// activity. This is a read-only, auto-generated field.
7445	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
7446
7447	// Kind: Identifies what kind of resource this is. Value: the fixed
7448	// string "dfareporting#floodlightActivity".
7449	Kind string `json:"kind,omitempty"`
7450
7451	// Name: Name of this floodlight activity. This is a required field.
7452	// Must be less than 129 characters long and cannot contain quotes.
7453	Name string `json:"name,omitempty"`
7454
7455	// Notes: General notes or implementation instructions for the tag.
7456	Notes string `json:"notes,omitempty"`
7457
7458	// PublisherTags: Publisher dynamic floodlight tags.
7459	PublisherTags []*FloodlightActivityPublisherDynamicTag `json:"publisherTags,omitempty"`
7460
7461	// Secure: Whether this tag should use SSL.
7462	Secure bool `json:"secure,omitempty"`
7463
7464	// SslCompliant: Whether the floodlight activity is SSL-compliant. This
7465	// is a read-only field, its value detected by the system from the
7466	// floodlight tags.
7467	SslCompliant bool `json:"sslCompliant,omitempty"`
7468
7469	// SslRequired: Whether this floodlight activity must be SSL-compliant.
7470	SslRequired bool `json:"sslRequired,omitempty"`
7471
7472	// Status: The status of the activity. This can only be set to ACTIVE or
7473	// ARCHIVED_AND_DISABLED. The ARCHIVED status is no longer supported and
7474	// cannot be set for Floodlight activities. The DISABLED_POLICY status
7475	// indicates that a Floodlight activity is violating Google policy.
7476	// Contact your account manager for more information.
7477	//
7478	// Possible values:
7479	//   "ACTIVE"
7480	//   "ARCHIVED_AND_DISABLED"
7481	//   "ARCHIVED"
7482	//   "DISABLED_POLICY"
7483	Status string `json:"status,omitempty"`
7484
7485	// SubaccountId: Subaccount ID of this floodlight activity. This is a
7486	// read-only field that can be left blank.
7487	SubaccountId int64 `json:"subaccountId,omitempty,string"`
7488
7489	// TagFormat: Tag format type for the floodlight activity. If left
7490	// blank, the tag format will default to HTML.
7491	//
7492	// Possible values:
7493	//   "HTML"
7494	//   "XHTML"
7495	TagFormat string `json:"tagFormat,omitempty"`
7496
7497	// TagString: Value of the cat= parameter in the floodlight tag, which
7498	// the ad servers use to identify the activity. This is optional: if
7499	// empty, a new tag string will be generated for you. This string must
7500	// be 1 to 8 characters long, with valid characters being a-z0-9[ _ ].
7501	// This tag string must also be unique among activities of the same
7502	// activity group. This field is read-only after insertion.
7503	TagString string `json:"tagString,omitempty"`
7504
7505	// UserDefinedVariableTypes: List of the user-defined variables used by
7506	// this conversion tag. These map to the "u[1-100]=" in the tags. Each
7507	// of these can have a user defined type. Acceptable values are U1 to
7508	// U100, inclusive.
7509	//
7510	// Possible values:
7511	//   "U1"
7512	//   "U2"
7513	//   "U3"
7514	//   "U4"
7515	//   "U5"
7516	//   "U6"
7517	//   "U7"
7518	//   "U8"
7519	//   "U9"
7520	//   "U10"
7521	//   "U11"
7522	//   "U12"
7523	//   "U13"
7524	//   "U14"
7525	//   "U15"
7526	//   "U16"
7527	//   "U17"
7528	//   "U18"
7529	//   "U19"
7530	//   "U20"
7531	//   "U21"
7532	//   "U22"
7533	//   "U23"
7534	//   "U24"
7535	//   "U25"
7536	//   "U26"
7537	//   "U27"
7538	//   "U28"
7539	//   "U29"
7540	//   "U30"
7541	//   "U31"
7542	//   "U32"
7543	//   "U33"
7544	//   "U34"
7545	//   "U35"
7546	//   "U36"
7547	//   "U37"
7548	//   "U38"
7549	//   "U39"
7550	//   "U40"
7551	//   "U41"
7552	//   "U42"
7553	//   "U43"
7554	//   "U44"
7555	//   "U45"
7556	//   "U46"
7557	//   "U47"
7558	//   "U48"
7559	//   "U49"
7560	//   "U50"
7561	//   "U51"
7562	//   "U52"
7563	//   "U53"
7564	//   "U54"
7565	//   "U55"
7566	//   "U56"
7567	//   "U57"
7568	//   "U58"
7569	//   "U59"
7570	//   "U60"
7571	//   "U61"
7572	//   "U62"
7573	//   "U63"
7574	//   "U64"
7575	//   "U65"
7576	//   "U66"
7577	//   "U67"
7578	//   "U68"
7579	//   "U69"
7580	//   "U70"
7581	//   "U71"
7582	//   "U72"
7583	//   "U73"
7584	//   "U74"
7585	//   "U75"
7586	//   "U76"
7587	//   "U77"
7588	//   "U78"
7589	//   "U79"
7590	//   "U80"
7591	//   "U81"
7592	//   "U82"
7593	//   "U83"
7594	//   "U84"
7595	//   "U85"
7596	//   "U86"
7597	//   "U87"
7598	//   "U88"
7599	//   "U89"
7600	//   "U90"
7601	//   "U91"
7602	//   "U92"
7603	//   "U93"
7604	//   "U94"
7605	//   "U95"
7606	//   "U96"
7607	//   "U97"
7608	//   "U98"
7609	//   "U99"
7610	//   "U100"
7611	UserDefinedVariableTypes []string `json:"userDefinedVariableTypes,omitempty"`
7612
7613	// ServerResponse contains the HTTP response code and headers from the
7614	// server.
7615	googleapi.ServerResponse `json:"-"`
7616
7617	// ForceSendFields is a list of field names (e.g. "AccountId") to
7618	// unconditionally include in API requests. By default, fields with
7619	// empty or default values are omitted from API requests. However, any
7620	// non-pointer, non-interface field appearing in ForceSendFields will be
7621	// sent to the server regardless of whether the field is empty or not.
7622	// This may be used to include empty fields in Patch requests.
7623	ForceSendFields []string `json:"-"`
7624
7625	// NullFields is a list of field names (e.g. "AccountId") to include in
7626	// API requests with the JSON null value. By default, fields with empty
7627	// values are omitted from API requests. However, any field with an
7628	// empty value appearing in NullFields will be sent to the server as
7629	// null. It is an error if a field in this list has a non-empty value.
7630	// This may be used to include null fields in Patch requests.
7631	NullFields []string `json:"-"`
7632}
7633
7634func (s *FloodlightActivity) MarshalJSON() ([]byte, error) {
7635	type NoMethod FloodlightActivity
7636	raw := NoMethod(*s)
7637	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7638}
7639
7640// FloodlightActivityDynamicTag: Dynamic Tag
7641type FloodlightActivityDynamicTag struct {
7642	// Id: ID of this dynamic tag. This is a read-only, auto-generated
7643	// field.
7644	Id int64 `json:"id,omitempty,string"`
7645
7646	// Name: Name of this tag.
7647	Name string `json:"name,omitempty"`
7648
7649	// Tag: Tag code.
7650	Tag string `json:"tag,omitempty"`
7651
7652	// ForceSendFields is a list of field names (e.g. "Id") to
7653	// unconditionally include in API requests. By default, fields with
7654	// empty or default values are omitted from API requests. However, any
7655	// non-pointer, non-interface field appearing in ForceSendFields will be
7656	// sent to the server regardless of whether the field is empty or not.
7657	// This may be used to include empty fields in Patch requests.
7658	ForceSendFields []string `json:"-"`
7659
7660	// NullFields is a list of field names (e.g. "Id") to include in API
7661	// requests with the JSON null value. By default, fields with empty
7662	// values are omitted from API requests. However, any field with an
7663	// empty value appearing in NullFields will be sent to the server as
7664	// null. It is an error if a field in this list has a non-empty value.
7665	// This may be used to include null fields in Patch requests.
7666	NullFields []string `json:"-"`
7667}
7668
7669func (s *FloodlightActivityDynamicTag) MarshalJSON() ([]byte, error) {
7670	type NoMethod FloodlightActivityDynamicTag
7671	raw := NoMethod(*s)
7672	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7673}
7674
7675// FloodlightActivityGroup: Contains properties of a Floodlight activity
7676// group.
7677type FloodlightActivityGroup struct {
7678	// AccountId: Account ID of this floodlight activity group. This is a
7679	// read-only field that can be left blank.
7680	AccountId int64 `json:"accountId,omitempty,string"`
7681
7682	// AdvertiserId: Advertiser ID of this floodlight activity group. If
7683	// this field is left blank, the value will be copied over either from
7684	// the floodlight configuration's advertiser or from the existing
7685	// activity group's advertiser.
7686	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
7687
7688	// AdvertiserIdDimensionValue: Dimension value for the ID of the
7689	// advertiser. This is a read-only, auto-generated field.
7690	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
7691
7692	// FloodlightConfigurationId: Floodlight configuration ID of this
7693	// floodlight activity group. This is a required field.
7694	FloodlightConfigurationId int64 `json:"floodlightConfigurationId,omitempty,string"`
7695
7696	// FloodlightConfigurationIdDimensionValue: Dimension value for the ID
7697	// of the floodlight configuration. This is a read-only, auto-generated
7698	// field.
7699	FloodlightConfigurationIdDimensionValue *DimensionValue `json:"floodlightConfigurationIdDimensionValue,omitempty"`
7700
7701	// Id: ID of this floodlight activity group. This is a read-only,
7702	// auto-generated field.
7703	Id int64 `json:"id,omitempty,string"`
7704
7705	// IdDimensionValue: Dimension value for the ID of this floodlight
7706	// activity group. This is a read-only, auto-generated field.
7707	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
7708
7709	// Kind: Identifies what kind of resource this is. Value: the fixed
7710	// string "dfareporting#floodlightActivityGroup".
7711	Kind string `json:"kind,omitempty"`
7712
7713	// Name: Name of this floodlight activity group. This is a required
7714	// field. Must be less than 65 characters long and cannot contain
7715	// quotes.
7716	Name string `json:"name,omitempty"`
7717
7718	// SubaccountId: Subaccount ID of this floodlight activity group. This
7719	// is a read-only field that can be left blank.
7720	SubaccountId int64 `json:"subaccountId,omitempty,string"`
7721
7722	// TagString: Value of the type= parameter in the floodlight tag, which
7723	// the ad servers use to identify the activity group that the activity
7724	// belongs to. This is optional: if empty, a new tag string will be
7725	// generated for you. This string must be 1 to 8 characters long, with
7726	// valid characters being a-z0-9[ _ ]. This tag string must also be
7727	// unique among activity groups of the same floodlight configuration.
7728	// This field is read-only after insertion.
7729	TagString string `json:"tagString,omitempty"`
7730
7731	// Type: Type of the floodlight activity group. This is a required field
7732	// that is read-only after insertion.
7733	//
7734	// Possible values:
7735	//   "COUNTER"
7736	//   "SALE"
7737	Type string `json:"type,omitempty"`
7738
7739	// ServerResponse contains the HTTP response code and headers from the
7740	// server.
7741	googleapi.ServerResponse `json:"-"`
7742
7743	// ForceSendFields is a list of field names (e.g. "AccountId") to
7744	// unconditionally include in API requests. By default, fields with
7745	// empty or default values are omitted from API requests. However, any
7746	// non-pointer, non-interface field appearing in ForceSendFields will be
7747	// sent to the server regardless of whether the field is empty or not.
7748	// This may be used to include empty fields in Patch requests.
7749	ForceSendFields []string `json:"-"`
7750
7751	// NullFields is a list of field names (e.g. "AccountId") to include in
7752	// API requests with the JSON null value. By default, fields with empty
7753	// values are omitted from API requests. However, any field with an
7754	// empty value appearing in NullFields will be sent to the server as
7755	// null. It is an error if a field in this list has a non-empty value.
7756	// This may be used to include null fields in Patch requests.
7757	NullFields []string `json:"-"`
7758}
7759
7760func (s *FloodlightActivityGroup) MarshalJSON() ([]byte, error) {
7761	type NoMethod FloodlightActivityGroup
7762	raw := NoMethod(*s)
7763	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7764}
7765
7766// FloodlightActivityGroupsListResponse: Floodlight Activity Group List
7767// Response
7768type FloodlightActivityGroupsListResponse struct {
7769	// FloodlightActivityGroups: Floodlight activity group collection.
7770	FloodlightActivityGroups []*FloodlightActivityGroup `json:"floodlightActivityGroups,omitempty"`
7771
7772	// Kind: Identifies what kind of resource this is. Value: the fixed
7773	// string "dfareporting#floodlightActivityGroupsListResponse".
7774	Kind string `json:"kind,omitempty"`
7775
7776	// NextPageToken: Pagination token to be used for the next list
7777	// operation.
7778	NextPageToken string `json:"nextPageToken,omitempty"`
7779
7780	// ServerResponse contains the HTTP response code and headers from the
7781	// server.
7782	googleapi.ServerResponse `json:"-"`
7783
7784	// ForceSendFields is a list of field names (e.g.
7785	// "FloodlightActivityGroups") to unconditionally include in API
7786	// requests. By default, fields with empty or default values are omitted
7787	// from API requests. However, any non-pointer, non-interface field
7788	// appearing in ForceSendFields will be sent to the server regardless of
7789	// whether the field is empty or not. This may be used to include empty
7790	// fields in Patch requests.
7791	ForceSendFields []string `json:"-"`
7792
7793	// NullFields is a list of field names (e.g. "FloodlightActivityGroups")
7794	// to include in API requests with the JSON null value. By default,
7795	// fields with empty values are omitted from API requests. However, any
7796	// field with an empty value appearing in NullFields will be sent to the
7797	// server as null. It is an error if a field in this list has a
7798	// non-empty value. This may be used to include null fields in Patch
7799	// requests.
7800	NullFields []string `json:"-"`
7801}
7802
7803func (s *FloodlightActivityGroupsListResponse) MarshalJSON() ([]byte, error) {
7804	type NoMethod FloodlightActivityGroupsListResponse
7805	raw := NoMethod(*s)
7806	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7807}
7808
7809// FloodlightActivityPublisherDynamicTag: Publisher Dynamic Tag
7810type FloodlightActivityPublisherDynamicTag struct {
7811	// ClickThrough: Whether this tag is applicable only for click-throughs.
7812	ClickThrough bool `json:"clickThrough,omitempty"`
7813
7814	// DirectorySiteId: Directory site ID of this dynamic tag. This is a
7815	// write-only field that can be used as an alternative to the siteId
7816	// field. When this resource is retrieved, only the siteId field will be
7817	// populated.
7818	DirectorySiteId int64 `json:"directorySiteId,omitempty,string"`
7819
7820	// DynamicTag: Dynamic floodlight tag.
7821	DynamicTag *FloodlightActivityDynamicTag `json:"dynamicTag,omitempty"`
7822
7823	// SiteId: Site ID of this dynamic tag.
7824	SiteId int64 `json:"siteId,omitempty,string"`
7825
7826	// SiteIdDimensionValue: Dimension value for the ID of the site. This is
7827	// a read-only, auto-generated field.
7828	SiteIdDimensionValue *DimensionValue `json:"siteIdDimensionValue,omitempty"`
7829
7830	// ViewThrough: Whether this tag is applicable only for view-throughs.
7831	ViewThrough bool `json:"viewThrough,omitempty"`
7832
7833	// ForceSendFields is a list of field names (e.g. "ClickThrough") to
7834	// unconditionally include in API requests. By default, fields with
7835	// empty or default values are omitted from API requests. However, any
7836	// non-pointer, non-interface field appearing in ForceSendFields will be
7837	// sent to the server regardless of whether the field is empty or not.
7838	// This may be used to include empty fields in Patch requests.
7839	ForceSendFields []string `json:"-"`
7840
7841	// NullFields is a list of field names (e.g. "ClickThrough") to include
7842	// in API requests with the JSON null value. By default, fields with
7843	// empty values are omitted from API requests. However, any field with
7844	// an empty value appearing in NullFields will be sent to the server as
7845	// null. It is an error if a field in this list has a non-empty value.
7846	// This may be used to include null fields in Patch requests.
7847	NullFields []string `json:"-"`
7848}
7849
7850func (s *FloodlightActivityPublisherDynamicTag) MarshalJSON() ([]byte, error) {
7851	type NoMethod FloodlightActivityPublisherDynamicTag
7852	raw := NoMethod(*s)
7853	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7854}
7855
7856// FloodlightConfiguration: Contains properties of a Floodlight
7857// configuration.
7858type FloodlightConfiguration struct {
7859	// AccountId: Account ID of this floodlight configuration. This is a
7860	// read-only field that can be left blank.
7861	AccountId int64 `json:"accountId,omitempty,string"`
7862
7863	// AdvertiserId: Advertiser ID of the parent advertiser of this
7864	// floodlight configuration.
7865	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
7866
7867	// AdvertiserIdDimensionValue: Dimension value for the ID of the
7868	// advertiser. This is a read-only, auto-generated field.
7869	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
7870
7871	// AnalyticsDataSharingEnabled: Whether advertiser data is shared with
7872	// Google Analytics.
7873	AnalyticsDataSharingEnabled bool `json:"analyticsDataSharingEnabled,omitempty"`
7874
7875	// CustomViewabilityMetric: Custom Viewability metric for the floodlight
7876	// configuration.
7877	CustomViewabilityMetric *CustomViewabilityMetric `json:"customViewabilityMetric,omitempty"`
7878
7879	// ExposureToConversionEnabled: Whether the exposure-to-conversion
7880	// report is enabled. This report shows detailed pathway information on
7881	// up to 10 of the most recent ad exposures seen by a user before
7882	// converting.
7883	ExposureToConversionEnabled bool `json:"exposureToConversionEnabled,omitempty"`
7884
7885	// FirstDayOfWeek: Day that will be counted as the first day of the week
7886	// in reports. This is a required field.
7887	//
7888	// Possible values:
7889	//   "MONDAY"
7890	//   "SUNDAY"
7891	FirstDayOfWeek string `json:"firstDayOfWeek,omitempty"`
7892
7893	// Id: ID of this floodlight configuration. This is a read-only,
7894	// auto-generated field.
7895	Id int64 `json:"id,omitempty,string"`
7896
7897	// IdDimensionValue: Dimension value for the ID of this floodlight
7898	// configuration. This is a read-only, auto-generated field.
7899	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
7900
7901	// InAppAttributionTrackingEnabled: Whether in-app attribution tracking
7902	// is enabled.
7903	InAppAttributionTrackingEnabled bool `json:"inAppAttributionTrackingEnabled,omitempty"`
7904
7905	// Kind: Identifies what kind of resource this is. Value: the fixed
7906	// string "dfareporting#floodlightConfiguration".
7907	Kind string `json:"kind,omitempty"`
7908
7909	// LookbackConfiguration: Lookback window settings for this floodlight
7910	// configuration.
7911	LookbackConfiguration *LookbackConfiguration `json:"lookbackConfiguration,omitempty"`
7912
7913	// NaturalSearchConversionAttributionOption: Types of attribution
7914	// options for natural search conversions.
7915	//
7916	// Possible values:
7917	//   "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
7918	//   "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
7919	//   "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION"
7920	NaturalSearchConversionAttributionOption string `json:"naturalSearchConversionAttributionOption,omitempty"`
7921
7922	// OmnitureSettings: Settings for Campaign Manager Omniture integration.
7923	OmnitureSettings *OmnitureSettings `json:"omnitureSettings,omitempty"`
7924
7925	// SubaccountId: Subaccount ID of this floodlight configuration. This is
7926	// a read-only field that can be left blank.
7927	SubaccountId int64 `json:"subaccountId,omitempty,string"`
7928
7929	// TagSettings: Configuration settings for dynamic and image floodlight
7930	// tags.
7931	TagSettings *TagSettings `json:"tagSettings,omitempty"`
7932
7933	// ThirdPartyAuthenticationTokens: List of third-party authentication
7934	// tokens enabled for this configuration.
7935	ThirdPartyAuthenticationTokens []*ThirdPartyAuthenticationToken `json:"thirdPartyAuthenticationTokens,omitempty"`
7936
7937	// UserDefinedVariableConfigurations: List of user defined variables
7938	// enabled for this configuration.
7939	UserDefinedVariableConfigurations []*UserDefinedVariableConfiguration `json:"userDefinedVariableConfigurations,omitempty"`
7940
7941	// ServerResponse contains the HTTP response code and headers from the
7942	// server.
7943	googleapi.ServerResponse `json:"-"`
7944
7945	// ForceSendFields is a list of field names (e.g. "AccountId") to
7946	// unconditionally include in API requests. By default, fields with
7947	// empty or default values are omitted from API requests. However, any
7948	// non-pointer, non-interface field appearing in ForceSendFields will be
7949	// sent to the server regardless of whether the field is empty or not.
7950	// This may be used to include empty fields in Patch requests.
7951	ForceSendFields []string `json:"-"`
7952
7953	// NullFields is a list of field names (e.g. "AccountId") to include in
7954	// API requests with the JSON null value. By default, fields with empty
7955	// values are omitted from API requests. However, any field with an
7956	// empty value appearing in NullFields will be sent to the server as
7957	// null. It is an error if a field in this list has a non-empty value.
7958	// This may be used to include null fields in Patch requests.
7959	NullFields []string `json:"-"`
7960}
7961
7962func (s *FloodlightConfiguration) MarshalJSON() ([]byte, error) {
7963	type NoMethod FloodlightConfiguration
7964	raw := NoMethod(*s)
7965	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7966}
7967
7968// FloodlightConfigurationsListResponse: Floodlight Configuration List
7969// Response
7970type FloodlightConfigurationsListResponse struct {
7971	// FloodlightConfigurations: Floodlight configuration collection.
7972	FloodlightConfigurations []*FloodlightConfiguration `json:"floodlightConfigurations,omitempty"`
7973
7974	// Kind: Identifies what kind of resource this is. Value: the fixed
7975	// string "dfareporting#floodlightConfigurationsListResponse".
7976	Kind string `json:"kind,omitempty"`
7977
7978	// ServerResponse contains the HTTP response code and headers from the
7979	// server.
7980	googleapi.ServerResponse `json:"-"`
7981
7982	// ForceSendFields is a list of field names (e.g.
7983	// "FloodlightConfigurations") to unconditionally include in API
7984	// requests. By default, fields with empty or default values are omitted
7985	// from API requests. However, any non-pointer, non-interface field
7986	// appearing in ForceSendFields will be sent to the server regardless of
7987	// whether the field is empty or not. This may be used to include empty
7988	// fields in Patch requests.
7989	ForceSendFields []string `json:"-"`
7990
7991	// NullFields is a list of field names (e.g. "FloodlightConfigurations")
7992	// to include in API requests with the JSON null value. By default,
7993	// fields with empty values are omitted from API requests. However, any
7994	// field with an empty value appearing in NullFields will be sent to the
7995	// server as null. It is an error if a field in this list has a
7996	// non-empty value. This may be used to include null fields in Patch
7997	// requests.
7998	NullFields []string `json:"-"`
7999}
8000
8001func (s *FloodlightConfigurationsListResponse) MarshalJSON() ([]byte, error) {
8002	type NoMethod FloodlightConfigurationsListResponse
8003	raw := NoMethod(*s)
8004	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8005}
8006
8007// FloodlightReportCompatibleFields: Represents fields that are
8008// compatible to be selected for a report of type "FlOODLIGHT".
8009type FloodlightReportCompatibleFields struct {
8010	// DimensionFilters: Dimensions which are compatible to be selected in
8011	// the "dimensionFilters" section of the report.
8012	DimensionFilters []*Dimension `json:"dimensionFilters,omitempty"`
8013
8014	// Dimensions: Dimensions which are compatible to be selected in the
8015	// "dimensions" section of the report.
8016	Dimensions []*Dimension `json:"dimensions,omitempty"`
8017
8018	// Kind: The kind of resource this is, in this case
8019	// dfareporting#floodlightReportCompatibleFields.
8020	Kind string `json:"kind,omitempty"`
8021
8022	// Metrics: Metrics which are compatible to be selected in the
8023	// "metricNames" section of the report.
8024	Metrics []*Metric `json:"metrics,omitempty"`
8025
8026	// ForceSendFields is a list of field names (e.g. "DimensionFilters") to
8027	// unconditionally include in API requests. By default, fields with
8028	// empty or default values are omitted from API requests. However, any
8029	// non-pointer, non-interface field appearing in ForceSendFields will be
8030	// sent to the server regardless of whether the field is empty or not.
8031	// This may be used to include empty fields in Patch requests.
8032	ForceSendFields []string `json:"-"`
8033
8034	// NullFields is a list of field names (e.g. "DimensionFilters") to
8035	// include in API requests with the JSON null value. By default, fields
8036	// with empty values are omitted from API requests. However, any field
8037	// with an empty value appearing in NullFields will be sent to the
8038	// server as null. It is an error if a field in this list has a
8039	// non-empty value. This may be used to include null fields in Patch
8040	// requests.
8041	NullFields []string `json:"-"`
8042}
8043
8044func (s *FloodlightReportCompatibleFields) MarshalJSON() ([]byte, error) {
8045	type NoMethod FloodlightReportCompatibleFields
8046	raw := NoMethod(*s)
8047	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8048}
8049
8050// FrequencyCap: Frequency Cap.
8051type FrequencyCap struct {
8052	// Duration: Duration of time, in seconds, for this frequency cap. The
8053	// maximum duration is 90 days. Acceptable values are 1 to 7776000,
8054	// inclusive.
8055	Duration int64 `json:"duration,omitempty,string"`
8056
8057	// Impressions: Number of times an individual user can be served the ad
8058	// within the specified duration. Acceptable values are 1 to 15,
8059	// inclusive.
8060	Impressions int64 `json:"impressions,omitempty,string"`
8061
8062	// ForceSendFields is a list of field names (e.g. "Duration") to
8063	// unconditionally include in API requests. By default, fields with
8064	// empty or default values are omitted from API requests. However, any
8065	// non-pointer, non-interface field appearing in ForceSendFields will be
8066	// sent to the server regardless of whether the field is empty or not.
8067	// This may be used to include empty fields in Patch requests.
8068	ForceSendFields []string `json:"-"`
8069
8070	// NullFields is a list of field names (e.g. "Duration") to include in
8071	// API requests with the JSON null value. By default, fields with empty
8072	// values are omitted from API requests. However, any field with an
8073	// empty value appearing in NullFields will be sent to the server as
8074	// null. It is an error if a field in this list has a non-empty value.
8075	// This may be used to include null fields in Patch requests.
8076	NullFields []string `json:"-"`
8077}
8078
8079func (s *FrequencyCap) MarshalJSON() ([]byte, error) {
8080	type NoMethod FrequencyCap
8081	raw := NoMethod(*s)
8082	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8083}
8084
8085// FsCommand: FsCommand.
8086type FsCommand struct {
8087	// Left: Distance from the left of the browser.Applicable when
8088	// positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.
8089	Left int64 `json:"left,omitempty"`
8090
8091	// PositionOption: Position in the browser where the window will open.
8092	//
8093	// Possible values:
8094	//   "CENTERED"
8095	//   "DISTANCE_FROM_TOP_LEFT_CORNER"
8096	PositionOption string `json:"positionOption,omitempty"`
8097
8098	// Top: Distance from the top of the browser. Applicable when
8099	// positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.
8100	Top int64 `json:"top,omitempty"`
8101
8102	// WindowHeight: Height of the window.
8103	WindowHeight int64 `json:"windowHeight,omitempty"`
8104
8105	// WindowWidth: Width of the window.
8106	WindowWidth int64 `json:"windowWidth,omitempty"`
8107
8108	// ForceSendFields is a list of field names (e.g. "Left") to
8109	// unconditionally include in API requests. By default, fields with
8110	// empty or default values are omitted from API requests. However, any
8111	// non-pointer, non-interface field appearing in ForceSendFields will be
8112	// sent to the server regardless of whether the field is empty or not.
8113	// This may be used to include empty fields in Patch requests.
8114	ForceSendFields []string `json:"-"`
8115
8116	// NullFields is a list of field names (e.g. "Left") to include in API
8117	// requests with the JSON null value. By default, fields with empty
8118	// values are omitted from API requests. However, any field with an
8119	// empty value appearing in NullFields will be sent to the server as
8120	// null. It is an error if a field in this list has a non-empty value.
8121	// This may be used to include null fields in Patch requests.
8122	NullFields []string `json:"-"`
8123}
8124
8125func (s *FsCommand) MarshalJSON() ([]byte, error) {
8126	type NoMethod FsCommand
8127	raw := NoMethod(*s)
8128	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8129}
8130
8131// GeoTargeting: Geographical Targeting.
8132type GeoTargeting struct {
8133	// Cities: Cities to be targeted. For each city only dartId is required.
8134	// The other fields are populated automatically when the ad is inserted
8135	// or updated. If targeting a city, do not target or exclude the country
8136	// of the city, and do not target the metro or region of the city.
8137	Cities []*City `json:"cities,omitempty"`
8138
8139	// Countries: Countries to be targeted or excluded from targeting,
8140	// depending on the setting of the excludeCountries field. For each
8141	// country only dartId is required. The other fields are populated
8142	// automatically when the ad is inserted or updated. If targeting or
8143	// excluding a country, do not target regions, cities, metros, or postal
8144	// codes in the same country.
8145	Countries []*Country `json:"countries,omitempty"`
8146
8147	// ExcludeCountries: Whether or not to exclude the countries in the
8148	// countries field from targeting. If false, the countries field refers
8149	// to countries which will be targeted by the ad.
8150	ExcludeCountries bool `json:"excludeCountries,omitempty"`
8151
8152	// Metros: Metros to be targeted. For each metro only dmaId is required.
8153	// The other fields are populated automatically when the ad is inserted
8154	// or updated. If targeting a metro, do not target or exclude the
8155	// country of the metro.
8156	Metros []*Metro `json:"metros,omitempty"`
8157
8158	// PostalCodes: Postal codes to be targeted. For each postal code only
8159	// id is required. The other fields are populated automatically when the
8160	// ad is inserted or updated. If targeting a postal code, do not target
8161	// or exclude the country of the postal code.
8162	PostalCodes []*PostalCode `json:"postalCodes,omitempty"`
8163
8164	// Regions: Regions to be targeted. For each region only dartId is
8165	// required. The other fields are populated automatically when the ad is
8166	// inserted or updated. If targeting a region, do not target or exclude
8167	// the country of the region.
8168	Regions []*Region `json:"regions,omitempty"`
8169
8170	// ForceSendFields is a list of field names (e.g. "Cities") to
8171	// unconditionally include in API requests. By default, fields with
8172	// empty or default values are omitted from API requests. However, any
8173	// non-pointer, non-interface field appearing in ForceSendFields will be
8174	// sent to the server regardless of whether the field is empty or not.
8175	// This may be used to include empty fields in Patch requests.
8176	ForceSendFields []string `json:"-"`
8177
8178	// NullFields is a list of field names (e.g. "Cities") to include in API
8179	// requests with the JSON null value. By default, fields with empty
8180	// values are omitted from API requests. However, any field with an
8181	// empty value appearing in NullFields will be sent to the server as
8182	// null. It is an error if a field in this list has a non-empty value.
8183	// This may be used to include null fields in Patch requests.
8184	NullFields []string `json:"-"`
8185}
8186
8187func (s *GeoTargeting) MarshalJSON() ([]byte, error) {
8188	type NoMethod GeoTargeting
8189	raw := NoMethod(*s)
8190	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8191}
8192
8193// InventoryItem: Represents a buy from the Planning inventory store.
8194type InventoryItem struct {
8195	// AccountId: Account ID of this inventory item.
8196	AccountId int64 `json:"accountId,omitempty,string"`
8197
8198	// AdSlots: Ad slots of this inventory item. If this inventory item
8199	// represents a standalone placement, there will be exactly one ad slot.
8200	// If this inventory item represents a placement group, there will be
8201	// more than one ad slot, each representing one child placement in that
8202	// placement group.
8203	AdSlots []*AdSlot `json:"adSlots,omitempty"`
8204
8205	// AdvertiserId: Advertiser ID of this inventory item.
8206	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
8207
8208	// ContentCategoryId: Content category ID of this inventory item.
8209	ContentCategoryId int64 `json:"contentCategoryId,omitempty,string"`
8210
8211	// EstimatedClickThroughRate: Estimated click-through rate of this
8212	// inventory item.
8213	EstimatedClickThroughRate int64 `json:"estimatedClickThroughRate,omitempty,string"`
8214
8215	// EstimatedConversionRate: Estimated conversion rate of this inventory
8216	// item.
8217	EstimatedConversionRate int64 `json:"estimatedConversionRate,omitempty,string"`
8218
8219	// Id: ID of this inventory item.
8220	Id int64 `json:"id,omitempty,string"`
8221
8222	// InPlan: Whether this inventory item is in plan.
8223	InPlan bool `json:"inPlan,omitempty"`
8224
8225	// Kind: Identifies what kind of resource this is. Value: the fixed
8226	// string "dfareporting#inventoryItem".
8227	Kind string `json:"kind,omitempty"`
8228
8229	// LastModifiedInfo: Information about the most recent modification of
8230	// this inventory item.
8231	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
8232
8233	// Name: Name of this inventory item. For standalone inventory items,
8234	// this is the same name as that of its only ad slot. For group
8235	// inventory items, this can differ from the name of any of its ad
8236	// slots.
8237	Name string `json:"name,omitempty"`
8238
8239	// NegotiationChannelId: Negotiation channel ID of this inventory item.
8240	NegotiationChannelId int64 `json:"negotiationChannelId,omitempty,string"`
8241
8242	// OrderId: Order ID of this inventory item.
8243	OrderId int64 `json:"orderId,omitempty,string"`
8244
8245	// PlacementStrategyId: Placement strategy ID of this inventory item.
8246	PlacementStrategyId int64 `json:"placementStrategyId,omitempty,string"`
8247
8248	// Pricing: Pricing of this inventory item.
8249	Pricing *Pricing `json:"pricing,omitempty"`
8250
8251	// ProjectId: Project ID of this inventory item.
8252	ProjectId int64 `json:"projectId,omitempty,string"`
8253
8254	// RfpId: RFP ID of this inventory item.
8255	RfpId int64 `json:"rfpId,omitempty,string"`
8256
8257	// SiteId: ID of the site this inventory item is associated with.
8258	SiteId int64 `json:"siteId,omitempty,string"`
8259
8260	// SubaccountId: Subaccount ID of this inventory item.
8261	SubaccountId int64 `json:"subaccountId,omitempty,string"`
8262
8263	// Type: Type of inventory item.
8264	//
8265	// Possible values:
8266	//   "PLANNING_PLACEMENT_TYPE_REGULAR"
8267	//   "PLANNING_PLACEMENT_TYPE_CREDIT"
8268	Type string `json:"type,omitempty"`
8269
8270	// ServerResponse contains the HTTP response code and headers from the
8271	// server.
8272	googleapi.ServerResponse `json:"-"`
8273
8274	// ForceSendFields is a list of field names (e.g. "AccountId") to
8275	// unconditionally include in API requests. By default, fields with
8276	// empty or default values are omitted from API requests. However, any
8277	// non-pointer, non-interface field appearing in ForceSendFields will be
8278	// sent to the server regardless of whether the field is empty or not.
8279	// This may be used to include empty fields in Patch requests.
8280	ForceSendFields []string `json:"-"`
8281
8282	// NullFields is a list of field names (e.g. "AccountId") to include in
8283	// API requests with the JSON null value. By default, fields with empty
8284	// values are omitted from API requests. However, any field with an
8285	// empty value appearing in NullFields will be sent to the server as
8286	// null. It is an error if a field in this list has a non-empty value.
8287	// This may be used to include null fields in Patch requests.
8288	NullFields []string `json:"-"`
8289}
8290
8291func (s *InventoryItem) MarshalJSON() ([]byte, error) {
8292	type NoMethod InventoryItem
8293	raw := NoMethod(*s)
8294	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8295}
8296
8297// InventoryItemsListResponse: Inventory item List Response
8298type InventoryItemsListResponse struct {
8299	// InventoryItems: Inventory item collection
8300	InventoryItems []*InventoryItem `json:"inventoryItems,omitempty"`
8301
8302	// Kind: Identifies what kind of resource this is. Value: the fixed
8303	// string "dfareporting#inventoryItemsListResponse".
8304	Kind string `json:"kind,omitempty"`
8305
8306	// NextPageToken: Pagination token to be used for the next list
8307	// operation.
8308	NextPageToken string `json:"nextPageToken,omitempty"`
8309
8310	// ServerResponse contains the HTTP response code and headers from the
8311	// server.
8312	googleapi.ServerResponse `json:"-"`
8313
8314	// ForceSendFields is a list of field names (e.g. "InventoryItems") to
8315	// unconditionally include in API requests. By default, fields with
8316	// empty or default values are omitted from API requests. However, any
8317	// non-pointer, non-interface field appearing in ForceSendFields will be
8318	// sent to the server regardless of whether the field is empty or not.
8319	// This may be used to include empty fields in Patch requests.
8320	ForceSendFields []string `json:"-"`
8321
8322	// NullFields is a list of field names (e.g. "InventoryItems") to
8323	// include in API requests with the JSON null value. By default, fields
8324	// with empty values are omitted from API requests. However, any field
8325	// with an empty value appearing in NullFields will be sent to the
8326	// server as null. It is an error if a field in this list has a
8327	// non-empty value. This may be used to include null fields in Patch
8328	// requests.
8329	NullFields []string `json:"-"`
8330}
8331
8332func (s *InventoryItemsListResponse) MarshalJSON() ([]byte, error) {
8333	type NoMethod InventoryItemsListResponse
8334	raw := NoMethod(*s)
8335	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8336}
8337
8338// KeyValueTargetingExpression: Key Value Targeting Expression.
8339type KeyValueTargetingExpression struct {
8340	// Expression: Keyword expression being targeted by the ad.
8341	Expression string `json:"expression,omitempty"`
8342
8343	// ForceSendFields is a list of field names (e.g. "Expression") to
8344	// unconditionally include in API requests. By default, fields with
8345	// empty or default values are omitted from API requests. However, any
8346	// non-pointer, non-interface field appearing in ForceSendFields will be
8347	// sent to the server regardless of whether the field is empty or not.
8348	// This may be used to include empty fields in Patch requests.
8349	ForceSendFields []string `json:"-"`
8350
8351	// NullFields is a list of field names (e.g. "Expression") to include in
8352	// API requests with the JSON null value. By default, fields with empty
8353	// values are omitted from API requests. However, any field with an
8354	// empty value appearing in NullFields will be sent to the server as
8355	// null. It is an error if a field in this list has a non-empty value.
8356	// This may be used to include null fields in Patch requests.
8357	NullFields []string `json:"-"`
8358}
8359
8360func (s *KeyValueTargetingExpression) MarshalJSON() ([]byte, error) {
8361	type NoMethod KeyValueTargetingExpression
8362	raw := NoMethod(*s)
8363	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8364}
8365
8366// LandingPage: Contains information about where a user's browser is
8367// taken after the user clicks an ad.
8368type LandingPage struct {
8369	// AdvertiserId: Advertiser ID of this landing page. This is a required
8370	// field.
8371	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
8372
8373	// Archived: Whether this landing page has been archived.
8374	Archived bool `json:"archived,omitempty"`
8375
8376	// DeepLinks: Links that will direct the user to a mobile app, if
8377	// installed.
8378	DeepLinks []*DeepLink `json:"deepLinks,omitempty"`
8379
8380	// Id: ID of this landing page. This is a read-only, auto-generated
8381	// field.
8382	Id int64 `json:"id,omitempty,string"`
8383
8384	// Kind: Identifies what kind of resource this is. Value: the fixed
8385	// string "dfareporting#landingPage".
8386	Kind string `json:"kind,omitempty"`
8387
8388	// Name: Name of this landing page. This is a required field. It must be
8389	// less than 256 characters long.
8390	Name string `json:"name,omitempty"`
8391
8392	// Url: URL of this landing page. This is a required field.
8393	Url string `json:"url,omitempty"`
8394
8395	// ServerResponse contains the HTTP response code and headers from the
8396	// server.
8397	googleapi.ServerResponse `json:"-"`
8398
8399	// ForceSendFields is a list of field names (e.g. "AdvertiserId") to
8400	// unconditionally include in API requests. By default, fields with
8401	// empty or default values are omitted from API requests. However, any
8402	// non-pointer, non-interface field appearing in ForceSendFields will be
8403	// sent to the server regardless of whether the field is empty or not.
8404	// This may be used to include empty fields in Patch requests.
8405	ForceSendFields []string `json:"-"`
8406
8407	// NullFields is a list of field names (e.g. "AdvertiserId") to include
8408	// in API requests with the JSON null value. By default, fields with
8409	// empty values are omitted from API requests. However, any field with
8410	// an empty value appearing in NullFields will be sent to the server as
8411	// null. It is an error if a field in this list has a non-empty value.
8412	// This may be used to include null fields in Patch requests.
8413	NullFields []string `json:"-"`
8414}
8415
8416func (s *LandingPage) MarshalJSON() ([]byte, error) {
8417	type NoMethod LandingPage
8418	raw := NoMethod(*s)
8419	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8420}
8421
8422// Language: Contains information about a language that can be targeted
8423// by ads.
8424type Language struct {
8425	// Id: Language ID of this language. This is the ID used for targeting
8426	// and generating reports.
8427	Id int64 `json:"id,omitempty,string"`
8428
8429	// Kind: Identifies what kind of resource this is. Value: the fixed
8430	// string "dfareporting#language".
8431	Kind string `json:"kind,omitempty"`
8432
8433	// LanguageCode: Format of language code is an ISO 639 two-letter
8434	// language code optionally followed by an underscore followed by an ISO
8435	// 3166 code. Examples are "en" for English or "zh_CN" for Simplified
8436	// Chinese.
8437	LanguageCode string `json:"languageCode,omitempty"`
8438
8439	// Name: Name of this language.
8440	Name string `json:"name,omitempty"`
8441
8442	// ForceSendFields is a list of field names (e.g. "Id") to
8443	// unconditionally include in API requests. By default, fields with
8444	// empty or default values are omitted from API requests. However, any
8445	// non-pointer, non-interface field appearing in ForceSendFields will be
8446	// sent to the server regardless of whether the field is empty or not.
8447	// This may be used to include empty fields in Patch requests.
8448	ForceSendFields []string `json:"-"`
8449
8450	// NullFields is a list of field names (e.g. "Id") to include in API
8451	// requests with the JSON null value. By default, fields with empty
8452	// values are omitted from API requests. However, any field with an
8453	// empty value appearing in NullFields will be sent to the server as
8454	// null. It is an error if a field in this list has a non-empty value.
8455	// This may be used to include null fields in Patch requests.
8456	NullFields []string `json:"-"`
8457}
8458
8459func (s *Language) MarshalJSON() ([]byte, error) {
8460	type NoMethod Language
8461	raw := NoMethod(*s)
8462	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8463}
8464
8465// LanguageTargeting: Language Targeting.
8466type LanguageTargeting struct {
8467	// Languages: Languages that this ad targets. For each language only
8468	// languageId is required. The other fields are populated automatically
8469	// when the ad is inserted or updated.
8470	Languages []*Language `json:"languages,omitempty"`
8471
8472	// ForceSendFields is a list of field names (e.g. "Languages") to
8473	// unconditionally include in API requests. By default, fields with
8474	// empty or default values are omitted from API requests. However, any
8475	// non-pointer, non-interface field appearing in ForceSendFields will be
8476	// sent to the server regardless of whether the field is empty or not.
8477	// This may be used to include empty fields in Patch requests.
8478	ForceSendFields []string `json:"-"`
8479
8480	// NullFields is a list of field names (e.g. "Languages") to include in
8481	// API requests with the JSON null value. By default, fields with empty
8482	// values are omitted from API requests. However, any field with an
8483	// empty value appearing in NullFields will be sent to the server as
8484	// null. It is an error if a field in this list has a non-empty value.
8485	// This may be used to include null fields in Patch requests.
8486	NullFields []string `json:"-"`
8487}
8488
8489func (s *LanguageTargeting) MarshalJSON() ([]byte, error) {
8490	type NoMethod LanguageTargeting
8491	raw := NoMethod(*s)
8492	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8493}
8494
8495// LanguagesListResponse: Language List Response
8496type LanguagesListResponse struct {
8497	// Kind: Identifies what kind of resource this is. Value: the fixed
8498	// string "dfareporting#languagesListResponse".
8499	Kind string `json:"kind,omitempty"`
8500
8501	// Languages: Language collection.
8502	Languages []*Language `json:"languages,omitempty"`
8503
8504	// ServerResponse contains the HTTP response code and headers from the
8505	// server.
8506	googleapi.ServerResponse `json:"-"`
8507
8508	// ForceSendFields is a list of field names (e.g. "Kind") to
8509	// unconditionally include in API requests. By default, fields with
8510	// empty or default values are omitted from API requests. However, any
8511	// non-pointer, non-interface field appearing in ForceSendFields will be
8512	// sent to the server regardless of whether the field is empty or not.
8513	// This may be used to include empty fields in Patch requests.
8514	ForceSendFields []string `json:"-"`
8515
8516	// NullFields is a list of field names (e.g. "Kind") to include in API
8517	// requests with the JSON null value. By default, fields with empty
8518	// values are omitted from API requests. However, any field with an
8519	// empty value appearing in NullFields will be sent to the server as
8520	// null. It is an error if a field in this list has a non-empty value.
8521	// This may be used to include null fields in Patch requests.
8522	NullFields []string `json:"-"`
8523}
8524
8525func (s *LanguagesListResponse) MarshalJSON() ([]byte, error) {
8526	type NoMethod LanguagesListResponse
8527	raw := NoMethod(*s)
8528	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8529}
8530
8531// LastModifiedInfo: Modification timestamp.
8532type LastModifiedInfo struct {
8533	// Time: Timestamp of the last change in milliseconds since epoch.
8534	Time int64 `json:"time,omitempty,string"`
8535
8536	// ForceSendFields is a list of field names (e.g. "Time") to
8537	// unconditionally include in API requests. By default, fields with
8538	// empty or default values are omitted from API requests. However, any
8539	// non-pointer, non-interface field appearing in ForceSendFields will be
8540	// sent to the server regardless of whether the field is empty or not.
8541	// This may be used to include empty fields in Patch requests.
8542	ForceSendFields []string `json:"-"`
8543
8544	// NullFields is a list of field names (e.g. "Time") to include in API
8545	// requests with the JSON null value. By default, fields with empty
8546	// values are omitted from API requests. However, any field with an
8547	// empty value appearing in NullFields will be sent to the server as
8548	// null. It is an error if a field in this list has a non-empty value.
8549	// This may be used to include null fields in Patch requests.
8550	NullFields []string `json:"-"`
8551}
8552
8553func (s *LastModifiedInfo) MarshalJSON() ([]byte, error) {
8554	type NoMethod LastModifiedInfo
8555	raw := NoMethod(*s)
8556	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8557}
8558
8559// ListPopulationClause: A group clause made up of list population terms
8560// representing constraints joined by ORs.
8561type ListPopulationClause struct {
8562	// Terms: Terms of this list population clause. Each clause is made up
8563	// of list population terms representing constraints and are joined by
8564	// ORs.
8565	Terms []*ListPopulationTerm `json:"terms,omitempty"`
8566
8567	// ForceSendFields is a list of field names (e.g. "Terms") to
8568	// unconditionally include in API requests. By default, fields with
8569	// empty or default values are omitted from API requests. However, any
8570	// non-pointer, non-interface field appearing in ForceSendFields will be
8571	// sent to the server regardless of whether the field is empty or not.
8572	// This may be used to include empty fields in Patch requests.
8573	ForceSendFields []string `json:"-"`
8574
8575	// NullFields is a list of field names (e.g. "Terms") to include in API
8576	// requests with the JSON null value. By default, fields with empty
8577	// values are omitted from API requests. However, any field with an
8578	// empty value appearing in NullFields will be sent to the server as
8579	// null. It is an error if a field in this list has a non-empty value.
8580	// This may be used to include null fields in Patch requests.
8581	NullFields []string `json:"-"`
8582}
8583
8584func (s *ListPopulationClause) MarshalJSON() ([]byte, error) {
8585	type NoMethod ListPopulationClause
8586	raw := NoMethod(*s)
8587	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8588}
8589
8590// ListPopulationRule: Remarketing List Population Rule.
8591type ListPopulationRule struct {
8592	// FloodlightActivityId: Floodlight activity ID associated with this
8593	// rule. This field can be left blank.
8594	FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"`
8595
8596	// FloodlightActivityName: Name of floodlight activity associated with
8597	// this rule. This is a read-only, auto-generated field.
8598	FloodlightActivityName string `json:"floodlightActivityName,omitempty"`
8599
8600	// ListPopulationClauses: Clauses that make up this list population
8601	// rule. Clauses are joined by ANDs, and the clauses themselves are made
8602	// up of list population terms which are joined by ORs.
8603	ListPopulationClauses []*ListPopulationClause `json:"listPopulationClauses,omitempty"`
8604
8605	// ForceSendFields is a list of field names (e.g.
8606	// "FloodlightActivityId") to unconditionally include in API requests.
8607	// By default, fields with empty or default values are omitted from API
8608	// requests. However, any non-pointer, non-interface field appearing in
8609	// ForceSendFields will be sent to the server regardless of whether the
8610	// field is empty or not. This may be used to include empty fields in
8611	// Patch requests.
8612	ForceSendFields []string `json:"-"`
8613
8614	// NullFields is a list of field names (e.g. "FloodlightActivityId") to
8615	// include in API requests with the JSON null value. By default, fields
8616	// with empty values are omitted from API requests. However, any field
8617	// with an empty value appearing in NullFields will be sent to the
8618	// server as null. It is an error if a field in this list has a
8619	// non-empty value. This may be used to include null fields in Patch
8620	// requests.
8621	NullFields []string `json:"-"`
8622}
8623
8624func (s *ListPopulationRule) MarshalJSON() ([]byte, error) {
8625	type NoMethod ListPopulationRule
8626	raw := NoMethod(*s)
8627	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8628}
8629
8630// ListPopulationTerm: Remarketing List Population Rule Term.
8631type ListPopulationTerm struct {
8632	// Contains: Will be true if the term should check if the user is in the
8633	// list and false if the term should check if the user is not in the
8634	// list. This field is only relevant when type is set to
8635	// LIST_MEMBERSHIP_TERM. False by default.
8636	Contains bool `json:"contains,omitempty"`
8637
8638	// Negation: Whether to negate the comparison result of this term during
8639	// rule evaluation. This field is only relevant when type is left unset
8640	// or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
8641	Negation bool `json:"negation,omitempty"`
8642
8643	// Operator: Comparison operator of this term. This field is only
8644	// relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or
8645	// REFERRER_TERM.
8646	//
8647	// Possible values:
8648	//   "NUM_EQUALS"
8649	//   "NUM_LESS_THAN"
8650	//   "NUM_LESS_THAN_EQUAL"
8651	//   "NUM_GREATER_THAN"
8652	//   "NUM_GREATER_THAN_EQUAL"
8653	//   "STRING_EQUALS"
8654	//   "STRING_CONTAINS"
8655	Operator string `json:"operator,omitempty"`
8656
8657	// RemarketingListId: ID of the list in question. This field is only
8658	// relevant when type is set to LIST_MEMBERSHIP_TERM.
8659	RemarketingListId int64 `json:"remarketingListId,omitempty,string"`
8660
8661	// Type: List population term type determines the applicable fields in
8662	// this object. If left unset or set to CUSTOM_VARIABLE_TERM, then
8663	// variableName, variableFriendlyName, operator, value, and negation are
8664	// applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and
8665	// contains are applicable. If set to REFERRER_TERM then operator,
8666	// value, and negation are applicable.
8667	//
8668	// Possible values:
8669	//   "CUSTOM_VARIABLE_TERM"
8670	//   "LIST_MEMBERSHIP_TERM"
8671	//   "REFERRER_TERM"
8672	Type string `json:"type,omitempty"`
8673
8674	// Value: Literal to compare the variable to. This field is only
8675	// relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or
8676	// REFERRER_TERM.
8677	Value string `json:"value,omitempty"`
8678
8679	// VariableFriendlyName: Friendly name of this term's variable. This is
8680	// a read-only, auto-generated field. This field is only relevant when
8681	// type is left unset or set to CUSTOM_VARIABLE_TERM.
8682	VariableFriendlyName string `json:"variableFriendlyName,omitempty"`
8683
8684	// VariableName: Name of the variable (U1, U2, etc.) being compared in
8685	// this term. This field is only relevant when type is set to null,
8686	// CUSTOM_VARIABLE_TERM or REFERRER_TERM.
8687	VariableName string `json:"variableName,omitempty"`
8688
8689	// ForceSendFields is a list of field names (e.g. "Contains") to
8690	// unconditionally include in API requests. By default, fields with
8691	// empty or default values are omitted from API requests. However, any
8692	// non-pointer, non-interface field appearing in ForceSendFields will be
8693	// sent to the server regardless of whether the field is empty or not.
8694	// This may be used to include empty fields in Patch requests.
8695	ForceSendFields []string `json:"-"`
8696
8697	// NullFields is a list of field names (e.g. "Contains") to include in
8698	// API requests with the JSON null value. By default, fields with empty
8699	// values are omitted from API requests. However, any field with an
8700	// empty value appearing in NullFields will be sent to the server as
8701	// null. It is an error if a field in this list has a non-empty value.
8702	// This may be used to include null fields in Patch requests.
8703	NullFields []string `json:"-"`
8704}
8705
8706func (s *ListPopulationTerm) MarshalJSON() ([]byte, error) {
8707	type NoMethod ListPopulationTerm
8708	raw := NoMethod(*s)
8709	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8710}
8711
8712// ListTargetingExpression: Remarketing List Targeting Expression.
8713type ListTargetingExpression struct {
8714	// Expression: Expression describing which lists are being targeted by
8715	// the ad.
8716	Expression string `json:"expression,omitempty"`
8717
8718	// ForceSendFields is a list of field names (e.g. "Expression") to
8719	// unconditionally include in API requests. By default, fields with
8720	// empty or default values are omitted from API requests. However, any
8721	// non-pointer, non-interface field appearing in ForceSendFields will be
8722	// sent to the server regardless of whether the field is empty or not.
8723	// This may be used to include empty fields in Patch requests.
8724	ForceSendFields []string `json:"-"`
8725
8726	// NullFields is a list of field names (e.g. "Expression") to include in
8727	// API requests with the JSON null value. By default, fields with empty
8728	// values are omitted from API requests. However, any field with an
8729	// empty value appearing in NullFields will be sent to the server as
8730	// null. It is an error if a field in this list has a non-empty value.
8731	// This may be used to include null fields in Patch requests.
8732	NullFields []string `json:"-"`
8733}
8734
8735func (s *ListTargetingExpression) MarshalJSON() ([]byte, error) {
8736	type NoMethod ListTargetingExpression
8737	raw := NoMethod(*s)
8738	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8739}
8740
8741// LookbackConfiguration: Lookback configuration settings.
8742type LookbackConfiguration struct {
8743	// ClickDuration: Lookback window, in days, from the last time a given
8744	// user clicked on one of your ads. If you enter 0, clicks will not be
8745	// considered as triggering events for floodlight tracking. If you leave
8746	// this field blank, the default value for your account will be used.
8747	// Acceptable values are 0 to 90, inclusive.
8748	ClickDuration int64 `json:"clickDuration,omitempty"`
8749
8750	// PostImpressionActivitiesDuration: Lookback window, in days, from the
8751	// last time a given user viewed one of your ads. If you enter 0,
8752	// impressions will not be considered as triggering events for
8753	// floodlight tracking. If you leave this field blank, the default value
8754	// for your account will be used. Acceptable values are 0 to 90,
8755	// inclusive.
8756	PostImpressionActivitiesDuration int64 `json:"postImpressionActivitiesDuration,omitempty"`
8757
8758	// ForceSendFields is a list of field names (e.g. "ClickDuration") to
8759	// unconditionally include in API requests. By default, fields with
8760	// empty or default values are omitted from API requests. However, any
8761	// non-pointer, non-interface field appearing in ForceSendFields will be
8762	// sent to the server regardless of whether the field is empty or not.
8763	// This may be used to include empty fields in Patch requests.
8764	ForceSendFields []string `json:"-"`
8765
8766	// NullFields is a list of field names (e.g. "ClickDuration") to include
8767	// in API requests with the JSON null value. By default, fields with
8768	// empty values are omitted from API requests. However, any field with
8769	// an empty value appearing in NullFields will be sent to the server as
8770	// null. It is an error if a field in this list has a non-empty value.
8771	// This may be used to include null fields in Patch requests.
8772	NullFields []string `json:"-"`
8773}
8774
8775func (s *LookbackConfiguration) MarshalJSON() ([]byte, error) {
8776	type NoMethod LookbackConfiguration
8777	raw := NoMethod(*s)
8778	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8779}
8780
8781type MeasurementPartnerAdvertiserLink struct {
8782	// LinkStatus: .
8783	//
8784	// Possible values:
8785	//   "MEASUREMENT_PARTNER_UNLINKED"
8786	//   "MEASUREMENT_PARTNER_LINKED"
8787	//   "MEASUREMENT_PARTNER_LINK_PENDING"
8788	//   "MEASUREMENT_PARTNER_LINK_FAILURE"
8789	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT"
8790	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING"
8791	//   "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING"
8792	//   "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING"
8793	LinkStatus string `json:"linkStatus,omitempty"`
8794
8795	// MeasurementPartner: Measurement partner used for tag wrapping.
8796	//
8797	// Possible values:
8798	//   "NONE"
8799	//   "INTEGRAL_AD_SCIENCE"
8800	MeasurementPartner string `json:"measurementPartner,omitempty"`
8801
8802	// PartnerAdvertiserId: .
8803	PartnerAdvertiserId string `json:"partnerAdvertiserId,omitempty"`
8804
8805	// ForceSendFields is a list of field names (e.g. "LinkStatus") to
8806	// unconditionally include in API requests. By default, fields with
8807	// empty or default values are omitted from API requests. However, any
8808	// non-pointer, non-interface field appearing in ForceSendFields will be
8809	// sent to the server regardless of whether the field is empty or not.
8810	// This may be used to include empty fields in Patch requests.
8811	ForceSendFields []string `json:"-"`
8812
8813	// NullFields is a list of field names (e.g. "LinkStatus") to include in
8814	// API requests with the JSON null value. By default, fields with empty
8815	// values are omitted from API requests. However, any field with an
8816	// empty value appearing in NullFields will be sent to the server as
8817	// null. It is an error if a field in this list has a non-empty value.
8818	// This may be used to include null fields in Patch requests.
8819	NullFields []string `json:"-"`
8820}
8821
8822func (s *MeasurementPartnerAdvertiserLink) MarshalJSON() ([]byte, error) {
8823	type NoMethod MeasurementPartnerAdvertiserLink
8824	raw := NoMethod(*s)
8825	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8826}
8827
8828type MeasurementPartnerCampaignLink struct {
8829	// LinkStatus: .
8830	//
8831	// Possible values:
8832	//   "MEASUREMENT_PARTNER_UNLINKED"
8833	//   "MEASUREMENT_PARTNER_LINKED"
8834	//   "MEASUREMENT_PARTNER_LINK_PENDING"
8835	//   "MEASUREMENT_PARTNER_LINK_FAILURE"
8836	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT"
8837	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING"
8838	//   "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING"
8839	//   "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING"
8840	LinkStatus string `json:"linkStatus,omitempty"`
8841
8842	// MeasurementPartner: Measurement partner used for tag wrapping.
8843	//
8844	// Possible values:
8845	//   "NONE"
8846	//   "INTEGRAL_AD_SCIENCE"
8847	MeasurementPartner string `json:"measurementPartner,omitempty"`
8848
8849	// PartnerCampaignId: Partner campaign ID needed for establishing
8850	// linking with Measurement partner.
8851	PartnerCampaignId string `json:"partnerCampaignId,omitempty"`
8852
8853	// ForceSendFields is a list of field names (e.g. "LinkStatus") to
8854	// unconditionally include in API requests. By default, fields with
8855	// empty or default values are omitted from API requests. However, any
8856	// non-pointer, non-interface field appearing in ForceSendFields will be
8857	// sent to the server regardless of whether the field is empty or not.
8858	// This may be used to include empty fields in Patch requests.
8859	ForceSendFields []string `json:"-"`
8860
8861	// NullFields is a list of field names (e.g. "LinkStatus") to include in
8862	// API requests with the JSON null value. By default, fields with empty
8863	// values are omitted from API requests. However, any field with an
8864	// empty value appearing in NullFields will be sent to the server as
8865	// null. It is an error if a field in this list has a non-empty value.
8866	// This may be used to include null fields in Patch requests.
8867	NullFields []string `json:"-"`
8868}
8869
8870func (s *MeasurementPartnerCampaignLink) MarshalJSON() ([]byte, error) {
8871	type NoMethod MeasurementPartnerCampaignLink
8872	raw := NoMethod(*s)
8873	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8874}
8875
8876// MeasurementPartnerWrappingData: Placement tag wrapping
8877type MeasurementPartnerWrappingData struct {
8878	// LinkStatus: Placement wrapping status.
8879	//
8880	// Possible values:
8881	//   "MEASUREMENT_PARTNER_UNLINKED"
8882	//   "MEASUREMENT_PARTNER_LINKED"
8883	//   "MEASUREMENT_PARTNER_LINK_PENDING"
8884	//   "MEASUREMENT_PARTNER_LINK_FAILURE"
8885	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT"
8886	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING"
8887	//   "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING"
8888	//   "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING"
8889	LinkStatus string `json:"linkStatus,omitempty"`
8890
8891	// MeasurementPartner: Measurement partner used for wrapping the
8892	// placement.
8893	//
8894	// Possible values:
8895	//   "NONE"
8896	//   "INTEGRAL_AD_SCIENCE"
8897	MeasurementPartner string `json:"measurementPartner,omitempty"`
8898
8899	// TagWrappingMode: Measurement mode for the wrapped placement.
8900	//
8901	// Possible values:
8902	//   "NONE"
8903	//   "BLOCKING"
8904	//   "MONITORING"
8905	//   "MONITORING_ONLY"
8906	//   "VIDEO_PIXEL_MONITORING"
8907	//   "TRACKING"
8908	TagWrappingMode string `json:"tagWrappingMode,omitempty"`
8909
8910	// WrappedTag: Tag provided by the measurement partner during wrapping.
8911	WrappedTag string `json:"wrappedTag,omitempty"`
8912
8913	// ForceSendFields is a list of field names (e.g. "LinkStatus") to
8914	// unconditionally include in API requests. By default, fields with
8915	// empty or default values are omitted from API requests. However, any
8916	// non-pointer, non-interface field appearing in ForceSendFields will be
8917	// sent to the server regardless of whether the field is empty or not.
8918	// This may be used to include empty fields in Patch requests.
8919	ForceSendFields []string `json:"-"`
8920
8921	// NullFields is a list of field names (e.g. "LinkStatus") to include in
8922	// API requests with the JSON null value. By default, fields with empty
8923	// values are omitted from API requests. However, any field with an
8924	// empty value appearing in NullFields will be sent to the server as
8925	// null. It is an error if a field in this list has a non-empty value.
8926	// This may be used to include null fields in Patch requests.
8927	NullFields []string `json:"-"`
8928}
8929
8930func (s *MeasurementPartnerWrappingData) MarshalJSON() ([]byte, error) {
8931	type NoMethod MeasurementPartnerWrappingData
8932	raw := NoMethod(*s)
8933	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8934}
8935
8936// Metric: Represents a metric.
8937type Metric struct {
8938	// Kind: The kind of resource this is, in this case dfareporting#metric.
8939	Kind string `json:"kind,omitempty"`
8940
8941	// Name: The metric name, e.g. dfa:impressions
8942	Name string `json:"name,omitempty"`
8943
8944	// ForceSendFields is a list of field names (e.g. "Kind") to
8945	// unconditionally include in API requests. By default, fields with
8946	// empty or default values are omitted from API requests. However, any
8947	// non-pointer, non-interface field appearing in ForceSendFields will be
8948	// sent to the server regardless of whether the field is empty or not.
8949	// This may be used to include empty fields in Patch requests.
8950	ForceSendFields []string `json:"-"`
8951
8952	// NullFields is a list of field names (e.g. "Kind") to include in API
8953	// requests with the JSON null value. By default, fields with empty
8954	// values are omitted from API requests. However, any field with an
8955	// empty value appearing in NullFields will be sent to the server as
8956	// null. It is an error if a field in this list has a non-empty value.
8957	// This may be used to include null fields in Patch requests.
8958	NullFields []string `json:"-"`
8959}
8960
8961func (s *Metric) MarshalJSON() ([]byte, error) {
8962	type NoMethod Metric
8963	raw := NoMethod(*s)
8964	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8965}
8966
8967// Metro: Contains information about a metro region that can be targeted
8968// by ads.
8969type Metro struct {
8970	// CountryCode: Country code of the country to which this metro region
8971	// belongs.
8972	CountryCode string `json:"countryCode,omitempty"`
8973
8974	// CountryDartId: DART ID of the country to which this metro region
8975	// belongs.
8976	CountryDartId int64 `json:"countryDartId,omitempty,string"`
8977
8978	// DartId: DART ID of this metro region.
8979	DartId int64 `json:"dartId,omitempty,string"`
8980
8981	// DmaId: DMA ID of this metro region. This is the ID used for targeting
8982	// and generating reports, and is equivalent to metro_code.
8983	DmaId int64 `json:"dmaId,omitempty,string"`
8984
8985	// Kind: Identifies what kind of resource this is. Value: the fixed
8986	// string "dfareporting#metro".
8987	Kind string `json:"kind,omitempty"`
8988
8989	// MetroCode: Metro code of this metro region. This is equivalent to
8990	// dma_id.
8991	MetroCode string `json:"metroCode,omitempty"`
8992
8993	// Name: Name of this metro region.
8994	Name string `json:"name,omitempty"`
8995
8996	// ForceSendFields is a list of field names (e.g. "CountryCode") to
8997	// unconditionally include in API requests. By default, fields with
8998	// empty or default values are omitted from API requests. However, any
8999	// non-pointer, non-interface field appearing in ForceSendFields will be
9000	// sent to the server regardless of whether the field is empty or not.
9001	// This may be used to include empty fields in Patch requests.
9002	ForceSendFields []string `json:"-"`
9003
9004	// NullFields is a list of field names (e.g. "CountryCode") to include
9005	// in API requests with the JSON null value. By default, fields with
9006	// empty values are omitted from API requests. However, any field with
9007	// an empty value appearing in NullFields will be sent to the server as
9008	// null. It is an error if a field in this list has a non-empty value.
9009	// This may be used to include null fields in Patch requests.
9010	NullFields []string `json:"-"`
9011}
9012
9013func (s *Metro) MarshalJSON() ([]byte, error) {
9014	type NoMethod Metro
9015	raw := NoMethod(*s)
9016	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9017}
9018
9019// MetrosListResponse: Metro List Response
9020type MetrosListResponse struct {
9021	// Kind: Identifies what kind of resource this is. Value: the fixed
9022	// string "dfareporting#metrosListResponse".
9023	Kind string `json:"kind,omitempty"`
9024
9025	// Metros: Metro collection.
9026	Metros []*Metro `json:"metros,omitempty"`
9027
9028	// ServerResponse contains the HTTP response code and headers from the
9029	// server.
9030	googleapi.ServerResponse `json:"-"`
9031
9032	// ForceSendFields is a list of field names (e.g. "Kind") to
9033	// unconditionally include in API requests. By default, fields with
9034	// empty or default values are omitted from API requests. However, any
9035	// non-pointer, non-interface field appearing in ForceSendFields will be
9036	// sent to the server regardless of whether the field is empty or not.
9037	// This may be used to include empty fields in Patch requests.
9038	ForceSendFields []string `json:"-"`
9039
9040	// NullFields is a list of field names (e.g. "Kind") to include in API
9041	// requests with the JSON null value. By default, fields with empty
9042	// values are omitted from API requests. However, any field with an
9043	// empty value appearing in NullFields will be sent to the server as
9044	// null. It is an error if a field in this list has a non-empty value.
9045	// This may be used to include null fields in Patch requests.
9046	NullFields []string `json:"-"`
9047}
9048
9049func (s *MetrosListResponse) MarshalJSON() ([]byte, error) {
9050	type NoMethod MetrosListResponse
9051	raw := NoMethod(*s)
9052	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9053}
9054
9055// MobileApp: Contains information about a mobile app. Used as a landing
9056// page deep link.
9057type MobileApp struct {
9058	// Directory: Mobile app directory.
9059	//
9060	// Possible values:
9061	//   "UNKNOWN"
9062	//   "APPLE_APP_STORE"
9063	//   "GOOGLE_PLAY_STORE"
9064	Directory string `json:"directory,omitempty"`
9065
9066	// Id: ID of this mobile app.
9067	Id string `json:"id,omitempty"`
9068
9069	// Kind: Identifies what kind of resource this is. Value: the fixed
9070	// string "dfareporting#mobileApp".
9071	Kind string `json:"kind,omitempty"`
9072
9073	// PublisherName: Publisher name.
9074	PublisherName string `json:"publisherName,omitempty"`
9075
9076	// Title: Title of this mobile app.
9077	Title string `json:"title,omitempty"`
9078
9079	// ServerResponse contains the HTTP response code and headers from the
9080	// server.
9081	googleapi.ServerResponse `json:"-"`
9082
9083	// ForceSendFields is a list of field names (e.g. "Directory") to
9084	// unconditionally include in API requests. By default, fields with
9085	// empty or default values are omitted from API requests. However, any
9086	// non-pointer, non-interface field appearing in ForceSendFields will be
9087	// sent to the server regardless of whether the field is empty or not.
9088	// This may be used to include empty fields in Patch requests.
9089	ForceSendFields []string `json:"-"`
9090
9091	// NullFields is a list of field names (e.g. "Directory") to include in
9092	// API requests with the JSON null value. By default, fields with empty
9093	// values are omitted from API requests. However, any field with an
9094	// empty value appearing in NullFields will be sent to the server as
9095	// null. It is an error if a field in this list has a non-empty value.
9096	// This may be used to include null fields in Patch requests.
9097	NullFields []string `json:"-"`
9098}
9099
9100func (s *MobileApp) MarshalJSON() ([]byte, error) {
9101	type NoMethod MobileApp
9102	raw := NoMethod(*s)
9103	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9104}
9105
9106// MobileAppsListResponse: Mobile app List Response
9107type MobileAppsListResponse struct {
9108	// Kind: Identifies what kind of resource this is. Value: the fixed
9109	// string "dfareporting#mobileAppsListResponse".
9110	Kind string `json:"kind,omitempty"`
9111
9112	// MobileApps: Mobile apps collection.
9113	MobileApps []*MobileApp `json:"mobileApps,omitempty"`
9114
9115	// NextPageToken: Pagination token to be used for the next list
9116	// operation.
9117	NextPageToken string `json:"nextPageToken,omitempty"`
9118
9119	// ServerResponse contains the HTTP response code and headers from the
9120	// server.
9121	googleapi.ServerResponse `json:"-"`
9122
9123	// ForceSendFields is a list of field names (e.g. "Kind") to
9124	// unconditionally include in API requests. By default, fields with
9125	// empty or default values are omitted from API requests. However, any
9126	// non-pointer, non-interface field appearing in ForceSendFields will be
9127	// sent to the server regardless of whether the field is empty or not.
9128	// This may be used to include empty fields in Patch requests.
9129	ForceSendFields []string `json:"-"`
9130
9131	// NullFields is a list of field names (e.g. "Kind") to include in API
9132	// requests with the JSON null value. By default, fields with empty
9133	// values are omitted from API requests. However, any field with an
9134	// empty value appearing in NullFields will be sent to the server as
9135	// null. It is an error if a field in this list has a non-empty value.
9136	// This may be used to include null fields in Patch requests.
9137	NullFields []string `json:"-"`
9138}
9139
9140func (s *MobileAppsListResponse) MarshalJSON() ([]byte, error) {
9141	type NoMethod MobileAppsListResponse
9142	raw := NoMethod(*s)
9143	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9144}
9145
9146// MobileCarrier: Contains information about a mobile carrier that can
9147// be targeted by ads.
9148type MobileCarrier struct {
9149	// CountryCode: Country code of the country to which this mobile carrier
9150	// belongs.
9151	CountryCode string `json:"countryCode,omitempty"`
9152
9153	// CountryDartId: DART ID of the country to which this mobile carrier
9154	// belongs.
9155	CountryDartId int64 `json:"countryDartId,omitempty,string"`
9156
9157	// Id: ID of this mobile carrier.
9158	Id int64 `json:"id,omitempty,string"`
9159
9160	// Kind: Identifies what kind of resource this is. Value: the fixed
9161	// string "dfareporting#mobileCarrier".
9162	Kind string `json:"kind,omitempty"`
9163
9164	// Name: Name of this mobile carrier.
9165	Name string `json:"name,omitempty"`
9166
9167	// ServerResponse contains the HTTP response code and headers from the
9168	// server.
9169	googleapi.ServerResponse `json:"-"`
9170
9171	// ForceSendFields is a list of field names (e.g. "CountryCode") to
9172	// unconditionally include in API requests. By default, fields with
9173	// empty or default values are omitted from API requests. However, any
9174	// non-pointer, non-interface field appearing in ForceSendFields will be
9175	// sent to the server regardless of whether the field is empty or not.
9176	// This may be used to include empty fields in Patch requests.
9177	ForceSendFields []string `json:"-"`
9178
9179	// NullFields is a list of field names (e.g. "CountryCode") to include
9180	// in API requests with the JSON null value. By default, fields with
9181	// empty values are omitted from API requests. However, any field with
9182	// an empty value appearing in NullFields will be sent to the server as
9183	// null. It is an error if a field in this list has a non-empty value.
9184	// This may be used to include null fields in Patch requests.
9185	NullFields []string `json:"-"`
9186}
9187
9188func (s *MobileCarrier) MarshalJSON() ([]byte, error) {
9189	type NoMethod MobileCarrier
9190	raw := NoMethod(*s)
9191	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9192}
9193
9194// MobileCarriersListResponse: Mobile Carrier List Response
9195type MobileCarriersListResponse struct {
9196	// Kind: Identifies what kind of resource this is. Value: the fixed
9197	// string "dfareporting#mobileCarriersListResponse".
9198	Kind string `json:"kind,omitempty"`
9199
9200	// MobileCarriers: Mobile carrier collection.
9201	MobileCarriers []*MobileCarrier `json:"mobileCarriers,omitempty"`
9202
9203	// ServerResponse contains the HTTP response code and headers from the
9204	// server.
9205	googleapi.ServerResponse `json:"-"`
9206
9207	// ForceSendFields is a list of field names (e.g. "Kind") to
9208	// unconditionally include in API requests. By default, fields with
9209	// empty or default values are omitted from API requests. However, any
9210	// non-pointer, non-interface field appearing in ForceSendFields will be
9211	// sent to the server regardless of whether the field is empty or not.
9212	// This may be used to include empty fields in Patch requests.
9213	ForceSendFields []string `json:"-"`
9214
9215	// NullFields is a list of field names (e.g. "Kind") to include in API
9216	// requests with the JSON null value. By default, fields with empty
9217	// values are omitted from API requests. However, any field with an
9218	// empty value appearing in NullFields will be sent to the server as
9219	// null. It is an error if a field in this list has a non-empty value.
9220	// This may be used to include null fields in Patch requests.
9221	NullFields []string `json:"-"`
9222}
9223
9224func (s *MobileCarriersListResponse) MarshalJSON() ([]byte, error) {
9225	type NoMethod MobileCarriersListResponse
9226	raw := NoMethod(*s)
9227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9228}
9229
9230// ObaIcon: Online Behavioral Advertiser icon.
9231type ObaIcon struct {
9232	// IconClickThroughUrl: URL to redirect to when an OBA icon is clicked.
9233	IconClickThroughUrl string `json:"iconClickThroughUrl,omitempty"`
9234
9235	// IconClickTrackingUrl: URL to track click when an OBA icon is clicked.
9236	IconClickTrackingUrl string `json:"iconClickTrackingUrl,omitempty"`
9237
9238	// IconViewTrackingUrl: URL to track view when an OBA icon is clicked.
9239	IconViewTrackingUrl string `json:"iconViewTrackingUrl,omitempty"`
9240
9241	// Program: Identifies the industry initiative that the icon supports.
9242	// For example, AdChoices.
9243	Program string `json:"program,omitempty"`
9244
9245	// ResourceUrl: OBA icon resource URL. Campaign Manager only supports
9246	// image and JavaScript icons. Learn more
9247	ResourceUrl string `json:"resourceUrl,omitempty"`
9248
9249	// Size: OBA icon size.
9250	Size *Size `json:"size,omitempty"`
9251
9252	// XPosition: OBA icon x coordinate position. Accepted values are left
9253	// or right.
9254	XPosition string `json:"xPosition,omitempty"`
9255
9256	// YPosition: OBA icon y coordinate position. Accepted values are top or
9257	// bottom.
9258	YPosition string `json:"yPosition,omitempty"`
9259
9260	// ForceSendFields is a list of field names (e.g. "IconClickThroughUrl")
9261	// to unconditionally include in API requests. By default, fields with
9262	// empty or default values are omitted from API requests. However, any
9263	// non-pointer, non-interface field appearing in ForceSendFields will be
9264	// sent to the server regardless of whether the field is empty or not.
9265	// This may be used to include empty fields in Patch requests.
9266	ForceSendFields []string `json:"-"`
9267
9268	// NullFields is a list of field names (e.g. "IconClickThroughUrl") to
9269	// include in API requests with the JSON null value. By default, fields
9270	// with empty values are omitted from API requests. However, any field
9271	// with an empty value appearing in NullFields will be sent to the
9272	// server as null. It is an error if a field in this list has a
9273	// non-empty value. This may be used to include null fields in Patch
9274	// requests.
9275	NullFields []string `json:"-"`
9276}
9277
9278func (s *ObaIcon) MarshalJSON() ([]byte, error) {
9279	type NoMethod ObaIcon
9280	raw := NoMethod(*s)
9281	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9282}
9283
9284// ObjectFilter: Object Filter.
9285type ObjectFilter struct {
9286	// Kind: Identifies what kind of resource this is. Value: the fixed
9287	// string "dfareporting#objectFilter".
9288	Kind string `json:"kind,omitempty"`
9289
9290	// ObjectIds: Applicable when status is ASSIGNED. The user has access to
9291	// objects with these object IDs.
9292	ObjectIds googleapi.Int64s `json:"objectIds,omitempty"`
9293
9294	// Status: Status of the filter. NONE means the user has access to none
9295	// of the objects. ALL means the user has access to all objects.
9296	// ASSIGNED means the user has access to the objects with IDs in the
9297	// objectIds list.
9298	//
9299	// Possible values:
9300	//   "NONE"
9301	//   "ASSIGNED"
9302	//   "ALL"
9303	Status string `json:"status,omitempty"`
9304
9305	// ForceSendFields is a list of field names (e.g. "Kind") to
9306	// unconditionally include in API requests. By default, fields with
9307	// empty or default values are omitted from API requests. However, any
9308	// non-pointer, non-interface field appearing in ForceSendFields will be
9309	// sent to the server regardless of whether the field is empty or not.
9310	// This may be used to include empty fields in Patch requests.
9311	ForceSendFields []string `json:"-"`
9312
9313	// NullFields is a list of field names (e.g. "Kind") to include in API
9314	// requests with the JSON null value. By default, fields with empty
9315	// values are omitted from API requests. However, any field with an
9316	// empty value appearing in NullFields will be sent to the server as
9317	// null. It is an error if a field in this list has a non-empty value.
9318	// This may be used to include null fields in Patch requests.
9319	NullFields []string `json:"-"`
9320}
9321
9322func (s *ObjectFilter) MarshalJSON() ([]byte, error) {
9323	type NoMethod ObjectFilter
9324	raw := NoMethod(*s)
9325	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9326}
9327
9328// OffsetPosition: Offset Position.
9329type OffsetPosition struct {
9330	// Left: Offset distance from left side of an asset or a window.
9331	Left int64 `json:"left,omitempty"`
9332
9333	// Top: Offset distance from top side of an asset or a window.
9334	Top int64 `json:"top,omitempty"`
9335
9336	// ForceSendFields is a list of field names (e.g. "Left") to
9337	// unconditionally include in API requests. By default, fields with
9338	// empty or default values are omitted from API requests. However, any
9339	// non-pointer, non-interface field appearing in ForceSendFields will be
9340	// sent to the server regardless of whether the field is empty or not.
9341	// This may be used to include empty fields in Patch requests.
9342	ForceSendFields []string `json:"-"`
9343
9344	// NullFields is a list of field names (e.g. "Left") to include in API
9345	// requests with the JSON null value. By default, fields with empty
9346	// values are omitted from API requests. However, any field with an
9347	// empty value appearing in NullFields will be sent to the server as
9348	// null. It is an error if a field in this list has a non-empty value.
9349	// This may be used to include null fields in Patch requests.
9350	NullFields []string `json:"-"`
9351}
9352
9353func (s *OffsetPosition) MarshalJSON() ([]byte, error) {
9354	type NoMethod OffsetPosition
9355	raw := NoMethod(*s)
9356	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9357}
9358
9359// OmnitureSettings: Omniture Integration Settings.
9360type OmnitureSettings struct {
9361	// OmnitureCostDataEnabled: Whether placement cost data will be sent to
9362	// Omniture. This property can be enabled only if
9363	// omnitureIntegrationEnabled is true.
9364	OmnitureCostDataEnabled bool `json:"omnitureCostDataEnabled,omitempty"`
9365
9366	// OmnitureIntegrationEnabled: Whether Omniture integration is enabled.
9367	// This property can be enabled only when the "Advanced Ad Serving"
9368	// account setting is enabled.
9369	OmnitureIntegrationEnabled bool `json:"omnitureIntegrationEnabled,omitempty"`
9370
9371	// ForceSendFields is a list of field names (e.g.
9372	// "OmnitureCostDataEnabled") to unconditionally include in API
9373	// requests. By default, fields with empty or default values are omitted
9374	// from API requests. However, any non-pointer, non-interface field
9375	// appearing in ForceSendFields will be sent to the server regardless of
9376	// whether the field is empty or not. This may be used to include empty
9377	// fields in Patch requests.
9378	ForceSendFields []string `json:"-"`
9379
9380	// NullFields is a list of field names (e.g. "OmnitureCostDataEnabled")
9381	// to include in API requests with the JSON null value. By default,
9382	// fields with empty values are omitted from API requests. However, any
9383	// field with an empty value appearing in NullFields will be sent to the
9384	// server as null. It is an error if a field in this list has a
9385	// non-empty value. This may be used to include null fields in Patch
9386	// requests.
9387	NullFields []string `json:"-"`
9388}
9389
9390func (s *OmnitureSettings) MarshalJSON() ([]byte, error) {
9391	type NoMethod OmnitureSettings
9392	raw := NoMethod(*s)
9393	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9394}
9395
9396// OperatingSystem: Contains information about an operating system that
9397// can be targeted by ads.
9398type OperatingSystem struct {
9399	// DartId: DART ID of this operating system. This is the ID used for
9400	// targeting.
9401	DartId int64 `json:"dartId,omitempty,string"`
9402
9403	// Desktop: Whether this operating system is for desktop.
9404	Desktop bool `json:"desktop,omitempty"`
9405
9406	// Kind: Identifies what kind of resource this is. Value: the fixed
9407	// string "dfareporting#operatingSystem".
9408	Kind string `json:"kind,omitempty"`
9409
9410	// Mobile: Whether this operating system is for mobile.
9411	Mobile bool `json:"mobile,omitempty"`
9412
9413	// Name: Name of this operating system.
9414	Name string `json:"name,omitempty"`
9415
9416	// ServerResponse contains the HTTP response code and headers from the
9417	// server.
9418	googleapi.ServerResponse `json:"-"`
9419
9420	// ForceSendFields is a list of field names (e.g. "DartId") to
9421	// unconditionally include in API requests. By default, fields with
9422	// empty or default values are omitted from API requests. However, any
9423	// non-pointer, non-interface field appearing in ForceSendFields will be
9424	// sent to the server regardless of whether the field is empty or not.
9425	// This may be used to include empty fields in Patch requests.
9426	ForceSendFields []string `json:"-"`
9427
9428	// NullFields is a list of field names (e.g. "DartId") to include in API
9429	// requests with the JSON null value. By default, fields with empty
9430	// values are omitted from API requests. However, any field with an
9431	// empty value appearing in NullFields will be sent to the server as
9432	// null. It is an error if a field in this list has a non-empty value.
9433	// This may be used to include null fields in Patch requests.
9434	NullFields []string `json:"-"`
9435}
9436
9437func (s *OperatingSystem) MarshalJSON() ([]byte, error) {
9438	type NoMethod OperatingSystem
9439	raw := NoMethod(*s)
9440	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9441}
9442
9443// OperatingSystemVersion: Contains information about a particular
9444// version of an operating system that can be targeted by ads.
9445type OperatingSystemVersion struct {
9446	// Id: ID of this operating system version.
9447	Id int64 `json:"id,omitempty,string"`
9448
9449	// Kind: Identifies what kind of resource this is. Value: the fixed
9450	// string "dfareporting#operatingSystemVersion".
9451	Kind string `json:"kind,omitempty"`
9452
9453	// MajorVersion: Major version (leftmost number) of this operating
9454	// system version.
9455	MajorVersion string `json:"majorVersion,omitempty"`
9456
9457	// MinorVersion: Minor version (number after the first dot) of this
9458	// operating system version.
9459	MinorVersion string `json:"minorVersion,omitempty"`
9460
9461	// Name: Name of this operating system version.
9462	Name string `json:"name,omitempty"`
9463
9464	// OperatingSystem: Operating system of this operating system version.
9465	OperatingSystem *OperatingSystem `json:"operatingSystem,omitempty"`
9466
9467	// ServerResponse contains the HTTP response code and headers from the
9468	// server.
9469	googleapi.ServerResponse `json:"-"`
9470
9471	// ForceSendFields is a list of field names (e.g. "Id") to
9472	// unconditionally include in API requests. By default, fields with
9473	// empty or default values are omitted from API requests. However, any
9474	// non-pointer, non-interface field appearing in ForceSendFields will be
9475	// sent to the server regardless of whether the field is empty or not.
9476	// This may be used to include empty fields in Patch requests.
9477	ForceSendFields []string `json:"-"`
9478
9479	// NullFields is a list of field names (e.g. "Id") to include in API
9480	// requests with the JSON null value. By default, fields with empty
9481	// values are omitted from API requests. However, any field with an
9482	// empty value appearing in NullFields will be sent to the server as
9483	// null. It is an error if a field in this list has a non-empty value.
9484	// This may be used to include null fields in Patch requests.
9485	NullFields []string `json:"-"`
9486}
9487
9488func (s *OperatingSystemVersion) MarshalJSON() ([]byte, error) {
9489	type NoMethod OperatingSystemVersion
9490	raw := NoMethod(*s)
9491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9492}
9493
9494// OperatingSystemVersionsListResponse: Operating System Version List
9495// Response
9496type OperatingSystemVersionsListResponse struct {
9497	// Kind: Identifies what kind of resource this is. Value: the fixed
9498	// string "dfareporting#operatingSystemVersionsListResponse".
9499	Kind string `json:"kind,omitempty"`
9500
9501	// OperatingSystemVersions: Operating system version collection.
9502	OperatingSystemVersions []*OperatingSystemVersion `json:"operatingSystemVersions,omitempty"`
9503
9504	// ServerResponse contains the HTTP response code and headers from the
9505	// server.
9506	googleapi.ServerResponse `json:"-"`
9507
9508	// ForceSendFields is a list of field names (e.g. "Kind") to
9509	// unconditionally include in API requests. By default, fields with
9510	// empty or default values are omitted from API requests. However, any
9511	// non-pointer, non-interface field appearing in ForceSendFields will be
9512	// sent to the server regardless of whether the field is empty or not.
9513	// This may be used to include empty fields in Patch requests.
9514	ForceSendFields []string `json:"-"`
9515
9516	// NullFields is a list of field names (e.g. "Kind") to include in API
9517	// requests with the JSON null value. By default, fields with empty
9518	// values are omitted from API requests. However, any field with an
9519	// empty value appearing in NullFields will be sent to the server as
9520	// null. It is an error if a field in this list has a non-empty value.
9521	// This may be used to include null fields in Patch requests.
9522	NullFields []string `json:"-"`
9523}
9524
9525func (s *OperatingSystemVersionsListResponse) MarshalJSON() ([]byte, error) {
9526	type NoMethod OperatingSystemVersionsListResponse
9527	raw := NoMethod(*s)
9528	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9529}
9530
9531// OperatingSystemsListResponse: Operating System List Response
9532type OperatingSystemsListResponse struct {
9533	// Kind: Identifies what kind of resource this is. Value: the fixed
9534	// string "dfareporting#operatingSystemsListResponse".
9535	Kind string `json:"kind,omitempty"`
9536
9537	// OperatingSystems: Operating system collection.
9538	OperatingSystems []*OperatingSystem `json:"operatingSystems,omitempty"`
9539
9540	// ServerResponse contains the HTTP response code and headers from the
9541	// server.
9542	googleapi.ServerResponse `json:"-"`
9543
9544	// ForceSendFields is a list of field names (e.g. "Kind") to
9545	// unconditionally include in API requests. By default, fields with
9546	// empty or default values are omitted from API requests. However, any
9547	// non-pointer, non-interface field appearing in ForceSendFields will be
9548	// sent to the server regardless of whether the field is empty or not.
9549	// This may be used to include empty fields in Patch requests.
9550	ForceSendFields []string `json:"-"`
9551
9552	// NullFields is a list of field names (e.g. "Kind") to include in API
9553	// requests with the JSON null value. By default, fields with empty
9554	// values are omitted from API requests. However, any field with an
9555	// empty value appearing in NullFields will be sent to the server as
9556	// null. It is an error if a field in this list has a non-empty value.
9557	// This may be used to include null fields in Patch requests.
9558	NullFields []string `json:"-"`
9559}
9560
9561func (s *OperatingSystemsListResponse) MarshalJSON() ([]byte, error) {
9562	type NoMethod OperatingSystemsListResponse
9563	raw := NoMethod(*s)
9564	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9565}
9566
9567// OptimizationActivity: Creative optimization activity.
9568type OptimizationActivity struct {
9569	// FloodlightActivityId: Floodlight activity ID of this optimization
9570	// activity. This is a required field.
9571	FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"`
9572
9573	// FloodlightActivityIdDimensionValue: Dimension value for the ID of the
9574	// floodlight activity. This is a read-only, auto-generated field.
9575	FloodlightActivityIdDimensionValue *DimensionValue `json:"floodlightActivityIdDimensionValue,omitempty"`
9576
9577	// Weight: Weight associated with this optimization. The weight assigned
9578	// will be understood in proportion to the weights assigned to the other
9579	// optimization activities. Value must be greater than or equal to 1.
9580	Weight int64 `json:"weight,omitempty"`
9581
9582	// ForceSendFields is a list of field names (e.g.
9583	// "FloodlightActivityId") to unconditionally include in API requests.
9584	// By default, fields with empty or default values are omitted from API
9585	// requests. However, any non-pointer, non-interface field appearing in
9586	// ForceSendFields will be sent to the server regardless of whether the
9587	// field is empty or not. This may be used to include empty fields in
9588	// Patch requests.
9589	ForceSendFields []string `json:"-"`
9590
9591	// NullFields is a list of field names (e.g. "FloodlightActivityId") to
9592	// include in API requests with the JSON null value. By default, fields
9593	// with empty values are omitted from API requests. However, any field
9594	// with an empty value appearing in NullFields will be sent to the
9595	// server as null. It is an error if a field in this list has a
9596	// non-empty value. This may be used to include null fields in Patch
9597	// requests.
9598	NullFields []string `json:"-"`
9599}
9600
9601func (s *OptimizationActivity) MarshalJSON() ([]byte, error) {
9602	type NoMethod OptimizationActivity
9603	raw := NoMethod(*s)
9604	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9605}
9606
9607// Order: Describes properties of a Planning order.
9608type Order struct {
9609	// AccountId: Account ID of this order.
9610	AccountId int64 `json:"accountId,omitempty,string"`
9611
9612	// AdvertiserId: Advertiser ID of this order.
9613	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
9614
9615	// ApproverUserProfileIds: IDs for users that have to approve documents
9616	// created for this order.
9617	ApproverUserProfileIds googleapi.Int64s `json:"approverUserProfileIds,omitempty"`
9618
9619	// BuyerInvoiceId: Buyer invoice ID associated with this order.
9620	BuyerInvoiceId string `json:"buyerInvoiceId,omitempty"`
9621
9622	// BuyerOrganizationName: Name of the buyer organization.
9623	BuyerOrganizationName string `json:"buyerOrganizationName,omitempty"`
9624
9625	// Comments: Comments in this order.
9626	Comments string `json:"comments,omitempty"`
9627
9628	// Contacts: Contacts for this order.
9629	Contacts []*OrderContact `json:"contacts,omitempty"`
9630
9631	// Id: ID of this order. This is a read-only, auto-generated field.
9632	Id int64 `json:"id,omitempty,string"`
9633
9634	// Kind: Identifies what kind of resource this is. Value: the fixed
9635	// string "dfareporting#order".
9636	Kind string `json:"kind,omitempty"`
9637
9638	// LastModifiedInfo: Information about the most recent modification of
9639	// this order.
9640	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
9641
9642	// Name: Name of this order.
9643	Name string `json:"name,omitempty"`
9644
9645	// Notes: Notes of this order.
9646	Notes string `json:"notes,omitempty"`
9647
9648	// PlanningTermId: ID of the terms and conditions template used in this
9649	// order.
9650	PlanningTermId int64 `json:"planningTermId,omitempty,string"`
9651
9652	// ProjectId: Project ID of this order.
9653	ProjectId int64 `json:"projectId,omitempty,string"`
9654
9655	// SellerOrderId: Seller order ID associated with this order.
9656	SellerOrderId string `json:"sellerOrderId,omitempty"`
9657
9658	// SellerOrganizationName: Name of the seller organization.
9659	SellerOrganizationName string `json:"sellerOrganizationName,omitempty"`
9660
9661	// SiteId: Site IDs this order is associated with.
9662	SiteId googleapi.Int64s `json:"siteId,omitempty"`
9663
9664	// SiteNames: Free-form site names this order is associated with.
9665	SiteNames []string `json:"siteNames,omitempty"`
9666
9667	// SubaccountId: Subaccount ID of this order.
9668	SubaccountId int64 `json:"subaccountId,omitempty,string"`
9669
9670	// TermsAndConditions: Terms and conditions of this order.
9671	TermsAndConditions string `json:"termsAndConditions,omitempty"`
9672
9673	// ServerResponse contains the HTTP response code and headers from the
9674	// server.
9675	googleapi.ServerResponse `json:"-"`
9676
9677	// ForceSendFields is a list of field names (e.g. "AccountId") to
9678	// unconditionally include in API requests. By default, fields with
9679	// empty or default values are omitted from API requests. However, any
9680	// non-pointer, non-interface field appearing in ForceSendFields will be
9681	// sent to the server regardless of whether the field is empty or not.
9682	// This may be used to include empty fields in Patch requests.
9683	ForceSendFields []string `json:"-"`
9684
9685	// NullFields is a list of field names (e.g. "AccountId") to include in
9686	// API requests with the JSON null value. By default, fields with empty
9687	// values are omitted from API requests. However, any field with an
9688	// empty value appearing in NullFields will be sent to the server as
9689	// null. It is an error if a field in this list has a non-empty value.
9690	// This may be used to include null fields in Patch requests.
9691	NullFields []string `json:"-"`
9692}
9693
9694func (s *Order) MarshalJSON() ([]byte, error) {
9695	type NoMethod Order
9696	raw := NoMethod(*s)
9697	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9698}
9699
9700// OrderContact: Contact of an order.
9701type OrderContact struct {
9702	// ContactInfo: Free-form information about this contact. It could be
9703	// any information related to this contact in addition to type, title,
9704	// name, and signature user profile ID.
9705	ContactInfo string `json:"contactInfo,omitempty"`
9706
9707	// ContactName: Name of this contact.
9708	ContactName string `json:"contactName,omitempty"`
9709
9710	// ContactTitle: Title of this contact.
9711	ContactTitle string `json:"contactTitle,omitempty"`
9712
9713	// ContactType: Type of this contact.
9714	//
9715	// Possible values:
9716	//   "PLANNING_ORDER_CONTACT_BUYER_CONTACT"
9717	//   "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT"
9718	//   "PLANNING_ORDER_CONTACT_SELLER_CONTACT"
9719	ContactType string `json:"contactType,omitempty"`
9720
9721	// SignatureUserProfileId: ID of the user profile containing the
9722	// signature that will be embedded into order documents.
9723	SignatureUserProfileId int64 `json:"signatureUserProfileId,omitempty,string"`
9724
9725	// ForceSendFields is a list of field names (e.g. "ContactInfo") to
9726	// unconditionally include in API requests. By default, fields with
9727	// empty or default values are omitted from API requests. However, any
9728	// non-pointer, non-interface field appearing in ForceSendFields will be
9729	// sent to the server regardless of whether the field is empty or not.
9730	// This may be used to include empty fields in Patch requests.
9731	ForceSendFields []string `json:"-"`
9732
9733	// NullFields is a list of field names (e.g. "ContactInfo") to include
9734	// in API requests with the JSON null value. By default, fields with
9735	// empty values are omitted from API requests. However, any field with
9736	// an empty value appearing in NullFields will be sent to the server as
9737	// null. It is an error if a field in this list has a non-empty value.
9738	// This may be used to include null fields in Patch requests.
9739	NullFields []string `json:"-"`
9740}
9741
9742func (s *OrderContact) MarshalJSON() ([]byte, error) {
9743	type NoMethod OrderContact
9744	raw := NoMethod(*s)
9745	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9746}
9747
9748// OrderDocument: Contains properties of a Planning order document.
9749type OrderDocument struct {
9750	// AccountId: Account ID of this order document.
9751	AccountId int64 `json:"accountId,omitempty,string"`
9752
9753	// AdvertiserId: Advertiser ID of this order document.
9754	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
9755
9756	// AmendedOrderDocumentId: The amended order document ID of this order
9757	// document. An order document can be created by optionally amending
9758	// another order document so that the change history can be preserved.
9759	AmendedOrderDocumentId int64 `json:"amendedOrderDocumentId,omitempty,string"`
9760
9761	// ApprovedByUserProfileIds: IDs of users who have approved this order
9762	// document.
9763	ApprovedByUserProfileIds googleapi.Int64s `json:"approvedByUserProfileIds,omitempty"`
9764
9765	// Cancelled: Whether this order document is cancelled.
9766	Cancelled bool `json:"cancelled,omitempty"`
9767
9768	// CreatedInfo: Information about the creation of this order document.
9769	CreatedInfo *LastModifiedInfo `json:"createdInfo,omitempty"`
9770
9771	EffectiveDate string `json:"effectiveDate,omitempty"`
9772
9773	// Id: ID of this order document.
9774	Id int64 `json:"id,omitempty,string"`
9775
9776	// Kind: Identifies what kind of resource this is. Value: the fixed
9777	// string "dfareporting#orderDocument".
9778	Kind string `json:"kind,omitempty"`
9779
9780	// LastSentRecipients: List of email addresses that received the last
9781	// sent document.
9782	LastSentRecipients []string `json:"lastSentRecipients,omitempty"`
9783
9784	LastSentTime string `json:"lastSentTime,omitempty"`
9785
9786	// OrderId: ID of the order from which this order document is created.
9787	OrderId int64 `json:"orderId,omitempty,string"`
9788
9789	// ProjectId: Project ID of this order document.
9790	ProjectId int64 `json:"projectId,omitempty,string"`
9791
9792	// Signed: Whether this order document has been signed.
9793	Signed bool `json:"signed,omitempty"`
9794
9795	// SubaccountId: Subaccount ID of this order document.
9796	SubaccountId int64 `json:"subaccountId,omitempty,string"`
9797
9798	// Title: Title of this order document.
9799	Title string `json:"title,omitempty"`
9800
9801	// Type: Type of this order document
9802	//
9803	// Possible values:
9804	//   "PLANNING_ORDER_TYPE_INSERTION_ORDER"
9805	//   "PLANNING_ORDER_TYPE_CHANGE_ORDER"
9806	Type string `json:"type,omitempty"`
9807
9808	// ServerResponse contains the HTTP response code and headers from the
9809	// server.
9810	googleapi.ServerResponse `json:"-"`
9811
9812	// ForceSendFields is a list of field names (e.g. "AccountId") to
9813	// unconditionally include in API requests. By default, fields with
9814	// empty or default values are omitted from API requests. However, any
9815	// non-pointer, non-interface field appearing in ForceSendFields will be
9816	// sent to the server regardless of whether the field is empty or not.
9817	// This may be used to include empty fields in Patch requests.
9818	ForceSendFields []string `json:"-"`
9819
9820	// NullFields is a list of field names (e.g. "AccountId") to include in
9821	// API requests with the JSON null value. By default, fields with empty
9822	// values are omitted from API requests. However, any field with an
9823	// empty value appearing in NullFields will be sent to the server as
9824	// null. It is an error if a field in this list has a non-empty value.
9825	// This may be used to include null fields in Patch requests.
9826	NullFields []string `json:"-"`
9827}
9828
9829func (s *OrderDocument) MarshalJSON() ([]byte, error) {
9830	type NoMethod OrderDocument
9831	raw := NoMethod(*s)
9832	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9833}
9834
9835// OrderDocumentsListResponse: Order document List Response
9836type OrderDocumentsListResponse struct {
9837	// Kind: Identifies what kind of resource this is. Value: the fixed
9838	// string "dfareporting#orderDocumentsListResponse".
9839	Kind string `json:"kind,omitempty"`
9840
9841	// NextPageToken: Pagination token to be used for the next list
9842	// operation.
9843	NextPageToken string `json:"nextPageToken,omitempty"`
9844
9845	// OrderDocuments: Order document collection
9846	OrderDocuments []*OrderDocument `json:"orderDocuments,omitempty"`
9847
9848	// ServerResponse contains the HTTP response code and headers from the
9849	// server.
9850	googleapi.ServerResponse `json:"-"`
9851
9852	// ForceSendFields is a list of field names (e.g. "Kind") to
9853	// unconditionally include in API requests. By default, fields with
9854	// empty or default values are omitted from API requests. However, any
9855	// non-pointer, non-interface field appearing in ForceSendFields will be
9856	// sent to the server regardless of whether the field is empty or not.
9857	// This may be used to include empty fields in Patch requests.
9858	ForceSendFields []string `json:"-"`
9859
9860	// NullFields is a list of field names (e.g. "Kind") to include in API
9861	// requests with the JSON null value. By default, fields with empty
9862	// values are omitted from API requests. However, any field with an
9863	// empty value appearing in NullFields will be sent to the server as
9864	// null. It is an error if a field in this list has a non-empty value.
9865	// This may be used to include null fields in Patch requests.
9866	NullFields []string `json:"-"`
9867}
9868
9869func (s *OrderDocumentsListResponse) MarshalJSON() ([]byte, error) {
9870	type NoMethod OrderDocumentsListResponse
9871	raw := NoMethod(*s)
9872	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9873}
9874
9875// OrdersListResponse: Order List Response
9876type OrdersListResponse struct {
9877	// Kind: Identifies what kind of resource this is. Value: the fixed
9878	// string "dfareporting#ordersListResponse".
9879	Kind string `json:"kind,omitempty"`
9880
9881	// NextPageToken: Pagination token to be used for the next list
9882	// operation.
9883	NextPageToken string `json:"nextPageToken,omitempty"`
9884
9885	// Orders: Order collection.
9886	Orders []*Order `json:"orders,omitempty"`
9887
9888	// ServerResponse contains the HTTP response code and headers from the
9889	// server.
9890	googleapi.ServerResponse `json:"-"`
9891
9892	// ForceSendFields is a list of field names (e.g. "Kind") to
9893	// unconditionally include in API requests. By default, fields with
9894	// empty or default values are omitted from API requests. However, any
9895	// non-pointer, non-interface field appearing in ForceSendFields will be
9896	// sent to the server regardless of whether the field is empty or not.
9897	// This may be used to include empty fields in Patch requests.
9898	ForceSendFields []string `json:"-"`
9899
9900	// NullFields is a list of field names (e.g. "Kind") to include in API
9901	// requests with the JSON null value. By default, fields with empty
9902	// values are omitted from API requests. However, any field with an
9903	// empty value appearing in NullFields will be sent to the server as
9904	// null. It is an error if a field in this list has a non-empty value.
9905	// This may be used to include null fields in Patch requests.
9906	NullFields []string `json:"-"`
9907}
9908
9909func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
9910	type NoMethod OrdersListResponse
9911	raw := NoMethod(*s)
9912	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9913}
9914
9915// PathFilter: Represents a DfaReporting path filter.
9916type PathFilter struct {
9917	// EventFilters: Event filters in path report.
9918	EventFilters []*EventFilter `json:"eventFilters,omitempty"`
9919
9920	// Kind: The kind of resource this is, in this case
9921	// dfareporting#pathFilter.
9922	Kind string `json:"kind,omitempty"`
9923
9924	// PathMatchPosition: Determines how the 'value' field is matched when
9925	// filtering. If not specified, defaults to EXACT. If set to
9926	// WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable
9927	// length character sequences, and it can be escaped with a backslash.
9928	// Note, only paid search dimensions ('dfa:paidSearch*') allow a
9929	// matchType other than EXACT.
9930	//
9931	// Possible values:
9932	//   "PATH_MATCH_POSITION_UNSPECIFIED"
9933	//   "ANY"
9934	//   "FIRST"
9935	//   "LAST"
9936	PathMatchPosition string `json:"pathMatchPosition,omitempty"`
9937
9938	// ForceSendFields is a list of field names (e.g. "EventFilters") to
9939	// unconditionally include in API requests. By default, fields with
9940	// empty or default values are omitted from API requests. However, any
9941	// non-pointer, non-interface field appearing in ForceSendFields will be
9942	// sent to the server regardless of whether the field is empty or not.
9943	// This may be used to include empty fields in Patch requests.
9944	ForceSendFields []string `json:"-"`
9945
9946	// NullFields is a list of field names (e.g. "EventFilters") to include
9947	// in API requests with the JSON null value. By default, fields with
9948	// empty values are omitted from API requests. However, any field with
9949	// an empty value appearing in NullFields will be sent to the server as
9950	// null. It is an error if a field in this list has a non-empty value.
9951	// This may be used to include null fields in Patch requests.
9952	NullFields []string `json:"-"`
9953}
9954
9955func (s *PathFilter) MarshalJSON() ([]byte, error) {
9956	type NoMethod PathFilter
9957	raw := NoMethod(*s)
9958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9959}
9960
9961// PathReportCompatibleFields: Represents fields that are compatible to
9962// be selected for a report of type "PATH".
9963type PathReportCompatibleFields struct {
9964	// ChannelGroupings: Dimensions which are compatible to be selected in
9965	// the "channelGroupings" section of the report.
9966	ChannelGroupings []*Dimension `json:"channelGroupings,omitempty"`
9967
9968	// Dimensions: Dimensions which are compatible to be selected in the
9969	// "dimensions" section of the report.
9970	Dimensions []*Dimension `json:"dimensions,omitempty"`
9971
9972	// Kind: The kind of resource this is, in this case
9973	// dfareporting#pathReportCompatibleFields.
9974	Kind string `json:"kind,omitempty"`
9975
9976	// Metrics: Metrics which are compatible to be selected in the
9977	// "metricNames" section of the report.
9978	Metrics []*Metric `json:"metrics,omitempty"`
9979
9980	// PathFilters: Dimensions which are compatible to be selected in the
9981	// "pathFilters" section of the report.
9982	PathFilters []*Dimension `json:"pathFilters,omitempty"`
9983
9984	// ForceSendFields is a list of field names (e.g. "ChannelGroupings") to
9985	// unconditionally include in API requests. By default, fields with
9986	// empty or default values are omitted from API requests. However, any
9987	// non-pointer, non-interface field appearing in ForceSendFields will be
9988	// sent to the server regardless of whether the field is empty or not.
9989	// This may be used to include empty fields in Patch requests.
9990	ForceSendFields []string `json:"-"`
9991
9992	// NullFields is a list of field names (e.g. "ChannelGroupings") to
9993	// include in API requests with the JSON null value. By default, fields
9994	// with empty values are omitted from API requests. However, any field
9995	// with an empty value appearing in NullFields will be sent to the
9996	// server as null. It is an error if a field in this list has a
9997	// non-empty value. This may be used to include null fields in Patch
9998	// requests.
9999	NullFields []string `json:"-"`
10000}
10001
10002func (s *PathReportCompatibleFields) MarshalJSON() ([]byte, error) {
10003	type NoMethod PathReportCompatibleFields
10004	raw := NoMethod(*s)
10005	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10006}
10007
10008// PathReportDimensionValue: Represents a PathReportDimensionValue
10009// resource.
10010type PathReportDimensionValue struct {
10011	// DimensionName: The name of the dimension.
10012	DimensionName string `json:"dimensionName,omitempty"`
10013
10014	// Ids: The possible ID's associated with the value if available.
10015	Ids []string `json:"ids,omitempty"`
10016
10017	// Kind: The kind of resource this is, in this case
10018	// dfareporting#pathReportDimensionValue.
10019	Kind string `json:"kind,omitempty"`
10020
10021	// MatchType: Determines how the 'value' field is matched when
10022	// filtering. If not specified, defaults to EXACT. If set to
10023	// WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable
10024	// length character sequences, and it can be escaped with a backslash.
10025	// Note, only paid search dimensions ('dfa:paidSearch*') allow a
10026	// matchType other than EXACT.
10027	//
10028	// Possible values:
10029	//   "EXACT"
10030	//   "BEGINS_WITH"
10031	//   "CONTAINS"
10032	//   "WILDCARD_EXPRESSION"
10033	MatchType string `json:"matchType,omitempty"`
10034
10035	// Values: The possible values of the dimension.
10036	Values []string `json:"values,omitempty"`
10037
10038	// ForceSendFields is a list of field names (e.g. "DimensionName") to
10039	// unconditionally include in API requests. By default, fields with
10040	// empty or default values are omitted from API requests. However, any
10041	// non-pointer, non-interface field appearing in ForceSendFields will be
10042	// sent to the server regardless of whether the field is empty or not.
10043	// This may be used to include empty fields in Patch requests.
10044	ForceSendFields []string `json:"-"`
10045
10046	// NullFields is a list of field names (e.g. "DimensionName") to include
10047	// in API requests with the JSON null value. By default, fields with
10048	// empty values are omitted from API requests. However, any field with
10049	// an empty value appearing in NullFields will be sent to the server as
10050	// null. It is an error if a field in this list has a non-empty value.
10051	// This may be used to include null fields in Patch requests.
10052	NullFields []string `json:"-"`
10053}
10054
10055func (s *PathReportDimensionValue) MarshalJSON() ([]byte, error) {
10056	type NoMethod PathReportDimensionValue
10057	raw := NoMethod(*s)
10058	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10059}
10060
10061// PathToConversionReportCompatibleFields: Represents fields that are
10062// compatible to be selected for a report of type "PATH_TO_CONVERSION".
10063type PathToConversionReportCompatibleFields struct {
10064	// ConversionDimensions: Conversion dimensions which are compatible to
10065	// be selected in the "conversionDimensions" section of the report.
10066	ConversionDimensions []*Dimension `json:"conversionDimensions,omitempty"`
10067
10068	// CustomFloodlightVariables: Custom floodlight variables which are
10069	// compatible to be selected in the "customFloodlightVariables" section
10070	// of the report.
10071	CustomFloodlightVariables []*Dimension `json:"customFloodlightVariables,omitempty"`
10072
10073	// Kind: The kind of resource this is, in this case
10074	// dfareporting#pathToConversionReportCompatibleFields.
10075	Kind string `json:"kind,omitempty"`
10076
10077	// Metrics: Metrics which are compatible to be selected in the
10078	// "metricNames" section of the report.
10079	Metrics []*Metric `json:"metrics,omitempty"`
10080
10081	// PerInteractionDimensions: Per-interaction dimensions which are
10082	// compatible to be selected in the "perInteractionDimensions" section
10083	// of the report.
10084	PerInteractionDimensions []*Dimension `json:"perInteractionDimensions,omitempty"`
10085
10086	// ForceSendFields is a list of field names (e.g.
10087	// "ConversionDimensions") to unconditionally include in API requests.
10088	// By default, fields with empty or default values are omitted from API
10089	// requests. However, any non-pointer, non-interface field appearing in
10090	// ForceSendFields will be sent to the server regardless of whether the
10091	// field is empty or not. This may be used to include empty fields in
10092	// Patch requests.
10093	ForceSendFields []string `json:"-"`
10094
10095	// NullFields is a list of field names (e.g. "ConversionDimensions") to
10096	// include in API requests with the JSON null value. By default, fields
10097	// with empty values are omitted from API requests. However, any field
10098	// with an empty value appearing in NullFields will be sent to the
10099	// server as null. It is an error if a field in this list has a
10100	// non-empty value. This may be used to include null fields in Patch
10101	// requests.
10102	NullFields []string `json:"-"`
10103}
10104
10105func (s *PathToConversionReportCompatibleFields) MarshalJSON() ([]byte, error) {
10106	type NoMethod PathToConversionReportCompatibleFields
10107	raw := NoMethod(*s)
10108	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10109}
10110
10111// Placement: Contains properties of a placement.
10112type Placement struct {
10113	// AccountId: Account ID of this placement. This field can be left
10114	// blank.
10115	AccountId int64 `json:"accountId,omitempty,string"`
10116
10117	// AdBlockingOptOut: Whether this placement opts out of ad blocking.
10118	// When true, ad blocking is disabled for this placement. When false,
10119	// the campaign and site settings take effect.
10120	AdBlockingOptOut bool `json:"adBlockingOptOut,omitempty"`
10121
10122	// AdditionalSizes: Additional sizes associated with this placement.
10123	// When inserting or updating a placement, only the size ID field is
10124	// used.
10125	AdditionalSizes []*Size `json:"additionalSizes,omitempty"`
10126
10127	// AdvertiserId: Advertiser ID of this placement. This field can be left
10128	// blank.
10129	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
10130
10131	// AdvertiserIdDimensionValue: Dimension value for the ID of the
10132	// advertiser. This is a read-only, auto-generated field.
10133	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
10134
10135	// Archived: Whether this placement is archived.
10136	Archived bool `json:"archived,omitempty"`
10137
10138	// CampaignId: Campaign ID of this placement. This field is a required
10139	// field on insertion.
10140	CampaignId int64 `json:"campaignId,omitempty,string"`
10141
10142	// CampaignIdDimensionValue: Dimension value for the ID of the campaign.
10143	// This is a read-only, auto-generated field.
10144	CampaignIdDimensionValue *DimensionValue `json:"campaignIdDimensionValue,omitempty"`
10145
10146	// Comment: Comments for this placement.
10147	Comment string `json:"comment,omitempty"`
10148
10149	// Compatibility: Placement compatibility. DISPLAY and
10150	// DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices
10151	// or in mobile apps for regular or interstitial ads respectively. APP
10152	// and APP_INTERSTITIAL are no longer allowed for new placement
10153	// insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL.
10154	// IN_STREAM_VIDEO refers to rendering in in-stream video ads developed
10155	// with the VAST standard. This field is required on insertion.
10156	//
10157	// Possible values:
10158	//   "DISPLAY"
10159	//   "DISPLAY_INTERSTITIAL"
10160	//   "APP"
10161	//   "APP_INTERSTITIAL"
10162	//   "IN_STREAM_VIDEO"
10163	//   "IN_STREAM_AUDIO"
10164	Compatibility string `json:"compatibility,omitempty"`
10165
10166	// ContentCategoryId: ID of the content category assigned to this
10167	// placement.
10168	ContentCategoryId int64 `json:"contentCategoryId,omitempty,string"`
10169
10170	// CreateInfo: Information about the creation of this placement. This is
10171	// a read-only field.
10172	CreateInfo *LastModifiedInfo `json:"createInfo,omitempty"`
10173
10174	// DirectorySiteId: Directory site ID of this placement. On insert, you
10175	// must set either this field or the siteId field to specify the site
10176	// associated with this placement. This is a required field that is
10177	// read-only after insertion.
10178	DirectorySiteId int64 `json:"directorySiteId,omitempty,string"`
10179
10180	// DirectorySiteIdDimensionValue: Dimension value for the ID of the
10181	// directory site. This is a read-only, auto-generated field.
10182	DirectorySiteIdDimensionValue *DimensionValue `json:"directorySiteIdDimensionValue,omitempty"`
10183
10184	// ExternalId: External ID for this placement.
10185	ExternalId string `json:"externalId,omitempty"`
10186
10187	// Id: ID of this placement. This is a read-only, auto-generated field.
10188	Id int64 `json:"id,omitempty,string"`
10189
10190	// IdDimensionValue: Dimension value for the ID of this placement. This
10191	// is a read-only, auto-generated field.
10192	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
10193
10194	// KeyName: Key name of this placement. This is a read-only,
10195	// auto-generated field.
10196	KeyName string `json:"keyName,omitempty"`
10197
10198	// Kind: Identifies what kind of resource this is. Value: the fixed
10199	// string "dfareporting#placement".
10200	Kind string `json:"kind,omitempty"`
10201
10202	// LastModifiedInfo: Information about the most recent modification of
10203	// this placement. This is a read-only field.
10204	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
10205
10206	// LookbackConfiguration: Lookback window settings for this placement.
10207	LookbackConfiguration *LookbackConfiguration `json:"lookbackConfiguration,omitempty"`
10208
10209	// Name: Name of this placement.This is a required field and must be
10210	// less than or equal to 256 characters long.
10211	Name string `json:"name,omitempty"`
10212
10213	// PartnerWrappingData: Measurement partner provided settings for a
10214	// wrapped placement.
10215	PartnerWrappingData *MeasurementPartnerWrappingData `json:"partnerWrappingData,omitempty"`
10216
10217	// PaymentApproved: Whether payment was approved for this placement.
10218	// This is a read-only field relevant only to publisher-paid placements.
10219	PaymentApproved bool `json:"paymentApproved,omitempty"`
10220
10221	// PaymentSource: Payment source for this placement. This is a required
10222	// field that is read-only after insertion.
10223	//
10224	// Possible values:
10225	//   "PLACEMENT_AGENCY_PAID"
10226	//   "PLACEMENT_PUBLISHER_PAID"
10227	PaymentSource string `json:"paymentSource,omitempty"`
10228
10229	// PlacementGroupId: ID of this placement's group, if applicable.
10230	PlacementGroupId int64 `json:"placementGroupId,omitempty,string"`
10231
10232	// PlacementGroupIdDimensionValue: Dimension value for the ID of the
10233	// placement group. This is a read-only, auto-generated field.
10234	PlacementGroupIdDimensionValue *DimensionValue `json:"placementGroupIdDimensionValue,omitempty"`
10235
10236	// PlacementStrategyId: ID of the placement strategy assigned to this
10237	// placement.
10238	PlacementStrategyId int64 `json:"placementStrategyId,omitempty,string"`
10239
10240	// PricingSchedule: Pricing schedule of this placement. This field is
10241	// required on insertion, specifically subfields startDate, endDate and
10242	// pricingType.
10243	PricingSchedule *PricingSchedule `json:"pricingSchedule,omitempty"`
10244
10245	// Primary: Whether this placement is the primary placement of a
10246	// roadblock (placement group). You cannot change this field from true
10247	// to false. Setting this field to true will automatically set the
10248	// primary field on the original primary placement of the roadblock to
10249	// false, and it will automatically set the roadblock's
10250	// primaryPlacementId field to the ID of this placement.
10251	Primary bool `json:"primary,omitempty"`
10252
10253	// PublisherUpdateInfo: Information about the last publisher update.
10254	// This is a read-only field.
10255	PublisherUpdateInfo *LastModifiedInfo `json:"publisherUpdateInfo,omitempty"`
10256
10257	// SiteId: Site ID associated with this placement. On insert, you must
10258	// set either this field or the directorySiteId field to specify the
10259	// site associated with this placement. This is a required field that is
10260	// read-only after insertion.
10261	SiteId int64 `json:"siteId,omitempty,string"`
10262
10263	// SiteIdDimensionValue: Dimension value for the ID of the site. This is
10264	// a read-only, auto-generated field.
10265	SiteIdDimensionValue *DimensionValue `json:"siteIdDimensionValue,omitempty"`
10266
10267	// Size: Size associated with this placement. When inserting or updating
10268	// a placement, only the size ID field is used. This field is required
10269	// on insertion.
10270	Size *Size `json:"size,omitempty"`
10271
10272	// SslRequired: Whether creatives assigned to this placement must be
10273	// SSL-compliant.
10274	SslRequired bool `json:"sslRequired,omitempty"`
10275
10276	// Status: Third-party placement status.
10277	//
10278	// Possible values:
10279	//   "PENDING_REVIEW"
10280	//   "PAYMENT_ACCEPTED"
10281	//   "PAYMENT_REJECTED"
10282	//   "ACKNOWLEDGE_REJECTION"
10283	//   "ACKNOWLEDGE_ACCEPTANCE"
10284	//   "DRAFT"
10285	Status string `json:"status,omitempty"`
10286
10287	// SubaccountId: Subaccount ID of this placement. This field can be left
10288	// blank.
10289	SubaccountId int64 `json:"subaccountId,omitempty,string"`
10290
10291	// TagFormats: Tag formats to generate for this placement. This field is
10292	// required on insertion. Acceptable values are: -
10293	// "PLACEMENT_TAG_STANDARD" - "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -
10294	// "PLACEMENT_TAG_IFRAME_ILAYER" - "PLACEMENT_TAG_INTERNAL_REDIRECT" -
10295	// "PLACEMENT_TAG_JAVASCRIPT" -
10296	// "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -
10297	// "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -
10298	// "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -
10299	// "PLACEMENT_TAG_CLICK_COMMANDS" -
10300	// "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -
10301	// "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -
10302	// "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4" -
10303	// "PLACEMENT_TAG_TRACKING" - "PLACEMENT_TAG_TRACKING_IFRAME" -
10304	// "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
10305	//
10306	// Possible values:
10307	//   "PLACEMENT_TAG_STANDARD"
10308	//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
10309	//   "PLACEMENT_TAG_IFRAME_ILAYER"
10310	//   "PLACEMENT_TAG_INTERNAL_REDIRECT"
10311	//   "PLACEMENT_TAG_JAVASCRIPT"
10312	//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
10313	//   "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
10314	//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
10315	//   "PLACEMENT_TAG_CLICK_COMMANDS"
10316	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
10317	//   "PLACEMENT_TAG_TRACKING"
10318	//   "PLACEMENT_TAG_TRACKING_IFRAME"
10319	//   "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
10320	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
10321	//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
10322	//   "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
10323	//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
10324	//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
10325	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
10326	TagFormats []string `json:"tagFormats,omitempty"`
10327
10328	// TagSetting: Tag settings for this placement.
10329	TagSetting *TagSetting `json:"tagSetting,omitempty"`
10330
10331	// VideoActiveViewOptOut: Whether Verification and ActiveView are
10332	// disabled for in-stream video creatives for this placement. The same
10333	// setting videoActiveViewOptOut exists on the site level -- the opt out
10334	// occurs if either of these settings are true. These settings are
10335	// distinct from DirectorySites.settings.activeViewOptOut or
10336	// Sites.siteSettings.activeViewOptOut which only apply to display ads.
10337	// However, Accounts.activeViewOptOut opts out both video traffic, as
10338	// well as display ads, from Verification and ActiveView.
10339	VideoActiveViewOptOut bool `json:"videoActiveViewOptOut,omitempty"`
10340
10341	// VideoSettings: A collection of settings which affect video creatives
10342	// served through this placement. Applicable to placements with
10343	// IN_STREAM_VIDEO compatibility.
10344	VideoSettings *VideoSettings `json:"videoSettings,omitempty"`
10345
10346	// VpaidAdapterChoice: VPAID adapter setting for this placement.
10347	// Controls which VPAID format the measurement adapter will use for
10348	// in-stream video creatives assigned to this placement. *Note:* Flash
10349	// is no longer supported. This field now defaults to HTML5 when the
10350	// following values are provided: FLASH, BOTH.
10351	//
10352	// Possible values:
10353	//   "DEFAULT"
10354	//   "FLASH"
10355	//   "HTML5"
10356	//   "BOTH"
10357	VpaidAdapterChoice string `json:"vpaidAdapterChoice,omitempty"`
10358
10359	// WrappingOptOut: Whether this placement opts out of tag wrapping.
10360	WrappingOptOut bool `json:"wrappingOptOut,omitempty"`
10361
10362	// ServerResponse contains the HTTP response code and headers from the
10363	// server.
10364	googleapi.ServerResponse `json:"-"`
10365
10366	// ForceSendFields is a list of field names (e.g. "AccountId") to
10367	// unconditionally include in API requests. By default, fields with
10368	// empty or default values are omitted from API requests. However, any
10369	// non-pointer, non-interface field appearing in ForceSendFields will be
10370	// sent to the server regardless of whether the field is empty or not.
10371	// This may be used to include empty fields in Patch requests.
10372	ForceSendFields []string `json:"-"`
10373
10374	// NullFields is a list of field names (e.g. "AccountId") to include in
10375	// API requests with the JSON null value. By default, fields with empty
10376	// values are omitted from API requests. However, any field with an
10377	// empty value appearing in NullFields will be sent to the server as
10378	// null. It is an error if a field in this list has a non-empty value.
10379	// This may be used to include null fields in Patch requests.
10380	NullFields []string `json:"-"`
10381}
10382
10383func (s *Placement) MarshalJSON() ([]byte, error) {
10384	type NoMethod Placement
10385	raw := NoMethod(*s)
10386	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10387}
10388
10389// PlacementAssignment: Placement Assignment.
10390type PlacementAssignment struct {
10391	// Active: Whether this placement assignment is active. When true, the
10392	// placement will be included in the ad's rotation.
10393	Active bool `json:"active,omitempty"`
10394
10395	// PlacementId: ID of the placement to be assigned. This is a required
10396	// field.
10397	PlacementId int64 `json:"placementId,omitempty,string"`
10398
10399	// PlacementIdDimensionValue: Dimension value for the ID of the
10400	// placement. This is a read-only, auto-generated field.
10401	PlacementIdDimensionValue *DimensionValue `json:"placementIdDimensionValue,omitempty"`
10402
10403	// SslRequired: Whether the placement to be assigned requires SSL. This
10404	// is a read-only field that is auto-generated when the ad is inserted
10405	// or updated.
10406	SslRequired bool `json:"sslRequired,omitempty"`
10407
10408	// ForceSendFields is a list of field names (e.g. "Active") to
10409	// unconditionally include in API requests. By default, fields with
10410	// empty or default values are omitted from API requests. However, any
10411	// non-pointer, non-interface field appearing in ForceSendFields will be
10412	// sent to the server regardless of whether the field is empty or not.
10413	// This may be used to include empty fields in Patch requests.
10414	ForceSendFields []string `json:"-"`
10415
10416	// NullFields is a list of field names (e.g. "Active") to include in API
10417	// requests with the JSON null value. By default, fields with empty
10418	// values are omitted from API requests. However, any field with an
10419	// empty value appearing in NullFields will be sent to the server as
10420	// null. It is an error if a field in this list has a non-empty value.
10421	// This may be used to include null fields in Patch requests.
10422	NullFields []string `json:"-"`
10423}
10424
10425func (s *PlacementAssignment) MarshalJSON() ([]byte, error) {
10426	type NoMethod PlacementAssignment
10427	raw := NoMethod(*s)
10428	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10429}
10430
10431// PlacementGroup: Contains properties of a package or roadblock.
10432type PlacementGroup struct {
10433	// AccountId: Account ID of this placement group. This is a read-only
10434	// field that can be left blank.
10435	AccountId int64 `json:"accountId,omitempty,string"`
10436
10437	// AdvertiserId: Advertiser ID of this placement group. This is a
10438	// required field on insertion.
10439	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
10440
10441	// AdvertiserIdDimensionValue: Dimension value for the ID of the
10442	// advertiser. This is a read-only, auto-generated field.
10443	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
10444
10445	// Archived: Whether this placement group is archived.
10446	Archived bool `json:"archived,omitempty"`
10447
10448	// CampaignId: Campaign ID of this placement group. This field is
10449	// required on insertion.
10450	CampaignId int64 `json:"campaignId,omitempty,string"`
10451
10452	// CampaignIdDimensionValue: Dimension value for the ID of the campaign.
10453	// This is a read-only, auto-generated field.
10454	CampaignIdDimensionValue *DimensionValue `json:"campaignIdDimensionValue,omitempty"`
10455
10456	// ChildPlacementIds: IDs of placements which are assigned to this
10457	// placement group. This is a read-only, auto-generated field.
10458	ChildPlacementIds googleapi.Int64s `json:"childPlacementIds,omitempty"`
10459
10460	// Comment: Comments for this placement group.
10461	Comment string `json:"comment,omitempty"`
10462
10463	// ContentCategoryId: ID of the content category assigned to this
10464	// placement group.
10465	ContentCategoryId int64 `json:"contentCategoryId,omitempty,string"`
10466
10467	// CreateInfo: Information about the creation of this placement group.
10468	// This is a read-only field.
10469	CreateInfo *LastModifiedInfo `json:"createInfo,omitempty"`
10470
10471	// DirectorySiteId: Directory site ID associated with this placement
10472	// group. On insert, you must set either this field or the site_id field
10473	// to specify the site associated with this placement group. This is a
10474	// required field that is read-only after insertion.
10475	DirectorySiteId int64 `json:"directorySiteId,omitempty,string"`
10476
10477	// DirectorySiteIdDimensionValue: Dimension value for the ID of the
10478	// directory site. This is a read-only, auto-generated field.
10479	DirectorySiteIdDimensionValue *DimensionValue `json:"directorySiteIdDimensionValue,omitempty"`
10480
10481	// ExternalId: External ID for this placement.
10482	ExternalId string `json:"externalId,omitempty"`
10483
10484	// Id: ID of this placement group. This is a read-only, auto-generated
10485	// field.
10486	Id int64 `json:"id,omitempty,string"`
10487
10488	// IdDimensionValue: Dimension value for the ID of this placement group.
10489	// This is a read-only, auto-generated field.
10490	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
10491
10492	// Kind: Identifies what kind of resource this is. Value: the fixed
10493	// string "dfareporting#placementGroup".
10494	Kind string `json:"kind,omitempty"`
10495
10496	// LastModifiedInfo: Information about the most recent modification of
10497	// this placement group. This is a read-only field.
10498	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
10499
10500	// Name: Name of this placement group. This is a required field and must
10501	// be less than 256 characters long.
10502	Name string `json:"name,omitempty"`
10503
10504	// PlacementGroupType: Type of this placement group. A package is a
10505	// simple group of placements that acts as a single pricing point for a
10506	// group of tags. A roadblock is a group of placements that not only
10507	// acts as a single pricing point, but also assumes that all the tags in
10508	// it will be served at the same time. A roadblock requires one of its
10509	// assigned placements to be marked as primary for reporting. This field
10510	// is required on insertion.
10511	//
10512	// Possible values:
10513	//   "PLACEMENT_PACKAGE"
10514	//   "PLACEMENT_ROADBLOCK"
10515	PlacementGroupType string `json:"placementGroupType,omitempty"`
10516
10517	// PlacementStrategyId: ID of the placement strategy assigned to this
10518	// placement group.
10519	PlacementStrategyId int64 `json:"placementStrategyId,omitempty,string"`
10520
10521	// PricingSchedule: Pricing schedule of this placement group. This field
10522	// is required on insertion.
10523	PricingSchedule *PricingSchedule `json:"pricingSchedule,omitempty"`
10524
10525	// PrimaryPlacementId: ID of the primary placement, used to calculate
10526	// the media cost of a roadblock (placement group). Modifying this field
10527	// will automatically modify the primary field on all affected roadblock
10528	// child placements.
10529	PrimaryPlacementId int64 `json:"primaryPlacementId,omitempty,string"`
10530
10531	// PrimaryPlacementIdDimensionValue: Dimension value for the ID of the
10532	// primary placement. This is a read-only, auto-generated field.
10533	PrimaryPlacementIdDimensionValue *DimensionValue `json:"primaryPlacementIdDimensionValue,omitempty"`
10534
10535	// SiteId: Site ID associated with this placement group. On insert, you
10536	// must set either this field or the directorySiteId field to specify
10537	// the site associated with this placement group. This is a required
10538	// field that is read-only after insertion.
10539	SiteId int64 `json:"siteId,omitempty,string"`
10540
10541	// SiteIdDimensionValue: Dimension value for the ID of the site. This is
10542	// a read-only, auto-generated field.
10543	SiteIdDimensionValue *DimensionValue `json:"siteIdDimensionValue,omitempty"`
10544
10545	// SubaccountId: Subaccount ID of this placement group. This is a
10546	// read-only field that can be left blank.
10547	SubaccountId int64 `json:"subaccountId,omitempty,string"`
10548
10549	// ServerResponse contains the HTTP response code and headers from the
10550	// server.
10551	googleapi.ServerResponse `json:"-"`
10552
10553	// ForceSendFields is a list of field names (e.g. "AccountId") to
10554	// unconditionally include in API requests. By default, fields with
10555	// empty or default values are omitted from API requests. However, any
10556	// non-pointer, non-interface field appearing in ForceSendFields will be
10557	// sent to the server regardless of whether the field is empty or not.
10558	// This may be used to include empty fields in Patch requests.
10559	ForceSendFields []string `json:"-"`
10560
10561	// NullFields is a list of field names (e.g. "AccountId") to include in
10562	// API requests with the JSON null value. By default, fields with empty
10563	// values are omitted from API requests. However, any field with an
10564	// empty value appearing in NullFields will be sent to the server as
10565	// null. It is an error if a field in this list has a non-empty value.
10566	// This may be used to include null fields in Patch requests.
10567	NullFields []string `json:"-"`
10568}
10569
10570func (s *PlacementGroup) MarshalJSON() ([]byte, error) {
10571	type NoMethod PlacementGroup
10572	raw := NoMethod(*s)
10573	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10574}
10575
10576// PlacementGroupsListResponse: Placement Group List Response
10577type PlacementGroupsListResponse struct {
10578	// Kind: Identifies what kind of resource this is. Value: the fixed
10579	// string "dfareporting#placementGroupsListResponse".
10580	Kind string `json:"kind,omitempty"`
10581
10582	// NextPageToken: Pagination token to be used for the next list
10583	// operation.
10584	NextPageToken string `json:"nextPageToken,omitempty"`
10585
10586	// PlacementGroups: Placement group collection.
10587	PlacementGroups []*PlacementGroup `json:"placementGroups,omitempty"`
10588
10589	// ServerResponse contains the HTTP response code and headers from the
10590	// server.
10591	googleapi.ServerResponse `json:"-"`
10592
10593	// ForceSendFields is a list of field names (e.g. "Kind") to
10594	// unconditionally include in API requests. By default, fields with
10595	// empty or default values are omitted from API requests. However, any
10596	// non-pointer, non-interface field appearing in ForceSendFields will be
10597	// sent to the server regardless of whether the field is empty or not.
10598	// This may be used to include empty fields in Patch requests.
10599	ForceSendFields []string `json:"-"`
10600
10601	// NullFields is a list of field names (e.g. "Kind") to include in API
10602	// requests with the JSON null value. By default, fields with empty
10603	// values are omitted from API requests. However, any field with an
10604	// empty value appearing in NullFields will be sent to the server as
10605	// null. It is an error if a field in this list has a non-empty value.
10606	// This may be used to include null fields in Patch requests.
10607	NullFields []string `json:"-"`
10608}
10609
10610func (s *PlacementGroupsListResponse) MarshalJSON() ([]byte, error) {
10611	type NoMethod PlacementGroupsListResponse
10612	raw := NoMethod(*s)
10613	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10614}
10615
10616// PlacementStrategiesListResponse: Placement Strategy List Response
10617type PlacementStrategiesListResponse struct {
10618	// Kind: Identifies what kind of resource this is. Value: the fixed
10619	// string "dfareporting#placementStrategiesListResponse".
10620	Kind string `json:"kind,omitempty"`
10621
10622	// NextPageToken: Pagination token to be used for the next list
10623	// operation.
10624	NextPageToken string `json:"nextPageToken,omitempty"`
10625
10626	// PlacementStrategies: Placement strategy collection.
10627	PlacementStrategies []*PlacementStrategy `json:"placementStrategies,omitempty"`
10628
10629	// ServerResponse contains the HTTP response code and headers from the
10630	// server.
10631	googleapi.ServerResponse `json:"-"`
10632
10633	// ForceSendFields is a list of field names (e.g. "Kind") to
10634	// unconditionally include in API requests. By default, fields with
10635	// empty or default values are omitted from API requests. However, any
10636	// non-pointer, non-interface field appearing in ForceSendFields will be
10637	// sent to the server regardless of whether the field is empty or not.
10638	// This may be used to include empty fields in Patch requests.
10639	ForceSendFields []string `json:"-"`
10640
10641	// NullFields is a list of field names (e.g. "Kind") to include in API
10642	// requests with the JSON null value. By default, fields with empty
10643	// values are omitted from API requests. However, any field with an
10644	// empty value appearing in NullFields will be sent to the server as
10645	// null. It is an error if a field in this list has a non-empty value.
10646	// This may be used to include null fields in Patch requests.
10647	NullFields []string `json:"-"`
10648}
10649
10650func (s *PlacementStrategiesListResponse) MarshalJSON() ([]byte, error) {
10651	type NoMethod PlacementStrategiesListResponse
10652	raw := NoMethod(*s)
10653	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10654}
10655
10656// PlacementStrategy: Contains properties of a placement strategy.
10657type PlacementStrategy struct {
10658	// AccountId: Account ID of this placement strategy.This is a read-only
10659	// field that can be left blank.
10660	AccountId int64 `json:"accountId,omitempty,string"`
10661
10662	// Id: ID of this placement strategy. This is a read-only,
10663	// auto-generated field.
10664	Id int64 `json:"id,omitempty,string"`
10665
10666	// Kind: Identifies what kind of resource this is. Value: the fixed
10667	// string "dfareporting#placementStrategy".
10668	Kind string `json:"kind,omitempty"`
10669
10670	// Name: Name of this placement strategy. This is a required field. It
10671	// must be less than 256 characters long and unique among placement
10672	// strategies of the same account.
10673	Name string `json:"name,omitempty"`
10674
10675	// ServerResponse contains the HTTP response code and headers from the
10676	// server.
10677	googleapi.ServerResponse `json:"-"`
10678
10679	// ForceSendFields is a list of field names (e.g. "AccountId") to
10680	// unconditionally include in API requests. By default, fields with
10681	// empty or default values are omitted from API requests. However, any
10682	// non-pointer, non-interface field appearing in ForceSendFields will be
10683	// sent to the server regardless of whether the field is empty or not.
10684	// This may be used to include empty fields in Patch requests.
10685	ForceSendFields []string `json:"-"`
10686
10687	// NullFields is a list of field names (e.g. "AccountId") to include in
10688	// API requests with the JSON null value. By default, fields with empty
10689	// values are omitted from API requests. However, any field with an
10690	// empty value appearing in NullFields will be sent to the server as
10691	// null. It is an error if a field in this list has a non-empty value.
10692	// This may be used to include null fields in Patch requests.
10693	NullFields []string `json:"-"`
10694}
10695
10696func (s *PlacementStrategy) MarshalJSON() ([]byte, error) {
10697	type NoMethod PlacementStrategy
10698	raw := NoMethod(*s)
10699	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10700}
10701
10702// PlacementTag: Placement Tag
10703type PlacementTag struct {
10704	// PlacementId: Placement ID
10705	PlacementId int64 `json:"placementId,omitempty,string"`
10706
10707	// TagDatas: Tags generated for this placement.
10708	TagDatas []*TagData `json:"tagDatas,omitempty"`
10709
10710	// ForceSendFields is a list of field names (e.g. "PlacementId") to
10711	// unconditionally include in API requests. By default, fields with
10712	// empty or default values are omitted from API requests. However, any
10713	// non-pointer, non-interface field appearing in ForceSendFields will be
10714	// sent to the server regardless of whether the field is empty or not.
10715	// This may be used to include empty fields in Patch requests.
10716	ForceSendFields []string `json:"-"`
10717
10718	// NullFields is a list of field names (e.g. "PlacementId") to include
10719	// in API requests with the JSON null value. By default, fields with
10720	// empty values are omitted from API requests. However, any field with
10721	// an empty value appearing in NullFields will be sent to the server as
10722	// null. It is an error if a field in this list has a non-empty value.
10723	// This may be used to include null fields in Patch requests.
10724	NullFields []string `json:"-"`
10725}
10726
10727func (s *PlacementTag) MarshalJSON() ([]byte, error) {
10728	type NoMethod PlacementTag
10729	raw := NoMethod(*s)
10730	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10731}
10732
10733// PlacementsGenerateTagsResponse: Placement GenerateTags Response
10734type PlacementsGenerateTagsResponse struct {
10735	// Kind: Identifies what kind of resource this is. Value: the fixed
10736	// string "dfareporting#placementsGenerateTagsResponse".
10737	Kind string `json:"kind,omitempty"`
10738
10739	// PlacementTags: Set of generated tags for the specified placements.
10740	PlacementTags []*PlacementTag `json:"placementTags,omitempty"`
10741
10742	// ServerResponse contains the HTTP response code and headers from the
10743	// server.
10744	googleapi.ServerResponse `json:"-"`
10745
10746	// ForceSendFields is a list of field names (e.g. "Kind") to
10747	// unconditionally include in API requests. By default, fields with
10748	// empty or default values are omitted from API requests. However, any
10749	// non-pointer, non-interface field appearing in ForceSendFields will be
10750	// sent to the server regardless of whether the field is empty or not.
10751	// This may be used to include empty fields in Patch requests.
10752	ForceSendFields []string `json:"-"`
10753
10754	// NullFields is a list of field names (e.g. "Kind") to include in API
10755	// requests with the JSON null value. By default, fields with empty
10756	// values are omitted from API requests. However, any field with an
10757	// empty value appearing in NullFields will be sent to the server as
10758	// null. It is an error if a field in this list has a non-empty value.
10759	// This may be used to include null fields in Patch requests.
10760	NullFields []string `json:"-"`
10761}
10762
10763func (s *PlacementsGenerateTagsResponse) MarshalJSON() ([]byte, error) {
10764	type NoMethod PlacementsGenerateTagsResponse
10765	raw := NoMethod(*s)
10766	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10767}
10768
10769// PlacementsListResponse: Placement List Response
10770type PlacementsListResponse struct {
10771	// Kind: Identifies what kind of resource this is. Value: the fixed
10772	// string "dfareporting#placementsListResponse".
10773	Kind string `json:"kind,omitempty"`
10774
10775	// NextPageToken: Pagination token to be used for the next list
10776	// operation.
10777	NextPageToken string `json:"nextPageToken,omitempty"`
10778
10779	// Placements: Placement collection.
10780	Placements []*Placement `json:"placements,omitempty"`
10781
10782	// ServerResponse contains the HTTP response code and headers from the
10783	// server.
10784	googleapi.ServerResponse `json:"-"`
10785
10786	// ForceSendFields is a list of field names (e.g. "Kind") to
10787	// unconditionally include in API requests. By default, fields with
10788	// empty or default values are omitted from API requests. However, any
10789	// non-pointer, non-interface field appearing in ForceSendFields will be
10790	// sent to the server regardless of whether the field is empty or not.
10791	// This may be used to include empty fields in Patch requests.
10792	ForceSendFields []string `json:"-"`
10793
10794	// NullFields is a list of field names (e.g. "Kind") to include in API
10795	// requests with the JSON null value. By default, fields with empty
10796	// values are omitted from API requests. However, any field with an
10797	// empty value appearing in NullFields will be sent to the server as
10798	// null. It is an error if a field in this list has a non-empty value.
10799	// This may be used to include null fields in Patch requests.
10800	NullFields []string `json:"-"`
10801}
10802
10803func (s *PlacementsListResponse) MarshalJSON() ([]byte, error) {
10804	type NoMethod PlacementsListResponse
10805	raw := NoMethod(*s)
10806	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10807}
10808
10809// PlatformType: Contains information about a platform type that can be
10810// targeted by ads.
10811type PlatformType struct {
10812	// Id: ID of this platform type.
10813	Id int64 `json:"id,omitempty,string"`
10814
10815	// Kind: Identifies what kind of resource this is. Value: the fixed
10816	// string "dfareporting#platformType".
10817	Kind string `json:"kind,omitempty"`
10818
10819	// Name: Name of this platform type.
10820	Name string `json:"name,omitempty"`
10821
10822	// ServerResponse contains the HTTP response code and headers from the
10823	// server.
10824	googleapi.ServerResponse `json:"-"`
10825
10826	// ForceSendFields is a list of field names (e.g. "Id") to
10827	// unconditionally include in API requests. By default, fields with
10828	// empty or default values are omitted from API requests. However, any
10829	// non-pointer, non-interface field appearing in ForceSendFields will be
10830	// sent to the server regardless of whether the field is empty or not.
10831	// This may be used to include empty fields in Patch requests.
10832	ForceSendFields []string `json:"-"`
10833
10834	// NullFields is a list of field names (e.g. "Id") to include in API
10835	// requests with the JSON null value. By default, fields with empty
10836	// values are omitted from API requests. However, any field with an
10837	// empty value appearing in NullFields will be sent to the server as
10838	// null. It is an error if a field in this list has a non-empty value.
10839	// This may be used to include null fields in Patch requests.
10840	NullFields []string `json:"-"`
10841}
10842
10843func (s *PlatformType) MarshalJSON() ([]byte, error) {
10844	type NoMethod PlatformType
10845	raw := NoMethod(*s)
10846	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10847}
10848
10849// PlatformTypesListResponse: Platform Type List Response
10850type PlatformTypesListResponse struct {
10851	// Kind: Identifies what kind of resource this is. Value: the fixed
10852	// string "dfareporting#platformTypesListResponse".
10853	Kind string `json:"kind,omitempty"`
10854
10855	// PlatformTypes: Platform type collection.
10856	PlatformTypes []*PlatformType `json:"platformTypes,omitempty"`
10857
10858	// ServerResponse contains the HTTP response code and headers from the
10859	// server.
10860	googleapi.ServerResponse `json:"-"`
10861
10862	// ForceSendFields is a list of field names (e.g. "Kind") to
10863	// unconditionally include in API requests. By default, fields with
10864	// empty or default values are omitted from API requests. However, any
10865	// non-pointer, non-interface field appearing in ForceSendFields will be
10866	// sent to the server regardless of whether the field is empty or not.
10867	// This may be used to include empty fields in Patch requests.
10868	ForceSendFields []string `json:"-"`
10869
10870	// NullFields is a list of field names (e.g. "Kind") to include in API
10871	// requests with the JSON null value. By default, fields with empty
10872	// values are omitted from API requests. However, any field with an
10873	// empty value appearing in NullFields will be sent to the server as
10874	// null. It is an error if a field in this list has a non-empty value.
10875	// This may be used to include null fields in Patch requests.
10876	NullFields []string `json:"-"`
10877}
10878
10879func (s *PlatformTypesListResponse) MarshalJSON() ([]byte, error) {
10880	type NoMethod PlatformTypesListResponse
10881	raw := NoMethod(*s)
10882	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10883}
10884
10885// PopupWindowProperties: Popup Window Properties.
10886type PopupWindowProperties struct {
10887	// Dimension: Popup dimension for a creative. This is a read-only field.
10888	// Applicable to the following creative types: all RICH_MEDIA and all
10889	// VPAID
10890	Dimension *Size `json:"dimension,omitempty"`
10891
10892	// Offset: Upper-left corner coordinates of the popup window. Applicable
10893	// if positionType is COORDINATES.
10894	Offset *OffsetPosition `json:"offset,omitempty"`
10895
10896	// PositionType: Popup window position either centered or at specific
10897	// coordinate.
10898	//
10899	// Possible values:
10900	//   "CENTER"
10901	//   "COORDINATES"
10902	PositionType string `json:"positionType,omitempty"`
10903
10904	// ShowAddressBar: Whether to display the browser address bar.
10905	ShowAddressBar bool `json:"showAddressBar,omitempty"`
10906
10907	// ShowMenuBar: Whether to display the browser menu bar.
10908	ShowMenuBar bool `json:"showMenuBar,omitempty"`
10909
10910	// ShowScrollBar: Whether to display the browser scroll bar.
10911	ShowScrollBar bool `json:"showScrollBar,omitempty"`
10912
10913	// ShowStatusBar: Whether to display the browser status bar.
10914	ShowStatusBar bool `json:"showStatusBar,omitempty"`
10915
10916	// ShowToolBar: Whether to display the browser tool bar.
10917	ShowToolBar bool `json:"showToolBar,omitempty"`
10918
10919	// Title: Title of popup window.
10920	Title string `json:"title,omitempty"`
10921
10922	// ForceSendFields is a list of field names (e.g. "Dimension") to
10923	// unconditionally include in API requests. By default, fields with
10924	// empty or default values are omitted from API requests. However, any
10925	// non-pointer, non-interface field appearing in ForceSendFields will be
10926	// sent to the server regardless of whether the field is empty or not.
10927	// This may be used to include empty fields in Patch requests.
10928	ForceSendFields []string `json:"-"`
10929
10930	// NullFields is a list of field names (e.g. "Dimension") to include in
10931	// API requests with the JSON null value. By default, fields with empty
10932	// values are omitted from API requests. However, any field with an
10933	// empty value appearing in NullFields will be sent to the server as
10934	// null. It is an error if a field in this list has a non-empty value.
10935	// This may be used to include null fields in Patch requests.
10936	NullFields []string `json:"-"`
10937}
10938
10939func (s *PopupWindowProperties) MarshalJSON() ([]byte, error) {
10940	type NoMethod PopupWindowProperties
10941	raw := NoMethod(*s)
10942	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10943}
10944
10945// PostalCode: Contains information about a postal code that can be
10946// targeted by ads.
10947type PostalCode struct {
10948	// Code: Postal code. This is equivalent to the id field.
10949	Code string `json:"code,omitempty"`
10950
10951	// CountryCode: Country code of the country to which this postal code
10952	// belongs.
10953	CountryCode string `json:"countryCode,omitempty"`
10954
10955	// CountryDartId: DART ID of the country to which this postal code
10956	// belongs.
10957	CountryDartId int64 `json:"countryDartId,omitempty,string"`
10958
10959	// Id: ID of this postal code.
10960	Id string `json:"id,omitempty"`
10961
10962	// Kind: Identifies what kind of resource this is. Value: the fixed
10963	// string "dfareporting#postalCode".
10964	Kind string `json:"kind,omitempty"`
10965
10966	// ServerResponse contains the HTTP response code and headers from the
10967	// server.
10968	googleapi.ServerResponse `json:"-"`
10969
10970	// ForceSendFields is a list of field names (e.g. "Code") to
10971	// unconditionally include in API requests. By default, fields with
10972	// empty or default values are omitted from API requests. However, any
10973	// non-pointer, non-interface field appearing in ForceSendFields will be
10974	// sent to the server regardless of whether the field is empty or not.
10975	// This may be used to include empty fields in Patch requests.
10976	ForceSendFields []string `json:"-"`
10977
10978	// NullFields is a list of field names (e.g. "Code") to include in API
10979	// requests with the JSON null value. By default, fields with empty
10980	// values are omitted from API requests. However, any field with an
10981	// empty value appearing in NullFields will be sent to the server as
10982	// null. It is an error if a field in this list has a non-empty value.
10983	// This may be used to include null fields in Patch requests.
10984	NullFields []string `json:"-"`
10985}
10986
10987func (s *PostalCode) MarshalJSON() ([]byte, error) {
10988	type NoMethod PostalCode
10989	raw := NoMethod(*s)
10990	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10991}
10992
10993// PostalCodesListResponse: Postal Code List Response
10994type PostalCodesListResponse struct {
10995	// Kind: Identifies what kind of resource this is. Value: the fixed
10996	// string "dfareporting#postalCodesListResponse".
10997	Kind string `json:"kind,omitempty"`
10998
10999	// PostalCodes: Postal code collection.
11000	PostalCodes []*PostalCode `json:"postalCodes,omitempty"`
11001
11002	// ServerResponse contains the HTTP response code and headers from the
11003	// server.
11004	googleapi.ServerResponse `json:"-"`
11005
11006	// ForceSendFields is a list of field names (e.g. "Kind") to
11007	// unconditionally include in API requests. By default, fields with
11008	// empty or default values are omitted from API requests. However, any
11009	// non-pointer, non-interface field appearing in ForceSendFields will be
11010	// sent to the server regardless of whether the field is empty or not.
11011	// This may be used to include empty fields in Patch requests.
11012	ForceSendFields []string `json:"-"`
11013
11014	// NullFields is a list of field names (e.g. "Kind") to include in API
11015	// requests with the JSON null value. By default, fields with empty
11016	// values are omitted from API requests. However, any field with an
11017	// empty value appearing in NullFields will be sent to the server as
11018	// null. It is an error if a field in this list has a non-empty value.
11019	// This may be used to include null fields in Patch requests.
11020	NullFields []string `json:"-"`
11021}
11022
11023func (s *PostalCodesListResponse) MarshalJSON() ([]byte, error) {
11024	type NoMethod PostalCodesListResponse
11025	raw := NoMethod(*s)
11026	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11027}
11028
11029// Pricing: Pricing Information
11030type Pricing struct {
11031	// CapCostType: Cap cost type of this inventory item.
11032	//
11033	// Possible values:
11034	//   "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE"
11035	//   "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY"
11036	//   "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE"
11037	CapCostType string `json:"capCostType,omitempty"`
11038
11039	EndDate string `json:"endDate,omitempty"`
11040
11041	// Flights: Flights of this inventory item. A flight (a.k.a. pricing
11042	// period) represents the inventory item pricing information for a
11043	// specific period of time.
11044	Flights []*Flight `json:"flights,omitempty"`
11045
11046	// GroupType: Group type of this inventory item if it represents a
11047	// placement group. Is null otherwise. There are two type of placement
11048	// groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of
11049	// inventory items that acts as a single pricing point for a group of
11050	// tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory
11051	// items that not only acts as a single pricing point, but also assumes
11052	// that all the tags in it will be served at the same time. A roadblock
11053	// requires one of its assigned inventory items to be marked as primary.
11054	//
11055	// Possible values:
11056	//   "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE"
11057	//   "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK"
11058	GroupType string `json:"groupType,omitempty"`
11059
11060	// PricingType: Pricing type of this inventory item.
11061	//
11062	// Possible values:
11063	//   "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS"
11064	//   "PLANNING_PLACEMENT_PRICING_TYPE_CPM"
11065	//   "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS"
11066	//   "PLANNING_PLACEMENT_PRICING_TYPE_CPC"
11067	//   "PLANNING_PLACEMENT_PRICING_TYPE_CPA"
11068	//   "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
11069	//   "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS"
11070	//   "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW"
11071	PricingType string `json:"pricingType,omitempty"`
11072
11073	StartDate string `json:"startDate,omitempty"`
11074
11075	// ForceSendFields is a list of field names (e.g. "CapCostType") to
11076	// unconditionally include in API requests. By default, fields with
11077	// empty or default values are omitted from API requests. However, any
11078	// non-pointer, non-interface field appearing in ForceSendFields will be
11079	// sent to the server regardless of whether the field is empty or not.
11080	// This may be used to include empty fields in Patch requests.
11081	ForceSendFields []string `json:"-"`
11082
11083	// NullFields is a list of field names (e.g. "CapCostType") to include
11084	// in API requests with the JSON null value. By default, fields with
11085	// empty values are omitted from API requests. However, any field with
11086	// an empty value appearing in NullFields will be sent to the server as
11087	// null. It is an error if a field in this list has a non-empty value.
11088	// This may be used to include null fields in Patch requests.
11089	NullFields []string `json:"-"`
11090}
11091
11092func (s *Pricing) MarshalJSON() ([]byte, error) {
11093	type NoMethod Pricing
11094	raw := NoMethod(*s)
11095	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11096}
11097
11098// PricingSchedule: Pricing Schedule
11099type PricingSchedule struct {
11100	// CapCostOption: Placement cap cost option.
11101	//
11102	// Possible values:
11103	//   "CAP_COST_NONE"
11104	//   "CAP_COST_MONTHLY"
11105	//   "CAP_COST_CUMULATIVE"
11106	CapCostOption string `json:"capCostOption,omitempty"`
11107
11108	EndDate string `json:"endDate,omitempty"`
11109
11110	// Flighted: Whether this placement is flighted. If true, pricing
11111	// periods will be computed automatically.
11112	Flighted bool `json:"flighted,omitempty"`
11113
11114	// FloodlightActivityId: Floodlight activity ID associated with this
11115	// placement. This field should be set when placement pricing type is
11116	// set to PRICING_TYPE_CPA.
11117	FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"`
11118
11119	// PricingPeriods: Pricing periods for this placement.
11120	PricingPeriods []*PricingSchedulePricingPeriod `json:"pricingPeriods,omitempty"`
11121
11122	// PricingType: Placement pricing type. This field is required on
11123	// insertion.
11124	//
11125	// Possible values:
11126	//   "PRICING_TYPE_CPM"
11127	//   "PRICING_TYPE_CPC"
11128	//   "PRICING_TYPE_CPA"
11129	//   "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
11130	//   "PRICING_TYPE_FLAT_RATE_CLICKS"
11131	//   "PRICING_TYPE_CPM_ACTIVEVIEW"
11132	PricingType string `json:"pricingType,omitempty"`
11133
11134	StartDate string `json:"startDate,omitempty"`
11135
11136	TestingStartDate string `json:"testingStartDate,omitempty"`
11137
11138	// ForceSendFields is a list of field names (e.g. "CapCostOption") to
11139	// unconditionally include in API requests. By default, fields with
11140	// empty or default values are omitted from API requests. However, any
11141	// non-pointer, non-interface field appearing in ForceSendFields will be
11142	// sent to the server regardless of whether the field is empty or not.
11143	// This may be used to include empty fields in Patch requests.
11144	ForceSendFields []string `json:"-"`
11145
11146	// NullFields is a list of field names (e.g. "CapCostOption") to include
11147	// in API requests with the JSON null value. By default, fields with
11148	// empty values are omitted from API requests. However, any field with
11149	// an empty value appearing in NullFields will be sent to the server as
11150	// null. It is an error if a field in this list has a non-empty value.
11151	// This may be used to include null fields in Patch requests.
11152	NullFields []string `json:"-"`
11153}
11154
11155func (s *PricingSchedule) MarshalJSON() ([]byte, error) {
11156	type NoMethod PricingSchedule
11157	raw := NoMethod(*s)
11158	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11159}
11160
11161// PricingSchedulePricingPeriod: Pricing Period
11162type PricingSchedulePricingPeriod struct {
11163	EndDate string `json:"endDate,omitempty"`
11164
11165	// PricingComment: Comments for this pricing period.
11166	PricingComment string `json:"pricingComment,omitempty"`
11167
11168	// RateOrCostNanos: Rate or cost of this pricing period in nanos (i.e.,
11169	// multipled by 1000000000). Acceptable values are 0 to
11170	// 1000000000000000000, inclusive.
11171	RateOrCostNanos int64 `json:"rateOrCostNanos,omitempty,string"`
11172
11173	StartDate string `json:"startDate,omitempty"`
11174
11175	// Units: Units of this pricing period. Acceptable values are 0 to
11176	// 10000000000, inclusive.
11177	Units int64 `json:"units,omitempty,string"`
11178
11179	// ForceSendFields is a list of field names (e.g. "EndDate") to
11180	// unconditionally include in API requests. By default, fields with
11181	// empty or default values are omitted from API requests. However, any
11182	// non-pointer, non-interface field appearing in ForceSendFields will be
11183	// sent to the server regardless of whether the field is empty or not.
11184	// This may be used to include empty fields in Patch requests.
11185	ForceSendFields []string `json:"-"`
11186
11187	// NullFields is a list of field names (e.g. "EndDate") to include in
11188	// API requests with the JSON null value. By default, fields with empty
11189	// values are omitted from API requests. However, any field with an
11190	// empty value appearing in NullFields will be sent to the server as
11191	// null. It is an error if a field in this list has a non-empty value.
11192	// This may be used to include null fields in Patch requests.
11193	NullFields []string `json:"-"`
11194}
11195
11196func (s *PricingSchedulePricingPeriod) MarshalJSON() ([]byte, error) {
11197	type NoMethod PricingSchedulePricingPeriod
11198	raw := NoMethod(*s)
11199	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11200}
11201
11202// Project: Contains properties of a Planning project.
11203type Project struct {
11204	// AccountId: Account ID of this project.
11205	AccountId int64 `json:"accountId,omitempty,string"`
11206
11207	// AdvertiserId: Advertiser ID of this project.
11208	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
11209
11210	// AudienceAgeGroup: Audience age group of this project.
11211	//
11212	// Possible values:
11213	//   "PLANNING_AUDIENCE_AGE_18_24"
11214	//   "PLANNING_AUDIENCE_AGE_25_34"
11215	//   "PLANNING_AUDIENCE_AGE_35_44"
11216	//   "PLANNING_AUDIENCE_AGE_45_54"
11217	//   "PLANNING_AUDIENCE_AGE_55_64"
11218	//   "PLANNING_AUDIENCE_AGE_65_OR_MORE"
11219	//   "PLANNING_AUDIENCE_AGE_UNKNOWN"
11220	AudienceAgeGroup string `json:"audienceAgeGroup,omitempty"`
11221
11222	// AudienceGender: Audience gender of this project.
11223	//
11224	// Possible values:
11225	//   "PLANNING_AUDIENCE_GENDER_MALE"
11226	//   "PLANNING_AUDIENCE_GENDER_FEMALE"
11227	AudienceGender string `json:"audienceGender,omitempty"`
11228
11229	// Budget: Budget of this project in the currency specified by the
11230	// current account. The value stored in this field represents only the
11231	// non-fractional amount. For example, for USD, the smallest value that
11232	// can be represented by this field is 1 US dollar.
11233	Budget int64 `json:"budget,omitempty,string"`
11234
11235	// ClientBillingCode: Client billing code of this project.
11236	ClientBillingCode string `json:"clientBillingCode,omitempty"`
11237
11238	// ClientName: Name of the project client.
11239	ClientName string `json:"clientName,omitempty"`
11240
11241	EndDate string `json:"endDate,omitempty"`
11242
11243	// Id: ID of this project. This is a read-only, auto-generated field.
11244	Id int64 `json:"id,omitempty,string"`
11245
11246	// Kind: Identifies what kind of resource this is. Value: the fixed
11247	// string "dfareporting#project".
11248	Kind string `json:"kind,omitempty"`
11249
11250	// LastModifiedInfo: Information about the most recent modification of
11251	// this project.
11252	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
11253
11254	// Name: Name of this project.
11255	Name string `json:"name,omitempty"`
11256
11257	// Overview: Overview of this project.
11258	Overview string `json:"overview,omitempty"`
11259
11260	StartDate string `json:"startDate,omitempty"`
11261
11262	// SubaccountId: Subaccount ID of this project.
11263	SubaccountId int64 `json:"subaccountId,omitempty,string"`
11264
11265	// TargetClicks: Number of clicks that the advertiser is targeting.
11266	TargetClicks int64 `json:"targetClicks,omitempty,string"`
11267
11268	// TargetConversions: Number of conversions that the advertiser is
11269	// targeting.
11270	TargetConversions int64 `json:"targetConversions,omitempty,string"`
11271
11272	// TargetCpaNanos: CPA that the advertiser is targeting.
11273	TargetCpaNanos int64 `json:"targetCpaNanos,omitempty,string"`
11274
11275	// TargetCpcNanos: CPC that the advertiser is targeting.
11276	TargetCpcNanos int64 `json:"targetCpcNanos,omitempty,string"`
11277
11278	// TargetCpmActiveViewNanos: vCPM from Active View that the advertiser
11279	// is targeting.
11280	TargetCpmActiveViewNanos int64 `json:"targetCpmActiveViewNanos,omitempty,string"`
11281
11282	// TargetCpmNanos: CPM that the advertiser is targeting.
11283	TargetCpmNanos int64 `json:"targetCpmNanos,omitempty,string"`
11284
11285	// TargetImpressions: Number of impressions that the advertiser is
11286	// targeting.
11287	TargetImpressions int64 `json:"targetImpressions,omitempty,string"`
11288
11289	// ServerResponse contains the HTTP response code and headers from the
11290	// server.
11291	googleapi.ServerResponse `json:"-"`
11292
11293	// ForceSendFields is a list of field names (e.g. "AccountId") to
11294	// unconditionally include in API requests. By default, fields with
11295	// empty or default values are omitted from API requests. However, any
11296	// non-pointer, non-interface field appearing in ForceSendFields will be
11297	// sent to the server regardless of whether the field is empty or not.
11298	// This may be used to include empty fields in Patch requests.
11299	ForceSendFields []string `json:"-"`
11300
11301	// NullFields is a list of field names (e.g. "AccountId") to include in
11302	// API requests with the JSON null value. By default, fields with empty
11303	// values are omitted from API requests. However, any field with an
11304	// empty value appearing in NullFields will be sent to the server as
11305	// null. It is an error if a field in this list has a non-empty value.
11306	// This may be used to include null fields in Patch requests.
11307	NullFields []string `json:"-"`
11308}
11309
11310func (s *Project) MarshalJSON() ([]byte, error) {
11311	type NoMethod Project
11312	raw := NoMethod(*s)
11313	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11314}
11315
11316// ProjectsListResponse: Project List Response
11317type ProjectsListResponse struct {
11318	// Kind: Identifies what kind of resource this is. Value: the fixed
11319	// string "dfareporting#projectsListResponse".
11320	Kind string `json:"kind,omitempty"`
11321
11322	// NextPageToken: Pagination token to be used for the next list
11323	// operation.
11324	NextPageToken string `json:"nextPageToken,omitempty"`
11325
11326	// Projects: Project collection.
11327	Projects []*Project `json:"projects,omitempty"`
11328
11329	// ServerResponse contains the HTTP response code and headers from the
11330	// server.
11331	googleapi.ServerResponse `json:"-"`
11332
11333	// ForceSendFields is a list of field names (e.g. "Kind") to
11334	// unconditionally include in API requests. By default, fields with
11335	// empty or default values are omitted from API requests. However, any
11336	// non-pointer, non-interface field appearing in ForceSendFields will be
11337	// sent to the server regardless of whether the field is empty or not.
11338	// This may be used to include empty fields in Patch requests.
11339	ForceSendFields []string `json:"-"`
11340
11341	// NullFields is a list of field names (e.g. "Kind") to include in API
11342	// requests with the JSON null value. By default, fields with empty
11343	// values are omitted from API requests. However, any field with an
11344	// empty value appearing in NullFields will be sent to the server as
11345	// null. It is an error if a field in this list has a non-empty value.
11346	// This may be used to include null fields in Patch requests.
11347	NullFields []string `json:"-"`
11348}
11349
11350func (s *ProjectsListResponse) MarshalJSON() ([]byte, error) {
11351	type NoMethod ProjectsListResponse
11352	raw := NoMethod(*s)
11353	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11354}
11355
11356// ReachReportCompatibleFields: Represents fields that are compatible to
11357// be selected for a report of type "REACH".
11358type ReachReportCompatibleFields struct {
11359	// DimensionFilters: Dimensions which are compatible to be selected in
11360	// the "dimensionFilters" section of the report.
11361	DimensionFilters []*Dimension `json:"dimensionFilters,omitempty"`
11362
11363	// Dimensions: Dimensions which are compatible to be selected in the
11364	// "dimensions" section of the report.
11365	Dimensions []*Dimension `json:"dimensions,omitempty"`
11366
11367	// Kind: The kind of resource this is, in this case
11368	// dfareporting#reachReportCompatibleFields.
11369	Kind string `json:"kind,omitempty"`
11370
11371	// Metrics: Metrics which are compatible to be selected in the
11372	// "metricNames" section of the report.
11373	Metrics []*Metric `json:"metrics,omitempty"`
11374
11375	// PivotedActivityMetrics: Metrics which are compatible to be selected
11376	// as activity metrics to pivot on in the "activities" section of the
11377	// report.
11378	PivotedActivityMetrics []*Metric `json:"pivotedActivityMetrics,omitempty"`
11379
11380	// ReachByFrequencyMetrics: Metrics which are compatible to be selected
11381	// in the "reachByFrequencyMetricNames" section of the report.
11382	ReachByFrequencyMetrics []*Metric `json:"reachByFrequencyMetrics,omitempty"`
11383
11384	// ForceSendFields is a list of field names (e.g. "DimensionFilters") to
11385	// unconditionally include in API requests. By default, fields with
11386	// empty or default values are omitted from API requests. However, any
11387	// non-pointer, non-interface field appearing in ForceSendFields will be
11388	// sent to the server regardless of whether the field is empty or not.
11389	// This may be used to include empty fields in Patch requests.
11390	ForceSendFields []string `json:"-"`
11391
11392	// NullFields is a list of field names (e.g. "DimensionFilters") to
11393	// include in API requests with the JSON null value. By default, fields
11394	// with empty values are omitted from API requests. However, any field
11395	// with an empty value appearing in NullFields will be sent to the
11396	// server as null. It is an error if a field in this list has a
11397	// non-empty value. This may be used to include null fields in Patch
11398	// requests.
11399	NullFields []string `json:"-"`
11400}
11401
11402func (s *ReachReportCompatibleFields) MarshalJSON() ([]byte, error) {
11403	type NoMethod ReachReportCompatibleFields
11404	raw := NoMethod(*s)
11405	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11406}
11407
11408// Recipient: Represents a recipient.
11409type Recipient struct {
11410	// DeliveryType: The delivery type for the recipient.
11411	//
11412	// Possible values:
11413	//   "LINK"
11414	//   "ATTACHMENT"
11415	DeliveryType string `json:"deliveryType,omitempty"`
11416
11417	// Email: The email address of the recipient.
11418	Email string `json:"email,omitempty"`
11419
11420	// Kind: The kind of resource this is, in this case
11421	// dfareporting#recipient.
11422	Kind string `json:"kind,omitempty"`
11423
11424	// ForceSendFields is a list of field names (e.g. "DeliveryType") to
11425	// unconditionally include in API requests. By default, fields with
11426	// empty or default values are omitted from API requests. However, any
11427	// non-pointer, non-interface field appearing in ForceSendFields will be
11428	// sent to the server regardless of whether the field is empty or not.
11429	// This may be used to include empty fields in Patch requests.
11430	ForceSendFields []string `json:"-"`
11431
11432	// NullFields is a list of field names (e.g. "DeliveryType") to include
11433	// in API requests with the JSON null value. By default, fields with
11434	// empty values are omitted from API requests. However, any field with
11435	// an empty value appearing in NullFields will be sent to the server as
11436	// null. It is an error if a field in this list has a non-empty value.
11437	// This may be used to include null fields in Patch requests.
11438	NullFields []string `json:"-"`
11439}
11440
11441func (s *Recipient) MarshalJSON() ([]byte, error) {
11442	type NoMethod Recipient
11443	raw := NoMethod(*s)
11444	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11445}
11446
11447// Region: Contains information about a region that can be targeted by
11448// ads.
11449type Region struct {
11450	// CountryCode: Country code of the country to which this region
11451	// belongs.
11452	CountryCode string `json:"countryCode,omitempty"`
11453
11454	// CountryDartId: DART ID of the country to which this region belongs.
11455	CountryDartId int64 `json:"countryDartId,omitempty,string"`
11456
11457	// DartId: DART ID of this region.
11458	DartId int64 `json:"dartId,omitempty,string"`
11459
11460	// Kind: Identifies what kind of resource this is. Value: the fixed
11461	// string "dfareporting#region".
11462	Kind string `json:"kind,omitempty"`
11463
11464	// Name: Name of this region.
11465	Name string `json:"name,omitempty"`
11466
11467	// RegionCode: Region code.
11468	RegionCode string `json:"regionCode,omitempty"`
11469
11470	// ForceSendFields is a list of field names (e.g. "CountryCode") to
11471	// unconditionally include in API requests. By default, fields with
11472	// empty or default values are omitted from API requests. However, any
11473	// non-pointer, non-interface field appearing in ForceSendFields will be
11474	// sent to the server regardless of whether the field is empty or not.
11475	// This may be used to include empty fields in Patch requests.
11476	ForceSendFields []string `json:"-"`
11477
11478	// NullFields is a list of field names (e.g. "CountryCode") to include
11479	// in API requests with the JSON null value. By default, fields with
11480	// empty values are omitted from API requests. However, any field with
11481	// an empty value appearing in NullFields will be sent to the server as
11482	// null. It is an error if a field in this list has a non-empty value.
11483	// This may be used to include null fields in Patch requests.
11484	NullFields []string `json:"-"`
11485}
11486
11487func (s *Region) MarshalJSON() ([]byte, error) {
11488	type NoMethod Region
11489	raw := NoMethod(*s)
11490	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11491}
11492
11493// RegionsListResponse: Region List Response
11494type RegionsListResponse struct {
11495	// Kind: Identifies what kind of resource this is. Value: the fixed
11496	// string "dfareporting#regionsListResponse".
11497	Kind string `json:"kind,omitempty"`
11498
11499	// Regions: Region collection.
11500	Regions []*Region `json:"regions,omitempty"`
11501
11502	// ServerResponse contains the HTTP response code and headers from the
11503	// server.
11504	googleapi.ServerResponse `json:"-"`
11505
11506	// ForceSendFields is a list of field names (e.g. "Kind") to
11507	// unconditionally include in API requests. By default, fields with
11508	// empty or default values are omitted from API requests. However, any
11509	// non-pointer, non-interface field appearing in ForceSendFields will be
11510	// sent to the server regardless of whether the field is empty or not.
11511	// This may be used to include empty fields in Patch requests.
11512	ForceSendFields []string `json:"-"`
11513
11514	// NullFields is a list of field names (e.g. "Kind") to include in API
11515	// requests with the JSON null value. By default, fields with empty
11516	// values are omitted from API requests. However, any field with an
11517	// empty value appearing in NullFields will be sent to the server as
11518	// null. It is an error if a field in this list has a non-empty value.
11519	// This may be used to include null fields in Patch requests.
11520	NullFields []string `json:"-"`
11521}
11522
11523func (s *RegionsListResponse) MarshalJSON() ([]byte, error) {
11524	type NoMethod RegionsListResponse
11525	raw := NoMethod(*s)
11526	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11527}
11528
11529// RemarketingList: Contains properties of a remarketing list.
11530// Remarketing enables you to create lists of users who have performed
11531// specific actions on a site, then target ads to members of those
11532// lists. This resource can be used to manage remarketing lists that are
11533// owned by your advertisers. To see all remarketing lists that are
11534// visible to your advertisers, including those that are shared to your
11535// advertiser or account, use the TargetableRemarketingLists resource.
11536type RemarketingList struct {
11537	// AccountId: Account ID of this remarketing list. This is a read-only,
11538	// auto-generated field that is only returned in GET requests.
11539	AccountId int64 `json:"accountId,omitempty,string"`
11540
11541	// Active: Whether this remarketing list is active.
11542	Active bool `json:"active,omitempty"`
11543
11544	// AdvertiserId: Dimension value for the advertiser ID that owns this
11545	// remarketing list. This is a required field.
11546	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
11547
11548	// AdvertiserIdDimensionValue: Dimension value for the ID of the
11549	// advertiser. This is a read-only, auto-generated field.
11550	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
11551
11552	// Description: Remarketing list description.
11553	Description string `json:"description,omitempty"`
11554
11555	// Id: Remarketing list ID. This is a read-only, auto-generated field.
11556	Id int64 `json:"id,omitempty,string"`
11557
11558	// Kind: Identifies what kind of resource this is. Value: the fixed
11559	// string "dfareporting#remarketingList".
11560	Kind string `json:"kind,omitempty"`
11561
11562	// LifeSpan: Number of days that a user should remain in the remarketing
11563	// list without an impression. Acceptable values are 1 to 540,
11564	// inclusive.
11565	LifeSpan int64 `json:"lifeSpan,omitempty,string"`
11566
11567	// ListPopulationRule: Rule used to populate the remarketing list with
11568	// users.
11569	ListPopulationRule *ListPopulationRule `json:"listPopulationRule,omitempty"`
11570
11571	// ListSize: Number of users currently in the list. This is a read-only
11572	// field.
11573	ListSize int64 `json:"listSize,omitempty,string"`
11574
11575	// ListSource: Product from which this remarketing list was originated.
11576	//
11577	// Possible values:
11578	//   "REMARKETING_LIST_SOURCE_OTHER"
11579	//   "REMARKETING_LIST_SOURCE_ADX"
11580	//   "REMARKETING_LIST_SOURCE_DFP"
11581	//   "REMARKETING_LIST_SOURCE_XFP"
11582	//   "REMARKETING_LIST_SOURCE_DFA"
11583	//   "REMARKETING_LIST_SOURCE_GA"
11584	//   "REMARKETING_LIST_SOURCE_YOUTUBE"
11585	//   "REMARKETING_LIST_SOURCE_DBM"
11586	//   "REMARKETING_LIST_SOURCE_GPLUS"
11587	//   "REMARKETING_LIST_SOURCE_DMP"
11588	//   "REMARKETING_LIST_SOURCE_PLAY_STORE"
11589	ListSource string `json:"listSource,omitempty"`
11590
11591	// Name: Name of the remarketing list. This is a required field. Must be
11592	// no greater than 128 characters long.
11593	Name string `json:"name,omitempty"`
11594
11595	// SubaccountId: Subaccount ID of this remarketing list. This is a
11596	// read-only, auto-generated field that is only returned in GET
11597	// requests.
11598	SubaccountId int64 `json:"subaccountId,omitempty,string"`
11599
11600	// ServerResponse contains the HTTP response code and headers from the
11601	// server.
11602	googleapi.ServerResponse `json:"-"`
11603
11604	// ForceSendFields is a list of field names (e.g. "AccountId") to
11605	// unconditionally include in API requests. By default, fields with
11606	// empty or default values are omitted from API requests. However, any
11607	// non-pointer, non-interface field appearing in ForceSendFields will be
11608	// sent to the server regardless of whether the field is empty or not.
11609	// This may be used to include empty fields in Patch requests.
11610	ForceSendFields []string `json:"-"`
11611
11612	// NullFields is a list of field names (e.g. "AccountId") to include in
11613	// API requests with the JSON null value. By default, fields with empty
11614	// values are omitted from API requests. However, any field with an
11615	// empty value appearing in NullFields will be sent to the server as
11616	// null. It is an error if a field in this list has a non-empty value.
11617	// This may be used to include null fields in Patch requests.
11618	NullFields []string `json:"-"`
11619}
11620
11621func (s *RemarketingList) MarshalJSON() ([]byte, error) {
11622	type NoMethod RemarketingList
11623	raw := NoMethod(*s)
11624	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11625}
11626
11627// RemarketingListShare: Contains properties of a remarketing list's
11628// sharing information. Sharing allows other accounts or advertisers to
11629// target to your remarketing lists. This resource can be used to manage
11630// remarketing list sharing to other accounts and advertisers.
11631type RemarketingListShare struct {
11632	// Kind: Identifies what kind of resource this is. Value: the fixed
11633	// string "dfareporting#remarketingListShare".
11634	Kind string `json:"kind,omitempty"`
11635
11636	// RemarketingListId: Remarketing list ID. This is a read-only,
11637	// auto-generated field.
11638	RemarketingListId int64 `json:"remarketingListId,omitempty,string"`
11639
11640	// SharedAccountIds: Accounts that the remarketing list is shared with.
11641	SharedAccountIds googleapi.Int64s `json:"sharedAccountIds,omitempty"`
11642
11643	// SharedAdvertiserIds: Advertisers that the remarketing list is shared
11644	// with.
11645	SharedAdvertiserIds googleapi.Int64s `json:"sharedAdvertiserIds,omitempty"`
11646
11647	// ServerResponse contains the HTTP response code and headers from the
11648	// server.
11649	googleapi.ServerResponse `json:"-"`
11650
11651	// ForceSendFields is a list of field names (e.g. "Kind") to
11652	// unconditionally include in API requests. By default, fields with
11653	// empty or default values are omitted from API requests. However, any
11654	// non-pointer, non-interface field appearing in ForceSendFields will be
11655	// sent to the server regardless of whether the field is empty or not.
11656	// This may be used to include empty fields in Patch requests.
11657	ForceSendFields []string `json:"-"`
11658
11659	// NullFields is a list of field names (e.g. "Kind") to include in API
11660	// requests with the JSON null value. By default, fields with empty
11661	// values are omitted from API requests. However, any field with an
11662	// empty value appearing in NullFields will be sent to the server as
11663	// null. It is an error if a field in this list has a non-empty value.
11664	// This may be used to include null fields in Patch requests.
11665	NullFields []string `json:"-"`
11666}
11667
11668func (s *RemarketingListShare) MarshalJSON() ([]byte, error) {
11669	type NoMethod RemarketingListShare
11670	raw := NoMethod(*s)
11671	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11672}
11673
11674// RemarketingListsListResponse: Remarketing list response
11675type RemarketingListsListResponse struct {
11676	// Kind: Identifies what kind of resource this is. Value: the fixed
11677	// string "dfareporting#remarketingListsListResponse".
11678	Kind string `json:"kind,omitempty"`
11679
11680	// NextPageToken: Pagination token to be used for the next list
11681	// operation.
11682	NextPageToken string `json:"nextPageToken,omitempty"`
11683
11684	// RemarketingLists: Remarketing list collection.
11685	RemarketingLists []*RemarketingList `json:"remarketingLists,omitempty"`
11686
11687	// ServerResponse contains the HTTP response code and headers from the
11688	// server.
11689	googleapi.ServerResponse `json:"-"`
11690
11691	// ForceSendFields is a list of field names (e.g. "Kind") to
11692	// unconditionally include in API requests. By default, fields with
11693	// empty or default values are omitted from API requests. However, any
11694	// non-pointer, non-interface field appearing in ForceSendFields will be
11695	// sent to the server regardless of whether the field is empty or not.
11696	// This may be used to include empty fields in Patch requests.
11697	ForceSendFields []string `json:"-"`
11698
11699	// NullFields is a list of field names (e.g. "Kind") to include in API
11700	// requests with the JSON null value. By default, fields with empty
11701	// values are omitted from API requests. However, any field with an
11702	// empty value appearing in NullFields will be sent to the server as
11703	// null. It is an error if a field in this list has a non-empty value.
11704	// This may be used to include null fields in Patch requests.
11705	NullFields []string `json:"-"`
11706}
11707
11708func (s *RemarketingListsListResponse) MarshalJSON() ([]byte, error) {
11709	type NoMethod RemarketingListsListResponse
11710	raw := NoMethod(*s)
11711	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11712}
11713
11714// Report: Represents a Report resource.
11715type Report struct {
11716	// AccountId: The account ID to which this report belongs.
11717	AccountId int64 `json:"accountId,omitempty,string"`
11718
11719	// Criteria: The report criteria for a report of type "STANDARD".
11720	Criteria *ReportCriteria `json:"criteria,omitempty"`
11721
11722	// CrossDimensionReachCriteria: The report criteria for a report of type
11723	// "CROSS_DIMENSION_REACH".
11724	CrossDimensionReachCriteria *ReportCrossDimensionReachCriteria `json:"crossDimensionReachCriteria,omitempty"`
11725
11726	// Delivery: The report's email delivery settings.
11727	Delivery *ReportDelivery `json:"delivery,omitempty"`
11728
11729	// Etag: The eTag of this response for caching purposes.
11730	Etag string `json:"etag,omitempty"`
11731
11732	// FileName: The filename used when generating report files for this
11733	// report.
11734	FileName string `json:"fileName,omitempty"`
11735
11736	// FloodlightCriteria: The report criteria for a report of type
11737	// "FLOODLIGHT".
11738	FloodlightCriteria *ReportFloodlightCriteria `json:"floodlightCriteria,omitempty"`
11739
11740	// Format: The output format of the report. If not specified, default
11741	// format is "CSV". Note that the actual format in the completed report
11742	// file might differ if for instance the report's size exceeds the
11743	// format's capabilities. "CSV" will then be the fallback format.
11744	//
11745	// Possible values:
11746	//   "CSV"
11747	//   "EXCEL"
11748	Format string `json:"format,omitempty"`
11749
11750	// Id: The unique ID identifying this report resource.
11751	Id int64 `json:"id,omitempty,string"`
11752
11753	// Kind: The kind of resource this is, in this case dfareporting#report.
11754	Kind string `json:"kind,omitempty"`
11755
11756	// LastModifiedTime: The timestamp (in milliseconds since epoch) of when
11757	// this report was last modified.
11758	LastModifiedTime uint64 `json:"lastModifiedTime,omitempty,string"`
11759
11760	// Name: The name of the report.
11761	Name string `json:"name,omitempty"`
11762
11763	// OwnerProfileId: The user profile id of the owner of this report.
11764	OwnerProfileId int64 `json:"ownerProfileId,omitempty,string"`
11765
11766	// PathAttributionCriteria: The report criteria for a report of type
11767	// "PATH_ATTRIBUTION".
11768	PathAttributionCriteria *ReportPathAttributionCriteria `json:"pathAttributionCriteria,omitempty"`
11769
11770	// PathCriteria: The report criteria for a report of type "PATH".
11771	PathCriteria *ReportPathCriteria `json:"pathCriteria,omitempty"`
11772
11773	// PathToConversionCriteria: The report criteria for a report of type
11774	// "PATH_TO_CONVERSION".
11775	PathToConversionCriteria *ReportPathToConversionCriteria `json:"pathToConversionCriteria,omitempty"`
11776
11777	// ReachCriteria: The report criteria for a report of type "REACH".
11778	ReachCriteria *ReportReachCriteria `json:"reachCriteria,omitempty"`
11779
11780	// Schedule: The report's schedule. Can only be set if the report's
11781	// 'dateRange' is a relative date range and the relative date range is
11782	// not "TODAY".
11783	Schedule *ReportSchedule `json:"schedule,omitempty"`
11784
11785	// SubAccountId: The subaccount ID to which this report belongs if
11786	// applicable.
11787	SubAccountId int64 `json:"subAccountId,omitempty,string"`
11788
11789	// Type: The type of the report.
11790	//
11791	// Possible values:
11792	//   "STANDARD"
11793	//   "REACH"
11794	//   "PATH_TO_CONVERSION"
11795	//   "CROSS_DIMENSION_REACH"
11796	//   "FLOODLIGHT"
11797	//   "PATH"
11798	//   "PATH_ATTRIBUTION"
11799	Type string `json:"type,omitempty"`
11800
11801	// ServerResponse contains the HTTP response code and headers from the
11802	// server.
11803	googleapi.ServerResponse `json:"-"`
11804
11805	// ForceSendFields is a list of field names (e.g. "AccountId") to
11806	// unconditionally include in API requests. By default, fields with
11807	// empty or default values are omitted from API requests. However, any
11808	// non-pointer, non-interface field appearing in ForceSendFields will be
11809	// sent to the server regardless of whether the field is empty or not.
11810	// This may be used to include empty fields in Patch requests.
11811	ForceSendFields []string `json:"-"`
11812
11813	// NullFields is a list of field names (e.g. "AccountId") to include in
11814	// API requests with the JSON null value. By default, fields with empty
11815	// values are omitted from API requests. However, any field with an
11816	// empty value appearing in NullFields will be sent to the server as
11817	// null. It is an error if a field in this list has a non-empty value.
11818	// This may be used to include null fields in Patch requests.
11819	NullFields []string `json:"-"`
11820}
11821
11822func (s *Report) MarshalJSON() ([]byte, error) {
11823	type NoMethod Report
11824	raw := NoMethod(*s)
11825	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11826}
11827
11828// ReportCriteria: The report criteria for a report of type "STANDARD".
11829type ReportCriteria struct {
11830	// Activities: Activity group.
11831	Activities *Activities `json:"activities,omitempty"`
11832
11833	// CustomRichMediaEvents: Custom Rich Media Events group.
11834	CustomRichMediaEvents *CustomRichMediaEvents `json:"customRichMediaEvents,omitempty"`
11835
11836	// DateRange: The date range for which this report should be run.
11837	DateRange *DateRange `json:"dateRange,omitempty"`
11838
11839	// DimensionFilters: The list of filters on which dimensions are
11840	// filtered. Filters for different dimensions are ANDed, filters for the
11841	// same dimension are grouped together and ORed.
11842	DimensionFilters []*DimensionValue `json:"dimensionFilters,omitempty"`
11843
11844	// Dimensions: The list of standard dimensions the report should
11845	// include.
11846	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
11847
11848	// MetricNames: The list of names of metrics the report should include.
11849	MetricNames []string `json:"metricNames,omitempty"`
11850
11851	// ForceSendFields is a list of field names (e.g. "Activities") to
11852	// unconditionally include in API requests. By default, fields with
11853	// empty or default values are omitted from API requests. However, any
11854	// non-pointer, non-interface field appearing in ForceSendFields will be
11855	// sent to the server regardless of whether the field is empty or not.
11856	// This may be used to include empty fields in Patch requests.
11857	ForceSendFields []string `json:"-"`
11858
11859	// NullFields is a list of field names (e.g. "Activities") to include in
11860	// API requests with the JSON null value. By default, fields with empty
11861	// values are omitted from API requests. However, any field with an
11862	// empty value appearing in NullFields will be sent to the server as
11863	// null. It is an error if a field in this list has a non-empty value.
11864	// This may be used to include null fields in Patch requests.
11865	NullFields []string `json:"-"`
11866}
11867
11868func (s *ReportCriteria) MarshalJSON() ([]byte, error) {
11869	type NoMethod ReportCriteria
11870	raw := NoMethod(*s)
11871	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11872}
11873
11874// ReportCrossDimensionReachCriteria: The report criteria for a report
11875// of type "CROSS_DIMENSION_REACH".
11876type ReportCrossDimensionReachCriteria struct {
11877	// Breakdown: The list of dimensions the report should include.
11878	Breakdown []*SortedDimension `json:"breakdown,omitempty"`
11879
11880	// DateRange: The date range this report should be run for.
11881	DateRange *DateRange `json:"dateRange,omitempty"`
11882
11883	// Dimension: The dimension option.
11884	//
11885	// Possible values:
11886	//   "ADVERTISER"
11887	//   "CAMPAIGN"
11888	//   "SITE_BY_ADVERTISER"
11889	//   "SITE_BY_CAMPAIGN"
11890	Dimension string `json:"dimension,omitempty"`
11891
11892	// DimensionFilters: The list of filters on which dimensions are
11893	// filtered.
11894	DimensionFilters []*DimensionValue `json:"dimensionFilters,omitempty"`
11895
11896	// MetricNames: The list of names of metrics the report should include.
11897	MetricNames []string `json:"metricNames,omitempty"`
11898
11899	// OverlapMetricNames: The list of names of overlap metrics the report
11900	// should include.
11901	OverlapMetricNames []string `json:"overlapMetricNames,omitempty"`
11902
11903	// Pivoted: Whether the report is pivoted or not. Defaults to true.
11904	Pivoted bool `json:"pivoted,omitempty"`
11905
11906	// ForceSendFields is a list of field names (e.g. "Breakdown") to
11907	// unconditionally include in API requests. By default, fields with
11908	// empty or default values are omitted from API requests. However, any
11909	// non-pointer, non-interface field appearing in ForceSendFields will be
11910	// sent to the server regardless of whether the field is empty or not.
11911	// This may be used to include empty fields in Patch requests.
11912	ForceSendFields []string `json:"-"`
11913
11914	// NullFields is a list of field names (e.g. "Breakdown") to include in
11915	// API requests with the JSON null value. By default, fields with empty
11916	// values are omitted from API requests. However, any field with an
11917	// empty value appearing in NullFields will be sent to the server as
11918	// null. It is an error if a field in this list has a non-empty value.
11919	// This may be used to include null fields in Patch requests.
11920	NullFields []string `json:"-"`
11921}
11922
11923func (s *ReportCrossDimensionReachCriteria) MarshalJSON() ([]byte, error) {
11924	type NoMethod ReportCrossDimensionReachCriteria
11925	raw := NoMethod(*s)
11926	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11927}
11928
11929// ReportDelivery: The report's email delivery settings.
11930type ReportDelivery struct {
11931	// EmailOwner: Whether the report should be emailed to the report owner.
11932	EmailOwner bool `json:"emailOwner,omitempty"`
11933
11934	// EmailOwnerDeliveryType: The type of delivery for the owner to
11935	// receive, if enabled.
11936	//
11937	// Possible values:
11938	//   "LINK"
11939	//   "ATTACHMENT"
11940	EmailOwnerDeliveryType string `json:"emailOwnerDeliveryType,omitempty"`
11941
11942	// Message: The message to be sent with each email.
11943	Message string `json:"message,omitempty"`
11944
11945	// Recipients: The list of recipients to which to email the report.
11946	Recipients []*Recipient `json:"recipients,omitempty"`
11947
11948	// ForceSendFields is a list of field names (e.g. "EmailOwner") to
11949	// unconditionally include in API requests. By default, fields with
11950	// empty or default values are omitted from API requests. However, any
11951	// non-pointer, non-interface field appearing in ForceSendFields will be
11952	// sent to the server regardless of whether the field is empty or not.
11953	// This may be used to include empty fields in Patch requests.
11954	ForceSendFields []string `json:"-"`
11955
11956	// NullFields is a list of field names (e.g. "EmailOwner") to include in
11957	// API requests with the JSON null value. By default, fields with empty
11958	// values are omitted from API requests. However, any field with an
11959	// empty value appearing in NullFields will be sent to the server as
11960	// null. It is an error if a field in this list has a non-empty value.
11961	// This may be used to include null fields in Patch requests.
11962	NullFields []string `json:"-"`
11963}
11964
11965func (s *ReportDelivery) MarshalJSON() ([]byte, error) {
11966	type NoMethod ReportDelivery
11967	raw := NoMethod(*s)
11968	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11969}
11970
11971// ReportFloodlightCriteria: The report criteria for a report of type
11972// "FLOODLIGHT".
11973type ReportFloodlightCriteria struct {
11974	// CustomRichMediaEvents: The list of custom rich media events to
11975	// include.
11976	CustomRichMediaEvents []*DimensionValue `json:"customRichMediaEvents,omitempty"`
11977
11978	// DateRange: The date range this report should be run for.
11979	DateRange *DateRange `json:"dateRange,omitempty"`
11980
11981	// DimensionFilters: The list of filters on which dimensions are
11982	// filtered. Filters for different dimensions are ANDed, filters for the
11983	// same dimension are grouped together and ORed.
11984	DimensionFilters []*DimensionValue `json:"dimensionFilters,omitempty"`
11985
11986	// Dimensions: The list of dimensions the report should include.
11987	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
11988
11989	// FloodlightConfigId: The floodlight ID for which to show data in this
11990	// report. All advertisers associated with that ID will automatically be
11991	// added. The dimension of the value needs to be
11992	// 'dfa:floodlightConfigId'.
11993	FloodlightConfigId *DimensionValue `json:"floodlightConfigId,omitempty"`
11994
11995	// MetricNames: The list of names of metrics the report should include.
11996	MetricNames []string `json:"metricNames,omitempty"`
11997
11998	// ReportProperties: The properties of the report.
11999	ReportProperties *ReportFloodlightCriteriaReportProperties `json:"reportProperties,omitempty"`
12000
12001	// ForceSendFields is a list of field names (e.g.
12002	// "CustomRichMediaEvents") to unconditionally include in API requests.
12003	// By default, fields with empty or default values are omitted from API
12004	// requests. However, any non-pointer, non-interface field appearing in
12005	// ForceSendFields will be sent to the server regardless of whether the
12006	// field is empty or not. This may be used to include empty fields in
12007	// Patch requests.
12008	ForceSendFields []string `json:"-"`
12009
12010	// NullFields is a list of field names (e.g. "CustomRichMediaEvents") to
12011	// include in API requests with the JSON null value. By default, fields
12012	// with empty values are omitted from API requests. However, any field
12013	// with an empty value appearing in NullFields will be sent to the
12014	// server as null. It is an error if a field in this list has a
12015	// non-empty value. This may be used to include null fields in Patch
12016	// requests.
12017	NullFields []string `json:"-"`
12018}
12019
12020func (s *ReportFloodlightCriteria) MarshalJSON() ([]byte, error) {
12021	type NoMethod ReportFloodlightCriteria
12022	raw := NoMethod(*s)
12023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12024}
12025
12026// ReportFloodlightCriteriaReportProperties: The properties of the
12027// report.
12028type ReportFloodlightCriteriaReportProperties struct {
12029	// IncludeAttributedIPConversions: Include conversions that have no
12030	// cookie, but do have an exposure path.
12031	IncludeAttributedIPConversions bool `json:"includeAttributedIPConversions,omitempty"`
12032
12033	// IncludeUnattributedCookieConversions: Include conversions of users
12034	// with a DoubleClick cookie but without an exposure. That means the
12035	// user did not click or see an ad from the advertiser within the
12036	// Floodlight group, or that the interaction happened outside the
12037	// lookback window.
12038	IncludeUnattributedCookieConversions bool `json:"includeUnattributedCookieConversions,omitempty"`
12039
12040	// IncludeUnattributedIPConversions: Include conversions that have no
12041	// associated cookies and no exposures. It’s therefore impossible to
12042	// know how the user was exposed to your ads during the lookback window
12043	// prior to a conversion.
12044	IncludeUnattributedIPConversions bool `json:"includeUnattributedIPConversions,omitempty"`
12045
12046	// ForceSendFields is a list of field names (e.g.
12047	// "IncludeAttributedIPConversions") to unconditionally include in API
12048	// requests. By default, fields with empty or default values are omitted
12049	// from API requests. However, any non-pointer, non-interface field
12050	// appearing in ForceSendFields will be sent to the server regardless of
12051	// whether the field is empty or not. This may be used to include empty
12052	// fields in Patch requests.
12053	ForceSendFields []string `json:"-"`
12054
12055	// NullFields is a list of field names (e.g.
12056	// "IncludeAttributedIPConversions") to include in API requests with the
12057	// JSON null value. By default, fields with empty values are omitted
12058	// from API requests. However, any field with an empty value appearing
12059	// in NullFields will be sent to the server as null. It is an error if a
12060	// field in this list has a non-empty value. This may be used to include
12061	// null fields in Patch requests.
12062	NullFields []string `json:"-"`
12063}
12064
12065func (s *ReportFloodlightCriteriaReportProperties) MarshalJSON() ([]byte, error) {
12066	type NoMethod ReportFloodlightCriteriaReportProperties
12067	raw := NoMethod(*s)
12068	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12069}
12070
12071// ReportPathAttributionCriteria: The report criteria for a report of
12072// type "PATH_ATTRIBUTION".
12073type ReportPathAttributionCriteria struct {
12074	// ActivityFilters: The list of 'dfa:activity' values to filter on.
12075	ActivityFilters []*DimensionValue `json:"activityFilters,omitempty"`
12076
12077	// CustomChannelGrouping: Channel Grouping.
12078	CustomChannelGrouping *ChannelGrouping `json:"customChannelGrouping,omitempty"`
12079
12080	// DateRange: The date range this report should be run for.
12081	DateRange *DateRange `json:"dateRange,omitempty"`
12082
12083	// Dimensions: The list of dimensions the report should include.
12084	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
12085
12086	// FloodlightConfigId: The floodlight ID for which to show data in this
12087	// report. All advertisers associated with that ID will automatically be
12088	// added. The dimension of the value needs to be
12089	// 'dfa:floodlightConfigId'.
12090	FloodlightConfigId *DimensionValue `json:"floodlightConfigId,omitempty"`
12091
12092	// MetricNames: The list of names of metrics the report should include.
12093	MetricNames []string `json:"metricNames,omitempty"`
12094
12095	// PathFilters: Path Filters.
12096	PathFilters []*PathFilter `json:"pathFilters,omitempty"`
12097
12098	// ForceSendFields is a list of field names (e.g. "ActivityFilters") to
12099	// unconditionally include in API requests. By default, fields with
12100	// empty or default values are omitted from API requests. However, any
12101	// non-pointer, non-interface field appearing in ForceSendFields will be
12102	// sent to the server regardless of whether the field is empty or not.
12103	// This may be used to include empty fields in Patch requests.
12104	ForceSendFields []string `json:"-"`
12105
12106	// NullFields is a list of field names (e.g. "ActivityFilters") to
12107	// include in API requests with the JSON null value. By default, fields
12108	// with empty values are omitted from API requests. However, any field
12109	// with an empty value appearing in NullFields will be sent to the
12110	// server as null. It is an error if a field in this list has a
12111	// non-empty value. This may be used to include null fields in Patch
12112	// requests.
12113	NullFields []string `json:"-"`
12114}
12115
12116func (s *ReportPathAttributionCriteria) MarshalJSON() ([]byte, error) {
12117	type NoMethod ReportPathAttributionCriteria
12118	raw := NoMethod(*s)
12119	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12120}
12121
12122// ReportPathCriteria: The report criteria for a report of type "PATH".
12123type ReportPathCriteria struct {
12124	// ActivityFilters: The list of 'dfa:activity' values to filter on.
12125	ActivityFilters []*DimensionValue `json:"activityFilters,omitempty"`
12126
12127	// CustomChannelGrouping: Channel Grouping.
12128	CustomChannelGrouping *ChannelGrouping `json:"customChannelGrouping,omitempty"`
12129
12130	// DateRange: The date range this report should be run for.
12131	DateRange *DateRange `json:"dateRange,omitempty"`
12132
12133	// Dimensions: The list of dimensions the report should include.
12134	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
12135
12136	// FloodlightConfigId: The floodlight ID for which to show data in this
12137	// report. All advertisers associated with that ID will automatically be
12138	// added. The dimension of the value needs to be
12139	// 'dfa:floodlightConfigId'.
12140	FloodlightConfigId *DimensionValue `json:"floodlightConfigId,omitempty"`
12141
12142	// MetricNames: The list of names of metrics the report should include.
12143	MetricNames []string `json:"metricNames,omitempty"`
12144
12145	// PathFilters: Path Filters.
12146	PathFilters []*PathFilter `json:"pathFilters,omitempty"`
12147
12148	// ForceSendFields is a list of field names (e.g. "ActivityFilters") to
12149	// unconditionally include in API requests. By default, fields with
12150	// empty or default values are omitted from API requests. However, any
12151	// non-pointer, non-interface field appearing in ForceSendFields will be
12152	// sent to the server regardless of whether the field is empty or not.
12153	// This may be used to include empty fields in Patch requests.
12154	ForceSendFields []string `json:"-"`
12155
12156	// NullFields is a list of field names (e.g. "ActivityFilters") to
12157	// include in API requests with the JSON null value. By default, fields
12158	// with empty values are omitted from API requests. However, any field
12159	// with an empty value appearing in NullFields will be sent to the
12160	// server as null. It is an error if a field in this list has a
12161	// non-empty value. This may be used to include null fields in Patch
12162	// requests.
12163	NullFields []string `json:"-"`
12164}
12165
12166func (s *ReportPathCriteria) MarshalJSON() ([]byte, error) {
12167	type NoMethod ReportPathCriteria
12168	raw := NoMethod(*s)
12169	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12170}
12171
12172// ReportPathToConversionCriteria: The report criteria for a report of
12173// type "PATH_TO_CONVERSION".
12174type ReportPathToConversionCriteria struct {
12175	// ActivityFilters: The list of 'dfa:activity' values to filter on.
12176	ActivityFilters []*DimensionValue `json:"activityFilters,omitempty"`
12177
12178	// ConversionDimensions: The list of conversion dimensions the report
12179	// should include.
12180	ConversionDimensions []*SortedDimension `json:"conversionDimensions,omitempty"`
12181
12182	// CustomFloodlightVariables: The list of custom floodlight variables
12183	// the report should include.
12184	CustomFloodlightVariables []*SortedDimension `json:"customFloodlightVariables,omitempty"`
12185
12186	// CustomRichMediaEvents: The list of custom rich media events to
12187	// include.
12188	CustomRichMediaEvents []*DimensionValue `json:"customRichMediaEvents,omitempty"`
12189
12190	// DateRange: The date range this report should be run for.
12191	DateRange *DateRange `json:"dateRange,omitempty"`
12192
12193	// FloodlightConfigId: The floodlight ID for which to show data in this
12194	// report. All advertisers associated with that ID will automatically be
12195	// added. The dimension of the value needs to be
12196	// 'dfa:floodlightConfigId'.
12197	FloodlightConfigId *DimensionValue `json:"floodlightConfigId,omitempty"`
12198
12199	// MetricNames: The list of names of metrics the report should include.
12200	MetricNames []string `json:"metricNames,omitempty"`
12201
12202	// PerInteractionDimensions: The list of per interaction dimensions the
12203	// report should include.
12204	PerInteractionDimensions []*SortedDimension `json:"perInteractionDimensions,omitempty"`
12205
12206	// ReportProperties: The properties of the report.
12207	ReportProperties *ReportPathToConversionCriteriaReportProperties `json:"reportProperties,omitempty"`
12208
12209	// ForceSendFields is a list of field names (e.g. "ActivityFilters") to
12210	// unconditionally include in API requests. By default, fields with
12211	// empty or default values are omitted from API requests. However, any
12212	// non-pointer, non-interface field appearing in ForceSendFields will be
12213	// sent to the server regardless of whether the field is empty or not.
12214	// This may be used to include empty fields in Patch requests.
12215	ForceSendFields []string `json:"-"`
12216
12217	// NullFields is a list of field names (e.g. "ActivityFilters") to
12218	// include in API requests with the JSON null value. By default, fields
12219	// with empty values are omitted from API requests. However, any field
12220	// with an empty value appearing in NullFields will be sent to the
12221	// server as null. It is an error if a field in this list has a
12222	// non-empty value. This may be used to include null fields in Patch
12223	// requests.
12224	NullFields []string `json:"-"`
12225}
12226
12227func (s *ReportPathToConversionCriteria) MarshalJSON() ([]byte, error) {
12228	type NoMethod ReportPathToConversionCriteria
12229	raw := NoMethod(*s)
12230	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12231}
12232
12233// ReportPathToConversionCriteriaReportProperties: The properties of the
12234// report.
12235type ReportPathToConversionCriteriaReportProperties struct {
12236	// ClicksLookbackWindow: CM360 checks to see if a click interaction
12237	// occurred within the specified period of time before a conversion. By
12238	// default the value is pulled from Floodlight or you can manually enter
12239	// a custom value. Valid values: 1-90.
12240	ClicksLookbackWindow int64 `json:"clicksLookbackWindow,omitempty"`
12241
12242	// ImpressionsLookbackWindow: CM360 checks to see if an impression
12243	// interaction occurred within the specified period of time before a
12244	// conversion. By default the value is pulled from Floodlight or you can
12245	// manually enter a custom value. Valid values: 1-90.
12246	ImpressionsLookbackWindow int64 `json:"impressionsLookbackWindow,omitempty"`
12247
12248	// IncludeAttributedIPConversions: Deprecated: has no effect.
12249	IncludeAttributedIPConversions bool `json:"includeAttributedIPConversions,omitempty"`
12250
12251	// IncludeUnattributedCookieConversions: Include conversions of users
12252	// with a DoubleClick cookie but without an exposure. That means the
12253	// user did not click or see an ad from the advertiser within the
12254	// Floodlight group, or that the interaction happened outside the
12255	// lookback window.
12256	IncludeUnattributedCookieConversions bool `json:"includeUnattributedCookieConversions,omitempty"`
12257
12258	// IncludeUnattributedIPConversions: Include conversions that have no
12259	// associated cookies and no exposures. It’s therefore impossible to
12260	// know how the user was exposed to your ads during the lookback window
12261	// prior to a conversion.
12262	IncludeUnattributedIPConversions bool `json:"includeUnattributedIPConversions,omitempty"`
12263
12264	// MaximumClickInteractions: The maximum number of click interactions to
12265	// include in the report. Advertisers currently paying for E2C reports
12266	// get up to 200 (100 clicks, 100 impressions). If another advertiser in
12267	// your network is paying for E2C, you can have up to 5 total exposures
12268	// per report.
12269	MaximumClickInteractions int64 `json:"maximumClickInteractions,omitempty"`
12270
12271	// MaximumImpressionInteractions: The maximum number of click
12272	// interactions to include in the report. Advertisers currently paying
12273	// for E2C reports get up to 200 (100 clicks, 100 impressions). If
12274	// another advertiser in your network is paying for E2C, you can have up
12275	// to 5 total exposures per report.
12276	MaximumImpressionInteractions int64 `json:"maximumImpressionInteractions,omitempty"`
12277
12278	// MaximumInteractionGap: The maximum amount of time that can take place
12279	// between interactions (clicks or impressions) by the same user. Valid
12280	// values: 1-90.
12281	MaximumInteractionGap int64 `json:"maximumInteractionGap,omitempty"`
12282
12283	// PivotOnInteractionPath: Enable pivoting on interaction path.
12284	PivotOnInteractionPath bool `json:"pivotOnInteractionPath,omitempty"`
12285
12286	// ForceSendFields is a list of field names (e.g.
12287	// "ClicksLookbackWindow") to unconditionally include in API requests.
12288	// By default, fields with empty or default values are omitted from API
12289	// requests. However, any non-pointer, non-interface field appearing in
12290	// ForceSendFields will be sent to the server regardless of whether the
12291	// field is empty or not. This may be used to include empty fields in
12292	// Patch requests.
12293	ForceSendFields []string `json:"-"`
12294
12295	// NullFields is a list of field names (e.g. "ClicksLookbackWindow") to
12296	// include in API requests with the JSON null value. By default, fields
12297	// with empty values are omitted from API requests. However, any field
12298	// with an empty value appearing in NullFields will be sent to the
12299	// server as null. It is an error if a field in this list has a
12300	// non-empty value. This may be used to include null fields in Patch
12301	// requests.
12302	NullFields []string `json:"-"`
12303}
12304
12305func (s *ReportPathToConversionCriteriaReportProperties) MarshalJSON() ([]byte, error) {
12306	type NoMethod ReportPathToConversionCriteriaReportProperties
12307	raw := NoMethod(*s)
12308	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12309}
12310
12311// ReportReachCriteria: The report criteria for a report of type
12312// "REACH".
12313type ReportReachCriteria struct {
12314	// Activities: Activity group.
12315	Activities *Activities `json:"activities,omitempty"`
12316
12317	// CustomRichMediaEvents: Custom Rich Media Events group.
12318	CustomRichMediaEvents *CustomRichMediaEvents `json:"customRichMediaEvents,omitempty"`
12319
12320	// DateRange: The date range this report should be run for.
12321	DateRange *DateRange `json:"dateRange,omitempty"`
12322
12323	// DimensionFilters: The list of filters on which dimensions are
12324	// filtered. Filters for different dimensions are ANDed, filters for the
12325	// same dimension are grouped together and ORed.
12326	DimensionFilters []*DimensionValue `json:"dimensionFilters,omitempty"`
12327
12328	// Dimensions: The list of dimensions the report should include.
12329	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
12330
12331	// EnableAllDimensionCombinations: Whether to enable all reach dimension
12332	// combinations in the report. Defaults to false. If enabled, the date
12333	// range of the report should be within the last 42 days.
12334	EnableAllDimensionCombinations bool `json:"enableAllDimensionCombinations,omitempty"`
12335
12336	// MetricNames: The list of names of metrics the report should include.
12337	MetricNames []string `json:"metricNames,omitempty"`
12338
12339	// ReachByFrequencyMetricNames: The list of names of Reach By Frequency
12340	// metrics the report should include.
12341	ReachByFrequencyMetricNames []string `json:"reachByFrequencyMetricNames,omitempty"`
12342
12343	// ForceSendFields is a list of field names (e.g. "Activities") to
12344	// unconditionally include in API requests. By default, fields with
12345	// empty or default values are omitted from API requests. However, any
12346	// non-pointer, non-interface field appearing in ForceSendFields will be
12347	// sent to the server regardless of whether the field is empty or not.
12348	// This may be used to include empty fields in Patch requests.
12349	ForceSendFields []string `json:"-"`
12350
12351	// NullFields is a list of field names (e.g. "Activities") to include in
12352	// API requests with the JSON null value. By default, fields with empty
12353	// values are omitted from API requests. However, any field with an
12354	// empty value appearing in NullFields will be sent to the server as
12355	// null. It is an error if a field in this list has a non-empty value.
12356	// This may be used to include null fields in Patch requests.
12357	NullFields []string `json:"-"`
12358}
12359
12360func (s *ReportReachCriteria) MarshalJSON() ([]byte, error) {
12361	type NoMethod ReportReachCriteria
12362	raw := NoMethod(*s)
12363	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12364}
12365
12366// ReportSchedule: The report's schedule. Can only be set if the
12367// report's 'dateRange' is a relative date range and the relative date
12368// range is not "TODAY".
12369type ReportSchedule struct {
12370	// Active: Whether the schedule is active or not. Must be set to either
12371	// true or false.
12372	Active bool `json:"active,omitempty"`
12373
12374	// Every: Defines every how many days, weeks or months the report should
12375	// be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or
12376	// "MONTHLY".
12377	Every int64 `json:"every,omitempty"`
12378
12379	ExpirationDate string `json:"expirationDate,omitempty"`
12380
12381	// Repeats: The interval for which the report is repeated. Note: -
12382	// "DAILY" also requires field "every" to be set. - "WEEKLY" also
12383	// requires fields "every" and "repeatsOnWeekDays" to be set. -
12384	// "MONTHLY" also requires fields "every" and "runsOnDayOfMonth" to be
12385	// set.
12386	Repeats string `json:"repeats,omitempty"`
12387
12388	// RepeatsOnWeekDays: List of week days "WEEKLY" on which scheduled
12389	// reports should run.
12390	//
12391	// Possible values:
12392	//   "SUNDAY"
12393	//   "MONDAY"
12394	//   "TUESDAY"
12395	//   "WEDNESDAY"
12396	//   "THURSDAY"
12397	//   "FRIDAY"
12398	//   "SATURDAY"
12399	RepeatsOnWeekDays []string `json:"repeatsOnWeekDays,omitempty"`
12400
12401	// RunsOnDayOfMonth: Enum to define for "MONTHLY" scheduled reports
12402	// whether reports should be repeated on the same day of the month as
12403	// "startDate" or the same day of the week of the month. Example: If
12404	// 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH"
12405	// would run subsequent reports on the 2nd of every Month, and
12406	// "WEEK_OF_MONTH" would run subsequent reports on the first Monday of
12407	// the month.
12408	//
12409	// Possible values:
12410	//   "DAY_OF_MONTH"
12411	//   "WEEK_OF_MONTH"
12412	RunsOnDayOfMonth string `json:"runsOnDayOfMonth,omitempty"`
12413
12414	StartDate string `json:"startDate,omitempty"`
12415
12416	// ForceSendFields is a list of field names (e.g. "Active") to
12417	// unconditionally include in API requests. By default, fields with
12418	// empty or default values are omitted from API requests. However, any
12419	// non-pointer, non-interface field appearing in ForceSendFields will be
12420	// sent to the server regardless of whether the field is empty or not.
12421	// This may be used to include empty fields in Patch requests.
12422	ForceSendFields []string `json:"-"`
12423
12424	// NullFields is a list of field names (e.g. "Active") to include in API
12425	// requests with the JSON null value. By default, fields with empty
12426	// values are omitted from API requests. However, any field with an
12427	// empty value appearing in NullFields will be sent to the server as
12428	// null. It is an error if a field in this list has a non-empty value.
12429	// This may be used to include null fields in Patch requests.
12430	NullFields []string `json:"-"`
12431}
12432
12433func (s *ReportSchedule) MarshalJSON() ([]byte, error) {
12434	type NoMethod ReportSchedule
12435	raw := NoMethod(*s)
12436	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12437}
12438
12439// ReportCompatibleFields: Represents fields that are compatible to be
12440// selected for a report of type "STANDARD".
12441type ReportCompatibleFields struct {
12442	// DimensionFilters: Dimensions which are compatible to be selected in
12443	// the "dimensionFilters" section of the report.
12444	DimensionFilters []*Dimension `json:"dimensionFilters,omitempty"`
12445
12446	// Dimensions: Dimensions which are compatible to be selected in the
12447	// "dimensions" section of the report.
12448	Dimensions []*Dimension `json:"dimensions,omitempty"`
12449
12450	// Kind: The kind of resource this is, in this case
12451	// dfareporting#reportCompatibleFields.
12452	Kind string `json:"kind,omitempty"`
12453
12454	// Metrics: Metrics which are compatible to be selected in the
12455	// "metricNames" section of the report.
12456	Metrics []*Metric `json:"metrics,omitempty"`
12457
12458	// PivotedActivityMetrics: Metrics which are compatible to be selected
12459	// as activity metrics to pivot on in the "activities" section of the
12460	// report.
12461	PivotedActivityMetrics []*Metric `json:"pivotedActivityMetrics,omitempty"`
12462
12463	// ForceSendFields is a list of field names (e.g. "DimensionFilters") to
12464	// unconditionally include in API requests. By default, fields with
12465	// empty or default values are omitted from API requests. However, any
12466	// non-pointer, non-interface field appearing in ForceSendFields will be
12467	// sent to the server regardless of whether the field is empty or not.
12468	// This may be used to include empty fields in Patch requests.
12469	ForceSendFields []string `json:"-"`
12470
12471	// NullFields is a list of field names (e.g. "DimensionFilters") to
12472	// include in API requests with the JSON null value. By default, fields
12473	// with empty values are omitted from API requests. However, any field
12474	// with an empty value appearing in NullFields will be sent to the
12475	// server as null. It is an error if a field in this list has a
12476	// non-empty value. This may be used to include null fields in Patch
12477	// requests.
12478	NullFields []string `json:"-"`
12479}
12480
12481func (s *ReportCompatibleFields) MarshalJSON() ([]byte, error) {
12482	type NoMethod ReportCompatibleFields
12483	raw := NoMethod(*s)
12484	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12485}
12486
12487// ReportList: Represents the list of reports.
12488type ReportList struct {
12489	// Etag: The eTag of this response for caching purposes.
12490	Etag string `json:"etag,omitempty"`
12491
12492	// Items: The reports returned in this response.
12493	Items []*Report `json:"items,omitempty"`
12494
12495	// Kind: The kind of list this is, in this case dfareporting#reportList.
12496	Kind string `json:"kind,omitempty"`
12497
12498	// NextPageToken: Continuation token used to page through reports. To
12499	// retrieve the next page of results, set the next request's "pageToken"
12500	// to the value of this field. The page token is only valid for a
12501	// limited amount of time and should not be persisted.
12502	NextPageToken string `json:"nextPageToken,omitempty"`
12503
12504	// ServerResponse contains the HTTP response code and headers from the
12505	// server.
12506	googleapi.ServerResponse `json:"-"`
12507
12508	// ForceSendFields is a list of field names (e.g. "Etag") to
12509	// unconditionally include in API requests. By default, fields with
12510	// empty or default values are omitted from API requests. However, any
12511	// non-pointer, non-interface field appearing in ForceSendFields will be
12512	// sent to the server regardless of whether the field is empty or not.
12513	// This may be used to include empty fields in Patch requests.
12514	ForceSendFields []string `json:"-"`
12515
12516	// NullFields is a list of field names (e.g. "Etag") to include in API
12517	// requests with the JSON null value. By default, fields with empty
12518	// values are omitted from API requests. However, any field with an
12519	// empty value appearing in NullFields will be sent to the server as
12520	// null. It is an error if a field in this list has a non-empty value.
12521	// This may be used to include null fields in Patch requests.
12522	NullFields []string `json:"-"`
12523}
12524
12525func (s *ReportList) MarshalJSON() ([]byte, error) {
12526	type NoMethod ReportList
12527	raw := NoMethod(*s)
12528	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12529}
12530
12531// ReportsConfiguration: Reporting Configuration
12532type ReportsConfiguration struct {
12533	// ExposureToConversionEnabled: Whether the exposure to conversion
12534	// report is enabled. This report shows detailed pathway information on
12535	// up to 10 of the most recent ad exposures seen by a user before
12536	// converting.
12537	ExposureToConversionEnabled bool `json:"exposureToConversionEnabled,omitempty"`
12538
12539	// LookbackConfiguration: Default lookback windows for new advertisers
12540	// in this account.
12541	LookbackConfiguration *LookbackConfiguration `json:"lookbackConfiguration,omitempty"`
12542
12543	// ReportGenerationTimeZoneId: Report generation time zone ID of this
12544	// account. This is a required field that can only be changed by a
12545	// superuser. Acceptable values are: - "1" for "America/New_York" - "2"
12546	// for "Europe/London" - "3" for "Europe/Paris" - "4" for
12547	// "Africa/Johannesburg" - "5" for "Asia/Jerusalem" - "6" for
12548	// "Asia/Shanghai" - "7" for "Asia/Hong_Kong" - "8" for "Asia/Tokyo" -
12549	// "9" for "Australia/Sydney" - "10" for "Asia/Dubai" - "11" for
12550	// "America/Los_Angeles" - "12" for "Pacific/Auckland" - "13" for
12551	// "America/Sao_Paulo" - "16" for "America/Asuncion" - "17" for
12552	// "America/Chicago" - "18" for "America/Denver" - "19" for
12553	// "America/St_Johns" - "20" for "Asia/Dhaka" - "21" for "Asia/Jakarta"
12554	// - "22" for "Asia/Kabul" - "23" for "Asia/Karachi" - "24" for
12555	// "Asia/Calcutta" - "25" for "Asia/Pyongyang" - "26" for "Asia/Rangoon"
12556	// - "27" for "Atlantic/Cape_Verde" - "28" for "Atlantic/South_Georgia"
12557	// - "29" for "Australia/Adelaide" - "30" for "Australia/Lord_Howe" -
12558	// "31" for "Europe/Moscow" - "32" for "Pacific/Kiritimati" - "35" for
12559	// "Pacific/Norfolk" - "36" for "Pacific/Tongatapu"
12560	ReportGenerationTimeZoneId int64 `json:"reportGenerationTimeZoneId,omitempty,string"`
12561
12562	// ForceSendFields is a list of field names (e.g.
12563	// "ExposureToConversionEnabled") to unconditionally include in API
12564	// requests. By default, fields with empty or default values are omitted
12565	// from API requests. However, any non-pointer, non-interface field
12566	// appearing in ForceSendFields will be sent to the server regardless of
12567	// whether the field is empty or not. This may be used to include empty
12568	// fields in Patch requests.
12569	ForceSendFields []string `json:"-"`
12570
12571	// NullFields is a list of field names (e.g.
12572	// "ExposureToConversionEnabled") to include in API requests with the
12573	// JSON null value. By default, fields with empty values are omitted
12574	// from API requests. However, any field with an empty value appearing
12575	// in NullFields will be sent to the server as null. It is an error if a
12576	// field in this list has a non-empty value. This may be used to include
12577	// null fields in Patch requests.
12578	NullFields []string `json:"-"`
12579}
12580
12581func (s *ReportsConfiguration) MarshalJSON() ([]byte, error) {
12582	type NoMethod ReportsConfiguration
12583	raw := NoMethod(*s)
12584	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12585}
12586
12587// RichMediaExitOverride: Rich Media Exit Override.
12588type RichMediaExitOverride struct {
12589	// ClickThroughUrl: Click-through URL of this rich media exit override.
12590	// Applicable if the enabled field is set to true.
12591	ClickThroughUrl *ClickThroughUrl `json:"clickThroughUrl,omitempty"`
12592
12593	// Enabled: Whether to use the clickThroughUrl. If false, the
12594	// creative-level exit will be used.
12595	Enabled bool `json:"enabled,omitempty"`
12596
12597	// ExitId: ID for the override to refer to a specific exit in the
12598	// creative.
12599	ExitId int64 `json:"exitId,omitempty,string"`
12600
12601	// ForceSendFields is a list of field names (e.g. "ClickThroughUrl") to
12602	// unconditionally include in API requests. By default, fields with
12603	// empty or default values are omitted from API requests. However, any
12604	// non-pointer, non-interface field appearing in ForceSendFields will be
12605	// sent to the server regardless of whether the field is empty or not.
12606	// This may be used to include empty fields in Patch requests.
12607	ForceSendFields []string `json:"-"`
12608
12609	// NullFields is a list of field names (e.g. "ClickThroughUrl") to
12610	// include in API requests with the JSON null value. By default, fields
12611	// with empty values are omitted from API requests. However, any field
12612	// with an empty value appearing in NullFields will be sent to the
12613	// server as null. It is an error if a field in this list has a
12614	// non-empty value. This may be used to include null fields in Patch
12615	// requests.
12616	NullFields []string `json:"-"`
12617}
12618
12619func (s *RichMediaExitOverride) MarshalJSON() ([]byte, error) {
12620	type NoMethod RichMediaExitOverride
12621	raw := NoMethod(*s)
12622	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12623}
12624
12625// Rule: A rule associates an asset with a targeting template for
12626// asset-level targeting. Applicable to INSTREAM_VIDEO creatives.
12627type Rule struct {
12628	// AssetId: A creativeAssets[].id. This should refer to one of the
12629	// parent assets in this creative. This is a required field.
12630	AssetId int64 `json:"assetId,omitempty,string"`
12631
12632	// Name: A user-friendly name for this rule. This is a required field.
12633	Name string `json:"name,omitempty"`
12634
12635	// TargetingTemplateId: A targeting template ID. The targeting from the
12636	// targeting template will be used to determine whether this asset
12637	// should be served. This is a required field.
12638	TargetingTemplateId int64 `json:"targetingTemplateId,omitempty,string"`
12639
12640	// ForceSendFields is a list of field names (e.g. "AssetId") to
12641	// unconditionally include in API requests. By default, fields with
12642	// empty or default values are omitted from API requests. However, any
12643	// non-pointer, non-interface field appearing in ForceSendFields will be
12644	// sent to the server regardless of whether the field is empty or not.
12645	// This may be used to include empty fields in Patch requests.
12646	ForceSendFields []string `json:"-"`
12647
12648	// NullFields is a list of field names (e.g. "AssetId") to include in
12649	// API requests with the JSON null value. By default, fields with empty
12650	// values are omitted from API requests. However, any field with an
12651	// empty value appearing in NullFields will be sent to the server as
12652	// null. It is an error if a field in this list has a non-empty value.
12653	// This may be used to include null fields in Patch requests.
12654	NullFields []string `json:"-"`
12655}
12656
12657func (s *Rule) MarshalJSON() ([]byte, error) {
12658	type NoMethod Rule
12659	raw := NoMethod(*s)
12660	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12661}
12662
12663// Site: Contains properties of a site.
12664type Site struct {
12665	// AccountId: Account ID of this site. This is a read-only field that
12666	// can be left blank.
12667	AccountId int64 `json:"accountId,omitempty,string"`
12668
12669	// Approved: Whether this site is approved.
12670	Approved bool `json:"approved,omitempty"`
12671
12672	// DirectorySiteId: Directory site associated with this site. This is a
12673	// required field that is read-only after insertion.
12674	DirectorySiteId int64 `json:"directorySiteId,omitempty,string"`
12675
12676	// DirectorySiteIdDimensionValue: Dimension value for the ID of the
12677	// directory site. This is a read-only, auto-generated field.
12678	DirectorySiteIdDimensionValue *DimensionValue `json:"directorySiteIdDimensionValue,omitempty"`
12679
12680	// Id: ID of this site. This is a read-only, auto-generated field.
12681	Id int64 `json:"id,omitempty,string"`
12682
12683	// IdDimensionValue: Dimension value for the ID of this site. This is a
12684	// read-only, auto-generated field.
12685	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
12686
12687	// KeyName: Key name of this site. This is a read-only, auto-generated
12688	// field.
12689	KeyName string `json:"keyName,omitempty"`
12690
12691	// Kind: Identifies what kind of resource this is. Value: the fixed
12692	// string "dfareporting#site".
12693	Kind string `json:"kind,omitempty"`
12694
12695	// Name: Name of this site.This is a required field. Must be less than
12696	// 128 characters long. If this site is under a subaccount, the name
12697	// must be unique among sites of the same subaccount. Otherwise, this
12698	// site is a top-level site, and the name must be unique among top-level
12699	// sites of the same account.
12700	Name string `json:"name,omitempty"`
12701
12702	// SiteContacts: Site contacts.
12703	SiteContacts []*SiteContact `json:"siteContacts,omitempty"`
12704
12705	// SiteSettings: Site-wide settings.
12706	SiteSettings *SiteSettings `json:"siteSettings,omitempty"`
12707
12708	// SubaccountId: Subaccount ID of this site. This is a read-only field
12709	// that can be left blank.
12710	SubaccountId int64 `json:"subaccountId,omitempty,string"`
12711
12712	// VideoSettings: Default video settings for new placements created
12713	// under this site. This value will be used to populate the
12714	// placements.videoSettings field, when no value is specified for the
12715	// new placement.
12716	VideoSettings *SiteVideoSettings `json:"videoSettings,omitempty"`
12717
12718	// ServerResponse contains the HTTP response code and headers from the
12719	// server.
12720	googleapi.ServerResponse `json:"-"`
12721
12722	// ForceSendFields is a list of field names (e.g. "AccountId") to
12723	// unconditionally include in API requests. By default, fields with
12724	// empty or default values are omitted from API requests. However, any
12725	// non-pointer, non-interface field appearing in ForceSendFields will be
12726	// sent to the server regardless of whether the field is empty or not.
12727	// This may be used to include empty fields in Patch requests.
12728	ForceSendFields []string `json:"-"`
12729
12730	// NullFields is a list of field names (e.g. "AccountId") to include in
12731	// API requests with the JSON null value. By default, fields with empty
12732	// values are omitted from API requests. However, any field with an
12733	// empty value appearing in NullFields will be sent to the server as
12734	// null. It is an error if a field in this list has a non-empty value.
12735	// This may be used to include null fields in Patch requests.
12736	NullFields []string `json:"-"`
12737}
12738
12739func (s *Site) MarshalJSON() ([]byte, error) {
12740	type NoMethod Site
12741	raw := NoMethod(*s)
12742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12743}
12744
12745// SiteCompanionSetting: Companion Settings
12746type SiteCompanionSetting struct {
12747	// CompanionsDisabled: Whether companions are disabled for this site
12748	// template.
12749	CompanionsDisabled bool `json:"companionsDisabled,omitempty"`
12750
12751	// EnabledSizes: Allowlist of companion sizes to be served via this site
12752	// template. Set this list to null or empty to serve all companion
12753	// sizes.
12754	EnabledSizes []*Size `json:"enabledSizes,omitempty"`
12755
12756	// ImageOnly: Whether to serve only static images as companions.
12757	ImageOnly bool `json:"imageOnly,omitempty"`
12758
12759	// Kind: Identifies what kind of resource this is. Value: the fixed
12760	// string "dfareporting#siteCompanionSetting".
12761	Kind string `json:"kind,omitempty"`
12762
12763	// ForceSendFields is a list of field names (e.g. "CompanionsDisabled")
12764	// to unconditionally include in API requests. By default, fields with
12765	// empty or default values are omitted from API requests. However, any
12766	// non-pointer, non-interface field appearing in ForceSendFields will be
12767	// sent to the server regardless of whether the field is empty or not.
12768	// This may be used to include empty fields in Patch requests.
12769	ForceSendFields []string `json:"-"`
12770
12771	// NullFields is a list of field names (e.g. "CompanionsDisabled") to
12772	// include in API requests with the JSON null value. By default, fields
12773	// with empty values are omitted from API requests. However, any field
12774	// with an empty value appearing in NullFields will be sent to the
12775	// server as null. It is an error if a field in this list has a
12776	// non-empty value. This may be used to include null fields in Patch
12777	// requests.
12778	NullFields []string `json:"-"`
12779}
12780
12781func (s *SiteCompanionSetting) MarshalJSON() ([]byte, error) {
12782	type NoMethod SiteCompanionSetting
12783	raw := NoMethod(*s)
12784	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12785}
12786
12787// SiteContact: Site Contact
12788type SiteContact struct {
12789	// Address: Address of this site contact.
12790	Address string `json:"address,omitempty"`
12791
12792	// ContactType: Site contact type.
12793	//
12794	// Possible values:
12795	//   "SALES_PERSON"
12796	//   "TRAFFICKER"
12797	ContactType string `json:"contactType,omitempty"`
12798
12799	// Email: Email address of this site contact. This is a required field.
12800	Email string `json:"email,omitempty"`
12801
12802	// FirstName: First name of this site contact.
12803	FirstName string `json:"firstName,omitempty"`
12804
12805	// Id: ID of this site contact. This is a read-only, auto-generated
12806	// field.
12807	Id int64 `json:"id,omitempty,string"`
12808
12809	// LastName: Last name of this site contact.
12810	LastName string `json:"lastName,omitempty"`
12811
12812	// Phone: Primary phone number of this site contact.
12813	Phone string `json:"phone,omitempty"`
12814
12815	// Title: Title or designation of this site contact.
12816	Title string `json:"title,omitempty"`
12817
12818	// ForceSendFields is a list of field names (e.g. "Address") to
12819	// unconditionally include in API requests. By default, fields with
12820	// empty or default values are omitted from API requests. However, any
12821	// non-pointer, non-interface field appearing in ForceSendFields will be
12822	// sent to the server regardless of whether the field is empty or not.
12823	// This may be used to include empty fields in Patch requests.
12824	ForceSendFields []string `json:"-"`
12825
12826	// NullFields is a list of field names (e.g. "Address") to include in
12827	// API requests with the JSON null value. By default, fields with empty
12828	// values are omitted from API requests. However, any field with an
12829	// empty value appearing in NullFields will be sent to the server as
12830	// null. It is an error if a field in this list has a non-empty value.
12831	// This may be used to include null fields in Patch requests.
12832	NullFields []string `json:"-"`
12833}
12834
12835func (s *SiteContact) MarshalJSON() ([]byte, error) {
12836	type NoMethod SiteContact
12837	raw := NoMethod(*s)
12838	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12839}
12840
12841// SiteSettings: Site Settings
12842type SiteSettings struct {
12843	// ActiveViewOptOut: Whether active view creatives are disabled for this
12844	// site.
12845	ActiveViewOptOut bool `json:"activeViewOptOut,omitempty"`
12846
12847	// AdBlockingOptOut: Whether this site opts out of ad blocking. When
12848	// true, ad blocking is disabled for all placements under the site,
12849	// regardless of the individual placement settings. When false, the
12850	// campaign and placement settings take effect.
12851	AdBlockingOptOut bool `json:"adBlockingOptOut,omitempty"`
12852
12853	// DisableNewCookie: Whether new cookies are disabled for this site.
12854	DisableNewCookie bool `json:"disableNewCookie,omitempty"`
12855
12856	// TagSetting: Configuration settings for dynamic and image floodlight
12857	// tags.
12858	TagSetting *TagSetting `json:"tagSetting,omitempty"`
12859
12860	// VideoActiveViewOptOutTemplate: Whether Verification and ActiveView
12861	// for in-stream video creatives are disabled by default for new
12862	// placements created under this site. This value will be used to
12863	// populate the placement.videoActiveViewOptOut field, when no value is
12864	// specified for the new placement.
12865	VideoActiveViewOptOutTemplate bool `json:"videoActiveViewOptOutTemplate,omitempty"`
12866
12867	// VpaidAdapterChoiceTemplate: Default VPAID adapter setting for new
12868	// placements created under this site. This value will be used to
12869	// populate the placements.vpaidAdapterChoice field, when no value is
12870	// specified for the new placement. Controls which VPAID format the
12871	// measurement adapter will use for in-stream video creatives assigned
12872	// to the placement. The publisher's specifications will typically
12873	// determine this setting. For VPAID creatives, the adapter format will
12874	// match the VPAID format (HTML5 VPAID creatives use the HTML5 adapter).
12875	// *Note:* Flash is no longer supported. This field now defaults to
12876	// HTML5 when the following values are provided: FLASH, BOTH.
12877	//
12878	// Possible values:
12879	//   "DEFAULT"
12880	//   "FLASH"
12881	//   "HTML5"
12882	//   "BOTH"
12883	VpaidAdapterChoiceTemplate string `json:"vpaidAdapterChoiceTemplate,omitempty"`
12884
12885	// ForceSendFields is a list of field names (e.g. "ActiveViewOptOut") to
12886	// unconditionally include in API requests. By default, fields with
12887	// empty or default values are omitted from API requests. However, any
12888	// non-pointer, non-interface field appearing in ForceSendFields will be
12889	// sent to the server regardless of whether the field is empty or not.
12890	// This may be used to include empty fields in Patch requests.
12891	ForceSendFields []string `json:"-"`
12892
12893	// NullFields is a list of field names (e.g. "ActiveViewOptOut") to
12894	// include in API requests with the JSON null value. By default, fields
12895	// with empty values are omitted from API requests. However, any field
12896	// with an empty value appearing in NullFields will be sent to the
12897	// server as null. It is an error if a field in this list has a
12898	// non-empty value. This may be used to include null fields in Patch
12899	// requests.
12900	NullFields []string `json:"-"`
12901}
12902
12903func (s *SiteSettings) MarshalJSON() ([]byte, error) {
12904	type NoMethod SiteSettings
12905	raw := NoMethod(*s)
12906	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12907}
12908
12909// SiteSkippableSetting: Skippable Settings
12910type SiteSkippableSetting struct {
12911	// Kind: Identifies what kind of resource this is. Value: the fixed
12912	// string "dfareporting#siteSkippableSetting".
12913	Kind string `json:"kind,omitempty"`
12914
12915	// ProgressOffset: Amount of time to play videos served to this site
12916	// template before counting a view. Applicable when skippable is true.
12917	ProgressOffset *VideoOffset `json:"progressOffset,omitempty"`
12918
12919	// SkipOffset: Amount of time to play videos served to this site before
12920	// the skip button should appear. Applicable when skippable is true.
12921	SkipOffset *VideoOffset `json:"skipOffset,omitempty"`
12922
12923	// Skippable: Whether the user can skip creatives served to this site.
12924	// This will act as default for new placements created under this site.
12925	Skippable bool `json:"skippable,omitempty"`
12926
12927	// ForceSendFields is a list of field names (e.g. "Kind") to
12928	// unconditionally include in API requests. By default, fields with
12929	// empty or default values are omitted from API requests. However, any
12930	// non-pointer, non-interface field appearing in ForceSendFields will be
12931	// sent to the server regardless of whether the field is empty or not.
12932	// This may be used to include empty fields in Patch requests.
12933	ForceSendFields []string `json:"-"`
12934
12935	// NullFields is a list of field names (e.g. "Kind") to include in API
12936	// requests with the JSON null value. By default, fields with empty
12937	// values are omitted from API requests. However, any field with an
12938	// empty value appearing in NullFields will be sent to the server as
12939	// null. It is an error if a field in this list has a non-empty value.
12940	// This may be used to include null fields in Patch requests.
12941	NullFields []string `json:"-"`
12942}
12943
12944func (s *SiteSkippableSetting) MarshalJSON() ([]byte, error) {
12945	type NoMethod SiteSkippableSetting
12946	raw := NoMethod(*s)
12947	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12948}
12949
12950// SiteTranscodeSetting: Transcode Settings
12951type SiteTranscodeSetting struct {
12952	// EnabledVideoFormats: Allowlist of video formats to be served to this
12953	// site template. Set this list to null or empty to serve all video
12954	// formats.
12955	EnabledVideoFormats []int64 `json:"enabledVideoFormats,omitempty"`
12956
12957	// Kind: Identifies what kind of resource this is. Value: the fixed
12958	// string "dfareporting#siteTranscodeSetting".
12959	Kind string `json:"kind,omitempty"`
12960
12961	// ForceSendFields is a list of field names (e.g. "EnabledVideoFormats")
12962	// to unconditionally include in API requests. By default, fields with
12963	// empty or default values are omitted from API requests. However, any
12964	// non-pointer, non-interface field appearing in ForceSendFields will be
12965	// sent to the server regardless of whether the field is empty or not.
12966	// This may be used to include empty fields in Patch requests.
12967	ForceSendFields []string `json:"-"`
12968
12969	// NullFields is a list of field names (e.g. "EnabledVideoFormats") to
12970	// include in API requests with the JSON null value. By default, fields
12971	// with empty values are omitted from API requests. However, any field
12972	// with an empty value appearing in NullFields will be sent to the
12973	// server as null. It is an error if a field in this list has a
12974	// non-empty value. This may be used to include null fields in Patch
12975	// requests.
12976	NullFields []string `json:"-"`
12977}
12978
12979func (s *SiteTranscodeSetting) MarshalJSON() ([]byte, error) {
12980	type NoMethod SiteTranscodeSetting
12981	raw := NoMethod(*s)
12982	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12983}
12984
12985// SiteVideoSettings: Video Settings
12986type SiteVideoSettings struct {
12987	// CompanionSettings: Settings for the companion creatives of video
12988	// creatives served to this site.
12989	CompanionSettings *SiteCompanionSetting `json:"companionSettings,omitempty"`
12990
12991	// Kind: Identifies what kind of resource this is. Value: the fixed
12992	// string "dfareporting#siteVideoSettings".
12993	Kind string `json:"kind,omitempty"`
12994
12995	// ObaEnabled: Whether OBA icons are enabled for this placement.
12996	ObaEnabled bool `json:"obaEnabled,omitempty"`
12997
12998	// ObaSettings: Settings for the OBA icon of video creatives served to
12999	// this site. This will act as default for new placements created under
13000	// this site.
13001	ObaSettings *ObaIcon `json:"obaSettings,omitempty"`
13002
13003	// Orientation: Orientation of a site template used for video. This will
13004	// act as default for new placements created under this site.
13005	//
13006	// Possible values:
13007	//   "ANY"
13008	//   "LANDSCAPE"
13009	//   "PORTRAIT"
13010	Orientation string `json:"orientation,omitempty"`
13011
13012	// SkippableSettings: Settings for the skippability of video creatives
13013	// served to this site. This will act as default for new placements
13014	// created under this site.
13015	SkippableSettings *SiteSkippableSetting `json:"skippableSettings,omitempty"`
13016
13017	// TranscodeSettings: Settings for the transcodes of video creatives
13018	// served to this site. This will act as default for new placements
13019	// created under this site.
13020	TranscodeSettings *SiteTranscodeSetting `json:"transcodeSettings,omitempty"`
13021
13022	// ForceSendFields is a list of field names (e.g. "CompanionSettings")
13023	// to unconditionally include in API requests. By default, fields with
13024	// empty or default values are omitted from API requests. However, any
13025	// non-pointer, non-interface field appearing in ForceSendFields will be
13026	// sent to the server regardless of whether the field is empty or not.
13027	// This may be used to include empty fields in Patch requests.
13028	ForceSendFields []string `json:"-"`
13029
13030	// NullFields is a list of field names (e.g. "CompanionSettings") to
13031	// include in API requests with the JSON null value. By default, fields
13032	// with empty values are omitted from API requests. However, any field
13033	// with an empty value appearing in NullFields will be sent to the
13034	// server as null. It is an error if a field in this list has a
13035	// non-empty value. This may be used to include null fields in Patch
13036	// requests.
13037	NullFields []string `json:"-"`
13038}
13039
13040func (s *SiteVideoSettings) MarshalJSON() ([]byte, error) {
13041	type NoMethod SiteVideoSettings
13042	raw := NoMethod(*s)
13043	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13044}
13045
13046// SitesListResponse: Site List Response
13047type SitesListResponse struct {
13048	// Kind: Identifies what kind of resource this is. Value: the fixed
13049	// string "dfareporting#sitesListResponse".
13050	Kind string `json:"kind,omitempty"`
13051
13052	// NextPageToken: Pagination token to be used for the next list
13053	// operation.
13054	NextPageToken string `json:"nextPageToken,omitempty"`
13055
13056	// Sites: Site collection.
13057	Sites []*Site `json:"sites,omitempty"`
13058
13059	// ServerResponse contains the HTTP response code and headers from the
13060	// server.
13061	googleapi.ServerResponse `json:"-"`
13062
13063	// ForceSendFields is a list of field names (e.g. "Kind") to
13064	// unconditionally include in API requests. By default, fields with
13065	// empty or default values are omitted from API requests. However, any
13066	// non-pointer, non-interface field appearing in ForceSendFields will be
13067	// sent to the server regardless of whether the field is empty or not.
13068	// This may be used to include empty fields in Patch requests.
13069	ForceSendFields []string `json:"-"`
13070
13071	// NullFields is a list of field names (e.g. "Kind") to include in API
13072	// requests with the JSON null value. By default, fields with empty
13073	// values are omitted from API requests. However, any field with an
13074	// empty value appearing in NullFields will be sent to the server as
13075	// null. It is an error if a field in this list has a non-empty value.
13076	// This may be used to include null fields in Patch requests.
13077	NullFields []string `json:"-"`
13078}
13079
13080func (s *SitesListResponse) MarshalJSON() ([]byte, error) {
13081	type NoMethod SitesListResponse
13082	raw := NoMethod(*s)
13083	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13084}
13085
13086// Size: Represents the dimensions of ads, placements, creatives, or
13087// creative assets.
13088type Size struct {
13089	// Height: Height of this size. Acceptable values are 0 to 32767,
13090	// inclusive.
13091	Height int64 `json:"height,omitempty"`
13092
13093	// Iab: IAB standard size. This is a read-only, auto-generated field.
13094	Iab bool `json:"iab,omitempty"`
13095
13096	// Id: ID of this size. This is a read-only, auto-generated field.
13097	Id int64 `json:"id,omitempty,string"`
13098
13099	// Kind: Identifies what kind of resource this is. Value: the fixed
13100	// string "dfareporting#size".
13101	Kind string `json:"kind,omitempty"`
13102
13103	// Width: Width of this size. Acceptable values are 0 to 32767,
13104	// inclusive.
13105	Width int64 `json:"width,omitempty"`
13106
13107	// ServerResponse contains the HTTP response code and headers from the
13108	// server.
13109	googleapi.ServerResponse `json:"-"`
13110
13111	// ForceSendFields is a list of field names (e.g. "Height") to
13112	// unconditionally include in API requests. By default, fields with
13113	// empty or default values are omitted from API requests. However, any
13114	// non-pointer, non-interface field appearing in ForceSendFields will be
13115	// sent to the server regardless of whether the field is empty or not.
13116	// This may be used to include empty fields in Patch requests.
13117	ForceSendFields []string `json:"-"`
13118
13119	// NullFields is a list of field names (e.g. "Height") to include in API
13120	// requests with the JSON null value. By default, fields with empty
13121	// values are omitted from API requests. However, any field with an
13122	// empty value appearing in NullFields will be sent to the server as
13123	// null. It is an error if a field in this list has a non-empty value.
13124	// This may be used to include null fields in Patch requests.
13125	NullFields []string `json:"-"`
13126}
13127
13128func (s *Size) MarshalJSON() ([]byte, error) {
13129	type NoMethod Size
13130	raw := NoMethod(*s)
13131	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13132}
13133
13134// SizesListResponse: Size List Response
13135type SizesListResponse struct {
13136	// Kind: Identifies what kind of resource this is. Value: the fixed
13137	// string "dfareporting#sizesListResponse".
13138	Kind string `json:"kind,omitempty"`
13139
13140	// Sizes: Size collection.
13141	Sizes []*Size `json:"sizes,omitempty"`
13142
13143	// ServerResponse contains the HTTP response code and headers from the
13144	// server.
13145	googleapi.ServerResponse `json:"-"`
13146
13147	// ForceSendFields is a list of field names (e.g. "Kind") to
13148	// unconditionally include in API requests. By default, fields with
13149	// empty or default values are omitted from API requests. However, any
13150	// non-pointer, non-interface field appearing in ForceSendFields will be
13151	// sent to the server regardless of whether the field is empty or not.
13152	// This may be used to include empty fields in Patch requests.
13153	ForceSendFields []string `json:"-"`
13154
13155	// NullFields is a list of field names (e.g. "Kind") to include in API
13156	// requests with the JSON null value. By default, fields with empty
13157	// values are omitted from API requests. However, any field with an
13158	// empty value appearing in NullFields will be sent to the server as
13159	// null. It is an error if a field in this list has a non-empty value.
13160	// This may be used to include null fields in Patch requests.
13161	NullFields []string `json:"-"`
13162}
13163
13164func (s *SizesListResponse) MarshalJSON() ([]byte, error) {
13165	type NoMethod SizesListResponse
13166	raw := NoMethod(*s)
13167	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13168}
13169
13170// SkippableSetting: Skippable Settings
13171type SkippableSetting struct {
13172	// Kind: Identifies what kind of resource this is. Value: the fixed
13173	// string "dfareporting#skippableSetting".
13174	Kind string `json:"kind,omitempty"`
13175
13176	// ProgressOffset: Amount of time to play videos served to this
13177	// placement before counting a view. Applicable when skippable is true.
13178	ProgressOffset *VideoOffset `json:"progressOffset,omitempty"`
13179
13180	// SkipOffset: Amount of time to play videos served to this placement
13181	// before the skip button should appear. Applicable when skippable is
13182	// true.
13183	SkipOffset *VideoOffset `json:"skipOffset,omitempty"`
13184
13185	// Skippable: Whether the user can skip creatives served to this
13186	// placement.
13187	Skippable bool `json:"skippable,omitempty"`
13188
13189	// ForceSendFields is a list of field names (e.g. "Kind") to
13190	// unconditionally include in API requests. By default, fields with
13191	// empty or default values are omitted from API requests. However, any
13192	// non-pointer, non-interface field appearing in ForceSendFields will be
13193	// sent to the server regardless of whether the field is empty or not.
13194	// This may be used to include empty fields in Patch requests.
13195	ForceSendFields []string `json:"-"`
13196
13197	// NullFields is a list of field names (e.g. "Kind") to include in API
13198	// requests with the JSON null value. By default, fields with empty
13199	// values are omitted from API requests. However, any field with an
13200	// empty value appearing in NullFields will be sent to the server as
13201	// null. It is an error if a field in this list has a non-empty value.
13202	// This may be used to include null fields in Patch requests.
13203	NullFields []string `json:"-"`
13204}
13205
13206func (s *SkippableSetting) MarshalJSON() ([]byte, error) {
13207	type NoMethod SkippableSetting
13208	raw := NoMethod(*s)
13209	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13210}
13211
13212// SortedDimension: Represents a sorted dimension.
13213type SortedDimension struct {
13214	// Kind: The kind of resource this is, in this case
13215	// dfareporting#sortedDimension.
13216	Kind string `json:"kind,omitempty"`
13217
13218	// Name: The name of the dimension.
13219	Name string `json:"name,omitempty"`
13220
13221	// SortOrder: An optional sort order for the dimension column.
13222	//
13223	// Possible values:
13224	//   "ASCENDING"
13225	//   "DESCENDING"
13226	SortOrder string `json:"sortOrder,omitempty"`
13227
13228	// ForceSendFields is a list of field names (e.g. "Kind") to
13229	// unconditionally include in API requests. By default, fields with
13230	// empty or default values are omitted from API requests. However, any
13231	// non-pointer, non-interface field appearing in ForceSendFields will be
13232	// sent to the server regardless of whether the field is empty or not.
13233	// This may be used to include empty fields in Patch requests.
13234	ForceSendFields []string `json:"-"`
13235
13236	// NullFields is a list of field names (e.g. "Kind") to include in API
13237	// requests with the JSON null value. By default, fields with empty
13238	// values are omitted from API requests. However, any field with an
13239	// empty value appearing in NullFields will be sent to the server as
13240	// null. It is an error if a field in this list has a non-empty value.
13241	// This may be used to include null fields in Patch requests.
13242	NullFields []string `json:"-"`
13243}
13244
13245func (s *SortedDimension) MarshalJSON() ([]byte, error) {
13246	type NoMethod SortedDimension
13247	raw := NoMethod(*s)
13248	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13249}
13250
13251// Subaccount: Contains properties of a Campaign Manager subaccount.
13252type Subaccount struct {
13253	// AccountId: ID of the account that contains this subaccount. This is a
13254	// read-only field that can be left blank.
13255	AccountId int64 `json:"accountId,omitempty,string"`
13256
13257	// AvailablePermissionIds: IDs of the available user role permissions
13258	// for this subaccount.
13259	AvailablePermissionIds googleapi.Int64s `json:"availablePermissionIds,omitempty"`
13260
13261	// Id: ID of this subaccount. This is a read-only, auto-generated field.
13262	Id int64 `json:"id,omitempty,string"`
13263
13264	// Kind: Identifies what kind of resource this is. Value: the fixed
13265	// string "dfareporting#subaccount".
13266	Kind string `json:"kind,omitempty"`
13267
13268	// Name: Name of this subaccount. This is a required field. Must be less
13269	// than 128 characters long and be unique among subaccounts of the same
13270	// account.
13271	Name string `json:"name,omitempty"`
13272
13273	// ServerResponse contains the HTTP response code and headers from the
13274	// server.
13275	googleapi.ServerResponse `json:"-"`
13276
13277	// ForceSendFields is a list of field names (e.g. "AccountId") to
13278	// unconditionally include in API requests. By default, fields with
13279	// empty or default values are omitted from API requests. However, any
13280	// non-pointer, non-interface field appearing in ForceSendFields will be
13281	// sent to the server regardless of whether the field is empty or not.
13282	// This may be used to include empty fields in Patch requests.
13283	ForceSendFields []string `json:"-"`
13284
13285	// NullFields is a list of field names (e.g. "AccountId") to include in
13286	// API requests with the JSON null value. By default, fields with empty
13287	// values are omitted from API requests. However, any field with an
13288	// empty value appearing in NullFields will be sent to the server as
13289	// null. It is an error if a field in this list has a non-empty value.
13290	// This may be used to include null fields in Patch requests.
13291	NullFields []string `json:"-"`
13292}
13293
13294func (s *Subaccount) MarshalJSON() ([]byte, error) {
13295	type NoMethod Subaccount
13296	raw := NoMethod(*s)
13297	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13298}
13299
13300// SubaccountsListResponse: Subaccount List Response
13301type SubaccountsListResponse struct {
13302	// Kind: Identifies what kind of resource this is. Value: the fixed
13303	// string "dfareporting#subaccountsListResponse".
13304	Kind string `json:"kind,omitempty"`
13305
13306	// NextPageToken: Pagination token to be used for the next list
13307	// operation.
13308	NextPageToken string `json:"nextPageToken,omitempty"`
13309
13310	// Subaccounts: Subaccount collection.
13311	Subaccounts []*Subaccount `json:"subaccounts,omitempty"`
13312
13313	// ServerResponse contains the HTTP response code and headers from the
13314	// server.
13315	googleapi.ServerResponse `json:"-"`
13316
13317	// ForceSendFields is a list of field names (e.g. "Kind") to
13318	// unconditionally include in API requests. By default, fields with
13319	// empty or default values are omitted from API requests. However, any
13320	// non-pointer, non-interface field appearing in ForceSendFields will be
13321	// sent to the server regardless of whether the field is empty or not.
13322	// This may be used to include empty fields in Patch requests.
13323	ForceSendFields []string `json:"-"`
13324
13325	// NullFields is a list of field names (e.g. "Kind") to include in API
13326	// requests with the JSON null value. By default, fields with empty
13327	// values are omitted from API requests. However, any field with an
13328	// empty value appearing in NullFields will be sent to the server as
13329	// null. It is an error if a field in this list has a non-empty value.
13330	// This may be used to include null fields in Patch requests.
13331	NullFields []string `json:"-"`
13332}
13333
13334func (s *SubaccountsListResponse) MarshalJSON() ([]byte, error) {
13335	type NoMethod SubaccountsListResponse
13336	raw := NoMethod(*s)
13337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13338}
13339
13340// TagData: Placement Tag Data
13341type TagData struct {
13342	// AdId: Ad associated with this placement tag. Applicable only when
13343	// format is PLACEMENT_TAG_TRACKING.
13344	AdId int64 `json:"adId,omitempty,string"`
13345
13346	// ClickTag: Tag string to record a click.
13347	ClickTag string `json:"clickTag,omitempty"`
13348
13349	// CreativeId: Creative associated with this placement tag. Applicable
13350	// only when format is PLACEMENT_TAG_TRACKING.
13351	CreativeId int64 `json:"creativeId,omitempty,string"`
13352
13353	// Format: TagData tag format of this tag.
13354	//
13355	// Possible values:
13356	//   "PLACEMENT_TAG_STANDARD"
13357	//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
13358	//   "PLACEMENT_TAG_IFRAME_ILAYER"
13359	//   "PLACEMENT_TAG_INTERNAL_REDIRECT"
13360	//   "PLACEMENT_TAG_JAVASCRIPT"
13361	//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
13362	//   "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
13363	//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
13364	//   "PLACEMENT_TAG_CLICK_COMMANDS"
13365	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
13366	//   "PLACEMENT_TAG_TRACKING"
13367	//   "PLACEMENT_TAG_TRACKING_IFRAME"
13368	//   "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
13369	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
13370	//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
13371	//   "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
13372	//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
13373	//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
13374	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
13375	Format string `json:"format,omitempty"`
13376
13377	// ImpressionTag: Tag string for serving an ad.
13378	ImpressionTag string `json:"impressionTag,omitempty"`
13379
13380	// ForceSendFields is a list of field names (e.g. "AdId") to
13381	// unconditionally include in API requests. By default, fields with
13382	// empty or default values are omitted from API requests. However, any
13383	// non-pointer, non-interface field appearing in ForceSendFields will be
13384	// sent to the server regardless of whether the field is empty or not.
13385	// This may be used to include empty fields in Patch requests.
13386	ForceSendFields []string `json:"-"`
13387
13388	// NullFields is a list of field names (e.g. "AdId") to include in API
13389	// requests with the JSON null value. By default, fields with empty
13390	// values are omitted from API requests. However, any field with an
13391	// empty value appearing in NullFields will be sent to the server as
13392	// null. It is an error if a field in this list has a non-empty value.
13393	// This may be used to include null fields in Patch requests.
13394	NullFields []string `json:"-"`
13395}
13396
13397func (s *TagData) MarshalJSON() ([]byte, error) {
13398	type NoMethod TagData
13399	raw := NoMethod(*s)
13400	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13401}
13402
13403// TagSetting: Tag Settings
13404type TagSetting struct {
13405	// AdditionalKeyValues: Additional key-values to be included in tags.
13406	// Each key-value pair must be of the form key=value, and pairs must be
13407	// separated by a semicolon (;). Keys and values must not contain
13408	// commas. For example, id=2;color=red is a valid value for this field.
13409	AdditionalKeyValues string `json:"additionalKeyValues,omitempty"`
13410
13411	// IncludeClickThroughUrls: Whether static landing page URLs should be
13412	// included in the tags. This setting applies only to placements.
13413	IncludeClickThroughUrls bool `json:"includeClickThroughUrls,omitempty"`
13414
13415	// IncludeClickTracking: Whether click-tracking string should be
13416	// included in the tags.
13417	IncludeClickTracking bool `json:"includeClickTracking,omitempty"`
13418
13419	// KeywordOption: Option specifying how keywords are embedded in ad
13420	// tags. This setting can be used to specify whether keyword
13421	// placeholders are inserted in placement tags for this site. Publishers
13422	// can then add keywords to those placeholders.
13423	//
13424	// Possible values:
13425	//   "PLACEHOLDER_WITH_LIST_OF_KEYWORDS"
13426	//   "IGNORE"
13427	//   "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD"
13428	KeywordOption string `json:"keywordOption,omitempty"`
13429
13430	// ForceSendFields is a list of field names (e.g. "AdditionalKeyValues")
13431	// to unconditionally include in API requests. By default, fields with
13432	// empty or default values are omitted from API requests. However, any
13433	// non-pointer, non-interface field appearing in ForceSendFields will be
13434	// sent to the server regardless of whether the field is empty or not.
13435	// This may be used to include empty fields in Patch requests.
13436	ForceSendFields []string `json:"-"`
13437
13438	// NullFields is a list of field names (e.g. "AdditionalKeyValues") to
13439	// include in API requests with the JSON null value. By default, fields
13440	// with empty values are omitted from API requests. However, any field
13441	// with an empty value appearing in NullFields will be sent to the
13442	// server as null. It is an error if a field in this list has a
13443	// non-empty value. This may be used to include null fields in Patch
13444	// requests.
13445	NullFields []string `json:"-"`
13446}
13447
13448func (s *TagSetting) MarshalJSON() ([]byte, error) {
13449	type NoMethod TagSetting
13450	raw := NoMethod(*s)
13451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13452}
13453
13454// TagSettings: Dynamic and Image Tag Settings.
13455type TagSettings struct {
13456	// DynamicTagEnabled: Whether dynamic floodlight tags are enabled.
13457	DynamicTagEnabled bool `json:"dynamicTagEnabled,omitempty"`
13458
13459	// ImageTagEnabled: Whether image tags are enabled.
13460	ImageTagEnabled bool `json:"imageTagEnabled,omitempty"`
13461
13462	// ForceSendFields is a list of field names (e.g. "DynamicTagEnabled")
13463	// to unconditionally include in API requests. By default, fields with
13464	// empty or default values are omitted from API requests. However, any
13465	// non-pointer, non-interface field appearing in ForceSendFields will be
13466	// sent to the server regardless of whether the field is empty or not.
13467	// This may be used to include empty fields in Patch requests.
13468	ForceSendFields []string `json:"-"`
13469
13470	// NullFields is a list of field names (e.g. "DynamicTagEnabled") to
13471	// include in API requests with the JSON null value. By default, fields
13472	// with empty values are omitted from API requests. However, any field
13473	// with an empty value appearing in NullFields will be sent to the
13474	// server as null. It is an error if a field in this list has a
13475	// non-empty value. This may be used to include null fields in Patch
13476	// requests.
13477	NullFields []string `json:"-"`
13478}
13479
13480func (s *TagSettings) MarshalJSON() ([]byte, error) {
13481	type NoMethod TagSettings
13482	raw := NoMethod(*s)
13483	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13484}
13485
13486// TargetWindow: Target Window.
13487type TargetWindow struct {
13488	// CustomHtml: User-entered value.
13489	CustomHtml string `json:"customHtml,omitempty"`
13490
13491	// TargetWindowOption: Type of browser window for which the backup image
13492	// of the flash creative can be displayed.
13493	//
13494	// Possible values:
13495	//   "NEW_WINDOW"
13496	//   "CURRENT_WINDOW"
13497	//   "CUSTOM"
13498	TargetWindowOption string `json:"targetWindowOption,omitempty"`
13499
13500	// ForceSendFields is a list of field names (e.g. "CustomHtml") to
13501	// unconditionally include in API requests. By default, fields with
13502	// empty or default values are omitted from API requests. However, any
13503	// non-pointer, non-interface field appearing in ForceSendFields will be
13504	// sent to the server regardless of whether the field is empty or not.
13505	// This may be used to include empty fields in Patch requests.
13506	ForceSendFields []string `json:"-"`
13507
13508	// NullFields is a list of field names (e.g. "CustomHtml") to include in
13509	// API requests with the JSON null value. By default, fields with empty
13510	// values are omitted from API requests. However, any field with an
13511	// empty value appearing in NullFields will be sent to the server as
13512	// null. It is an error if a field in this list has a non-empty value.
13513	// This may be used to include null fields in Patch requests.
13514	NullFields []string `json:"-"`
13515}
13516
13517func (s *TargetWindow) MarshalJSON() ([]byte, error) {
13518	type NoMethod TargetWindow
13519	raw := NoMethod(*s)
13520	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13521}
13522
13523// TargetableRemarketingList: Contains properties of a targetable
13524// remarketing list. Remarketing enables you to create lists of users
13525// who have performed specific actions on a site, then target ads to
13526// members of those lists. This resource is a read-only view of a
13527// remarketing list to be used to faciliate targeting ads to specific
13528// lists. Remarketing lists that are owned by your advertisers and those
13529// that are shared to your advertisers or account are accessible via
13530// this resource. To manage remarketing lists that are owned by your
13531// advertisers, use the RemarketingLists resource.
13532type TargetableRemarketingList struct {
13533	// AccountId: Account ID of this remarketing list. This is a read-only,
13534	// auto-generated field that is only returned in GET requests.
13535	AccountId int64 `json:"accountId,omitempty,string"`
13536
13537	// Active: Whether this targetable remarketing list is active.
13538	Active bool `json:"active,omitempty"`
13539
13540	// AdvertiserId: Dimension value for the advertiser ID that owns this
13541	// targetable remarketing list.
13542	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
13543
13544	// AdvertiserIdDimensionValue: Dimension value for the ID of the
13545	// advertiser.
13546	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
13547
13548	// Description: Targetable remarketing list description.
13549	Description string `json:"description,omitempty"`
13550
13551	// Id: Targetable remarketing list ID.
13552	Id int64 `json:"id,omitempty,string"`
13553
13554	// Kind: Identifies what kind of resource this is. Value: the fixed
13555	// string "dfareporting#targetableRemarketingList".
13556	Kind string `json:"kind,omitempty"`
13557
13558	// LifeSpan: Number of days that a user should remain in the targetable
13559	// remarketing list without an impression.
13560	LifeSpan int64 `json:"lifeSpan,omitempty,string"`
13561
13562	// ListSize: Number of users currently in the list. This is a read-only
13563	// field.
13564	ListSize int64 `json:"listSize,omitempty,string"`
13565
13566	// ListSource: Product from which this targetable remarketing list was
13567	// originated.
13568	//
13569	// Possible values:
13570	//   "REMARKETING_LIST_SOURCE_OTHER"
13571	//   "REMARKETING_LIST_SOURCE_ADX"
13572	//   "REMARKETING_LIST_SOURCE_DFP"
13573	//   "REMARKETING_LIST_SOURCE_XFP"
13574	//   "REMARKETING_LIST_SOURCE_DFA"
13575	//   "REMARKETING_LIST_SOURCE_GA"
13576	//   "REMARKETING_LIST_SOURCE_YOUTUBE"
13577	//   "REMARKETING_LIST_SOURCE_DBM"
13578	//   "REMARKETING_LIST_SOURCE_GPLUS"
13579	//   "REMARKETING_LIST_SOURCE_DMP"
13580	//   "REMARKETING_LIST_SOURCE_PLAY_STORE"
13581	ListSource string `json:"listSource,omitempty"`
13582
13583	// Name: Name of the targetable remarketing list. Is no greater than 128
13584	// characters long.
13585	Name string `json:"name,omitempty"`
13586
13587	// SubaccountId: Subaccount ID of this remarketing list. This is a
13588	// read-only, auto-generated field that is only returned in GET
13589	// requests.
13590	SubaccountId int64 `json:"subaccountId,omitempty,string"`
13591
13592	// ServerResponse contains the HTTP response code and headers from the
13593	// server.
13594	googleapi.ServerResponse `json:"-"`
13595
13596	// ForceSendFields is a list of field names (e.g. "AccountId") to
13597	// unconditionally include in API requests. By default, fields with
13598	// empty or default values are omitted from API requests. However, any
13599	// non-pointer, non-interface field appearing in ForceSendFields will be
13600	// sent to the server regardless of whether the field is empty or not.
13601	// This may be used to include empty fields in Patch requests.
13602	ForceSendFields []string `json:"-"`
13603
13604	// NullFields is a list of field names (e.g. "AccountId") to include in
13605	// API requests with the JSON null value. By default, fields with empty
13606	// values are omitted from API requests. However, any field with an
13607	// empty value appearing in NullFields will be sent to the server as
13608	// null. It is an error if a field in this list has a non-empty value.
13609	// This may be used to include null fields in Patch requests.
13610	NullFields []string `json:"-"`
13611}
13612
13613func (s *TargetableRemarketingList) MarshalJSON() ([]byte, error) {
13614	type NoMethod TargetableRemarketingList
13615	raw := NoMethod(*s)
13616	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13617}
13618
13619// TargetableRemarketingListsListResponse: Targetable remarketing list
13620// response
13621type TargetableRemarketingListsListResponse struct {
13622	// Kind: Identifies what kind of resource this is. Value: the fixed
13623	// string "dfareporting#targetableRemarketingListsListResponse".
13624	Kind string `json:"kind,omitempty"`
13625
13626	// NextPageToken: Pagination token to be used for the next list
13627	// operation.
13628	NextPageToken string `json:"nextPageToken,omitempty"`
13629
13630	// TargetableRemarketingLists: Targetable remarketing list collection.
13631	TargetableRemarketingLists []*TargetableRemarketingList `json:"targetableRemarketingLists,omitempty"`
13632
13633	// ServerResponse contains the HTTP response code and headers from the
13634	// server.
13635	googleapi.ServerResponse `json:"-"`
13636
13637	// ForceSendFields is a list of field names (e.g. "Kind") to
13638	// unconditionally include in API requests. By default, fields with
13639	// empty or default values are omitted from API requests. However, any
13640	// non-pointer, non-interface field appearing in ForceSendFields will be
13641	// sent to the server regardless of whether the field is empty or not.
13642	// This may be used to include empty fields in Patch requests.
13643	ForceSendFields []string `json:"-"`
13644
13645	// NullFields is a list of field names (e.g. "Kind") to include in API
13646	// requests with the JSON null value. By default, fields with empty
13647	// values are omitted from API requests. However, any field with an
13648	// empty value appearing in NullFields will be sent to the server as
13649	// null. It is an error if a field in this list has a non-empty value.
13650	// This may be used to include null fields in Patch requests.
13651	NullFields []string `json:"-"`
13652}
13653
13654func (s *TargetableRemarketingListsListResponse) MarshalJSON() ([]byte, error) {
13655	type NoMethod TargetableRemarketingListsListResponse
13656	raw := NoMethod(*s)
13657	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13658}
13659
13660// TargetingTemplate: Contains properties of a targeting template. A
13661// targeting template encapsulates targeting information which can be
13662// reused across multiple ads.
13663type TargetingTemplate struct {
13664	// AccountId: Account ID of this targeting template. This field, if left
13665	// unset, will be auto-generated on insert and is read-only after
13666	// insert.
13667	AccountId int64 `json:"accountId,omitempty,string"`
13668
13669	// AdvertiserId: Advertiser ID of this targeting template. This is a
13670	// required field on insert and is read-only after insert.
13671	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
13672
13673	// AdvertiserIdDimensionValue: Dimension value for the ID of the
13674	// advertiser. This is a read-only, auto-generated field.
13675	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
13676
13677	// DayPartTargeting: Time and day targeting criteria.
13678	DayPartTargeting *DayPartTargeting `json:"dayPartTargeting,omitempty"`
13679
13680	// GeoTargeting: Geographical targeting criteria.
13681	GeoTargeting *GeoTargeting `json:"geoTargeting,omitempty"`
13682
13683	// Id: ID of this targeting template. This is a read-only,
13684	// auto-generated field.
13685	Id int64 `json:"id,omitempty,string"`
13686
13687	// KeyValueTargetingExpression: Key-value targeting criteria.
13688	KeyValueTargetingExpression *KeyValueTargetingExpression `json:"keyValueTargetingExpression,omitempty"`
13689
13690	// Kind: Identifies what kind of resource this is. Value: the fixed
13691	// string "dfareporting#targetingTemplate".
13692	Kind string `json:"kind,omitempty"`
13693
13694	// LanguageTargeting: Language targeting criteria.
13695	LanguageTargeting *LanguageTargeting `json:"languageTargeting,omitempty"`
13696
13697	// ListTargetingExpression: Remarketing list targeting criteria.
13698	ListTargetingExpression *ListTargetingExpression `json:"listTargetingExpression,omitempty"`
13699
13700	// Name: Name of this targeting template. This field is required. It
13701	// must be less than 256 characters long and unique within an
13702	// advertiser.
13703	Name string `json:"name,omitempty"`
13704
13705	// SubaccountId: Subaccount ID of this targeting template. This field,
13706	// if left unset, will be auto-generated on insert and is read-only
13707	// after insert.
13708	SubaccountId int64 `json:"subaccountId,omitempty,string"`
13709
13710	// TechnologyTargeting: Technology platform targeting criteria.
13711	TechnologyTargeting *TechnologyTargeting `json:"technologyTargeting,omitempty"`
13712
13713	// ServerResponse contains the HTTP response code and headers from the
13714	// server.
13715	googleapi.ServerResponse `json:"-"`
13716
13717	// ForceSendFields is a list of field names (e.g. "AccountId") to
13718	// unconditionally include in API requests. By default, fields with
13719	// empty or default values are omitted from API requests. However, any
13720	// non-pointer, non-interface field appearing in ForceSendFields will be
13721	// sent to the server regardless of whether the field is empty or not.
13722	// This may be used to include empty fields in Patch requests.
13723	ForceSendFields []string `json:"-"`
13724
13725	// NullFields is a list of field names (e.g. "AccountId") to include in
13726	// API requests with the JSON null value. By default, fields with empty
13727	// values are omitted from API requests. However, any field with an
13728	// empty value appearing in NullFields will be sent to the server as
13729	// null. It is an error if a field in this list has a non-empty value.
13730	// This may be used to include null fields in Patch requests.
13731	NullFields []string `json:"-"`
13732}
13733
13734func (s *TargetingTemplate) MarshalJSON() ([]byte, error) {
13735	type NoMethod TargetingTemplate
13736	raw := NoMethod(*s)
13737	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13738}
13739
13740// TargetingTemplatesListResponse: Targeting Template List Response
13741type TargetingTemplatesListResponse struct {
13742	// Kind: Identifies what kind of resource this is. Value: the fixed
13743	// string "dfareporting#targetingTemplatesListResponse".
13744	Kind string `json:"kind,omitempty"`
13745
13746	// NextPageToken: Pagination token to be used for the next list
13747	// operation.
13748	NextPageToken string `json:"nextPageToken,omitempty"`
13749
13750	// TargetingTemplates: Targeting template collection.
13751	TargetingTemplates []*TargetingTemplate `json:"targetingTemplates,omitempty"`
13752
13753	// ServerResponse contains the HTTP response code and headers from the
13754	// server.
13755	googleapi.ServerResponse `json:"-"`
13756
13757	// ForceSendFields is a list of field names (e.g. "Kind") to
13758	// unconditionally include in API requests. By default, fields with
13759	// empty or default values are omitted from API requests. However, any
13760	// non-pointer, non-interface field appearing in ForceSendFields will be
13761	// sent to the server regardless of whether the field is empty or not.
13762	// This may be used to include empty fields in Patch requests.
13763	ForceSendFields []string `json:"-"`
13764
13765	// NullFields is a list of field names (e.g. "Kind") to include in API
13766	// requests with the JSON null value. By default, fields with empty
13767	// values are omitted from API requests. However, any field with an
13768	// empty value appearing in NullFields will be sent to the server as
13769	// null. It is an error if a field in this list has a non-empty value.
13770	// This may be used to include null fields in Patch requests.
13771	NullFields []string `json:"-"`
13772}
13773
13774func (s *TargetingTemplatesListResponse) MarshalJSON() ([]byte, error) {
13775	type NoMethod TargetingTemplatesListResponse
13776	raw := NoMethod(*s)
13777	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13778}
13779
13780// TechnologyTargeting: Technology Targeting.
13781type TechnologyTargeting struct {
13782	// Browsers: Browsers that this ad targets. For each browser either set
13783	// browserVersionId or dartId along with the version numbers. If both
13784	// are specified, only browserVersionId will be used. The other fields
13785	// are populated automatically when the ad is inserted or updated.
13786	Browsers []*Browser `json:"browsers,omitempty"`
13787
13788	// ConnectionTypes: Connection types that this ad targets. For each
13789	// connection type only id is required. The other fields are populated
13790	// automatically when the ad is inserted or updated.
13791	ConnectionTypes []*ConnectionType `json:"connectionTypes,omitempty"`
13792
13793	// MobileCarriers: Mobile carriers that this ad targets. For each mobile
13794	// carrier only id is required, and the other fields are populated
13795	// automatically when the ad is inserted or updated. If targeting a
13796	// mobile carrier, do not set targeting for any zip codes.
13797	MobileCarriers []*MobileCarrier `json:"mobileCarriers,omitempty"`
13798
13799	// OperatingSystemVersions: Operating system versions that this ad
13800	// targets. To target all versions, use operatingSystems. For each
13801	// operating system version, only id is required. The other fields are
13802	// populated automatically when the ad is inserted or updated. If
13803	// targeting an operating system version, do not set targeting for the
13804	// corresponding operating system in operatingSystems.
13805	OperatingSystemVersions []*OperatingSystemVersion `json:"operatingSystemVersions,omitempty"`
13806
13807	// OperatingSystems: Operating systems that this ad targets. To target
13808	// specific versions, use operatingSystemVersions. For each operating
13809	// system only dartId is required. The other fields are populated
13810	// automatically when the ad is inserted or updated. If targeting an
13811	// operating system, do not set targeting for operating system versions
13812	// for the same operating system.
13813	OperatingSystems []*OperatingSystem `json:"operatingSystems,omitempty"`
13814
13815	// PlatformTypes: Platform types that this ad targets. For example,
13816	// desktop, mobile, or tablet. For each platform type, only id is
13817	// required, and the other fields are populated automatically when the
13818	// ad is inserted or updated.
13819	PlatformTypes []*PlatformType `json:"platformTypes,omitempty"`
13820
13821	// ForceSendFields is a list of field names (e.g. "Browsers") to
13822	// unconditionally include in API requests. By default, fields with
13823	// empty or default values are omitted from API requests. However, any
13824	// non-pointer, non-interface field appearing in ForceSendFields will be
13825	// sent to the server regardless of whether the field is empty or not.
13826	// This may be used to include empty fields in Patch requests.
13827	ForceSendFields []string `json:"-"`
13828
13829	// NullFields is a list of field names (e.g. "Browsers") to include in
13830	// API requests with the JSON null value. By default, fields with empty
13831	// values are omitted from API requests. However, any field with an
13832	// empty value appearing in NullFields will be sent to the server as
13833	// null. It is an error if a field in this list has a non-empty value.
13834	// This may be used to include null fields in Patch requests.
13835	NullFields []string `json:"-"`
13836}
13837
13838func (s *TechnologyTargeting) MarshalJSON() ([]byte, error) {
13839	type NoMethod TechnologyTargeting
13840	raw := NoMethod(*s)
13841	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13842}
13843
13844// ThirdPartyAuthenticationToken: Third Party Authentication Token
13845type ThirdPartyAuthenticationToken struct {
13846	// Name: Name of the third-party authentication token.
13847	Name string `json:"name,omitempty"`
13848
13849	// Value: Value of the third-party authentication token. This is a
13850	// read-only, auto-generated field.
13851	Value string `json:"value,omitempty"`
13852
13853	// ForceSendFields is a list of field names (e.g. "Name") to
13854	// unconditionally include in API requests. By default, fields with
13855	// empty or default values are omitted from API requests. However, any
13856	// non-pointer, non-interface field appearing in ForceSendFields will be
13857	// sent to the server regardless of whether the field is empty or not.
13858	// This may be used to include empty fields in Patch requests.
13859	ForceSendFields []string `json:"-"`
13860
13861	// NullFields is a list of field names (e.g. "Name") to include in API
13862	// requests with the JSON null value. By default, fields with empty
13863	// values are omitted from API requests. However, any field with an
13864	// empty value appearing in NullFields will be sent to the server as
13865	// null. It is an error if a field in this list has a non-empty value.
13866	// This may be used to include null fields in Patch requests.
13867	NullFields []string `json:"-"`
13868}
13869
13870func (s *ThirdPartyAuthenticationToken) MarshalJSON() ([]byte, error) {
13871	type NoMethod ThirdPartyAuthenticationToken
13872	raw := NoMethod(*s)
13873	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13874}
13875
13876// ThirdPartyTrackingUrl: Third-party Tracking URL.
13877type ThirdPartyTrackingUrl struct {
13878	// ThirdPartyUrlType: Third-party URL type for in-stream video and
13879	// in-stream audio creatives.
13880	//
13881	// Possible values:
13882	//   "IMPRESSION"
13883	//   "CLICK_TRACKING"
13884	//   "VIDEO_START"
13885	//   "VIDEO_FIRST_QUARTILE"
13886	//   "VIDEO_MIDPOINT"
13887	//   "VIDEO_THIRD_QUARTILE"
13888	//   "VIDEO_COMPLETE"
13889	//   "VIDEO_MUTE"
13890	//   "VIDEO_PAUSE"
13891	//   "VIDEO_REWIND"
13892	//   "VIDEO_FULLSCREEN"
13893	//   "VIDEO_STOP"
13894	//   "VIDEO_CUSTOM"
13895	//   "SURVEY"
13896	//   "RICH_MEDIA_IMPRESSION"
13897	//   "RICH_MEDIA_RM_IMPRESSION"
13898	//   "RICH_MEDIA_BACKUP_IMPRESSION"
13899	//   "VIDEO_SKIP"
13900	//   "VIDEO_PROGRESS"
13901	ThirdPartyUrlType string `json:"thirdPartyUrlType,omitempty"`
13902
13903	// Url: URL for the specified third-party URL type.
13904	Url string `json:"url,omitempty"`
13905
13906	// ForceSendFields is a list of field names (e.g. "ThirdPartyUrlType")
13907	// to unconditionally include in API requests. By default, fields with
13908	// empty or default values are omitted from API requests. However, any
13909	// non-pointer, non-interface field appearing in ForceSendFields will be
13910	// sent to the server regardless of whether the field is empty or not.
13911	// This may be used to include empty fields in Patch requests.
13912	ForceSendFields []string `json:"-"`
13913
13914	// NullFields is a list of field names (e.g. "ThirdPartyUrlType") to
13915	// include in API requests with the JSON null value. By default, fields
13916	// with empty values are omitted from API requests. However, any field
13917	// with an empty value appearing in NullFields will be sent to the
13918	// server as null. It is an error if a field in this list has a
13919	// non-empty value. This may be used to include null fields in Patch
13920	// requests.
13921	NullFields []string `json:"-"`
13922}
13923
13924func (s *ThirdPartyTrackingUrl) MarshalJSON() ([]byte, error) {
13925	type NoMethod ThirdPartyTrackingUrl
13926	raw := NoMethod(*s)
13927	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13928}
13929
13930// TranscodeSetting: Transcode Settings
13931type TranscodeSetting struct {
13932	// EnabledVideoFormats: Allowlist of video formats to be served to this
13933	// placement. Set this list to null or empty to serve all video formats.
13934	EnabledVideoFormats []int64 `json:"enabledVideoFormats,omitempty"`
13935
13936	// Kind: Identifies what kind of resource this is. Value: the fixed
13937	// string "dfareporting#transcodeSetting".
13938	Kind string `json:"kind,omitempty"`
13939
13940	// ForceSendFields is a list of field names (e.g. "EnabledVideoFormats")
13941	// to unconditionally include in API requests. By default, fields with
13942	// empty or default values are omitted from API requests. However, any
13943	// non-pointer, non-interface field appearing in ForceSendFields will be
13944	// sent to the server regardless of whether the field is empty or not.
13945	// This may be used to include empty fields in Patch requests.
13946	ForceSendFields []string `json:"-"`
13947
13948	// NullFields is a list of field names (e.g. "EnabledVideoFormats") to
13949	// include in API requests with the JSON null value. By default, fields
13950	// with empty values are omitted from API requests. However, any field
13951	// with an empty value appearing in NullFields will be sent to the
13952	// server as null. It is an error if a field in this list has a
13953	// non-empty value. This may be used to include null fields in Patch
13954	// requests.
13955	NullFields []string `json:"-"`
13956}
13957
13958func (s *TranscodeSetting) MarshalJSON() ([]byte, error) {
13959	type NoMethod TranscodeSetting
13960	raw := NoMethod(*s)
13961	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13962}
13963
13964// UniversalAdId: A Universal Ad ID as per the VAST 4.0 spec. Applicable
13965// to the following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO and
13966// VPAID.
13967type UniversalAdId struct {
13968	// Registry: Registry used for the Ad ID value.
13969	//
13970	// Possible values:
13971	//   "OTHER"
13972	//   "AD_ID_OFFICIAL"
13973	//   "CLEARCAST"
13974	//   "DCM"
13975	Registry string `json:"registry,omitempty"`
13976
13977	// Value: ID value for this creative. Only alphanumeric characters and
13978	// the following symbols are valid: "_/\-". Maximum length is 64
13979	// characters. Read only when registry is DCM.
13980	Value string `json:"value,omitempty"`
13981
13982	// ForceSendFields is a list of field names (e.g. "Registry") to
13983	// unconditionally include in API requests. By default, fields with
13984	// empty or default values are omitted from API requests. However, any
13985	// non-pointer, non-interface field appearing in ForceSendFields will be
13986	// sent to the server regardless of whether the field is empty or not.
13987	// This may be used to include empty fields in Patch requests.
13988	ForceSendFields []string `json:"-"`
13989
13990	// NullFields is a list of field names (e.g. "Registry") to include in
13991	// API requests with the JSON null value. By default, fields with empty
13992	// values are omitted from API requests. However, any field with an
13993	// empty value appearing in NullFields will be sent to the server as
13994	// null. It is an error if a field in this list has a non-empty value.
13995	// This may be used to include null fields in Patch requests.
13996	NullFields []string `json:"-"`
13997}
13998
13999func (s *UniversalAdId) MarshalJSON() ([]byte, error) {
14000	type NoMethod UniversalAdId
14001	raw := NoMethod(*s)
14002	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14003}
14004
14005// UserDefinedVariableConfiguration: User Defined Variable
14006// configuration.
14007type UserDefinedVariableConfiguration struct {
14008	// DataType: Data type for the variable. This is a required field.
14009	//
14010	// Possible values:
14011	//   "STRING"
14012	//   "NUMBER"
14013	DataType string `json:"dataType,omitempty"`
14014
14015	// ReportName: User-friendly name for the variable which will appear in
14016	// reports. This is a required field, must be less than 64 characters
14017	// long, and cannot contain the following characters: ""<>".
14018	ReportName string `json:"reportName,omitempty"`
14019
14020	// VariableType: Variable name in the tag. This is a required field.
14021	//
14022	// Possible values:
14023	//   "U1"
14024	//   "U2"
14025	//   "U3"
14026	//   "U4"
14027	//   "U5"
14028	//   "U6"
14029	//   "U7"
14030	//   "U8"
14031	//   "U9"
14032	//   "U10"
14033	//   "U11"
14034	//   "U12"
14035	//   "U13"
14036	//   "U14"
14037	//   "U15"
14038	//   "U16"
14039	//   "U17"
14040	//   "U18"
14041	//   "U19"
14042	//   "U20"
14043	//   "U21"
14044	//   "U22"
14045	//   "U23"
14046	//   "U24"
14047	//   "U25"
14048	//   "U26"
14049	//   "U27"
14050	//   "U28"
14051	//   "U29"
14052	//   "U30"
14053	//   "U31"
14054	//   "U32"
14055	//   "U33"
14056	//   "U34"
14057	//   "U35"
14058	//   "U36"
14059	//   "U37"
14060	//   "U38"
14061	//   "U39"
14062	//   "U40"
14063	//   "U41"
14064	//   "U42"
14065	//   "U43"
14066	//   "U44"
14067	//   "U45"
14068	//   "U46"
14069	//   "U47"
14070	//   "U48"
14071	//   "U49"
14072	//   "U50"
14073	//   "U51"
14074	//   "U52"
14075	//   "U53"
14076	//   "U54"
14077	//   "U55"
14078	//   "U56"
14079	//   "U57"
14080	//   "U58"
14081	//   "U59"
14082	//   "U60"
14083	//   "U61"
14084	//   "U62"
14085	//   "U63"
14086	//   "U64"
14087	//   "U65"
14088	//   "U66"
14089	//   "U67"
14090	//   "U68"
14091	//   "U69"
14092	//   "U70"
14093	//   "U71"
14094	//   "U72"
14095	//   "U73"
14096	//   "U74"
14097	//   "U75"
14098	//   "U76"
14099	//   "U77"
14100	//   "U78"
14101	//   "U79"
14102	//   "U80"
14103	//   "U81"
14104	//   "U82"
14105	//   "U83"
14106	//   "U84"
14107	//   "U85"
14108	//   "U86"
14109	//   "U87"
14110	//   "U88"
14111	//   "U89"
14112	//   "U90"
14113	//   "U91"
14114	//   "U92"
14115	//   "U93"
14116	//   "U94"
14117	//   "U95"
14118	//   "U96"
14119	//   "U97"
14120	//   "U98"
14121	//   "U99"
14122	//   "U100"
14123	VariableType string `json:"variableType,omitempty"`
14124
14125	// ForceSendFields is a list of field names (e.g. "DataType") to
14126	// unconditionally include in API requests. By default, fields with
14127	// empty or default values are omitted from API requests. However, any
14128	// non-pointer, non-interface field appearing in ForceSendFields will be
14129	// sent to the server regardless of whether the field is empty or not.
14130	// This may be used to include empty fields in Patch requests.
14131	ForceSendFields []string `json:"-"`
14132
14133	// NullFields is a list of field names (e.g. "DataType") to include in
14134	// API requests with the JSON null value. By default, fields with empty
14135	// values are omitted from API requests. However, any field with an
14136	// empty value appearing in NullFields will be sent to the server as
14137	// null. It is an error if a field in this list has a non-empty value.
14138	// This may be used to include null fields in Patch requests.
14139	NullFields []string `json:"-"`
14140}
14141
14142func (s *UserDefinedVariableConfiguration) MarshalJSON() ([]byte, error) {
14143	type NoMethod UserDefinedVariableConfiguration
14144	raw := NoMethod(*s)
14145	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14146}
14147
14148// UserProfile: A UserProfile resource lets you list all DFA user
14149// profiles that are associated with a Google user account. The
14150// profile_id needs to be specified in other API requests.
14151type UserProfile struct {
14152	// AccountId: The account ID to which this profile belongs.
14153	AccountId int64 `json:"accountId,omitempty,string"`
14154
14155	// AccountName: The account name this profile belongs to.
14156	AccountName string `json:"accountName,omitempty"`
14157
14158	// Etag: Etag of this resource.
14159	Etag string `json:"etag,omitempty"`
14160
14161	// Kind: Identifies what kind of resource this is. Value: the fixed
14162	// string "dfareporting#userProfile".
14163	Kind string `json:"kind,omitempty"`
14164
14165	// ProfileId: The unique ID of the user profile.
14166	ProfileId int64 `json:"profileId,omitempty,string"`
14167
14168	// SubAccountId: The sub account ID this profile belongs to if
14169	// applicable.
14170	SubAccountId int64 `json:"subAccountId,omitempty,string"`
14171
14172	// SubAccountName: The sub account name this profile belongs to if
14173	// applicable.
14174	SubAccountName string `json:"subAccountName,omitempty"`
14175
14176	// UserName: The user name.
14177	UserName string `json:"userName,omitempty"`
14178
14179	// ServerResponse contains the HTTP response code and headers from the
14180	// server.
14181	googleapi.ServerResponse `json:"-"`
14182
14183	// ForceSendFields is a list of field names (e.g. "AccountId") to
14184	// unconditionally include in API requests. By default, fields with
14185	// empty or default values are omitted from API requests. However, any
14186	// non-pointer, non-interface field appearing in ForceSendFields will be
14187	// sent to the server regardless of whether the field is empty or not.
14188	// This may be used to include empty fields in Patch requests.
14189	ForceSendFields []string `json:"-"`
14190
14191	// NullFields is a list of field names (e.g. "AccountId") to include in
14192	// API requests with the JSON null value. By default, fields with empty
14193	// values are omitted from API requests. However, any field with an
14194	// empty value appearing in NullFields will be sent to the server as
14195	// null. It is an error if a field in this list has a non-empty value.
14196	// This may be used to include null fields in Patch requests.
14197	NullFields []string `json:"-"`
14198}
14199
14200func (s *UserProfile) MarshalJSON() ([]byte, error) {
14201	type NoMethod UserProfile
14202	raw := NoMethod(*s)
14203	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14204}
14205
14206// UserProfileList: Represents the list of user profiles.
14207type UserProfileList struct {
14208	// Etag: Etag of this resource.
14209	Etag string `json:"etag,omitempty"`
14210
14211	// Items: The user profiles returned in this response.
14212	Items []*UserProfile `json:"items,omitempty"`
14213
14214	// Kind: Identifies what kind of resource this is. Value: the fixed
14215	// string "dfareporting#userProfileList".
14216	Kind string `json:"kind,omitempty"`
14217
14218	// ServerResponse contains the HTTP response code and headers from the
14219	// server.
14220	googleapi.ServerResponse `json:"-"`
14221
14222	// ForceSendFields is a list of field names (e.g. "Etag") to
14223	// unconditionally include in API requests. By default, fields with
14224	// empty or default values are omitted from API requests. However, any
14225	// non-pointer, non-interface field appearing in ForceSendFields will be
14226	// sent to the server regardless of whether the field is empty or not.
14227	// This may be used to include empty fields in Patch requests.
14228	ForceSendFields []string `json:"-"`
14229
14230	// NullFields is a list of field names (e.g. "Etag") to include in API
14231	// requests with the JSON null value. By default, fields with empty
14232	// values are omitted from API requests. However, any field with an
14233	// empty value appearing in NullFields will be sent to the server as
14234	// null. It is an error if a field in this list has a non-empty value.
14235	// This may be used to include null fields in Patch requests.
14236	NullFields []string `json:"-"`
14237}
14238
14239func (s *UserProfileList) MarshalJSON() ([]byte, error) {
14240	type NoMethod UserProfileList
14241	raw := NoMethod(*s)
14242	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14243}
14244
14245// UserRole: Contains properties of auser role, which is used to manage
14246// user access.
14247type UserRole struct {
14248	// AccountId: Account ID of this user role. This is a read-only field
14249	// that can be left blank.
14250	AccountId int64 `json:"accountId,omitempty,string"`
14251
14252	// DefaultUserRole: Whether this is a default user role. Default user
14253	// roles are created by the system for the account/subaccount and cannot
14254	// be modified or deleted. Each default user role comes with a basic set
14255	// of preassigned permissions.
14256	DefaultUserRole bool `json:"defaultUserRole,omitempty"`
14257
14258	// Id: ID of this user role. This is a read-only, auto-generated field.
14259	Id int64 `json:"id,omitempty,string"`
14260
14261	// Kind: Identifies what kind of resource this is. Value: the fixed
14262	// string "dfareporting#userRole".
14263	Kind string `json:"kind,omitempty"`
14264
14265	// Name: Name of this user role. This is a required field. Must be less
14266	// than 256 characters long. If this user role is under a subaccount,
14267	// the name must be unique among sites of the same subaccount.
14268	// Otherwise, this user role is a top-level user role, and the name must
14269	// be unique among top-level user roles of the same account.
14270	Name string `json:"name,omitempty"`
14271
14272	// ParentUserRoleId: ID of the user role that this user role is based on
14273	// or copied from. This is a required field.
14274	ParentUserRoleId int64 `json:"parentUserRoleId,omitempty,string"`
14275
14276	// Permissions: List of permissions associated with this user role.
14277	Permissions []*UserRolePermission `json:"permissions,omitempty"`
14278
14279	// SubaccountId: Subaccount ID of this user role. This is a read-only
14280	// field that can be left blank.
14281	SubaccountId int64 `json:"subaccountId,omitempty,string"`
14282
14283	// ServerResponse contains the HTTP response code and headers from the
14284	// server.
14285	googleapi.ServerResponse `json:"-"`
14286
14287	// ForceSendFields is a list of field names (e.g. "AccountId") to
14288	// unconditionally include in API requests. By default, fields with
14289	// empty or default values are omitted from API requests. However, any
14290	// non-pointer, non-interface field appearing in ForceSendFields will be
14291	// sent to the server regardless of whether the field is empty or not.
14292	// This may be used to include empty fields in Patch requests.
14293	ForceSendFields []string `json:"-"`
14294
14295	// NullFields is a list of field names (e.g. "AccountId") to include in
14296	// API requests with the JSON null value. By default, fields with empty
14297	// values are omitted from API requests. However, any field with an
14298	// empty value appearing in NullFields will be sent to the server as
14299	// null. It is an error if a field in this list has a non-empty value.
14300	// This may be used to include null fields in Patch requests.
14301	NullFields []string `json:"-"`
14302}
14303
14304func (s *UserRole) MarshalJSON() ([]byte, error) {
14305	type NoMethod UserRole
14306	raw := NoMethod(*s)
14307	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14308}
14309
14310// UserRolePermission: Contains properties of a user role permission.
14311type UserRolePermission struct {
14312	// Availability: Levels of availability for a user role permission.
14313	//
14314	// Possible values:
14315	//   "NOT_AVAILABLE_BY_DEFAULT"
14316	//   "ACCOUNT_BY_DEFAULT"
14317	//   "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT"
14318	//   "ACCOUNT_ALWAYS"
14319	//   "SUBACCOUNT_AND_ACCOUNT_ALWAYS"
14320	//   "USER_PROFILE_ONLY"
14321	Availability string `json:"availability,omitempty"`
14322
14323	// Id: ID of this user role permission.
14324	Id int64 `json:"id,omitempty,string"`
14325
14326	// Kind: Identifies what kind of resource this is. Value: the fixed
14327	// string "dfareporting#userRolePermission".
14328	Kind string `json:"kind,omitempty"`
14329
14330	// Name: Name of this user role permission.
14331	Name string `json:"name,omitempty"`
14332
14333	// PermissionGroupId: ID of the permission group that this user role
14334	// permission belongs to.
14335	PermissionGroupId int64 `json:"permissionGroupId,omitempty,string"`
14336
14337	// ServerResponse contains the HTTP response code and headers from the
14338	// server.
14339	googleapi.ServerResponse `json:"-"`
14340
14341	// ForceSendFields is a list of field names (e.g. "Availability") to
14342	// unconditionally include in API requests. By default, fields with
14343	// empty or default values are omitted from API requests. However, any
14344	// non-pointer, non-interface field appearing in ForceSendFields will be
14345	// sent to the server regardless of whether the field is empty or not.
14346	// This may be used to include empty fields in Patch requests.
14347	ForceSendFields []string `json:"-"`
14348
14349	// NullFields is a list of field names (e.g. "Availability") to include
14350	// in API requests with the JSON null value. By default, fields with
14351	// empty values are omitted from API requests. However, any field with
14352	// an empty value appearing in NullFields will be sent to the server as
14353	// null. It is an error if a field in this list has a non-empty value.
14354	// This may be used to include null fields in Patch requests.
14355	NullFields []string `json:"-"`
14356}
14357
14358func (s *UserRolePermission) MarshalJSON() ([]byte, error) {
14359	type NoMethod UserRolePermission
14360	raw := NoMethod(*s)
14361	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14362}
14363
14364// UserRolePermissionGroup: Represents a grouping of related user role
14365// permissions.
14366type UserRolePermissionGroup struct {
14367	// Id: ID of this user role permission.
14368	Id int64 `json:"id,omitempty,string"`
14369
14370	// Kind: Identifies what kind of resource this is. Value: the fixed
14371	// string "dfareporting#userRolePermissionGroup".
14372	Kind string `json:"kind,omitempty"`
14373
14374	// Name: Name of this user role permission group.
14375	Name string `json:"name,omitempty"`
14376
14377	// ServerResponse contains the HTTP response code and headers from the
14378	// server.
14379	googleapi.ServerResponse `json:"-"`
14380
14381	// ForceSendFields is a list of field names (e.g. "Id") to
14382	// unconditionally include in API requests. By default, fields with
14383	// empty or default values are omitted from API requests. However, any
14384	// non-pointer, non-interface field appearing in ForceSendFields will be
14385	// sent to the server regardless of whether the field is empty or not.
14386	// This may be used to include empty fields in Patch requests.
14387	ForceSendFields []string `json:"-"`
14388
14389	// NullFields is a list of field names (e.g. "Id") to include in API
14390	// requests with the JSON null value. By default, fields with empty
14391	// values are omitted from API requests. However, any field with an
14392	// empty value appearing in NullFields will be sent to the server as
14393	// null. It is an error if a field in this list has a non-empty value.
14394	// This may be used to include null fields in Patch requests.
14395	NullFields []string `json:"-"`
14396}
14397
14398func (s *UserRolePermissionGroup) MarshalJSON() ([]byte, error) {
14399	type NoMethod UserRolePermissionGroup
14400	raw := NoMethod(*s)
14401	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14402}
14403
14404// UserRolePermissionGroupsListResponse: User Role Permission Group List
14405// Response
14406type UserRolePermissionGroupsListResponse struct {
14407	// Kind: Identifies what kind of resource this is. Value: the fixed
14408	// string "dfareporting#userRolePermissionGroupsListResponse".
14409	Kind string `json:"kind,omitempty"`
14410
14411	// UserRolePermissionGroups: User role permission group collection.
14412	UserRolePermissionGroups []*UserRolePermissionGroup `json:"userRolePermissionGroups,omitempty"`
14413
14414	// ServerResponse contains the HTTP response code and headers from the
14415	// server.
14416	googleapi.ServerResponse `json:"-"`
14417
14418	// ForceSendFields is a list of field names (e.g. "Kind") to
14419	// unconditionally include in API requests. By default, fields with
14420	// empty or default values are omitted from API requests. However, any
14421	// non-pointer, non-interface field appearing in ForceSendFields will be
14422	// sent to the server regardless of whether the field is empty or not.
14423	// This may be used to include empty fields in Patch requests.
14424	ForceSendFields []string `json:"-"`
14425
14426	// NullFields is a list of field names (e.g. "Kind") to include in API
14427	// requests with the JSON null value. By default, fields with empty
14428	// values are omitted from API requests. However, any field with an
14429	// empty value appearing in NullFields will be sent to the server as
14430	// null. It is an error if a field in this list has a non-empty value.
14431	// This may be used to include null fields in Patch requests.
14432	NullFields []string `json:"-"`
14433}
14434
14435func (s *UserRolePermissionGroupsListResponse) MarshalJSON() ([]byte, error) {
14436	type NoMethod UserRolePermissionGroupsListResponse
14437	raw := NoMethod(*s)
14438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14439}
14440
14441// UserRolePermissionsListResponse: User Role Permission List Response
14442type UserRolePermissionsListResponse struct {
14443	// Kind: Identifies what kind of resource this is. Value: the fixed
14444	// string "dfareporting#userRolePermissionsListResponse".
14445	Kind string `json:"kind,omitempty"`
14446
14447	// UserRolePermissions: User role permission collection.
14448	UserRolePermissions []*UserRolePermission `json:"userRolePermissions,omitempty"`
14449
14450	// ServerResponse contains the HTTP response code and headers from the
14451	// server.
14452	googleapi.ServerResponse `json:"-"`
14453
14454	// ForceSendFields is a list of field names (e.g. "Kind") to
14455	// unconditionally include in API requests. By default, fields with
14456	// empty or default values are omitted from API requests. However, any
14457	// non-pointer, non-interface field appearing in ForceSendFields will be
14458	// sent to the server regardless of whether the field is empty or not.
14459	// This may be used to include empty fields in Patch requests.
14460	ForceSendFields []string `json:"-"`
14461
14462	// NullFields is a list of field names (e.g. "Kind") to include in API
14463	// requests with the JSON null value. By default, fields with empty
14464	// values are omitted from API requests. However, any field with an
14465	// empty value appearing in NullFields will be sent to the server as
14466	// null. It is an error if a field in this list has a non-empty value.
14467	// This may be used to include null fields in Patch requests.
14468	NullFields []string `json:"-"`
14469}
14470
14471func (s *UserRolePermissionsListResponse) MarshalJSON() ([]byte, error) {
14472	type NoMethod UserRolePermissionsListResponse
14473	raw := NoMethod(*s)
14474	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14475}
14476
14477// UserRolesListResponse: User Role List Response
14478type UserRolesListResponse struct {
14479	// Kind: Identifies what kind of resource this is. Value: the fixed
14480	// string "dfareporting#userRolesListResponse".
14481	Kind string `json:"kind,omitempty"`
14482
14483	// NextPageToken: Pagination token to be used for the next list
14484	// operation.
14485	NextPageToken string `json:"nextPageToken,omitempty"`
14486
14487	// UserRoles: User role collection.
14488	UserRoles []*UserRole `json:"userRoles,omitempty"`
14489
14490	// ServerResponse contains the HTTP response code and headers from the
14491	// server.
14492	googleapi.ServerResponse `json:"-"`
14493
14494	// ForceSendFields is a list of field names (e.g. "Kind") to
14495	// unconditionally include in API requests. By default, fields with
14496	// empty or default values are omitted from API requests. However, any
14497	// non-pointer, non-interface field appearing in ForceSendFields will be
14498	// sent to the server regardless of whether the field is empty or not.
14499	// This may be used to include empty fields in Patch requests.
14500	ForceSendFields []string `json:"-"`
14501
14502	// NullFields is a list of field names (e.g. "Kind") to include in API
14503	// requests with the JSON null value. By default, fields with empty
14504	// values are omitted from API requests. However, any field with an
14505	// empty value appearing in NullFields will be sent to the server as
14506	// null. It is an error if a field in this list has a non-empty value.
14507	// This may be used to include null fields in Patch requests.
14508	NullFields []string `json:"-"`
14509}
14510
14511func (s *UserRolesListResponse) MarshalJSON() ([]byte, error) {
14512	type NoMethod UserRolesListResponse
14513	raw := NoMethod(*s)
14514	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14515}
14516
14517// VideoFormat: Contains information about supported video formats.
14518type VideoFormat struct {
14519	// FileType: File type of the video format.
14520	//
14521	// Possible values:
14522	//   "FLV"
14523	//   "THREEGPP"
14524	//   "MP4"
14525	//   "WEBM"
14526	//   "M3U8"
14527	FileType string `json:"fileType,omitempty"`
14528
14529	// Id: ID of the video format.
14530	Id int64 `json:"id,omitempty"`
14531
14532	// Kind: Identifies what kind of resource this is. Value: the fixed
14533	// string "dfareporting#videoFormat".
14534	Kind string `json:"kind,omitempty"`
14535
14536	// Resolution: The resolution of this video format.
14537	Resolution *Size `json:"resolution,omitempty"`
14538
14539	// TargetBitRate: The target bit rate of this video format.
14540	TargetBitRate int64 `json:"targetBitRate,omitempty"`
14541
14542	// ServerResponse contains the HTTP response code and headers from the
14543	// server.
14544	googleapi.ServerResponse `json:"-"`
14545
14546	// ForceSendFields is a list of field names (e.g. "FileType") to
14547	// unconditionally include in API requests. By default, fields with
14548	// empty or default values are omitted from API requests. However, any
14549	// non-pointer, non-interface field appearing in ForceSendFields will be
14550	// sent to the server regardless of whether the field is empty or not.
14551	// This may be used to include empty fields in Patch requests.
14552	ForceSendFields []string `json:"-"`
14553
14554	// NullFields is a list of field names (e.g. "FileType") to include in
14555	// API requests with the JSON null value. By default, fields with empty
14556	// values are omitted from API requests. However, any field with an
14557	// empty value appearing in NullFields will be sent to the server as
14558	// null. It is an error if a field in this list has a non-empty value.
14559	// This may be used to include null fields in Patch requests.
14560	NullFields []string `json:"-"`
14561}
14562
14563func (s *VideoFormat) MarshalJSON() ([]byte, error) {
14564	type NoMethod VideoFormat
14565	raw := NoMethod(*s)
14566	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14567}
14568
14569// VideoFormatsListResponse: Video Format List Response
14570type VideoFormatsListResponse struct {
14571	// Kind: Identifies what kind of resource this is. Value: the fixed
14572	// string "dfareporting#videoFormatsListResponse".
14573	Kind string `json:"kind,omitempty"`
14574
14575	// VideoFormats: Video format collection.
14576	VideoFormats []*VideoFormat `json:"videoFormats,omitempty"`
14577
14578	// ServerResponse contains the HTTP response code and headers from the
14579	// server.
14580	googleapi.ServerResponse `json:"-"`
14581
14582	// ForceSendFields is a list of field names (e.g. "Kind") to
14583	// unconditionally include in API requests. By default, fields with
14584	// empty or default values are omitted from API requests. However, any
14585	// non-pointer, non-interface field appearing in ForceSendFields will be
14586	// sent to the server regardless of whether the field is empty or not.
14587	// This may be used to include empty fields in Patch requests.
14588	ForceSendFields []string `json:"-"`
14589
14590	// NullFields is a list of field names (e.g. "Kind") to include in API
14591	// requests with the JSON null value. By default, fields with empty
14592	// values are omitted from API requests. However, any field with an
14593	// empty value appearing in NullFields will be sent to the server as
14594	// null. It is an error if a field in this list has a non-empty value.
14595	// This may be used to include null fields in Patch requests.
14596	NullFields []string `json:"-"`
14597}
14598
14599func (s *VideoFormatsListResponse) MarshalJSON() ([]byte, error) {
14600	type NoMethod VideoFormatsListResponse
14601	raw := NoMethod(*s)
14602	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14603}
14604
14605// VideoOffset: Video Offset
14606type VideoOffset struct {
14607	// OffsetPercentage: Duration, as a percentage of video duration. Do not
14608	// set when offsetSeconds is set. Acceptable values are 0 to 100,
14609	// inclusive.
14610	OffsetPercentage int64 `json:"offsetPercentage,omitempty"`
14611
14612	// OffsetSeconds: Duration, in seconds. Do not set when offsetPercentage
14613	// is set. Acceptable values are 0 to 86399, inclusive.
14614	OffsetSeconds int64 `json:"offsetSeconds,omitempty"`
14615
14616	// ForceSendFields is a list of field names (e.g. "OffsetPercentage") to
14617	// unconditionally include in API requests. By default, fields with
14618	// empty or default values are omitted from API requests. However, any
14619	// non-pointer, non-interface field appearing in ForceSendFields will be
14620	// sent to the server regardless of whether the field is empty or not.
14621	// This may be used to include empty fields in Patch requests.
14622	ForceSendFields []string `json:"-"`
14623
14624	// NullFields is a list of field names (e.g. "OffsetPercentage") to
14625	// include in API requests with the JSON null value. By default, fields
14626	// with empty values are omitted from API requests. However, any field
14627	// with an empty value appearing in NullFields will be sent to the
14628	// server as null. It is an error if a field in this list has a
14629	// non-empty value. This may be used to include null fields in Patch
14630	// requests.
14631	NullFields []string `json:"-"`
14632}
14633
14634func (s *VideoOffset) MarshalJSON() ([]byte, error) {
14635	type NoMethod VideoOffset
14636	raw := NoMethod(*s)
14637	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14638}
14639
14640// VideoSettings: Video Settings
14641type VideoSettings struct {
14642	// CompanionSettings: Settings for the companion creatives of video
14643	// creatives served to this placement.
14644	CompanionSettings *CompanionSetting `json:"companionSettings,omitempty"`
14645
14646	// DurationSeconds: Duration of a video placement in seconds.
14647	DurationSeconds int64 `json:"durationSeconds,omitempty"`
14648
14649	// Kind: Identifies what kind of resource this is. Value: the fixed
14650	// string "dfareporting#videoSettings".
14651	Kind string `json:"kind,omitempty"`
14652
14653	// ObaEnabled: Whether OBA icons are enabled for this placement.
14654	ObaEnabled bool `json:"obaEnabled,omitempty"`
14655
14656	// ObaSettings: Settings for the OBA icon of video creatives served to
14657	// this placement. If this object is provided, the creative-level OBA
14658	// settings will be overridden.
14659	ObaSettings *ObaIcon `json:"obaSettings,omitempty"`
14660
14661	// Orientation: Orientation of a video placement. If this value is set,
14662	// placement will return assets matching the specified orientation.
14663	//
14664	// Possible values:
14665	//   "ANY"
14666	//   "LANDSCAPE"
14667	//   "PORTRAIT"
14668	Orientation string `json:"orientation,omitempty"`
14669
14670	// SkippableSettings: Settings for the skippability of video creatives
14671	// served to this placement. If this object is provided, the
14672	// creative-level skippable settings will be overridden.
14673	SkippableSettings *SkippableSetting `json:"skippableSettings,omitempty"`
14674
14675	// TranscodeSettings: Settings for the transcodes of video creatives
14676	// served to this placement. If this object is provided, the
14677	// creative-level transcode settings will be overridden.
14678	TranscodeSettings *TranscodeSetting `json:"transcodeSettings,omitempty"`
14679
14680	// ForceSendFields is a list of field names (e.g. "CompanionSettings")
14681	// to unconditionally include in API requests. By default, fields with
14682	// empty or default values are omitted from API requests. However, any
14683	// non-pointer, non-interface field appearing in ForceSendFields will be
14684	// sent to the server regardless of whether the field is empty or not.
14685	// This may be used to include empty fields in Patch requests.
14686	ForceSendFields []string `json:"-"`
14687
14688	// NullFields is a list of field names (e.g. "CompanionSettings") to
14689	// include in API requests with the JSON null value. By default, fields
14690	// with empty values are omitted from API requests. However, any field
14691	// with an empty value appearing in NullFields will be sent to the
14692	// server as null. It is an error if a field in this list has a
14693	// non-empty value. This may be used to include null fields in Patch
14694	// requests.
14695	NullFields []string `json:"-"`
14696}
14697
14698func (s *VideoSettings) MarshalJSON() ([]byte, error) {
14699	type NoMethod VideoSettings
14700	raw := NoMethod(*s)
14701	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14702}
14703
14704// method id "dfareporting.accountActiveAdSummaries.get":
14705
14706type AccountActiveAdSummariesGetCall struct {
14707	s                *Service
14708	profileId        int64
14709	summaryAccountId int64
14710	urlParams_       gensupport.URLParams
14711	ifNoneMatch_     string
14712	ctx_             context.Context
14713	header_          http.Header
14714}
14715
14716// Get: Gets the account's active ad summary by account ID.
14717//
14718// - profileId: User profile ID associated with this request.
14719// - summaryAccountId: Account ID.
14720func (r *AccountActiveAdSummariesService) Get(profileId int64, summaryAccountId int64) *AccountActiveAdSummariesGetCall {
14721	c := &AccountActiveAdSummariesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14722	c.profileId = profileId
14723	c.summaryAccountId = summaryAccountId
14724	return c
14725}
14726
14727// Fields allows partial responses to be retrieved. See
14728// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14729// for more information.
14730func (c *AccountActiveAdSummariesGetCall) Fields(s ...googleapi.Field) *AccountActiveAdSummariesGetCall {
14731	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14732	return c
14733}
14734
14735// IfNoneMatch sets the optional parameter which makes the operation
14736// fail if the object's ETag matches the given value. This is useful for
14737// getting updates only after the object has changed since the last
14738// request. Use googleapi.IsNotModified to check whether the response
14739// error from Do is the result of In-None-Match.
14740func (c *AccountActiveAdSummariesGetCall) IfNoneMatch(entityTag string) *AccountActiveAdSummariesGetCall {
14741	c.ifNoneMatch_ = entityTag
14742	return c
14743}
14744
14745// Context sets the context to be used in this call's Do method. Any
14746// pending HTTP request will be aborted if the provided context is
14747// canceled.
14748func (c *AccountActiveAdSummariesGetCall) Context(ctx context.Context) *AccountActiveAdSummariesGetCall {
14749	c.ctx_ = ctx
14750	return c
14751}
14752
14753// Header returns an http.Header that can be modified by the caller to
14754// add HTTP headers to the request.
14755func (c *AccountActiveAdSummariesGetCall) Header() http.Header {
14756	if c.header_ == nil {
14757		c.header_ = make(http.Header)
14758	}
14759	return c.header_
14760}
14761
14762func (c *AccountActiveAdSummariesGetCall) doRequest(alt string) (*http.Response, error) {
14763	reqHeaders := make(http.Header)
14764	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
14765	for k, v := range c.header_ {
14766		reqHeaders[k] = v
14767	}
14768	reqHeaders.Set("User-Agent", c.s.userAgent())
14769	if c.ifNoneMatch_ != "" {
14770		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14771	}
14772	var body io.Reader = nil
14773	c.urlParams_.Set("alt", alt)
14774	c.urlParams_.Set("prettyPrint", "false")
14775	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}")
14776	urls += "?" + c.urlParams_.Encode()
14777	req, err := http.NewRequest("GET", urls, body)
14778	if err != nil {
14779		return nil, err
14780	}
14781	req.Header = reqHeaders
14782	googleapi.Expand(req.URL, map[string]string{
14783		"profileId":        strconv.FormatInt(c.profileId, 10),
14784		"summaryAccountId": strconv.FormatInt(c.summaryAccountId, 10),
14785	})
14786	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14787}
14788
14789// Do executes the "dfareporting.accountActiveAdSummaries.get" call.
14790// Exactly one of *AccountActiveAdSummary or error will be non-nil. Any
14791// non-2xx status code is an error. Response headers are in either
14792// *AccountActiveAdSummary.ServerResponse.Header or (if a response was
14793// returned at all) in error.(*googleapi.Error).Header. Use
14794// googleapi.IsNotModified to check whether the returned error was
14795// because http.StatusNotModified was returned.
14796func (c *AccountActiveAdSummariesGetCall) Do(opts ...googleapi.CallOption) (*AccountActiveAdSummary, error) {
14797	gensupport.SetOptions(c.urlParams_, opts...)
14798	res, err := c.doRequest("json")
14799	if res != nil && res.StatusCode == http.StatusNotModified {
14800		if res.Body != nil {
14801			res.Body.Close()
14802		}
14803		return nil, &googleapi.Error{
14804			Code:   res.StatusCode,
14805			Header: res.Header,
14806		}
14807	}
14808	if err != nil {
14809		return nil, err
14810	}
14811	defer googleapi.CloseBody(res)
14812	if err := googleapi.CheckResponse(res); err != nil {
14813		return nil, err
14814	}
14815	ret := &AccountActiveAdSummary{
14816		ServerResponse: googleapi.ServerResponse{
14817			Header:         res.Header,
14818			HTTPStatusCode: res.StatusCode,
14819		},
14820	}
14821	target := &ret
14822	if err := gensupport.DecodeResponse(target, res); err != nil {
14823		return nil, err
14824	}
14825	return ret, nil
14826	// {
14827	//   "description": "Gets the account's active ad summary by account ID.",
14828	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}",
14829	//   "httpMethod": "GET",
14830	//   "id": "dfareporting.accountActiveAdSummaries.get",
14831	//   "parameterOrder": [
14832	//     "profileId",
14833	//     "summaryAccountId"
14834	//   ],
14835	//   "parameters": {
14836	//     "profileId": {
14837	//       "description": "User profile ID associated with this request.",
14838	//       "format": "int64",
14839	//       "location": "path",
14840	//       "required": true,
14841	//       "type": "string"
14842	//     },
14843	//     "summaryAccountId": {
14844	//       "description": "Account ID.",
14845	//       "format": "int64",
14846	//       "location": "path",
14847	//       "required": true,
14848	//       "type": "string"
14849	//     }
14850	//   },
14851	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}",
14852	//   "response": {
14853	//     "$ref": "AccountActiveAdSummary"
14854	//   },
14855	//   "scopes": [
14856	//     "https://www.googleapis.com/auth/dfatrafficking"
14857	//   ]
14858	// }
14859
14860}
14861
14862// method id "dfareporting.accountPermissionGroups.get":
14863
14864type AccountPermissionGroupsGetCall struct {
14865	s            *Service
14866	profileId    int64
14867	id           int64
14868	urlParams_   gensupport.URLParams
14869	ifNoneMatch_ string
14870	ctx_         context.Context
14871	header_      http.Header
14872}
14873
14874// Get: Gets one account permission group by ID.
14875//
14876// - id: Account permission group ID.
14877// - profileId: User profile ID associated with this request.
14878func (r *AccountPermissionGroupsService) Get(profileId int64, id int64) *AccountPermissionGroupsGetCall {
14879	c := &AccountPermissionGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14880	c.profileId = profileId
14881	c.id = id
14882	return c
14883}
14884
14885// Fields allows partial responses to be retrieved. See
14886// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14887// for more information.
14888func (c *AccountPermissionGroupsGetCall) Fields(s ...googleapi.Field) *AccountPermissionGroupsGetCall {
14889	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14890	return c
14891}
14892
14893// IfNoneMatch sets the optional parameter which makes the operation
14894// fail if the object's ETag matches the given value. This is useful for
14895// getting updates only after the object has changed since the last
14896// request. Use googleapi.IsNotModified to check whether the response
14897// error from Do is the result of In-None-Match.
14898func (c *AccountPermissionGroupsGetCall) IfNoneMatch(entityTag string) *AccountPermissionGroupsGetCall {
14899	c.ifNoneMatch_ = entityTag
14900	return c
14901}
14902
14903// Context sets the context to be used in this call's Do method. Any
14904// pending HTTP request will be aborted if the provided context is
14905// canceled.
14906func (c *AccountPermissionGroupsGetCall) Context(ctx context.Context) *AccountPermissionGroupsGetCall {
14907	c.ctx_ = ctx
14908	return c
14909}
14910
14911// Header returns an http.Header that can be modified by the caller to
14912// add HTTP headers to the request.
14913func (c *AccountPermissionGroupsGetCall) Header() http.Header {
14914	if c.header_ == nil {
14915		c.header_ = make(http.Header)
14916	}
14917	return c.header_
14918}
14919
14920func (c *AccountPermissionGroupsGetCall) doRequest(alt string) (*http.Response, error) {
14921	reqHeaders := make(http.Header)
14922	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
14923	for k, v := range c.header_ {
14924		reqHeaders[k] = v
14925	}
14926	reqHeaders.Set("User-Agent", c.s.userAgent())
14927	if c.ifNoneMatch_ != "" {
14928		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14929	}
14930	var body io.Reader = nil
14931	c.urlParams_.Set("alt", alt)
14932	c.urlParams_.Set("prettyPrint", "false")
14933	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountPermissionGroups/{id}")
14934	urls += "?" + c.urlParams_.Encode()
14935	req, err := http.NewRequest("GET", urls, body)
14936	if err != nil {
14937		return nil, err
14938	}
14939	req.Header = reqHeaders
14940	googleapi.Expand(req.URL, map[string]string{
14941		"profileId": strconv.FormatInt(c.profileId, 10),
14942		"id":        strconv.FormatInt(c.id, 10),
14943	})
14944	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14945}
14946
14947// Do executes the "dfareporting.accountPermissionGroups.get" call.
14948// Exactly one of *AccountPermissionGroup or error will be non-nil. Any
14949// non-2xx status code is an error. Response headers are in either
14950// *AccountPermissionGroup.ServerResponse.Header or (if a response was
14951// returned at all) in error.(*googleapi.Error).Header. Use
14952// googleapi.IsNotModified to check whether the returned error was
14953// because http.StatusNotModified was returned.
14954func (c *AccountPermissionGroupsGetCall) Do(opts ...googleapi.CallOption) (*AccountPermissionGroup, error) {
14955	gensupport.SetOptions(c.urlParams_, opts...)
14956	res, err := c.doRequest("json")
14957	if res != nil && res.StatusCode == http.StatusNotModified {
14958		if res.Body != nil {
14959			res.Body.Close()
14960		}
14961		return nil, &googleapi.Error{
14962			Code:   res.StatusCode,
14963			Header: res.Header,
14964		}
14965	}
14966	if err != nil {
14967		return nil, err
14968	}
14969	defer googleapi.CloseBody(res)
14970	if err := googleapi.CheckResponse(res); err != nil {
14971		return nil, err
14972	}
14973	ret := &AccountPermissionGroup{
14974		ServerResponse: googleapi.ServerResponse{
14975			Header:         res.Header,
14976			HTTPStatusCode: res.StatusCode,
14977		},
14978	}
14979	target := &ret
14980	if err := gensupport.DecodeResponse(target, res); err != nil {
14981		return nil, err
14982	}
14983	return ret, nil
14984	// {
14985	//   "description": "Gets one account permission group by ID.",
14986	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountPermissionGroups/{id}",
14987	//   "httpMethod": "GET",
14988	//   "id": "dfareporting.accountPermissionGroups.get",
14989	//   "parameterOrder": [
14990	//     "profileId",
14991	//     "id"
14992	//   ],
14993	//   "parameters": {
14994	//     "id": {
14995	//       "description": "Account permission group ID.",
14996	//       "format": "int64",
14997	//       "location": "path",
14998	//       "required": true,
14999	//       "type": "string"
15000	//     },
15001	//     "profileId": {
15002	//       "description": "User profile ID associated with this request.",
15003	//       "format": "int64",
15004	//       "location": "path",
15005	//       "required": true,
15006	//       "type": "string"
15007	//     }
15008	//   },
15009	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountPermissionGroups/{id}",
15010	//   "response": {
15011	//     "$ref": "AccountPermissionGroup"
15012	//   },
15013	//   "scopes": [
15014	//     "https://www.googleapis.com/auth/dfatrafficking"
15015	//   ]
15016	// }
15017
15018}
15019
15020// method id "dfareporting.accountPermissionGroups.list":
15021
15022type AccountPermissionGroupsListCall struct {
15023	s            *Service
15024	profileId    int64
15025	urlParams_   gensupport.URLParams
15026	ifNoneMatch_ string
15027	ctx_         context.Context
15028	header_      http.Header
15029}
15030
15031// List: Retrieves the list of account permission groups.
15032//
15033// - profileId: User profile ID associated with this request.
15034func (r *AccountPermissionGroupsService) List(profileId int64) *AccountPermissionGroupsListCall {
15035	c := &AccountPermissionGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15036	c.profileId = profileId
15037	return c
15038}
15039
15040// Fields allows partial responses to be retrieved. See
15041// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15042// for more information.
15043func (c *AccountPermissionGroupsListCall) Fields(s ...googleapi.Field) *AccountPermissionGroupsListCall {
15044	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15045	return c
15046}
15047
15048// IfNoneMatch sets the optional parameter which makes the operation
15049// fail if the object's ETag matches the given value. This is useful for
15050// getting updates only after the object has changed since the last
15051// request. Use googleapi.IsNotModified to check whether the response
15052// error from Do is the result of In-None-Match.
15053func (c *AccountPermissionGroupsListCall) IfNoneMatch(entityTag string) *AccountPermissionGroupsListCall {
15054	c.ifNoneMatch_ = entityTag
15055	return c
15056}
15057
15058// Context sets the context to be used in this call's Do method. Any
15059// pending HTTP request will be aborted if the provided context is
15060// canceled.
15061func (c *AccountPermissionGroupsListCall) Context(ctx context.Context) *AccountPermissionGroupsListCall {
15062	c.ctx_ = ctx
15063	return c
15064}
15065
15066// Header returns an http.Header that can be modified by the caller to
15067// add HTTP headers to the request.
15068func (c *AccountPermissionGroupsListCall) Header() http.Header {
15069	if c.header_ == nil {
15070		c.header_ = make(http.Header)
15071	}
15072	return c.header_
15073}
15074
15075func (c *AccountPermissionGroupsListCall) doRequest(alt string) (*http.Response, error) {
15076	reqHeaders := make(http.Header)
15077	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
15078	for k, v := range c.header_ {
15079		reqHeaders[k] = v
15080	}
15081	reqHeaders.Set("User-Agent", c.s.userAgent())
15082	if c.ifNoneMatch_ != "" {
15083		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15084	}
15085	var body io.Reader = nil
15086	c.urlParams_.Set("alt", alt)
15087	c.urlParams_.Set("prettyPrint", "false")
15088	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountPermissionGroups")
15089	urls += "?" + c.urlParams_.Encode()
15090	req, err := http.NewRequest("GET", urls, body)
15091	if err != nil {
15092		return nil, err
15093	}
15094	req.Header = reqHeaders
15095	googleapi.Expand(req.URL, map[string]string{
15096		"profileId": strconv.FormatInt(c.profileId, 10),
15097	})
15098	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15099}
15100
15101// Do executes the "dfareporting.accountPermissionGroups.list" call.
15102// Exactly one of *AccountPermissionGroupsListResponse or error will be
15103// non-nil. Any non-2xx status code is an error. Response headers are in
15104// either *AccountPermissionGroupsListResponse.ServerResponse.Header or
15105// (if a response was returned at all) in
15106// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
15107// whether the returned error was because http.StatusNotModified was
15108// returned.
15109func (c *AccountPermissionGroupsListCall) Do(opts ...googleapi.CallOption) (*AccountPermissionGroupsListResponse, error) {
15110	gensupport.SetOptions(c.urlParams_, opts...)
15111	res, err := c.doRequest("json")
15112	if res != nil && res.StatusCode == http.StatusNotModified {
15113		if res.Body != nil {
15114			res.Body.Close()
15115		}
15116		return nil, &googleapi.Error{
15117			Code:   res.StatusCode,
15118			Header: res.Header,
15119		}
15120	}
15121	if err != nil {
15122		return nil, err
15123	}
15124	defer googleapi.CloseBody(res)
15125	if err := googleapi.CheckResponse(res); err != nil {
15126		return nil, err
15127	}
15128	ret := &AccountPermissionGroupsListResponse{
15129		ServerResponse: googleapi.ServerResponse{
15130			Header:         res.Header,
15131			HTTPStatusCode: res.StatusCode,
15132		},
15133	}
15134	target := &ret
15135	if err := gensupport.DecodeResponse(target, res); err != nil {
15136		return nil, err
15137	}
15138	return ret, nil
15139	// {
15140	//   "description": "Retrieves the list of account permission groups.",
15141	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountPermissionGroups",
15142	//   "httpMethod": "GET",
15143	//   "id": "dfareporting.accountPermissionGroups.list",
15144	//   "parameterOrder": [
15145	//     "profileId"
15146	//   ],
15147	//   "parameters": {
15148	//     "profileId": {
15149	//       "description": "User profile ID associated with this request.",
15150	//       "format": "int64",
15151	//       "location": "path",
15152	//       "required": true,
15153	//       "type": "string"
15154	//     }
15155	//   },
15156	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountPermissionGroups",
15157	//   "response": {
15158	//     "$ref": "AccountPermissionGroupsListResponse"
15159	//   },
15160	//   "scopes": [
15161	//     "https://www.googleapis.com/auth/dfatrafficking"
15162	//   ]
15163	// }
15164
15165}
15166
15167// method id "dfareporting.accountPermissions.get":
15168
15169type AccountPermissionsGetCall struct {
15170	s            *Service
15171	profileId    int64
15172	id           int64
15173	urlParams_   gensupport.URLParams
15174	ifNoneMatch_ string
15175	ctx_         context.Context
15176	header_      http.Header
15177}
15178
15179// Get: Gets one account permission by ID.
15180//
15181// - id: Account permission ID.
15182// - profileId: User profile ID associated with this request.
15183func (r *AccountPermissionsService) Get(profileId int64, id int64) *AccountPermissionsGetCall {
15184	c := &AccountPermissionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15185	c.profileId = profileId
15186	c.id = id
15187	return c
15188}
15189
15190// Fields allows partial responses to be retrieved. See
15191// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15192// for more information.
15193func (c *AccountPermissionsGetCall) Fields(s ...googleapi.Field) *AccountPermissionsGetCall {
15194	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15195	return c
15196}
15197
15198// IfNoneMatch sets the optional parameter which makes the operation
15199// fail if the object's ETag matches the given value. This is useful for
15200// getting updates only after the object has changed since the last
15201// request. Use googleapi.IsNotModified to check whether the response
15202// error from Do is the result of In-None-Match.
15203func (c *AccountPermissionsGetCall) IfNoneMatch(entityTag string) *AccountPermissionsGetCall {
15204	c.ifNoneMatch_ = entityTag
15205	return c
15206}
15207
15208// Context sets the context to be used in this call's Do method. Any
15209// pending HTTP request will be aborted if the provided context is
15210// canceled.
15211func (c *AccountPermissionsGetCall) Context(ctx context.Context) *AccountPermissionsGetCall {
15212	c.ctx_ = ctx
15213	return c
15214}
15215
15216// Header returns an http.Header that can be modified by the caller to
15217// add HTTP headers to the request.
15218func (c *AccountPermissionsGetCall) Header() http.Header {
15219	if c.header_ == nil {
15220		c.header_ = make(http.Header)
15221	}
15222	return c.header_
15223}
15224
15225func (c *AccountPermissionsGetCall) doRequest(alt string) (*http.Response, error) {
15226	reqHeaders := make(http.Header)
15227	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
15228	for k, v := range c.header_ {
15229		reqHeaders[k] = v
15230	}
15231	reqHeaders.Set("User-Agent", c.s.userAgent())
15232	if c.ifNoneMatch_ != "" {
15233		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15234	}
15235	var body io.Reader = nil
15236	c.urlParams_.Set("alt", alt)
15237	c.urlParams_.Set("prettyPrint", "false")
15238	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountPermissions/{id}")
15239	urls += "?" + c.urlParams_.Encode()
15240	req, err := http.NewRequest("GET", urls, body)
15241	if err != nil {
15242		return nil, err
15243	}
15244	req.Header = reqHeaders
15245	googleapi.Expand(req.URL, map[string]string{
15246		"profileId": strconv.FormatInt(c.profileId, 10),
15247		"id":        strconv.FormatInt(c.id, 10),
15248	})
15249	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15250}
15251
15252// Do executes the "dfareporting.accountPermissions.get" call.
15253// Exactly one of *AccountPermission or error will be non-nil. Any
15254// non-2xx status code is an error. Response headers are in either
15255// *AccountPermission.ServerResponse.Header or (if a response was
15256// returned at all) in error.(*googleapi.Error).Header. Use
15257// googleapi.IsNotModified to check whether the returned error was
15258// because http.StatusNotModified was returned.
15259func (c *AccountPermissionsGetCall) Do(opts ...googleapi.CallOption) (*AccountPermission, error) {
15260	gensupport.SetOptions(c.urlParams_, opts...)
15261	res, err := c.doRequest("json")
15262	if res != nil && res.StatusCode == http.StatusNotModified {
15263		if res.Body != nil {
15264			res.Body.Close()
15265		}
15266		return nil, &googleapi.Error{
15267			Code:   res.StatusCode,
15268			Header: res.Header,
15269		}
15270	}
15271	if err != nil {
15272		return nil, err
15273	}
15274	defer googleapi.CloseBody(res)
15275	if err := googleapi.CheckResponse(res); err != nil {
15276		return nil, err
15277	}
15278	ret := &AccountPermission{
15279		ServerResponse: googleapi.ServerResponse{
15280			Header:         res.Header,
15281			HTTPStatusCode: res.StatusCode,
15282		},
15283	}
15284	target := &ret
15285	if err := gensupport.DecodeResponse(target, res); err != nil {
15286		return nil, err
15287	}
15288	return ret, nil
15289	// {
15290	//   "description": "Gets one account permission by ID.",
15291	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountPermissions/{id}",
15292	//   "httpMethod": "GET",
15293	//   "id": "dfareporting.accountPermissions.get",
15294	//   "parameterOrder": [
15295	//     "profileId",
15296	//     "id"
15297	//   ],
15298	//   "parameters": {
15299	//     "id": {
15300	//       "description": "Account permission ID.",
15301	//       "format": "int64",
15302	//       "location": "path",
15303	//       "required": true,
15304	//       "type": "string"
15305	//     },
15306	//     "profileId": {
15307	//       "description": "User profile ID associated with this request.",
15308	//       "format": "int64",
15309	//       "location": "path",
15310	//       "required": true,
15311	//       "type": "string"
15312	//     }
15313	//   },
15314	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountPermissions/{id}",
15315	//   "response": {
15316	//     "$ref": "AccountPermission"
15317	//   },
15318	//   "scopes": [
15319	//     "https://www.googleapis.com/auth/dfatrafficking"
15320	//   ]
15321	// }
15322
15323}
15324
15325// method id "dfareporting.accountPermissions.list":
15326
15327type AccountPermissionsListCall struct {
15328	s            *Service
15329	profileId    int64
15330	urlParams_   gensupport.URLParams
15331	ifNoneMatch_ string
15332	ctx_         context.Context
15333	header_      http.Header
15334}
15335
15336// List: Retrieves the list of account permissions.
15337//
15338// - profileId: User profile ID associated with this request.
15339func (r *AccountPermissionsService) List(profileId int64) *AccountPermissionsListCall {
15340	c := &AccountPermissionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15341	c.profileId = profileId
15342	return c
15343}
15344
15345// Fields allows partial responses to be retrieved. See
15346// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15347// for more information.
15348func (c *AccountPermissionsListCall) Fields(s ...googleapi.Field) *AccountPermissionsListCall {
15349	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15350	return c
15351}
15352
15353// IfNoneMatch sets the optional parameter which makes the operation
15354// fail if the object's ETag matches the given value. This is useful for
15355// getting updates only after the object has changed since the last
15356// request. Use googleapi.IsNotModified to check whether the response
15357// error from Do is the result of In-None-Match.
15358func (c *AccountPermissionsListCall) IfNoneMatch(entityTag string) *AccountPermissionsListCall {
15359	c.ifNoneMatch_ = entityTag
15360	return c
15361}
15362
15363// Context sets the context to be used in this call's Do method. Any
15364// pending HTTP request will be aborted if the provided context is
15365// canceled.
15366func (c *AccountPermissionsListCall) Context(ctx context.Context) *AccountPermissionsListCall {
15367	c.ctx_ = ctx
15368	return c
15369}
15370
15371// Header returns an http.Header that can be modified by the caller to
15372// add HTTP headers to the request.
15373func (c *AccountPermissionsListCall) Header() http.Header {
15374	if c.header_ == nil {
15375		c.header_ = make(http.Header)
15376	}
15377	return c.header_
15378}
15379
15380func (c *AccountPermissionsListCall) doRequest(alt string) (*http.Response, error) {
15381	reqHeaders := make(http.Header)
15382	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
15383	for k, v := range c.header_ {
15384		reqHeaders[k] = v
15385	}
15386	reqHeaders.Set("User-Agent", c.s.userAgent())
15387	if c.ifNoneMatch_ != "" {
15388		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15389	}
15390	var body io.Reader = nil
15391	c.urlParams_.Set("alt", alt)
15392	c.urlParams_.Set("prettyPrint", "false")
15393	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountPermissions")
15394	urls += "?" + c.urlParams_.Encode()
15395	req, err := http.NewRequest("GET", urls, body)
15396	if err != nil {
15397		return nil, err
15398	}
15399	req.Header = reqHeaders
15400	googleapi.Expand(req.URL, map[string]string{
15401		"profileId": strconv.FormatInt(c.profileId, 10),
15402	})
15403	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15404}
15405
15406// Do executes the "dfareporting.accountPermissions.list" call.
15407// Exactly one of *AccountPermissionsListResponse or error will be
15408// non-nil. Any non-2xx status code is an error. Response headers are in
15409// either *AccountPermissionsListResponse.ServerResponse.Header or (if a
15410// response was returned at all) in error.(*googleapi.Error).Header. Use
15411// googleapi.IsNotModified to check whether the returned error was
15412// because http.StatusNotModified was returned.
15413func (c *AccountPermissionsListCall) Do(opts ...googleapi.CallOption) (*AccountPermissionsListResponse, error) {
15414	gensupport.SetOptions(c.urlParams_, opts...)
15415	res, err := c.doRequest("json")
15416	if res != nil && res.StatusCode == http.StatusNotModified {
15417		if res.Body != nil {
15418			res.Body.Close()
15419		}
15420		return nil, &googleapi.Error{
15421			Code:   res.StatusCode,
15422			Header: res.Header,
15423		}
15424	}
15425	if err != nil {
15426		return nil, err
15427	}
15428	defer googleapi.CloseBody(res)
15429	if err := googleapi.CheckResponse(res); err != nil {
15430		return nil, err
15431	}
15432	ret := &AccountPermissionsListResponse{
15433		ServerResponse: googleapi.ServerResponse{
15434			Header:         res.Header,
15435			HTTPStatusCode: res.StatusCode,
15436		},
15437	}
15438	target := &ret
15439	if err := gensupport.DecodeResponse(target, res); err != nil {
15440		return nil, err
15441	}
15442	return ret, nil
15443	// {
15444	//   "description": "Retrieves the list of account permissions.",
15445	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountPermissions",
15446	//   "httpMethod": "GET",
15447	//   "id": "dfareporting.accountPermissions.list",
15448	//   "parameterOrder": [
15449	//     "profileId"
15450	//   ],
15451	//   "parameters": {
15452	//     "profileId": {
15453	//       "description": "User profile ID associated with this request.",
15454	//       "format": "int64",
15455	//       "location": "path",
15456	//       "required": true,
15457	//       "type": "string"
15458	//     }
15459	//   },
15460	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountPermissions",
15461	//   "response": {
15462	//     "$ref": "AccountPermissionsListResponse"
15463	//   },
15464	//   "scopes": [
15465	//     "https://www.googleapis.com/auth/dfatrafficking"
15466	//   ]
15467	// }
15468
15469}
15470
15471// method id "dfareporting.accountUserProfiles.get":
15472
15473type AccountUserProfilesGetCall struct {
15474	s            *Service
15475	profileId    int64
15476	id           int64
15477	urlParams_   gensupport.URLParams
15478	ifNoneMatch_ string
15479	ctx_         context.Context
15480	header_      http.Header
15481}
15482
15483// Get: Gets one account user profile by ID.
15484//
15485// - id: User profile ID.
15486// - profileId: User profile ID associated with this request.
15487func (r *AccountUserProfilesService) Get(profileId int64, id int64) *AccountUserProfilesGetCall {
15488	c := &AccountUserProfilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15489	c.profileId = profileId
15490	c.id = id
15491	return c
15492}
15493
15494// Fields allows partial responses to be retrieved. See
15495// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15496// for more information.
15497func (c *AccountUserProfilesGetCall) Fields(s ...googleapi.Field) *AccountUserProfilesGetCall {
15498	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15499	return c
15500}
15501
15502// IfNoneMatch sets the optional parameter which makes the operation
15503// fail if the object's ETag matches the given value. This is useful for
15504// getting updates only after the object has changed since the last
15505// request. Use googleapi.IsNotModified to check whether the response
15506// error from Do is the result of In-None-Match.
15507func (c *AccountUserProfilesGetCall) IfNoneMatch(entityTag string) *AccountUserProfilesGetCall {
15508	c.ifNoneMatch_ = entityTag
15509	return c
15510}
15511
15512// Context sets the context to be used in this call's Do method. Any
15513// pending HTTP request will be aborted if the provided context is
15514// canceled.
15515func (c *AccountUserProfilesGetCall) Context(ctx context.Context) *AccountUserProfilesGetCall {
15516	c.ctx_ = ctx
15517	return c
15518}
15519
15520// Header returns an http.Header that can be modified by the caller to
15521// add HTTP headers to the request.
15522func (c *AccountUserProfilesGetCall) Header() http.Header {
15523	if c.header_ == nil {
15524		c.header_ = make(http.Header)
15525	}
15526	return c.header_
15527}
15528
15529func (c *AccountUserProfilesGetCall) doRequest(alt string) (*http.Response, error) {
15530	reqHeaders := make(http.Header)
15531	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
15532	for k, v := range c.header_ {
15533		reqHeaders[k] = v
15534	}
15535	reqHeaders.Set("User-Agent", c.s.userAgent())
15536	if c.ifNoneMatch_ != "" {
15537		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15538	}
15539	var body io.Reader = nil
15540	c.urlParams_.Set("alt", alt)
15541	c.urlParams_.Set("prettyPrint", "false")
15542	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles/{id}")
15543	urls += "?" + c.urlParams_.Encode()
15544	req, err := http.NewRequest("GET", urls, body)
15545	if err != nil {
15546		return nil, err
15547	}
15548	req.Header = reqHeaders
15549	googleapi.Expand(req.URL, map[string]string{
15550		"profileId": strconv.FormatInt(c.profileId, 10),
15551		"id":        strconv.FormatInt(c.id, 10),
15552	})
15553	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15554}
15555
15556// Do executes the "dfareporting.accountUserProfiles.get" call.
15557// Exactly one of *AccountUserProfile or error will be non-nil. Any
15558// non-2xx status code is an error. Response headers are in either
15559// *AccountUserProfile.ServerResponse.Header or (if a response was
15560// returned at all) in error.(*googleapi.Error).Header. Use
15561// googleapi.IsNotModified to check whether the returned error was
15562// because http.StatusNotModified was returned.
15563func (c *AccountUserProfilesGetCall) Do(opts ...googleapi.CallOption) (*AccountUserProfile, error) {
15564	gensupport.SetOptions(c.urlParams_, opts...)
15565	res, err := c.doRequest("json")
15566	if res != nil && res.StatusCode == http.StatusNotModified {
15567		if res.Body != nil {
15568			res.Body.Close()
15569		}
15570		return nil, &googleapi.Error{
15571			Code:   res.StatusCode,
15572			Header: res.Header,
15573		}
15574	}
15575	if err != nil {
15576		return nil, err
15577	}
15578	defer googleapi.CloseBody(res)
15579	if err := googleapi.CheckResponse(res); err != nil {
15580		return nil, err
15581	}
15582	ret := &AccountUserProfile{
15583		ServerResponse: googleapi.ServerResponse{
15584			Header:         res.Header,
15585			HTTPStatusCode: res.StatusCode,
15586		},
15587	}
15588	target := &ret
15589	if err := gensupport.DecodeResponse(target, res); err != nil {
15590		return nil, err
15591	}
15592	return ret, nil
15593	// {
15594	//   "description": "Gets one account user profile by ID.",
15595	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles/{id}",
15596	//   "httpMethod": "GET",
15597	//   "id": "dfareporting.accountUserProfiles.get",
15598	//   "parameterOrder": [
15599	//     "profileId",
15600	//     "id"
15601	//   ],
15602	//   "parameters": {
15603	//     "id": {
15604	//       "description": "User profile ID.",
15605	//       "format": "int64",
15606	//       "location": "path",
15607	//       "required": true,
15608	//       "type": "string"
15609	//     },
15610	//     "profileId": {
15611	//       "description": "User profile ID associated with this request.",
15612	//       "format": "int64",
15613	//       "location": "path",
15614	//       "required": true,
15615	//       "type": "string"
15616	//     }
15617	//   },
15618	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles/{id}",
15619	//   "response": {
15620	//     "$ref": "AccountUserProfile"
15621	//   },
15622	//   "scopes": [
15623	//     "https://www.googleapis.com/auth/dfatrafficking"
15624	//   ]
15625	// }
15626
15627}
15628
15629// method id "dfareporting.accountUserProfiles.insert":
15630
15631type AccountUserProfilesInsertCall struct {
15632	s                  *Service
15633	profileId          int64
15634	accountuserprofile *AccountUserProfile
15635	urlParams_         gensupport.URLParams
15636	ctx_               context.Context
15637	header_            http.Header
15638}
15639
15640// Insert: Inserts a new account user profile.
15641//
15642// - profileId: User profile ID associated with this request.
15643func (r *AccountUserProfilesService) Insert(profileId int64, accountuserprofile *AccountUserProfile) *AccountUserProfilesInsertCall {
15644	c := &AccountUserProfilesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15645	c.profileId = profileId
15646	c.accountuserprofile = accountuserprofile
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
15652// for more information.
15653func (c *AccountUserProfilesInsertCall) Fields(s ...googleapi.Field) *AccountUserProfilesInsertCall {
15654	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15655	return c
15656}
15657
15658// Context sets the context to be used in this call's Do method. Any
15659// pending HTTP request will be aborted if the provided context is
15660// canceled.
15661func (c *AccountUserProfilesInsertCall) Context(ctx context.Context) *AccountUserProfilesInsertCall {
15662	c.ctx_ = ctx
15663	return c
15664}
15665
15666// Header returns an http.Header that can be modified by the caller to
15667// add HTTP headers to the request.
15668func (c *AccountUserProfilesInsertCall) Header() http.Header {
15669	if c.header_ == nil {
15670		c.header_ = make(http.Header)
15671	}
15672	return c.header_
15673}
15674
15675func (c *AccountUserProfilesInsertCall) doRequest(alt string) (*http.Response, error) {
15676	reqHeaders := make(http.Header)
15677	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
15678	for k, v := range c.header_ {
15679		reqHeaders[k] = v
15680	}
15681	reqHeaders.Set("User-Agent", c.s.userAgent())
15682	var body io.Reader = nil
15683	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountuserprofile)
15684	if err != nil {
15685		return nil, err
15686	}
15687	reqHeaders.Set("Content-Type", "application/json")
15688	c.urlParams_.Set("alt", alt)
15689	c.urlParams_.Set("prettyPrint", "false")
15690	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles")
15691	urls += "?" + c.urlParams_.Encode()
15692	req, err := http.NewRequest("POST", urls, body)
15693	if err != nil {
15694		return nil, err
15695	}
15696	req.Header = reqHeaders
15697	googleapi.Expand(req.URL, map[string]string{
15698		"profileId": strconv.FormatInt(c.profileId, 10),
15699	})
15700	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15701}
15702
15703// Do executes the "dfareporting.accountUserProfiles.insert" call.
15704// Exactly one of *AccountUserProfile or error will be non-nil. Any
15705// non-2xx status code is an error. Response headers are in either
15706// *AccountUserProfile.ServerResponse.Header or (if a response was
15707// returned at all) in error.(*googleapi.Error).Header. Use
15708// googleapi.IsNotModified to check whether the returned error was
15709// because http.StatusNotModified was returned.
15710func (c *AccountUserProfilesInsertCall) Do(opts ...googleapi.CallOption) (*AccountUserProfile, error) {
15711	gensupport.SetOptions(c.urlParams_, opts...)
15712	res, err := c.doRequest("json")
15713	if res != nil && res.StatusCode == http.StatusNotModified {
15714		if res.Body != nil {
15715			res.Body.Close()
15716		}
15717		return nil, &googleapi.Error{
15718			Code:   res.StatusCode,
15719			Header: res.Header,
15720		}
15721	}
15722	if err != nil {
15723		return nil, err
15724	}
15725	defer googleapi.CloseBody(res)
15726	if err := googleapi.CheckResponse(res); err != nil {
15727		return nil, err
15728	}
15729	ret := &AccountUserProfile{
15730		ServerResponse: googleapi.ServerResponse{
15731			Header:         res.Header,
15732			HTTPStatusCode: res.StatusCode,
15733		},
15734	}
15735	target := &ret
15736	if err := gensupport.DecodeResponse(target, res); err != nil {
15737		return nil, err
15738	}
15739	return ret, nil
15740	// {
15741	//   "description": "Inserts a new account user profile.",
15742	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles",
15743	//   "httpMethod": "POST",
15744	//   "id": "dfareporting.accountUserProfiles.insert",
15745	//   "parameterOrder": [
15746	//     "profileId"
15747	//   ],
15748	//   "parameters": {
15749	//     "profileId": {
15750	//       "description": "User profile ID associated with this request.",
15751	//       "format": "int64",
15752	//       "location": "path",
15753	//       "required": true,
15754	//       "type": "string"
15755	//     }
15756	//   },
15757	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles",
15758	//   "request": {
15759	//     "$ref": "AccountUserProfile"
15760	//   },
15761	//   "response": {
15762	//     "$ref": "AccountUserProfile"
15763	//   },
15764	//   "scopes": [
15765	//     "https://www.googleapis.com/auth/dfatrafficking"
15766	//   ]
15767	// }
15768
15769}
15770
15771// method id "dfareporting.accountUserProfiles.list":
15772
15773type AccountUserProfilesListCall struct {
15774	s            *Service
15775	profileId    int64
15776	urlParams_   gensupport.URLParams
15777	ifNoneMatch_ string
15778	ctx_         context.Context
15779	header_      http.Header
15780}
15781
15782// List: Retrieves a list of account user profiles, possibly filtered.
15783// This method supports paging.
15784//
15785// - profileId: User profile ID associated with this request.
15786func (r *AccountUserProfilesService) List(profileId int64) *AccountUserProfilesListCall {
15787	c := &AccountUserProfilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15788	c.profileId = profileId
15789	return c
15790}
15791
15792// Active sets the optional parameter "active": Select only active user
15793// profiles.
15794func (c *AccountUserProfilesListCall) Active(active bool) *AccountUserProfilesListCall {
15795	c.urlParams_.Set("active", fmt.Sprint(active))
15796	return c
15797}
15798
15799// Ids sets the optional parameter "ids": Select only user profiles with
15800// these IDs.
15801func (c *AccountUserProfilesListCall) Ids(ids ...int64) *AccountUserProfilesListCall {
15802	var ids_ []string
15803	for _, v := range ids {
15804		ids_ = append(ids_, fmt.Sprint(v))
15805	}
15806	c.urlParams_.SetMulti("ids", ids_)
15807	return c
15808}
15809
15810// MaxResults sets the optional parameter "maxResults": Maximum number
15811// of results to return.
15812func (c *AccountUserProfilesListCall) MaxResults(maxResults int64) *AccountUserProfilesListCall {
15813	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
15814	return c
15815}
15816
15817// PageToken sets the optional parameter "pageToken": Value of the
15818// nextPageToken from the previous result page.
15819func (c *AccountUserProfilesListCall) PageToken(pageToken string) *AccountUserProfilesListCall {
15820	c.urlParams_.Set("pageToken", pageToken)
15821	return c
15822}
15823
15824// SearchString sets the optional parameter "searchString": Allows
15825// searching for objects by name, ID or email. Wildcards (*) are
15826// allowed. For example, "user profile*2015" will return objects with
15827// names like "user profile June 2015", "user profile April 2015", or
15828// simply "user profile 2015". Most of the searches also add wildcards
15829// implicitly at the start and the end of the search string. For
15830// example, a search string of "user profile" will match objects with
15831// name "my user profile", "user profile 2015", or simply "user
15832// profile".
15833func (c *AccountUserProfilesListCall) SearchString(searchString string) *AccountUserProfilesListCall {
15834	c.urlParams_.Set("searchString", searchString)
15835	return c
15836}
15837
15838// SortField sets the optional parameter "sortField": Field by which to
15839// sort the list.
15840//
15841// Possible values:
15842//   "ID" (default)
15843//   "NAME"
15844func (c *AccountUserProfilesListCall) SortField(sortField string) *AccountUserProfilesListCall {
15845	c.urlParams_.Set("sortField", sortField)
15846	return c
15847}
15848
15849// SortOrder sets the optional parameter "sortOrder": Order of sorted
15850// results.
15851//
15852// Possible values:
15853//   "ASCENDING" (default)
15854//   "DESCENDING"
15855func (c *AccountUserProfilesListCall) SortOrder(sortOrder string) *AccountUserProfilesListCall {
15856	c.urlParams_.Set("sortOrder", sortOrder)
15857	return c
15858}
15859
15860// SubaccountId sets the optional parameter "subaccountId": Select only
15861// user profiles with the specified subaccount ID.
15862func (c *AccountUserProfilesListCall) SubaccountId(subaccountId int64) *AccountUserProfilesListCall {
15863	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
15864	return c
15865}
15866
15867// UserRoleId sets the optional parameter "userRoleId": Select only user
15868// profiles with the specified user role ID.
15869func (c *AccountUserProfilesListCall) UserRoleId(userRoleId int64) *AccountUserProfilesListCall {
15870	c.urlParams_.Set("userRoleId", fmt.Sprint(userRoleId))
15871	return c
15872}
15873
15874// Fields allows partial responses to be retrieved. See
15875// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15876// for more information.
15877func (c *AccountUserProfilesListCall) Fields(s ...googleapi.Field) *AccountUserProfilesListCall {
15878	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15879	return c
15880}
15881
15882// IfNoneMatch sets the optional parameter which makes the operation
15883// fail if the object's ETag matches the given value. This is useful for
15884// getting updates only after the object has changed since the last
15885// request. Use googleapi.IsNotModified to check whether the response
15886// error from Do is the result of In-None-Match.
15887func (c *AccountUserProfilesListCall) IfNoneMatch(entityTag string) *AccountUserProfilesListCall {
15888	c.ifNoneMatch_ = entityTag
15889	return c
15890}
15891
15892// Context sets the context to be used in this call's Do method. Any
15893// pending HTTP request will be aborted if the provided context is
15894// canceled.
15895func (c *AccountUserProfilesListCall) Context(ctx context.Context) *AccountUserProfilesListCall {
15896	c.ctx_ = ctx
15897	return c
15898}
15899
15900// Header returns an http.Header that can be modified by the caller to
15901// add HTTP headers to the request.
15902func (c *AccountUserProfilesListCall) Header() http.Header {
15903	if c.header_ == nil {
15904		c.header_ = make(http.Header)
15905	}
15906	return c.header_
15907}
15908
15909func (c *AccountUserProfilesListCall) doRequest(alt string) (*http.Response, error) {
15910	reqHeaders := make(http.Header)
15911	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
15912	for k, v := range c.header_ {
15913		reqHeaders[k] = v
15914	}
15915	reqHeaders.Set("User-Agent", c.s.userAgent())
15916	if c.ifNoneMatch_ != "" {
15917		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15918	}
15919	var body io.Reader = nil
15920	c.urlParams_.Set("alt", alt)
15921	c.urlParams_.Set("prettyPrint", "false")
15922	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles")
15923	urls += "?" + c.urlParams_.Encode()
15924	req, err := http.NewRequest("GET", urls, body)
15925	if err != nil {
15926		return nil, err
15927	}
15928	req.Header = reqHeaders
15929	googleapi.Expand(req.URL, map[string]string{
15930		"profileId": strconv.FormatInt(c.profileId, 10),
15931	})
15932	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15933}
15934
15935// Do executes the "dfareporting.accountUserProfiles.list" call.
15936// Exactly one of *AccountUserProfilesListResponse or error will be
15937// non-nil. Any non-2xx status code is an error. Response headers are in
15938// either *AccountUserProfilesListResponse.ServerResponse.Header or (if
15939// a response was returned at all) in error.(*googleapi.Error).Header.
15940// Use googleapi.IsNotModified to check whether the returned error was
15941// because http.StatusNotModified was returned.
15942func (c *AccountUserProfilesListCall) Do(opts ...googleapi.CallOption) (*AccountUserProfilesListResponse, error) {
15943	gensupport.SetOptions(c.urlParams_, opts...)
15944	res, err := c.doRequest("json")
15945	if res != nil && res.StatusCode == http.StatusNotModified {
15946		if res.Body != nil {
15947			res.Body.Close()
15948		}
15949		return nil, &googleapi.Error{
15950			Code:   res.StatusCode,
15951			Header: res.Header,
15952		}
15953	}
15954	if err != nil {
15955		return nil, err
15956	}
15957	defer googleapi.CloseBody(res)
15958	if err := googleapi.CheckResponse(res); err != nil {
15959		return nil, err
15960	}
15961	ret := &AccountUserProfilesListResponse{
15962		ServerResponse: googleapi.ServerResponse{
15963			Header:         res.Header,
15964			HTTPStatusCode: res.StatusCode,
15965		},
15966	}
15967	target := &ret
15968	if err := gensupport.DecodeResponse(target, res); err != nil {
15969		return nil, err
15970	}
15971	return ret, nil
15972	// {
15973	//   "description": "Retrieves a list of account user profiles, possibly filtered. This method supports paging.",
15974	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles",
15975	//   "httpMethod": "GET",
15976	//   "id": "dfareporting.accountUserProfiles.list",
15977	//   "parameterOrder": [
15978	//     "profileId"
15979	//   ],
15980	//   "parameters": {
15981	//     "active": {
15982	//       "description": "Select only active user profiles.",
15983	//       "location": "query",
15984	//       "type": "boolean"
15985	//     },
15986	//     "ids": {
15987	//       "description": "Select only user profiles with these IDs.",
15988	//       "format": "int64",
15989	//       "location": "query",
15990	//       "repeated": true,
15991	//       "type": "string"
15992	//     },
15993	//     "maxResults": {
15994	//       "default": "1000",
15995	//       "description": "Maximum number of results to return.",
15996	//       "format": "int32",
15997	//       "location": "query",
15998	//       "maximum": "1000",
15999	//       "minimum": "0",
16000	//       "type": "integer"
16001	//     },
16002	//     "pageToken": {
16003	//       "description": "Value of the nextPageToken from the previous result page.",
16004	//       "location": "query",
16005	//       "type": "string"
16006	//     },
16007	//     "profileId": {
16008	//       "description": "User profile ID associated with this request.",
16009	//       "format": "int64",
16010	//       "location": "path",
16011	//       "required": true,
16012	//       "type": "string"
16013	//     },
16014	//     "searchString": {
16015	//       "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"user profile*2015\" will return objects with names like \"user profile June 2015\", \"user profile April 2015\", or simply \"user profile 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"user profile\" will match objects with name \"my user profile\", \"user profile 2015\", or simply \"user profile\".",
16016	//       "location": "query",
16017	//       "type": "string"
16018	//     },
16019	//     "sortField": {
16020	//       "default": "ID",
16021	//       "description": "Field by which to sort the list.",
16022	//       "enum": [
16023	//         "ID",
16024	//         "NAME"
16025	//       ],
16026	//       "enumDescriptions": [
16027	//         "",
16028	//         ""
16029	//       ],
16030	//       "location": "query",
16031	//       "type": "string"
16032	//     },
16033	//     "sortOrder": {
16034	//       "default": "ASCENDING",
16035	//       "description": "Order of sorted results.",
16036	//       "enum": [
16037	//         "ASCENDING",
16038	//         "DESCENDING"
16039	//       ],
16040	//       "enumDescriptions": [
16041	//         "",
16042	//         ""
16043	//       ],
16044	//       "location": "query",
16045	//       "type": "string"
16046	//     },
16047	//     "subaccountId": {
16048	//       "description": "Select only user profiles with the specified subaccount ID.",
16049	//       "format": "int64",
16050	//       "location": "query",
16051	//       "type": "string"
16052	//     },
16053	//     "userRoleId": {
16054	//       "description": "Select only user profiles with the specified user role ID.",
16055	//       "format": "int64",
16056	//       "location": "query",
16057	//       "type": "string"
16058	//     }
16059	//   },
16060	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles",
16061	//   "response": {
16062	//     "$ref": "AccountUserProfilesListResponse"
16063	//   },
16064	//   "scopes": [
16065	//     "https://www.googleapis.com/auth/dfatrafficking"
16066	//   ]
16067	// }
16068
16069}
16070
16071// Pages invokes f for each page of results.
16072// A non-nil error returned from f will halt the iteration.
16073// The provided context supersedes any context provided to the Context method.
16074func (c *AccountUserProfilesListCall) Pages(ctx context.Context, f func(*AccountUserProfilesListResponse) error) error {
16075	c.ctx_ = ctx
16076	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
16077	for {
16078		x, err := c.Do()
16079		if err != nil {
16080			return err
16081		}
16082		if err := f(x); err != nil {
16083			return err
16084		}
16085		if x.NextPageToken == "" {
16086			return nil
16087		}
16088		c.PageToken(x.NextPageToken)
16089	}
16090}
16091
16092// method id "dfareporting.accountUserProfiles.patch":
16093
16094type AccountUserProfilesPatchCall struct {
16095	s                  *Service
16096	profileId          int64
16097	accountuserprofile *AccountUserProfile
16098	urlParams_         gensupport.URLParams
16099	ctx_               context.Context
16100	header_            http.Header
16101}
16102
16103// Patch: Updates an existing account user profile. This method supports
16104// patch semantics.
16105//
16106// - id: AccountUserProfile ID.
16107// - profileId: User profile ID associated with this request.
16108func (r *AccountUserProfilesService) Patch(profileId int64, id int64, accountuserprofile *AccountUserProfile) *AccountUserProfilesPatchCall {
16109	c := &AccountUserProfilesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16110	c.profileId = profileId
16111	c.urlParams_.Set("id", fmt.Sprint(id))
16112	c.accountuserprofile = accountuserprofile
16113	return c
16114}
16115
16116// Fields allows partial responses to be retrieved. See
16117// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16118// for more information.
16119func (c *AccountUserProfilesPatchCall) Fields(s ...googleapi.Field) *AccountUserProfilesPatchCall {
16120	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16121	return c
16122}
16123
16124// Context sets the context to be used in this call's Do method. Any
16125// pending HTTP request will be aborted if the provided context is
16126// canceled.
16127func (c *AccountUserProfilesPatchCall) Context(ctx context.Context) *AccountUserProfilesPatchCall {
16128	c.ctx_ = ctx
16129	return c
16130}
16131
16132// Header returns an http.Header that can be modified by the caller to
16133// add HTTP headers to the request.
16134func (c *AccountUserProfilesPatchCall) Header() http.Header {
16135	if c.header_ == nil {
16136		c.header_ = make(http.Header)
16137	}
16138	return c.header_
16139}
16140
16141func (c *AccountUserProfilesPatchCall) doRequest(alt string) (*http.Response, error) {
16142	reqHeaders := make(http.Header)
16143	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
16144	for k, v := range c.header_ {
16145		reqHeaders[k] = v
16146	}
16147	reqHeaders.Set("User-Agent", c.s.userAgent())
16148	var body io.Reader = nil
16149	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountuserprofile)
16150	if err != nil {
16151		return nil, err
16152	}
16153	reqHeaders.Set("Content-Type", "application/json")
16154	c.urlParams_.Set("alt", alt)
16155	c.urlParams_.Set("prettyPrint", "false")
16156	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles")
16157	urls += "?" + c.urlParams_.Encode()
16158	req, err := http.NewRequest("PATCH", urls, body)
16159	if err != nil {
16160		return nil, err
16161	}
16162	req.Header = reqHeaders
16163	googleapi.Expand(req.URL, map[string]string{
16164		"profileId": strconv.FormatInt(c.profileId, 10),
16165	})
16166	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16167}
16168
16169// Do executes the "dfareporting.accountUserProfiles.patch" call.
16170// Exactly one of *AccountUserProfile or error will be non-nil. Any
16171// non-2xx status code is an error. Response headers are in either
16172// *AccountUserProfile.ServerResponse.Header or (if a response was
16173// returned at all) in error.(*googleapi.Error).Header. Use
16174// googleapi.IsNotModified to check whether the returned error was
16175// because http.StatusNotModified was returned.
16176func (c *AccountUserProfilesPatchCall) Do(opts ...googleapi.CallOption) (*AccountUserProfile, error) {
16177	gensupport.SetOptions(c.urlParams_, opts...)
16178	res, err := c.doRequest("json")
16179	if res != nil && res.StatusCode == http.StatusNotModified {
16180		if res.Body != nil {
16181			res.Body.Close()
16182		}
16183		return nil, &googleapi.Error{
16184			Code:   res.StatusCode,
16185			Header: res.Header,
16186		}
16187	}
16188	if err != nil {
16189		return nil, err
16190	}
16191	defer googleapi.CloseBody(res)
16192	if err := googleapi.CheckResponse(res); err != nil {
16193		return nil, err
16194	}
16195	ret := &AccountUserProfile{
16196		ServerResponse: googleapi.ServerResponse{
16197			Header:         res.Header,
16198			HTTPStatusCode: res.StatusCode,
16199		},
16200	}
16201	target := &ret
16202	if err := gensupport.DecodeResponse(target, res); err != nil {
16203		return nil, err
16204	}
16205	return ret, nil
16206	// {
16207	//   "description": "Updates an existing account user profile. This method supports patch semantics.",
16208	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles",
16209	//   "httpMethod": "PATCH",
16210	//   "id": "dfareporting.accountUserProfiles.patch",
16211	//   "parameterOrder": [
16212	//     "profileId",
16213	//     "id"
16214	//   ],
16215	//   "parameters": {
16216	//     "id": {
16217	//       "description": "AccountUserProfile ID.",
16218	//       "format": "int64",
16219	//       "location": "query",
16220	//       "required": true,
16221	//       "type": "string"
16222	//     },
16223	//     "profileId": {
16224	//       "description": "User profile ID associated with this request.",
16225	//       "format": "int64",
16226	//       "location": "path",
16227	//       "required": true,
16228	//       "type": "string"
16229	//     }
16230	//   },
16231	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles",
16232	//   "request": {
16233	//     "$ref": "AccountUserProfile"
16234	//   },
16235	//   "response": {
16236	//     "$ref": "AccountUserProfile"
16237	//   },
16238	//   "scopes": [
16239	//     "https://www.googleapis.com/auth/dfatrafficking"
16240	//   ]
16241	// }
16242
16243}
16244
16245// method id "dfareporting.accountUserProfiles.update":
16246
16247type AccountUserProfilesUpdateCall struct {
16248	s                  *Service
16249	profileId          int64
16250	accountuserprofile *AccountUserProfile
16251	urlParams_         gensupport.URLParams
16252	ctx_               context.Context
16253	header_            http.Header
16254}
16255
16256// Update: Updates an existing account user profile.
16257//
16258// - profileId: User profile ID associated with this request.
16259func (r *AccountUserProfilesService) Update(profileId int64, accountuserprofile *AccountUserProfile) *AccountUserProfilesUpdateCall {
16260	c := &AccountUserProfilesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16261	c.profileId = profileId
16262	c.accountuserprofile = accountuserprofile
16263	return c
16264}
16265
16266// Fields allows partial responses to be retrieved. See
16267// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16268// for more information.
16269func (c *AccountUserProfilesUpdateCall) Fields(s ...googleapi.Field) *AccountUserProfilesUpdateCall {
16270	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16271	return c
16272}
16273
16274// Context sets the context to be used in this call's Do method. Any
16275// pending HTTP request will be aborted if the provided context is
16276// canceled.
16277func (c *AccountUserProfilesUpdateCall) Context(ctx context.Context) *AccountUserProfilesUpdateCall {
16278	c.ctx_ = ctx
16279	return c
16280}
16281
16282// Header returns an http.Header that can be modified by the caller to
16283// add HTTP headers to the request.
16284func (c *AccountUserProfilesUpdateCall) Header() http.Header {
16285	if c.header_ == nil {
16286		c.header_ = make(http.Header)
16287	}
16288	return c.header_
16289}
16290
16291func (c *AccountUserProfilesUpdateCall) doRequest(alt string) (*http.Response, error) {
16292	reqHeaders := make(http.Header)
16293	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
16294	for k, v := range c.header_ {
16295		reqHeaders[k] = v
16296	}
16297	reqHeaders.Set("User-Agent", c.s.userAgent())
16298	var body io.Reader = nil
16299	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountuserprofile)
16300	if err != nil {
16301		return nil, err
16302	}
16303	reqHeaders.Set("Content-Type", "application/json")
16304	c.urlParams_.Set("alt", alt)
16305	c.urlParams_.Set("prettyPrint", "false")
16306	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles")
16307	urls += "?" + c.urlParams_.Encode()
16308	req, err := http.NewRequest("PUT", urls, body)
16309	if err != nil {
16310		return nil, err
16311	}
16312	req.Header = reqHeaders
16313	googleapi.Expand(req.URL, map[string]string{
16314		"profileId": strconv.FormatInt(c.profileId, 10),
16315	})
16316	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16317}
16318
16319// Do executes the "dfareporting.accountUserProfiles.update" call.
16320// Exactly one of *AccountUserProfile or error will be non-nil. Any
16321// non-2xx status code is an error. Response headers are in either
16322// *AccountUserProfile.ServerResponse.Header or (if a response was
16323// returned at all) in error.(*googleapi.Error).Header. Use
16324// googleapi.IsNotModified to check whether the returned error was
16325// because http.StatusNotModified was returned.
16326func (c *AccountUserProfilesUpdateCall) Do(opts ...googleapi.CallOption) (*AccountUserProfile, error) {
16327	gensupport.SetOptions(c.urlParams_, opts...)
16328	res, err := c.doRequest("json")
16329	if res != nil && res.StatusCode == http.StatusNotModified {
16330		if res.Body != nil {
16331			res.Body.Close()
16332		}
16333		return nil, &googleapi.Error{
16334			Code:   res.StatusCode,
16335			Header: res.Header,
16336		}
16337	}
16338	if err != nil {
16339		return nil, err
16340	}
16341	defer googleapi.CloseBody(res)
16342	if err := googleapi.CheckResponse(res); err != nil {
16343		return nil, err
16344	}
16345	ret := &AccountUserProfile{
16346		ServerResponse: googleapi.ServerResponse{
16347			Header:         res.Header,
16348			HTTPStatusCode: res.StatusCode,
16349		},
16350	}
16351	target := &ret
16352	if err := gensupport.DecodeResponse(target, res); err != nil {
16353		return nil, err
16354	}
16355	return ret, nil
16356	// {
16357	//   "description": "Updates an existing account user profile.",
16358	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles",
16359	//   "httpMethod": "PUT",
16360	//   "id": "dfareporting.accountUserProfiles.update",
16361	//   "parameterOrder": [
16362	//     "profileId"
16363	//   ],
16364	//   "parameters": {
16365	//     "profileId": {
16366	//       "description": "User profile ID associated with this request.",
16367	//       "format": "int64",
16368	//       "location": "path",
16369	//       "required": true,
16370	//       "type": "string"
16371	//     }
16372	//   },
16373	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accountUserProfiles",
16374	//   "request": {
16375	//     "$ref": "AccountUserProfile"
16376	//   },
16377	//   "response": {
16378	//     "$ref": "AccountUserProfile"
16379	//   },
16380	//   "scopes": [
16381	//     "https://www.googleapis.com/auth/dfatrafficking"
16382	//   ]
16383	// }
16384
16385}
16386
16387// method id "dfareporting.accounts.get":
16388
16389type AccountsGetCall struct {
16390	s            *Service
16391	profileId    int64
16392	id           int64
16393	urlParams_   gensupport.URLParams
16394	ifNoneMatch_ string
16395	ctx_         context.Context
16396	header_      http.Header
16397}
16398
16399// Get: Gets one account by ID.
16400//
16401// - id: Account ID.
16402// - profileId: User profile ID associated with this request.
16403func (r *AccountsService) Get(profileId int64, id int64) *AccountsGetCall {
16404	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16405	c.profileId = profileId
16406	c.id = id
16407	return c
16408}
16409
16410// Fields allows partial responses to be retrieved. See
16411// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16412// for more information.
16413func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
16414	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16415	return c
16416}
16417
16418// IfNoneMatch sets the optional parameter which makes the operation
16419// fail if the object's ETag matches the given value. This is useful for
16420// getting updates only after the object has changed since the last
16421// request. Use googleapi.IsNotModified to check whether the response
16422// error from Do is the result of In-None-Match.
16423func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
16424	c.ifNoneMatch_ = entityTag
16425	return c
16426}
16427
16428// Context sets the context to be used in this call's Do method. Any
16429// pending HTTP request will be aborted if the provided context is
16430// canceled.
16431func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
16432	c.ctx_ = ctx
16433	return c
16434}
16435
16436// Header returns an http.Header that can be modified by the caller to
16437// add HTTP headers to the request.
16438func (c *AccountsGetCall) Header() http.Header {
16439	if c.header_ == nil {
16440		c.header_ = make(http.Header)
16441	}
16442	return c.header_
16443}
16444
16445func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
16446	reqHeaders := make(http.Header)
16447	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
16448	for k, v := range c.header_ {
16449		reqHeaders[k] = v
16450	}
16451	reqHeaders.Set("User-Agent", c.s.userAgent())
16452	if c.ifNoneMatch_ != "" {
16453		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16454	}
16455	var body io.Reader = nil
16456	c.urlParams_.Set("alt", alt)
16457	c.urlParams_.Set("prettyPrint", "false")
16458	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accounts/{id}")
16459	urls += "?" + c.urlParams_.Encode()
16460	req, err := http.NewRequest("GET", urls, body)
16461	if err != nil {
16462		return nil, err
16463	}
16464	req.Header = reqHeaders
16465	googleapi.Expand(req.URL, map[string]string{
16466		"profileId": strconv.FormatInt(c.profileId, 10),
16467		"id":        strconv.FormatInt(c.id, 10),
16468	})
16469	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16470}
16471
16472// Do executes the "dfareporting.accounts.get" call.
16473// Exactly one of *Account or error will be non-nil. Any non-2xx status
16474// code is an error. Response headers are in either
16475// *Account.ServerResponse.Header or (if a response was returned at all)
16476// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
16477// check whether the returned error was because http.StatusNotModified
16478// was returned.
16479func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
16480	gensupport.SetOptions(c.urlParams_, opts...)
16481	res, err := c.doRequest("json")
16482	if res != nil && res.StatusCode == http.StatusNotModified {
16483		if res.Body != nil {
16484			res.Body.Close()
16485		}
16486		return nil, &googleapi.Error{
16487			Code:   res.StatusCode,
16488			Header: res.Header,
16489		}
16490	}
16491	if err != nil {
16492		return nil, err
16493	}
16494	defer googleapi.CloseBody(res)
16495	if err := googleapi.CheckResponse(res); err != nil {
16496		return nil, err
16497	}
16498	ret := &Account{
16499		ServerResponse: googleapi.ServerResponse{
16500			Header:         res.Header,
16501			HTTPStatusCode: res.StatusCode,
16502		},
16503	}
16504	target := &ret
16505	if err := gensupport.DecodeResponse(target, res); err != nil {
16506		return nil, err
16507	}
16508	return ret, nil
16509	// {
16510	//   "description": "Gets one account by ID.",
16511	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accounts/{id}",
16512	//   "httpMethod": "GET",
16513	//   "id": "dfareporting.accounts.get",
16514	//   "parameterOrder": [
16515	//     "profileId",
16516	//     "id"
16517	//   ],
16518	//   "parameters": {
16519	//     "id": {
16520	//       "description": "Account ID.",
16521	//       "format": "int64",
16522	//       "location": "path",
16523	//       "required": true,
16524	//       "type": "string"
16525	//     },
16526	//     "profileId": {
16527	//       "description": "User profile ID associated with this request.",
16528	//       "format": "int64",
16529	//       "location": "path",
16530	//       "required": true,
16531	//       "type": "string"
16532	//     }
16533	//   },
16534	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accounts/{id}",
16535	//   "response": {
16536	//     "$ref": "Account"
16537	//   },
16538	//   "scopes": [
16539	//     "https://www.googleapis.com/auth/dfatrafficking"
16540	//   ]
16541	// }
16542
16543}
16544
16545// method id "dfareporting.accounts.list":
16546
16547type AccountsListCall struct {
16548	s            *Service
16549	profileId    int64
16550	urlParams_   gensupport.URLParams
16551	ifNoneMatch_ string
16552	ctx_         context.Context
16553	header_      http.Header
16554}
16555
16556// List: Retrieves the list of accounts, possibly filtered. This method
16557// supports paging.
16558//
16559// - profileId: User profile ID associated with this request.
16560func (r *AccountsService) List(profileId int64) *AccountsListCall {
16561	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16562	c.profileId = profileId
16563	return c
16564}
16565
16566// Active sets the optional parameter "active": Select only active
16567// accounts. Don't set this field to select both active and non-active
16568// accounts.
16569func (c *AccountsListCall) Active(active bool) *AccountsListCall {
16570	c.urlParams_.Set("active", fmt.Sprint(active))
16571	return c
16572}
16573
16574// Ids sets the optional parameter "ids": Select only accounts with
16575// these IDs.
16576func (c *AccountsListCall) Ids(ids ...int64) *AccountsListCall {
16577	var ids_ []string
16578	for _, v := range ids {
16579		ids_ = append(ids_, fmt.Sprint(v))
16580	}
16581	c.urlParams_.SetMulti("ids", ids_)
16582	return c
16583}
16584
16585// MaxResults sets the optional parameter "maxResults": Maximum number
16586// of results to return.
16587func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
16588	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
16589	return c
16590}
16591
16592// PageToken sets the optional parameter "pageToken": Value of the
16593// nextPageToken from the previous result page.
16594func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
16595	c.urlParams_.Set("pageToken", pageToken)
16596	return c
16597}
16598
16599// SearchString sets the optional parameter "searchString": Allows
16600// searching for objects by name or ID. Wildcards (*) are allowed. For
16601// example, "account*2015" will return objects with names like "account
16602// June 2015", "account April 2015", or simply "account 2015". Most of
16603// the searches also add wildcards implicitly at the start and the end
16604// of the search string. For example, a search string of "account" will
16605// match objects with name "my account", "account 2015", or simply
16606// "account".
16607func (c *AccountsListCall) SearchString(searchString string) *AccountsListCall {
16608	c.urlParams_.Set("searchString", searchString)
16609	return c
16610}
16611
16612// SortField sets the optional parameter "sortField": Field by which to
16613// sort the list.
16614//
16615// Possible values:
16616//   "ID" (default)
16617//   "NAME"
16618func (c *AccountsListCall) SortField(sortField string) *AccountsListCall {
16619	c.urlParams_.Set("sortField", sortField)
16620	return c
16621}
16622
16623// SortOrder sets the optional parameter "sortOrder": Order of sorted
16624// results.
16625//
16626// Possible values:
16627//   "ASCENDING" (default)
16628//   "DESCENDING"
16629func (c *AccountsListCall) SortOrder(sortOrder string) *AccountsListCall {
16630	c.urlParams_.Set("sortOrder", sortOrder)
16631	return c
16632}
16633
16634// Fields allows partial responses to be retrieved. See
16635// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16636// for more information.
16637func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
16638	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16639	return c
16640}
16641
16642// IfNoneMatch sets the optional parameter which makes the operation
16643// fail if the object's ETag matches the given value. This is useful for
16644// getting updates only after the object has changed since the last
16645// request. Use googleapi.IsNotModified to check whether the response
16646// error from Do is the result of In-None-Match.
16647func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
16648	c.ifNoneMatch_ = entityTag
16649	return c
16650}
16651
16652// Context sets the context to be used in this call's Do method. Any
16653// pending HTTP request will be aborted if the provided context is
16654// canceled.
16655func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
16656	c.ctx_ = ctx
16657	return c
16658}
16659
16660// Header returns an http.Header that can be modified by the caller to
16661// add HTTP headers to the request.
16662func (c *AccountsListCall) Header() http.Header {
16663	if c.header_ == nil {
16664		c.header_ = make(http.Header)
16665	}
16666	return c.header_
16667}
16668
16669func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
16670	reqHeaders := make(http.Header)
16671	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
16672	for k, v := range c.header_ {
16673		reqHeaders[k] = v
16674	}
16675	reqHeaders.Set("User-Agent", c.s.userAgent())
16676	if c.ifNoneMatch_ != "" {
16677		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16678	}
16679	var body io.Reader = nil
16680	c.urlParams_.Set("alt", alt)
16681	c.urlParams_.Set("prettyPrint", "false")
16682	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accounts")
16683	urls += "?" + c.urlParams_.Encode()
16684	req, err := http.NewRequest("GET", urls, body)
16685	if err != nil {
16686		return nil, err
16687	}
16688	req.Header = reqHeaders
16689	googleapi.Expand(req.URL, map[string]string{
16690		"profileId": strconv.FormatInt(c.profileId, 10),
16691	})
16692	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16693}
16694
16695// Do executes the "dfareporting.accounts.list" call.
16696// Exactly one of *AccountsListResponse or error will be non-nil. Any
16697// non-2xx status code is an error. Response headers are in either
16698// *AccountsListResponse.ServerResponse.Header or (if a response was
16699// returned at all) in error.(*googleapi.Error).Header. Use
16700// googleapi.IsNotModified to check whether the returned error was
16701// because http.StatusNotModified was returned.
16702func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
16703	gensupport.SetOptions(c.urlParams_, opts...)
16704	res, err := c.doRequest("json")
16705	if res != nil && res.StatusCode == http.StatusNotModified {
16706		if res.Body != nil {
16707			res.Body.Close()
16708		}
16709		return nil, &googleapi.Error{
16710			Code:   res.StatusCode,
16711			Header: res.Header,
16712		}
16713	}
16714	if err != nil {
16715		return nil, err
16716	}
16717	defer googleapi.CloseBody(res)
16718	if err := googleapi.CheckResponse(res); err != nil {
16719		return nil, err
16720	}
16721	ret := &AccountsListResponse{
16722		ServerResponse: googleapi.ServerResponse{
16723			Header:         res.Header,
16724			HTTPStatusCode: res.StatusCode,
16725		},
16726	}
16727	target := &ret
16728	if err := gensupport.DecodeResponse(target, res); err != nil {
16729		return nil, err
16730	}
16731	return ret, nil
16732	// {
16733	//   "description": "Retrieves the list of accounts, possibly filtered. This method supports paging.",
16734	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accounts",
16735	//   "httpMethod": "GET",
16736	//   "id": "dfareporting.accounts.list",
16737	//   "parameterOrder": [
16738	//     "profileId"
16739	//   ],
16740	//   "parameters": {
16741	//     "active": {
16742	//       "description": "Select only active accounts. Don't set this field to select both active and non-active accounts.",
16743	//       "location": "query",
16744	//       "type": "boolean"
16745	//     },
16746	//     "ids": {
16747	//       "description": "Select only accounts with these IDs.",
16748	//       "format": "int64",
16749	//       "location": "query",
16750	//       "repeated": true,
16751	//       "type": "string"
16752	//     },
16753	//     "maxResults": {
16754	//       "default": "1000",
16755	//       "description": "Maximum number of results to return.",
16756	//       "format": "int32",
16757	//       "location": "query",
16758	//       "maximum": "1000",
16759	//       "minimum": "0",
16760	//       "type": "integer"
16761	//     },
16762	//     "pageToken": {
16763	//       "description": "Value of the nextPageToken from the previous result page.",
16764	//       "location": "query",
16765	//       "type": "string"
16766	//     },
16767	//     "profileId": {
16768	//       "description": "User profile ID associated with this request.",
16769	//       "format": "int64",
16770	//       "location": "path",
16771	//       "required": true,
16772	//       "type": "string"
16773	//     },
16774	//     "searchString": {
16775	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"account*2015\" will return objects with names like \"account June 2015\", \"account April 2015\", or simply \"account 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"account\" will match objects with name \"my account\", \"account 2015\", or simply \"account\".",
16776	//       "location": "query",
16777	//       "type": "string"
16778	//     },
16779	//     "sortField": {
16780	//       "default": "ID",
16781	//       "description": "Field by which to sort the list.",
16782	//       "enum": [
16783	//         "ID",
16784	//         "NAME"
16785	//       ],
16786	//       "enumDescriptions": [
16787	//         "",
16788	//         ""
16789	//       ],
16790	//       "location": "query",
16791	//       "type": "string"
16792	//     },
16793	//     "sortOrder": {
16794	//       "default": "ASCENDING",
16795	//       "description": "Order of sorted results.",
16796	//       "enum": [
16797	//         "ASCENDING",
16798	//         "DESCENDING"
16799	//       ],
16800	//       "enumDescriptions": [
16801	//         "",
16802	//         ""
16803	//       ],
16804	//       "location": "query",
16805	//       "type": "string"
16806	//     }
16807	//   },
16808	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accounts",
16809	//   "response": {
16810	//     "$ref": "AccountsListResponse"
16811	//   },
16812	//   "scopes": [
16813	//     "https://www.googleapis.com/auth/dfatrafficking"
16814	//   ]
16815	// }
16816
16817}
16818
16819// Pages invokes f for each page of results.
16820// A non-nil error returned from f will halt the iteration.
16821// The provided context supersedes any context provided to the Context method.
16822func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
16823	c.ctx_ = ctx
16824	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
16825	for {
16826		x, err := c.Do()
16827		if err != nil {
16828			return err
16829		}
16830		if err := f(x); err != nil {
16831			return err
16832		}
16833		if x.NextPageToken == "" {
16834			return nil
16835		}
16836		c.PageToken(x.NextPageToken)
16837	}
16838}
16839
16840// method id "dfareporting.accounts.patch":
16841
16842type AccountsPatchCall struct {
16843	s          *Service
16844	profileId  int64
16845	account    *Account
16846	urlParams_ gensupport.URLParams
16847	ctx_       context.Context
16848	header_    http.Header
16849}
16850
16851// Patch: Updates an existing account. This method supports patch
16852// semantics.
16853//
16854// - id: Account ID.
16855// - profileId: User profile ID associated with this request.
16856func (r *AccountsService) Patch(profileId int64, id int64, account *Account) *AccountsPatchCall {
16857	c := &AccountsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16858	c.profileId = profileId
16859	c.urlParams_.Set("id", fmt.Sprint(id))
16860	c.account = account
16861	return c
16862}
16863
16864// Fields allows partial responses to be retrieved. See
16865// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16866// for more information.
16867func (c *AccountsPatchCall) Fields(s ...googleapi.Field) *AccountsPatchCall {
16868	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16869	return c
16870}
16871
16872// Context sets the context to be used in this call's Do method. Any
16873// pending HTTP request will be aborted if the provided context is
16874// canceled.
16875func (c *AccountsPatchCall) Context(ctx context.Context) *AccountsPatchCall {
16876	c.ctx_ = ctx
16877	return c
16878}
16879
16880// Header returns an http.Header that can be modified by the caller to
16881// add HTTP headers to the request.
16882func (c *AccountsPatchCall) Header() http.Header {
16883	if c.header_ == nil {
16884		c.header_ = make(http.Header)
16885	}
16886	return c.header_
16887}
16888
16889func (c *AccountsPatchCall) doRequest(alt string) (*http.Response, error) {
16890	reqHeaders := make(http.Header)
16891	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
16892	for k, v := range c.header_ {
16893		reqHeaders[k] = v
16894	}
16895	reqHeaders.Set("User-Agent", c.s.userAgent())
16896	var body io.Reader = nil
16897	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
16898	if err != nil {
16899		return nil, err
16900	}
16901	reqHeaders.Set("Content-Type", "application/json")
16902	c.urlParams_.Set("alt", alt)
16903	c.urlParams_.Set("prettyPrint", "false")
16904	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accounts")
16905	urls += "?" + c.urlParams_.Encode()
16906	req, err := http.NewRequest("PATCH", urls, body)
16907	if err != nil {
16908		return nil, err
16909	}
16910	req.Header = reqHeaders
16911	googleapi.Expand(req.URL, map[string]string{
16912		"profileId": strconv.FormatInt(c.profileId, 10),
16913	})
16914	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16915}
16916
16917// Do executes the "dfareporting.accounts.patch" call.
16918// Exactly one of *Account or error will be non-nil. Any non-2xx status
16919// code is an error. Response headers are in either
16920// *Account.ServerResponse.Header or (if a response was returned at all)
16921// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
16922// check whether the returned error was because http.StatusNotModified
16923// was returned.
16924func (c *AccountsPatchCall) Do(opts ...googleapi.CallOption) (*Account, error) {
16925	gensupport.SetOptions(c.urlParams_, opts...)
16926	res, err := c.doRequest("json")
16927	if res != nil && res.StatusCode == http.StatusNotModified {
16928		if res.Body != nil {
16929			res.Body.Close()
16930		}
16931		return nil, &googleapi.Error{
16932			Code:   res.StatusCode,
16933			Header: res.Header,
16934		}
16935	}
16936	if err != nil {
16937		return nil, err
16938	}
16939	defer googleapi.CloseBody(res)
16940	if err := googleapi.CheckResponse(res); err != nil {
16941		return nil, err
16942	}
16943	ret := &Account{
16944		ServerResponse: googleapi.ServerResponse{
16945			Header:         res.Header,
16946			HTTPStatusCode: res.StatusCode,
16947		},
16948	}
16949	target := &ret
16950	if err := gensupport.DecodeResponse(target, res); err != nil {
16951		return nil, err
16952	}
16953	return ret, nil
16954	// {
16955	//   "description": "Updates an existing account. This method supports patch semantics.",
16956	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accounts",
16957	//   "httpMethod": "PATCH",
16958	//   "id": "dfareporting.accounts.patch",
16959	//   "parameterOrder": [
16960	//     "profileId",
16961	//     "id"
16962	//   ],
16963	//   "parameters": {
16964	//     "id": {
16965	//       "description": "Account ID.",
16966	//       "format": "int64",
16967	//       "location": "query",
16968	//       "required": true,
16969	//       "type": "string"
16970	//     },
16971	//     "profileId": {
16972	//       "description": "User profile ID associated with this request.",
16973	//       "format": "int64",
16974	//       "location": "path",
16975	//       "required": true,
16976	//       "type": "string"
16977	//     }
16978	//   },
16979	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accounts",
16980	//   "request": {
16981	//     "$ref": "Account"
16982	//   },
16983	//   "response": {
16984	//     "$ref": "Account"
16985	//   },
16986	//   "scopes": [
16987	//     "https://www.googleapis.com/auth/dfatrafficking"
16988	//   ]
16989	// }
16990
16991}
16992
16993// method id "dfareporting.accounts.update":
16994
16995type AccountsUpdateCall struct {
16996	s          *Service
16997	profileId  int64
16998	account    *Account
16999	urlParams_ gensupport.URLParams
17000	ctx_       context.Context
17001	header_    http.Header
17002}
17003
17004// Update: Updates an existing account.
17005//
17006// - profileId: User profile ID associated with this request.
17007func (r *AccountsService) Update(profileId int64, account *Account) *AccountsUpdateCall {
17008	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17009	c.profileId = profileId
17010	c.account = account
17011	return c
17012}
17013
17014// Fields allows partial responses to be retrieved. See
17015// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17016// for more information.
17017func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
17018	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17019	return c
17020}
17021
17022// Context sets the context to be used in this call's Do method. Any
17023// pending HTTP request will be aborted if the provided context is
17024// canceled.
17025func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
17026	c.ctx_ = ctx
17027	return c
17028}
17029
17030// Header returns an http.Header that can be modified by the caller to
17031// add HTTP headers to the request.
17032func (c *AccountsUpdateCall) Header() http.Header {
17033	if c.header_ == nil {
17034		c.header_ = make(http.Header)
17035	}
17036	return c.header_
17037}
17038
17039func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
17040	reqHeaders := make(http.Header)
17041	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17042	for k, v := range c.header_ {
17043		reqHeaders[k] = v
17044	}
17045	reqHeaders.Set("User-Agent", c.s.userAgent())
17046	var body io.Reader = nil
17047	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
17048	if err != nil {
17049		return nil, err
17050	}
17051	reqHeaders.Set("Content-Type", "application/json")
17052	c.urlParams_.Set("alt", alt)
17053	c.urlParams_.Set("prettyPrint", "false")
17054	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/accounts")
17055	urls += "?" + c.urlParams_.Encode()
17056	req, err := http.NewRequest("PUT", urls, body)
17057	if err != nil {
17058		return nil, err
17059	}
17060	req.Header = reqHeaders
17061	googleapi.Expand(req.URL, map[string]string{
17062		"profileId": strconv.FormatInt(c.profileId, 10),
17063	})
17064	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17065}
17066
17067// Do executes the "dfareporting.accounts.update" call.
17068// Exactly one of *Account or error will be non-nil. Any non-2xx status
17069// code is an error. Response headers are in either
17070// *Account.ServerResponse.Header or (if a response was returned at all)
17071// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
17072// check whether the returned error was because http.StatusNotModified
17073// was returned.
17074func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
17075	gensupport.SetOptions(c.urlParams_, opts...)
17076	res, err := c.doRequest("json")
17077	if res != nil && res.StatusCode == http.StatusNotModified {
17078		if res.Body != nil {
17079			res.Body.Close()
17080		}
17081		return nil, &googleapi.Error{
17082			Code:   res.StatusCode,
17083			Header: res.Header,
17084		}
17085	}
17086	if err != nil {
17087		return nil, err
17088	}
17089	defer googleapi.CloseBody(res)
17090	if err := googleapi.CheckResponse(res); err != nil {
17091		return nil, err
17092	}
17093	ret := &Account{
17094		ServerResponse: googleapi.ServerResponse{
17095			Header:         res.Header,
17096			HTTPStatusCode: res.StatusCode,
17097		},
17098	}
17099	target := &ret
17100	if err := gensupport.DecodeResponse(target, res); err != nil {
17101		return nil, err
17102	}
17103	return ret, nil
17104	// {
17105	//   "description": "Updates an existing account.",
17106	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/accounts",
17107	//   "httpMethod": "PUT",
17108	//   "id": "dfareporting.accounts.update",
17109	//   "parameterOrder": [
17110	//     "profileId"
17111	//   ],
17112	//   "parameters": {
17113	//     "profileId": {
17114	//       "description": "User profile ID associated with this request.",
17115	//       "format": "int64",
17116	//       "location": "path",
17117	//       "required": true,
17118	//       "type": "string"
17119	//     }
17120	//   },
17121	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/accounts",
17122	//   "request": {
17123	//     "$ref": "Account"
17124	//   },
17125	//   "response": {
17126	//     "$ref": "Account"
17127	//   },
17128	//   "scopes": [
17129	//     "https://www.googleapis.com/auth/dfatrafficking"
17130	//   ]
17131	// }
17132
17133}
17134
17135// method id "dfareporting.ads.get":
17136
17137type AdsGetCall struct {
17138	s            *Service
17139	profileId    int64
17140	id           int64
17141	urlParams_   gensupport.URLParams
17142	ifNoneMatch_ string
17143	ctx_         context.Context
17144	header_      http.Header
17145}
17146
17147// Get: Gets one ad by ID.
17148//
17149// - id: Ad ID.
17150// - profileId: User profile ID associated with this request.
17151func (r *AdsService) Get(profileId int64, id int64) *AdsGetCall {
17152	c := &AdsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17153	c.profileId = profileId
17154	c.id = id
17155	return c
17156}
17157
17158// Fields allows partial responses to be retrieved. See
17159// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17160// for more information.
17161func (c *AdsGetCall) Fields(s ...googleapi.Field) *AdsGetCall {
17162	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17163	return c
17164}
17165
17166// IfNoneMatch sets the optional parameter which makes the operation
17167// fail if the object's ETag matches the given value. This is useful for
17168// getting updates only after the object has changed since the last
17169// request. Use googleapi.IsNotModified to check whether the response
17170// error from Do is the result of In-None-Match.
17171func (c *AdsGetCall) IfNoneMatch(entityTag string) *AdsGetCall {
17172	c.ifNoneMatch_ = entityTag
17173	return c
17174}
17175
17176// Context sets the context to be used in this call's Do method. Any
17177// pending HTTP request will be aborted if the provided context is
17178// canceled.
17179func (c *AdsGetCall) Context(ctx context.Context) *AdsGetCall {
17180	c.ctx_ = ctx
17181	return c
17182}
17183
17184// Header returns an http.Header that can be modified by the caller to
17185// add HTTP headers to the request.
17186func (c *AdsGetCall) Header() http.Header {
17187	if c.header_ == nil {
17188		c.header_ = make(http.Header)
17189	}
17190	return c.header_
17191}
17192
17193func (c *AdsGetCall) doRequest(alt string) (*http.Response, error) {
17194	reqHeaders := make(http.Header)
17195	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17196	for k, v := range c.header_ {
17197		reqHeaders[k] = v
17198	}
17199	reqHeaders.Set("User-Agent", c.s.userAgent())
17200	if c.ifNoneMatch_ != "" {
17201		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17202	}
17203	var body io.Reader = nil
17204	c.urlParams_.Set("alt", alt)
17205	c.urlParams_.Set("prettyPrint", "false")
17206	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/ads/{id}")
17207	urls += "?" + c.urlParams_.Encode()
17208	req, err := http.NewRequest("GET", urls, body)
17209	if err != nil {
17210		return nil, err
17211	}
17212	req.Header = reqHeaders
17213	googleapi.Expand(req.URL, map[string]string{
17214		"profileId": strconv.FormatInt(c.profileId, 10),
17215		"id":        strconv.FormatInt(c.id, 10),
17216	})
17217	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17218}
17219
17220// Do executes the "dfareporting.ads.get" call.
17221// Exactly one of *Ad or error will be non-nil. Any non-2xx status code
17222// is an error. Response headers are in either *Ad.ServerResponse.Header
17223// or (if a response was returned at all) in
17224// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17225// whether the returned error was because http.StatusNotModified was
17226// returned.
17227func (c *AdsGetCall) Do(opts ...googleapi.CallOption) (*Ad, error) {
17228	gensupport.SetOptions(c.urlParams_, opts...)
17229	res, err := c.doRequest("json")
17230	if res != nil && res.StatusCode == http.StatusNotModified {
17231		if res.Body != nil {
17232			res.Body.Close()
17233		}
17234		return nil, &googleapi.Error{
17235			Code:   res.StatusCode,
17236			Header: res.Header,
17237		}
17238	}
17239	if err != nil {
17240		return nil, err
17241	}
17242	defer googleapi.CloseBody(res)
17243	if err := googleapi.CheckResponse(res); err != nil {
17244		return nil, err
17245	}
17246	ret := &Ad{
17247		ServerResponse: googleapi.ServerResponse{
17248			Header:         res.Header,
17249			HTTPStatusCode: res.StatusCode,
17250		},
17251	}
17252	target := &ret
17253	if err := gensupport.DecodeResponse(target, res); err != nil {
17254		return nil, err
17255	}
17256	return ret, nil
17257	// {
17258	//   "description": "Gets one ad by ID.",
17259	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/ads/{id}",
17260	//   "httpMethod": "GET",
17261	//   "id": "dfareporting.ads.get",
17262	//   "parameterOrder": [
17263	//     "profileId",
17264	//     "id"
17265	//   ],
17266	//   "parameters": {
17267	//     "id": {
17268	//       "description": "Ad ID.",
17269	//       "format": "int64",
17270	//       "location": "path",
17271	//       "required": true,
17272	//       "type": "string"
17273	//     },
17274	//     "profileId": {
17275	//       "description": "User profile ID associated with this request.",
17276	//       "format": "int64",
17277	//       "location": "path",
17278	//       "required": true,
17279	//       "type": "string"
17280	//     }
17281	//   },
17282	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/ads/{id}",
17283	//   "response": {
17284	//     "$ref": "Ad"
17285	//   },
17286	//   "scopes": [
17287	//     "https://www.googleapis.com/auth/dfatrafficking"
17288	//   ]
17289	// }
17290
17291}
17292
17293// method id "dfareporting.ads.insert":
17294
17295type AdsInsertCall struct {
17296	s          *Service
17297	profileId  int64
17298	ad         *Ad
17299	urlParams_ gensupport.URLParams
17300	ctx_       context.Context
17301	header_    http.Header
17302}
17303
17304// Insert: Inserts a new ad.
17305//
17306// - profileId: User profile ID associated with this request.
17307func (r *AdsService) Insert(profileId int64, ad *Ad) *AdsInsertCall {
17308	c := &AdsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17309	c.profileId = profileId
17310	c.ad = ad
17311	return c
17312}
17313
17314// Fields allows partial responses to be retrieved. See
17315// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17316// for more information.
17317func (c *AdsInsertCall) Fields(s ...googleapi.Field) *AdsInsertCall {
17318	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17319	return c
17320}
17321
17322// Context sets the context to be used in this call's Do method. Any
17323// pending HTTP request will be aborted if the provided context is
17324// canceled.
17325func (c *AdsInsertCall) Context(ctx context.Context) *AdsInsertCall {
17326	c.ctx_ = ctx
17327	return c
17328}
17329
17330// Header returns an http.Header that can be modified by the caller to
17331// add HTTP headers to the request.
17332func (c *AdsInsertCall) Header() http.Header {
17333	if c.header_ == nil {
17334		c.header_ = make(http.Header)
17335	}
17336	return c.header_
17337}
17338
17339func (c *AdsInsertCall) doRequest(alt string) (*http.Response, error) {
17340	reqHeaders := make(http.Header)
17341	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17342	for k, v := range c.header_ {
17343		reqHeaders[k] = v
17344	}
17345	reqHeaders.Set("User-Agent", c.s.userAgent())
17346	var body io.Reader = nil
17347	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ad)
17348	if err != nil {
17349		return nil, err
17350	}
17351	reqHeaders.Set("Content-Type", "application/json")
17352	c.urlParams_.Set("alt", alt)
17353	c.urlParams_.Set("prettyPrint", "false")
17354	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/ads")
17355	urls += "?" + c.urlParams_.Encode()
17356	req, err := http.NewRequest("POST", urls, body)
17357	if err != nil {
17358		return nil, err
17359	}
17360	req.Header = reqHeaders
17361	googleapi.Expand(req.URL, map[string]string{
17362		"profileId": strconv.FormatInt(c.profileId, 10),
17363	})
17364	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17365}
17366
17367// Do executes the "dfareporting.ads.insert" call.
17368// Exactly one of *Ad or error will be non-nil. Any non-2xx status code
17369// is an error. Response headers are in either *Ad.ServerResponse.Header
17370// or (if a response was returned at all) in
17371// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17372// whether the returned error was because http.StatusNotModified was
17373// returned.
17374func (c *AdsInsertCall) Do(opts ...googleapi.CallOption) (*Ad, error) {
17375	gensupport.SetOptions(c.urlParams_, opts...)
17376	res, err := c.doRequest("json")
17377	if res != nil && res.StatusCode == http.StatusNotModified {
17378		if res.Body != nil {
17379			res.Body.Close()
17380		}
17381		return nil, &googleapi.Error{
17382			Code:   res.StatusCode,
17383			Header: res.Header,
17384		}
17385	}
17386	if err != nil {
17387		return nil, err
17388	}
17389	defer googleapi.CloseBody(res)
17390	if err := googleapi.CheckResponse(res); err != nil {
17391		return nil, err
17392	}
17393	ret := &Ad{
17394		ServerResponse: googleapi.ServerResponse{
17395			Header:         res.Header,
17396			HTTPStatusCode: res.StatusCode,
17397		},
17398	}
17399	target := &ret
17400	if err := gensupport.DecodeResponse(target, res); err != nil {
17401		return nil, err
17402	}
17403	return ret, nil
17404	// {
17405	//   "description": "Inserts a new ad.",
17406	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/ads",
17407	//   "httpMethod": "POST",
17408	//   "id": "dfareporting.ads.insert",
17409	//   "parameterOrder": [
17410	//     "profileId"
17411	//   ],
17412	//   "parameters": {
17413	//     "profileId": {
17414	//       "description": "User profile ID associated with this request.",
17415	//       "format": "int64",
17416	//       "location": "path",
17417	//       "required": true,
17418	//       "type": "string"
17419	//     }
17420	//   },
17421	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/ads",
17422	//   "request": {
17423	//     "$ref": "Ad"
17424	//   },
17425	//   "response": {
17426	//     "$ref": "Ad"
17427	//   },
17428	//   "scopes": [
17429	//     "https://www.googleapis.com/auth/dfatrafficking"
17430	//   ]
17431	// }
17432
17433}
17434
17435// method id "dfareporting.ads.list":
17436
17437type AdsListCall struct {
17438	s            *Service
17439	profileId    int64
17440	urlParams_   gensupport.URLParams
17441	ifNoneMatch_ string
17442	ctx_         context.Context
17443	header_      http.Header
17444}
17445
17446// List: Retrieves a list of ads, possibly filtered. This method
17447// supports paging.
17448//
17449// - profileId: User profile ID associated with this request.
17450func (r *AdsService) List(profileId int64) *AdsListCall {
17451	c := &AdsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17452	c.profileId = profileId
17453	return c
17454}
17455
17456// Active sets the optional parameter "active": Select only active ads.
17457func (c *AdsListCall) Active(active bool) *AdsListCall {
17458	c.urlParams_.Set("active", fmt.Sprint(active))
17459	return c
17460}
17461
17462// AdvertiserId sets the optional parameter "advertiserId": Select only
17463// ads with this advertiser ID.
17464func (c *AdsListCall) AdvertiserId(advertiserId int64) *AdsListCall {
17465	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
17466	return c
17467}
17468
17469// Archived sets the optional parameter "archived": Select only archived
17470// ads.
17471func (c *AdsListCall) Archived(archived bool) *AdsListCall {
17472	c.urlParams_.Set("archived", fmt.Sprint(archived))
17473	return c
17474}
17475
17476// AudienceSegmentIds sets the optional parameter "audienceSegmentIds":
17477// Select only ads with these audience segment IDs.
17478func (c *AdsListCall) AudienceSegmentIds(audienceSegmentIds ...int64) *AdsListCall {
17479	var audienceSegmentIds_ []string
17480	for _, v := range audienceSegmentIds {
17481		audienceSegmentIds_ = append(audienceSegmentIds_, fmt.Sprint(v))
17482	}
17483	c.urlParams_.SetMulti("audienceSegmentIds", audienceSegmentIds_)
17484	return c
17485}
17486
17487// CampaignIds sets the optional parameter "campaignIds": Select only
17488// ads with these campaign IDs.
17489func (c *AdsListCall) CampaignIds(campaignIds ...int64) *AdsListCall {
17490	var campaignIds_ []string
17491	for _, v := range campaignIds {
17492		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
17493	}
17494	c.urlParams_.SetMulti("campaignIds", campaignIds_)
17495	return c
17496}
17497
17498// Compatibility sets the optional parameter "compatibility": Select
17499// default ads with the specified compatibility. Applicable when type is
17500// AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to
17501// rendering either on desktop or on mobile devices for regular or
17502// interstitial ads, respectively. APP and APP_INTERSTITIAL are for
17503// rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an
17504// in-stream video ads developed with the VAST standard.
17505//
17506// Possible values:
17507//   "DISPLAY"
17508//   "DISPLAY_INTERSTITIAL"
17509//   "APP"
17510//   "APP_INTERSTITIAL"
17511//   "IN_STREAM_VIDEO"
17512//   "IN_STREAM_AUDIO"
17513func (c *AdsListCall) Compatibility(compatibility string) *AdsListCall {
17514	c.urlParams_.Set("compatibility", compatibility)
17515	return c
17516}
17517
17518// CreativeIds sets the optional parameter "creativeIds": Select only
17519// ads with these creative IDs assigned.
17520func (c *AdsListCall) CreativeIds(creativeIds ...int64) *AdsListCall {
17521	var creativeIds_ []string
17522	for _, v := range creativeIds {
17523		creativeIds_ = append(creativeIds_, fmt.Sprint(v))
17524	}
17525	c.urlParams_.SetMulti("creativeIds", creativeIds_)
17526	return c
17527}
17528
17529// CreativeOptimizationConfigurationIds sets the optional parameter
17530// "creativeOptimizationConfigurationIds": Select only ads with these
17531// creative optimization configuration IDs.
17532func (c *AdsListCall) CreativeOptimizationConfigurationIds(creativeOptimizationConfigurationIds ...int64) *AdsListCall {
17533	var creativeOptimizationConfigurationIds_ []string
17534	for _, v := range creativeOptimizationConfigurationIds {
17535		creativeOptimizationConfigurationIds_ = append(creativeOptimizationConfigurationIds_, fmt.Sprint(v))
17536	}
17537	c.urlParams_.SetMulti("creativeOptimizationConfigurationIds", creativeOptimizationConfigurationIds_)
17538	return c
17539}
17540
17541// DynamicClickTracker sets the optional parameter
17542// "dynamicClickTracker": Select only dynamic click trackers. Applicable
17543// when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click
17544// trackers. If false, select static click trackers. Leave unset to
17545// select both.
17546func (c *AdsListCall) DynamicClickTracker(dynamicClickTracker bool) *AdsListCall {
17547	c.urlParams_.Set("dynamicClickTracker", fmt.Sprint(dynamicClickTracker))
17548	return c
17549}
17550
17551// Ids sets the optional parameter "ids": Select only ads with these
17552// IDs.
17553func (c *AdsListCall) Ids(ids ...int64) *AdsListCall {
17554	var ids_ []string
17555	for _, v := range ids {
17556		ids_ = append(ids_, fmt.Sprint(v))
17557	}
17558	c.urlParams_.SetMulti("ids", ids_)
17559	return c
17560}
17561
17562// LandingPageIds sets the optional parameter "landingPageIds": Select
17563// only ads with these landing page IDs.
17564func (c *AdsListCall) LandingPageIds(landingPageIds ...int64) *AdsListCall {
17565	var landingPageIds_ []string
17566	for _, v := range landingPageIds {
17567		landingPageIds_ = append(landingPageIds_, fmt.Sprint(v))
17568	}
17569	c.urlParams_.SetMulti("landingPageIds", landingPageIds_)
17570	return c
17571}
17572
17573// MaxResults sets the optional parameter "maxResults": Maximum number
17574// of results to return.
17575func (c *AdsListCall) MaxResults(maxResults int64) *AdsListCall {
17576	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
17577	return c
17578}
17579
17580// OverriddenEventTagId sets the optional parameter
17581// "overriddenEventTagId": Select only ads with this event tag override
17582// ID.
17583func (c *AdsListCall) OverriddenEventTagId(overriddenEventTagId int64) *AdsListCall {
17584	c.urlParams_.Set("overriddenEventTagId", fmt.Sprint(overriddenEventTagId))
17585	return c
17586}
17587
17588// PageToken sets the optional parameter "pageToken": Value of the
17589// nextPageToken from the previous result page.
17590func (c *AdsListCall) PageToken(pageToken string) *AdsListCall {
17591	c.urlParams_.Set("pageToken", pageToken)
17592	return c
17593}
17594
17595// PlacementIds sets the optional parameter "placementIds": Select only
17596// ads with these placement IDs assigned.
17597func (c *AdsListCall) PlacementIds(placementIds ...int64) *AdsListCall {
17598	var placementIds_ []string
17599	for _, v := range placementIds {
17600		placementIds_ = append(placementIds_, fmt.Sprint(v))
17601	}
17602	c.urlParams_.SetMulti("placementIds", placementIds_)
17603	return c
17604}
17605
17606// RemarketingListIds sets the optional parameter "remarketingListIds":
17607// Select only ads whose list targeting expression use these remarketing
17608// list IDs.
17609func (c *AdsListCall) RemarketingListIds(remarketingListIds ...int64) *AdsListCall {
17610	var remarketingListIds_ []string
17611	for _, v := range remarketingListIds {
17612		remarketingListIds_ = append(remarketingListIds_, fmt.Sprint(v))
17613	}
17614	c.urlParams_.SetMulti("remarketingListIds", remarketingListIds_)
17615	return c
17616}
17617
17618// SearchString sets the optional parameter "searchString": Allows
17619// searching for objects by name or ID. Wildcards (*) are allowed. For
17620// example, "ad*2015" will return objects with names like "ad June
17621// 2015", "ad April 2015", or simply "ad 2015". Most of the searches
17622// also add wildcards implicitly at the start and the end of the search
17623// string. For example, a search string of "ad" will match objects with
17624// name "my ad", "ad 2015", or simply "ad".
17625func (c *AdsListCall) SearchString(searchString string) *AdsListCall {
17626	c.urlParams_.Set("searchString", searchString)
17627	return c
17628}
17629
17630// SizeIds sets the optional parameter "sizeIds": Select only ads with
17631// these size IDs.
17632func (c *AdsListCall) SizeIds(sizeIds ...int64) *AdsListCall {
17633	var sizeIds_ []string
17634	for _, v := range sizeIds {
17635		sizeIds_ = append(sizeIds_, fmt.Sprint(v))
17636	}
17637	c.urlParams_.SetMulti("sizeIds", sizeIds_)
17638	return c
17639}
17640
17641// SortField sets the optional parameter "sortField": Field by which to
17642// sort the list.
17643//
17644// Possible values:
17645//   "ID" (default)
17646//   "NAME"
17647func (c *AdsListCall) SortField(sortField string) *AdsListCall {
17648	c.urlParams_.Set("sortField", sortField)
17649	return c
17650}
17651
17652// SortOrder sets the optional parameter "sortOrder": Order of sorted
17653// results.
17654//
17655// Possible values:
17656//   "ASCENDING" (default)
17657//   "DESCENDING"
17658func (c *AdsListCall) SortOrder(sortOrder string) *AdsListCall {
17659	c.urlParams_.Set("sortOrder", sortOrder)
17660	return c
17661}
17662
17663// SslCompliant sets the optional parameter "sslCompliant": Select only
17664// ads that are SSL-compliant.
17665func (c *AdsListCall) SslCompliant(sslCompliant bool) *AdsListCall {
17666	c.urlParams_.Set("sslCompliant", fmt.Sprint(sslCompliant))
17667	return c
17668}
17669
17670// SslRequired sets the optional parameter "sslRequired": Select only
17671// ads that require SSL.
17672func (c *AdsListCall) SslRequired(sslRequired bool) *AdsListCall {
17673	c.urlParams_.Set("sslRequired", fmt.Sprint(sslRequired))
17674	return c
17675}
17676
17677// Type sets the optional parameter "type": Select only ads with these
17678// types.
17679//
17680// Possible values:
17681//   "AD_SERVING_STANDARD_AD"
17682//   "AD_SERVING_DEFAULT_AD"
17683//   "AD_SERVING_CLICK_TRACKER"
17684//   "AD_SERVING_TRACKING"
17685//   "AD_SERVING_BRAND_SAFE_AD"
17686func (c *AdsListCall) Type(type_ ...string) *AdsListCall {
17687	c.urlParams_.SetMulti("type", append([]string{}, type_...))
17688	return c
17689}
17690
17691// Fields allows partial responses to be retrieved. See
17692// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17693// for more information.
17694func (c *AdsListCall) Fields(s ...googleapi.Field) *AdsListCall {
17695	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17696	return c
17697}
17698
17699// IfNoneMatch sets the optional parameter which makes the operation
17700// fail if the object's ETag matches the given value. This is useful for
17701// getting updates only after the object has changed since the last
17702// request. Use googleapi.IsNotModified to check whether the response
17703// error from Do is the result of In-None-Match.
17704func (c *AdsListCall) IfNoneMatch(entityTag string) *AdsListCall {
17705	c.ifNoneMatch_ = entityTag
17706	return c
17707}
17708
17709// Context sets the context to be used in this call's Do method. Any
17710// pending HTTP request will be aborted if the provided context is
17711// canceled.
17712func (c *AdsListCall) Context(ctx context.Context) *AdsListCall {
17713	c.ctx_ = ctx
17714	return c
17715}
17716
17717// Header returns an http.Header that can be modified by the caller to
17718// add HTTP headers to the request.
17719func (c *AdsListCall) Header() http.Header {
17720	if c.header_ == nil {
17721		c.header_ = make(http.Header)
17722	}
17723	return c.header_
17724}
17725
17726func (c *AdsListCall) doRequest(alt string) (*http.Response, error) {
17727	reqHeaders := make(http.Header)
17728	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17729	for k, v := range c.header_ {
17730		reqHeaders[k] = v
17731	}
17732	reqHeaders.Set("User-Agent", c.s.userAgent())
17733	if c.ifNoneMatch_ != "" {
17734		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17735	}
17736	var body io.Reader = nil
17737	c.urlParams_.Set("alt", alt)
17738	c.urlParams_.Set("prettyPrint", "false")
17739	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/ads")
17740	urls += "?" + c.urlParams_.Encode()
17741	req, err := http.NewRequest("GET", urls, body)
17742	if err != nil {
17743		return nil, err
17744	}
17745	req.Header = reqHeaders
17746	googleapi.Expand(req.URL, map[string]string{
17747		"profileId": strconv.FormatInt(c.profileId, 10),
17748	})
17749	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17750}
17751
17752// Do executes the "dfareporting.ads.list" call.
17753// Exactly one of *AdsListResponse or error will be non-nil. Any non-2xx
17754// status code is an error. Response headers are in either
17755// *AdsListResponse.ServerResponse.Header or (if a response was returned
17756// at all) in error.(*googleapi.Error).Header. Use
17757// googleapi.IsNotModified to check whether the returned error was
17758// because http.StatusNotModified was returned.
17759func (c *AdsListCall) Do(opts ...googleapi.CallOption) (*AdsListResponse, error) {
17760	gensupport.SetOptions(c.urlParams_, opts...)
17761	res, err := c.doRequest("json")
17762	if res != nil && res.StatusCode == http.StatusNotModified {
17763		if res.Body != nil {
17764			res.Body.Close()
17765		}
17766		return nil, &googleapi.Error{
17767			Code:   res.StatusCode,
17768			Header: res.Header,
17769		}
17770	}
17771	if err != nil {
17772		return nil, err
17773	}
17774	defer googleapi.CloseBody(res)
17775	if err := googleapi.CheckResponse(res); err != nil {
17776		return nil, err
17777	}
17778	ret := &AdsListResponse{
17779		ServerResponse: googleapi.ServerResponse{
17780			Header:         res.Header,
17781			HTTPStatusCode: res.StatusCode,
17782		},
17783	}
17784	target := &ret
17785	if err := gensupport.DecodeResponse(target, res); err != nil {
17786		return nil, err
17787	}
17788	return ret, nil
17789	// {
17790	//   "description": "Retrieves a list of ads, possibly filtered. This method supports paging.",
17791	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/ads",
17792	//   "httpMethod": "GET",
17793	//   "id": "dfareporting.ads.list",
17794	//   "parameterOrder": [
17795	//     "profileId"
17796	//   ],
17797	//   "parameters": {
17798	//     "active": {
17799	//       "description": "Select only active ads.",
17800	//       "location": "query",
17801	//       "type": "boolean"
17802	//     },
17803	//     "advertiserId": {
17804	//       "description": "Select only ads with this advertiser ID.",
17805	//       "format": "int64",
17806	//       "location": "query",
17807	//       "type": "string"
17808	//     },
17809	//     "archived": {
17810	//       "description": "Select only archived ads.",
17811	//       "location": "query",
17812	//       "type": "boolean"
17813	//     },
17814	//     "audienceSegmentIds": {
17815	//       "description": "Select only ads with these audience segment IDs.",
17816	//       "format": "int64",
17817	//       "location": "query",
17818	//       "repeated": true,
17819	//       "type": "string"
17820	//     },
17821	//     "campaignIds": {
17822	//       "description": "Select only ads with these campaign IDs.",
17823	//       "format": "int64",
17824	//       "location": "query",
17825	//       "repeated": true,
17826	//       "type": "string"
17827	//     },
17828	//     "compatibility": {
17829	//       "description": "Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.",
17830	//       "enum": [
17831	//         "DISPLAY",
17832	//         "DISPLAY_INTERSTITIAL",
17833	//         "APP",
17834	//         "APP_INTERSTITIAL",
17835	//         "IN_STREAM_VIDEO",
17836	//         "IN_STREAM_AUDIO"
17837	//       ],
17838	//       "enumDescriptions": [
17839	//         "",
17840	//         "",
17841	//         "",
17842	//         "",
17843	//         "",
17844	//         ""
17845	//       ],
17846	//       "location": "query",
17847	//       "type": "string"
17848	//     },
17849	//     "creativeIds": {
17850	//       "description": "Select only ads with these creative IDs assigned.",
17851	//       "format": "int64",
17852	//       "location": "query",
17853	//       "repeated": true,
17854	//       "type": "string"
17855	//     },
17856	//     "creativeOptimizationConfigurationIds": {
17857	//       "description": "Select only ads with these creative optimization configuration IDs.",
17858	//       "format": "int64",
17859	//       "location": "query",
17860	//       "repeated": true,
17861	//       "type": "string"
17862	//     },
17863	//     "dynamicClickTracker": {
17864	//       "description": "Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.",
17865	//       "location": "query",
17866	//       "type": "boolean"
17867	//     },
17868	//     "ids": {
17869	//       "description": "Select only ads with these IDs.",
17870	//       "format": "int64",
17871	//       "location": "query",
17872	//       "repeated": true,
17873	//       "type": "string"
17874	//     },
17875	//     "landingPageIds": {
17876	//       "description": "Select only ads with these landing page IDs.",
17877	//       "format": "int64",
17878	//       "location": "query",
17879	//       "repeated": true,
17880	//       "type": "string"
17881	//     },
17882	//     "maxResults": {
17883	//       "default": "1000",
17884	//       "description": "Maximum number of results to return.",
17885	//       "format": "int32",
17886	//       "location": "query",
17887	//       "maximum": "1000",
17888	//       "minimum": "0",
17889	//       "type": "integer"
17890	//     },
17891	//     "overriddenEventTagId": {
17892	//       "description": "Select only ads with this event tag override ID.",
17893	//       "format": "int64",
17894	//       "location": "query",
17895	//       "type": "string"
17896	//     },
17897	//     "pageToken": {
17898	//       "description": "Value of the nextPageToken from the previous result page.",
17899	//       "location": "query",
17900	//       "type": "string"
17901	//     },
17902	//     "placementIds": {
17903	//       "description": "Select only ads with these placement IDs assigned.",
17904	//       "format": "int64",
17905	//       "location": "query",
17906	//       "repeated": true,
17907	//       "type": "string"
17908	//     },
17909	//     "profileId": {
17910	//       "description": "User profile ID associated with this request.",
17911	//       "format": "int64",
17912	//       "location": "path",
17913	//       "required": true,
17914	//       "type": "string"
17915	//     },
17916	//     "remarketingListIds": {
17917	//       "description": "Select only ads whose list targeting expression use these remarketing list IDs.",
17918	//       "format": "int64",
17919	//       "location": "query",
17920	//       "repeated": true,
17921	//       "type": "string"
17922	//     },
17923	//     "searchString": {
17924	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"ad*2015\" will return objects with names like \"ad June 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"ad\" will match objects with name \"my ad\", \"ad 2015\", or simply \"ad\".",
17925	//       "location": "query",
17926	//       "type": "string"
17927	//     },
17928	//     "sizeIds": {
17929	//       "description": "Select only ads with these size IDs.",
17930	//       "format": "int64",
17931	//       "location": "query",
17932	//       "repeated": true,
17933	//       "type": "string"
17934	//     },
17935	//     "sortField": {
17936	//       "default": "ID",
17937	//       "description": "Field by which to sort the list.",
17938	//       "enum": [
17939	//         "ID",
17940	//         "NAME"
17941	//       ],
17942	//       "enumDescriptions": [
17943	//         "",
17944	//         ""
17945	//       ],
17946	//       "location": "query",
17947	//       "type": "string"
17948	//     },
17949	//     "sortOrder": {
17950	//       "default": "ASCENDING",
17951	//       "description": "Order of sorted results.",
17952	//       "enum": [
17953	//         "ASCENDING",
17954	//         "DESCENDING"
17955	//       ],
17956	//       "enumDescriptions": [
17957	//         "",
17958	//         ""
17959	//       ],
17960	//       "location": "query",
17961	//       "type": "string"
17962	//     },
17963	//     "sslCompliant": {
17964	//       "description": "Select only ads that are SSL-compliant.",
17965	//       "location": "query",
17966	//       "type": "boolean"
17967	//     },
17968	//     "sslRequired": {
17969	//       "description": "Select only ads that require SSL.",
17970	//       "location": "query",
17971	//       "type": "boolean"
17972	//     },
17973	//     "type": {
17974	//       "description": "Select only ads with these types.",
17975	//       "enum": [
17976	//         "AD_SERVING_STANDARD_AD",
17977	//         "AD_SERVING_DEFAULT_AD",
17978	//         "AD_SERVING_CLICK_TRACKER",
17979	//         "AD_SERVING_TRACKING",
17980	//         "AD_SERVING_BRAND_SAFE_AD"
17981	//       ],
17982	//       "enumDescriptions": [
17983	//         "",
17984	//         "",
17985	//         "",
17986	//         "",
17987	//         ""
17988	//       ],
17989	//       "location": "query",
17990	//       "repeated": true,
17991	//       "type": "string"
17992	//     }
17993	//   },
17994	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/ads",
17995	//   "response": {
17996	//     "$ref": "AdsListResponse"
17997	//   },
17998	//   "scopes": [
17999	//     "https://www.googleapis.com/auth/dfatrafficking"
18000	//   ]
18001	// }
18002
18003}
18004
18005// Pages invokes f for each page of results.
18006// A non-nil error returned from f will halt the iteration.
18007// The provided context supersedes any context provided to the Context method.
18008func (c *AdsListCall) Pages(ctx context.Context, f func(*AdsListResponse) error) error {
18009	c.ctx_ = ctx
18010	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18011	for {
18012		x, err := c.Do()
18013		if err != nil {
18014			return err
18015		}
18016		if err := f(x); err != nil {
18017			return err
18018		}
18019		if x.NextPageToken == "" {
18020			return nil
18021		}
18022		c.PageToken(x.NextPageToken)
18023	}
18024}
18025
18026// method id "dfareporting.ads.patch":
18027
18028type AdsPatchCall struct {
18029	s          *Service
18030	profileId  int64
18031	ad         *Ad
18032	urlParams_ gensupport.URLParams
18033	ctx_       context.Context
18034	header_    http.Header
18035}
18036
18037// Patch: Updates an existing ad. This method supports patch semantics.
18038//
18039// - id: Ad ID.
18040// - profileId: User profile ID associated with this request.
18041func (r *AdsService) Patch(profileId int64, id int64, ad *Ad) *AdsPatchCall {
18042	c := &AdsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18043	c.profileId = profileId
18044	c.urlParams_.Set("id", fmt.Sprint(id))
18045	c.ad = ad
18046	return c
18047}
18048
18049// Fields allows partial responses to be retrieved. See
18050// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18051// for more information.
18052func (c *AdsPatchCall) Fields(s ...googleapi.Field) *AdsPatchCall {
18053	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18054	return c
18055}
18056
18057// Context sets the context to be used in this call's Do method. Any
18058// pending HTTP request will be aborted if the provided context is
18059// canceled.
18060func (c *AdsPatchCall) Context(ctx context.Context) *AdsPatchCall {
18061	c.ctx_ = ctx
18062	return c
18063}
18064
18065// Header returns an http.Header that can be modified by the caller to
18066// add HTTP headers to the request.
18067func (c *AdsPatchCall) Header() http.Header {
18068	if c.header_ == nil {
18069		c.header_ = make(http.Header)
18070	}
18071	return c.header_
18072}
18073
18074func (c *AdsPatchCall) doRequest(alt string) (*http.Response, error) {
18075	reqHeaders := make(http.Header)
18076	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18077	for k, v := range c.header_ {
18078		reqHeaders[k] = v
18079	}
18080	reqHeaders.Set("User-Agent", c.s.userAgent())
18081	var body io.Reader = nil
18082	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ad)
18083	if err != nil {
18084		return nil, err
18085	}
18086	reqHeaders.Set("Content-Type", "application/json")
18087	c.urlParams_.Set("alt", alt)
18088	c.urlParams_.Set("prettyPrint", "false")
18089	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/ads")
18090	urls += "?" + c.urlParams_.Encode()
18091	req, err := http.NewRequest("PATCH", urls, body)
18092	if err != nil {
18093		return nil, err
18094	}
18095	req.Header = reqHeaders
18096	googleapi.Expand(req.URL, map[string]string{
18097		"profileId": strconv.FormatInt(c.profileId, 10),
18098	})
18099	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18100}
18101
18102// Do executes the "dfareporting.ads.patch" call.
18103// Exactly one of *Ad or error will be non-nil. Any non-2xx status code
18104// is an error. Response headers are in either *Ad.ServerResponse.Header
18105// or (if a response was returned at all) in
18106// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18107// whether the returned error was because http.StatusNotModified was
18108// returned.
18109func (c *AdsPatchCall) Do(opts ...googleapi.CallOption) (*Ad, error) {
18110	gensupport.SetOptions(c.urlParams_, opts...)
18111	res, err := c.doRequest("json")
18112	if res != nil && res.StatusCode == http.StatusNotModified {
18113		if res.Body != nil {
18114			res.Body.Close()
18115		}
18116		return nil, &googleapi.Error{
18117			Code:   res.StatusCode,
18118			Header: res.Header,
18119		}
18120	}
18121	if err != nil {
18122		return nil, err
18123	}
18124	defer googleapi.CloseBody(res)
18125	if err := googleapi.CheckResponse(res); err != nil {
18126		return nil, err
18127	}
18128	ret := &Ad{
18129		ServerResponse: googleapi.ServerResponse{
18130			Header:         res.Header,
18131			HTTPStatusCode: res.StatusCode,
18132		},
18133	}
18134	target := &ret
18135	if err := gensupport.DecodeResponse(target, res); err != nil {
18136		return nil, err
18137	}
18138	return ret, nil
18139	// {
18140	//   "description": "Updates an existing ad. This method supports patch semantics.",
18141	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/ads",
18142	//   "httpMethod": "PATCH",
18143	//   "id": "dfareporting.ads.patch",
18144	//   "parameterOrder": [
18145	//     "profileId",
18146	//     "id"
18147	//   ],
18148	//   "parameters": {
18149	//     "id": {
18150	//       "description": "Ad ID.",
18151	//       "format": "int64",
18152	//       "location": "query",
18153	//       "required": true,
18154	//       "type": "string"
18155	//     },
18156	//     "profileId": {
18157	//       "description": "User profile ID associated with this request.",
18158	//       "format": "int64",
18159	//       "location": "path",
18160	//       "required": true,
18161	//       "type": "string"
18162	//     }
18163	//   },
18164	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/ads",
18165	//   "request": {
18166	//     "$ref": "Ad"
18167	//   },
18168	//   "response": {
18169	//     "$ref": "Ad"
18170	//   },
18171	//   "scopes": [
18172	//     "https://www.googleapis.com/auth/dfatrafficking"
18173	//   ]
18174	// }
18175
18176}
18177
18178// method id "dfareporting.ads.update":
18179
18180type AdsUpdateCall struct {
18181	s          *Service
18182	profileId  int64
18183	ad         *Ad
18184	urlParams_ gensupport.URLParams
18185	ctx_       context.Context
18186	header_    http.Header
18187}
18188
18189// Update: Updates an existing ad.
18190//
18191// - profileId: User profile ID associated with this request.
18192func (r *AdsService) Update(profileId int64, ad *Ad) *AdsUpdateCall {
18193	c := &AdsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18194	c.profileId = profileId
18195	c.ad = ad
18196	return c
18197}
18198
18199// Fields allows partial responses to be retrieved. See
18200// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18201// for more information.
18202func (c *AdsUpdateCall) Fields(s ...googleapi.Field) *AdsUpdateCall {
18203	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18204	return c
18205}
18206
18207// Context sets the context to be used in this call's Do method. Any
18208// pending HTTP request will be aborted if the provided context is
18209// canceled.
18210func (c *AdsUpdateCall) Context(ctx context.Context) *AdsUpdateCall {
18211	c.ctx_ = ctx
18212	return c
18213}
18214
18215// Header returns an http.Header that can be modified by the caller to
18216// add HTTP headers to the request.
18217func (c *AdsUpdateCall) Header() http.Header {
18218	if c.header_ == nil {
18219		c.header_ = make(http.Header)
18220	}
18221	return c.header_
18222}
18223
18224func (c *AdsUpdateCall) doRequest(alt string) (*http.Response, error) {
18225	reqHeaders := make(http.Header)
18226	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18227	for k, v := range c.header_ {
18228		reqHeaders[k] = v
18229	}
18230	reqHeaders.Set("User-Agent", c.s.userAgent())
18231	var body io.Reader = nil
18232	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ad)
18233	if err != nil {
18234		return nil, err
18235	}
18236	reqHeaders.Set("Content-Type", "application/json")
18237	c.urlParams_.Set("alt", alt)
18238	c.urlParams_.Set("prettyPrint", "false")
18239	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/ads")
18240	urls += "?" + c.urlParams_.Encode()
18241	req, err := http.NewRequest("PUT", urls, body)
18242	if err != nil {
18243		return nil, err
18244	}
18245	req.Header = reqHeaders
18246	googleapi.Expand(req.URL, map[string]string{
18247		"profileId": strconv.FormatInt(c.profileId, 10),
18248	})
18249	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18250}
18251
18252// Do executes the "dfareporting.ads.update" call.
18253// Exactly one of *Ad or error will be non-nil. Any non-2xx status code
18254// is an error. Response headers are in either *Ad.ServerResponse.Header
18255// or (if a response was returned at all) in
18256// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18257// whether the returned error was because http.StatusNotModified was
18258// returned.
18259func (c *AdsUpdateCall) Do(opts ...googleapi.CallOption) (*Ad, error) {
18260	gensupport.SetOptions(c.urlParams_, opts...)
18261	res, err := c.doRequest("json")
18262	if res != nil && res.StatusCode == http.StatusNotModified {
18263		if res.Body != nil {
18264			res.Body.Close()
18265		}
18266		return nil, &googleapi.Error{
18267			Code:   res.StatusCode,
18268			Header: res.Header,
18269		}
18270	}
18271	if err != nil {
18272		return nil, err
18273	}
18274	defer googleapi.CloseBody(res)
18275	if err := googleapi.CheckResponse(res); err != nil {
18276		return nil, err
18277	}
18278	ret := &Ad{
18279		ServerResponse: googleapi.ServerResponse{
18280			Header:         res.Header,
18281			HTTPStatusCode: res.StatusCode,
18282		},
18283	}
18284	target := &ret
18285	if err := gensupport.DecodeResponse(target, res); err != nil {
18286		return nil, err
18287	}
18288	return ret, nil
18289	// {
18290	//   "description": "Updates an existing ad.",
18291	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/ads",
18292	//   "httpMethod": "PUT",
18293	//   "id": "dfareporting.ads.update",
18294	//   "parameterOrder": [
18295	//     "profileId"
18296	//   ],
18297	//   "parameters": {
18298	//     "profileId": {
18299	//       "description": "User profile ID associated with this request.",
18300	//       "format": "int64",
18301	//       "location": "path",
18302	//       "required": true,
18303	//       "type": "string"
18304	//     }
18305	//   },
18306	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/ads",
18307	//   "request": {
18308	//     "$ref": "Ad"
18309	//   },
18310	//   "response": {
18311	//     "$ref": "Ad"
18312	//   },
18313	//   "scopes": [
18314	//     "https://www.googleapis.com/auth/dfatrafficking"
18315	//   ]
18316	// }
18317
18318}
18319
18320// method id "dfareporting.advertiserGroups.delete":
18321
18322type AdvertiserGroupsDeleteCall struct {
18323	s          *Service
18324	profileId  int64
18325	id         int64
18326	urlParams_ gensupport.URLParams
18327	ctx_       context.Context
18328	header_    http.Header
18329}
18330
18331// Delete: Deletes an existing advertiser group.
18332//
18333// - id: Advertiser group ID.
18334// - profileId: User profile ID associated with this request.
18335func (r *AdvertiserGroupsService) Delete(profileId int64, id int64) *AdvertiserGroupsDeleteCall {
18336	c := &AdvertiserGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18337	c.profileId = profileId
18338	c.id = id
18339	return c
18340}
18341
18342// Fields allows partial responses to be retrieved. See
18343// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18344// for more information.
18345func (c *AdvertiserGroupsDeleteCall) Fields(s ...googleapi.Field) *AdvertiserGroupsDeleteCall {
18346	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18347	return c
18348}
18349
18350// Context sets the context to be used in this call's Do method. Any
18351// pending HTTP request will be aborted if the provided context is
18352// canceled.
18353func (c *AdvertiserGroupsDeleteCall) Context(ctx context.Context) *AdvertiserGroupsDeleteCall {
18354	c.ctx_ = ctx
18355	return c
18356}
18357
18358// Header returns an http.Header that can be modified by the caller to
18359// add HTTP headers to the request.
18360func (c *AdvertiserGroupsDeleteCall) Header() http.Header {
18361	if c.header_ == nil {
18362		c.header_ = make(http.Header)
18363	}
18364	return c.header_
18365}
18366
18367func (c *AdvertiserGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
18368	reqHeaders := make(http.Header)
18369	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18370	for k, v := range c.header_ {
18371		reqHeaders[k] = v
18372	}
18373	reqHeaders.Set("User-Agent", c.s.userAgent())
18374	var body io.Reader = nil
18375	c.urlParams_.Set("alt", alt)
18376	c.urlParams_.Set("prettyPrint", "false")
18377	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups/{id}")
18378	urls += "?" + c.urlParams_.Encode()
18379	req, err := http.NewRequest("DELETE", urls, body)
18380	if err != nil {
18381		return nil, err
18382	}
18383	req.Header = reqHeaders
18384	googleapi.Expand(req.URL, map[string]string{
18385		"profileId": strconv.FormatInt(c.profileId, 10),
18386		"id":        strconv.FormatInt(c.id, 10),
18387	})
18388	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18389}
18390
18391// Do executes the "dfareporting.advertiserGroups.delete" call.
18392func (c *AdvertiserGroupsDeleteCall) Do(opts ...googleapi.CallOption) error {
18393	gensupport.SetOptions(c.urlParams_, opts...)
18394	res, err := c.doRequest("json")
18395	if err != nil {
18396		return err
18397	}
18398	defer googleapi.CloseBody(res)
18399	if err := googleapi.CheckResponse(res); err != nil {
18400		return err
18401	}
18402	return nil
18403	// {
18404	//   "description": "Deletes an existing advertiser group.",
18405	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups/{id}",
18406	//   "httpMethod": "DELETE",
18407	//   "id": "dfareporting.advertiserGroups.delete",
18408	//   "parameterOrder": [
18409	//     "profileId",
18410	//     "id"
18411	//   ],
18412	//   "parameters": {
18413	//     "id": {
18414	//       "description": "Advertiser group ID.",
18415	//       "format": "int64",
18416	//       "location": "path",
18417	//       "required": true,
18418	//       "type": "string"
18419	//     },
18420	//     "profileId": {
18421	//       "description": "User profile ID associated with this request.",
18422	//       "format": "int64",
18423	//       "location": "path",
18424	//       "required": true,
18425	//       "type": "string"
18426	//     }
18427	//   },
18428	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups/{id}",
18429	//   "scopes": [
18430	//     "https://www.googleapis.com/auth/dfatrafficking"
18431	//   ]
18432	// }
18433
18434}
18435
18436// method id "dfareporting.advertiserGroups.get":
18437
18438type AdvertiserGroupsGetCall struct {
18439	s            *Service
18440	profileId    int64
18441	id           int64
18442	urlParams_   gensupport.URLParams
18443	ifNoneMatch_ string
18444	ctx_         context.Context
18445	header_      http.Header
18446}
18447
18448// Get: Gets one advertiser group by ID.
18449//
18450// - id: Advertiser group ID.
18451// - profileId: User profile ID associated with this request.
18452func (r *AdvertiserGroupsService) Get(profileId int64, id int64) *AdvertiserGroupsGetCall {
18453	c := &AdvertiserGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18454	c.profileId = profileId
18455	c.id = id
18456	return c
18457}
18458
18459// Fields allows partial responses to be retrieved. See
18460// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18461// for more information.
18462func (c *AdvertiserGroupsGetCall) Fields(s ...googleapi.Field) *AdvertiserGroupsGetCall {
18463	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18464	return c
18465}
18466
18467// IfNoneMatch sets the optional parameter which makes the operation
18468// fail if the object's ETag matches the given value. This is useful for
18469// getting updates only after the object has changed since the last
18470// request. Use googleapi.IsNotModified to check whether the response
18471// error from Do is the result of In-None-Match.
18472func (c *AdvertiserGroupsGetCall) IfNoneMatch(entityTag string) *AdvertiserGroupsGetCall {
18473	c.ifNoneMatch_ = entityTag
18474	return c
18475}
18476
18477// Context sets the context to be used in this call's Do method. Any
18478// pending HTTP request will be aborted if the provided context is
18479// canceled.
18480func (c *AdvertiserGroupsGetCall) Context(ctx context.Context) *AdvertiserGroupsGetCall {
18481	c.ctx_ = ctx
18482	return c
18483}
18484
18485// Header returns an http.Header that can be modified by the caller to
18486// add HTTP headers to the request.
18487func (c *AdvertiserGroupsGetCall) Header() http.Header {
18488	if c.header_ == nil {
18489		c.header_ = make(http.Header)
18490	}
18491	return c.header_
18492}
18493
18494func (c *AdvertiserGroupsGetCall) doRequest(alt string) (*http.Response, error) {
18495	reqHeaders := make(http.Header)
18496	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18497	for k, v := range c.header_ {
18498		reqHeaders[k] = v
18499	}
18500	reqHeaders.Set("User-Agent", c.s.userAgent())
18501	if c.ifNoneMatch_ != "" {
18502		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18503	}
18504	var body io.Reader = nil
18505	c.urlParams_.Set("alt", alt)
18506	c.urlParams_.Set("prettyPrint", "false")
18507	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups/{id}")
18508	urls += "?" + c.urlParams_.Encode()
18509	req, err := http.NewRequest("GET", urls, body)
18510	if err != nil {
18511		return nil, err
18512	}
18513	req.Header = reqHeaders
18514	googleapi.Expand(req.URL, map[string]string{
18515		"profileId": strconv.FormatInt(c.profileId, 10),
18516		"id":        strconv.FormatInt(c.id, 10),
18517	})
18518	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18519}
18520
18521// Do executes the "dfareporting.advertiserGroups.get" call.
18522// Exactly one of *AdvertiserGroup or error will be non-nil. Any non-2xx
18523// status code is an error. Response headers are in either
18524// *AdvertiserGroup.ServerResponse.Header or (if a response was returned
18525// at all) in error.(*googleapi.Error).Header. Use
18526// googleapi.IsNotModified to check whether the returned error was
18527// because http.StatusNotModified was returned.
18528func (c *AdvertiserGroupsGetCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroup, error) {
18529	gensupport.SetOptions(c.urlParams_, opts...)
18530	res, err := c.doRequest("json")
18531	if res != nil && res.StatusCode == http.StatusNotModified {
18532		if res.Body != nil {
18533			res.Body.Close()
18534		}
18535		return nil, &googleapi.Error{
18536			Code:   res.StatusCode,
18537			Header: res.Header,
18538		}
18539	}
18540	if err != nil {
18541		return nil, err
18542	}
18543	defer googleapi.CloseBody(res)
18544	if err := googleapi.CheckResponse(res); err != nil {
18545		return nil, err
18546	}
18547	ret := &AdvertiserGroup{
18548		ServerResponse: googleapi.ServerResponse{
18549			Header:         res.Header,
18550			HTTPStatusCode: res.StatusCode,
18551		},
18552	}
18553	target := &ret
18554	if err := gensupport.DecodeResponse(target, res); err != nil {
18555		return nil, err
18556	}
18557	return ret, nil
18558	// {
18559	//   "description": "Gets one advertiser group by ID.",
18560	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups/{id}",
18561	//   "httpMethod": "GET",
18562	//   "id": "dfareporting.advertiserGroups.get",
18563	//   "parameterOrder": [
18564	//     "profileId",
18565	//     "id"
18566	//   ],
18567	//   "parameters": {
18568	//     "id": {
18569	//       "description": "Advertiser group ID.",
18570	//       "format": "int64",
18571	//       "location": "path",
18572	//       "required": true,
18573	//       "type": "string"
18574	//     },
18575	//     "profileId": {
18576	//       "description": "User profile ID associated with this request.",
18577	//       "format": "int64",
18578	//       "location": "path",
18579	//       "required": true,
18580	//       "type": "string"
18581	//     }
18582	//   },
18583	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups/{id}",
18584	//   "response": {
18585	//     "$ref": "AdvertiserGroup"
18586	//   },
18587	//   "scopes": [
18588	//     "https://www.googleapis.com/auth/dfatrafficking"
18589	//   ]
18590	// }
18591
18592}
18593
18594// method id "dfareporting.advertiserGroups.insert":
18595
18596type AdvertiserGroupsInsertCall struct {
18597	s               *Service
18598	profileId       int64
18599	advertisergroup *AdvertiserGroup
18600	urlParams_      gensupport.URLParams
18601	ctx_            context.Context
18602	header_         http.Header
18603}
18604
18605// Insert: Inserts a new advertiser group.
18606//
18607// - profileId: User profile ID associated with this request.
18608func (r *AdvertiserGroupsService) Insert(profileId int64, advertisergroup *AdvertiserGroup) *AdvertiserGroupsInsertCall {
18609	c := &AdvertiserGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18610	c.profileId = profileId
18611	c.advertisergroup = advertisergroup
18612	return c
18613}
18614
18615// Fields allows partial responses to be retrieved. See
18616// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18617// for more information.
18618func (c *AdvertiserGroupsInsertCall) Fields(s ...googleapi.Field) *AdvertiserGroupsInsertCall {
18619	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18620	return c
18621}
18622
18623// Context sets the context to be used in this call's Do method. Any
18624// pending HTTP request will be aborted if the provided context is
18625// canceled.
18626func (c *AdvertiserGroupsInsertCall) Context(ctx context.Context) *AdvertiserGroupsInsertCall {
18627	c.ctx_ = ctx
18628	return c
18629}
18630
18631// Header returns an http.Header that can be modified by the caller to
18632// add HTTP headers to the request.
18633func (c *AdvertiserGroupsInsertCall) Header() http.Header {
18634	if c.header_ == nil {
18635		c.header_ = make(http.Header)
18636	}
18637	return c.header_
18638}
18639
18640func (c *AdvertiserGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
18641	reqHeaders := make(http.Header)
18642	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18643	for k, v := range c.header_ {
18644		reqHeaders[k] = v
18645	}
18646	reqHeaders.Set("User-Agent", c.s.userAgent())
18647	var body io.Reader = nil
18648	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertisergroup)
18649	if err != nil {
18650		return nil, err
18651	}
18652	reqHeaders.Set("Content-Type", "application/json")
18653	c.urlParams_.Set("alt", alt)
18654	c.urlParams_.Set("prettyPrint", "false")
18655	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups")
18656	urls += "?" + c.urlParams_.Encode()
18657	req, err := http.NewRequest("POST", urls, body)
18658	if err != nil {
18659		return nil, err
18660	}
18661	req.Header = reqHeaders
18662	googleapi.Expand(req.URL, map[string]string{
18663		"profileId": strconv.FormatInt(c.profileId, 10),
18664	})
18665	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18666}
18667
18668// Do executes the "dfareporting.advertiserGroups.insert" call.
18669// Exactly one of *AdvertiserGroup or error will be non-nil. Any non-2xx
18670// status code is an error. Response headers are in either
18671// *AdvertiserGroup.ServerResponse.Header or (if a response was returned
18672// at all) in error.(*googleapi.Error).Header. Use
18673// googleapi.IsNotModified to check whether the returned error was
18674// because http.StatusNotModified was returned.
18675func (c *AdvertiserGroupsInsertCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroup, error) {
18676	gensupport.SetOptions(c.urlParams_, opts...)
18677	res, err := c.doRequest("json")
18678	if res != nil && res.StatusCode == http.StatusNotModified {
18679		if res.Body != nil {
18680			res.Body.Close()
18681		}
18682		return nil, &googleapi.Error{
18683			Code:   res.StatusCode,
18684			Header: res.Header,
18685		}
18686	}
18687	if err != nil {
18688		return nil, err
18689	}
18690	defer googleapi.CloseBody(res)
18691	if err := googleapi.CheckResponse(res); err != nil {
18692		return nil, err
18693	}
18694	ret := &AdvertiserGroup{
18695		ServerResponse: googleapi.ServerResponse{
18696			Header:         res.Header,
18697			HTTPStatusCode: res.StatusCode,
18698		},
18699	}
18700	target := &ret
18701	if err := gensupport.DecodeResponse(target, res); err != nil {
18702		return nil, err
18703	}
18704	return ret, nil
18705	// {
18706	//   "description": "Inserts a new advertiser group.",
18707	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups",
18708	//   "httpMethod": "POST",
18709	//   "id": "dfareporting.advertiserGroups.insert",
18710	//   "parameterOrder": [
18711	//     "profileId"
18712	//   ],
18713	//   "parameters": {
18714	//     "profileId": {
18715	//       "description": "User profile ID associated with this request.",
18716	//       "format": "int64",
18717	//       "location": "path",
18718	//       "required": true,
18719	//       "type": "string"
18720	//     }
18721	//   },
18722	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups",
18723	//   "request": {
18724	//     "$ref": "AdvertiserGroup"
18725	//   },
18726	//   "response": {
18727	//     "$ref": "AdvertiserGroup"
18728	//   },
18729	//   "scopes": [
18730	//     "https://www.googleapis.com/auth/dfatrafficking"
18731	//   ]
18732	// }
18733
18734}
18735
18736// method id "dfareporting.advertiserGroups.list":
18737
18738type AdvertiserGroupsListCall struct {
18739	s            *Service
18740	profileId    int64
18741	urlParams_   gensupport.URLParams
18742	ifNoneMatch_ string
18743	ctx_         context.Context
18744	header_      http.Header
18745}
18746
18747// List: Retrieves a list of advertiser groups, possibly filtered. This
18748// method supports paging.
18749//
18750// - profileId: User profile ID associated with this request.
18751func (r *AdvertiserGroupsService) List(profileId int64) *AdvertiserGroupsListCall {
18752	c := &AdvertiserGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18753	c.profileId = profileId
18754	return c
18755}
18756
18757// Ids sets the optional parameter "ids": Select only advertiser groups
18758// with these IDs.
18759func (c *AdvertiserGroupsListCall) Ids(ids ...int64) *AdvertiserGroupsListCall {
18760	var ids_ []string
18761	for _, v := range ids {
18762		ids_ = append(ids_, fmt.Sprint(v))
18763	}
18764	c.urlParams_.SetMulti("ids", ids_)
18765	return c
18766}
18767
18768// MaxResults sets the optional parameter "maxResults": Maximum number
18769// of results to return.
18770func (c *AdvertiserGroupsListCall) MaxResults(maxResults int64) *AdvertiserGroupsListCall {
18771	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18772	return c
18773}
18774
18775// PageToken sets the optional parameter "pageToken": Value of the
18776// nextPageToken from the previous result page.
18777func (c *AdvertiserGroupsListCall) PageToken(pageToken string) *AdvertiserGroupsListCall {
18778	c.urlParams_.Set("pageToken", pageToken)
18779	return c
18780}
18781
18782// SearchString sets the optional parameter "searchString": Allows
18783// searching for objects by name or ID. Wildcards (*) are allowed. For
18784// example, "advertiser*2015" will return objects with names like
18785// "advertiser group June 2015", "advertiser group April 2015", or
18786// simply "advertiser group 2015". Most of the searches also add
18787// wildcards implicitly at the start and the end of the search string.
18788// For example, a search string of "advertisergroup" will match objects
18789// with name "my advertisergroup", "advertisergroup 2015", or simply
18790// "advertisergroup".
18791func (c *AdvertiserGroupsListCall) SearchString(searchString string) *AdvertiserGroupsListCall {
18792	c.urlParams_.Set("searchString", searchString)
18793	return c
18794}
18795
18796// SortField sets the optional parameter "sortField": Field by which to
18797// sort the list.
18798//
18799// Possible values:
18800//   "ID" (default)
18801//   "NAME"
18802func (c *AdvertiserGroupsListCall) SortField(sortField string) *AdvertiserGroupsListCall {
18803	c.urlParams_.Set("sortField", sortField)
18804	return c
18805}
18806
18807// SortOrder sets the optional parameter "sortOrder": Order of sorted
18808// results.
18809//
18810// Possible values:
18811//   "ASCENDING" (default)
18812//   "DESCENDING"
18813func (c *AdvertiserGroupsListCall) SortOrder(sortOrder string) *AdvertiserGroupsListCall {
18814	c.urlParams_.Set("sortOrder", sortOrder)
18815	return c
18816}
18817
18818// Fields allows partial responses to be retrieved. See
18819// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18820// for more information.
18821func (c *AdvertiserGroupsListCall) Fields(s ...googleapi.Field) *AdvertiserGroupsListCall {
18822	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18823	return c
18824}
18825
18826// IfNoneMatch sets the optional parameter which makes the operation
18827// fail if the object's ETag matches the given value. This is useful for
18828// getting updates only after the object has changed since the last
18829// request. Use googleapi.IsNotModified to check whether the response
18830// error from Do is the result of In-None-Match.
18831func (c *AdvertiserGroupsListCall) IfNoneMatch(entityTag string) *AdvertiserGroupsListCall {
18832	c.ifNoneMatch_ = entityTag
18833	return c
18834}
18835
18836// Context sets the context to be used in this call's Do method. Any
18837// pending HTTP request will be aborted if the provided context is
18838// canceled.
18839func (c *AdvertiserGroupsListCall) Context(ctx context.Context) *AdvertiserGroupsListCall {
18840	c.ctx_ = ctx
18841	return c
18842}
18843
18844// Header returns an http.Header that can be modified by the caller to
18845// add HTTP headers to the request.
18846func (c *AdvertiserGroupsListCall) Header() http.Header {
18847	if c.header_ == nil {
18848		c.header_ = make(http.Header)
18849	}
18850	return c.header_
18851}
18852
18853func (c *AdvertiserGroupsListCall) doRequest(alt string) (*http.Response, error) {
18854	reqHeaders := make(http.Header)
18855	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18856	for k, v := range c.header_ {
18857		reqHeaders[k] = v
18858	}
18859	reqHeaders.Set("User-Agent", c.s.userAgent())
18860	if c.ifNoneMatch_ != "" {
18861		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18862	}
18863	var body io.Reader = nil
18864	c.urlParams_.Set("alt", alt)
18865	c.urlParams_.Set("prettyPrint", "false")
18866	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups")
18867	urls += "?" + c.urlParams_.Encode()
18868	req, err := http.NewRequest("GET", urls, body)
18869	if err != nil {
18870		return nil, err
18871	}
18872	req.Header = reqHeaders
18873	googleapi.Expand(req.URL, map[string]string{
18874		"profileId": strconv.FormatInt(c.profileId, 10),
18875	})
18876	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18877}
18878
18879// Do executes the "dfareporting.advertiserGroups.list" call.
18880// Exactly one of *AdvertiserGroupsListResponse or error will be
18881// non-nil. Any non-2xx status code is an error. Response headers are in
18882// either *AdvertiserGroupsListResponse.ServerResponse.Header or (if a
18883// response was returned at all) in error.(*googleapi.Error).Header. Use
18884// googleapi.IsNotModified to check whether the returned error was
18885// because http.StatusNotModified was returned.
18886func (c *AdvertiserGroupsListCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroupsListResponse, error) {
18887	gensupport.SetOptions(c.urlParams_, opts...)
18888	res, err := c.doRequest("json")
18889	if res != nil && res.StatusCode == http.StatusNotModified {
18890		if res.Body != nil {
18891			res.Body.Close()
18892		}
18893		return nil, &googleapi.Error{
18894			Code:   res.StatusCode,
18895			Header: res.Header,
18896		}
18897	}
18898	if err != nil {
18899		return nil, err
18900	}
18901	defer googleapi.CloseBody(res)
18902	if err := googleapi.CheckResponse(res); err != nil {
18903		return nil, err
18904	}
18905	ret := &AdvertiserGroupsListResponse{
18906		ServerResponse: googleapi.ServerResponse{
18907			Header:         res.Header,
18908			HTTPStatusCode: res.StatusCode,
18909		},
18910	}
18911	target := &ret
18912	if err := gensupport.DecodeResponse(target, res); err != nil {
18913		return nil, err
18914	}
18915	return ret, nil
18916	// {
18917	//   "description": "Retrieves a list of advertiser groups, possibly filtered. This method supports paging.",
18918	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups",
18919	//   "httpMethod": "GET",
18920	//   "id": "dfareporting.advertiserGroups.list",
18921	//   "parameterOrder": [
18922	//     "profileId"
18923	//   ],
18924	//   "parameters": {
18925	//     "ids": {
18926	//       "description": "Select only advertiser groups with these IDs.",
18927	//       "format": "int64",
18928	//       "location": "query",
18929	//       "repeated": true,
18930	//       "type": "string"
18931	//     },
18932	//     "maxResults": {
18933	//       "default": "1000",
18934	//       "description": "Maximum number of results to return.",
18935	//       "format": "int32",
18936	//       "location": "query",
18937	//       "maximum": "1000",
18938	//       "minimum": "0",
18939	//       "type": "integer"
18940	//     },
18941	//     "pageToken": {
18942	//       "description": "Value of the nextPageToken from the previous result page.",
18943	//       "location": "query",
18944	//       "type": "string"
18945	//     },
18946	//     "profileId": {
18947	//       "description": "User profile ID associated with this request.",
18948	//       "format": "int64",
18949	//       "location": "path",
18950	//       "required": true,
18951	//       "type": "string"
18952	//     },
18953	//     "searchString": {
18954	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser group June 2015\", \"advertiser group April 2015\", or simply \"advertiser group 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertisergroup\" will match objects with name \"my advertisergroup\", \"advertisergroup 2015\", or simply \"advertisergroup\".",
18955	//       "location": "query",
18956	//       "type": "string"
18957	//     },
18958	//     "sortField": {
18959	//       "default": "ID",
18960	//       "description": "Field by which to sort the list.",
18961	//       "enum": [
18962	//         "ID",
18963	//         "NAME"
18964	//       ],
18965	//       "enumDescriptions": [
18966	//         "",
18967	//         ""
18968	//       ],
18969	//       "location": "query",
18970	//       "type": "string"
18971	//     },
18972	//     "sortOrder": {
18973	//       "default": "ASCENDING",
18974	//       "description": "Order of sorted results.",
18975	//       "enum": [
18976	//         "ASCENDING",
18977	//         "DESCENDING"
18978	//       ],
18979	//       "enumDescriptions": [
18980	//         "",
18981	//         ""
18982	//       ],
18983	//       "location": "query",
18984	//       "type": "string"
18985	//     }
18986	//   },
18987	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups",
18988	//   "response": {
18989	//     "$ref": "AdvertiserGroupsListResponse"
18990	//   },
18991	//   "scopes": [
18992	//     "https://www.googleapis.com/auth/dfatrafficking"
18993	//   ]
18994	// }
18995
18996}
18997
18998// Pages invokes f for each page of results.
18999// A non-nil error returned from f will halt the iteration.
19000// The provided context supersedes any context provided to the Context method.
19001func (c *AdvertiserGroupsListCall) Pages(ctx context.Context, f func(*AdvertiserGroupsListResponse) error) error {
19002	c.ctx_ = ctx
19003	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19004	for {
19005		x, err := c.Do()
19006		if err != nil {
19007			return err
19008		}
19009		if err := f(x); err != nil {
19010			return err
19011		}
19012		if x.NextPageToken == "" {
19013			return nil
19014		}
19015		c.PageToken(x.NextPageToken)
19016	}
19017}
19018
19019// method id "dfareporting.advertiserGroups.patch":
19020
19021type AdvertiserGroupsPatchCall struct {
19022	s               *Service
19023	profileId       int64
19024	advertisergroup *AdvertiserGroup
19025	urlParams_      gensupport.URLParams
19026	ctx_            context.Context
19027	header_         http.Header
19028}
19029
19030// Patch: Updates an existing advertiser group. This method supports
19031// patch semantics.
19032//
19033// - id: AdvertiserGroup ID.
19034// - profileId: User profile ID associated with this request.
19035func (r *AdvertiserGroupsService) Patch(profileId int64, id int64, advertisergroup *AdvertiserGroup) *AdvertiserGroupsPatchCall {
19036	c := &AdvertiserGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19037	c.profileId = profileId
19038	c.urlParams_.Set("id", fmt.Sprint(id))
19039	c.advertisergroup = advertisergroup
19040	return c
19041}
19042
19043// Fields allows partial responses to be retrieved. See
19044// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19045// for more information.
19046func (c *AdvertiserGroupsPatchCall) Fields(s ...googleapi.Field) *AdvertiserGroupsPatchCall {
19047	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19048	return c
19049}
19050
19051// Context sets the context to be used in this call's Do method. Any
19052// pending HTTP request will be aborted if the provided context is
19053// canceled.
19054func (c *AdvertiserGroupsPatchCall) Context(ctx context.Context) *AdvertiserGroupsPatchCall {
19055	c.ctx_ = ctx
19056	return c
19057}
19058
19059// Header returns an http.Header that can be modified by the caller to
19060// add HTTP headers to the request.
19061func (c *AdvertiserGroupsPatchCall) Header() http.Header {
19062	if c.header_ == nil {
19063		c.header_ = make(http.Header)
19064	}
19065	return c.header_
19066}
19067
19068func (c *AdvertiserGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
19069	reqHeaders := make(http.Header)
19070	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19071	for k, v := range c.header_ {
19072		reqHeaders[k] = v
19073	}
19074	reqHeaders.Set("User-Agent", c.s.userAgent())
19075	var body io.Reader = nil
19076	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertisergroup)
19077	if err != nil {
19078		return nil, err
19079	}
19080	reqHeaders.Set("Content-Type", "application/json")
19081	c.urlParams_.Set("alt", alt)
19082	c.urlParams_.Set("prettyPrint", "false")
19083	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups")
19084	urls += "?" + c.urlParams_.Encode()
19085	req, err := http.NewRequest("PATCH", urls, body)
19086	if err != nil {
19087		return nil, err
19088	}
19089	req.Header = reqHeaders
19090	googleapi.Expand(req.URL, map[string]string{
19091		"profileId": strconv.FormatInt(c.profileId, 10),
19092	})
19093	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19094}
19095
19096// Do executes the "dfareporting.advertiserGroups.patch" call.
19097// Exactly one of *AdvertiserGroup or error will be non-nil. Any non-2xx
19098// status code is an error. Response headers are in either
19099// *AdvertiserGroup.ServerResponse.Header or (if a response was returned
19100// at all) in error.(*googleapi.Error).Header. Use
19101// googleapi.IsNotModified to check whether the returned error was
19102// because http.StatusNotModified was returned.
19103func (c *AdvertiserGroupsPatchCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroup, error) {
19104	gensupport.SetOptions(c.urlParams_, opts...)
19105	res, err := c.doRequest("json")
19106	if res != nil && res.StatusCode == http.StatusNotModified {
19107		if res.Body != nil {
19108			res.Body.Close()
19109		}
19110		return nil, &googleapi.Error{
19111			Code:   res.StatusCode,
19112			Header: res.Header,
19113		}
19114	}
19115	if err != nil {
19116		return nil, err
19117	}
19118	defer googleapi.CloseBody(res)
19119	if err := googleapi.CheckResponse(res); err != nil {
19120		return nil, err
19121	}
19122	ret := &AdvertiserGroup{
19123		ServerResponse: googleapi.ServerResponse{
19124			Header:         res.Header,
19125			HTTPStatusCode: res.StatusCode,
19126		},
19127	}
19128	target := &ret
19129	if err := gensupport.DecodeResponse(target, res); err != nil {
19130		return nil, err
19131	}
19132	return ret, nil
19133	// {
19134	//   "description": "Updates an existing advertiser group. This method supports patch semantics.",
19135	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups",
19136	//   "httpMethod": "PATCH",
19137	//   "id": "dfareporting.advertiserGroups.patch",
19138	//   "parameterOrder": [
19139	//     "profileId",
19140	//     "id"
19141	//   ],
19142	//   "parameters": {
19143	//     "id": {
19144	//       "description": "AdvertiserGroup ID.",
19145	//       "format": "int64",
19146	//       "location": "query",
19147	//       "required": true,
19148	//       "type": "string"
19149	//     },
19150	//     "profileId": {
19151	//       "description": "User profile ID associated with this request.",
19152	//       "format": "int64",
19153	//       "location": "path",
19154	//       "required": true,
19155	//       "type": "string"
19156	//     }
19157	//   },
19158	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups",
19159	//   "request": {
19160	//     "$ref": "AdvertiserGroup"
19161	//   },
19162	//   "response": {
19163	//     "$ref": "AdvertiserGroup"
19164	//   },
19165	//   "scopes": [
19166	//     "https://www.googleapis.com/auth/dfatrafficking"
19167	//   ]
19168	// }
19169
19170}
19171
19172// method id "dfareporting.advertiserGroups.update":
19173
19174type AdvertiserGroupsUpdateCall struct {
19175	s               *Service
19176	profileId       int64
19177	advertisergroup *AdvertiserGroup
19178	urlParams_      gensupport.URLParams
19179	ctx_            context.Context
19180	header_         http.Header
19181}
19182
19183// Update: Updates an existing advertiser group.
19184//
19185// - profileId: User profile ID associated with this request.
19186func (r *AdvertiserGroupsService) Update(profileId int64, advertisergroup *AdvertiserGroup) *AdvertiserGroupsUpdateCall {
19187	c := &AdvertiserGroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19188	c.profileId = profileId
19189	c.advertisergroup = advertisergroup
19190	return c
19191}
19192
19193// Fields allows partial responses to be retrieved. See
19194// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19195// for more information.
19196func (c *AdvertiserGroupsUpdateCall) Fields(s ...googleapi.Field) *AdvertiserGroupsUpdateCall {
19197	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19198	return c
19199}
19200
19201// Context sets the context to be used in this call's Do method. Any
19202// pending HTTP request will be aborted if the provided context is
19203// canceled.
19204func (c *AdvertiserGroupsUpdateCall) Context(ctx context.Context) *AdvertiserGroupsUpdateCall {
19205	c.ctx_ = ctx
19206	return c
19207}
19208
19209// Header returns an http.Header that can be modified by the caller to
19210// add HTTP headers to the request.
19211func (c *AdvertiserGroupsUpdateCall) Header() http.Header {
19212	if c.header_ == nil {
19213		c.header_ = make(http.Header)
19214	}
19215	return c.header_
19216}
19217
19218func (c *AdvertiserGroupsUpdateCall) doRequest(alt string) (*http.Response, error) {
19219	reqHeaders := make(http.Header)
19220	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19221	for k, v := range c.header_ {
19222		reqHeaders[k] = v
19223	}
19224	reqHeaders.Set("User-Agent", c.s.userAgent())
19225	var body io.Reader = nil
19226	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertisergroup)
19227	if err != nil {
19228		return nil, err
19229	}
19230	reqHeaders.Set("Content-Type", "application/json")
19231	c.urlParams_.Set("alt", alt)
19232	c.urlParams_.Set("prettyPrint", "false")
19233	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups")
19234	urls += "?" + c.urlParams_.Encode()
19235	req, err := http.NewRequest("PUT", urls, body)
19236	if err != nil {
19237		return nil, err
19238	}
19239	req.Header = reqHeaders
19240	googleapi.Expand(req.URL, map[string]string{
19241		"profileId": strconv.FormatInt(c.profileId, 10),
19242	})
19243	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19244}
19245
19246// Do executes the "dfareporting.advertiserGroups.update" call.
19247// Exactly one of *AdvertiserGroup or error will be non-nil. Any non-2xx
19248// status code is an error. Response headers are in either
19249// *AdvertiserGroup.ServerResponse.Header or (if a response was returned
19250// at all) in error.(*googleapi.Error).Header. Use
19251// googleapi.IsNotModified to check whether the returned error was
19252// because http.StatusNotModified was returned.
19253func (c *AdvertiserGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroup, error) {
19254	gensupport.SetOptions(c.urlParams_, opts...)
19255	res, err := c.doRequest("json")
19256	if res != nil && res.StatusCode == http.StatusNotModified {
19257		if res.Body != nil {
19258			res.Body.Close()
19259		}
19260		return nil, &googleapi.Error{
19261			Code:   res.StatusCode,
19262			Header: res.Header,
19263		}
19264	}
19265	if err != nil {
19266		return nil, err
19267	}
19268	defer googleapi.CloseBody(res)
19269	if err := googleapi.CheckResponse(res); err != nil {
19270		return nil, err
19271	}
19272	ret := &AdvertiserGroup{
19273		ServerResponse: googleapi.ServerResponse{
19274			Header:         res.Header,
19275			HTTPStatusCode: res.StatusCode,
19276		},
19277	}
19278	target := &ret
19279	if err := gensupport.DecodeResponse(target, res); err != nil {
19280		return nil, err
19281	}
19282	return ret, nil
19283	// {
19284	//   "description": "Updates an existing advertiser group.",
19285	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups",
19286	//   "httpMethod": "PUT",
19287	//   "id": "dfareporting.advertiserGroups.update",
19288	//   "parameterOrder": [
19289	//     "profileId"
19290	//   ],
19291	//   "parameters": {
19292	//     "profileId": {
19293	//       "description": "User profile ID associated with this request.",
19294	//       "format": "int64",
19295	//       "location": "path",
19296	//       "required": true,
19297	//       "type": "string"
19298	//     }
19299	//   },
19300	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserGroups",
19301	//   "request": {
19302	//     "$ref": "AdvertiserGroup"
19303	//   },
19304	//   "response": {
19305	//     "$ref": "AdvertiserGroup"
19306	//   },
19307	//   "scopes": [
19308	//     "https://www.googleapis.com/auth/dfatrafficking"
19309	//   ]
19310	// }
19311
19312}
19313
19314// method id "dfareporting.advertiserLandingPages.get":
19315
19316type AdvertiserLandingPagesGetCall struct {
19317	s            *Service
19318	profileId    int64
19319	id           int64
19320	urlParams_   gensupport.URLParams
19321	ifNoneMatch_ string
19322	ctx_         context.Context
19323	header_      http.Header
19324}
19325
19326// Get: Gets one landing page by ID.
19327//
19328// - id: Landing page ID.
19329// - profileId: User profile ID associated with this request.
19330func (r *AdvertiserLandingPagesService) Get(profileId int64, id int64) *AdvertiserLandingPagesGetCall {
19331	c := &AdvertiserLandingPagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19332	c.profileId = profileId
19333	c.id = id
19334	return c
19335}
19336
19337// Fields allows partial responses to be retrieved. See
19338// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19339// for more information.
19340func (c *AdvertiserLandingPagesGetCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesGetCall {
19341	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19342	return c
19343}
19344
19345// IfNoneMatch sets the optional parameter which makes the operation
19346// fail if the object's ETag matches the given value. This is useful for
19347// getting updates only after the object has changed since the last
19348// request. Use googleapi.IsNotModified to check whether the response
19349// error from Do is the result of In-None-Match.
19350func (c *AdvertiserLandingPagesGetCall) IfNoneMatch(entityTag string) *AdvertiserLandingPagesGetCall {
19351	c.ifNoneMatch_ = entityTag
19352	return c
19353}
19354
19355// Context sets the context to be used in this call's Do method. Any
19356// pending HTTP request will be aborted if the provided context is
19357// canceled.
19358func (c *AdvertiserLandingPagesGetCall) Context(ctx context.Context) *AdvertiserLandingPagesGetCall {
19359	c.ctx_ = ctx
19360	return c
19361}
19362
19363// Header returns an http.Header that can be modified by the caller to
19364// add HTTP headers to the request.
19365func (c *AdvertiserLandingPagesGetCall) Header() http.Header {
19366	if c.header_ == nil {
19367		c.header_ = make(http.Header)
19368	}
19369	return c.header_
19370}
19371
19372func (c *AdvertiserLandingPagesGetCall) doRequest(alt string) (*http.Response, error) {
19373	reqHeaders := make(http.Header)
19374	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19375	for k, v := range c.header_ {
19376		reqHeaders[k] = v
19377	}
19378	reqHeaders.Set("User-Agent", c.s.userAgent())
19379	if c.ifNoneMatch_ != "" {
19380		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19381	}
19382	var body io.Reader = nil
19383	c.urlParams_.Set("alt", alt)
19384	c.urlParams_.Set("prettyPrint", "false")
19385	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages/{id}")
19386	urls += "?" + c.urlParams_.Encode()
19387	req, err := http.NewRequest("GET", urls, body)
19388	if err != nil {
19389		return nil, err
19390	}
19391	req.Header = reqHeaders
19392	googleapi.Expand(req.URL, map[string]string{
19393		"profileId": strconv.FormatInt(c.profileId, 10),
19394		"id":        strconv.FormatInt(c.id, 10),
19395	})
19396	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19397}
19398
19399// Do executes the "dfareporting.advertiserLandingPages.get" call.
19400// Exactly one of *LandingPage or error will be non-nil. Any non-2xx
19401// status code is an error. Response headers are in either
19402// *LandingPage.ServerResponse.Header or (if a response was returned at
19403// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19404// to check whether the returned error was because
19405// http.StatusNotModified was returned.
19406func (c *AdvertiserLandingPagesGetCall) Do(opts ...googleapi.CallOption) (*LandingPage, error) {
19407	gensupport.SetOptions(c.urlParams_, opts...)
19408	res, err := c.doRequest("json")
19409	if res != nil && res.StatusCode == http.StatusNotModified {
19410		if res.Body != nil {
19411			res.Body.Close()
19412		}
19413		return nil, &googleapi.Error{
19414			Code:   res.StatusCode,
19415			Header: res.Header,
19416		}
19417	}
19418	if err != nil {
19419		return nil, err
19420	}
19421	defer googleapi.CloseBody(res)
19422	if err := googleapi.CheckResponse(res); err != nil {
19423		return nil, err
19424	}
19425	ret := &LandingPage{
19426		ServerResponse: googleapi.ServerResponse{
19427			Header:         res.Header,
19428			HTTPStatusCode: res.StatusCode,
19429		},
19430	}
19431	target := &ret
19432	if err := gensupport.DecodeResponse(target, res); err != nil {
19433		return nil, err
19434	}
19435	return ret, nil
19436	// {
19437	//   "description": "Gets one landing page by ID.",
19438	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages/{id}",
19439	//   "httpMethod": "GET",
19440	//   "id": "dfareporting.advertiserLandingPages.get",
19441	//   "parameterOrder": [
19442	//     "profileId",
19443	//     "id"
19444	//   ],
19445	//   "parameters": {
19446	//     "id": {
19447	//       "description": "Landing page ID.",
19448	//       "format": "int64",
19449	//       "location": "path",
19450	//       "required": true,
19451	//       "type": "string"
19452	//     },
19453	//     "profileId": {
19454	//       "description": "User profile ID associated with this request.",
19455	//       "format": "int64",
19456	//       "location": "path",
19457	//       "required": true,
19458	//       "type": "string"
19459	//     }
19460	//   },
19461	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages/{id}",
19462	//   "response": {
19463	//     "$ref": "LandingPage"
19464	//   },
19465	//   "scopes": [
19466	//     "https://www.googleapis.com/auth/dfatrafficking"
19467	//   ]
19468	// }
19469
19470}
19471
19472// method id "dfareporting.advertiserLandingPages.insert":
19473
19474type AdvertiserLandingPagesInsertCall struct {
19475	s           *Service
19476	profileId   int64
19477	landingpage *LandingPage
19478	urlParams_  gensupport.URLParams
19479	ctx_        context.Context
19480	header_     http.Header
19481}
19482
19483// Insert: Inserts a new landing page.
19484//
19485// - profileId: User profile ID associated with this request.
19486func (r *AdvertiserLandingPagesService) Insert(profileId int64, landingpage *LandingPage) *AdvertiserLandingPagesInsertCall {
19487	c := &AdvertiserLandingPagesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19488	c.profileId = profileId
19489	c.landingpage = landingpage
19490	return c
19491}
19492
19493// Fields allows partial responses to be retrieved. See
19494// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19495// for more information.
19496func (c *AdvertiserLandingPagesInsertCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesInsertCall {
19497	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19498	return c
19499}
19500
19501// Context sets the context to be used in this call's Do method. Any
19502// pending HTTP request will be aborted if the provided context is
19503// canceled.
19504func (c *AdvertiserLandingPagesInsertCall) Context(ctx context.Context) *AdvertiserLandingPagesInsertCall {
19505	c.ctx_ = ctx
19506	return c
19507}
19508
19509// Header returns an http.Header that can be modified by the caller to
19510// add HTTP headers to the request.
19511func (c *AdvertiserLandingPagesInsertCall) Header() http.Header {
19512	if c.header_ == nil {
19513		c.header_ = make(http.Header)
19514	}
19515	return c.header_
19516}
19517
19518func (c *AdvertiserLandingPagesInsertCall) doRequest(alt string) (*http.Response, error) {
19519	reqHeaders := make(http.Header)
19520	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19521	for k, v := range c.header_ {
19522		reqHeaders[k] = v
19523	}
19524	reqHeaders.Set("User-Agent", c.s.userAgent())
19525	var body io.Reader = nil
19526	body, err := googleapi.WithoutDataWrapper.JSONReader(c.landingpage)
19527	if err != nil {
19528		return nil, err
19529	}
19530	reqHeaders.Set("Content-Type", "application/json")
19531	c.urlParams_.Set("alt", alt)
19532	c.urlParams_.Set("prettyPrint", "false")
19533	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages")
19534	urls += "?" + c.urlParams_.Encode()
19535	req, err := http.NewRequest("POST", urls, body)
19536	if err != nil {
19537		return nil, err
19538	}
19539	req.Header = reqHeaders
19540	googleapi.Expand(req.URL, map[string]string{
19541		"profileId": strconv.FormatInt(c.profileId, 10),
19542	})
19543	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19544}
19545
19546// Do executes the "dfareporting.advertiserLandingPages.insert" call.
19547// Exactly one of *LandingPage or error will be non-nil. Any non-2xx
19548// status code is an error. Response headers are in either
19549// *LandingPage.ServerResponse.Header or (if a response was returned at
19550// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19551// to check whether the returned error was because
19552// http.StatusNotModified was returned.
19553func (c *AdvertiserLandingPagesInsertCall) Do(opts ...googleapi.CallOption) (*LandingPage, error) {
19554	gensupport.SetOptions(c.urlParams_, opts...)
19555	res, err := c.doRequest("json")
19556	if res != nil && res.StatusCode == http.StatusNotModified {
19557		if res.Body != nil {
19558			res.Body.Close()
19559		}
19560		return nil, &googleapi.Error{
19561			Code:   res.StatusCode,
19562			Header: res.Header,
19563		}
19564	}
19565	if err != nil {
19566		return nil, err
19567	}
19568	defer googleapi.CloseBody(res)
19569	if err := googleapi.CheckResponse(res); err != nil {
19570		return nil, err
19571	}
19572	ret := &LandingPage{
19573		ServerResponse: googleapi.ServerResponse{
19574			Header:         res.Header,
19575			HTTPStatusCode: res.StatusCode,
19576		},
19577	}
19578	target := &ret
19579	if err := gensupport.DecodeResponse(target, res); err != nil {
19580		return nil, err
19581	}
19582	return ret, nil
19583	// {
19584	//   "description": "Inserts a new landing page.",
19585	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages",
19586	//   "httpMethod": "POST",
19587	//   "id": "dfareporting.advertiserLandingPages.insert",
19588	//   "parameterOrder": [
19589	//     "profileId"
19590	//   ],
19591	//   "parameters": {
19592	//     "profileId": {
19593	//       "description": "User profile ID associated with this request.",
19594	//       "format": "int64",
19595	//       "location": "path",
19596	//       "required": true,
19597	//       "type": "string"
19598	//     }
19599	//   },
19600	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages",
19601	//   "request": {
19602	//     "$ref": "LandingPage"
19603	//   },
19604	//   "response": {
19605	//     "$ref": "LandingPage"
19606	//   },
19607	//   "scopes": [
19608	//     "https://www.googleapis.com/auth/dfatrafficking"
19609	//   ]
19610	// }
19611
19612}
19613
19614// method id "dfareporting.advertiserLandingPages.list":
19615
19616type AdvertiserLandingPagesListCall struct {
19617	s            *Service
19618	profileId    int64
19619	urlParams_   gensupport.URLParams
19620	ifNoneMatch_ string
19621	ctx_         context.Context
19622	header_      http.Header
19623}
19624
19625// List: Retrieves a list of landing pages.
19626//
19627// - profileId: User profile ID associated with this request.
19628func (r *AdvertiserLandingPagesService) List(profileId int64) *AdvertiserLandingPagesListCall {
19629	c := &AdvertiserLandingPagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19630	c.profileId = profileId
19631	return c
19632}
19633
19634// AdvertiserIds sets the optional parameter "advertiserIds": Select
19635// only landing pages that belong to these advertisers.
19636func (c *AdvertiserLandingPagesListCall) AdvertiserIds(advertiserIds ...int64) *AdvertiserLandingPagesListCall {
19637	var advertiserIds_ []string
19638	for _, v := range advertiserIds {
19639		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
19640	}
19641	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
19642	return c
19643}
19644
19645// Archived sets the optional parameter "archived": Select only archived
19646// landing pages. Don't set this field to select both archived and
19647// non-archived landing pages.
19648func (c *AdvertiserLandingPagesListCall) Archived(archived bool) *AdvertiserLandingPagesListCall {
19649	c.urlParams_.Set("archived", fmt.Sprint(archived))
19650	return c
19651}
19652
19653// CampaignIds sets the optional parameter "campaignIds": Select only
19654// landing pages that are associated with these campaigns.
19655func (c *AdvertiserLandingPagesListCall) CampaignIds(campaignIds ...int64) *AdvertiserLandingPagesListCall {
19656	var campaignIds_ []string
19657	for _, v := range campaignIds {
19658		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
19659	}
19660	c.urlParams_.SetMulti("campaignIds", campaignIds_)
19661	return c
19662}
19663
19664// Ids sets the optional parameter "ids": Select only landing pages with
19665// these IDs.
19666func (c *AdvertiserLandingPagesListCall) Ids(ids ...int64) *AdvertiserLandingPagesListCall {
19667	var ids_ []string
19668	for _, v := range ids {
19669		ids_ = append(ids_, fmt.Sprint(v))
19670	}
19671	c.urlParams_.SetMulti("ids", ids_)
19672	return c
19673}
19674
19675// MaxResults sets the optional parameter "maxResults": Maximum number
19676// of results to return.
19677func (c *AdvertiserLandingPagesListCall) MaxResults(maxResults int64) *AdvertiserLandingPagesListCall {
19678	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19679	return c
19680}
19681
19682// PageToken sets the optional parameter "pageToken": Value of the
19683// nextPageToken from the previous result page.
19684func (c *AdvertiserLandingPagesListCall) PageToken(pageToken string) *AdvertiserLandingPagesListCall {
19685	c.urlParams_.Set("pageToken", pageToken)
19686	return c
19687}
19688
19689// SearchString sets the optional parameter "searchString": Allows
19690// searching for landing pages by name or ID. Wildcards (*) are allowed.
19691// For example, "landingpage*2017" will return landing pages with names
19692// like "landingpage July 2017", "landingpage March 2017", or simply
19693// "landingpage 2017". Most of the searches also add wildcards
19694// implicitly at the start and the end of the search string. For
19695// example, a search string of "landingpage" will match campaigns with
19696// name "my landingpage", "landingpage 2015", or simply "landingpage".
19697func (c *AdvertiserLandingPagesListCall) SearchString(searchString string) *AdvertiserLandingPagesListCall {
19698	c.urlParams_.Set("searchString", searchString)
19699	return c
19700}
19701
19702// SortField sets the optional parameter "sortField": Field by which to
19703// sort the list.
19704//
19705// Possible values:
19706//   "ID" (default)
19707//   "NAME"
19708func (c *AdvertiserLandingPagesListCall) SortField(sortField string) *AdvertiserLandingPagesListCall {
19709	c.urlParams_.Set("sortField", sortField)
19710	return c
19711}
19712
19713// SortOrder sets the optional parameter "sortOrder": Order of sorted
19714// results.
19715//
19716// Possible values:
19717//   "ASCENDING" (default)
19718//   "DESCENDING"
19719func (c *AdvertiserLandingPagesListCall) SortOrder(sortOrder string) *AdvertiserLandingPagesListCall {
19720	c.urlParams_.Set("sortOrder", sortOrder)
19721	return c
19722}
19723
19724// SubaccountId sets the optional parameter "subaccountId": Select only
19725// landing pages that belong to this subaccount.
19726func (c *AdvertiserLandingPagesListCall) SubaccountId(subaccountId int64) *AdvertiserLandingPagesListCall {
19727	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
19728	return c
19729}
19730
19731// Fields allows partial responses to be retrieved. See
19732// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19733// for more information.
19734func (c *AdvertiserLandingPagesListCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesListCall {
19735	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19736	return c
19737}
19738
19739// IfNoneMatch sets the optional parameter which makes the operation
19740// fail if the object's ETag matches the given value. This is useful for
19741// getting updates only after the object has changed since the last
19742// request. Use googleapi.IsNotModified to check whether the response
19743// error from Do is the result of In-None-Match.
19744func (c *AdvertiserLandingPagesListCall) IfNoneMatch(entityTag string) *AdvertiserLandingPagesListCall {
19745	c.ifNoneMatch_ = entityTag
19746	return c
19747}
19748
19749// Context sets the context to be used in this call's Do method. Any
19750// pending HTTP request will be aborted if the provided context is
19751// canceled.
19752func (c *AdvertiserLandingPagesListCall) Context(ctx context.Context) *AdvertiserLandingPagesListCall {
19753	c.ctx_ = ctx
19754	return c
19755}
19756
19757// Header returns an http.Header that can be modified by the caller to
19758// add HTTP headers to the request.
19759func (c *AdvertiserLandingPagesListCall) Header() http.Header {
19760	if c.header_ == nil {
19761		c.header_ = make(http.Header)
19762	}
19763	return c.header_
19764}
19765
19766func (c *AdvertiserLandingPagesListCall) doRequest(alt string) (*http.Response, error) {
19767	reqHeaders := make(http.Header)
19768	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19769	for k, v := range c.header_ {
19770		reqHeaders[k] = v
19771	}
19772	reqHeaders.Set("User-Agent", c.s.userAgent())
19773	if c.ifNoneMatch_ != "" {
19774		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19775	}
19776	var body io.Reader = nil
19777	c.urlParams_.Set("alt", alt)
19778	c.urlParams_.Set("prettyPrint", "false")
19779	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages")
19780	urls += "?" + c.urlParams_.Encode()
19781	req, err := http.NewRequest("GET", urls, body)
19782	if err != nil {
19783		return nil, err
19784	}
19785	req.Header = reqHeaders
19786	googleapi.Expand(req.URL, map[string]string{
19787		"profileId": strconv.FormatInt(c.profileId, 10),
19788	})
19789	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19790}
19791
19792// Do executes the "dfareporting.advertiserLandingPages.list" call.
19793// Exactly one of *AdvertiserLandingPagesListResponse or error will be
19794// non-nil. Any non-2xx status code is an error. Response headers are in
19795// either *AdvertiserLandingPagesListResponse.ServerResponse.Header or
19796// (if a response was returned at all) in
19797// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19798// whether the returned error was because http.StatusNotModified was
19799// returned.
19800func (c *AdvertiserLandingPagesListCall) Do(opts ...googleapi.CallOption) (*AdvertiserLandingPagesListResponse, error) {
19801	gensupport.SetOptions(c.urlParams_, opts...)
19802	res, err := c.doRequest("json")
19803	if res != nil && res.StatusCode == http.StatusNotModified {
19804		if res.Body != nil {
19805			res.Body.Close()
19806		}
19807		return nil, &googleapi.Error{
19808			Code:   res.StatusCode,
19809			Header: res.Header,
19810		}
19811	}
19812	if err != nil {
19813		return nil, err
19814	}
19815	defer googleapi.CloseBody(res)
19816	if err := googleapi.CheckResponse(res); err != nil {
19817		return nil, err
19818	}
19819	ret := &AdvertiserLandingPagesListResponse{
19820		ServerResponse: googleapi.ServerResponse{
19821			Header:         res.Header,
19822			HTTPStatusCode: res.StatusCode,
19823		},
19824	}
19825	target := &ret
19826	if err := gensupport.DecodeResponse(target, res); err != nil {
19827		return nil, err
19828	}
19829	return ret, nil
19830	// {
19831	//   "description": "Retrieves a list of landing pages.",
19832	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages",
19833	//   "httpMethod": "GET",
19834	//   "id": "dfareporting.advertiserLandingPages.list",
19835	//   "parameterOrder": [
19836	//     "profileId"
19837	//   ],
19838	//   "parameters": {
19839	//     "advertiserIds": {
19840	//       "description": "Select only landing pages that belong to these advertisers.",
19841	//       "format": "int64",
19842	//       "location": "query",
19843	//       "repeated": true,
19844	//       "type": "string"
19845	//     },
19846	//     "archived": {
19847	//       "description": "Select only archived landing pages. Don't set this field to select both archived and non-archived landing pages.",
19848	//       "location": "query",
19849	//       "type": "boolean"
19850	//     },
19851	//     "campaignIds": {
19852	//       "description": "Select only landing pages that are associated with these campaigns.",
19853	//       "format": "int64",
19854	//       "location": "query",
19855	//       "repeated": true,
19856	//       "type": "string"
19857	//     },
19858	//     "ids": {
19859	//       "description": "Select only landing pages with these IDs.",
19860	//       "format": "int64",
19861	//       "location": "query",
19862	//       "repeated": true,
19863	//       "type": "string"
19864	//     },
19865	//     "maxResults": {
19866	//       "default": "1000",
19867	//       "description": "Maximum number of results to return.",
19868	//       "format": "int32",
19869	//       "location": "query",
19870	//       "maximum": "1000",
19871	//       "minimum": "0",
19872	//       "type": "integer"
19873	//     },
19874	//     "pageToken": {
19875	//       "description": "Value of the nextPageToken from the previous result page.",
19876	//       "location": "query",
19877	//       "type": "string"
19878	//     },
19879	//     "profileId": {
19880	//       "description": "User profile ID associated with this request.",
19881	//       "format": "int64",
19882	//       "location": "path",
19883	//       "required": true,
19884	//       "type": "string"
19885	//     },
19886	//     "searchString": {
19887	//       "description": "Allows searching for landing pages by name or ID. Wildcards (*) are allowed. For example, \"landingpage*2017\" will return landing pages with names like \"landingpage July 2017\", \"landingpage March 2017\", or simply \"landingpage 2017\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"landingpage\" will match campaigns with name \"my landingpage\", \"landingpage 2015\", or simply \"landingpage\".",
19888	//       "location": "query",
19889	//       "type": "string"
19890	//     },
19891	//     "sortField": {
19892	//       "default": "ID",
19893	//       "description": "Field by which to sort the list.",
19894	//       "enum": [
19895	//         "ID",
19896	//         "NAME"
19897	//       ],
19898	//       "enumDescriptions": [
19899	//         "",
19900	//         ""
19901	//       ],
19902	//       "location": "query",
19903	//       "type": "string"
19904	//     },
19905	//     "sortOrder": {
19906	//       "default": "ASCENDING",
19907	//       "description": "Order of sorted results.",
19908	//       "enum": [
19909	//         "ASCENDING",
19910	//         "DESCENDING"
19911	//       ],
19912	//       "enumDescriptions": [
19913	//         "",
19914	//         ""
19915	//       ],
19916	//       "location": "query",
19917	//       "type": "string"
19918	//     },
19919	//     "subaccountId": {
19920	//       "description": "Select only landing pages that belong to this subaccount.",
19921	//       "format": "int64",
19922	//       "location": "query",
19923	//       "type": "string"
19924	//     }
19925	//   },
19926	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages",
19927	//   "response": {
19928	//     "$ref": "AdvertiserLandingPagesListResponse"
19929	//   },
19930	//   "scopes": [
19931	//     "https://www.googleapis.com/auth/dfatrafficking"
19932	//   ]
19933	// }
19934
19935}
19936
19937// Pages invokes f for each page of results.
19938// A non-nil error returned from f will halt the iteration.
19939// The provided context supersedes any context provided to the Context method.
19940func (c *AdvertiserLandingPagesListCall) Pages(ctx context.Context, f func(*AdvertiserLandingPagesListResponse) error) error {
19941	c.ctx_ = ctx
19942	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19943	for {
19944		x, err := c.Do()
19945		if err != nil {
19946			return err
19947		}
19948		if err := f(x); err != nil {
19949			return err
19950		}
19951		if x.NextPageToken == "" {
19952			return nil
19953		}
19954		c.PageToken(x.NextPageToken)
19955	}
19956}
19957
19958// method id "dfareporting.advertiserLandingPages.patch":
19959
19960type AdvertiserLandingPagesPatchCall struct {
19961	s           *Service
19962	profileId   int64
19963	landingpage *LandingPage
19964	urlParams_  gensupport.URLParams
19965	ctx_        context.Context
19966	header_     http.Header
19967}
19968
19969// Patch: Updates an existing advertiser landing page. This method
19970// supports patch semantics.
19971//
19972// - id: LandingPage ID.
19973// - profileId: User profile ID associated with this request.
19974func (r *AdvertiserLandingPagesService) Patch(profileId int64, id int64, landingpage *LandingPage) *AdvertiserLandingPagesPatchCall {
19975	c := &AdvertiserLandingPagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19976	c.profileId = profileId
19977	c.urlParams_.Set("id", fmt.Sprint(id))
19978	c.landingpage = landingpage
19979	return c
19980}
19981
19982// Fields allows partial responses to be retrieved. See
19983// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19984// for more information.
19985func (c *AdvertiserLandingPagesPatchCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesPatchCall {
19986	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19987	return c
19988}
19989
19990// Context sets the context to be used in this call's Do method. Any
19991// pending HTTP request will be aborted if the provided context is
19992// canceled.
19993func (c *AdvertiserLandingPagesPatchCall) Context(ctx context.Context) *AdvertiserLandingPagesPatchCall {
19994	c.ctx_ = ctx
19995	return c
19996}
19997
19998// Header returns an http.Header that can be modified by the caller to
19999// add HTTP headers to the request.
20000func (c *AdvertiserLandingPagesPatchCall) Header() http.Header {
20001	if c.header_ == nil {
20002		c.header_ = make(http.Header)
20003	}
20004	return c.header_
20005}
20006
20007func (c *AdvertiserLandingPagesPatchCall) doRequest(alt string) (*http.Response, error) {
20008	reqHeaders := make(http.Header)
20009	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20010	for k, v := range c.header_ {
20011		reqHeaders[k] = v
20012	}
20013	reqHeaders.Set("User-Agent", c.s.userAgent())
20014	var body io.Reader = nil
20015	body, err := googleapi.WithoutDataWrapper.JSONReader(c.landingpage)
20016	if err != nil {
20017		return nil, err
20018	}
20019	reqHeaders.Set("Content-Type", "application/json")
20020	c.urlParams_.Set("alt", alt)
20021	c.urlParams_.Set("prettyPrint", "false")
20022	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages")
20023	urls += "?" + c.urlParams_.Encode()
20024	req, err := http.NewRequest("PATCH", urls, body)
20025	if err != nil {
20026		return nil, err
20027	}
20028	req.Header = reqHeaders
20029	googleapi.Expand(req.URL, map[string]string{
20030		"profileId": strconv.FormatInt(c.profileId, 10),
20031	})
20032	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20033}
20034
20035// Do executes the "dfareporting.advertiserLandingPages.patch" call.
20036// Exactly one of *LandingPage or error will be non-nil. Any non-2xx
20037// status code is an error. Response headers are in either
20038// *LandingPage.ServerResponse.Header or (if a response was returned at
20039// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20040// to check whether the returned error was because
20041// http.StatusNotModified was returned.
20042func (c *AdvertiserLandingPagesPatchCall) Do(opts ...googleapi.CallOption) (*LandingPage, error) {
20043	gensupport.SetOptions(c.urlParams_, opts...)
20044	res, err := c.doRequest("json")
20045	if res != nil && res.StatusCode == http.StatusNotModified {
20046		if res.Body != nil {
20047			res.Body.Close()
20048		}
20049		return nil, &googleapi.Error{
20050			Code:   res.StatusCode,
20051			Header: res.Header,
20052		}
20053	}
20054	if err != nil {
20055		return nil, err
20056	}
20057	defer googleapi.CloseBody(res)
20058	if err := googleapi.CheckResponse(res); err != nil {
20059		return nil, err
20060	}
20061	ret := &LandingPage{
20062		ServerResponse: googleapi.ServerResponse{
20063			Header:         res.Header,
20064			HTTPStatusCode: res.StatusCode,
20065		},
20066	}
20067	target := &ret
20068	if err := gensupport.DecodeResponse(target, res); err != nil {
20069		return nil, err
20070	}
20071	return ret, nil
20072	// {
20073	//   "description": "Updates an existing advertiser landing page. This method supports patch semantics.",
20074	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages",
20075	//   "httpMethod": "PATCH",
20076	//   "id": "dfareporting.advertiserLandingPages.patch",
20077	//   "parameterOrder": [
20078	//     "profileId",
20079	//     "id"
20080	//   ],
20081	//   "parameters": {
20082	//     "id": {
20083	//       "description": "LandingPage ID.",
20084	//       "format": "int64",
20085	//       "location": "query",
20086	//       "required": true,
20087	//       "type": "string"
20088	//     },
20089	//     "profileId": {
20090	//       "description": "User profile ID associated with this request.",
20091	//       "format": "int64",
20092	//       "location": "path",
20093	//       "required": true,
20094	//       "type": "string"
20095	//     }
20096	//   },
20097	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages",
20098	//   "request": {
20099	//     "$ref": "LandingPage"
20100	//   },
20101	//   "response": {
20102	//     "$ref": "LandingPage"
20103	//   },
20104	//   "scopes": [
20105	//     "https://www.googleapis.com/auth/dfatrafficking"
20106	//   ]
20107	// }
20108
20109}
20110
20111// method id "dfareporting.advertiserLandingPages.update":
20112
20113type AdvertiserLandingPagesUpdateCall struct {
20114	s           *Service
20115	profileId   int64
20116	landingpage *LandingPage
20117	urlParams_  gensupport.URLParams
20118	ctx_        context.Context
20119	header_     http.Header
20120}
20121
20122// Update: Updates an existing landing page.
20123//
20124// - profileId: User profile ID associated with this request.
20125func (r *AdvertiserLandingPagesService) Update(profileId int64, landingpage *LandingPage) *AdvertiserLandingPagesUpdateCall {
20126	c := &AdvertiserLandingPagesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20127	c.profileId = profileId
20128	c.landingpage = landingpage
20129	return c
20130}
20131
20132// Fields allows partial responses to be retrieved. See
20133// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20134// for more information.
20135func (c *AdvertiserLandingPagesUpdateCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesUpdateCall {
20136	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20137	return c
20138}
20139
20140// Context sets the context to be used in this call's Do method. Any
20141// pending HTTP request will be aborted if the provided context is
20142// canceled.
20143func (c *AdvertiserLandingPagesUpdateCall) Context(ctx context.Context) *AdvertiserLandingPagesUpdateCall {
20144	c.ctx_ = ctx
20145	return c
20146}
20147
20148// Header returns an http.Header that can be modified by the caller to
20149// add HTTP headers to the request.
20150func (c *AdvertiserLandingPagesUpdateCall) Header() http.Header {
20151	if c.header_ == nil {
20152		c.header_ = make(http.Header)
20153	}
20154	return c.header_
20155}
20156
20157func (c *AdvertiserLandingPagesUpdateCall) doRequest(alt string) (*http.Response, error) {
20158	reqHeaders := make(http.Header)
20159	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20160	for k, v := range c.header_ {
20161		reqHeaders[k] = v
20162	}
20163	reqHeaders.Set("User-Agent", c.s.userAgent())
20164	var body io.Reader = nil
20165	body, err := googleapi.WithoutDataWrapper.JSONReader(c.landingpage)
20166	if err != nil {
20167		return nil, err
20168	}
20169	reqHeaders.Set("Content-Type", "application/json")
20170	c.urlParams_.Set("alt", alt)
20171	c.urlParams_.Set("prettyPrint", "false")
20172	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages")
20173	urls += "?" + c.urlParams_.Encode()
20174	req, err := http.NewRequest("PUT", urls, body)
20175	if err != nil {
20176		return nil, err
20177	}
20178	req.Header = reqHeaders
20179	googleapi.Expand(req.URL, map[string]string{
20180		"profileId": strconv.FormatInt(c.profileId, 10),
20181	})
20182	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20183}
20184
20185// Do executes the "dfareporting.advertiserLandingPages.update" call.
20186// Exactly one of *LandingPage or error will be non-nil. Any non-2xx
20187// status code is an error. Response headers are in either
20188// *LandingPage.ServerResponse.Header or (if a response was returned at
20189// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20190// to check whether the returned error was because
20191// http.StatusNotModified was returned.
20192func (c *AdvertiserLandingPagesUpdateCall) Do(opts ...googleapi.CallOption) (*LandingPage, error) {
20193	gensupport.SetOptions(c.urlParams_, opts...)
20194	res, err := c.doRequest("json")
20195	if res != nil && res.StatusCode == http.StatusNotModified {
20196		if res.Body != nil {
20197			res.Body.Close()
20198		}
20199		return nil, &googleapi.Error{
20200			Code:   res.StatusCode,
20201			Header: res.Header,
20202		}
20203	}
20204	if err != nil {
20205		return nil, err
20206	}
20207	defer googleapi.CloseBody(res)
20208	if err := googleapi.CheckResponse(res); err != nil {
20209		return nil, err
20210	}
20211	ret := &LandingPage{
20212		ServerResponse: googleapi.ServerResponse{
20213			Header:         res.Header,
20214			HTTPStatusCode: res.StatusCode,
20215		},
20216	}
20217	target := &ret
20218	if err := gensupport.DecodeResponse(target, res); err != nil {
20219		return nil, err
20220	}
20221	return ret, nil
20222	// {
20223	//   "description": "Updates an existing landing page.",
20224	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages",
20225	//   "httpMethod": "PUT",
20226	//   "id": "dfareporting.advertiserLandingPages.update",
20227	//   "parameterOrder": [
20228	//     "profileId"
20229	//   ],
20230	//   "parameters": {
20231	//     "profileId": {
20232	//       "description": "User profile ID associated with this request.",
20233	//       "format": "int64",
20234	//       "location": "path",
20235	//       "required": true,
20236	//       "type": "string"
20237	//     }
20238	//   },
20239	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertiserLandingPages",
20240	//   "request": {
20241	//     "$ref": "LandingPage"
20242	//   },
20243	//   "response": {
20244	//     "$ref": "LandingPage"
20245	//   },
20246	//   "scopes": [
20247	//     "https://www.googleapis.com/auth/dfatrafficking"
20248	//   ]
20249	// }
20250
20251}
20252
20253// method id "dfareporting.advertisers.get":
20254
20255type AdvertisersGetCall struct {
20256	s            *Service
20257	profileId    int64
20258	id           int64
20259	urlParams_   gensupport.URLParams
20260	ifNoneMatch_ string
20261	ctx_         context.Context
20262	header_      http.Header
20263}
20264
20265// Get: Gets one advertiser by ID.
20266//
20267// - id: Advertiser ID.
20268// - profileId: User profile ID associated with this request.
20269func (r *AdvertisersService) Get(profileId int64, id int64) *AdvertisersGetCall {
20270	c := &AdvertisersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20271	c.profileId = profileId
20272	c.id = id
20273	return c
20274}
20275
20276// Fields allows partial responses to be retrieved. See
20277// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20278// for more information.
20279func (c *AdvertisersGetCall) Fields(s ...googleapi.Field) *AdvertisersGetCall {
20280	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20281	return c
20282}
20283
20284// IfNoneMatch sets the optional parameter which makes the operation
20285// fail if the object's ETag matches the given value. This is useful for
20286// getting updates only after the object has changed since the last
20287// request. Use googleapi.IsNotModified to check whether the response
20288// error from Do is the result of In-None-Match.
20289func (c *AdvertisersGetCall) IfNoneMatch(entityTag string) *AdvertisersGetCall {
20290	c.ifNoneMatch_ = entityTag
20291	return c
20292}
20293
20294// Context sets the context to be used in this call's Do method. Any
20295// pending HTTP request will be aborted if the provided context is
20296// canceled.
20297func (c *AdvertisersGetCall) Context(ctx context.Context) *AdvertisersGetCall {
20298	c.ctx_ = ctx
20299	return c
20300}
20301
20302// Header returns an http.Header that can be modified by the caller to
20303// add HTTP headers to the request.
20304func (c *AdvertisersGetCall) Header() http.Header {
20305	if c.header_ == nil {
20306		c.header_ = make(http.Header)
20307	}
20308	return c.header_
20309}
20310
20311func (c *AdvertisersGetCall) doRequest(alt string) (*http.Response, error) {
20312	reqHeaders := make(http.Header)
20313	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20314	for k, v := range c.header_ {
20315		reqHeaders[k] = v
20316	}
20317	reqHeaders.Set("User-Agent", c.s.userAgent())
20318	if c.ifNoneMatch_ != "" {
20319		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20320	}
20321	var body io.Reader = nil
20322	c.urlParams_.Set("alt", alt)
20323	c.urlParams_.Set("prettyPrint", "false")
20324	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertisers/{id}")
20325	urls += "?" + c.urlParams_.Encode()
20326	req, err := http.NewRequest("GET", urls, body)
20327	if err != nil {
20328		return nil, err
20329	}
20330	req.Header = reqHeaders
20331	googleapi.Expand(req.URL, map[string]string{
20332		"profileId": strconv.FormatInt(c.profileId, 10),
20333		"id":        strconv.FormatInt(c.id, 10),
20334	})
20335	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20336}
20337
20338// Do executes the "dfareporting.advertisers.get" call.
20339// Exactly one of *Advertiser or error will be non-nil. Any non-2xx
20340// status code is an error. Response headers are in either
20341// *Advertiser.ServerResponse.Header or (if a response was returned at
20342// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20343// to check whether the returned error was because
20344// http.StatusNotModified was returned.
20345func (c *AdvertisersGetCall) Do(opts ...googleapi.CallOption) (*Advertiser, error) {
20346	gensupport.SetOptions(c.urlParams_, opts...)
20347	res, err := c.doRequest("json")
20348	if res != nil && res.StatusCode == http.StatusNotModified {
20349		if res.Body != nil {
20350			res.Body.Close()
20351		}
20352		return nil, &googleapi.Error{
20353			Code:   res.StatusCode,
20354			Header: res.Header,
20355		}
20356	}
20357	if err != nil {
20358		return nil, err
20359	}
20360	defer googleapi.CloseBody(res)
20361	if err := googleapi.CheckResponse(res); err != nil {
20362		return nil, err
20363	}
20364	ret := &Advertiser{
20365		ServerResponse: googleapi.ServerResponse{
20366			Header:         res.Header,
20367			HTTPStatusCode: res.StatusCode,
20368		},
20369	}
20370	target := &ret
20371	if err := gensupport.DecodeResponse(target, res); err != nil {
20372		return nil, err
20373	}
20374	return ret, nil
20375	// {
20376	//   "description": "Gets one advertiser by ID.",
20377	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertisers/{id}",
20378	//   "httpMethod": "GET",
20379	//   "id": "dfareporting.advertisers.get",
20380	//   "parameterOrder": [
20381	//     "profileId",
20382	//     "id"
20383	//   ],
20384	//   "parameters": {
20385	//     "id": {
20386	//       "description": "Advertiser ID.",
20387	//       "format": "int64",
20388	//       "location": "path",
20389	//       "required": true,
20390	//       "type": "string"
20391	//     },
20392	//     "profileId": {
20393	//       "description": "User profile ID associated with this request.",
20394	//       "format": "int64",
20395	//       "location": "path",
20396	//       "required": true,
20397	//       "type": "string"
20398	//     }
20399	//   },
20400	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertisers/{id}",
20401	//   "response": {
20402	//     "$ref": "Advertiser"
20403	//   },
20404	//   "scopes": [
20405	//     "https://www.googleapis.com/auth/dfatrafficking"
20406	//   ]
20407	// }
20408
20409}
20410
20411// method id "dfareporting.advertisers.insert":
20412
20413type AdvertisersInsertCall struct {
20414	s          *Service
20415	profileId  int64
20416	advertiser *Advertiser
20417	urlParams_ gensupport.URLParams
20418	ctx_       context.Context
20419	header_    http.Header
20420}
20421
20422// Insert: Inserts a new advertiser.
20423//
20424// - profileId: User profile ID associated with this request.
20425func (r *AdvertisersService) Insert(profileId int64, advertiser *Advertiser) *AdvertisersInsertCall {
20426	c := &AdvertisersInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20427	c.profileId = profileId
20428	c.advertiser = advertiser
20429	return c
20430}
20431
20432// Fields allows partial responses to be retrieved. See
20433// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20434// for more information.
20435func (c *AdvertisersInsertCall) Fields(s ...googleapi.Field) *AdvertisersInsertCall {
20436	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20437	return c
20438}
20439
20440// Context sets the context to be used in this call's Do method. Any
20441// pending HTTP request will be aborted if the provided context is
20442// canceled.
20443func (c *AdvertisersInsertCall) Context(ctx context.Context) *AdvertisersInsertCall {
20444	c.ctx_ = ctx
20445	return c
20446}
20447
20448// Header returns an http.Header that can be modified by the caller to
20449// add HTTP headers to the request.
20450func (c *AdvertisersInsertCall) Header() http.Header {
20451	if c.header_ == nil {
20452		c.header_ = make(http.Header)
20453	}
20454	return c.header_
20455}
20456
20457func (c *AdvertisersInsertCall) doRequest(alt string) (*http.Response, error) {
20458	reqHeaders := make(http.Header)
20459	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20460	for k, v := range c.header_ {
20461		reqHeaders[k] = v
20462	}
20463	reqHeaders.Set("User-Agent", c.s.userAgent())
20464	var body io.Reader = nil
20465	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertiser)
20466	if err != nil {
20467		return nil, err
20468	}
20469	reqHeaders.Set("Content-Type", "application/json")
20470	c.urlParams_.Set("alt", alt)
20471	c.urlParams_.Set("prettyPrint", "false")
20472	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertisers")
20473	urls += "?" + c.urlParams_.Encode()
20474	req, err := http.NewRequest("POST", 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	})
20482	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20483}
20484
20485// Do executes the "dfareporting.advertisers.insert" call.
20486// Exactly one of *Advertiser or error will be non-nil. Any non-2xx
20487// status code is an error. Response headers are in either
20488// *Advertiser.ServerResponse.Header or (if a response was returned at
20489// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20490// to check whether the returned error was because
20491// http.StatusNotModified was returned.
20492func (c *AdvertisersInsertCall) Do(opts ...googleapi.CallOption) (*Advertiser, error) {
20493	gensupport.SetOptions(c.urlParams_, opts...)
20494	res, err := c.doRequest("json")
20495	if res != nil && res.StatusCode == http.StatusNotModified {
20496		if res.Body != nil {
20497			res.Body.Close()
20498		}
20499		return nil, &googleapi.Error{
20500			Code:   res.StatusCode,
20501			Header: res.Header,
20502		}
20503	}
20504	if err != nil {
20505		return nil, err
20506	}
20507	defer googleapi.CloseBody(res)
20508	if err := googleapi.CheckResponse(res); err != nil {
20509		return nil, err
20510	}
20511	ret := &Advertiser{
20512		ServerResponse: googleapi.ServerResponse{
20513			Header:         res.Header,
20514			HTTPStatusCode: res.StatusCode,
20515		},
20516	}
20517	target := &ret
20518	if err := gensupport.DecodeResponse(target, res); err != nil {
20519		return nil, err
20520	}
20521	return ret, nil
20522	// {
20523	//   "description": "Inserts a new advertiser.",
20524	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertisers",
20525	//   "httpMethod": "POST",
20526	//   "id": "dfareporting.advertisers.insert",
20527	//   "parameterOrder": [
20528	//     "profileId"
20529	//   ],
20530	//   "parameters": {
20531	//     "profileId": {
20532	//       "description": "User profile ID associated with this request.",
20533	//       "format": "int64",
20534	//       "location": "path",
20535	//       "required": true,
20536	//       "type": "string"
20537	//     }
20538	//   },
20539	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertisers",
20540	//   "request": {
20541	//     "$ref": "Advertiser"
20542	//   },
20543	//   "response": {
20544	//     "$ref": "Advertiser"
20545	//   },
20546	//   "scopes": [
20547	//     "https://www.googleapis.com/auth/dfatrafficking"
20548	//   ]
20549	// }
20550
20551}
20552
20553// method id "dfareporting.advertisers.list":
20554
20555type AdvertisersListCall struct {
20556	s            *Service
20557	profileId    int64
20558	urlParams_   gensupport.URLParams
20559	ifNoneMatch_ string
20560	ctx_         context.Context
20561	header_      http.Header
20562}
20563
20564// List: Retrieves a list of advertisers, possibly filtered. This method
20565// supports paging.
20566//
20567// - profileId: User profile ID associated with this request.
20568func (r *AdvertisersService) List(profileId int64) *AdvertisersListCall {
20569	c := &AdvertisersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20570	c.profileId = profileId
20571	return c
20572}
20573
20574// AdvertiserGroupIds sets the optional parameter "advertiserGroupIds":
20575// Select only advertisers with these advertiser group IDs.
20576func (c *AdvertisersListCall) AdvertiserGroupIds(advertiserGroupIds ...int64) *AdvertisersListCall {
20577	var advertiserGroupIds_ []string
20578	for _, v := range advertiserGroupIds {
20579		advertiserGroupIds_ = append(advertiserGroupIds_, fmt.Sprint(v))
20580	}
20581	c.urlParams_.SetMulti("advertiserGroupIds", advertiserGroupIds_)
20582	return c
20583}
20584
20585// FloodlightConfigurationIds sets the optional parameter
20586// "floodlightConfigurationIds": Select only advertisers with these
20587// floodlight configuration IDs.
20588func (c *AdvertisersListCall) FloodlightConfigurationIds(floodlightConfigurationIds ...int64) *AdvertisersListCall {
20589	var floodlightConfigurationIds_ []string
20590	for _, v := range floodlightConfigurationIds {
20591		floodlightConfigurationIds_ = append(floodlightConfigurationIds_, fmt.Sprint(v))
20592	}
20593	c.urlParams_.SetMulti("floodlightConfigurationIds", floodlightConfigurationIds_)
20594	return c
20595}
20596
20597// Ids sets the optional parameter "ids": Select only advertisers with
20598// these IDs.
20599func (c *AdvertisersListCall) Ids(ids ...int64) *AdvertisersListCall {
20600	var ids_ []string
20601	for _, v := range ids {
20602		ids_ = append(ids_, fmt.Sprint(v))
20603	}
20604	c.urlParams_.SetMulti("ids", ids_)
20605	return c
20606}
20607
20608// IncludeAdvertisersWithoutGroupsOnly sets the optional parameter
20609// "includeAdvertisersWithoutGroupsOnly": Select only advertisers which
20610// do not belong to any advertiser group.
20611func (c *AdvertisersListCall) IncludeAdvertisersWithoutGroupsOnly(includeAdvertisersWithoutGroupsOnly bool) *AdvertisersListCall {
20612	c.urlParams_.Set("includeAdvertisersWithoutGroupsOnly", fmt.Sprint(includeAdvertisersWithoutGroupsOnly))
20613	return c
20614}
20615
20616// MaxResults sets the optional parameter "maxResults": Maximum number
20617// of results to return.
20618func (c *AdvertisersListCall) MaxResults(maxResults int64) *AdvertisersListCall {
20619	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
20620	return c
20621}
20622
20623// OnlyParent sets the optional parameter "onlyParent": Select only
20624// advertisers which use another advertiser's floodlight configuration.
20625func (c *AdvertisersListCall) OnlyParent(onlyParent bool) *AdvertisersListCall {
20626	c.urlParams_.Set("onlyParent", fmt.Sprint(onlyParent))
20627	return c
20628}
20629
20630// PageToken sets the optional parameter "pageToken": Value of the
20631// nextPageToken from the previous result page.
20632func (c *AdvertisersListCall) PageToken(pageToken string) *AdvertisersListCall {
20633	c.urlParams_.Set("pageToken", pageToken)
20634	return c
20635}
20636
20637// SearchString sets the optional parameter "searchString": Allows
20638// searching for objects by name or ID. Wildcards (*) are allowed. For
20639// example, "advertiser*2015" will return objects with names like
20640// "advertiser June 2015", "advertiser April 2015", or simply
20641// "advertiser 2015". Most of the searches also add wildcards implicitly
20642// at the start and the end of the search string. For example, a search
20643// string of "advertiser" will match objects with name "my advertiser",
20644// "advertiser 2015", or simply "advertiser" .
20645func (c *AdvertisersListCall) SearchString(searchString string) *AdvertisersListCall {
20646	c.urlParams_.Set("searchString", searchString)
20647	return c
20648}
20649
20650// SortField sets the optional parameter "sortField": Field by which to
20651// sort the list.
20652//
20653// Possible values:
20654//   "ID" (default)
20655//   "NAME"
20656func (c *AdvertisersListCall) SortField(sortField string) *AdvertisersListCall {
20657	c.urlParams_.Set("sortField", sortField)
20658	return c
20659}
20660
20661// SortOrder sets the optional parameter "sortOrder": Order of sorted
20662// results.
20663//
20664// Possible values:
20665//   "ASCENDING" (default)
20666//   "DESCENDING"
20667func (c *AdvertisersListCall) SortOrder(sortOrder string) *AdvertisersListCall {
20668	c.urlParams_.Set("sortOrder", sortOrder)
20669	return c
20670}
20671
20672// Status sets the optional parameter "status": Select only advertisers
20673// with the specified status.
20674//
20675// Possible values:
20676//   "APPROVED"
20677//   "ON_HOLD"
20678func (c *AdvertisersListCall) Status(status string) *AdvertisersListCall {
20679	c.urlParams_.Set("status", status)
20680	return c
20681}
20682
20683// SubaccountId sets the optional parameter "subaccountId": Select only
20684// advertisers with these subaccount IDs.
20685func (c *AdvertisersListCall) SubaccountId(subaccountId int64) *AdvertisersListCall {
20686	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
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
20692// for more information.
20693func (c *AdvertisersListCall) Fields(s ...googleapi.Field) *AdvertisersListCall {
20694	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20695	return c
20696}
20697
20698// IfNoneMatch sets the optional parameter which makes the operation
20699// fail if the object's ETag matches the given value. This is useful for
20700// getting updates only after the object has changed since the last
20701// request. Use googleapi.IsNotModified to check whether the response
20702// error from Do is the result of In-None-Match.
20703func (c *AdvertisersListCall) IfNoneMatch(entityTag string) *AdvertisersListCall {
20704	c.ifNoneMatch_ = entityTag
20705	return c
20706}
20707
20708// Context sets the context to be used in this call's Do method. Any
20709// pending HTTP request will be aborted if the provided context is
20710// canceled.
20711func (c *AdvertisersListCall) Context(ctx context.Context) *AdvertisersListCall {
20712	c.ctx_ = ctx
20713	return c
20714}
20715
20716// Header returns an http.Header that can be modified by the caller to
20717// add HTTP headers to the request.
20718func (c *AdvertisersListCall) Header() http.Header {
20719	if c.header_ == nil {
20720		c.header_ = make(http.Header)
20721	}
20722	return c.header_
20723}
20724
20725func (c *AdvertisersListCall) doRequest(alt string) (*http.Response, error) {
20726	reqHeaders := make(http.Header)
20727	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20728	for k, v := range c.header_ {
20729		reqHeaders[k] = v
20730	}
20731	reqHeaders.Set("User-Agent", c.s.userAgent())
20732	if c.ifNoneMatch_ != "" {
20733		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20734	}
20735	var body io.Reader = nil
20736	c.urlParams_.Set("alt", alt)
20737	c.urlParams_.Set("prettyPrint", "false")
20738	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertisers")
20739	urls += "?" + c.urlParams_.Encode()
20740	req, err := http.NewRequest("GET", urls, body)
20741	if err != nil {
20742		return nil, err
20743	}
20744	req.Header = reqHeaders
20745	googleapi.Expand(req.URL, map[string]string{
20746		"profileId": strconv.FormatInt(c.profileId, 10),
20747	})
20748	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20749}
20750
20751// Do executes the "dfareporting.advertisers.list" call.
20752// Exactly one of *AdvertisersListResponse or error will be non-nil. Any
20753// non-2xx status code is an error. Response headers are in either
20754// *AdvertisersListResponse.ServerResponse.Header or (if a response was
20755// returned at all) in error.(*googleapi.Error).Header. Use
20756// googleapi.IsNotModified to check whether the returned error was
20757// because http.StatusNotModified was returned.
20758func (c *AdvertisersListCall) Do(opts ...googleapi.CallOption) (*AdvertisersListResponse, error) {
20759	gensupport.SetOptions(c.urlParams_, opts...)
20760	res, err := c.doRequest("json")
20761	if res != nil && res.StatusCode == http.StatusNotModified {
20762		if res.Body != nil {
20763			res.Body.Close()
20764		}
20765		return nil, &googleapi.Error{
20766			Code:   res.StatusCode,
20767			Header: res.Header,
20768		}
20769	}
20770	if err != nil {
20771		return nil, err
20772	}
20773	defer googleapi.CloseBody(res)
20774	if err := googleapi.CheckResponse(res); err != nil {
20775		return nil, err
20776	}
20777	ret := &AdvertisersListResponse{
20778		ServerResponse: googleapi.ServerResponse{
20779			Header:         res.Header,
20780			HTTPStatusCode: res.StatusCode,
20781		},
20782	}
20783	target := &ret
20784	if err := gensupport.DecodeResponse(target, res); err != nil {
20785		return nil, err
20786	}
20787	return ret, nil
20788	// {
20789	//   "description": "Retrieves a list of advertisers, possibly filtered. This method supports paging.",
20790	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertisers",
20791	//   "httpMethod": "GET",
20792	//   "id": "dfareporting.advertisers.list",
20793	//   "parameterOrder": [
20794	//     "profileId"
20795	//   ],
20796	//   "parameters": {
20797	//     "advertiserGroupIds": {
20798	//       "description": "Select only advertisers with these advertiser group IDs.",
20799	//       "format": "int64",
20800	//       "location": "query",
20801	//       "repeated": true,
20802	//       "type": "string"
20803	//     },
20804	//     "floodlightConfigurationIds": {
20805	//       "description": "Select only advertisers with these floodlight configuration IDs.",
20806	//       "format": "int64",
20807	//       "location": "query",
20808	//       "repeated": true,
20809	//       "type": "string"
20810	//     },
20811	//     "ids": {
20812	//       "description": "Select only advertisers with these IDs.",
20813	//       "format": "int64",
20814	//       "location": "query",
20815	//       "repeated": true,
20816	//       "type": "string"
20817	//     },
20818	//     "includeAdvertisersWithoutGroupsOnly": {
20819	//       "description": "Select only advertisers which do not belong to any advertiser group.",
20820	//       "location": "query",
20821	//       "type": "boolean"
20822	//     },
20823	//     "maxResults": {
20824	//       "default": "1000",
20825	//       "description": "Maximum number of results to return.",
20826	//       "format": "int32",
20827	//       "location": "query",
20828	//       "maximum": "1000",
20829	//       "minimum": "0",
20830	//       "type": "integer"
20831	//     },
20832	//     "onlyParent": {
20833	//       "description": "Select only advertisers which use another advertiser's floodlight configuration.",
20834	//       "location": "query",
20835	//       "type": "boolean"
20836	//     },
20837	//     "pageToken": {
20838	//       "description": "Value of the nextPageToken from the previous result page.",
20839	//       "location": "query",
20840	//       "type": "string"
20841	//     },
20842	//     "profileId": {
20843	//       "description": "User profile ID associated with this request.",
20844	//       "format": "int64",
20845	//       "location": "path",
20846	//       "required": true,
20847	//       "type": "string"
20848	//     },
20849	//     "searchString": {
20850	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser June 2015\", \"advertiser April 2015\", or simply \"advertiser 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertiser\" will match objects with name \"my advertiser\", \"advertiser 2015\", or simply \"advertiser\" .",
20851	//       "location": "query",
20852	//       "type": "string"
20853	//     },
20854	//     "sortField": {
20855	//       "default": "ID",
20856	//       "description": "Field by which to sort the list.",
20857	//       "enum": [
20858	//         "ID",
20859	//         "NAME"
20860	//       ],
20861	//       "enumDescriptions": [
20862	//         "",
20863	//         ""
20864	//       ],
20865	//       "location": "query",
20866	//       "type": "string"
20867	//     },
20868	//     "sortOrder": {
20869	//       "default": "ASCENDING",
20870	//       "description": "Order of sorted results.",
20871	//       "enum": [
20872	//         "ASCENDING",
20873	//         "DESCENDING"
20874	//       ],
20875	//       "enumDescriptions": [
20876	//         "",
20877	//         ""
20878	//       ],
20879	//       "location": "query",
20880	//       "type": "string"
20881	//     },
20882	//     "status": {
20883	//       "description": "Select only advertisers with the specified status.",
20884	//       "enum": [
20885	//         "APPROVED",
20886	//         "ON_HOLD"
20887	//       ],
20888	//       "enumDescriptions": [
20889	//         "",
20890	//         ""
20891	//       ],
20892	//       "location": "query",
20893	//       "type": "string"
20894	//     },
20895	//     "subaccountId": {
20896	//       "description": "Select only advertisers with these subaccount IDs.",
20897	//       "format": "int64",
20898	//       "location": "query",
20899	//       "type": "string"
20900	//     }
20901	//   },
20902	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertisers",
20903	//   "response": {
20904	//     "$ref": "AdvertisersListResponse"
20905	//   },
20906	//   "scopes": [
20907	//     "https://www.googleapis.com/auth/dfatrafficking"
20908	//   ]
20909	// }
20910
20911}
20912
20913// Pages invokes f for each page of results.
20914// A non-nil error returned from f will halt the iteration.
20915// The provided context supersedes any context provided to the Context method.
20916func (c *AdvertisersListCall) Pages(ctx context.Context, f func(*AdvertisersListResponse) error) error {
20917	c.ctx_ = ctx
20918	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20919	for {
20920		x, err := c.Do()
20921		if err != nil {
20922			return err
20923		}
20924		if err := f(x); err != nil {
20925			return err
20926		}
20927		if x.NextPageToken == "" {
20928			return nil
20929		}
20930		c.PageToken(x.NextPageToken)
20931	}
20932}
20933
20934// method id "dfareporting.advertisers.patch":
20935
20936type AdvertisersPatchCall struct {
20937	s          *Service
20938	profileId  int64
20939	advertiser *Advertiser
20940	urlParams_ gensupport.URLParams
20941	ctx_       context.Context
20942	header_    http.Header
20943}
20944
20945// Patch: Updates an existing advertiser. This method supports patch
20946// semantics.
20947//
20948// - id: Advertiser ID.
20949// - profileId: User profile ID associated with this request.
20950func (r *AdvertisersService) Patch(profileId int64, id int64, advertiser *Advertiser) *AdvertisersPatchCall {
20951	c := &AdvertisersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20952	c.profileId = profileId
20953	c.urlParams_.Set("id", fmt.Sprint(id))
20954	c.advertiser = advertiser
20955	return c
20956}
20957
20958// Fields allows partial responses to be retrieved. See
20959// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20960// for more information.
20961func (c *AdvertisersPatchCall) Fields(s ...googleapi.Field) *AdvertisersPatchCall {
20962	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20963	return c
20964}
20965
20966// Context sets the context to be used in this call's Do method. Any
20967// pending HTTP request will be aborted if the provided context is
20968// canceled.
20969func (c *AdvertisersPatchCall) Context(ctx context.Context) *AdvertisersPatchCall {
20970	c.ctx_ = ctx
20971	return c
20972}
20973
20974// Header returns an http.Header that can be modified by the caller to
20975// add HTTP headers to the request.
20976func (c *AdvertisersPatchCall) Header() http.Header {
20977	if c.header_ == nil {
20978		c.header_ = make(http.Header)
20979	}
20980	return c.header_
20981}
20982
20983func (c *AdvertisersPatchCall) doRequest(alt string) (*http.Response, error) {
20984	reqHeaders := make(http.Header)
20985	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20986	for k, v := range c.header_ {
20987		reqHeaders[k] = v
20988	}
20989	reqHeaders.Set("User-Agent", c.s.userAgent())
20990	var body io.Reader = nil
20991	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertiser)
20992	if err != nil {
20993		return nil, err
20994	}
20995	reqHeaders.Set("Content-Type", "application/json")
20996	c.urlParams_.Set("alt", alt)
20997	c.urlParams_.Set("prettyPrint", "false")
20998	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertisers")
20999	urls += "?" + c.urlParams_.Encode()
21000	req, err := http.NewRequest("PATCH", urls, body)
21001	if err != nil {
21002		return nil, err
21003	}
21004	req.Header = reqHeaders
21005	googleapi.Expand(req.URL, map[string]string{
21006		"profileId": strconv.FormatInt(c.profileId, 10),
21007	})
21008	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21009}
21010
21011// Do executes the "dfareporting.advertisers.patch" call.
21012// Exactly one of *Advertiser or error will be non-nil. Any non-2xx
21013// status code is an error. Response headers are in either
21014// *Advertiser.ServerResponse.Header or (if a response was returned at
21015// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21016// to check whether the returned error was because
21017// http.StatusNotModified was returned.
21018func (c *AdvertisersPatchCall) Do(opts ...googleapi.CallOption) (*Advertiser, error) {
21019	gensupport.SetOptions(c.urlParams_, opts...)
21020	res, err := c.doRequest("json")
21021	if res != nil && res.StatusCode == http.StatusNotModified {
21022		if res.Body != nil {
21023			res.Body.Close()
21024		}
21025		return nil, &googleapi.Error{
21026			Code:   res.StatusCode,
21027			Header: res.Header,
21028		}
21029	}
21030	if err != nil {
21031		return nil, err
21032	}
21033	defer googleapi.CloseBody(res)
21034	if err := googleapi.CheckResponse(res); err != nil {
21035		return nil, err
21036	}
21037	ret := &Advertiser{
21038		ServerResponse: googleapi.ServerResponse{
21039			Header:         res.Header,
21040			HTTPStatusCode: res.StatusCode,
21041		},
21042	}
21043	target := &ret
21044	if err := gensupport.DecodeResponse(target, res); err != nil {
21045		return nil, err
21046	}
21047	return ret, nil
21048	// {
21049	//   "description": "Updates an existing advertiser. This method supports patch semantics.",
21050	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertisers",
21051	//   "httpMethod": "PATCH",
21052	//   "id": "dfareporting.advertisers.patch",
21053	//   "parameterOrder": [
21054	//     "profileId",
21055	//     "id"
21056	//   ],
21057	//   "parameters": {
21058	//     "id": {
21059	//       "description": "Advertiser ID.",
21060	//       "format": "int64",
21061	//       "location": "query",
21062	//       "required": true,
21063	//       "type": "string"
21064	//     },
21065	//     "profileId": {
21066	//       "description": "User profile ID associated with this request.",
21067	//       "format": "int64",
21068	//       "location": "path",
21069	//       "required": true,
21070	//       "type": "string"
21071	//     }
21072	//   },
21073	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertisers",
21074	//   "request": {
21075	//     "$ref": "Advertiser"
21076	//   },
21077	//   "response": {
21078	//     "$ref": "Advertiser"
21079	//   },
21080	//   "scopes": [
21081	//     "https://www.googleapis.com/auth/dfatrafficking"
21082	//   ]
21083	// }
21084
21085}
21086
21087// method id "dfareporting.advertisers.update":
21088
21089type AdvertisersUpdateCall struct {
21090	s          *Service
21091	profileId  int64
21092	advertiser *Advertiser
21093	urlParams_ gensupport.URLParams
21094	ctx_       context.Context
21095	header_    http.Header
21096}
21097
21098// Update: Updates an existing advertiser.
21099//
21100// - profileId: User profile ID associated with this request.
21101func (r *AdvertisersService) Update(profileId int64, advertiser *Advertiser) *AdvertisersUpdateCall {
21102	c := &AdvertisersUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21103	c.profileId = profileId
21104	c.advertiser = advertiser
21105	return c
21106}
21107
21108// Fields allows partial responses to be retrieved. See
21109// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21110// for more information.
21111func (c *AdvertisersUpdateCall) Fields(s ...googleapi.Field) *AdvertisersUpdateCall {
21112	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21113	return c
21114}
21115
21116// Context sets the context to be used in this call's Do method. Any
21117// pending HTTP request will be aborted if the provided context is
21118// canceled.
21119func (c *AdvertisersUpdateCall) Context(ctx context.Context) *AdvertisersUpdateCall {
21120	c.ctx_ = ctx
21121	return c
21122}
21123
21124// Header returns an http.Header that can be modified by the caller to
21125// add HTTP headers to the request.
21126func (c *AdvertisersUpdateCall) Header() http.Header {
21127	if c.header_ == nil {
21128		c.header_ = make(http.Header)
21129	}
21130	return c.header_
21131}
21132
21133func (c *AdvertisersUpdateCall) doRequest(alt string) (*http.Response, error) {
21134	reqHeaders := make(http.Header)
21135	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21136	for k, v := range c.header_ {
21137		reqHeaders[k] = v
21138	}
21139	reqHeaders.Set("User-Agent", c.s.userAgent())
21140	var body io.Reader = nil
21141	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertiser)
21142	if err != nil {
21143		return nil, err
21144	}
21145	reqHeaders.Set("Content-Type", "application/json")
21146	c.urlParams_.Set("alt", alt)
21147	c.urlParams_.Set("prettyPrint", "false")
21148	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/advertisers")
21149	urls += "?" + c.urlParams_.Encode()
21150	req, err := http.NewRequest("PUT", urls, body)
21151	if err != nil {
21152		return nil, err
21153	}
21154	req.Header = reqHeaders
21155	googleapi.Expand(req.URL, map[string]string{
21156		"profileId": strconv.FormatInt(c.profileId, 10),
21157	})
21158	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21159}
21160
21161// Do executes the "dfareporting.advertisers.update" call.
21162// Exactly one of *Advertiser or error will be non-nil. Any non-2xx
21163// status code is an error. Response headers are in either
21164// *Advertiser.ServerResponse.Header or (if a response was returned at
21165// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21166// to check whether the returned error was because
21167// http.StatusNotModified was returned.
21168func (c *AdvertisersUpdateCall) Do(opts ...googleapi.CallOption) (*Advertiser, error) {
21169	gensupport.SetOptions(c.urlParams_, opts...)
21170	res, err := c.doRequest("json")
21171	if res != nil && res.StatusCode == http.StatusNotModified {
21172		if res.Body != nil {
21173			res.Body.Close()
21174		}
21175		return nil, &googleapi.Error{
21176			Code:   res.StatusCode,
21177			Header: res.Header,
21178		}
21179	}
21180	if err != nil {
21181		return nil, err
21182	}
21183	defer googleapi.CloseBody(res)
21184	if err := googleapi.CheckResponse(res); err != nil {
21185		return nil, err
21186	}
21187	ret := &Advertiser{
21188		ServerResponse: googleapi.ServerResponse{
21189			Header:         res.Header,
21190			HTTPStatusCode: res.StatusCode,
21191		},
21192	}
21193	target := &ret
21194	if err := gensupport.DecodeResponse(target, res); err != nil {
21195		return nil, err
21196	}
21197	return ret, nil
21198	// {
21199	//   "description": "Updates an existing advertiser.",
21200	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/advertisers",
21201	//   "httpMethod": "PUT",
21202	//   "id": "dfareporting.advertisers.update",
21203	//   "parameterOrder": [
21204	//     "profileId"
21205	//   ],
21206	//   "parameters": {
21207	//     "profileId": {
21208	//       "description": "User profile ID associated with this request.",
21209	//       "format": "int64",
21210	//       "location": "path",
21211	//       "required": true,
21212	//       "type": "string"
21213	//     }
21214	//   },
21215	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/advertisers",
21216	//   "request": {
21217	//     "$ref": "Advertiser"
21218	//   },
21219	//   "response": {
21220	//     "$ref": "Advertiser"
21221	//   },
21222	//   "scopes": [
21223	//     "https://www.googleapis.com/auth/dfatrafficking"
21224	//   ]
21225	// }
21226
21227}
21228
21229// method id "dfareporting.browsers.list":
21230
21231type BrowsersListCall struct {
21232	s            *Service
21233	profileId    int64
21234	urlParams_   gensupport.URLParams
21235	ifNoneMatch_ string
21236	ctx_         context.Context
21237	header_      http.Header
21238}
21239
21240// List: Retrieves a list of browsers.
21241//
21242// - profileId: User profile ID associated with this request.
21243func (r *BrowsersService) List(profileId int64) *BrowsersListCall {
21244	c := &BrowsersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21245	c.profileId = profileId
21246	return c
21247}
21248
21249// Fields allows partial responses to be retrieved. See
21250// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21251// for more information.
21252func (c *BrowsersListCall) Fields(s ...googleapi.Field) *BrowsersListCall {
21253	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21254	return c
21255}
21256
21257// IfNoneMatch sets the optional parameter which makes the operation
21258// fail if the object's ETag matches the given value. This is useful for
21259// getting updates only after the object has changed since the last
21260// request. Use googleapi.IsNotModified to check whether the response
21261// error from Do is the result of In-None-Match.
21262func (c *BrowsersListCall) IfNoneMatch(entityTag string) *BrowsersListCall {
21263	c.ifNoneMatch_ = entityTag
21264	return c
21265}
21266
21267// Context sets the context to be used in this call's Do method. Any
21268// pending HTTP request will be aborted if the provided context is
21269// canceled.
21270func (c *BrowsersListCall) Context(ctx context.Context) *BrowsersListCall {
21271	c.ctx_ = ctx
21272	return c
21273}
21274
21275// Header returns an http.Header that can be modified by the caller to
21276// add HTTP headers to the request.
21277func (c *BrowsersListCall) Header() http.Header {
21278	if c.header_ == nil {
21279		c.header_ = make(http.Header)
21280	}
21281	return c.header_
21282}
21283
21284func (c *BrowsersListCall) doRequest(alt string) (*http.Response, error) {
21285	reqHeaders := make(http.Header)
21286	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21287	for k, v := range c.header_ {
21288		reqHeaders[k] = v
21289	}
21290	reqHeaders.Set("User-Agent", c.s.userAgent())
21291	if c.ifNoneMatch_ != "" {
21292		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21293	}
21294	var body io.Reader = nil
21295	c.urlParams_.Set("alt", alt)
21296	c.urlParams_.Set("prettyPrint", "false")
21297	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/browsers")
21298	urls += "?" + c.urlParams_.Encode()
21299	req, err := http.NewRequest("GET", urls, body)
21300	if err != nil {
21301		return nil, err
21302	}
21303	req.Header = reqHeaders
21304	googleapi.Expand(req.URL, map[string]string{
21305		"profileId": strconv.FormatInt(c.profileId, 10),
21306	})
21307	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21308}
21309
21310// Do executes the "dfareporting.browsers.list" call.
21311// Exactly one of *BrowsersListResponse or error will be non-nil. Any
21312// non-2xx status code is an error. Response headers are in either
21313// *BrowsersListResponse.ServerResponse.Header or (if a response was
21314// returned at all) in error.(*googleapi.Error).Header. Use
21315// googleapi.IsNotModified to check whether the returned error was
21316// because http.StatusNotModified was returned.
21317func (c *BrowsersListCall) Do(opts ...googleapi.CallOption) (*BrowsersListResponse, error) {
21318	gensupport.SetOptions(c.urlParams_, opts...)
21319	res, err := c.doRequest("json")
21320	if res != nil && res.StatusCode == http.StatusNotModified {
21321		if res.Body != nil {
21322			res.Body.Close()
21323		}
21324		return nil, &googleapi.Error{
21325			Code:   res.StatusCode,
21326			Header: res.Header,
21327		}
21328	}
21329	if err != nil {
21330		return nil, err
21331	}
21332	defer googleapi.CloseBody(res)
21333	if err := googleapi.CheckResponse(res); err != nil {
21334		return nil, err
21335	}
21336	ret := &BrowsersListResponse{
21337		ServerResponse: googleapi.ServerResponse{
21338			Header:         res.Header,
21339			HTTPStatusCode: res.StatusCode,
21340		},
21341	}
21342	target := &ret
21343	if err := gensupport.DecodeResponse(target, res); err != nil {
21344		return nil, err
21345	}
21346	return ret, nil
21347	// {
21348	//   "description": "Retrieves a list of browsers.",
21349	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/browsers",
21350	//   "httpMethod": "GET",
21351	//   "id": "dfareporting.browsers.list",
21352	//   "parameterOrder": [
21353	//     "profileId"
21354	//   ],
21355	//   "parameters": {
21356	//     "profileId": {
21357	//       "description": "User profile ID associated with this request.",
21358	//       "format": "int64",
21359	//       "location": "path",
21360	//       "required": true,
21361	//       "type": "string"
21362	//     }
21363	//   },
21364	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/browsers",
21365	//   "response": {
21366	//     "$ref": "BrowsersListResponse"
21367	//   },
21368	//   "scopes": [
21369	//     "https://www.googleapis.com/auth/dfatrafficking"
21370	//   ]
21371	// }
21372
21373}
21374
21375// method id "dfareporting.campaignCreativeAssociations.insert":
21376
21377type CampaignCreativeAssociationsInsertCall struct {
21378	s                           *Service
21379	profileId                   int64
21380	campaignId                  int64
21381	campaigncreativeassociation *CampaignCreativeAssociation
21382	urlParams_                  gensupport.URLParams
21383	ctx_                        context.Context
21384	header_                     http.Header
21385}
21386
21387// Insert: Associates a creative with the specified campaign. This
21388// method creates a default ad with dimensions matching the creative in
21389// the campaign if such a default ad does not exist already.
21390//
21391// - campaignId: Campaign ID in this association.
21392// - profileId: User profile ID associated with this request.
21393func (r *CampaignCreativeAssociationsService) Insert(profileId int64, campaignId int64, campaigncreativeassociation *CampaignCreativeAssociation) *CampaignCreativeAssociationsInsertCall {
21394	c := &CampaignCreativeAssociationsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21395	c.profileId = profileId
21396	c.campaignId = campaignId
21397	c.campaigncreativeassociation = campaigncreativeassociation
21398	return c
21399}
21400
21401// Fields allows partial responses to be retrieved. See
21402// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21403// for more information.
21404func (c *CampaignCreativeAssociationsInsertCall) Fields(s ...googleapi.Field) *CampaignCreativeAssociationsInsertCall {
21405	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21406	return c
21407}
21408
21409// Context sets the context to be used in this call's Do method. Any
21410// pending HTTP request will be aborted if the provided context is
21411// canceled.
21412func (c *CampaignCreativeAssociationsInsertCall) Context(ctx context.Context) *CampaignCreativeAssociationsInsertCall {
21413	c.ctx_ = ctx
21414	return c
21415}
21416
21417// Header returns an http.Header that can be modified by the caller to
21418// add HTTP headers to the request.
21419func (c *CampaignCreativeAssociationsInsertCall) Header() http.Header {
21420	if c.header_ == nil {
21421		c.header_ = make(http.Header)
21422	}
21423	return c.header_
21424}
21425
21426func (c *CampaignCreativeAssociationsInsertCall) doRequest(alt string) (*http.Response, error) {
21427	reqHeaders := make(http.Header)
21428	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21429	for k, v := range c.header_ {
21430		reqHeaders[k] = v
21431	}
21432	reqHeaders.Set("User-Agent", c.s.userAgent())
21433	var body io.Reader = nil
21434	body, err := googleapi.WithoutDataWrapper.JSONReader(c.campaigncreativeassociation)
21435	if err != nil {
21436		return nil, err
21437	}
21438	reqHeaders.Set("Content-Type", "application/json")
21439	c.urlParams_.Set("alt", alt)
21440	c.urlParams_.Set("prettyPrint", "false")
21441	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations")
21442	urls += "?" + c.urlParams_.Encode()
21443	req, err := http.NewRequest("POST", urls, body)
21444	if err != nil {
21445		return nil, err
21446	}
21447	req.Header = reqHeaders
21448	googleapi.Expand(req.URL, map[string]string{
21449		"profileId":  strconv.FormatInt(c.profileId, 10),
21450		"campaignId": strconv.FormatInt(c.campaignId, 10),
21451	})
21452	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21453}
21454
21455// Do executes the "dfareporting.campaignCreativeAssociations.insert" call.
21456// Exactly one of *CampaignCreativeAssociation or error will be non-nil.
21457// Any non-2xx status code is an error. Response headers are in either
21458// *CampaignCreativeAssociation.ServerResponse.Header or (if a response
21459// was returned at all) in error.(*googleapi.Error).Header. Use
21460// googleapi.IsNotModified to check whether the returned error was
21461// because http.StatusNotModified was returned.
21462func (c *CampaignCreativeAssociationsInsertCall) Do(opts ...googleapi.CallOption) (*CampaignCreativeAssociation, error) {
21463	gensupport.SetOptions(c.urlParams_, opts...)
21464	res, err := c.doRequest("json")
21465	if res != nil && res.StatusCode == http.StatusNotModified {
21466		if res.Body != nil {
21467			res.Body.Close()
21468		}
21469		return nil, &googleapi.Error{
21470			Code:   res.StatusCode,
21471			Header: res.Header,
21472		}
21473	}
21474	if err != nil {
21475		return nil, err
21476	}
21477	defer googleapi.CloseBody(res)
21478	if err := googleapi.CheckResponse(res); err != nil {
21479		return nil, err
21480	}
21481	ret := &CampaignCreativeAssociation{
21482		ServerResponse: googleapi.ServerResponse{
21483			Header:         res.Header,
21484			HTTPStatusCode: res.StatusCode,
21485		},
21486	}
21487	target := &ret
21488	if err := gensupport.DecodeResponse(target, res); err != nil {
21489		return nil, err
21490	}
21491	return ret, nil
21492	// {
21493	//   "description": "Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.",
21494	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations",
21495	//   "httpMethod": "POST",
21496	//   "id": "dfareporting.campaignCreativeAssociations.insert",
21497	//   "parameterOrder": [
21498	//     "profileId",
21499	//     "campaignId"
21500	//   ],
21501	//   "parameters": {
21502	//     "campaignId": {
21503	//       "description": "Campaign ID in this association.",
21504	//       "format": "int64",
21505	//       "location": "path",
21506	//       "required": true,
21507	//       "type": "string"
21508	//     },
21509	//     "profileId": {
21510	//       "description": "User profile ID associated with this request.",
21511	//       "format": "int64",
21512	//       "location": "path",
21513	//       "required": true,
21514	//       "type": "string"
21515	//     }
21516	//   },
21517	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations",
21518	//   "request": {
21519	//     "$ref": "CampaignCreativeAssociation"
21520	//   },
21521	//   "response": {
21522	//     "$ref": "CampaignCreativeAssociation"
21523	//   },
21524	//   "scopes": [
21525	//     "https://www.googleapis.com/auth/dfatrafficking"
21526	//   ]
21527	// }
21528
21529}
21530
21531// method id "dfareporting.campaignCreativeAssociations.list":
21532
21533type CampaignCreativeAssociationsListCall struct {
21534	s            *Service
21535	profileId    int64
21536	campaignId   int64
21537	urlParams_   gensupport.URLParams
21538	ifNoneMatch_ string
21539	ctx_         context.Context
21540	header_      http.Header
21541}
21542
21543// List: Retrieves the list of creative IDs associated with the
21544// specified campaign. This method supports paging.
21545//
21546// - campaignId: Campaign ID in this association.
21547// - profileId: User profile ID associated with this request.
21548func (r *CampaignCreativeAssociationsService) List(profileId int64, campaignId int64) *CampaignCreativeAssociationsListCall {
21549	c := &CampaignCreativeAssociationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21550	c.profileId = profileId
21551	c.campaignId = campaignId
21552	return c
21553}
21554
21555// MaxResults sets the optional parameter "maxResults": Maximum number
21556// of results to return.
21557func (c *CampaignCreativeAssociationsListCall) MaxResults(maxResults int64) *CampaignCreativeAssociationsListCall {
21558	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21559	return c
21560}
21561
21562// PageToken sets the optional parameter "pageToken": Value of the
21563// nextPageToken from the previous result page.
21564func (c *CampaignCreativeAssociationsListCall) PageToken(pageToken string) *CampaignCreativeAssociationsListCall {
21565	c.urlParams_.Set("pageToken", pageToken)
21566	return c
21567}
21568
21569// SortOrder sets the optional parameter "sortOrder": Order of sorted
21570// results.
21571//
21572// Possible values:
21573//   "ASCENDING" (default)
21574//   "DESCENDING"
21575func (c *CampaignCreativeAssociationsListCall) SortOrder(sortOrder string) *CampaignCreativeAssociationsListCall {
21576	c.urlParams_.Set("sortOrder", sortOrder)
21577	return c
21578}
21579
21580// Fields allows partial responses to be retrieved. See
21581// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21582// for more information.
21583func (c *CampaignCreativeAssociationsListCall) Fields(s ...googleapi.Field) *CampaignCreativeAssociationsListCall {
21584	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21585	return c
21586}
21587
21588// IfNoneMatch sets the optional parameter which makes the operation
21589// fail if the object's ETag matches the given value. This is useful for
21590// getting updates only after the object has changed since the last
21591// request. Use googleapi.IsNotModified to check whether the response
21592// error from Do is the result of In-None-Match.
21593func (c *CampaignCreativeAssociationsListCall) IfNoneMatch(entityTag string) *CampaignCreativeAssociationsListCall {
21594	c.ifNoneMatch_ = entityTag
21595	return c
21596}
21597
21598// Context sets the context to be used in this call's Do method. Any
21599// pending HTTP request will be aborted if the provided context is
21600// canceled.
21601func (c *CampaignCreativeAssociationsListCall) Context(ctx context.Context) *CampaignCreativeAssociationsListCall {
21602	c.ctx_ = ctx
21603	return c
21604}
21605
21606// Header returns an http.Header that can be modified by the caller to
21607// add HTTP headers to the request.
21608func (c *CampaignCreativeAssociationsListCall) Header() http.Header {
21609	if c.header_ == nil {
21610		c.header_ = make(http.Header)
21611	}
21612	return c.header_
21613}
21614
21615func (c *CampaignCreativeAssociationsListCall) doRequest(alt string) (*http.Response, error) {
21616	reqHeaders := make(http.Header)
21617	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21618	for k, v := range c.header_ {
21619		reqHeaders[k] = v
21620	}
21621	reqHeaders.Set("User-Agent", c.s.userAgent())
21622	if c.ifNoneMatch_ != "" {
21623		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21624	}
21625	var body io.Reader = nil
21626	c.urlParams_.Set("alt", alt)
21627	c.urlParams_.Set("prettyPrint", "false")
21628	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations")
21629	urls += "?" + c.urlParams_.Encode()
21630	req, err := http.NewRequest("GET", urls, body)
21631	if err != nil {
21632		return nil, err
21633	}
21634	req.Header = reqHeaders
21635	googleapi.Expand(req.URL, map[string]string{
21636		"profileId":  strconv.FormatInt(c.profileId, 10),
21637		"campaignId": strconv.FormatInt(c.campaignId, 10),
21638	})
21639	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21640}
21641
21642// Do executes the "dfareporting.campaignCreativeAssociations.list" call.
21643// Exactly one of *CampaignCreativeAssociationsListResponse or error
21644// will be non-nil. Any non-2xx status code is an error. Response
21645// headers are in either
21646// *CampaignCreativeAssociationsListResponse.ServerResponse.Header or
21647// (if a response was returned at all) in
21648// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21649// whether the returned error was because http.StatusNotModified was
21650// returned.
21651func (c *CampaignCreativeAssociationsListCall) Do(opts ...googleapi.CallOption) (*CampaignCreativeAssociationsListResponse, error) {
21652	gensupport.SetOptions(c.urlParams_, opts...)
21653	res, err := c.doRequest("json")
21654	if res != nil && res.StatusCode == http.StatusNotModified {
21655		if res.Body != nil {
21656			res.Body.Close()
21657		}
21658		return nil, &googleapi.Error{
21659			Code:   res.StatusCode,
21660			Header: res.Header,
21661		}
21662	}
21663	if err != nil {
21664		return nil, err
21665	}
21666	defer googleapi.CloseBody(res)
21667	if err := googleapi.CheckResponse(res); err != nil {
21668		return nil, err
21669	}
21670	ret := &CampaignCreativeAssociationsListResponse{
21671		ServerResponse: googleapi.ServerResponse{
21672			Header:         res.Header,
21673			HTTPStatusCode: res.StatusCode,
21674		},
21675	}
21676	target := &ret
21677	if err := gensupport.DecodeResponse(target, res); err != nil {
21678		return nil, err
21679	}
21680	return ret, nil
21681	// {
21682	//   "description": "Retrieves the list of creative IDs associated with the specified campaign. This method supports paging.",
21683	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations",
21684	//   "httpMethod": "GET",
21685	//   "id": "dfareporting.campaignCreativeAssociations.list",
21686	//   "parameterOrder": [
21687	//     "profileId",
21688	//     "campaignId"
21689	//   ],
21690	//   "parameters": {
21691	//     "campaignId": {
21692	//       "description": "Campaign ID in this association.",
21693	//       "format": "int64",
21694	//       "location": "path",
21695	//       "required": true,
21696	//       "type": "string"
21697	//     },
21698	//     "maxResults": {
21699	//       "default": "1000",
21700	//       "description": "Maximum number of results to return.",
21701	//       "format": "int32",
21702	//       "location": "query",
21703	//       "maximum": "1000",
21704	//       "minimum": "0",
21705	//       "type": "integer"
21706	//     },
21707	//     "pageToken": {
21708	//       "description": "Value of the nextPageToken from the previous result page.",
21709	//       "location": "query",
21710	//       "type": "string"
21711	//     },
21712	//     "profileId": {
21713	//       "description": "User profile ID associated with this request.",
21714	//       "format": "int64",
21715	//       "location": "path",
21716	//       "required": true,
21717	//       "type": "string"
21718	//     },
21719	//     "sortOrder": {
21720	//       "default": "ASCENDING",
21721	//       "description": "Order of sorted results.",
21722	//       "enum": [
21723	//         "ASCENDING",
21724	//         "DESCENDING"
21725	//       ],
21726	//       "enumDescriptions": [
21727	//         "",
21728	//         ""
21729	//       ],
21730	//       "location": "query",
21731	//       "type": "string"
21732	//     }
21733	//   },
21734	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations",
21735	//   "response": {
21736	//     "$ref": "CampaignCreativeAssociationsListResponse"
21737	//   },
21738	//   "scopes": [
21739	//     "https://www.googleapis.com/auth/dfatrafficking"
21740	//   ]
21741	// }
21742
21743}
21744
21745// Pages invokes f for each page of results.
21746// A non-nil error returned from f will halt the iteration.
21747// The provided context supersedes any context provided to the Context method.
21748func (c *CampaignCreativeAssociationsListCall) Pages(ctx context.Context, f func(*CampaignCreativeAssociationsListResponse) error) error {
21749	c.ctx_ = ctx
21750	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21751	for {
21752		x, err := c.Do()
21753		if err != nil {
21754			return err
21755		}
21756		if err := f(x); err != nil {
21757			return err
21758		}
21759		if x.NextPageToken == "" {
21760			return nil
21761		}
21762		c.PageToken(x.NextPageToken)
21763	}
21764}
21765
21766// method id "dfareporting.campaigns.get":
21767
21768type CampaignsGetCall struct {
21769	s            *Service
21770	profileId    int64
21771	id           int64
21772	urlParams_   gensupport.URLParams
21773	ifNoneMatch_ string
21774	ctx_         context.Context
21775	header_      http.Header
21776}
21777
21778// Get: Gets one campaign by ID.
21779//
21780// - id: Campaign ID.
21781// - profileId: User profile ID associated with this request.
21782func (r *CampaignsService) Get(profileId int64, id int64) *CampaignsGetCall {
21783	c := &CampaignsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21784	c.profileId = profileId
21785	c.id = id
21786	return c
21787}
21788
21789// Fields allows partial responses to be retrieved. See
21790// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21791// for more information.
21792func (c *CampaignsGetCall) Fields(s ...googleapi.Field) *CampaignsGetCall {
21793	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21794	return c
21795}
21796
21797// IfNoneMatch sets the optional parameter which makes the operation
21798// fail if the object's ETag matches the given value. This is useful for
21799// getting updates only after the object has changed since the last
21800// request. Use googleapi.IsNotModified to check whether the response
21801// error from Do is the result of In-None-Match.
21802func (c *CampaignsGetCall) IfNoneMatch(entityTag string) *CampaignsGetCall {
21803	c.ifNoneMatch_ = entityTag
21804	return c
21805}
21806
21807// Context sets the context to be used in this call's Do method. Any
21808// pending HTTP request will be aborted if the provided context is
21809// canceled.
21810func (c *CampaignsGetCall) Context(ctx context.Context) *CampaignsGetCall {
21811	c.ctx_ = ctx
21812	return c
21813}
21814
21815// Header returns an http.Header that can be modified by the caller to
21816// add HTTP headers to the request.
21817func (c *CampaignsGetCall) Header() http.Header {
21818	if c.header_ == nil {
21819		c.header_ = make(http.Header)
21820	}
21821	return c.header_
21822}
21823
21824func (c *CampaignsGetCall) doRequest(alt string) (*http.Response, error) {
21825	reqHeaders := make(http.Header)
21826	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21827	for k, v := range c.header_ {
21828		reqHeaders[k] = v
21829	}
21830	reqHeaders.Set("User-Agent", c.s.userAgent())
21831	if c.ifNoneMatch_ != "" {
21832		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21833	}
21834	var body io.Reader = nil
21835	c.urlParams_.Set("alt", alt)
21836	c.urlParams_.Set("prettyPrint", "false")
21837	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{id}")
21838	urls += "?" + c.urlParams_.Encode()
21839	req, err := http.NewRequest("GET", urls, body)
21840	if err != nil {
21841		return nil, err
21842	}
21843	req.Header = reqHeaders
21844	googleapi.Expand(req.URL, map[string]string{
21845		"profileId": strconv.FormatInt(c.profileId, 10),
21846		"id":        strconv.FormatInt(c.id, 10),
21847	})
21848	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21849}
21850
21851// Do executes the "dfareporting.campaigns.get" call.
21852// Exactly one of *Campaign or error will be non-nil. Any non-2xx status
21853// code is an error. Response headers are in either
21854// *Campaign.ServerResponse.Header or (if a response was returned at
21855// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21856// to check whether the returned error was because
21857// http.StatusNotModified was returned.
21858func (c *CampaignsGetCall) Do(opts ...googleapi.CallOption) (*Campaign, error) {
21859	gensupport.SetOptions(c.urlParams_, opts...)
21860	res, err := c.doRequest("json")
21861	if res != nil && res.StatusCode == http.StatusNotModified {
21862		if res.Body != nil {
21863			res.Body.Close()
21864		}
21865		return nil, &googleapi.Error{
21866			Code:   res.StatusCode,
21867			Header: res.Header,
21868		}
21869	}
21870	if err != nil {
21871		return nil, err
21872	}
21873	defer googleapi.CloseBody(res)
21874	if err := googleapi.CheckResponse(res); err != nil {
21875		return nil, err
21876	}
21877	ret := &Campaign{
21878		ServerResponse: googleapi.ServerResponse{
21879			Header:         res.Header,
21880			HTTPStatusCode: res.StatusCode,
21881		},
21882	}
21883	target := &ret
21884	if err := gensupport.DecodeResponse(target, res); err != nil {
21885		return nil, err
21886	}
21887	return ret, nil
21888	// {
21889	//   "description": "Gets one campaign by ID.",
21890	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{id}",
21891	//   "httpMethod": "GET",
21892	//   "id": "dfareporting.campaigns.get",
21893	//   "parameterOrder": [
21894	//     "profileId",
21895	//     "id"
21896	//   ],
21897	//   "parameters": {
21898	//     "id": {
21899	//       "description": "Campaign ID.",
21900	//       "format": "int64",
21901	//       "location": "path",
21902	//       "required": true,
21903	//       "type": "string"
21904	//     },
21905	//     "profileId": {
21906	//       "description": "User profile ID associated with this request.",
21907	//       "format": "int64",
21908	//       "location": "path",
21909	//       "required": true,
21910	//       "type": "string"
21911	//     }
21912	//   },
21913	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/campaigns/{id}",
21914	//   "response": {
21915	//     "$ref": "Campaign"
21916	//   },
21917	//   "scopes": [
21918	//     "https://www.googleapis.com/auth/dfatrafficking"
21919	//   ]
21920	// }
21921
21922}
21923
21924// method id "dfareporting.campaigns.insert":
21925
21926type CampaignsInsertCall struct {
21927	s          *Service
21928	profileId  int64
21929	campaign   *Campaign
21930	urlParams_ gensupport.URLParams
21931	ctx_       context.Context
21932	header_    http.Header
21933}
21934
21935// Insert: Inserts a new campaign.
21936//
21937// - profileId: User profile ID associated with this request.
21938func (r *CampaignsService) Insert(profileId int64, campaign *Campaign) *CampaignsInsertCall {
21939	c := &CampaignsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21940	c.profileId = profileId
21941	c.campaign = campaign
21942	return c
21943}
21944
21945// Fields allows partial responses to be retrieved. See
21946// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21947// for more information.
21948func (c *CampaignsInsertCall) Fields(s ...googleapi.Field) *CampaignsInsertCall {
21949	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21950	return c
21951}
21952
21953// Context sets the context to be used in this call's Do method. Any
21954// pending HTTP request will be aborted if the provided context is
21955// canceled.
21956func (c *CampaignsInsertCall) Context(ctx context.Context) *CampaignsInsertCall {
21957	c.ctx_ = ctx
21958	return c
21959}
21960
21961// Header returns an http.Header that can be modified by the caller to
21962// add HTTP headers to the request.
21963func (c *CampaignsInsertCall) Header() http.Header {
21964	if c.header_ == nil {
21965		c.header_ = make(http.Header)
21966	}
21967	return c.header_
21968}
21969
21970func (c *CampaignsInsertCall) doRequest(alt string) (*http.Response, error) {
21971	reqHeaders := make(http.Header)
21972	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21973	for k, v := range c.header_ {
21974		reqHeaders[k] = v
21975	}
21976	reqHeaders.Set("User-Agent", c.s.userAgent())
21977	var body io.Reader = nil
21978	body, err := googleapi.WithoutDataWrapper.JSONReader(c.campaign)
21979	if err != nil {
21980		return nil, err
21981	}
21982	reqHeaders.Set("Content-Type", "application/json")
21983	c.urlParams_.Set("alt", alt)
21984	c.urlParams_.Set("prettyPrint", "false")
21985	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/campaigns")
21986	urls += "?" + c.urlParams_.Encode()
21987	req, err := http.NewRequest("POST", urls, body)
21988	if err != nil {
21989		return nil, err
21990	}
21991	req.Header = reqHeaders
21992	googleapi.Expand(req.URL, map[string]string{
21993		"profileId": strconv.FormatInt(c.profileId, 10),
21994	})
21995	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21996}
21997
21998// Do executes the "dfareporting.campaigns.insert" call.
21999// Exactly one of *Campaign or error will be non-nil. Any non-2xx status
22000// code is an error. Response headers are in either
22001// *Campaign.ServerResponse.Header or (if a response was returned at
22002// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22003// to check whether the returned error was because
22004// http.StatusNotModified was returned.
22005func (c *CampaignsInsertCall) Do(opts ...googleapi.CallOption) (*Campaign, error) {
22006	gensupport.SetOptions(c.urlParams_, opts...)
22007	res, err := c.doRequest("json")
22008	if res != nil && res.StatusCode == http.StatusNotModified {
22009		if res.Body != nil {
22010			res.Body.Close()
22011		}
22012		return nil, &googleapi.Error{
22013			Code:   res.StatusCode,
22014			Header: res.Header,
22015		}
22016	}
22017	if err != nil {
22018		return nil, err
22019	}
22020	defer googleapi.CloseBody(res)
22021	if err := googleapi.CheckResponse(res); err != nil {
22022		return nil, err
22023	}
22024	ret := &Campaign{
22025		ServerResponse: googleapi.ServerResponse{
22026			Header:         res.Header,
22027			HTTPStatusCode: res.StatusCode,
22028		},
22029	}
22030	target := &ret
22031	if err := gensupport.DecodeResponse(target, res); err != nil {
22032		return nil, err
22033	}
22034	return ret, nil
22035	// {
22036	//   "description": "Inserts a new campaign.",
22037	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/campaigns",
22038	//   "httpMethod": "POST",
22039	//   "id": "dfareporting.campaigns.insert",
22040	//   "parameterOrder": [
22041	//     "profileId"
22042	//   ],
22043	//   "parameters": {
22044	//     "profileId": {
22045	//       "description": "User profile ID associated with this request.",
22046	//       "format": "int64",
22047	//       "location": "path",
22048	//       "required": true,
22049	//       "type": "string"
22050	//     }
22051	//   },
22052	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/campaigns",
22053	//   "request": {
22054	//     "$ref": "Campaign"
22055	//   },
22056	//   "response": {
22057	//     "$ref": "Campaign"
22058	//   },
22059	//   "scopes": [
22060	//     "https://www.googleapis.com/auth/dfatrafficking"
22061	//   ]
22062	// }
22063
22064}
22065
22066// method id "dfareporting.campaigns.list":
22067
22068type CampaignsListCall struct {
22069	s            *Service
22070	profileId    int64
22071	urlParams_   gensupport.URLParams
22072	ifNoneMatch_ string
22073	ctx_         context.Context
22074	header_      http.Header
22075}
22076
22077// List: Retrieves a list of campaigns, possibly filtered. This method
22078// supports paging.
22079//
22080// - profileId: User profile ID associated with this request.
22081func (r *CampaignsService) List(profileId int64) *CampaignsListCall {
22082	c := &CampaignsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22083	c.profileId = profileId
22084	return c
22085}
22086
22087// AdvertiserGroupIds sets the optional parameter "advertiserGroupIds":
22088// Select only campaigns whose advertisers belong to these advertiser
22089// groups.
22090func (c *CampaignsListCall) AdvertiserGroupIds(advertiserGroupIds ...int64) *CampaignsListCall {
22091	var advertiserGroupIds_ []string
22092	for _, v := range advertiserGroupIds {
22093		advertiserGroupIds_ = append(advertiserGroupIds_, fmt.Sprint(v))
22094	}
22095	c.urlParams_.SetMulti("advertiserGroupIds", advertiserGroupIds_)
22096	return c
22097}
22098
22099// AdvertiserIds sets the optional parameter "advertiserIds": Select
22100// only campaigns that belong to these advertisers.
22101func (c *CampaignsListCall) AdvertiserIds(advertiserIds ...int64) *CampaignsListCall {
22102	var advertiserIds_ []string
22103	for _, v := range advertiserIds {
22104		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
22105	}
22106	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
22107	return c
22108}
22109
22110// Archived sets the optional parameter "archived": Select only archived
22111// campaigns. Don't set this field to select both archived and
22112// non-archived campaigns.
22113func (c *CampaignsListCall) Archived(archived bool) *CampaignsListCall {
22114	c.urlParams_.Set("archived", fmt.Sprint(archived))
22115	return c
22116}
22117
22118// AtLeastOneOptimizationActivity sets the optional parameter
22119// "atLeastOneOptimizationActivity": Select only campaigns that have at
22120// least one optimization activity.
22121func (c *CampaignsListCall) AtLeastOneOptimizationActivity(atLeastOneOptimizationActivity bool) *CampaignsListCall {
22122	c.urlParams_.Set("atLeastOneOptimizationActivity", fmt.Sprint(atLeastOneOptimizationActivity))
22123	return c
22124}
22125
22126// ExcludedIds sets the optional parameter "excludedIds": Exclude
22127// campaigns with these IDs.
22128func (c *CampaignsListCall) ExcludedIds(excludedIds ...int64) *CampaignsListCall {
22129	var excludedIds_ []string
22130	for _, v := range excludedIds {
22131		excludedIds_ = append(excludedIds_, fmt.Sprint(v))
22132	}
22133	c.urlParams_.SetMulti("excludedIds", excludedIds_)
22134	return c
22135}
22136
22137// Ids sets the optional parameter "ids": Select only campaigns with
22138// these IDs.
22139func (c *CampaignsListCall) Ids(ids ...int64) *CampaignsListCall {
22140	var ids_ []string
22141	for _, v := range ids {
22142		ids_ = append(ids_, fmt.Sprint(v))
22143	}
22144	c.urlParams_.SetMulti("ids", ids_)
22145	return c
22146}
22147
22148// MaxResults sets the optional parameter "maxResults": Maximum number
22149// of results to return.
22150func (c *CampaignsListCall) MaxResults(maxResults int64) *CampaignsListCall {
22151	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
22152	return c
22153}
22154
22155// OverriddenEventTagId sets the optional parameter
22156// "overriddenEventTagId": Select only campaigns that have overridden
22157// this event tag ID.
22158func (c *CampaignsListCall) OverriddenEventTagId(overriddenEventTagId int64) *CampaignsListCall {
22159	c.urlParams_.Set("overriddenEventTagId", fmt.Sprint(overriddenEventTagId))
22160	return c
22161}
22162
22163// PageToken sets the optional parameter "pageToken": Value of the
22164// nextPageToken from the previous result page.
22165func (c *CampaignsListCall) PageToken(pageToken string) *CampaignsListCall {
22166	c.urlParams_.Set("pageToken", pageToken)
22167	return c
22168}
22169
22170// SearchString sets the optional parameter "searchString": Allows
22171// searching for campaigns by name or ID. Wildcards (*) are allowed. For
22172// example, "campaign*2015" will return campaigns with names like
22173// "campaign June 2015", "campaign April 2015", or simply "campaign
22174// 2015". Most of the searches also add wildcards implicitly at the
22175// start and the end of the search string. For example, a search string
22176// of "campaign" will match campaigns with name "my campaign", "campaign
22177// 2015", or simply "campaign".
22178func (c *CampaignsListCall) SearchString(searchString string) *CampaignsListCall {
22179	c.urlParams_.Set("searchString", searchString)
22180	return c
22181}
22182
22183// SortField sets the optional parameter "sortField": Field by which to
22184// sort the list.
22185//
22186// Possible values:
22187//   "ID" (default)
22188//   "NAME"
22189func (c *CampaignsListCall) SortField(sortField string) *CampaignsListCall {
22190	c.urlParams_.Set("sortField", sortField)
22191	return c
22192}
22193
22194// SortOrder sets the optional parameter "sortOrder": Order of sorted
22195// results.
22196//
22197// Possible values:
22198//   "ASCENDING" (default)
22199//   "DESCENDING"
22200func (c *CampaignsListCall) SortOrder(sortOrder string) *CampaignsListCall {
22201	c.urlParams_.Set("sortOrder", sortOrder)
22202	return c
22203}
22204
22205// SubaccountId sets the optional parameter "subaccountId": Select only
22206// campaigns that belong to this subaccount.
22207func (c *CampaignsListCall) SubaccountId(subaccountId int64) *CampaignsListCall {
22208	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
22209	return c
22210}
22211
22212// Fields allows partial responses to be retrieved. See
22213// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22214// for more information.
22215func (c *CampaignsListCall) Fields(s ...googleapi.Field) *CampaignsListCall {
22216	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22217	return c
22218}
22219
22220// IfNoneMatch sets the optional parameter which makes the operation
22221// fail if the object's ETag matches the given value. This is useful for
22222// getting updates only after the object has changed since the last
22223// request. Use googleapi.IsNotModified to check whether the response
22224// error from Do is the result of In-None-Match.
22225func (c *CampaignsListCall) IfNoneMatch(entityTag string) *CampaignsListCall {
22226	c.ifNoneMatch_ = entityTag
22227	return c
22228}
22229
22230// Context sets the context to be used in this call's Do method. Any
22231// pending HTTP request will be aborted if the provided context is
22232// canceled.
22233func (c *CampaignsListCall) Context(ctx context.Context) *CampaignsListCall {
22234	c.ctx_ = ctx
22235	return c
22236}
22237
22238// Header returns an http.Header that can be modified by the caller to
22239// add HTTP headers to the request.
22240func (c *CampaignsListCall) Header() http.Header {
22241	if c.header_ == nil {
22242		c.header_ = make(http.Header)
22243	}
22244	return c.header_
22245}
22246
22247func (c *CampaignsListCall) doRequest(alt string) (*http.Response, error) {
22248	reqHeaders := make(http.Header)
22249	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22250	for k, v := range c.header_ {
22251		reqHeaders[k] = v
22252	}
22253	reqHeaders.Set("User-Agent", c.s.userAgent())
22254	if c.ifNoneMatch_ != "" {
22255		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22256	}
22257	var body io.Reader = nil
22258	c.urlParams_.Set("alt", alt)
22259	c.urlParams_.Set("prettyPrint", "false")
22260	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/campaigns")
22261	urls += "?" + c.urlParams_.Encode()
22262	req, err := http.NewRequest("GET", urls, body)
22263	if err != nil {
22264		return nil, err
22265	}
22266	req.Header = reqHeaders
22267	googleapi.Expand(req.URL, map[string]string{
22268		"profileId": strconv.FormatInt(c.profileId, 10),
22269	})
22270	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22271}
22272
22273// Do executes the "dfareporting.campaigns.list" call.
22274// Exactly one of *CampaignsListResponse or error will be non-nil. Any
22275// non-2xx status code is an error. Response headers are in either
22276// *CampaignsListResponse.ServerResponse.Header or (if a response was
22277// returned at all) in error.(*googleapi.Error).Header. Use
22278// googleapi.IsNotModified to check whether the returned error was
22279// because http.StatusNotModified was returned.
22280func (c *CampaignsListCall) Do(opts ...googleapi.CallOption) (*CampaignsListResponse, error) {
22281	gensupport.SetOptions(c.urlParams_, opts...)
22282	res, err := c.doRequest("json")
22283	if res != nil && res.StatusCode == http.StatusNotModified {
22284		if res.Body != nil {
22285			res.Body.Close()
22286		}
22287		return nil, &googleapi.Error{
22288			Code:   res.StatusCode,
22289			Header: res.Header,
22290		}
22291	}
22292	if err != nil {
22293		return nil, err
22294	}
22295	defer googleapi.CloseBody(res)
22296	if err := googleapi.CheckResponse(res); err != nil {
22297		return nil, err
22298	}
22299	ret := &CampaignsListResponse{
22300		ServerResponse: googleapi.ServerResponse{
22301			Header:         res.Header,
22302			HTTPStatusCode: res.StatusCode,
22303		},
22304	}
22305	target := &ret
22306	if err := gensupport.DecodeResponse(target, res); err != nil {
22307		return nil, err
22308	}
22309	return ret, nil
22310	// {
22311	//   "description": "Retrieves a list of campaigns, possibly filtered. This method supports paging.",
22312	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/campaigns",
22313	//   "httpMethod": "GET",
22314	//   "id": "dfareporting.campaigns.list",
22315	//   "parameterOrder": [
22316	//     "profileId"
22317	//   ],
22318	//   "parameters": {
22319	//     "advertiserGroupIds": {
22320	//       "description": "Select only campaigns whose advertisers belong to these advertiser groups.",
22321	//       "format": "int64",
22322	//       "location": "query",
22323	//       "repeated": true,
22324	//       "type": "string"
22325	//     },
22326	//     "advertiserIds": {
22327	//       "description": "Select only campaigns that belong to these advertisers.",
22328	//       "format": "int64",
22329	//       "location": "query",
22330	//       "repeated": true,
22331	//       "type": "string"
22332	//     },
22333	//     "archived": {
22334	//       "description": "Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.",
22335	//       "location": "query",
22336	//       "type": "boolean"
22337	//     },
22338	//     "atLeastOneOptimizationActivity": {
22339	//       "description": "Select only campaigns that have at least one optimization activity.",
22340	//       "location": "query",
22341	//       "type": "boolean"
22342	//     },
22343	//     "excludedIds": {
22344	//       "description": "Exclude campaigns with these IDs.",
22345	//       "format": "int64",
22346	//       "location": "query",
22347	//       "repeated": true,
22348	//       "type": "string"
22349	//     },
22350	//     "ids": {
22351	//       "description": "Select only campaigns with these IDs.",
22352	//       "format": "int64",
22353	//       "location": "query",
22354	//       "repeated": true,
22355	//       "type": "string"
22356	//     },
22357	//     "maxResults": {
22358	//       "default": "1000",
22359	//       "description": "Maximum number of results to return.",
22360	//       "format": "int32",
22361	//       "location": "query",
22362	//       "maximum": "1000",
22363	//       "minimum": "0",
22364	//       "type": "integer"
22365	//     },
22366	//     "overriddenEventTagId": {
22367	//       "description": "Select only campaigns that have overridden this event tag ID.",
22368	//       "format": "int64",
22369	//       "location": "query",
22370	//       "type": "string"
22371	//     },
22372	//     "pageToken": {
22373	//       "description": "Value of the nextPageToken from the previous result page.",
22374	//       "location": "query",
22375	//       "type": "string"
22376	//     },
22377	//     "profileId": {
22378	//       "description": "User profile ID associated with this request.",
22379	//       "format": "int64",
22380	//       "location": "path",
22381	//       "required": true,
22382	//       "type": "string"
22383	//     },
22384	//     "searchString": {
22385	//       "description": "Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, \"campaign*2015\" will return campaigns with names like \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"campaign\" will match campaigns with name \"my campaign\", \"campaign 2015\", or simply \"campaign\".",
22386	//       "location": "query",
22387	//       "type": "string"
22388	//     },
22389	//     "sortField": {
22390	//       "default": "ID",
22391	//       "description": "Field by which to sort the list.",
22392	//       "enum": [
22393	//         "ID",
22394	//         "NAME"
22395	//       ],
22396	//       "enumDescriptions": [
22397	//         "",
22398	//         ""
22399	//       ],
22400	//       "location": "query",
22401	//       "type": "string"
22402	//     },
22403	//     "sortOrder": {
22404	//       "default": "ASCENDING",
22405	//       "description": "Order of sorted results.",
22406	//       "enum": [
22407	//         "ASCENDING",
22408	//         "DESCENDING"
22409	//       ],
22410	//       "enumDescriptions": [
22411	//         "",
22412	//         ""
22413	//       ],
22414	//       "location": "query",
22415	//       "type": "string"
22416	//     },
22417	//     "subaccountId": {
22418	//       "description": "Select only campaigns that belong to this subaccount.",
22419	//       "format": "int64",
22420	//       "location": "query",
22421	//       "type": "string"
22422	//     }
22423	//   },
22424	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/campaigns",
22425	//   "response": {
22426	//     "$ref": "CampaignsListResponse"
22427	//   },
22428	//   "scopes": [
22429	//     "https://www.googleapis.com/auth/dfatrafficking"
22430	//   ]
22431	// }
22432
22433}
22434
22435// Pages invokes f for each page of results.
22436// A non-nil error returned from f will halt the iteration.
22437// The provided context supersedes any context provided to the Context method.
22438func (c *CampaignsListCall) Pages(ctx context.Context, f func(*CampaignsListResponse) error) error {
22439	c.ctx_ = ctx
22440	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22441	for {
22442		x, err := c.Do()
22443		if err != nil {
22444			return err
22445		}
22446		if err := f(x); err != nil {
22447			return err
22448		}
22449		if x.NextPageToken == "" {
22450			return nil
22451		}
22452		c.PageToken(x.NextPageToken)
22453	}
22454}
22455
22456// method id "dfareporting.campaigns.patch":
22457
22458type CampaignsPatchCall struct {
22459	s          *Service
22460	profileId  int64
22461	campaign   *Campaign
22462	urlParams_ gensupport.URLParams
22463	ctx_       context.Context
22464	header_    http.Header
22465}
22466
22467// Patch: Updates an existing campaign. This method supports patch
22468// semantics.
22469//
22470// - id: Campaign ID.
22471// - profileId: User profile ID associated with this request.
22472func (r *CampaignsService) Patch(profileId int64, id int64, campaign *Campaign) *CampaignsPatchCall {
22473	c := &CampaignsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22474	c.profileId = profileId
22475	c.urlParams_.Set("id", fmt.Sprint(id))
22476	c.campaign = campaign
22477	return c
22478}
22479
22480// Fields allows partial responses to be retrieved. See
22481// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22482// for more information.
22483func (c *CampaignsPatchCall) Fields(s ...googleapi.Field) *CampaignsPatchCall {
22484	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22485	return c
22486}
22487
22488// Context sets the context to be used in this call's Do method. Any
22489// pending HTTP request will be aborted if the provided context is
22490// canceled.
22491func (c *CampaignsPatchCall) Context(ctx context.Context) *CampaignsPatchCall {
22492	c.ctx_ = ctx
22493	return c
22494}
22495
22496// Header returns an http.Header that can be modified by the caller to
22497// add HTTP headers to the request.
22498func (c *CampaignsPatchCall) Header() http.Header {
22499	if c.header_ == nil {
22500		c.header_ = make(http.Header)
22501	}
22502	return c.header_
22503}
22504
22505func (c *CampaignsPatchCall) doRequest(alt string) (*http.Response, error) {
22506	reqHeaders := make(http.Header)
22507	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22508	for k, v := range c.header_ {
22509		reqHeaders[k] = v
22510	}
22511	reqHeaders.Set("User-Agent", c.s.userAgent())
22512	var body io.Reader = nil
22513	body, err := googleapi.WithoutDataWrapper.JSONReader(c.campaign)
22514	if err != nil {
22515		return nil, err
22516	}
22517	reqHeaders.Set("Content-Type", "application/json")
22518	c.urlParams_.Set("alt", alt)
22519	c.urlParams_.Set("prettyPrint", "false")
22520	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/campaigns")
22521	urls += "?" + c.urlParams_.Encode()
22522	req, err := http.NewRequest("PATCH", urls, body)
22523	if err != nil {
22524		return nil, err
22525	}
22526	req.Header = reqHeaders
22527	googleapi.Expand(req.URL, map[string]string{
22528		"profileId": strconv.FormatInt(c.profileId, 10),
22529	})
22530	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22531}
22532
22533// Do executes the "dfareporting.campaigns.patch" call.
22534// Exactly one of *Campaign or error will be non-nil. Any non-2xx status
22535// code is an error. Response headers are in either
22536// *Campaign.ServerResponse.Header or (if a response was returned at
22537// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22538// to check whether the returned error was because
22539// http.StatusNotModified was returned.
22540func (c *CampaignsPatchCall) Do(opts ...googleapi.CallOption) (*Campaign, error) {
22541	gensupport.SetOptions(c.urlParams_, opts...)
22542	res, err := c.doRequest("json")
22543	if res != nil && res.StatusCode == http.StatusNotModified {
22544		if res.Body != nil {
22545			res.Body.Close()
22546		}
22547		return nil, &googleapi.Error{
22548			Code:   res.StatusCode,
22549			Header: res.Header,
22550		}
22551	}
22552	if err != nil {
22553		return nil, err
22554	}
22555	defer googleapi.CloseBody(res)
22556	if err := googleapi.CheckResponse(res); err != nil {
22557		return nil, err
22558	}
22559	ret := &Campaign{
22560		ServerResponse: googleapi.ServerResponse{
22561			Header:         res.Header,
22562			HTTPStatusCode: res.StatusCode,
22563		},
22564	}
22565	target := &ret
22566	if err := gensupport.DecodeResponse(target, res); err != nil {
22567		return nil, err
22568	}
22569	return ret, nil
22570	// {
22571	//   "description": "Updates an existing campaign. This method supports patch semantics.",
22572	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/campaigns",
22573	//   "httpMethod": "PATCH",
22574	//   "id": "dfareporting.campaigns.patch",
22575	//   "parameterOrder": [
22576	//     "profileId",
22577	//     "id"
22578	//   ],
22579	//   "parameters": {
22580	//     "id": {
22581	//       "description": "Campaign ID.",
22582	//       "format": "int64",
22583	//       "location": "query",
22584	//       "required": true,
22585	//       "type": "string"
22586	//     },
22587	//     "profileId": {
22588	//       "description": "User profile ID associated with this request.",
22589	//       "format": "int64",
22590	//       "location": "path",
22591	//       "required": true,
22592	//       "type": "string"
22593	//     }
22594	//   },
22595	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/campaigns",
22596	//   "request": {
22597	//     "$ref": "Campaign"
22598	//   },
22599	//   "response": {
22600	//     "$ref": "Campaign"
22601	//   },
22602	//   "scopes": [
22603	//     "https://www.googleapis.com/auth/dfatrafficking"
22604	//   ]
22605	// }
22606
22607}
22608
22609// method id "dfareporting.campaigns.update":
22610
22611type CampaignsUpdateCall struct {
22612	s          *Service
22613	profileId  int64
22614	campaign   *Campaign
22615	urlParams_ gensupport.URLParams
22616	ctx_       context.Context
22617	header_    http.Header
22618}
22619
22620// Update: Updates an existing campaign.
22621//
22622// - profileId: User profile ID associated with this request.
22623func (r *CampaignsService) Update(profileId int64, campaign *Campaign) *CampaignsUpdateCall {
22624	c := &CampaignsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22625	c.profileId = profileId
22626	c.campaign = campaign
22627	return c
22628}
22629
22630// Fields allows partial responses to be retrieved. See
22631// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22632// for more information.
22633func (c *CampaignsUpdateCall) Fields(s ...googleapi.Field) *CampaignsUpdateCall {
22634	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22635	return c
22636}
22637
22638// Context sets the context to be used in this call's Do method. Any
22639// pending HTTP request will be aborted if the provided context is
22640// canceled.
22641func (c *CampaignsUpdateCall) Context(ctx context.Context) *CampaignsUpdateCall {
22642	c.ctx_ = ctx
22643	return c
22644}
22645
22646// Header returns an http.Header that can be modified by the caller to
22647// add HTTP headers to the request.
22648func (c *CampaignsUpdateCall) Header() http.Header {
22649	if c.header_ == nil {
22650		c.header_ = make(http.Header)
22651	}
22652	return c.header_
22653}
22654
22655func (c *CampaignsUpdateCall) doRequest(alt string) (*http.Response, error) {
22656	reqHeaders := make(http.Header)
22657	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22658	for k, v := range c.header_ {
22659		reqHeaders[k] = v
22660	}
22661	reqHeaders.Set("User-Agent", c.s.userAgent())
22662	var body io.Reader = nil
22663	body, err := googleapi.WithoutDataWrapper.JSONReader(c.campaign)
22664	if err != nil {
22665		return nil, err
22666	}
22667	reqHeaders.Set("Content-Type", "application/json")
22668	c.urlParams_.Set("alt", alt)
22669	c.urlParams_.Set("prettyPrint", "false")
22670	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/campaigns")
22671	urls += "?" + c.urlParams_.Encode()
22672	req, err := http.NewRequest("PUT", urls, body)
22673	if err != nil {
22674		return nil, err
22675	}
22676	req.Header = reqHeaders
22677	googleapi.Expand(req.URL, map[string]string{
22678		"profileId": strconv.FormatInt(c.profileId, 10),
22679	})
22680	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22681}
22682
22683// Do executes the "dfareporting.campaigns.update" call.
22684// Exactly one of *Campaign or error will be non-nil. Any non-2xx status
22685// code is an error. Response headers are in either
22686// *Campaign.ServerResponse.Header or (if a response was returned at
22687// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22688// to check whether the returned error was because
22689// http.StatusNotModified was returned.
22690func (c *CampaignsUpdateCall) Do(opts ...googleapi.CallOption) (*Campaign, error) {
22691	gensupport.SetOptions(c.urlParams_, opts...)
22692	res, err := c.doRequest("json")
22693	if res != nil && res.StatusCode == http.StatusNotModified {
22694		if res.Body != nil {
22695			res.Body.Close()
22696		}
22697		return nil, &googleapi.Error{
22698			Code:   res.StatusCode,
22699			Header: res.Header,
22700		}
22701	}
22702	if err != nil {
22703		return nil, err
22704	}
22705	defer googleapi.CloseBody(res)
22706	if err := googleapi.CheckResponse(res); err != nil {
22707		return nil, err
22708	}
22709	ret := &Campaign{
22710		ServerResponse: googleapi.ServerResponse{
22711			Header:         res.Header,
22712			HTTPStatusCode: res.StatusCode,
22713		},
22714	}
22715	target := &ret
22716	if err := gensupport.DecodeResponse(target, res); err != nil {
22717		return nil, err
22718	}
22719	return ret, nil
22720	// {
22721	//   "description": "Updates an existing campaign.",
22722	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/campaigns",
22723	//   "httpMethod": "PUT",
22724	//   "id": "dfareporting.campaigns.update",
22725	//   "parameterOrder": [
22726	//     "profileId"
22727	//   ],
22728	//   "parameters": {
22729	//     "profileId": {
22730	//       "description": "User profile ID associated with this request.",
22731	//       "format": "int64",
22732	//       "location": "path",
22733	//       "required": true,
22734	//       "type": "string"
22735	//     }
22736	//   },
22737	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/campaigns",
22738	//   "request": {
22739	//     "$ref": "Campaign"
22740	//   },
22741	//   "response": {
22742	//     "$ref": "Campaign"
22743	//   },
22744	//   "scopes": [
22745	//     "https://www.googleapis.com/auth/dfatrafficking"
22746	//   ]
22747	// }
22748
22749}
22750
22751// method id "dfareporting.changeLogs.get":
22752
22753type ChangeLogsGetCall struct {
22754	s            *Service
22755	profileId    int64
22756	id           int64
22757	urlParams_   gensupport.URLParams
22758	ifNoneMatch_ string
22759	ctx_         context.Context
22760	header_      http.Header
22761}
22762
22763// Get: Gets one change log by ID.
22764//
22765// - id: Change log ID.
22766// - profileId: User profile ID associated with this request.
22767func (r *ChangeLogsService) Get(profileId int64, id int64) *ChangeLogsGetCall {
22768	c := &ChangeLogsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22769	c.profileId = profileId
22770	c.id = id
22771	return c
22772}
22773
22774// Fields allows partial responses to be retrieved. See
22775// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22776// for more information.
22777func (c *ChangeLogsGetCall) Fields(s ...googleapi.Field) *ChangeLogsGetCall {
22778	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22779	return c
22780}
22781
22782// IfNoneMatch sets the optional parameter which makes the operation
22783// fail if the object's ETag matches the given value. This is useful for
22784// getting updates only after the object has changed since the last
22785// request. Use googleapi.IsNotModified to check whether the response
22786// error from Do is the result of In-None-Match.
22787func (c *ChangeLogsGetCall) IfNoneMatch(entityTag string) *ChangeLogsGetCall {
22788	c.ifNoneMatch_ = entityTag
22789	return c
22790}
22791
22792// Context sets the context to be used in this call's Do method. Any
22793// pending HTTP request will be aborted if the provided context is
22794// canceled.
22795func (c *ChangeLogsGetCall) Context(ctx context.Context) *ChangeLogsGetCall {
22796	c.ctx_ = ctx
22797	return c
22798}
22799
22800// Header returns an http.Header that can be modified by the caller to
22801// add HTTP headers to the request.
22802func (c *ChangeLogsGetCall) Header() http.Header {
22803	if c.header_ == nil {
22804		c.header_ = make(http.Header)
22805	}
22806	return c.header_
22807}
22808
22809func (c *ChangeLogsGetCall) doRequest(alt string) (*http.Response, error) {
22810	reqHeaders := make(http.Header)
22811	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22812	for k, v := range c.header_ {
22813		reqHeaders[k] = v
22814	}
22815	reqHeaders.Set("User-Agent", c.s.userAgent())
22816	if c.ifNoneMatch_ != "" {
22817		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22818	}
22819	var body io.Reader = nil
22820	c.urlParams_.Set("alt", alt)
22821	c.urlParams_.Set("prettyPrint", "false")
22822	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/changeLogs/{id}")
22823	urls += "?" + c.urlParams_.Encode()
22824	req, err := http.NewRequest("GET", urls, body)
22825	if err != nil {
22826		return nil, err
22827	}
22828	req.Header = reqHeaders
22829	googleapi.Expand(req.URL, map[string]string{
22830		"profileId": strconv.FormatInt(c.profileId, 10),
22831		"id":        strconv.FormatInt(c.id, 10),
22832	})
22833	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22834}
22835
22836// Do executes the "dfareporting.changeLogs.get" call.
22837// Exactly one of *ChangeLog or error will be non-nil. Any non-2xx
22838// status code is an error. Response headers are in either
22839// *ChangeLog.ServerResponse.Header or (if a response was returned at
22840// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22841// to check whether the returned error was because
22842// http.StatusNotModified was returned.
22843func (c *ChangeLogsGetCall) Do(opts ...googleapi.CallOption) (*ChangeLog, error) {
22844	gensupport.SetOptions(c.urlParams_, opts...)
22845	res, err := c.doRequest("json")
22846	if res != nil && res.StatusCode == http.StatusNotModified {
22847		if res.Body != nil {
22848			res.Body.Close()
22849		}
22850		return nil, &googleapi.Error{
22851			Code:   res.StatusCode,
22852			Header: res.Header,
22853		}
22854	}
22855	if err != nil {
22856		return nil, err
22857	}
22858	defer googleapi.CloseBody(res)
22859	if err := googleapi.CheckResponse(res); err != nil {
22860		return nil, err
22861	}
22862	ret := &ChangeLog{
22863		ServerResponse: googleapi.ServerResponse{
22864			Header:         res.Header,
22865			HTTPStatusCode: res.StatusCode,
22866		},
22867	}
22868	target := &ret
22869	if err := gensupport.DecodeResponse(target, res); err != nil {
22870		return nil, err
22871	}
22872	return ret, nil
22873	// {
22874	//   "description": "Gets one change log by ID.",
22875	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/changeLogs/{id}",
22876	//   "httpMethod": "GET",
22877	//   "id": "dfareporting.changeLogs.get",
22878	//   "parameterOrder": [
22879	//     "profileId",
22880	//     "id"
22881	//   ],
22882	//   "parameters": {
22883	//     "id": {
22884	//       "description": "Change log ID.",
22885	//       "format": "int64",
22886	//       "location": "path",
22887	//       "required": true,
22888	//       "type": "string"
22889	//     },
22890	//     "profileId": {
22891	//       "description": "User profile ID associated with this request.",
22892	//       "format": "int64",
22893	//       "location": "path",
22894	//       "required": true,
22895	//       "type": "string"
22896	//     }
22897	//   },
22898	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/changeLogs/{id}",
22899	//   "response": {
22900	//     "$ref": "ChangeLog"
22901	//   },
22902	//   "scopes": [
22903	//     "https://www.googleapis.com/auth/dfatrafficking"
22904	//   ]
22905	// }
22906
22907}
22908
22909// method id "dfareporting.changeLogs.list":
22910
22911type ChangeLogsListCall struct {
22912	s            *Service
22913	profileId    int64
22914	urlParams_   gensupport.URLParams
22915	ifNoneMatch_ string
22916	ctx_         context.Context
22917	header_      http.Header
22918}
22919
22920// List: Retrieves a list of change logs. This method supports paging.
22921//
22922// - profileId: User profile ID associated with this request.
22923func (r *ChangeLogsService) List(profileId int64) *ChangeLogsListCall {
22924	c := &ChangeLogsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22925	c.profileId = profileId
22926	return c
22927}
22928
22929// Action sets the optional parameter "action": Select only change logs
22930// with the specified action.
22931//
22932// Possible values:
22933//   "ACTION_CREATE"
22934//   "ACTION_UPDATE"
22935//   "ACTION_DELETE"
22936//   "ACTION_ENABLE"
22937//   "ACTION_DISABLE"
22938//   "ACTION_ADD"
22939//   "ACTION_REMOVE"
22940//   "ACTION_MARK_AS_DEFAULT"
22941//   "ACTION_ASSOCIATE"
22942//   "ACTION_ASSIGN"
22943//   "ACTION_UNASSIGN"
22944//   "ACTION_SEND"
22945//   "ACTION_LINK"
22946//   "ACTION_UNLINK"
22947//   "ACTION_PUSH"
22948//   "ACTION_EMAIL_TAGS"
22949//   "ACTION_SHARE"
22950func (c *ChangeLogsListCall) Action(action string) *ChangeLogsListCall {
22951	c.urlParams_.Set("action", action)
22952	return c
22953}
22954
22955// Ids sets the optional parameter "ids": Select only change logs with
22956// these IDs.
22957func (c *ChangeLogsListCall) Ids(ids ...int64) *ChangeLogsListCall {
22958	var ids_ []string
22959	for _, v := range ids {
22960		ids_ = append(ids_, fmt.Sprint(v))
22961	}
22962	c.urlParams_.SetMulti("ids", ids_)
22963	return c
22964}
22965
22966// MaxChangeTime sets the optional parameter "maxChangeTime": Select
22967// only change logs whose change time is before the specified
22968// maxChangeTime.The time should be formatted as an RFC3339 date/time
22969// string. For example, for 10:54 PM on July 18th, 2015, in the
22970// America/New York time zone, the format is
22971// "2015-07-18T22:54:00-04:00". In other words, the year, month, day,
22972// the letter T, the hour (24-hour clock system), minute, second, and
22973// then the time zone offset.
22974func (c *ChangeLogsListCall) MaxChangeTime(maxChangeTime string) *ChangeLogsListCall {
22975	c.urlParams_.Set("maxChangeTime", maxChangeTime)
22976	return c
22977}
22978
22979// MaxResults sets the optional parameter "maxResults": Maximum number
22980// of results to return.
22981func (c *ChangeLogsListCall) MaxResults(maxResults int64) *ChangeLogsListCall {
22982	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
22983	return c
22984}
22985
22986// MinChangeTime sets the optional parameter "minChangeTime": Select
22987// only change logs whose change time is after the specified
22988// minChangeTime.The time should be formatted as an RFC3339 date/time
22989// string. For example, for 10:54 PM on July 18th, 2015, in the
22990// America/New York time zone, the format is
22991// "2015-07-18T22:54:00-04:00". In other words, the year, month, day,
22992// the letter T, the hour (24-hour clock system), minute, second, and
22993// then the time zone offset.
22994func (c *ChangeLogsListCall) MinChangeTime(minChangeTime string) *ChangeLogsListCall {
22995	c.urlParams_.Set("minChangeTime", minChangeTime)
22996	return c
22997}
22998
22999// ObjectIds sets the optional parameter "objectIds": Select only change
23000// logs with these object IDs.
23001func (c *ChangeLogsListCall) ObjectIds(objectIds ...int64) *ChangeLogsListCall {
23002	var objectIds_ []string
23003	for _, v := range objectIds {
23004		objectIds_ = append(objectIds_, fmt.Sprint(v))
23005	}
23006	c.urlParams_.SetMulti("objectIds", objectIds_)
23007	return c
23008}
23009
23010// ObjectType sets the optional parameter "objectType": Select only
23011// change logs with the specified object type.
23012//
23013// Possible values:
23014//   "OBJECT_ADVERTISER"
23015//   "OBJECT_FLOODLIGHT_CONFIGURATION"
23016//   "OBJECT_AD"
23017//   "OBJECT_FLOODLIGHT_ACTVITY"
23018//   "OBJECT_CAMPAIGN"
23019//   "OBJECT_FLOODLIGHT_ACTIVITY_GROUP"
23020//   "OBJECT_CREATIVE"
23021//   "OBJECT_PLACEMENT"
23022//   "OBJECT_DFA_SITE"
23023//   "OBJECT_USER_ROLE"
23024//   "OBJECT_USER_PROFILE"
23025//   "OBJECT_ADVERTISER_GROUP"
23026//   "OBJECT_ACCOUNT"
23027//   "OBJECT_SUBACCOUNT"
23028//   "OBJECT_RICHMEDIA_CREATIVE"
23029//   "OBJECT_INSTREAM_CREATIVE"
23030//   "OBJECT_MEDIA_ORDER"
23031//   "OBJECT_CONTENT_CATEGORY"
23032//   "OBJECT_PLACEMENT_STRATEGY"
23033//   "OBJECT_SD_SITE"
23034//   "OBJECT_SIZE"
23035//   "OBJECT_CREATIVE_GROUP"
23036//   "OBJECT_CREATIVE_ASSET"
23037//   "OBJECT_USER_PROFILE_FILTER"
23038//   "OBJECT_LANDING_PAGE"
23039//   "OBJECT_CREATIVE_FIELD"
23040//   "OBJECT_REMARKETING_LIST"
23041//   "OBJECT_PROVIDED_LIST_CLIENT"
23042//   "OBJECT_EVENT_TAG"
23043//   "OBJECT_CREATIVE_BUNDLE"
23044//   "OBJECT_BILLING_ACCOUNT_GROUP"
23045//   "OBJECT_BILLING_FEATURE"
23046//   "OBJECT_RATE_CARD"
23047//   "OBJECT_ACCOUNT_BILLING_FEATURE"
23048//   "OBJECT_BILLING_MINIMUM_FEE"
23049//   "OBJECT_BILLING_PROFILE"
23050//   "OBJECT_PLAYSTORE_LINK"
23051//   "OBJECT_TARGETING_TEMPLATE"
23052//   "OBJECT_SEARCH_LIFT_STUDY"
23053//   "OBJECT_FLOODLIGHT_DV360_LINK"
23054func (c *ChangeLogsListCall) ObjectType(objectType string) *ChangeLogsListCall {
23055	c.urlParams_.Set("objectType", objectType)
23056	return c
23057}
23058
23059// PageToken sets the optional parameter "pageToken": Value of the
23060// nextPageToken from the previous result page.
23061func (c *ChangeLogsListCall) PageToken(pageToken string) *ChangeLogsListCall {
23062	c.urlParams_.Set("pageToken", pageToken)
23063	return c
23064}
23065
23066// SearchString sets the optional parameter "searchString": Select only
23067// change logs whose object ID, user name, old or new values match the
23068// search string.
23069func (c *ChangeLogsListCall) SearchString(searchString string) *ChangeLogsListCall {
23070	c.urlParams_.Set("searchString", searchString)
23071	return c
23072}
23073
23074// UserProfileIds sets the optional parameter "userProfileIds": Select
23075// only change logs with these user profile IDs.
23076func (c *ChangeLogsListCall) UserProfileIds(userProfileIds ...int64) *ChangeLogsListCall {
23077	var userProfileIds_ []string
23078	for _, v := range userProfileIds {
23079		userProfileIds_ = append(userProfileIds_, fmt.Sprint(v))
23080	}
23081	c.urlParams_.SetMulti("userProfileIds", userProfileIds_)
23082	return c
23083}
23084
23085// Fields allows partial responses to be retrieved. See
23086// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23087// for more information.
23088func (c *ChangeLogsListCall) Fields(s ...googleapi.Field) *ChangeLogsListCall {
23089	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23090	return c
23091}
23092
23093// IfNoneMatch sets the optional parameter which makes the operation
23094// fail if the object's ETag matches the given value. This is useful for
23095// getting updates only after the object has changed since the last
23096// request. Use googleapi.IsNotModified to check whether the response
23097// error from Do is the result of In-None-Match.
23098func (c *ChangeLogsListCall) IfNoneMatch(entityTag string) *ChangeLogsListCall {
23099	c.ifNoneMatch_ = entityTag
23100	return c
23101}
23102
23103// Context sets the context to be used in this call's Do method. Any
23104// pending HTTP request will be aborted if the provided context is
23105// canceled.
23106func (c *ChangeLogsListCall) Context(ctx context.Context) *ChangeLogsListCall {
23107	c.ctx_ = ctx
23108	return c
23109}
23110
23111// Header returns an http.Header that can be modified by the caller to
23112// add HTTP headers to the request.
23113func (c *ChangeLogsListCall) Header() http.Header {
23114	if c.header_ == nil {
23115		c.header_ = make(http.Header)
23116	}
23117	return c.header_
23118}
23119
23120func (c *ChangeLogsListCall) doRequest(alt string) (*http.Response, error) {
23121	reqHeaders := make(http.Header)
23122	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23123	for k, v := range c.header_ {
23124		reqHeaders[k] = v
23125	}
23126	reqHeaders.Set("User-Agent", c.s.userAgent())
23127	if c.ifNoneMatch_ != "" {
23128		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23129	}
23130	var body io.Reader = nil
23131	c.urlParams_.Set("alt", alt)
23132	c.urlParams_.Set("prettyPrint", "false")
23133	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/changeLogs")
23134	urls += "?" + c.urlParams_.Encode()
23135	req, err := http.NewRequest("GET", urls, body)
23136	if err != nil {
23137		return nil, err
23138	}
23139	req.Header = reqHeaders
23140	googleapi.Expand(req.URL, map[string]string{
23141		"profileId": strconv.FormatInt(c.profileId, 10),
23142	})
23143	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23144}
23145
23146// Do executes the "dfareporting.changeLogs.list" call.
23147// Exactly one of *ChangeLogsListResponse or error will be non-nil. Any
23148// non-2xx status code is an error. Response headers are in either
23149// *ChangeLogsListResponse.ServerResponse.Header or (if a response was
23150// returned at all) in error.(*googleapi.Error).Header. Use
23151// googleapi.IsNotModified to check whether the returned error was
23152// because http.StatusNotModified was returned.
23153func (c *ChangeLogsListCall) Do(opts ...googleapi.CallOption) (*ChangeLogsListResponse, error) {
23154	gensupport.SetOptions(c.urlParams_, opts...)
23155	res, err := c.doRequest("json")
23156	if res != nil && res.StatusCode == http.StatusNotModified {
23157		if res.Body != nil {
23158			res.Body.Close()
23159		}
23160		return nil, &googleapi.Error{
23161			Code:   res.StatusCode,
23162			Header: res.Header,
23163		}
23164	}
23165	if err != nil {
23166		return nil, err
23167	}
23168	defer googleapi.CloseBody(res)
23169	if err := googleapi.CheckResponse(res); err != nil {
23170		return nil, err
23171	}
23172	ret := &ChangeLogsListResponse{
23173		ServerResponse: googleapi.ServerResponse{
23174			Header:         res.Header,
23175			HTTPStatusCode: res.StatusCode,
23176		},
23177	}
23178	target := &ret
23179	if err := gensupport.DecodeResponse(target, res); err != nil {
23180		return nil, err
23181	}
23182	return ret, nil
23183	// {
23184	//   "description": "Retrieves a list of change logs. This method supports paging.",
23185	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/changeLogs",
23186	//   "httpMethod": "GET",
23187	//   "id": "dfareporting.changeLogs.list",
23188	//   "parameterOrder": [
23189	//     "profileId"
23190	//   ],
23191	//   "parameters": {
23192	//     "action": {
23193	//       "description": "Select only change logs with the specified action.",
23194	//       "enum": [
23195	//         "ACTION_CREATE",
23196	//         "ACTION_UPDATE",
23197	//         "ACTION_DELETE",
23198	//         "ACTION_ENABLE",
23199	//         "ACTION_DISABLE",
23200	//         "ACTION_ADD",
23201	//         "ACTION_REMOVE",
23202	//         "ACTION_MARK_AS_DEFAULT",
23203	//         "ACTION_ASSOCIATE",
23204	//         "ACTION_ASSIGN",
23205	//         "ACTION_UNASSIGN",
23206	//         "ACTION_SEND",
23207	//         "ACTION_LINK",
23208	//         "ACTION_UNLINK",
23209	//         "ACTION_PUSH",
23210	//         "ACTION_EMAIL_TAGS",
23211	//         "ACTION_SHARE"
23212	//       ],
23213	//       "enumDescriptions": [
23214	//         "",
23215	//         "",
23216	//         "",
23217	//         "",
23218	//         "",
23219	//         "",
23220	//         "",
23221	//         "",
23222	//         "",
23223	//         "",
23224	//         "",
23225	//         "",
23226	//         "",
23227	//         "",
23228	//         "",
23229	//         "",
23230	//         ""
23231	//       ],
23232	//       "location": "query",
23233	//       "type": "string"
23234	//     },
23235	//     "ids": {
23236	//       "description": "Select only change logs with these IDs.",
23237	//       "format": "int64",
23238	//       "location": "query",
23239	//       "repeated": true,
23240	//       "type": "string"
23241	//     },
23242	//     "maxChangeTime": {
23243	//       "description": "Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.",
23244	//       "location": "query",
23245	//       "type": "string"
23246	//     },
23247	//     "maxResults": {
23248	//       "default": "1000",
23249	//       "description": "Maximum number of results to return.",
23250	//       "format": "int32",
23251	//       "location": "query",
23252	//       "maximum": "1000",
23253	//       "minimum": "0",
23254	//       "type": "integer"
23255	//     },
23256	//     "minChangeTime": {
23257	//       "description": "Select only change logs whose change time is after the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.",
23258	//       "location": "query",
23259	//       "type": "string"
23260	//     },
23261	//     "objectIds": {
23262	//       "description": "Select only change logs with these object IDs.",
23263	//       "format": "int64",
23264	//       "location": "query",
23265	//       "repeated": true,
23266	//       "type": "string"
23267	//     },
23268	//     "objectType": {
23269	//       "description": "Select only change logs with the specified object type.",
23270	//       "enum": [
23271	//         "OBJECT_ADVERTISER",
23272	//         "OBJECT_FLOODLIGHT_CONFIGURATION",
23273	//         "OBJECT_AD",
23274	//         "OBJECT_FLOODLIGHT_ACTVITY",
23275	//         "OBJECT_CAMPAIGN",
23276	//         "OBJECT_FLOODLIGHT_ACTIVITY_GROUP",
23277	//         "OBJECT_CREATIVE",
23278	//         "OBJECT_PLACEMENT",
23279	//         "OBJECT_DFA_SITE",
23280	//         "OBJECT_USER_ROLE",
23281	//         "OBJECT_USER_PROFILE",
23282	//         "OBJECT_ADVERTISER_GROUP",
23283	//         "OBJECT_ACCOUNT",
23284	//         "OBJECT_SUBACCOUNT",
23285	//         "OBJECT_RICHMEDIA_CREATIVE",
23286	//         "OBJECT_INSTREAM_CREATIVE",
23287	//         "OBJECT_MEDIA_ORDER",
23288	//         "OBJECT_CONTENT_CATEGORY",
23289	//         "OBJECT_PLACEMENT_STRATEGY",
23290	//         "OBJECT_SD_SITE",
23291	//         "OBJECT_SIZE",
23292	//         "OBJECT_CREATIVE_GROUP",
23293	//         "OBJECT_CREATIVE_ASSET",
23294	//         "OBJECT_USER_PROFILE_FILTER",
23295	//         "OBJECT_LANDING_PAGE",
23296	//         "OBJECT_CREATIVE_FIELD",
23297	//         "OBJECT_REMARKETING_LIST",
23298	//         "OBJECT_PROVIDED_LIST_CLIENT",
23299	//         "OBJECT_EVENT_TAG",
23300	//         "OBJECT_CREATIVE_BUNDLE",
23301	//         "OBJECT_BILLING_ACCOUNT_GROUP",
23302	//         "OBJECT_BILLING_FEATURE",
23303	//         "OBJECT_RATE_CARD",
23304	//         "OBJECT_ACCOUNT_BILLING_FEATURE",
23305	//         "OBJECT_BILLING_MINIMUM_FEE",
23306	//         "OBJECT_BILLING_PROFILE",
23307	//         "OBJECT_PLAYSTORE_LINK",
23308	//         "OBJECT_TARGETING_TEMPLATE",
23309	//         "OBJECT_SEARCH_LIFT_STUDY",
23310	//         "OBJECT_FLOODLIGHT_DV360_LINK"
23311	//       ],
23312	//       "enumDescriptions": [
23313	//         "",
23314	//         "",
23315	//         "",
23316	//         "",
23317	//         "",
23318	//         "",
23319	//         "",
23320	//         "",
23321	//         "",
23322	//         "",
23323	//         "",
23324	//         "",
23325	//         "",
23326	//         "",
23327	//         "",
23328	//         "",
23329	//         "",
23330	//         "",
23331	//         "",
23332	//         "",
23333	//         "",
23334	//         "",
23335	//         "",
23336	//         "",
23337	//         "",
23338	//         "",
23339	//         "",
23340	//         "",
23341	//         "",
23342	//         "",
23343	//         "",
23344	//         "",
23345	//         "",
23346	//         "",
23347	//         "",
23348	//         "",
23349	//         "",
23350	//         "",
23351	//         "",
23352	//         ""
23353	//       ],
23354	//       "location": "query",
23355	//       "type": "string"
23356	//     },
23357	//     "pageToken": {
23358	//       "description": "Value of the nextPageToken from the previous result page.",
23359	//       "location": "query",
23360	//       "type": "string"
23361	//     },
23362	//     "profileId": {
23363	//       "description": "User profile ID associated with this request.",
23364	//       "format": "int64",
23365	//       "location": "path",
23366	//       "required": true,
23367	//       "type": "string"
23368	//     },
23369	//     "searchString": {
23370	//       "description": "Select only change logs whose object ID, user name, old or new values match the search string.",
23371	//       "location": "query",
23372	//       "type": "string"
23373	//     },
23374	//     "userProfileIds": {
23375	//       "description": "Select only change logs with these user profile IDs.",
23376	//       "format": "int64",
23377	//       "location": "query",
23378	//       "repeated": true,
23379	//       "type": "string"
23380	//     }
23381	//   },
23382	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/changeLogs",
23383	//   "response": {
23384	//     "$ref": "ChangeLogsListResponse"
23385	//   },
23386	//   "scopes": [
23387	//     "https://www.googleapis.com/auth/dfatrafficking"
23388	//   ]
23389	// }
23390
23391}
23392
23393// Pages invokes f for each page of results.
23394// A non-nil error returned from f will halt the iteration.
23395// The provided context supersedes any context provided to the Context method.
23396func (c *ChangeLogsListCall) Pages(ctx context.Context, f func(*ChangeLogsListResponse) error) error {
23397	c.ctx_ = ctx
23398	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23399	for {
23400		x, err := c.Do()
23401		if err != nil {
23402			return err
23403		}
23404		if err := f(x); err != nil {
23405			return err
23406		}
23407		if x.NextPageToken == "" {
23408			return nil
23409		}
23410		c.PageToken(x.NextPageToken)
23411	}
23412}
23413
23414// method id "dfareporting.cities.list":
23415
23416type CitiesListCall struct {
23417	s            *Service
23418	profileId    int64
23419	urlParams_   gensupport.URLParams
23420	ifNoneMatch_ string
23421	ctx_         context.Context
23422	header_      http.Header
23423}
23424
23425// List: Retrieves a list of cities, possibly filtered.
23426//
23427// - profileId: User profile ID associated with this request.
23428func (r *CitiesService) List(profileId int64) *CitiesListCall {
23429	c := &CitiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23430	c.profileId = profileId
23431	return c
23432}
23433
23434// CountryDartIds sets the optional parameter "countryDartIds": Select
23435// only cities from these countries.
23436func (c *CitiesListCall) CountryDartIds(countryDartIds ...int64) *CitiesListCall {
23437	var countryDartIds_ []string
23438	for _, v := range countryDartIds {
23439		countryDartIds_ = append(countryDartIds_, fmt.Sprint(v))
23440	}
23441	c.urlParams_.SetMulti("countryDartIds", countryDartIds_)
23442	return c
23443}
23444
23445// DartIds sets the optional parameter "dartIds": Select only cities
23446// with these DART IDs.
23447func (c *CitiesListCall) DartIds(dartIds ...int64) *CitiesListCall {
23448	var dartIds_ []string
23449	for _, v := range dartIds {
23450		dartIds_ = append(dartIds_, fmt.Sprint(v))
23451	}
23452	c.urlParams_.SetMulti("dartIds", dartIds_)
23453	return c
23454}
23455
23456// NamePrefix sets the optional parameter "namePrefix": Select only
23457// cities with names starting with this prefix.
23458func (c *CitiesListCall) NamePrefix(namePrefix string) *CitiesListCall {
23459	c.urlParams_.Set("namePrefix", namePrefix)
23460	return c
23461}
23462
23463// RegionDartIds sets the optional parameter "regionDartIds": Select
23464// only cities from these regions.
23465func (c *CitiesListCall) RegionDartIds(regionDartIds ...int64) *CitiesListCall {
23466	var regionDartIds_ []string
23467	for _, v := range regionDartIds {
23468		regionDartIds_ = append(regionDartIds_, fmt.Sprint(v))
23469	}
23470	c.urlParams_.SetMulti("regionDartIds", regionDartIds_)
23471	return c
23472}
23473
23474// Fields allows partial responses to be retrieved. See
23475// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23476// for more information.
23477func (c *CitiesListCall) Fields(s ...googleapi.Field) *CitiesListCall {
23478	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23479	return c
23480}
23481
23482// IfNoneMatch sets the optional parameter which makes the operation
23483// fail if the object's ETag matches the given value. This is useful for
23484// getting updates only after the object has changed since the last
23485// request. Use googleapi.IsNotModified to check whether the response
23486// error from Do is the result of In-None-Match.
23487func (c *CitiesListCall) IfNoneMatch(entityTag string) *CitiesListCall {
23488	c.ifNoneMatch_ = entityTag
23489	return c
23490}
23491
23492// Context sets the context to be used in this call's Do method. Any
23493// pending HTTP request will be aborted if the provided context is
23494// canceled.
23495func (c *CitiesListCall) Context(ctx context.Context) *CitiesListCall {
23496	c.ctx_ = ctx
23497	return c
23498}
23499
23500// Header returns an http.Header that can be modified by the caller to
23501// add HTTP headers to the request.
23502func (c *CitiesListCall) Header() http.Header {
23503	if c.header_ == nil {
23504		c.header_ = make(http.Header)
23505	}
23506	return c.header_
23507}
23508
23509func (c *CitiesListCall) doRequest(alt string) (*http.Response, error) {
23510	reqHeaders := make(http.Header)
23511	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23512	for k, v := range c.header_ {
23513		reqHeaders[k] = v
23514	}
23515	reqHeaders.Set("User-Agent", c.s.userAgent())
23516	if c.ifNoneMatch_ != "" {
23517		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23518	}
23519	var body io.Reader = nil
23520	c.urlParams_.Set("alt", alt)
23521	c.urlParams_.Set("prettyPrint", "false")
23522	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/cities")
23523	urls += "?" + c.urlParams_.Encode()
23524	req, err := http.NewRequest("GET", urls, body)
23525	if err != nil {
23526		return nil, err
23527	}
23528	req.Header = reqHeaders
23529	googleapi.Expand(req.URL, map[string]string{
23530		"profileId": strconv.FormatInt(c.profileId, 10),
23531	})
23532	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23533}
23534
23535// Do executes the "dfareporting.cities.list" call.
23536// Exactly one of *CitiesListResponse or error will be non-nil. Any
23537// non-2xx status code is an error. Response headers are in either
23538// *CitiesListResponse.ServerResponse.Header or (if a response was
23539// returned at all) in error.(*googleapi.Error).Header. Use
23540// googleapi.IsNotModified to check whether the returned error was
23541// because http.StatusNotModified was returned.
23542func (c *CitiesListCall) Do(opts ...googleapi.CallOption) (*CitiesListResponse, error) {
23543	gensupport.SetOptions(c.urlParams_, opts...)
23544	res, err := c.doRequest("json")
23545	if res != nil && res.StatusCode == http.StatusNotModified {
23546		if res.Body != nil {
23547			res.Body.Close()
23548		}
23549		return nil, &googleapi.Error{
23550			Code:   res.StatusCode,
23551			Header: res.Header,
23552		}
23553	}
23554	if err != nil {
23555		return nil, err
23556	}
23557	defer googleapi.CloseBody(res)
23558	if err := googleapi.CheckResponse(res); err != nil {
23559		return nil, err
23560	}
23561	ret := &CitiesListResponse{
23562		ServerResponse: googleapi.ServerResponse{
23563			Header:         res.Header,
23564			HTTPStatusCode: res.StatusCode,
23565		},
23566	}
23567	target := &ret
23568	if err := gensupport.DecodeResponse(target, res); err != nil {
23569		return nil, err
23570	}
23571	return ret, nil
23572	// {
23573	//   "description": "Retrieves a list of cities, possibly filtered.",
23574	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/cities",
23575	//   "httpMethod": "GET",
23576	//   "id": "dfareporting.cities.list",
23577	//   "parameterOrder": [
23578	//     "profileId"
23579	//   ],
23580	//   "parameters": {
23581	//     "countryDartIds": {
23582	//       "description": "Select only cities from these countries.",
23583	//       "format": "int64",
23584	//       "location": "query",
23585	//       "repeated": true,
23586	//       "type": "string"
23587	//     },
23588	//     "dartIds": {
23589	//       "description": "Select only cities with these DART IDs.",
23590	//       "format": "int64",
23591	//       "location": "query",
23592	//       "repeated": true,
23593	//       "type": "string"
23594	//     },
23595	//     "namePrefix": {
23596	//       "description": "Select only cities with names starting with this prefix.",
23597	//       "location": "query",
23598	//       "type": "string"
23599	//     },
23600	//     "profileId": {
23601	//       "description": "User profile ID associated with this request.",
23602	//       "format": "int64",
23603	//       "location": "path",
23604	//       "required": true,
23605	//       "type": "string"
23606	//     },
23607	//     "regionDartIds": {
23608	//       "description": "Select only cities from these regions.",
23609	//       "format": "int64",
23610	//       "location": "query",
23611	//       "repeated": true,
23612	//       "type": "string"
23613	//     }
23614	//   },
23615	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/cities",
23616	//   "response": {
23617	//     "$ref": "CitiesListResponse"
23618	//   },
23619	//   "scopes": [
23620	//     "https://www.googleapis.com/auth/dfatrafficking"
23621	//   ]
23622	// }
23623
23624}
23625
23626// method id "dfareporting.connectionTypes.get":
23627
23628type ConnectionTypesGetCall struct {
23629	s            *Service
23630	profileId    int64
23631	id           int64
23632	urlParams_   gensupport.URLParams
23633	ifNoneMatch_ string
23634	ctx_         context.Context
23635	header_      http.Header
23636}
23637
23638// Get: Gets one connection type by ID.
23639//
23640// - id: Connection type ID.
23641// - profileId: User profile ID associated with this request.
23642func (r *ConnectionTypesService) Get(profileId int64, id int64) *ConnectionTypesGetCall {
23643	c := &ConnectionTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23644	c.profileId = profileId
23645	c.id = id
23646	return c
23647}
23648
23649// Fields allows partial responses to be retrieved. See
23650// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23651// for more information.
23652func (c *ConnectionTypesGetCall) Fields(s ...googleapi.Field) *ConnectionTypesGetCall {
23653	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23654	return c
23655}
23656
23657// IfNoneMatch sets the optional parameter which makes the operation
23658// fail if the object's ETag matches the given value. This is useful for
23659// getting updates only after the object has changed since the last
23660// request. Use googleapi.IsNotModified to check whether the response
23661// error from Do is the result of In-None-Match.
23662func (c *ConnectionTypesGetCall) IfNoneMatch(entityTag string) *ConnectionTypesGetCall {
23663	c.ifNoneMatch_ = entityTag
23664	return c
23665}
23666
23667// Context sets the context to be used in this call's Do method. Any
23668// pending HTTP request will be aborted if the provided context is
23669// canceled.
23670func (c *ConnectionTypesGetCall) Context(ctx context.Context) *ConnectionTypesGetCall {
23671	c.ctx_ = ctx
23672	return c
23673}
23674
23675// Header returns an http.Header that can be modified by the caller to
23676// add HTTP headers to the request.
23677func (c *ConnectionTypesGetCall) Header() http.Header {
23678	if c.header_ == nil {
23679		c.header_ = make(http.Header)
23680	}
23681	return c.header_
23682}
23683
23684func (c *ConnectionTypesGetCall) doRequest(alt string) (*http.Response, error) {
23685	reqHeaders := make(http.Header)
23686	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23687	for k, v := range c.header_ {
23688		reqHeaders[k] = v
23689	}
23690	reqHeaders.Set("User-Agent", c.s.userAgent())
23691	if c.ifNoneMatch_ != "" {
23692		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23693	}
23694	var body io.Reader = nil
23695	c.urlParams_.Set("alt", alt)
23696	c.urlParams_.Set("prettyPrint", "false")
23697	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/connectionTypes/{id}")
23698	urls += "?" + c.urlParams_.Encode()
23699	req, err := http.NewRequest("GET", urls, body)
23700	if err != nil {
23701		return nil, err
23702	}
23703	req.Header = reqHeaders
23704	googleapi.Expand(req.URL, map[string]string{
23705		"profileId": strconv.FormatInt(c.profileId, 10),
23706		"id":        strconv.FormatInt(c.id, 10),
23707	})
23708	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23709}
23710
23711// Do executes the "dfareporting.connectionTypes.get" call.
23712// Exactly one of *ConnectionType or error will be non-nil. Any non-2xx
23713// status code is an error. Response headers are in either
23714// *ConnectionType.ServerResponse.Header or (if a response was returned
23715// at all) in error.(*googleapi.Error).Header. Use
23716// googleapi.IsNotModified to check whether the returned error was
23717// because http.StatusNotModified was returned.
23718func (c *ConnectionTypesGetCall) Do(opts ...googleapi.CallOption) (*ConnectionType, error) {
23719	gensupport.SetOptions(c.urlParams_, opts...)
23720	res, err := c.doRequest("json")
23721	if res != nil && res.StatusCode == http.StatusNotModified {
23722		if res.Body != nil {
23723			res.Body.Close()
23724		}
23725		return nil, &googleapi.Error{
23726			Code:   res.StatusCode,
23727			Header: res.Header,
23728		}
23729	}
23730	if err != nil {
23731		return nil, err
23732	}
23733	defer googleapi.CloseBody(res)
23734	if err := googleapi.CheckResponse(res); err != nil {
23735		return nil, err
23736	}
23737	ret := &ConnectionType{
23738		ServerResponse: googleapi.ServerResponse{
23739			Header:         res.Header,
23740			HTTPStatusCode: res.StatusCode,
23741		},
23742	}
23743	target := &ret
23744	if err := gensupport.DecodeResponse(target, res); err != nil {
23745		return nil, err
23746	}
23747	return ret, nil
23748	// {
23749	//   "description": "Gets one connection type by ID.",
23750	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/connectionTypes/{id}",
23751	//   "httpMethod": "GET",
23752	//   "id": "dfareporting.connectionTypes.get",
23753	//   "parameterOrder": [
23754	//     "profileId",
23755	//     "id"
23756	//   ],
23757	//   "parameters": {
23758	//     "id": {
23759	//       "description": "Connection type ID.",
23760	//       "format": "int64",
23761	//       "location": "path",
23762	//       "required": true,
23763	//       "type": "string"
23764	//     },
23765	//     "profileId": {
23766	//       "description": "User profile ID associated with this request.",
23767	//       "format": "int64",
23768	//       "location": "path",
23769	//       "required": true,
23770	//       "type": "string"
23771	//     }
23772	//   },
23773	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/connectionTypes/{id}",
23774	//   "response": {
23775	//     "$ref": "ConnectionType"
23776	//   },
23777	//   "scopes": [
23778	//     "https://www.googleapis.com/auth/dfatrafficking"
23779	//   ]
23780	// }
23781
23782}
23783
23784// method id "dfareporting.connectionTypes.list":
23785
23786type ConnectionTypesListCall struct {
23787	s            *Service
23788	profileId    int64
23789	urlParams_   gensupport.URLParams
23790	ifNoneMatch_ string
23791	ctx_         context.Context
23792	header_      http.Header
23793}
23794
23795// List: Retrieves a list of connection types.
23796//
23797// - profileId: User profile ID associated with this request.
23798func (r *ConnectionTypesService) List(profileId int64) *ConnectionTypesListCall {
23799	c := &ConnectionTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23800	c.profileId = profileId
23801	return c
23802}
23803
23804// Fields allows partial responses to be retrieved. See
23805// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23806// for more information.
23807func (c *ConnectionTypesListCall) Fields(s ...googleapi.Field) *ConnectionTypesListCall {
23808	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23809	return c
23810}
23811
23812// IfNoneMatch sets the optional parameter which makes the operation
23813// fail if the object's ETag matches the given value. This is useful for
23814// getting updates only after the object has changed since the last
23815// request. Use googleapi.IsNotModified to check whether the response
23816// error from Do is the result of In-None-Match.
23817func (c *ConnectionTypesListCall) IfNoneMatch(entityTag string) *ConnectionTypesListCall {
23818	c.ifNoneMatch_ = entityTag
23819	return c
23820}
23821
23822// Context sets the context to be used in this call's Do method. Any
23823// pending HTTP request will be aborted if the provided context is
23824// canceled.
23825func (c *ConnectionTypesListCall) Context(ctx context.Context) *ConnectionTypesListCall {
23826	c.ctx_ = ctx
23827	return c
23828}
23829
23830// Header returns an http.Header that can be modified by the caller to
23831// add HTTP headers to the request.
23832func (c *ConnectionTypesListCall) Header() http.Header {
23833	if c.header_ == nil {
23834		c.header_ = make(http.Header)
23835	}
23836	return c.header_
23837}
23838
23839func (c *ConnectionTypesListCall) doRequest(alt string) (*http.Response, error) {
23840	reqHeaders := make(http.Header)
23841	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23842	for k, v := range c.header_ {
23843		reqHeaders[k] = v
23844	}
23845	reqHeaders.Set("User-Agent", c.s.userAgent())
23846	if c.ifNoneMatch_ != "" {
23847		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23848	}
23849	var body io.Reader = nil
23850	c.urlParams_.Set("alt", alt)
23851	c.urlParams_.Set("prettyPrint", "false")
23852	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/connectionTypes")
23853	urls += "?" + c.urlParams_.Encode()
23854	req, err := http.NewRequest("GET", urls, body)
23855	if err != nil {
23856		return nil, err
23857	}
23858	req.Header = reqHeaders
23859	googleapi.Expand(req.URL, map[string]string{
23860		"profileId": strconv.FormatInt(c.profileId, 10),
23861	})
23862	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23863}
23864
23865// Do executes the "dfareporting.connectionTypes.list" call.
23866// Exactly one of *ConnectionTypesListResponse or error will be non-nil.
23867// Any non-2xx status code is an error. Response headers are in either
23868// *ConnectionTypesListResponse.ServerResponse.Header or (if a response
23869// was returned at all) in error.(*googleapi.Error).Header. Use
23870// googleapi.IsNotModified to check whether the returned error was
23871// because http.StatusNotModified was returned.
23872func (c *ConnectionTypesListCall) Do(opts ...googleapi.CallOption) (*ConnectionTypesListResponse, error) {
23873	gensupport.SetOptions(c.urlParams_, opts...)
23874	res, err := c.doRequest("json")
23875	if res != nil && res.StatusCode == http.StatusNotModified {
23876		if res.Body != nil {
23877			res.Body.Close()
23878		}
23879		return nil, &googleapi.Error{
23880			Code:   res.StatusCode,
23881			Header: res.Header,
23882		}
23883	}
23884	if err != nil {
23885		return nil, err
23886	}
23887	defer googleapi.CloseBody(res)
23888	if err := googleapi.CheckResponse(res); err != nil {
23889		return nil, err
23890	}
23891	ret := &ConnectionTypesListResponse{
23892		ServerResponse: googleapi.ServerResponse{
23893			Header:         res.Header,
23894			HTTPStatusCode: res.StatusCode,
23895		},
23896	}
23897	target := &ret
23898	if err := gensupport.DecodeResponse(target, res); err != nil {
23899		return nil, err
23900	}
23901	return ret, nil
23902	// {
23903	//   "description": "Retrieves a list of connection types.",
23904	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/connectionTypes",
23905	//   "httpMethod": "GET",
23906	//   "id": "dfareporting.connectionTypes.list",
23907	//   "parameterOrder": [
23908	//     "profileId"
23909	//   ],
23910	//   "parameters": {
23911	//     "profileId": {
23912	//       "description": "User profile ID associated with this request.",
23913	//       "format": "int64",
23914	//       "location": "path",
23915	//       "required": true,
23916	//       "type": "string"
23917	//     }
23918	//   },
23919	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/connectionTypes",
23920	//   "response": {
23921	//     "$ref": "ConnectionTypesListResponse"
23922	//   },
23923	//   "scopes": [
23924	//     "https://www.googleapis.com/auth/dfatrafficking"
23925	//   ]
23926	// }
23927
23928}
23929
23930// method id "dfareporting.contentCategories.delete":
23931
23932type ContentCategoriesDeleteCall struct {
23933	s          *Service
23934	profileId  int64
23935	id         int64
23936	urlParams_ gensupport.URLParams
23937	ctx_       context.Context
23938	header_    http.Header
23939}
23940
23941// Delete: Deletes an existing content category.
23942//
23943// - id: Content category ID.
23944// - profileId: User profile ID associated with this request.
23945func (r *ContentCategoriesService) Delete(profileId int64, id int64) *ContentCategoriesDeleteCall {
23946	c := &ContentCategoriesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23947	c.profileId = profileId
23948	c.id = id
23949	return c
23950}
23951
23952// Fields allows partial responses to be retrieved. See
23953// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23954// for more information.
23955func (c *ContentCategoriesDeleteCall) Fields(s ...googleapi.Field) *ContentCategoriesDeleteCall {
23956	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23957	return c
23958}
23959
23960// Context sets the context to be used in this call's Do method. Any
23961// pending HTTP request will be aborted if the provided context is
23962// canceled.
23963func (c *ContentCategoriesDeleteCall) Context(ctx context.Context) *ContentCategoriesDeleteCall {
23964	c.ctx_ = ctx
23965	return c
23966}
23967
23968// Header returns an http.Header that can be modified by the caller to
23969// add HTTP headers to the request.
23970func (c *ContentCategoriesDeleteCall) Header() http.Header {
23971	if c.header_ == nil {
23972		c.header_ = make(http.Header)
23973	}
23974	return c.header_
23975}
23976
23977func (c *ContentCategoriesDeleteCall) doRequest(alt string) (*http.Response, error) {
23978	reqHeaders := make(http.Header)
23979	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23980	for k, v := range c.header_ {
23981		reqHeaders[k] = v
23982	}
23983	reqHeaders.Set("User-Agent", c.s.userAgent())
23984	var body io.Reader = nil
23985	c.urlParams_.Set("alt", alt)
23986	c.urlParams_.Set("prettyPrint", "false")
23987	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/contentCategories/{id}")
23988	urls += "?" + c.urlParams_.Encode()
23989	req, err := http.NewRequest("DELETE", urls, body)
23990	if err != nil {
23991		return nil, err
23992	}
23993	req.Header = reqHeaders
23994	googleapi.Expand(req.URL, map[string]string{
23995		"profileId": strconv.FormatInt(c.profileId, 10),
23996		"id":        strconv.FormatInt(c.id, 10),
23997	})
23998	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23999}
24000
24001// Do executes the "dfareporting.contentCategories.delete" call.
24002func (c *ContentCategoriesDeleteCall) Do(opts ...googleapi.CallOption) error {
24003	gensupport.SetOptions(c.urlParams_, opts...)
24004	res, err := c.doRequest("json")
24005	if err != nil {
24006		return err
24007	}
24008	defer googleapi.CloseBody(res)
24009	if err := googleapi.CheckResponse(res); err != nil {
24010		return err
24011	}
24012	return nil
24013	// {
24014	//   "description": "Deletes an existing content category.",
24015	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories/{id}",
24016	//   "httpMethod": "DELETE",
24017	//   "id": "dfareporting.contentCategories.delete",
24018	//   "parameterOrder": [
24019	//     "profileId",
24020	//     "id"
24021	//   ],
24022	//   "parameters": {
24023	//     "id": {
24024	//       "description": "Content category ID.",
24025	//       "format": "int64",
24026	//       "location": "path",
24027	//       "required": true,
24028	//       "type": "string"
24029	//     },
24030	//     "profileId": {
24031	//       "description": "User profile ID associated with this request.",
24032	//       "format": "int64",
24033	//       "location": "path",
24034	//       "required": true,
24035	//       "type": "string"
24036	//     }
24037	//   },
24038	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories/{id}",
24039	//   "scopes": [
24040	//     "https://www.googleapis.com/auth/dfatrafficking"
24041	//   ]
24042	// }
24043
24044}
24045
24046// method id "dfareporting.contentCategories.get":
24047
24048type ContentCategoriesGetCall struct {
24049	s            *Service
24050	profileId    int64
24051	id           int64
24052	urlParams_   gensupport.URLParams
24053	ifNoneMatch_ string
24054	ctx_         context.Context
24055	header_      http.Header
24056}
24057
24058// Get: Gets one content category by ID.
24059//
24060// - id: Content category ID.
24061// - profileId: User profile ID associated with this request.
24062func (r *ContentCategoriesService) Get(profileId int64, id int64) *ContentCategoriesGetCall {
24063	c := &ContentCategoriesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24064	c.profileId = profileId
24065	c.id = id
24066	return c
24067}
24068
24069// Fields allows partial responses to be retrieved. See
24070// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24071// for more information.
24072func (c *ContentCategoriesGetCall) Fields(s ...googleapi.Field) *ContentCategoriesGetCall {
24073	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24074	return c
24075}
24076
24077// IfNoneMatch sets the optional parameter which makes the operation
24078// fail if the object's ETag matches the given value. This is useful for
24079// getting updates only after the object has changed since the last
24080// request. Use googleapi.IsNotModified to check whether the response
24081// error from Do is the result of In-None-Match.
24082func (c *ContentCategoriesGetCall) IfNoneMatch(entityTag string) *ContentCategoriesGetCall {
24083	c.ifNoneMatch_ = entityTag
24084	return c
24085}
24086
24087// Context sets the context to be used in this call's Do method. Any
24088// pending HTTP request will be aborted if the provided context is
24089// canceled.
24090func (c *ContentCategoriesGetCall) Context(ctx context.Context) *ContentCategoriesGetCall {
24091	c.ctx_ = ctx
24092	return c
24093}
24094
24095// Header returns an http.Header that can be modified by the caller to
24096// add HTTP headers to the request.
24097func (c *ContentCategoriesGetCall) Header() http.Header {
24098	if c.header_ == nil {
24099		c.header_ = make(http.Header)
24100	}
24101	return c.header_
24102}
24103
24104func (c *ContentCategoriesGetCall) doRequest(alt string) (*http.Response, error) {
24105	reqHeaders := make(http.Header)
24106	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24107	for k, v := range c.header_ {
24108		reqHeaders[k] = v
24109	}
24110	reqHeaders.Set("User-Agent", c.s.userAgent())
24111	if c.ifNoneMatch_ != "" {
24112		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24113	}
24114	var body io.Reader = nil
24115	c.urlParams_.Set("alt", alt)
24116	c.urlParams_.Set("prettyPrint", "false")
24117	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/contentCategories/{id}")
24118	urls += "?" + c.urlParams_.Encode()
24119	req, err := http.NewRequest("GET", urls, body)
24120	if err != nil {
24121		return nil, err
24122	}
24123	req.Header = reqHeaders
24124	googleapi.Expand(req.URL, map[string]string{
24125		"profileId": strconv.FormatInt(c.profileId, 10),
24126		"id":        strconv.FormatInt(c.id, 10),
24127	})
24128	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24129}
24130
24131// Do executes the "dfareporting.contentCategories.get" call.
24132// Exactly one of *ContentCategory or error will be non-nil. Any non-2xx
24133// status code is an error. Response headers are in either
24134// *ContentCategory.ServerResponse.Header or (if a response was returned
24135// at all) in error.(*googleapi.Error).Header. Use
24136// googleapi.IsNotModified to check whether the returned error was
24137// because http.StatusNotModified was returned.
24138func (c *ContentCategoriesGetCall) Do(opts ...googleapi.CallOption) (*ContentCategory, error) {
24139	gensupport.SetOptions(c.urlParams_, opts...)
24140	res, err := c.doRequest("json")
24141	if res != nil && res.StatusCode == http.StatusNotModified {
24142		if res.Body != nil {
24143			res.Body.Close()
24144		}
24145		return nil, &googleapi.Error{
24146			Code:   res.StatusCode,
24147			Header: res.Header,
24148		}
24149	}
24150	if err != nil {
24151		return nil, err
24152	}
24153	defer googleapi.CloseBody(res)
24154	if err := googleapi.CheckResponse(res); err != nil {
24155		return nil, err
24156	}
24157	ret := &ContentCategory{
24158		ServerResponse: googleapi.ServerResponse{
24159			Header:         res.Header,
24160			HTTPStatusCode: res.StatusCode,
24161		},
24162	}
24163	target := &ret
24164	if err := gensupport.DecodeResponse(target, res); err != nil {
24165		return nil, err
24166	}
24167	return ret, nil
24168	// {
24169	//   "description": "Gets one content category by ID.",
24170	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories/{id}",
24171	//   "httpMethod": "GET",
24172	//   "id": "dfareporting.contentCategories.get",
24173	//   "parameterOrder": [
24174	//     "profileId",
24175	//     "id"
24176	//   ],
24177	//   "parameters": {
24178	//     "id": {
24179	//       "description": "Content category ID.",
24180	//       "format": "int64",
24181	//       "location": "path",
24182	//       "required": true,
24183	//       "type": "string"
24184	//     },
24185	//     "profileId": {
24186	//       "description": "User profile ID associated with this request.",
24187	//       "format": "int64",
24188	//       "location": "path",
24189	//       "required": true,
24190	//       "type": "string"
24191	//     }
24192	//   },
24193	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories/{id}",
24194	//   "response": {
24195	//     "$ref": "ContentCategory"
24196	//   },
24197	//   "scopes": [
24198	//     "https://www.googleapis.com/auth/dfatrafficking"
24199	//   ]
24200	// }
24201
24202}
24203
24204// method id "dfareporting.contentCategories.insert":
24205
24206type ContentCategoriesInsertCall struct {
24207	s               *Service
24208	profileId       int64
24209	contentcategory *ContentCategory
24210	urlParams_      gensupport.URLParams
24211	ctx_            context.Context
24212	header_         http.Header
24213}
24214
24215// Insert: Inserts a new content category.
24216//
24217// - profileId: User profile ID associated with this request.
24218func (r *ContentCategoriesService) Insert(profileId int64, contentcategory *ContentCategory) *ContentCategoriesInsertCall {
24219	c := &ContentCategoriesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24220	c.profileId = profileId
24221	c.contentcategory = contentcategory
24222	return c
24223}
24224
24225// Fields allows partial responses to be retrieved. See
24226// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24227// for more information.
24228func (c *ContentCategoriesInsertCall) Fields(s ...googleapi.Field) *ContentCategoriesInsertCall {
24229	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24230	return c
24231}
24232
24233// Context sets the context to be used in this call's Do method. Any
24234// pending HTTP request will be aborted if the provided context is
24235// canceled.
24236func (c *ContentCategoriesInsertCall) Context(ctx context.Context) *ContentCategoriesInsertCall {
24237	c.ctx_ = ctx
24238	return c
24239}
24240
24241// Header returns an http.Header that can be modified by the caller to
24242// add HTTP headers to the request.
24243func (c *ContentCategoriesInsertCall) Header() http.Header {
24244	if c.header_ == nil {
24245		c.header_ = make(http.Header)
24246	}
24247	return c.header_
24248}
24249
24250func (c *ContentCategoriesInsertCall) doRequest(alt string) (*http.Response, error) {
24251	reqHeaders := make(http.Header)
24252	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24253	for k, v := range c.header_ {
24254		reqHeaders[k] = v
24255	}
24256	reqHeaders.Set("User-Agent", c.s.userAgent())
24257	var body io.Reader = nil
24258	body, err := googleapi.WithoutDataWrapper.JSONReader(c.contentcategory)
24259	if err != nil {
24260		return nil, err
24261	}
24262	reqHeaders.Set("Content-Type", "application/json")
24263	c.urlParams_.Set("alt", alt)
24264	c.urlParams_.Set("prettyPrint", "false")
24265	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/contentCategories")
24266	urls += "?" + c.urlParams_.Encode()
24267	req, err := http.NewRequest("POST", urls, body)
24268	if err != nil {
24269		return nil, err
24270	}
24271	req.Header = reqHeaders
24272	googleapi.Expand(req.URL, map[string]string{
24273		"profileId": strconv.FormatInt(c.profileId, 10),
24274	})
24275	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24276}
24277
24278// Do executes the "dfareporting.contentCategories.insert" call.
24279// Exactly one of *ContentCategory or error will be non-nil. Any non-2xx
24280// status code is an error. Response headers are in either
24281// *ContentCategory.ServerResponse.Header or (if a response was returned
24282// at all) in error.(*googleapi.Error).Header. Use
24283// googleapi.IsNotModified to check whether the returned error was
24284// because http.StatusNotModified was returned.
24285func (c *ContentCategoriesInsertCall) Do(opts ...googleapi.CallOption) (*ContentCategory, error) {
24286	gensupport.SetOptions(c.urlParams_, opts...)
24287	res, err := c.doRequest("json")
24288	if res != nil && res.StatusCode == http.StatusNotModified {
24289		if res.Body != nil {
24290			res.Body.Close()
24291		}
24292		return nil, &googleapi.Error{
24293			Code:   res.StatusCode,
24294			Header: res.Header,
24295		}
24296	}
24297	if err != nil {
24298		return nil, err
24299	}
24300	defer googleapi.CloseBody(res)
24301	if err := googleapi.CheckResponse(res); err != nil {
24302		return nil, err
24303	}
24304	ret := &ContentCategory{
24305		ServerResponse: googleapi.ServerResponse{
24306			Header:         res.Header,
24307			HTTPStatusCode: res.StatusCode,
24308		},
24309	}
24310	target := &ret
24311	if err := gensupport.DecodeResponse(target, res); err != nil {
24312		return nil, err
24313	}
24314	return ret, nil
24315	// {
24316	//   "description": "Inserts a new content category.",
24317	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories",
24318	//   "httpMethod": "POST",
24319	//   "id": "dfareporting.contentCategories.insert",
24320	//   "parameterOrder": [
24321	//     "profileId"
24322	//   ],
24323	//   "parameters": {
24324	//     "profileId": {
24325	//       "description": "User profile ID associated with this request.",
24326	//       "format": "int64",
24327	//       "location": "path",
24328	//       "required": true,
24329	//       "type": "string"
24330	//     }
24331	//   },
24332	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories",
24333	//   "request": {
24334	//     "$ref": "ContentCategory"
24335	//   },
24336	//   "response": {
24337	//     "$ref": "ContentCategory"
24338	//   },
24339	//   "scopes": [
24340	//     "https://www.googleapis.com/auth/dfatrafficking"
24341	//   ]
24342	// }
24343
24344}
24345
24346// method id "dfareporting.contentCategories.list":
24347
24348type ContentCategoriesListCall struct {
24349	s            *Service
24350	profileId    int64
24351	urlParams_   gensupport.URLParams
24352	ifNoneMatch_ string
24353	ctx_         context.Context
24354	header_      http.Header
24355}
24356
24357// List: Retrieves a list of content categories, possibly filtered. This
24358// method supports paging.
24359//
24360// - profileId: User profile ID associated with this request.
24361func (r *ContentCategoriesService) List(profileId int64) *ContentCategoriesListCall {
24362	c := &ContentCategoriesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24363	c.profileId = profileId
24364	return c
24365}
24366
24367// Ids sets the optional parameter "ids": Select only content categories
24368// with these IDs.
24369func (c *ContentCategoriesListCall) Ids(ids ...int64) *ContentCategoriesListCall {
24370	var ids_ []string
24371	for _, v := range ids {
24372		ids_ = append(ids_, fmt.Sprint(v))
24373	}
24374	c.urlParams_.SetMulti("ids", ids_)
24375	return c
24376}
24377
24378// MaxResults sets the optional parameter "maxResults": Maximum number
24379// of results to return.
24380func (c *ContentCategoriesListCall) MaxResults(maxResults int64) *ContentCategoriesListCall {
24381	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
24382	return c
24383}
24384
24385// PageToken sets the optional parameter "pageToken": Value of the
24386// nextPageToken from the previous result page.
24387func (c *ContentCategoriesListCall) PageToken(pageToken string) *ContentCategoriesListCall {
24388	c.urlParams_.Set("pageToken", pageToken)
24389	return c
24390}
24391
24392// SearchString sets the optional parameter "searchString": Allows
24393// searching for objects by name or ID. Wildcards (*) are allowed. For
24394// example, "contentcategory*2015" will return objects with names like
24395// "contentcategory June 2015", "contentcategory April 2015", or simply
24396// "contentcategory 2015". Most of the searches also add wildcards
24397// implicitly at the start and the end of the search string. For
24398// example, a search string of "contentcategory" will match objects with
24399// name "my contentcategory", "contentcategory 2015", or simply
24400// "contentcategory".
24401func (c *ContentCategoriesListCall) SearchString(searchString string) *ContentCategoriesListCall {
24402	c.urlParams_.Set("searchString", searchString)
24403	return c
24404}
24405
24406// SortField sets the optional parameter "sortField": Field by which to
24407// sort the list.
24408//
24409// Possible values:
24410//   "ID" (default)
24411//   "NAME"
24412func (c *ContentCategoriesListCall) SortField(sortField string) *ContentCategoriesListCall {
24413	c.urlParams_.Set("sortField", sortField)
24414	return c
24415}
24416
24417// SortOrder sets the optional parameter "sortOrder": Order of sorted
24418// results.
24419//
24420// Possible values:
24421//   "ASCENDING" (default)
24422//   "DESCENDING"
24423func (c *ContentCategoriesListCall) SortOrder(sortOrder string) *ContentCategoriesListCall {
24424	c.urlParams_.Set("sortOrder", sortOrder)
24425	return c
24426}
24427
24428// Fields allows partial responses to be retrieved. See
24429// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24430// for more information.
24431func (c *ContentCategoriesListCall) Fields(s ...googleapi.Field) *ContentCategoriesListCall {
24432	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24433	return c
24434}
24435
24436// IfNoneMatch sets the optional parameter which makes the operation
24437// fail if the object's ETag matches the given value. This is useful for
24438// getting updates only after the object has changed since the last
24439// request. Use googleapi.IsNotModified to check whether the response
24440// error from Do is the result of In-None-Match.
24441func (c *ContentCategoriesListCall) IfNoneMatch(entityTag string) *ContentCategoriesListCall {
24442	c.ifNoneMatch_ = entityTag
24443	return c
24444}
24445
24446// Context sets the context to be used in this call's Do method. Any
24447// pending HTTP request will be aborted if the provided context is
24448// canceled.
24449func (c *ContentCategoriesListCall) Context(ctx context.Context) *ContentCategoriesListCall {
24450	c.ctx_ = ctx
24451	return c
24452}
24453
24454// Header returns an http.Header that can be modified by the caller to
24455// add HTTP headers to the request.
24456func (c *ContentCategoriesListCall) Header() http.Header {
24457	if c.header_ == nil {
24458		c.header_ = make(http.Header)
24459	}
24460	return c.header_
24461}
24462
24463func (c *ContentCategoriesListCall) doRequest(alt string) (*http.Response, error) {
24464	reqHeaders := make(http.Header)
24465	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24466	for k, v := range c.header_ {
24467		reqHeaders[k] = v
24468	}
24469	reqHeaders.Set("User-Agent", c.s.userAgent())
24470	if c.ifNoneMatch_ != "" {
24471		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24472	}
24473	var body io.Reader = nil
24474	c.urlParams_.Set("alt", alt)
24475	c.urlParams_.Set("prettyPrint", "false")
24476	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/contentCategories")
24477	urls += "?" + c.urlParams_.Encode()
24478	req, err := http.NewRequest("GET", urls, body)
24479	if err != nil {
24480		return nil, err
24481	}
24482	req.Header = reqHeaders
24483	googleapi.Expand(req.URL, map[string]string{
24484		"profileId": strconv.FormatInt(c.profileId, 10),
24485	})
24486	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24487}
24488
24489// Do executes the "dfareporting.contentCategories.list" call.
24490// Exactly one of *ContentCategoriesListResponse or error will be
24491// non-nil. Any non-2xx status code is an error. Response headers are in
24492// either *ContentCategoriesListResponse.ServerResponse.Header or (if a
24493// response was returned at all) in error.(*googleapi.Error).Header. Use
24494// googleapi.IsNotModified to check whether the returned error was
24495// because http.StatusNotModified was returned.
24496func (c *ContentCategoriesListCall) Do(opts ...googleapi.CallOption) (*ContentCategoriesListResponse, error) {
24497	gensupport.SetOptions(c.urlParams_, opts...)
24498	res, err := c.doRequest("json")
24499	if res != nil && res.StatusCode == http.StatusNotModified {
24500		if res.Body != nil {
24501			res.Body.Close()
24502		}
24503		return nil, &googleapi.Error{
24504			Code:   res.StatusCode,
24505			Header: res.Header,
24506		}
24507	}
24508	if err != nil {
24509		return nil, err
24510	}
24511	defer googleapi.CloseBody(res)
24512	if err := googleapi.CheckResponse(res); err != nil {
24513		return nil, err
24514	}
24515	ret := &ContentCategoriesListResponse{
24516		ServerResponse: googleapi.ServerResponse{
24517			Header:         res.Header,
24518			HTTPStatusCode: res.StatusCode,
24519		},
24520	}
24521	target := &ret
24522	if err := gensupport.DecodeResponse(target, res); err != nil {
24523		return nil, err
24524	}
24525	return ret, nil
24526	// {
24527	//   "description": "Retrieves a list of content categories, possibly filtered. This method supports paging.",
24528	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories",
24529	//   "httpMethod": "GET",
24530	//   "id": "dfareporting.contentCategories.list",
24531	//   "parameterOrder": [
24532	//     "profileId"
24533	//   ],
24534	//   "parameters": {
24535	//     "ids": {
24536	//       "description": "Select only content categories with these IDs.",
24537	//       "format": "int64",
24538	//       "location": "query",
24539	//       "repeated": true,
24540	//       "type": "string"
24541	//     },
24542	//     "maxResults": {
24543	//       "default": "1000",
24544	//       "description": "Maximum number of results to return.",
24545	//       "format": "int32",
24546	//       "location": "query",
24547	//       "maximum": "1000",
24548	//       "minimum": "0",
24549	//       "type": "integer"
24550	//     },
24551	//     "pageToken": {
24552	//       "description": "Value of the nextPageToken from the previous result page.",
24553	//       "location": "query",
24554	//       "type": "string"
24555	//     },
24556	//     "profileId": {
24557	//       "description": "User profile ID associated with this request.",
24558	//       "format": "int64",
24559	//       "location": "path",
24560	//       "required": true,
24561	//       "type": "string"
24562	//     },
24563	//     "searchString": {
24564	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"contentcategory*2015\" will return objects with names like \"contentcategory June 2015\", \"contentcategory April 2015\", or simply \"contentcategory 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"contentcategory\" will match objects with name \"my contentcategory\", \"contentcategory 2015\", or simply \"contentcategory\".",
24565	//       "location": "query",
24566	//       "type": "string"
24567	//     },
24568	//     "sortField": {
24569	//       "default": "ID",
24570	//       "description": "Field by which to sort the list.",
24571	//       "enum": [
24572	//         "ID",
24573	//         "NAME"
24574	//       ],
24575	//       "enumDescriptions": [
24576	//         "",
24577	//         ""
24578	//       ],
24579	//       "location": "query",
24580	//       "type": "string"
24581	//     },
24582	//     "sortOrder": {
24583	//       "default": "ASCENDING",
24584	//       "description": "Order of sorted results.",
24585	//       "enum": [
24586	//         "ASCENDING",
24587	//         "DESCENDING"
24588	//       ],
24589	//       "enumDescriptions": [
24590	//         "",
24591	//         ""
24592	//       ],
24593	//       "location": "query",
24594	//       "type": "string"
24595	//     }
24596	//   },
24597	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories",
24598	//   "response": {
24599	//     "$ref": "ContentCategoriesListResponse"
24600	//   },
24601	//   "scopes": [
24602	//     "https://www.googleapis.com/auth/dfatrafficking"
24603	//   ]
24604	// }
24605
24606}
24607
24608// Pages invokes f for each page of results.
24609// A non-nil error returned from f will halt the iteration.
24610// The provided context supersedes any context provided to the Context method.
24611func (c *ContentCategoriesListCall) Pages(ctx context.Context, f func(*ContentCategoriesListResponse) error) error {
24612	c.ctx_ = ctx
24613	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24614	for {
24615		x, err := c.Do()
24616		if err != nil {
24617			return err
24618		}
24619		if err := f(x); err != nil {
24620			return err
24621		}
24622		if x.NextPageToken == "" {
24623			return nil
24624		}
24625		c.PageToken(x.NextPageToken)
24626	}
24627}
24628
24629// method id "dfareporting.contentCategories.patch":
24630
24631type ContentCategoriesPatchCall struct {
24632	s               *Service
24633	profileId       int64
24634	contentcategory *ContentCategory
24635	urlParams_      gensupport.URLParams
24636	ctx_            context.Context
24637	header_         http.Header
24638}
24639
24640// Patch: Updates an existing content category. This method supports
24641// patch semantics.
24642//
24643// - id: ContentCategory ID.
24644// - profileId: User profile ID associated with this request.
24645func (r *ContentCategoriesService) Patch(profileId int64, id int64, contentcategory *ContentCategory) *ContentCategoriesPatchCall {
24646	c := &ContentCategoriesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24647	c.profileId = profileId
24648	c.urlParams_.Set("id", fmt.Sprint(id))
24649	c.contentcategory = contentcategory
24650	return c
24651}
24652
24653// Fields allows partial responses to be retrieved. See
24654// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24655// for more information.
24656func (c *ContentCategoriesPatchCall) Fields(s ...googleapi.Field) *ContentCategoriesPatchCall {
24657	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24658	return c
24659}
24660
24661// Context sets the context to be used in this call's Do method. Any
24662// pending HTTP request will be aborted if the provided context is
24663// canceled.
24664func (c *ContentCategoriesPatchCall) Context(ctx context.Context) *ContentCategoriesPatchCall {
24665	c.ctx_ = ctx
24666	return c
24667}
24668
24669// Header returns an http.Header that can be modified by the caller to
24670// add HTTP headers to the request.
24671func (c *ContentCategoriesPatchCall) Header() http.Header {
24672	if c.header_ == nil {
24673		c.header_ = make(http.Header)
24674	}
24675	return c.header_
24676}
24677
24678func (c *ContentCategoriesPatchCall) doRequest(alt string) (*http.Response, error) {
24679	reqHeaders := make(http.Header)
24680	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24681	for k, v := range c.header_ {
24682		reqHeaders[k] = v
24683	}
24684	reqHeaders.Set("User-Agent", c.s.userAgent())
24685	var body io.Reader = nil
24686	body, err := googleapi.WithoutDataWrapper.JSONReader(c.contentcategory)
24687	if err != nil {
24688		return nil, err
24689	}
24690	reqHeaders.Set("Content-Type", "application/json")
24691	c.urlParams_.Set("alt", alt)
24692	c.urlParams_.Set("prettyPrint", "false")
24693	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/contentCategories")
24694	urls += "?" + c.urlParams_.Encode()
24695	req, err := http.NewRequest("PATCH", urls, body)
24696	if err != nil {
24697		return nil, err
24698	}
24699	req.Header = reqHeaders
24700	googleapi.Expand(req.URL, map[string]string{
24701		"profileId": strconv.FormatInt(c.profileId, 10),
24702	})
24703	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24704}
24705
24706// Do executes the "dfareporting.contentCategories.patch" call.
24707// Exactly one of *ContentCategory or error will be non-nil. Any non-2xx
24708// status code is an error. Response headers are in either
24709// *ContentCategory.ServerResponse.Header or (if a response was returned
24710// at all) in error.(*googleapi.Error).Header. Use
24711// googleapi.IsNotModified to check whether the returned error was
24712// because http.StatusNotModified was returned.
24713func (c *ContentCategoriesPatchCall) Do(opts ...googleapi.CallOption) (*ContentCategory, error) {
24714	gensupport.SetOptions(c.urlParams_, opts...)
24715	res, err := c.doRequest("json")
24716	if res != nil && res.StatusCode == http.StatusNotModified {
24717		if res.Body != nil {
24718			res.Body.Close()
24719		}
24720		return nil, &googleapi.Error{
24721			Code:   res.StatusCode,
24722			Header: res.Header,
24723		}
24724	}
24725	if err != nil {
24726		return nil, err
24727	}
24728	defer googleapi.CloseBody(res)
24729	if err := googleapi.CheckResponse(res); err != nil {
24730		return nil, err
24731	}
24732	ret := &ContentCategory{
24733		ServerResponse: googleapi.ServerResponse{
24734			Header:         res.Header,
24735			HTTPStatusCode: res.StatusCode,
24736		},
24737	}
24738	target := &ret
24739	if err := gensupport.DecodeResponse(target, res); err != nil {
24740		return nil, err
24741	}
24742	return ret, nil
24743	// {
24744	//   "description": "Updates an existing content category. This method supports patch semantics.",
24745	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories",
24746	//   "httpMethod": "PATCH",
24747	//   "id": "dfareporting.contentCategories.patch",
24748	//   "parameterOrder": [
24749	//     "profileId",
24750	//     "id"
24751	//   ],
24752	//   "parameters": {
24753	//     "id": {
24754	//       "description": "ContentCategory ID.",
24755	//       "format": "int64",
24756	//       "location": "query",
24757	//       "required": true,
24758	//       "type": "string"
24759	//     },
24760	//     "profileId": {
24761	//       "description": "User profile ID associated with this request.",
24762	//       "format": "int64",
24763	//       "location": "path",
24764	//       "required": true,
24765	//       "type": "string"
24766	//     }
24767	//   },
24768	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories",
24769	//   "request": {
24770	//     "$ref": "ContentCategory"
24771	//   },
24772	//   "response": {
24773	//     "$ref": "ContentCategory"
24774	//   },
24775	//   "scopes": [
24776	//     "https://www.googleapis.com/auth/dfatrafficking"
24777	//   ]
24778	// }
24779
24780}
24781
24782// method id "dfareporting.contentCategories.update":
24783
24784type ContentCategoriesUpdateCall struct {
24785	s               *Service
24786	profileId       int64
24787	contentcategory *ContentCategory
24788	urlParams_      gensupport.URLParams
24789	ctx_            context.Context
24790	header_         http.Header
24791}
24792
24793// Update: Updates an existing content category.
24794//
24795// - profileId: User profile ID associated with this request.
24796func (r *ContentCategoriesService) Update(profileId int64, contentcategory *ContentCategory) *ContentCategoriesUpdateCall {
24797	c := &ContentCategoriesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24798	c.profileId = profileId
24799	c.contentcategory = contentcategory
24800	return c
24801}
24802
24803// Fields allows partial responses to be retrieved. See
24804// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24805// for more information.
24806func (c *ContentCategoriesUpdateCall) Fields(s ...googleapi.Field) *ContentCategoriesUpdateCall {
24807	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24808	return c
24809}
24810
24811// Context sets the context to be used in this call's Do method. Any
24812// pending HTTP request will be aborted if the provided context is
24813// canceled.
24814func (c *ContentCategoriesUpdateCall) Context(ctx context.Context) *ContentCategoriesUpdateCall {
24815	c.ctx_ = ctx
24816	return c
24817}
24818
24819// Header returns an http.Header that can be modified by the caller to
24820// add HTTP headers to the request.
24821func (c *ContentCategoriesUpdateCall) Header() http.Header {
24822	if c.header_ == nil {
24823		c.header_ = make(http.Header)
24824	}
24825	return c.header_
24826}
24827
24828func (c *ContentCategoriesUpdateCall) doRequest(alt string) (*http.Response, error) {
24829	reqHeaders := make(http.Header)
24830	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24831	for k, v := range c.header_ {
24832		reqHeaders[k] = v
24833	}
24834	reqHeaders.Set("User-Agent", c.s.userAgent())
24835	var body io.Reader = nil
24836	body, err := googleapi.WithoutDataWrapper.JSONReader(c.contentcategory)
24837	if err != nil {
24838		return nil, err
24839	}
24840	reqHeaders.Set("Content-Type", "application/json")
24841	c.urlParams_.Set("alt", alt)
24842	c.urlParams_.Set("prettyPrint", "false")
24843	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/contentCategories")
24844	urls += "?" + c.urlParams_.Encode()
24845	req, err := http.NewRequest("PUT", urls, body)
24846	if err != nil {
24847		return nil, err
24848	}
24849	req.Header = reqHeaders
24850	googleapi.Expand(req.URL, map[string]string{
24851		"profileId": strconv.FormatInt(c.profileId, 10),
24852	})
24853	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24854}
24855
24856// Do executes the "dfareporting.contentCategories.update" call.
24857// Exactly one of *ContentCategory or error will be non-nil. Any non-2xx
24858// status code is an error. Response headers are in either
24859// *ContentCategory.ServerResponse.Header or (if a response was returned
24860// at all) in error.(*googleapi.Error).Header. Use
24861// googleapi.IsNotModified to check whether the returned error was
24862// because http.StatusNotModified was returned.
24863func (c *ContentCategoriesUpdateCall) Do(opts ...googleapi.CallOption) (*ContentCategory, error) {
24864	gensupport.SetOptions(c.urlParams_, opts...)
24865	res, err := c.doRequest("json")
24866	if res != nil && res.StatusCode == http.StatusNotModified {
24867		if res.Body != nil {
24868			res.Body.Close()
24869		}
24870		return nil, &googleapi.Error{
24871			Code:   res.StatusCode,
24872			Header: res.Header,
24873		}
24874	}
24875	if err != nil {
24876		return nil, err
24877	}
24878	defer googleapi.CloseBody(res)
24879	if err := googleapi.CheckResponse(res); err != nil {
24880		return nil, err
24881	}
24882	ret := &ContentCategory{
24883		ServerResponse: googleapi.ServerResponse{
24884			Header:         res.Header,
24885			HTTPStatusCode: res.StatusCode,
24886		},
24887	}
24888	target := &ret
24889	if err := gensupport.DecodeResponse(target, res); err != nil {
24890		return nil, err
24891	}
24892	return ret, nil
24893	// {
24894	//   "description": "Updates an existing content category.",
24895	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories",
24896	//   "httpMethod": "PUT",
24897	//   "id": "dfareporting.contentCategories.update",
24898	//   "parameterOrder": [
24899	//     "profileId"
24900	//   ],
24901	//   "parameters": {
24902	//     "profileId": {
24903	//       "description": "User profile ID associated with this request.",
24904	//       "format": "int64",
24905	//       "location": "path",
24906	//       "required": true,
24907	//       "type": "string"
24908	//     }
24909	//   },
24910	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/contentCategories",
24911	//   "request": {
24912	//     "$ref": "ContentCategory"
24913	//   },
24914	//   "response": {
24915	//     "$ref": "ContentCategory"
24916	//   },
24917	//   "scopes": [
24918	//     "https://www.googleapis.com/auth/dfatrafficking"
24919	//   ]
24920	// }
24921
24922}
24923
24924// method id "dfareporting.conversions.batchinsert":
24925
24926type ConversionsBatchinsertCall struct {
24927	s                             *Service
24928	profileId                     int64
24929	conversionsbatchinsertrequest *ConversionsBatchInsertRequest
24930	urlParams_                    gensupport.URLParams
24931	ctx_                          context.Context
24932	header_                       http.Header
24933}
24934
24935// Batchinsert: Inserts conversions.
24936//
24937// - profileId: User profile ID associated with this request.
24938func (r *ConversionsService) Batchinsert(profileId int64, conversionsbatchinsertrequest *ConversionsBatchInsertRequest) *ConversionsBatchinsertCall {
24939	c := &ConversionsBatchinsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24940	c.profileId = profileId
24941	c.conversionsbatchinsertrequest = conversionsbatchinsertrequest
24942	return c
24943}
24944
24945// Fields allows partial responses to be retrieved. See
24946// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24947// for more information.
24948func (c *ConversionsBatchinsertCall) Fields(s ...googleapi.Field) *ConversionsBatchinsertCall {
24949	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24950	return c
24951}
24952
24953// Context sets the context to be used in this call's Do method. Any
24954// pending HTTP request will be aborted if the provided context is
24955// canceled.
24956func (c *ConversionsBatchinsertCall) Context(ctx context.Context) *ConversionsBatchinsertCall {
24957	c.ctx_ = ctx
24958	return c
24959}
24960
24961// Header returns an http.Header that can be modified by the caller to
24962// add HTTP headers to the request.
24963func (c *ConversionsBatchinsertCall) Header() http.Header {
24964	if c.header_ == nil {
24965		c.header_ = make(http.Header)
24966	}
24967	return c.header_
24968}
24969
24970func (c *ConversionsBatchinsertCall) doRequest(alt string) (*http.Response, error) {
24971	reqHeaders := make(http.Header)
24972	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24973	for k, v := range c.header_ {
24974		reqHeaders[k] = v
24975	}
24976	reqHeaders.Set("User-Agent", c.s.userAgent())
24977	var body io.Reader = nil
24978	body, err := googleapi.WithoutDataWrapper.JSONReader(c.conversionsbatchinsertrequest)
24979	if err != nil {
24980		return nil, err
24981	}
24982	reqHeaders.Set("Content-Type", "application/json")
24983	c.urlParams_.Set("alt", alt)
24984	c.urlParams_.Set("prettyPrint", "false")
24985	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/conversions/batchinsert")
24986	urls += "?" + c.urlParams_.Encode()
24987	req, err := http.NewRequest("POST", urls, body)
24988	if err != nil {
24989		return nil, err
24990	}
24991	req.Header = reqHeaders
24992	googleapi.Expand(req.URL, map[string]string{
24993		"profileId": strconv.FormatInt(c.profileId, 10),
24994	})
24995	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24996}
24997
24998// Do executes the "dfareporting.conversions.batchinsert" call.
24999// Exactly one of *ConversionsBatchInsertResponse or error will be
25000// non-nil. Any non-2xx status code is an error. Response headers are in
25001// either *ConversionsBatchInsertResponse.ServerResponse.Header or (if a
25002// response was returned at all) in error.(*googleapi.Error).Header. Use
25003// googleapi.IsNotModified to check whether the returned error was
25004// because http.StatusNotModified was returned.
25005func (c *ConversionsBatchinsertCall) Do(opts ...googleapi.CallOption) (*ConversionsBatchInsertResponse, error) {
25006	gensupport.SetOptions(c.urlParams_, opts...)
25007	res, err := c.doRequest("json")
25008	if res != nil && res.StatusCode == http.StatusNotModified {
25009		if res.Body != nil {
25010			res.Body.Close()
25011		}
25012		return nil, &googleapi.Error{
25013			Code:   res.StatusCode,
25014			Header: res.Header,
25015		}
25016	}
25017	if err != nil {
25018		return nil, err
25019	}
25020	defer googleapi.CloseBody(res)
25021	if err := googleapi.CheckResponse(res); err != nil {
25022		return nil, err
25023	}
25024	ret := &ConversionsBatchInsertResponse{
25025		ServerResponse: googleapi.ServerResponse{
25026			Header:         res.Header,
25027			HTTPStatusCode: res.StatusCode,
25028		},
25029	}
25030	target := &ret
25031	if err := gensupport.DecodeResponse(target, res); err != nil {
25032		return nil, err
25033	}
25034	return ret, nil
25035	// {
25036	//   "description": "Inserts conversions.",
25037	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/conversions/batchinsert",
25038	//   "httpMethod": "POST",
25039	//   "id": "dfareporting.conversions.batchinsert",
25040	//   "parameterOrder": [
25041	//     "profileId"
25042	//   ],
25043	//   "parameters": {
25044	//     "profileId": {
25045	//       "description": "User profile ID associated with this request.",
25046	//       "format": "int64",
25047	//       "location": "path",
25048	//       "required": true,
25049	//       "type": "string"
25050	//     }
25051	//   },
25052	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/conversions/batchinsert",
25053	//   "request": {
25054	//     "$ref": "ConversionsBatchInsertRequest"
25055	//   },
25056	//   "response": {
25057	//     "$ref": "ConversionsBatchInsertResponse"
25058	//   },
25059	//   "scopes": [
25060	//     "https://www.googleapis.com/auth/ddmconversions"
25061	//   ]
25062	// }
25063
25064}
25065
25066// method id "dfareporting.conversions.batchupdate":
25067
25068type ConversionsBatchupdateCall struct {
25069	s                             *Service
25070	profileId                     int64
25071	conversionsbatchupdaterequest *ConversionsBatchUpdateRequest
25072	urlParams_                    gensupport.URLParams
25073	ctx_                          context.Context
25074	header_                       http.Header
25075}
25076
25077// Batchupdate: Updates existing conversions.
25078//
25079// - profileId: User profile ID associated with this request.
25080func (r *ConversionsService) Batchupdate(profileId int64, conversionsbatchupdaterequest *ConversionsBatchUpdateRequest) *ConversionsBatchupdateCall {
25081	c := &ConversionsBatchupdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25082	c.profileId = profileId
25083	c.conversionsbatchupdaterequest = conversionsbatchupdaterequest
25084	return c
25085}
25086
25087// Fields allows partial responses to be retrieved. See
25088// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25089// for more information.
25090func (c *ConversionsBatchupdateCall) Fields(s ...googleapi.Field) *ConversionsBatchupdateCall {
25091	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25092	return c
25093}
25094
25095// Context sets the context to be used in this call's Do method. Any
25096// pending HTTP request will be aborted if the provided context is
25097// canceled.
25098func (c *ConversionsBatchupdateCall) Context(ctx context.Context) *ConversionsBatchupdateCall {
25099	c.ctx_ = ctx
25100	return c
25101}
25102
25103// Header returns an http.Header that can be modified by the caller to
25104// add HTTP headers to the request.
25105func (c *ConversionsBatchupdateCall) Header() http.Header {
25106	if c.header_ == nil {
25107		c.header_ = make(http.Header)
25108	}
25109	return c.header_
25110}
25111
25112func (c *ConversionsBatchupdateCall) doRequest(alt string) (*http.Response, error) {
25113	reqHeaders := make(http.Header)
25114	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25115	for k, v := range c.header_ {
25116		reqHeaders[k] = v
25117	}
25118	reqHeaders.Set("User-Agent", c.s.userAgent())
25119	var body io.Reader = nil
25120	body, err := googleapi.WithoutDataWrapper.JSONReader(c.conversionsbatchupdaterequest)
25121	if err != nil {
25122		return nil, err
25123	}
25124	reqHeaders.Set("Content-Type", "application/json")
25125	c.urlParams_.Set("alt", alt)
25126	c.urlParams_.Set("prettyPrint", "false")
25127	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/conversions/batchupdate")
25128	urls += "?" + c.urlParams_.Encode()
25129	req, err := http.NewRequest("POST", urls, body)
25130	if err != nil {
25131		return nil, err
25132	}
25133	req.Header = reqHeaders
25134	googleapi.Expand(req.URL, map[string]string{
25135		"profileId": strconv.FormatInt(c.profileId, 10),
25136	})
25137	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25138}
25139
25140// Do executes the "dfareporting.conversions.batchupdate" call.
25141// Exactly one of *ConversionsBatchUpdateResponse or error will be
25142// non-nil. Any non-2xx status code is an error. Response headers are in
25143// either *ConversionsBatchUpdateResponse.ServerResponse.Header or (if a
25144// response was returned at all) in error.(*googleapi.Error).Header. Use
25145// googleapi.IsNotModified to check whether the returned error was
25146// because http.StatusNotModified was returned.
25147func (c *ConversionsBatchupdateCall) Do(opts ...googleapi.CallOption) (*ConversionsBatchUpdateResponse, error) {
25148	gensupport.SetOptions(c.urlParams_, opts...)
25149	res, err := c.doRequest("json")
25150	if res != nil && res.StatusCode == http.StatusNotModified {
25151		if res.Body != nil {
25152			res.Body.Close()
25153		}
25154		return nil, &googleapi.Error{
25155			Code:   res.StatusCode,
25156			Header: res.Header,
25157		}
25158	}
25159	if err != nil {
25160		return nil, err
25161	}
25162	defer googleapi.CloseBody(res)
25163	if err := googleapi.CheckResponse(res); err != nil {
25164		return nil, err
25165	}
25166	ret := &ConversionsBatchUpdateResponse{
25167		ServerResponse: googleapi.ServerResponse{
25168			Header:         res.Header,
25169			HTTPStatusCode: res.StatusCode,
25170		},
25171	}
25172	target := &ret
25173	if err := gensupport.DecodeResponse(target, res); err != nil {
25174		return nil, err
25175	}
25176	return ret, nil
25177	// {
25178	//   "description": "Updates existing conversions.",
25179	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/conversions/batchupdate",
25180	//   "httpMethod": "POST",
25181	//   "id": "dfareporting.conversions.batchupdate",
25182	//   "parameterOrder": [
25183	//     "profileId"
25184	//   ],
25185	//   "parameters": {
25186	//     "profileId": {
25187	//       "description": "User profile ID associated with this request.",
25188	//       "format": "int64",
25189	//       "location": "path",
25190	//       "required": true,
25191	//       "type": "string"
25192	//     }
25193	//   },
25194	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/conversions/batchupdate",
25195	//   "request": {
25196	//     "$ref": "ConversionsBatchUpdateRequest"
25197	//   },
25198	//   "response": {
25199	//     "$ref": "ConversionsBatchUpdateResponse"
25200	//   },
25201	//   "scopes": [
25202	//     "https://www.googleapis.com/auth/ddmconversions"
25203	//   ]
25204	// }
25205
25206}
25207
25208// method id "dfareporting.countries.get":
25209
25210type CountriesGetCall struct {
25211	s            *Service
25212	profileId    int64
25213	dartId       int64
25214	urlParams_   gensupport.URLParams
25215	ifNoneMatch_ string
25216	ctx_         context.Context
25217	header_      http.Header
25218}
25219
25220// Get: Gets one country by ID.
25221//
25222// - dartId: Country DART ID.
25223// - profileId: User profile ID associated with this request.
25224func (r *CountriesService) Get(profileId int64, dartId int64) *CountriesGetCall {
25225	c := &CountriesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25226	c.profileId = profileId
25227	c.dartId = dartId
25228	return c
25229}
25230
25231// Fields allows partial responses to be retrieved. See
25232// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25233// for more information.
25234func (c *CountriesGetCall) Fields(s ...googleapi.Field) *CountriesGetCall {
25235	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25236	return c
25237}
25238
25239// IfNoneMatch sets the optional parameter which makes the operation
25240// fail if the object's ETag matches the given value. This is useful for
25241// getting updates only after the object has changed since the last
25242// request. Use googleapi.IsNotModified to check whether the response
25243// error from Do is the result of In-None-Match.
25244func (c *CountriesGetCall) IfNoneMatch(entityTag string) *CountriesGetCall {
25245	c.ifNoneMatch_ = entityTag
25246	return c
25247}
25248
25249// Context sets the context to be used in this call's Do method. Any
25250// pending HTTP request will be aborted if the provided context is
25251// canceled.
25252func (c *CountriesGetCall) Context(ctx context.Context) *CountriesGetCall {
25253	c.ctx_ = ctx
25254	return c
25255}
25256
25257// Header returns an http.Header that can be modified by the caller to
25258// add HTTP headers to the request.
25259func (c *CountriesGetCall) Header() http.Header {
25260	if c.header_ == nil {
25261		c.header_ = make(http.Header)
25262	}
25263	return c.header_
25264}
25265
25266func (c *CountriesGetCall) doRequest(alt string) (*http.Response, error) {
25267	reqHeaders := make(http.Header)
25268	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25269	for k, v := range c.header_ {
25270		reqHeaders[k] = v
25271	}
25272	reqHeaders.Set("User-Agent", c.s.userAgent())
25273	if c.ifNoneMatch_ != "" {
25274		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25275	}
25276	var body io.Reader = nil
25277	c.urlParams_.Set("alt", alt)
25278	c.urlParams_.Set("prettyPrint", "false")
25279	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/countries/{dartId}")
25280	urls += "?" + c.urlParams_.Encode()
25281	req, err := http.NewRequest("GET", urls, body)
25282	if err != nil {
25283		return nil, err
25284	}
25285	req.Header = reqHeaders
25286	googleapi.Expand(req.URL, map[string]string{
25287		"profileId": strconv.FormatInt(c.profileId, 10),
25288		"dartId":    strconv.FormatInt(c.dartId, 10),
25289	})
25290	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25291}
25292
25293// Do executes the "dfareporting.countries.get" call.
25294// Exactly one of *Country or error will be non-nil. Any non-2xx status
25295// code is an error. Response headers are in either
25296// *Country.ServerResponse.Header or (if a response was returned at all)
25297// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
25298// check whether the returned error was because http.StatusNotModified
25299// was returned.
25300func (c *CountriesGetCall) Do(opts ...googleapi.CallOption) (*Country, error) {
25301	gensupport.SetOptions(c.urlParams_, opts...)
25302	res, err := c.doRequest("json")
25303	if res != nil && res.StatusCode == http.StatusNotModified {
25304		if res.Body != nil {
25305			res.Body.Close()
25306		}
25307		return nil, &googleapi.Error{
25308			Code:   res.StatusCode,
25309			Header: res.Header,
25310		}
25311	}
25312	if err != nil {
25313		return nil, err
25314	}
25315	defer googleapi.CloseBody(res)
25316	if err := googleapi.CheckResponse(res); err != nil {
25317		return nil, err
25318	}
25319	ret := &Country{
25320		ServerResponse: googleapi.ServerResponse{
25321			Header:         res.Header,
25322			HTTPStatusCode: res.StatusCode,
25323		},
25324	}
25325	target := &ret
25326	if err := gensupport.DecodeResponse(target, res); err != nil {
25327		return nil, err
25328	}
25329	return ret, nil
25330	// {
25331	//   "description": "Gets one country by ID.",
25332	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/countries/{dartId}",
25333	//   "httpMethod": "GET",
25334	//   "id": "dfareporting.countries.get",
25335	//   "parameterOrder": [
25336	//     "profileId",
25337	//     "dartId"
25338	//   ],
25339	//   "parameters": {
25340	//     "dartId": {
25341	//       "description": "Country DART ID.",
25342	//       "format": "int64",
25343	//       "location": "path",
25344	//       "required": true,
25345	//       "type": "string"
25346	//     },
25347	//     "profileId": {
25348	//       "description": "User profile ID associated with this request.",
25349	//       "format": "int64",
25350	//       "location": "path",
25351	//       "required": true,
25352	//       "type": "string"
25353	//     }
25354	//   },
25355	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/countries/{dartId}",
25356	//   "response": {
25357	//     "$ref": "Country"
25358	//   },
25359	//   "scopes": [
25360	//     "https://www.googleapis.com/auth/dfatrafficking"
25361	//   ]
25362	// }
25363
25364}
25365
25366// method id "dfareporting.countries.list":
25367
25368type CountriesListCall struct {
25369	s            *Service
25370	profileId    int64
25371	urlParams_   gensupport.URLParams
25372	ifNoneMatch_ string
25373	ctx_         context.Context
25374	header_      http.Header
25375}
25376
25377// List: Retrieves a list of countries.
25378//
25379// - profileId: User profile ID associated with this request.
25380func (r *CountriesService) List(profileId int64) *CountriesListCall {
25381	c := &CountriesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25382	c.profileId = profileId
25383	return c
25384}
25385
25386// Fields allows partial responses to be retrieved. See
25387// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25388// for more information.
25389func (c *CountriesListCall) Fields(s ...googleapi.Field) *CountriesListCall {
25390	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25391	return c
25392}
25393
25394// IfNoneMatch sets the optional parameter which makes the operation
25395// fail if the object's ETag matches the given value. This is useful for
25396// getting updates only after the object has changed since the last
25397// request. Use googleapi.IsNotModified to check whether the response
25398// error from Do is the result of In-None-Match.
25399func (c *CountriesListCall) IfNoneMatch(entityTag string) *CountriesListCall {
25400	c.ifNoneMatch_ = entityTag
25401	return c
25402}
25403
25404// Context sets the context to be used in this call's Do method. Any
25405// pending HTTP request will be aborted if the provided context is
25406// canceled.
25407func (c *CountriesListCall) Context(ctx context.Context) *CountriesListCall {
25408	c.ctx_ = ctx
25409	return c
25410}
25411
25412// Header returns an http.Header that can be modified by the caller to
25413// add HTTP headers to the request.
25414func (c *CountriesListCall) Header() http.Header {
25415	if c.header_ == nil {
25416		c.header_ = make(http.Header)
25417	}
25418	return c.header_
25419}
25420
25421func (c *CountriesListCall) doRequest(alt string) (*http.Response, error) {
25422	reqHeaders := make(http.Header)
25423	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25424	for k, v := range c.header_ {
25425		reqHeaders[k] = v
25426	}
25427	reqHeaders.Set("User-Agent", c.s.userAgent())
25428	if c.ifNoneMatch_ != "" {
25429		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25430	}
25431	var body io.Reader = nil
25432	c.urlParams_.Set("alt", alt)
25433	c.urlParams_.Set("prettyPrint", "false")
25434	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/countries")
25435	urls += "?" + c.urlParams_.Encode()
25436	req, err := http.NewRequest("GET", urls, body)
25437	if err != nil {
25438		return nil, err
25439	}
25440	req.Header = reqHeaders
25441	googleapi.Expand(req.URL, map[string]string{
25442		"profileId": strconv.FormatInt(c.profileId, 10),
25443	})
25444	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25445}
25446
25447// Do executes the "dfareporting.countries.list" call.
25448// Exactly one of *CountriesListResponse or error will be non-nil. Any
25449// non-2xx status code is an error. Response headers are in either
25450// *CountriesListResponse.ServerResponse.Header or (if a response was
25451// returned at all) in error.(*googleapi.Error).Header. Use
25452// googleapi.IsNotModified to check whether the returned error was
25453// because http.StatusNotModified was returned.
25454func (c *CountriesListCall) Do(opts ...googleapi.CallOption) (*CountriesListResponse, error) {
25455	gensupport.SetOptions(c.urlParams_, opts...)
25456	res, err := c.doRequest("json")
25457	if res != nil && res.StatusCode == http.StatusNotModified {
25458		if res.Body != nil {
25459			res.Body.Close()
25460		}
25461		return nil, &googleapi.Error{
25462			Code:   res.StatusCode,
25463			Header: res.Header,
25464		}
25465	}
25466	if err != nil {
25467		return nil, err
25468	}
25469	defer googleapi.CloseBody(res)
25470	if err := googleapi.CheckResponse(res); err != nil {
25471		return nil, err
25472	}
25473	ret := &CountriesListResponse{
25474		ServerResponse: googleapi.ServerResponse{
25475			Header:         res.Header,
25476			HTTPStatusCode: res.StatusCode,
25477		},
25478	}
25479	target := &ret
25480	if err := gensupport.DecodeResponse(target, res); err != nil {
25481		return nil, err
25482	}
25483	return ret, nil
25484	// {
25485	//   "description": "Retrieves a list of countries.",
25486	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/countries",
25487	//   "httpMethod": "GET",
25488	//   "id": "dfareporting.countries.list",
25489	//   "parameterOrder": [
25490	//     "profileId"
25491	//   ],
25492	//   "parameters": {
25493	//     "profileId": {
25494	//       "description": "User profile ID associated with this request.",
25495	//       "format": "int64",
25496	//       "location": "path",
25497	//       "required": true,
25498	//       "type": "string"
25499	//     }
25500	//   },
25501	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/countries",
25502	//   "response": {
25503	//     "$ref": "CountriesListResponse"
25504	//   },
25505	//   "scopes": [
25506	//     "https://www.googleapis.com/auth/dfatrafficking"
25507	//   ]
25508	// }
25509
25510}
25511
25512// method id "dfareporting.creativeAssets.insert":
25513
25514type CreativeAssetsInsertCall struct {
25515	s                     *Service
25516	profileId             int64
25517	advertiserId          int64
25518	creativeassetmetadata *CreativeAssetMetadata
25519	urlParams_            gensupport.URLParams
25520	mediaInfo_            *gensupport.MediaInfo
25521	ctx_                  context.Context
25522	header_               http.Header
25523}
25524
25525// Insert: Inserts a new creative asset.
25526//
25527// - advertiserId: Advertiser ID of this creative. This is a required
25528//   field.
25529// - profileId: User profile ID associated with this request.
25530func (r *CreativeAssetsService) Insert(profileId int64, advertiserId int64, creativeassetmetadata *CreativeAssetMetadata) *CreativeAssetsInsertCall {
25531	c := &CreativeAssetsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25532	c.profileId = profileId
25533	c.advertiserId = advertiserId
25534	c.creativeassetmetadata = creativeassetmetadata
25535	return c
25536}
25537
25538// Media specifies the media to upload in one or more chunks. The chunk
25539// size may be controlled by supplying a MediaOption generated by
25540// googleapi.ChunkSize. The chunk size defaults to
25541// googleapi.DefaultUploadChunkSize.The Content-Type header used in the
25542// upload request will be determined by sniffing the contents of r,
25543// unless a MediaOption generated by googleapi.ContentType is
25544// supplied.
25545// At most one of Media and ResumableMedia may be set.
25546func (c *CreativeAssetsInsertCall) Media(r io.Reader, options ...googleapi.MediaOption) *CreativeAssetsInsertCall {
25547	c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options)
25548	return c
25549}
25550
25551// ResumableMedia specifies the media to upload in chunks and can be
25552// canceled with ctx.
25553//
25554// Deprecated: use Media instead.
25555//
25556// At most one of Media and ResumableMedia may be set. mediaType
25557// identifies the MIME media type of the upload, such as "image/png". If
25558// mediaType is "", it will be auto-detected. The provided ctx will
25559// supersede any context previously provided to the Context method.
25560func (c *CreativeAssetsInsertCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *CreativeAssetsInsertCall {
25561	c.ctx_ = ctx
25562	c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType)
25563	return c
25564}
25565
25566// ProgressUpdater provides a callback function that will be called
25567// after every chunk. It should be a low-latency function in order to
25568// not slow down the upload operation. This should only be called when
25569// using ResumableMedia (as opposed to Media).
25570func (c *CreativeAssetsInsertCall) ProgressUpdater(pu googleapi.ProgressUpdater) *CreativeAssetsInsertCall {
25571	c.mediaInfo_.SetProgressUpdater(pu)
25572	return c
25573}
25574
25575// Fields allows partial responses to be retrieved. See
25576// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25577// for more information.
25578func (c *CreativeAssetsInsertCall) Fields(s ...googleapi.Field) *CreativeAssetsInsertCall {
25579	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25580	return c
25581}
25582
25583// Context sets the context to be used in this call's Do method. Any
25584// pending HTTP request will be aborted if the provided context is
25585// canceled.
25586// This context will supersede any context previously provided to the
25587// ResumableMedia method.
25588func (c *CreativeAssetsInsertCall) Context(ctx context.Context) *CreativeAssetsInsertCall {
25589	c.ctx_ = ctx
25590	return c
25591}
25592
25593// Header returns an http.Header that can be modified by the caller to
25594// add HTTP headers to the request.
25595func (c *CreativeAssetsInsertCall) Header() http.Header {
25596	if c.header_ == nil {
25597		c.header_ = make(http.Header)
25598	}
25599	return c.header_
25600}
25601
25602func (c *CreativeAssetsInsertCall) doRequest(alt string) (*http.Response, error) {
25603	reqHeaders := make(http.Header)
25604	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25605	for k, v := range c.header_ {
25606		reqHeaders[k] = v
25607	}
25608	reqHeaders.Set("User-Agent", c.s.userAgent())
25609	var body io.Reader = nil
25610	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativeassetmetadata)
25611	if err != nil {
25612		return nil, err
25613	}
25614	reqHeaders.Set("Content-Type", "application/json")
25615	c.urlParams_.Set("alt", alt)
25616	c.urlParams_.Set("prettyPrint", "false")
25617	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets")
25618	if c.mediaInfo_ != nil {
25619		urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/dfareporting/v3.5/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets")
25620		c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType())
25621	}
25622	if body == nil {
25623		body = new(bytes.Buffer)
25624		reqHeaders.Set("Content-Type", "application/json")
25625	}
25626	body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body)
25627	defer cleanup()
25628	urls += "?" + c.urlParams_.Encode()
25629	req, err := http.NewRequest("POST", urls, body)
25630	if err != nil {
25631		return nil, err
25632	}
25633	req.Header = reqHeaders
25634	req.GetBody = getBody
25635	googleapi.Expand(req.URL, map[string]string{
25636		"profileId":    strconv.FormatInt(c.profileId, 10),
25637		"advertiserId": strconv.FormatInt(c.advertiserId, 10),
25638	})
25639	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25640}
25641
25642// Do executes the "dfareporting.creativeAssets.insert" call.
25643// Exactly one of *CreativeAssetMetadata or error will be non-nil. Any
25644// non-2xx status code is an error. Response headers are in either
25645// *CreativeAssetMetadata.ServerResponse.Header or (if a response was
25646// returned at all) in error.(*googleapi.Error).Header. Use
25647// googleapi.IsNotModified to check whether the returned error was
25648// because http.StatusNotModified was returned.
25649func (c *CreativeAssetsInsertCall) Do(opts ...googleapi.CallOption) (*CreativeAssetMetadata, error) {
25650	gensupport.SetOptions(c.urlParams_, opts...)
25651	res, err := c.doRequest("json")
25652	if res != nil && res.StatusCode == http.StatusNotModified {
25653		if res.Body != nil {
25654			res.Body.Close()
25655		}
25656		return nil, &googleapi.Error{
25657			Code:   res.StatusCode,
25658			Header: res.Header,
25659		}
25660	}
25661	if err != nil {
25662		return nil, err
25663	}
25664	defer googleapi.CloseBody(res)
25665	if err := googleapi.CheckResponse(res); err != nil {
25666		return nil, err
25667	}
25668	rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location"))
25669	if rx != nil {
25670		rx.Client = c.s.client
25671		rx.UserAgent = c.s.userAgent()
25672		ctx := c.ctx_
25673		if ctx == nil {
25674			ctx = context.TODO()
25675		}
25676		res, err = rx.Upload(ctx)
25677		if err != nil {
25678			return nil, err
25679		}
25680		defer res.Body.Close()
25681		if err := googleapi.CheckResponse(res); err != nil {
25682			return nil, err
25683		}
25684	}
25685	ret := &CreativeAssetMetadata{
25686		ServerResponse: googleapi.ServerResponse{
25687			Header:         res.Header,
25688			HTTPStatusCode: res.StatusCode,
25689		},
25690	}
25691	target := &ret
25692	if err := gensupport.DecodeResponse(target, res); err != nil {
25693		return nil, err
25694	}
25695	return ret, nil
25696	// {
25697	//   "description": "Inserts a new creative asset.",
25698	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets",
25699	//   "httpMethod": "POST",
25700	//   "id": "dfareporting.creativeAssets.insert",
25701	//   "mediaUpload": {
25702	//     "accept": [
25703	//       "*/*"
25704	//     ],
25705	//     "maxSize": "1073741824",
25706	//     "protocols": {
25707	//       "simple": {
25708	//         "multipart": true,
25709	//         "path": "/upload/dfareporting/v3.5/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets"
25710	//       }
25711	//     }
25712	//   },
25713	//   "parameterOrder": [
25714	//     "profileId",
25715	//     "advertiserId"
25716	//   ],
25717	//   "parameters": {
25718	//     "advertiserId": {
25719	//       "description": "Advertiser ID of this creative. This is a required field.",
25720	//       "format": "int64",
25721	//       "location": "path",
25722	//       "required": true,
25723	//       "type": "string"
25724	//     },
25725	//     "profileId": {
25726	//       "description": "User profile ID associated with this request.",
25727	//       "format": "int64",
25728	//       "location": "path",
25729	//       "required": true,
25730	//       "type": "string"
25731	//     }
25732	//   },
25733	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets",
25734	//   "request": {
25735	//     "$ref": "CreativeAssetMetadata"
25736	//   },
25737	//   "response": {
25738	//     "$ref": "CreativeAssetMetadata"
25739	//   },
25740	//   "scopes": [
25741	//     "https://www.googleapis.com/auth/dfatrafficking"
25742	//   ],
25743	//   "supportsMediaUpload": true
25744	// }
25745
25746}
25747
25748// method id "dfareporting.creativeFieldValues.delete":
25749
25750type CreativeFieldValuesDeleteCall struct {
25751	s               *Service
25752	profileId       int64
25753	creativeFieldId int64
25754	id              int64
25755	urlParams_      gensupport.URLParams
25756	ctx_            context.Context
25757	header_         http.Header
25758}
25759
25760// Delete: Deletes an existing creative field value.
25761//
25762// - creativeFieldId: Creative field ID for this creative field value.
25763// - id: Creative Field Value ID.
25764// - profileId: User profile ID associated with this request.
25765func (r *CreativeFieldValuesService) Delete(profileId int64, creativeFieldId int64, id int64) *CreativeFieldValuesDeleteCall {
25766	c := &CreativeFieldValuesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25767	c.profileId = profileId
25768	c.creativeFieldId = creativeFieldId
25769	c.id = id
25770	return c
25771}
25772
25773// Fields allows partial responses to be retrieved. See
25774// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25775// for more information.
25776func (c *CreativeFieldValuesDeleteCall) Fields(s ...googleapi.Field) *CreativeFieldValuesDeleteCall {
25777	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25778	return c
25779}
25780
25781// Context sets the context to be used in this call's Do method. Any
25782// pending HTTP request will be aborted if the provided context is
25783// canceled.
25784func (c *CreativeFieldValuesDeleteCall) Context(ctx context.Context) *CreativeFieldValuesDeleteCall {
25785	c.ctx_ = ctx
25786	return c
25787}
25788
25789// Header returns an http.Header that can be modified by the caller to
25790// add HTTP headers to the request.
25791func (c *CreativeFieldValuesDeleteCall) Header() http.Header {
25792	if c.header_ == nil {
25793		c.header_ = make(http.Header)
25794	}
25795	return c.header_
25796}
25797
25798func (c *CreativeFieldValuesDeleteCall) doRequest(alt string) (*http.Response, error) {
25799	reqHeaders := make(http.Header)
25800	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25801	for k, v := range c.header_ {
25802		reqHeaders[k] = v
25803	}
25804	reqHeaders.Set("User-Agent", c.s.userAgent())
25805	var body io.Reader = nil
25806	c.urlParams_.Set("alt", alt)
25807	c.urlParams_.Set("prettyPrint", "false")
25808	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}")
25809	urls += "?" + c.urlParams_.Encode()
25810	req, err := http.NewRequest("DELETE", urls, body)
25811	if err != nil {
25812		return nil, err
25813	}
25814	req.Header = reqHeaders
25815	googleapi.Expand(req.URL, map[string]string{
25816		"profileId":       strconv.FormatInt(c.profileId, 10),
25817		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
25818		"id":              strconv.FormatInt(c.id, 10),
25819	})
25820	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25821}
25822
25823// Do executes the "dfareporting.creativeFieldValues.delete" call.
25824func (c *CreativeFieldValuesDeleteCall) Do(opts ...googleapi.CallOption) error {
25825	gensupport.SetOptions(c.urlParams_, opts...)
25826	res, err := c.doRequest("json")
25827	if err != nil {
25828		return err
25829	}
25830	defer googleapi.CloseBody(res)
25831	if err := googleapi.CheckResponse(res); err != nil {
25832		return err
25833	}
25834	return nil
25835	// {
25836	//   "description": "Deletes an existing creative field value.",
25837	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}",
25838	//   "httpMethod": "DELETE",
25839	//   "id": "dfareporting.creativeFieldValues.delete",
25840	//   "parameterOrder": [
25841	//     "profileId",
25842	//     "creativeFieldId",
25843	//     "id"
25844	//   ],
25845	//   "parameters": {
25846	//     "creativeFieldId": {
25847	//       "description": "Creative field ID for this creative field value.",
25848	//       "format": "int64",
25849	//       "location": "path",
25850	//       "required": true,
25851	//       "type": "string"
25852	//     },
25853	//     "id": {
25854	//       "description": "Creative Field Value ID",
25855	//       "format": "int64",
25856	//       "location": "path",
25857	//       "required": true,
25858	//       "type": "string"
25859	//     },
25860	//     "profileId": {
25861	//       "description": "User profile ID associated with this request.",
25862	//       "format": "int64",
25863	//       "location": "path",
25864	//       "required": true,
25865	//       "type": "string"
25866	//     }
25867	//   },
25868	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}",
25869	//   "scopes": [
25870	//     "https://www.googleapis.com/auth/dfatrafficking"
25871	//   ]
25872	// }
25873
25874}
25875
25876// method id "dfareporting.creativeFieldValues.get":
25877
25878type CreativeFieldValuesGetCall struct {
25879	s               *Service
25880	profileId       int64
25881	creativeFieldId int64
25882	id              int64
25883	urlParams_      gensupport.URLParams
25884	ifNoneMatch_    string
25885	ctx_            context.Context
25886	header_         http.Header
25887}
25888
25889// Get: Gets one creative field value by ID.
25890//
25891// - creativeFieldId: Creative field ID for this creative field value.
25892// - id: Creative Field Value ID.
25893// - profileId: User profile ID associated with this request.
25894func (r *CreativeFieldValuesService) Get(profileId int64, creativeFieldId int64, id int64) *CreativeFieldValuesGetCall {
25895	c := &CreativeFieldValuesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25896	c.profileId = profileId
25897	c.creativeFieldId = creativeFieldId
25898	c.id = id
25899	return c
25900}
25901
25902// Fields allows partial responses to be retrieved. See
25903// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25904// for more information.
25905func (c *CreativeFieldValuesGetCall) Fields(s ...googleapi.Field) *CreativeFieldValuesGetCall {
25906	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25907	return c
25908}
25909
25910// IfNoneMatch sets the optional parameter which makes the operation
25911// fail if the object's ETag matches the given value. This is useful for
25912// getting updates only after the object has changed since the last
25913// request. Use googleapi.IsNotModified to check whether the response
25914// error from Do is the result of In-None-Match.
25915func (c *CreativeFieldValuesGetCall) IfNoneMatch(entityTag string) *CreativeFieldValuesGetCall {
25916	c.ifNoneMatch_ = entityTag
25917	return c
25918}
25919
25920// Context sets the context to be used in this call's Do method. Any
25921// pending HTTP request will be aborted if the provided context is
25922// canceled.
25923func (c *CreativeFieldValuesGetCall) Context(ctx context.Context) *CreativeFieldValuesGetCall {
25924	c.ctx_ = ctx
25925	return c
25926}
25927
25928// Header returns an http.Header that can be modified by the caller to
25929// add HTTP headers to the request.
25930func (c *CreativeFieldValuesGetCall) Header() http.Header {
25931	if c.header_ == nil {
25932		c.header_ = make(http.Header)
25933	}
25934	return c.header_
25935}
25936
25937func (c *CreativeFieldValuesGetCall) doRequest(alt string) (*http.Response, error) {
25938	reqHeaders := make(http.Header)
25939	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25940	for k, v := range c.header_ {
25941		reqHeaders[k] = v
25942	}
25943	reqHeaders.Set("User-Agent", c.s.userAgent())
25944	if c.ifNoneMatch_ != "" {
25945		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25946	}
25947	var body io.Reader = nil
25948	c.urlParams_.Set("alt", alt)
25949	c.urlParams_.Set("prettyPrint", "false")
25950	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}")
25951	urls += "?" + c.urlParams_.Encode()
25952	req, err := http.NewRequest("GET", urls, body)
25953	if err != nil {
25954		return nil, err
25955	}
25956	req.Header = reqHeaders
25957	googleapi.Expand(req.URL, map[string]string{
25958		"profileId":       strconv.FormatInt(c.profileId, 10),
25959		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
25960		"id":              strconv.FormatInt(c.id, 10),
25961	})
25962	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25963}
25964
25965// Do executes the "dfareporting.creativeFieldValues.get" call.
25966// Exactly one of *CreativeFieldValue or error will be non-nil. Any
25967// non-2xx status code is an error. Response headers are in either
25968// *CreativeFieldValue.ServerResponse.Header or (if a response was
25969// returned at all) in error.(*googleapi.Error).Header. Use
25970// googleapi.IsNotModified to check whether the returned error was
25971// because http.StatusNotModified was returned.
25972func (c *CreativeFieldValuesGetCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValue, error) {
25973	gensupport.SetOptions(c.urlParams_, opts...)
25974	res, err := c.doRequest("json")
25975	if res != nil && res.StatusCode == http.StatusNotModified {
25976		if res.Body != nil {
25977			res.Body.Close()
25978		}
25979		return nil, &googleapi.Error{
25980			Code:   res.StatusCode,
25981			Header: res.Header,
25982		}
25983	}
25984	if err != nil {
25985		return nil, err
25986	}
25987	defer googleapi.CloseBody(res)
25988	if err := googleapi.CheckResponse(res); err != nil {
25989		return nil, err
25990	}
25991	ret := &CreativeFieldValue{
25992		ServerResponse: googleapi.ServerResponse{
25993			Header:         res.Header,
25994			HTTPStatusCode: res.StatusCode,
25995		},
25996	}
25997	target := &ret
25998	if err := gensupport.DecodeResponse(target, res); err != nil {
25999		return nil, err
26000	}
26001	return ret, nil
26002	// {
26003	//   "description": "Gets one creative field value by ID.",
26004	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}",
26005	//   "httpMethod": "GET",
26006	//   "id": "dfareporting.creativeFieldValues.get",
26007	//   "parameterOrder": [
26008	//     "profileId",
26009	//     "creativeFieldId",
26010	//     "id"
26011	//   ],
26012	//   "parameters": {
26013	//     "creativeFieldId": {
26014	//       "description": "Creative field ID for this creative field value.",
26015	//       "format": "int64",
26016	//       "location": "path",
26017	//       "required": true,
26018	//       "type": "string"
26019	//     },
26020	//     "id": {
26021	//       "description": "Creative Field Value ID",
26022	//       "format": "int64",
26023	//       "location": "path",
26024	//       "required": true,
26025	//       "type": "string"
26026	//     },
26027	//     "profileId": {
26028	//       "description": "User profile ID associated with this request.",
26029	//       "format": "int64",
26030	//       "location": "path",
26031	//       "required": true,
26032	//       "type": "string"
26033	//     }
26034	//   },
26035	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}",
26036	//   "response": {
26037	//     "$ref": "CreativeFieldValue"
26038	//   },
26039	//   "scopes": [
26040	//     "https://www.googleapis.com/auth/dfatrafficking"
26041	//   ]
26042	// }
26043
26044}
26045
26046// method id "dfareporting.creativeFieldValues.insert":
26047
26048type CreativeFieldValuesInsertCall struct {
26049	s                  *Service
26050	profileId          int64
26051	creativeFieldId    int64
26052	creativefieldvalue *CreativeFieldValue
26053	urlParams_         gensupport.URLParams
26054	ctx_               context.Context
26055	header_            http.Header
26056}
26057
26058// Insert: Inserts a new creative field value.
26059//
26060// - creativeFieldId: Creative field ID for this creative field value.
26061// - profileId: User profile ID associated with this request.
26062func (r *CreativeFieldValuesService) Insert(profileId int64, creativeFieldId int64, creativefieldvalue *CreativeFieldValue) *CreativeFieldValuesInsertCall {
26063	c := &CreativeFieldValuesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26064	c.profileId = profileId
26065	c.creativeFieldId = creativeFieldId
26066	c.creativefieldvalue = creativefieldvalue
26067	return c
26068}
26069
26070// Fields allows partial responses to be retrieved. See
26071// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26072// for more information.
26073func (c *CreativeFieldValuesInsertCall) Fields(s ...googleapi.Field) *CreativeFieldValuesInsertCall {
26074	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26075	return c
26076}
26077
26078// Context sets the context to be used in this call's Do method. Any
26079// pending HTTP request will be aborted if the provided context is
26080// canceled.
26081func (c *CreativeFieldValuesInsertCall) Context(ctx context.Context) *CreativeFieldValuesInsertCall {
26082	c.ctx_ = ctx
26083	return c
26084}
26085
26086// Header returns an http.Header that can be modified by the caller to
26087// add HTTP headers to the request.
26088func (c *CreativeFieldValuesInsertCall) Header() http.Header {
26089	if c.header_ == nil {
26090		c.header_ = make(http.Header)
26091	}
26092	return c.header_
26093}
26094
26095func (c *CreativeFieldValuesInsertCall) doRequest(alt string) (*http.Response, error) {
26096	reqHeaders := make(http.Header)
26097	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26098	for k, v := range c.header_ {
26099		reqHeaders[k] = v
26100	}
26101	reqHeaders.Set("User-Agent", c.s.userAgent())
26102	var body io.Reader = nil
26103	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefieldvalue)
26104	if err != nil {
26105		return nil, err
26106	}
26107	reqHeaders.Set("Content-Type", "application/json")
26108	c.urlParams_.Set("alt", alt)
26109	c.urlParams_.Set("prettyPrint", "false")
26110	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues")
26111	urls += "?" + c.urlParams_.Encode()
26112	req, err := http.NewRequest("POST", urls, body)
26113	if err != nil {
26114		return nil, err
26115	}
26116	req.Header = reqHeaders
26117	googleapi.Expand(req.URL, map[string]string{
26118		"profileId":       strconv.FormatInt(c.profileId, 10),
26119		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
26120	})
26121	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26122}
26123
26124// Do executes the "dfareporting.creativeFieldValues.insert" call.
26125// Exactly one of *CreativeFieldValue or error will be non-nil. Any
26126// non-2xx status code is an error. Response headers are in either
26127// *CreativeFieldValue.ServerResponse.Header or (if a response was
26128// returned at all) in error.(*googleapi.Error).Header. Use
26129// googleapi.IsNotModified to check whether the returned error was
26130// because http.StatusNotModified was returned.
26131func (c *CreativeFieldValuesInsertCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValue, error) {
26132	gensupport.SetOptions(c.urlParams_, opts...)
26133	res, err := c.doRequest("json")
26134	if res != nil && res.StatusCode == http.StatusNotModified {
26135		if res.Body != nil {
26136			res.Body.Close()
26137		}
26138		return nil, &googleapi.Error{
26139			Code:   res.StatusCode,
26140			Header: res.Header,
26141		}
26142	}
26143	if err != nil {
26144		return nil, err
26145	}
26146	defer googleapi.CloseBody(res)
26147	if err := googleapi.CheckResponse(res); err != nil {
26148		return nil, err
26149	}
26150	ret := &CreativeFieldValue{
26151		ServerResponse: googleapi.ServerResponse{
26152			Header:         res.Header,
26153			HTTPStatusCode: res.StatusCode,
26154		},
26155	}
26156	target := &ret
26157	if err := gensupport.DecodeResponse(target, res); err != nil {
26158		return nil, err
26159	}
26160	return ret, nil
26161	// {
26162	//   "description": "Inserts a new creative field value.",
26163	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues",
26164	//   "httpMethod": "POST",
26165	//   "id": "dfareporting.creativeFieldValues.insert",
26166	//   "parameterOrder": [
26167	//     "profileId",
26168	//     "creativeFieldId"
26169	//   ],
26170	//   "parameters": {
26171	//     "creativeFieldId": {
26172	//       "description": "Creative field ID for this creative field value.",
26173	//       "format": "int64",
26174	//       "location": "path",
26175	//       "required": true,
26176	//       "type": "string"
26177	//     },
26178	//     "profileId": {
26179	//       "description": "User profile ID associated with this request.",
26180	//       "format": "int64",
26181	//       "location": "path",
26182	//       "required": true,
26183	//       "type": "string"
26184	//     }
26185	//   },
26186	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues",
26187	//   "request": {
26188	//     "$ref": "CreativeFieldValue"
26189	//   },
26190	//   "response": {
26191	//     "$ref": "CreativeFieldValue"
26192	//   },
26193	//   "scopes": [
26194	//     "https://www.googleapis.com/auth/dfatrafficking"
26195	//   ]
26196	// }
26197
26198}
26199
26200// method id "dfareporting.creativeFieldValues.list":
26201
26202type CreativeFieldValuesListCall struct {
26203	s               *Service
26204	profileId       int64
26205	creativeFieldId int64
26206	urlParams_      gensupport.URLParams
26207	ifNoneMatch_    string
26208	ctx_            context.Context
26209	header_         http.Header
26210}
26211
26212// List: Retrieves a list of creative field values, possibly filtered.
26213// This method supports paging.
26214//
26215// - creativeFieldId: Creative field ID for this creative field value.
26216// - profileId: User profile ID associated with this request.
26217func (r *CreativeFieldValuesService) List(profileId int64, creativeFieldId int64) *CreativeFieldValuesListCall {
26218	c := &CreativeFieldValuesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26219	c.profileId = profileId
26220	c.creativeFieldId = creativeFieldId
26221	return c
26222}
26223
26224// Ids sets the optional parameter "ids": Select only creative field
26225// values with these IDs.
26226func (c *CreativeFieldValuesListCall) Ids(ids ...int64) *CreativeFieldValuesListCall {
26227	var ids_ []string
26228	for _, v := range ids {
26229		ids_ = append(ids_, fmt.Sprint(v))
26230	}
26231	c.urlParams_.SetMulti("ids", ids_)
26232	return c
26233}
26234
26235// MaxResults sets the optional parameter "maxResults": Maximum number
26236// of results to return.
26237func (c *CreativeFieldValuesListCall) MaxResults(maxResults int64) *CreativeFieldValuesListCall {
26238	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
26239	return c
26240}
26241
26242// PageToken sets the optional parameter "pageToken": Value of the
26243// nextPageToken from the previous result page.
26244func (c *CreativeFieldValuesListCall) PageToken(pageToken string) *CreativeFieldValuesListCall {
26245	c.urlParams_.Set("pageToken", pageToken)
26246	return c
26247}
26248
26249// SearchString sets the optional parameter "searchString": Allows
26250// searching for creative field values by their values. Wildcards (e.g.
26251// *) are not allowed.
26252func (c *CreativeFieldValuesListCall) SearchString(searchString string) *CreativeFieldValuesListCall {
26253	c.urlParams_.Set("searchString", searchString)
26254	return c
26255}
26256
26257// SortField sets the optional parameter "sortField": Field by which to
26258// sort the list.
26259//
26260// Possible values:
26261//   "ID" (default)
26262//   "VALUE"
26263func (c *CreativeFieldValuesListCall) SortField(sortField string) *CreativeFieldValuesListCall {
26264	c.urlParams_.Set("sortField", sortField)
26265	return c
26266}
26267
26268// SortOrder sets the optional parameter "sortOrder": Order of sorted
26269// results.
26270//
26271// Possible values:
26272//   "ASCENDING" (default)
26273//   "DESCENDING"
26274func (c *CreativeFieldValuesListCall) SortOrder(sortOrder string) *CreativeFieldValuesListCall {
26275	c.urlParams_.Set("sortOrder", sortOrder)
26276	return c
26277}
26278
26279// Fields allows partial responses to be retrieved. See
26280// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26281// for more information.
26282func (c *CreativeFieldValuesListCall) Fields(s ...googleapi.Field) *CreativeFieldValuesListCall {
26283	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26284	return c
26285}
26286
26287// IfNoneMatch sets the optional parameter which makes the operation
26288// fail if the object's ETag matches the given value. This is useful for
26289// getting updates only after the object has changed since the last
26290// request. Use googleapi.IsNotModified to check whether the response
26291// error from Do is the result of In-None-Match.
26292func (c *CreativeFieldValuesListCall) IfNoneMatch(entityTag string) *CreativeFieldValuesListCall {
26293	c.ifNoneMatch_ = entityTag
26294	return c
26295}
26296
26297// Context sets the context to be used in this call's Do method. Any
26298// pending HTTP request will be aborted if the provided context is
26299// canceled.
26300func (c *CreativeFieldValuesListCall) Context(ctx context.Context) *CreativeFieldValuesListCall {
26301	c.ctx_ = ctx
26302	return c
26303}
26304
26305// Header returns an http.Header that can be modified by the caller to
26306// add HTTP headers to the request.
26307func (c *CreativeFieldValuesListCall) Header() http.Header {
26308	if c.header_ == nil {
26309		c.header_ = make(http.Header)
26310	}
26311	return c.header_
26312}
26313
26314func (c *CreativeFieldValuesListCall) doRequest(alt string) (*http.Response, error) {
26315	reqHeaders := make(http.Header)
26316	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26317	for k, v := range c.header_ {
26318		reqHeaders[k] = v
26319	}
26320	reqHeaders.Set("User-Agent", c.s.userAgent())
26321	if c.ifNoneMatch_ != "" {
26322		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26323	}
26324	var body io.Reader = nil
26325	c.urlParams_.Set("alt", alt)
26326	c.urlParams_.Set("prettyPrint", "false")
26327	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues")
26328	urls += "?" + c.urlParams_.Encode()
26329	req, err := http.NewRequest("GET", urls, body)
26330	if err != nil {
26331		return nil, err
26332	}
26333	req.Header = reqHeaders
26334	googleapi.Expand(req.URL, map[string]string{
26335		"profileId":       strconv.FormatInt(c.profileId, 10),
26336		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
26337	})
26338	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26339}
26340
26341// Do executes the "dfareporting.creativeFieldValues.list" call.
26342// Exactly one of *CreativeFieldValuesListResponse or error will be
26343// non-nil. Any non-2xx status code is an error. Response headers are in
26344// either *CreativeFieldValuesListResponse.ServerResponse.Header or (if
26345// a response was returned at all) in error.(*googleapi.Error).Header.
26346// Use googleapi.IsNotModified to check whether the returned error was
26347// because http.StatusNotModified was returned.
26348func (c *CreativeFieldValuesListCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValuesListResponse, error) {
26349	gensupport.SetOptions(c.urlParams_, opts...)
26350	res, err := c.doRequest("json")
26351	if res != nil && res.StatusCode == http.StatusNotModified {
26352		if res.Body != nil {
26353			res.Body.Close()
26354		}
26355		return nil, &googleapi.Error{
26356			Code:   res.StatusCode,
26357			Header: res.Header,
26358		}
26359	}
26360	if err != nil {
26361		return nil, err
26362	}
26363	defer googleapi.CloseBody(res)
26364	if err := googleapi.CheckResponse(res); err != nil {
26365		return nil, err
26366	}
26367	ret := &CreativeFieldValuesListResponse{
26368		ServerResponse: googleapi.ServerResponse{
26369			Header:         res.Header,
26370			HTTPStatusCode: res.StatusCode,
26371		},
26372	}
26373	target := &ret
26374	if err := gensupport.DecodeResponse(target, res); err != nil {
26375		return nil, err
26376	}
26377	return ret, nil
26378	// {
26379	//   "description": "Retrieves a list of creative field values, possibly filtered. This method supports paging.",
26380	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues",
26381	//   "httpMethod": "GET",
26382	//   "id": "dfareporting.creativeFieldValues.list",
26383	//   "parameterOrder": [
26384	//     "profileId",
26385	//     "creativeFieldId"
26386	//   ],
26387	//   "parameters": {
26388	//     "creativeFieldId": {
26389	//       "description": "Creative field ID for this creative field value.",
26390	//       "format": "int64",
26391	//       "location": "path",
26392	//       "required": true,
26393	//       "type": "string"
26394	//     },
26395	//     "ids": {
26396	//       "description": "Select only creative field values with these IDs.",
26397	//       "format": "int64",
26398	//       "location": "query",
26399	//       "repeated": true,
26400	//       "type": "string"
26401	//     },
26402	//     "maxResults": {
26403	//       "default": "1000",
26404	//       "description": "Maximum number of results to return.",
26405	//       "format": "int32",
26406	//       "location": "query",
26407	//       "maximum": "1000",
26408	//       "minimum": "0",
26409	//       "type": "integer"
26410	//     },
26411	//     "pageToken": {
26412	//       "description": "Value of the nextPageToken from the previous result page.",
26413	//       "location": "query",
26414	//       "type": "string"
26415	//     },
26416	//     "profileId": {
26417	//       "description": "User profile ID associated with this request.",
26418	//       "format": "int64",
26419	//       "location": "path",
26420	//       "required": true,
26421	//       "type": "string"
26422	//     },
26423	//     "searchString": {
26424	//       "description": "Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.",
26425	//       "location": "query",
26426	//       "type": "string"
26427	//     },
26428	//     "sortField": {
26429	//       "default": "ID",
26430	//       "description": "Field by which to sort the list.",
26431	//       "enum": [
26432	//         "ID",
26433	//         "VALUE"
26434	//       ],
26435	//       "enumDescriptions": [
26436	//         "",
26437	//         ""
26438	//       ],
26439	//       "location": "query",
26440	//       "type": "string"
26441	//     },
26442	//     "sortOrder": {
26443	//       "default": "ASCENDING",
26444	//       "description": "Order of sorted results.",
26445	//       "enum": [
26446	//         "ASCENDING",
26447	//         "DESCENDING"
26448	//       ],
26449	//       "enumDescriptions": [
26450	//         "",
26451	//         ""
26452	//       ],
26453	//       "location": "query",
26454	//       "type": "string"
26455	//     }
26456	//   },
26457	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues",
26458	//   "response": {
26459	//     "$ref": "CreativeFieldValuesListResponse"
26460	//   },
26461	//   "scopes": [
26462	//     "https://www.googleapis.com/auth/dfatrafficking"
26463	//   ]
26464	// }
26465
26466}
26467
26468// Pages invokes f for each page of results.
26469// A non-nil error returned from f will halt the iteration.
26470// The provided context supersedes any context provided to the Context method.
26471func (c *CreativeFieldValuesListCall) Pages(ctx context.Context, f func(*CreativeFieldValuesListResponse) error) error {
26472	c.ctx_ = ctx
26473	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26474	for {
26475		x, err := c.Do()
26476		if err != nil {
26477			return err
26478		}
26479		if err := f(x); err != nil {
26480			return err
26481		}
26482		if x.NextPageToken == "" {
26483			return nil
26484		}
26485		c.PageToken(x.NextPageToken)
26486	}
26487}
26488
26489// method id "dfareporting.creativeFieldValues.patch":
26490
26491type CreativeFieldValuesPatchCall struct {
26492	s                  *Service
26493	profileId          int64
26494	creativeFieldId    int64
26495	creativefieldvalue *CreativeFieldValue
26496	urlParams_         gensupport.URLParams
26497	ctx_               context.Context
26498	header_            http.Header
26499}
26500
26501// Patch: Updates an existing creative field value. This method supports
26502// patch semantics.
26503//
26504// - creativeFieldId: CreativeField ID.
26505// - id: CreativeFieldValue ID.
26506// - profileId: User profile ID associated with this request.
26507func (r *CreativeFieldValuesService) Patch(profileId int64, creativeFieldId int64, id int64, creativefieldvalue *CreativeFieldValue) *CreativeFieldValuesPatchCall {
26508	c := &CreativeFieldValuesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26509	c.profileId = profileId
26510	c.creativeFieldId = creativeFieldId
26511	c.urlParams_.Set("id", fmt.Sprint(id))
26512	c.creativefieldvalue = creativefieldvalue
26513	return c
26514}
26515
26516// Fields allows partial responses to be retrieved. See
26517// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26518// for more information.
26519func (c *CreativeFieldValuesPatchCall) Fields(s ...googleapi.Field) *CreativeFieldValuesPatchCall {
26520	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26521	return c
26522}
26523
26524// Context sets the context to be used in this call's Do method. Any
26525// pending HTTP request will be aborted if the provided context is
26526// canceled.
26527func (c *CreativeFieldValuesPatchCall) Context(ctx context.Context) *CreativeFieldValuesPatchCall {
26528	c.ctx_ = ctx
26529	return c
26530}
26531
26532// Header returns an http.Header that can be modified by the caller to
26533// add HTTP headers to the request.
26534func (c *CreativeFieldValuesPatchCall) Header() http.Header {
26535	if c.header_ == nil {
26536		c.header_ = make(http.Header)
26537	}
26538	return c.header_
26539}
26540
26541func (c *CreativeFieldValuesPatchCall) doRequest(alt string) (*http.Response, error) {
26542	reqHeaders := make(http.Header)
26543	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26544	for k, v := range c.header_ {
26545		reqHeaders[k] = v
26546	}
26547	reqHeaders.Set("User-Agent", c.s.userAgent())
26548	var body io.Reader = nil
26549	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefieldvalue)
26550	if err != nil {
26551		return nil, err
26552	}
26553	reqHeaders.Set("Content-Type", "application/json")
26554	c.urlParams_.Set("alt", alt)
26555	c.urlParams_.Set("prettyPrint", "false")
26556	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues")
26557	urls += "?" + c.urlParams_.Encode()
26558	req, err := http.NewRequest("PATCH", urls, body)
26559	if err != nil {
26560		return nil, err
26561	}
26562	req.Header = reqHeaders
26563	googleapi.Expand(req.URL, map[string]string{
26564		"profileId":       strconv.FormatInt(c.profileId, 10),
26565		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
26566	})
26567	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26568}
26569
26570// Do executes the "dfareporting.creativeFieldValues.patch" call.
26571// Exactly one of *CreativeFieldValue or error will be non-nil. Any
26572// non-2xx status code is an error. Response headers are in either
26573// *CreativeFieldValue.ServerResponse.Header or (if a response was
26574// returned at all) in error.(*googleapi.Error).Header. Use
26575// googleapi.IsNotModified to check whether the returned error was
26576// because http.StatusNotModified was returned.
26577func (c *CreativeFieldValuesPatchCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValue, error) {
26578	gensupport.SetOptions(c.urlParams_, opts...)
26579	res, err := c.doRequest("json")
26580	if res != nil && res.StatusCode == http.StatusNotModified {
26581		if res.Body != nil {
26582			res.Body.Close()
26583		}
26584		return nil, &googleapi.Error{
26585			Code:   res.StatusCode,
26586			Header: res.Header,
26587		}
26588	}
26589	if err != nil {
26590		return nil, err
26591	}
26592	defer googleapi.CloseBody(res)
26593	if err := googleapi.CheckResponse(res); err != nil {
26594		return nil, err
26595	}
26596	ret := &CreativeFieldValue{
26597		ServerResponse: googleapi.ServerResponse{
26598			Header:         res.Header,
26599			HTTPStatusCode: res.StatusCode,
26600		},
26601	}
26602	target := &ret
26603	if err := gensupport.DecodeResponse(target, res); err != nil {
26604		return nil, err
26605	}
26606	return ret, nil
26607	// {
26608	//   "description": "Updates an existing creative field value. This method supports patch semantics.",
26609	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues",
26610	//   "httpMethod": "PATCH",
26611	//   "id": "dfareporting.creativeFieldValues.patch",
26612	//   "parameterOrder": [
26613	//     "profileId",
26614	//     "creativeFieldId",
26615	//     "id"
26616	//   ],
26617	//   "parameters": {
26618	//     "creativeFieldId": {
26619	//       "description": "CreativeField ID.",
26620	//       "format": "int64",
26621	//       "location": "path",
26622	//       "required": true,
26623	//       "type": "string"
26624	//     },
26625	//     "id": {
26626	//       "description": "CreativeFieldValue ID.",
26627	//       "format": "int64",
26628	//       "location": "query",
26629	//       "required": true,
26630	//       "type": "string"
26631	//     },
26632	//     "profileId": {
26633	//       "description": "User profile ID associated with this request.",
26634	//       "format": "int64",
26635	//       "location": "path",
26636	//       "required": true,
26637	//       "type": "string"
26638	//     }
26639	//   },
26640	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues",
26641	//   "request": {
26642	//     "$ref": "CreativeFieldValue"
26643	//   },
26644	//   "response": {
26645	//     "$ref": "CreativeFieldValue"
26646	//   },
26647	//   "scopes": [
26648	//     "https://www.googleapis.com/auth/dfatrafficking"
26649	//   ]
26650	// }
26651
26652}
26653
26654// method id "dfareporting.creativeFieldValues.update":
26655
26656type CreativeFieldValuesUpdateCall struct {
26657	s                  *Service
26658	profileId          int64
26659	creativeFieldId    int64
26660	creativefieldvalue *CreativeFieldValue
26661	urlParams_         gensupport.URLParams
26662	ctx_               context.Context
26663	header_            http.Header
26664}
26665
26666// Update: Updates an existing creative field value.
26667//
26668// - creativeFieldId: Creative field ID for this creative field value.
26669// - profileId: User profile ID associated with this request.
26670func (r *CreativeFieldValuesService) Update(profileId int64, creativeFieldId int64, creativefieldvalue *CreativeFieldValue) *CreativeFieldValuesUpdateCall {
26671	c := &CreativeFieldValuesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26672	c.profileId = profileId
26673	c.creativeFieldId = creativeFieldId
26674	c.creativefieldvalue = creativefieldvalue
26675	return c
26676}
26677
26678// Fields allows partial responses to be retrieved. See
26679// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26680// for more information.
26681func (c *CreativeFieldValuesUpdateCall) Fields(s ...googleapi.Field) *CreativeFieldValuesUpdateCall {
26682	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26683	return c
26684}
26685
26686// Context sets the context to be used in this call's Do method. Any
26687// pending HTTP request will be aborted if the provided context is
26688// canceled.
26689func (c *CreativeFieldValuesUpdateCall) Context(ctx context.Context) *CreativeFieldValuesUpdateCall {
26690	c.ctx_ = ctx
26691	return c
26692}
26693
26694// Header returns an http.Header that can be modified by the caller to
26695// add HTTP headers to the request.
26696func (c *CreativeFieldValuesUpdateCall) Header() http.Header {
26697	if c.header_ == nil {
26698		c.header_ = make(http.Header)
26699	}
26700	return c.header_
26701}
26702
26703func (c *CreativeFieldValuesUpdateCall) doRequest(alt string) (*http.Response, error) {
26704	reqHeaders := make(http.Header)
26705	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26706	for k, v := range c.header_ {
26707		reqHeaders[k] = v
26708	}
26709	reqHeaders.Set("User-Agent", c.s.userAgent())
26710	var body io.Reader = nil
26711	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefieldvalue)
26712	if err != nil {
26713		return nil, err
26714	}
26715	reqHeaders.Set("Content-Type", "application/json")
26716	c.urlParams_.Set("alt", alt)
26717	c.urlParams_.Set("prettyPrint", "false")
26718	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues")
26719	urls += "?" + c.urlParams_.Encode()
26720	req, err := http.NewRequest("PUT", urls, body)
26721	if err != nil {
26722		return nil, err
26723	}
26724	req.Header = reqHeaders
26725	googleapi.Expand(req.URL, map[string]string{
26726		"profileId":       strconv.FormatInt(c.profileId, 10),
26727		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
26728	})
26729	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26730}
26731
26732// Do executes the "dfareporting.creativeFieldValues.update" call.
26733// Exactly one of *CreativeFieldValue or error will be non-nil. Any
26734// non-2xx status code is an error. Response headers are in either
26735// *CreativeFieldValue.ServerResponse.Header or (if a response was
26736// returned at all) in error.(*googleapi.Error).Header. Use
26737// googleapi.IsNotModified to check whether the returned error was
26738// because http.StatusNotModified was returned.
26739func (c *CreativeFieldValuesUpdateCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValue, error) {
26740	gensupport.SetOptions(c.urlParams_, opts...)
26741	res, err := c.doRequest("json")
26742	if res != nil && res.StatusCode == http.StatusNotModified {
26743		if res.Body != nil {
26744			res.Body.Close()
26745		}
26746		return nil, &googleapi.Error{
26747			Code:   res.StatusCode,
26748			Header: res.Header,
26749		}
26750	}
26751	if err != nil {
26752		return nil, err
26753	}
26754	defer googleapi.CloseBody(res)
26755	if err := googleapi.CheckResponse(res); err != nil {
26756		return nil, err
26757	}
26758	ret := &CreativeFieldValue{
26759		ServerResponse: googleapi.ServerResponse{
26760			Header:         res.Header,
26761			HTTPStatusCode: res.StatusCode,
26762		},
26763	}
26764	target := &ret
26765	if err := gensupport.DecodeResponse(target, res); err != nil {
26766		return nil, err
26767	}
26768	return ret, nil
26769	// {
26770	//   "description": "Updates an existing creative field value.",
26771	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues",
26772	//   "httpMethod": "PUT",
26773	//   "id": "dfareporting.creativeFieldValues.update",
26774	//   "parameterOrder": [
26775	//     "profileId",
26776	//     "creativeFieldId"
26777	//   ],
26778	//   "parameters": {
26779	//     "creativeFieldId": {
26780	//       "description": "Creative field ID for this creative field value.",
26781	//       "format": "int64",
26782	//       "location": "path",
26783	//       "required": true,
26784	//       "type": "string"
26785	//     },
26786	//     "profileId": {
26787	//       "description": "User profile ID associated with this request.",
26788	//       "format": "int64",
26789	//       "location": "path",
26790	//       "required": true,
26791	//       "type": "string"
26792	//     }
26793	//   },
26794	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues",
26795	//   "request": {
26796	//     "$ref": "CreativeFieldValue"
26797	//   },
26798	//   "response": {
26799	//     "$ref": "CreativeFieldValue"
26800	//   },
26801	//   "scopes": [
26802	//     "https://www.googleapis.com/auth/dfatrafficking"
26803	//   ]
26804	// }
26805
26806}
26807
26808// method id "dfareporting.creativeFields.delete":
26809
26810type CreativeFieldsDeleteCall struct {
26811	s          *Service
26812	profileId  int64
26813	id         int64
26814	urlParams_ gensupport.URLParams
26815	ctx_       context.Context
26816	header_    http.Header
26817}
26818
26819// Delete: Deletes an existing creative field.
26820//
26821// - id: Creative Field ID.
26822// - profileId: User profile ID associated with this request.
26823func (r *CreativeFieldsService) Delete(profileId int64, id int64) *CreativeFieldsDeleteCall {
26824	c := &CreativeFieldsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26825	c.profileId = profileId
26826	c.id = id
26827	return c
26828}
26829
26830// Fields allows partial responses to be retrieved. See
26831// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26832// for more information.
26833func (c *CreativeFieldsDeleteCall) Fields(s ...googleapi.Field) *CreativeFieldsDeleteCall {
26834	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26835	return c
26836}
26837
26838// Context sets the context to be used in this call's Do method. Any
26839// pending HTTP request will be aborted if the provided context is
26840// canceled.
26841func (c *CreativeFieldsDeleteCall) Context(ctx context.Context) *CreativeFieldsDeleteCall {
26842	c.ctx_ = ctx
26843	return c
26844}
26845
26846// Header returns an http.Header that can be modified by the caller to
26847// add HTTP headers to the request.
26848func (c *CreativeFieldsDeleteCall) Header() http.Header {
26849	if c.header_ == nil {
26850		c.header_ = make(http.Header)
26851	}
26852	return c.header_
26853}
26854
26855func (c *CreativeFieldsDeleteCall) doRequest(alt string) (*http.Response, error) {
26856	reqHeaders := make(http.Header)
26857	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26858	for k, v := range c.header_ {
26859		reqHeaders[k] = v
26860	}
26861	reqHeaders.Set("User-Agent", c.s.userAgent())
26862	var body io.Reader = nil
26863	c.urlParams_.Set("alt", alt)
26864	c.urlParams_.Set("prettyPrint", "false")
26865	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{id}")
26866	urls += "?" + c.urlParams_.Encode()
26867	req, err := http.NewRequest("DELETE", urls, body)
26868	if err != nil {
26869		return nil, err
26870	}
26871	req.Header = reqHeaders
26872	googleapi.Expand(req.URL, map[string]string{
26873		"profileId": strconv.FormatInt(c.profileId, 10),
26874		"id":        strconv.FormatInt(c.id, 10),
26875	})
26876	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26877}
26878
26879// Do executes the "dfareporting.creativeFields.delete" call.
26880func (c *CreativeFieldsDeleteCall) Do(opts ...googleapi.CallOption) error {
26881	gensupport.SetOptions(c.urlParams_, opts...)
26882	res, err := c.doRequest("json")
26883	if err != nil {
26884		return err
26885	}
26886	defer googleapi.CloseBody(res)
26887	if err := googleapi.CheckResponse(res); err != nil {
26888		return err
26889	}
26890	return nil
26891	// {
26892	//   "description": "Deletes an existing creative field.",
26893	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{id}",
26894	//   "httpMethod": "DELETE",
26895	//   "id": "dfareporting.creativeFields.delete",
26896	//   "parameterOrder": [
26897	//     "profileId",
26898	//     "id"
26899	//   ],
26900	//   "parameters": {
26901	//     "id": {
26902	//       "description": "Creative Field ID",
26903	//       "format": "int64",
26904	//       "location": "path",
26905	//       "required": true,
26906	//       "type": "string"
26907	//     },
26908	//     "profileId": {
26909	//       "description": "User profile ID associated with this request.",
26910	//       "format": "int64",
26911	//       "location": "path",
26912	//       "required": true,
26913	//       "type": "string"
26914	//     }
26915	//   },
26916	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{id}",
26917	//   "scopes": [
26918	//     "https://www.googleapis.com/auth/dfatrafficking"
26919	//   ]
26920	// }
26921
26922}
26923
26924// method id "dfareporting.creativeFields.get":
26925
26926type CreativeFieldsGetCall struct {
26927	s            *Service
26928	profileId    int64
26929	id           int64
26930	urlParams_   gensupport.URLParams
26931	ifNoneMatch_ string
26932	ctx_         context.Context
26933	header_      http.Header
26934}
26935
26936// Get: Gets one creative field by ID.
26937//
26938// - id: Creative Field ID.
26939// - profileId: User profile ID associated with this request.
26940func (r *CreativeFieldsService) Get(profileId int64, id int64) *CreativeFieldsGetCall {
26941	c := &CreativeFieldsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26942	c.profileId = profileId
26943	c.id = id
26944	return c
26945}
26946
26947// Fields allows partial responses to be retrieved. See
26948// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26949// for more information.
26950func (c *CreativeFieldsGetCall) Fields(s ...googleapi.Field) *CreativeFieldsGetCall {
26951	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26952	return c
26953}
26954
26955// IfNoneMatch sets the optional parameter which makes the operation
26956// fail if the object's ETag matches the given value. This is useful for
26957// getting updates only after the object has changed since the last
26958// request. Use googleapi.IsNotModified to check whether the response
26959// error from Do is the result of In-None-Match.
26960func (c *CreativeFieldsGetCall) IfNoneMatch(entityTag string) *CreativeFieldsGetCall {
26961	c.ifNoneMatch_ = entityTag
26962	return c
26963}
26964
26965// Context sets the context to be used in this call's Do method. Any
26966// pending HTTP request will be aborted if the provided context is
26967// canceled.
26968func (c *CreativeFieldsGetCall) Context(ctx context.Context) *CreativeFieldsGetCall {
26969	c.ctx_ = ctx
26970	return c
26971}
26972
26973// Header returns an http.Header that can be modified by the caller to
26974// add HTTP headers to the request.
26975func (c *CreativeFieldsGetCall) Header() http.Header {
26976	if c.header_ == nil {
26977		c.header_ = make(http.Header)
26978	}
26979	return c.header_
26980}
26981
26982func (c *CreativeFieldsGetCall) doRequest(alt string) (*http.Response, error) {
26983	reqHeaders := make(http.Header)
26984	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26985	for k, v := range c.header_ {
26986		reqHeaders[k] = v
26987	}
26988	reqHeaders.Set("User-Agent", c.s.userAgent())
26989	if c.ifNoneMatch_ != "" {
26990		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26991	}
26992	var body io.Reader = nil
26993	c.urlParams_.Set("alt", alt)
26994	c.urlParams_.Set("prettyPrint", "false")
26995	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{id}")
26996	urls += "?" + c.urlParams_.Encode()
26997	req, err := http.NewRequest("GET", urls, body)
26998	if err != nil {
26999		return nil, err
27000	}
27001	req.Header = reqHeaders
27002	googleapi.Expand(req.URL, map[string]string{
27003		"profileId": strconv.FormatInt(c.profileId, 10),
27004		"id":        strconv.FormatInt(c.id, 10),
27005	})
27006	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27007}
27008
27009// Do executes the "dfareporting.creativeFields.get" call.
27010// Exactly one of *CreativeField or error will be non-nil. Any non-2xx
27011// status code is an error. Response headers are in either
27012// *CreativeField.ServerResponse.Header or (if a response was returned
27013// at all) in error.(*googleapi.Error).Header. Use
27014// googleapi.IsNotModified to check whether the returned error was
27015// because http.StatusNotModified was returned.
27016func (c *CreativeFieldsGetCall) Do(opts ...googleapi.CallOption) (*CreativeField, error) {
27017	gensupport.SetOptions(c.urlParams_, opts...)
27018	res, err := c.doRequest("json")
27019	if res != nil && res.StatusCode == http.StatusNotModified {
27020		if res.Body != nil {
27021			res.Body.Close()
27022		}
27023		return nil, &googleapi.Error{
27024			Code:   res.StatusCode,
27025			Header: res.Header,
27026		}
27027	}
27028	if err != nil {
27029		return nil, err
27030	}
27031	defer googleapi.CloseBody(res)
27032	if err := googleapi.CheckResponse(res); err != nil {
27033		return nil, err
27034	}
27035	ret := &CreativeField{
27036		ServerResponse: googleapi.ServerResponse{
27037			Header:         res.Header,
27038			HTTPStatusCode: res.StatusCode,
27039		},
27040	}
27041	target := &ret
27042	if err := gensupport.DecodeResponse(target, res); err != nil {
27043		return nil, err
27044	}
27045	return ret, nil
27046	// {
27047	//   "description": "Gets one creative field by ID.",
27048	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{id}",
27049	//   "httpMethod": "GET",
27050	//   "id": "dfareporting.creativeFields.get",
27051	//   "parameterOrder": [
27052	//     "profileId",
27053	//     "id"
27054	//   ],
27055	//   "parameters": {
27056	//     "id": {
27057	//       "description": "Creative Field ID",
27058	//       "format": "int64",
27059	//       "location": "path",
27060	//       "required": true,
27061	//       "type": "string"
27062	//     },
27063	//     "profileId": {
27064	//       "description": "User profile ID associated with this request.",
27065	//       "format": "int64",
27066	//       "location": "path",
27067	//       "required": true,
27068	//       "type": "string"
27069	//     }
27070	//   },
27071	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields/{id}",
27072	//   "response": {
27073	//     "$ref": "CreativeField"
27074	//   },
27075	//   "scopes": [
27076	//     "https://www.googleapis.com/auth/dfatrafficking"
27077	//   ]
27078	// }
27079
27080}
27081
27082// method id "dfareporting.creativeFields.insert":
27083
27084type CreativeFieldsInsertCall struct {
27085	s             *Service
27086	profileId     int64
27087	creativefield *CreativeField
27088	urlParams_    gensupport.URLParams
27089	ctx_          context.Context
27090	header_       http.Header
27091}
27092
27093// Insert: Inserts a new creative field.
27094//
27095// - profileId: User profile ID associated with this request.
27096func (r *CreativeFieldsService) Insert(profileId int64, creativefield *CreativeField) *CreativeFieldsInsertCall {
27097	c := &CreativeFieldsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27098	c.profileId = profileId
27099	c.creativefield = creativefield
27100	return c
27101}
27102
27103// Fields allows partial responses to be retrieved. See
27104// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27105// for more information.
27106func (c *CreativeFieldsInsertCall) Fields(s ...googleapi.Field) *CreativeFieldsInsertCall {
27107	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27108	return c
27109}
27110
27111// Context sets the context to be used in this call's Do method. Any
27112// pending HTTP request will be aborted if the provided context is
27113// canceled.
27114func (c *CreativeFieldsInsertCall) Context(ctx context.Context) *CreativeFieldsInsertCall {
27115	c.ctx_ = ctx
27116	return c
27117}
27118
27119// Header returns an http.Header that can be modified by the caller to
27120// add HTTP headers to the request.
27121func (c *CreativeFieldsInsertCall) Header() http.Header {
27122	if c.header_ == nil {
27123		c.header_ = make(http.Header)
27124	}
27125	return c.header_
27126}
27127
27128func (c *CreativeFieldsInsertCall) doRequest(alt string) (*http.Response, error) {
27129	reqHeaders := make(http.Header)
27130	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27131	for k, v := range c.header_ {
27132		reqHeaders[k] = v
27133	}
27134	reqHeaders.Set("User-Agent", c.s.userAgent())
27135	var body io.Reader = nil
27136	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefield)
27137	if err != nil {
27138		return nil, err
27139	}
27140	reqHeaders.Set("Content-Type", "application/json")
27141	c.urlParams_.Set("alt", alt)
27142	c.urlParams_.Set("prettyPrint", "false")
27143	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields")
27144	urls += "?" + c.urlParams_.Encode()
27145	req, err := http.NewRequest("POST", urls, body)
27146	if err != nil {
27147		return nil, err
27148	}
27149	req.Header = reqHeaders
27150	googleapi.Expand(req.URL, map[string]string{
27151		"profileId": strconv.FormatInt(c.profileId, 10),
27152	})
27153	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27154}
27155
27156// Do executes the "dfareporting.creativeFields.insert" call.
27157// Exactly one of *CreativeField or error will be non-nil. Any non-2xx
27158// status code is an error. Response headers are in either
27159// *CreativeField.ServerResponse.Header or (if a response was returned
27160// at all) in error.(*googleapi.Error).Header. Use
27161// googleapi.IsNotModified to check whether the returned error was
27162// because http.StatusNotModified was returned.
27163func (c *CreativeFieldsInsertCall) Do(opts ...googleapi.CallOption) (*CreativeField, error) {
27164	gensupport.SetOptions(c.urlParams_, opts...)
27165	res, err := c.doRequest("json")
27166	if res != nil && res.StatusCode == http.StatusNotModified {
27167		if res.Body != nil {
27168			res.Body.Close()
27169		}
27170		return nil, &googleapi.Error{
27171			Code:   res.StatusCode,
27172			Header: res.Header,
27173		}
27174	}
27175	if err != nil {
27176		return nil, err
27177	}
27178	defer googleapi.CloseBody(res)
27179	if err := googleapi.CheckResponse(res); err != nil {
27180		return nil, err
27181	}
27182	ret := &CreativeField{
27183		ServerResponse: googleapi.ServerResponse{
27184			Header:         res.Header,
27185			HTTPStatusCode: res.StatusCode,
27186		},
27187	}
27188	target := &ret
27189	if err := gensupport.DecodeResponse(target, res); err != nil {
27190		return nil, err
27191	}
27192	return ret, nil
27193	// {
27194	//   "description": "Inserts a new creative field.",
27195	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields",
27196	//   "httpMethod": "POST",
27197	//   "id": "dfareporting.creativeFields.insert",
27198	//   "parameterOrder": [
27199	//     "profileId"
27200	//   ],
27201	//   "parameters": {
27202	//     "profileId": {
27203	//       "description": "User profile ID associated with this request.",
27204	//       "format": "int64",
27205	//       "location": "path",
27206	//       "required": true,
27207	//       "type": "string"
27208	//     }
27209	//   },
27210	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields",
27211	//   "request": {
27212	//     "$ref": "CreativeField"
27213	//   },
27214	//   "response": {
27215	//     "$ref": "CreativeField"
27216	//   },
27217	//   "scopes": [
27218	//     "https://www.googleapis.com/auth/dfatrafficking"
27219	//   ]
27220	// }
27221
27222}
27223
27224// method id "dfareporting.creativeFields.list":
27225
27226type CreativeFieldsListCall struct {
27227	s            *Service
27228	profileId    int64
27229	urlParams_   gensupport.URLParams
27230	ifNoneMatch_ string
27231	ctx_         context.Context
27232	header_      http.Header
27233}
27234
27235// List: Retrieves a list of creative fields, possibly filtered. This
27236// method supports paging.
27237//
27238// - profileId: User profile ID associated with this request.
27239func (r *CreativeFieldsService) List(profileId int64) *CreativeFieldsListCall {
27240	c := &CreativeFieldsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27241	c.profileId = profileId
27242	return c
27243}
27244
27245// AdvertiserIds sets the optional parameter "advertiserIds": Select
27246// only creative fields that belong to these advertisers.
27247func (c *CreativeFieldsListCall) AdvertiserIds(advertiserIds ...int64) *CreativeFieldsListCall {
27248	var advertiserIds_ []string
27249	for _, v := range advertiserIds {
27250		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
27251	}
27252	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
27253	return c
27254}
27255
27256// Ids sets the optional parameter "ids": Select only creative fields
27257// with these IDs.
27258func (c *CreativeFieldsListCall) Ids(ids ...int64) *CreativeFieldsListCall {
27259	var ids_ []string
27260	for _, v := range ids {
27261		ids_ = append(ids_, fmt.Sprint(v))
27262	}
27263	c.urlParams_.SetMulti("ids", ids_)
27264	return c
27265}
27266
27267// MaxResults sets the optional parameter "maxResults": Maximum number
27268// of results to return.
27269func (c *CreativeFieldsListCall) MaxResults(maxResults int64) *CreativeFieldsListCall {
27270	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
27271	return c
27272}
27273
27274// PageToken sets the optional parameter "pageToken": Value of the
27275// nextPageToken from the previous result page.
27276func (c *CreativeFieldsListCall) PageToken(pageToken string) *CreativeFieldsListCall {
27277	c.urlParams_.Set("pageToken", pageToken)
27278	return c
27279}
27280
27281// SearchString sets the optional parameter "searchString": Allows
27282// searching for creative fields by name or ID. Wildcards (*) are
27283// allowed. For example, "creativefield*2015" will return creative
27284// fields with names like "creativefield June 2015", "creativefield
27285// April 2015", or simply "creativefield 2015". Most of the searches
27286// also add wild-cards implicitly at the start and the end of the search
27287// string. For example, a search string of "creativefield" will match
27288// creative fields with the name "my creativefield", "creativefield
27289// 2015", or simply "creativefield".
27290func (c *CreativeFieldsListCall) SearchString(searchString string) *CreativeFieldsListCall {
27291	c.urlParams_.Set("searchString", searchString)
27292	return c
27293}
27294
27295// SortField sets the optional parameter "sortField": Field by which to
27296// sort the list.
27297//
27298// Possible values:
27299//   "ID" (default)
27300//   "NAME"
27301func (c *CreativeFieldsListCall) SortField(sortField string) *CreativeFieldsListCall {
27302	c.urlParams_.Set("sortField", sortField)
27303	return c
27304}
27305
27306// SortOrder sets the optional parameter "sortOrder": Order of sorted
27307// results.
27308//
27309// Possible values:
27310//   "ASCENDING" (default)
27311//   "DESCENDING"
27312func (c *CreativeFieldsListCall) SortOrder(sortOrder string) *CreativeFieldsListCall {
27313	c.urlParams_.Set("sortOrder", sortOrder)
27314	return c
27315}
27316
27317// Fields allows partial responses to be retrieved. See
27318// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27319// for more information.
27320func (c *CreativeFieldsListCall) Fields(s ...googleapi.Field) *CreativeFieldsListCall {
27321	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27322	return c
27323}
27324
27325// IfNoneMatch sets the optional parameter which makes the operation
27326// fail if the object's ETag matches the given value. This is useful for
27327// getting updates only after the object has changed since the last
27328// request. Use googleapi.IsNotModified to check whether the response
27329// error from Do is the result of In-None-Match.
27330func (c *CreativeFieldsListCall) IfNoneMatch(entityTag string) *CreativeFieldsListCall {
27331	c.ifNoneMatch_ = entityTag
27332	return c
27333}
27334
27335// Context sets the context to be used in this call's Do method. Any
27336// pending HTTP request will be aborted if the provided context is
27337// canceled.
27338func (c *CreativeFieldsListCall) Context(ctx context.Context) *CreativeFieldsListCall {
27339	c.ctx_ = ctx
27340	return c
27341}
27342
27343// Header returns an http.Header that can be modified by the caller to
27344// add HTTP headers to the request.
27345func (c *CreativeFieldsListCall) Header() http.Header {
27346	if c.header_ == nil {
27347		c.header_ = make(http.Header)
27348	}
27349	return c.header_
27350}
27351
27352func (c *CreativeFieldsListCall) doRequest(alt string) (*http.Response, error) {
27353	reqHeaders := make(http.Header)
27354	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27355	for k, v := range c.header_ {
27356		reqHeaders[k] = v
27357	}
27358	reqHeaders.Set("User-Agent", c.s.userAgent())
27359	if c.ifNoneMatch_ != "" {
27360		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27361	}
27362	var body io.Reader = nil
27363	c.urlParams_.Set("alt", alt)
27364	c.urlParams_.Set("prettyPrint", "false")
27365	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields")
27366	urls += "?" + c.urlParams_.Encode()
27367	req, err := http.NewRequest("GET", urls, body)
27368	if err != nil {
27369		return nil, err
27370	}
27371	req.Header = reqHeaders
27372	googleapi.Expand(req.URL, map[string]string{
27373		"profileId": strconv.FormatInt(c.profileId, 10),
27374	})
27375	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27376}
27377
27378// Do executes the "dfareporting.creativeFields.list" call.
27379// Exactly one of *CreativeFieldsListResponse or error will be non-nil.
27380// Any non-2xx status code is an error. Response headers are in either
27381// *CreativeFieldsListResponse.ServerResponse.Header or (if a response
27382// was returned at all) in error.(*googleapi.Error).Header. Use
27383// googleapi.IsNotModified to check whether the returned error was
27384// because http.StatusNotModified was returned.
27385func (c *CreativeFieldsListCall) Do(opts ...googleapi.CallOption) (*CreativeFieldsListResponse, error) {
27386	gensupport.SetOptions(c.urlParams_, opts...)
27387	res, err := c.doRequest("json")
27388	if res != nil && res.StatusCode == http.StatusNotModified {
27389		if res.Body != nil {
27390			res.Body.Close()
27391		}
27392		return nil, &googleapi.Error{
27393			Code:   res.StatusCode,
27394			Header: res.Header,
27395		}
27396	}
27397	if err != nil {
27398		return nil, err
27399	}
27400	defer googleapi.CloseBody(res)
27401	if err := googleapi.CheckResponse(res); err != nil {
27402		return nil, err
27403	}
27404	ret := &CreativeFieldsListResponse{
27405		ServerResponse: googleapi.ServerResponse{
27406			Header:         res.Header,
27407			HTTPStatusCode: res.StatusCode,
27408		},
27409	}
27410	target := &ret
27411	if err := gensupport.DecodeResponse(target, res); err != nil {
27412		return nil, err
27413	}
27414	return ret, nil
27415	// {
27416	//   "description": "Retrieves a list of creative fields, possibly filtered. This method supports paging.",
27417	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields",
27418	//   "httpMethod": "GET",
27419	//   "id": "dfareporting.creativeFields.list",
27420	//   "parameterOrder": [
27421	//     "profileId"
27422	//   ],
27423	//   "parameters": {
27424	//     "advertiserIds": {
27425	//       "description": "Select only creative fields that belong to these advertisers.",
27426	//       "format": "int64",
27427	//       "location": "query",
27428	//       "repeated": true,
27429	//       "type": "string"
27430	//     },
27431	//     "ids": {
27432	//       "description": "Select only creative fields with these IDs.",
27433	//       "format": "int64",
27434	//       "location": "query",
27435	//       "repeated": true,
27436	//       "type": "string"
27437	//     },
27438	//     "maxResults": {
27439	//       "default": "1000",
27440	//       "description": "Maximum number of results to return.",
27441	//       "format": "int32",
27442	//       "location": "query",
27443	//       "maximum": "1000",
27444	//       "minimum": "0",
27445	//       "type": "integer"
27446	//     },
27447	//     "pageToken": {
27448	//       "description": "Value of the nextPageToken from the previous result page.",
27449	//       "location": "query",
27450	//       "type": "string"
27451	//     },
27452	//     "profileId": {
27453	//       "description": "User profile ID associated with this request.",
27454	//       "format": "int64",
27455	//       "location": "path",
27456	//       "required": true,
27457	//       "type": "string"
27458	//     },
27459	//     "searchString": {
27460	//       "description": "Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, \"creativefield*2015\" will return creative fields with names like \"creativefield June 2015\", \"creativefield April 2015\", or simply \"creativefield 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativefield\" will match creative fields with the name \"my creativefield\", \"creativefield 2015\", or simply \"creativefield\".",
27461	//       "location": "query",
27462	//       "type": "string"
27463	//     },
27464	//     "sortField": {
27465	//       "default": "ID",
27466	//       "description": "Field by which to sort the list.",
27467	//       "enum": [
27468	//         "ID",
27469	//         "NAME"
27470	//       ],
27471	//       "enumDescriptions": [
27472	//         "",
27473	//         ""
27474	//       ],
27475	//       "location": "query",
27476	//       "type": "string"
27477	//     },
27478	//     "sortOrder": {
27479	//       "default": "ASCENDING",
27480	//       "description": "Order of sorted results.",
27481	//       "enum": [
27482	//         "ASCENDING",
27483	//         "DESCENDING"
27484	//       ],
27485	//       "enumDescriptions": [
27486	//         "",
27487	//         ""
27488	//       ],
27489	//       "location": "query",
27490	//       "type": "string"
27491	//     }
27492	//   },
27493	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields",
27494	//   "response": {
27495	//     "$ref": "CreativeFieldsListResponse"
27496	//   },
27497	//   "scopes": [
27498	//     "https://www.googleapis.com/auth/dfatrafficking"
27499	//   ]
27500	// }
27501
27502}
27503
27504// Pages invokes f for each page of results.
27505// A non-nil error returned from f will halt the iteration.
27506// The provided context supersedes any context provided to the Context method.
27507func (c *CreativeFieldsListCall) Pages(ctx context.Context, f func(*CreativeFieldsListResponse) error) error {
27508	c.ctx_ = ctx
27509	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
27510	for {
27511		x, err := c.Do()
27512		if err != nil {
27513			return err
27514		}
27515		if err := f(x); err != nil {
27516			return err
27517		}
27518		if x.NextPageToken == "" {
27519			return nil
27520		}
27521		c.PageToken(x.NextPageToken)
27522	}
27523}
27524
27525// method id "dfareporting.creativeFields.patch":
27526
27527type CreativeFieldsPatchCall struct {
27528	s             *Service
27529	profileId     int64
27530	creativefield *CreativeField
27531	urlParams_    gensupport.URLParams
27532	ctx_          context.Context
27533	header_       http.Header
27534}
27535
27536// Patch: Updates an existing creative field. This method supports patch
27537// semantics.
27538//
27539// - id: CreativeField ID.
27540// - profileId: User profile ID associated with this request.
27541func (r *CreativeFieldsService) Patch(profileId int64, id int64, creativefield *CreativeField) *CreativeFieldsPatchCall {
27542	c := &CreativeFieldsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27543	c.profileId = profileId
27544	c.urlParams_.Set("id", fmt.Sprint(id))
27545	c.creativefield = creativefield
27546	return c
27547}
27548
27549// Fields allows partial responses to be retrieved. See
27550// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27551// for more information.
27552func (c *CreativeFieldsPatchCall) Fields(s ...googleapi.Field) *CreativeFieldsPatchCall {
27553	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27554	return c
27555}
27556
27557// Context sets the context to be used in this call's Do method. Any
27558// pending HTTP request will be aborted if the provided context is
27559// canceled.
27560func (c *CreativeFieldsPatchCall) Context(ctx context.Context) *CreativeFieldsPatchCall {
27561	c.ctx_ = ctx
27562	return c
27563}
27564
27565// Header returns an http.Header that can be modified by the caller to
27566// add HTTP headers to the request.
27567func (c *CreativeFieldsPatchCall) Header() http.Header {
27568	if c.header_ == nil {
27569		c.header_ = make(http.Header)
27570	}
27571	return c.header_
27572}
27573
27574func (c *CreativeFieldsPatchCall) doRequest(alt string) (*http.Response, error) {
27575	reqHeaders := make(http.Header)
27576	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27577	for k, v := range c.header_ {
27578		reqHeaders[k] = v
27579	}
27580	reqHeaders.Set("User-Agent", c.s.userAgent())
27581	var body io.Reader = nil
27582	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefield)
27583	if err != nil {
27584		return nil, err
27585	}
27586	reqHeaders.Set("Content-Type", "application/json")
27587	c.urlParams_.Set("alt", alt)
27588	c.urlParams_.Set("prettyPrint", "false")
27589	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields")
27590	urls += "?" + c.urlParams_.Encode()
27591	req, err := http.NewRequest("PATCH", urls, body)
27592	if err != nil {
27593		return nil, err
27594	}
27595	req.Header = reqHeaders
27596	googleapi.Expand(req.URL, map[string]string{
27597		"profileId": strconv.FormatInt(c.profileId, 10),
27598	})
27599	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27600}
27601
27602// Do executes the "dfareporting.creativeFields.patch" call.
27603// Exactly one of *CreativeField or error will be non-nil. Any non-2xx
27604// status code is an error. Response headers are in either
27605// *CreativeField.ServerResponse.Header or (if a response was returned
27606// at all) in error.(*googleapi.Error).Header. Use
27607// googleapi.IsNotModified to check whether the returned error was
27608// because http.StatusNotModified was returned.
27609func (c *CreativeFieldsPatchCall) Do(opts ...googleapi.CallOption) (*CreativeField, error) {
27610	gensupport.SetOptions(c.urlParams_, opts...)
27611	res, err := c.doRequest("json")
27612	if res != nil && res.StatusCode == http.StatusNotModified {
27613		if res.Body != nil {
27614			res.Body.Close()
27615		}
27616		return nil, &googleapi.Error{
27617			Code:   res.StatusCode,
27618			Header: res.Header,
27619		}
27620	}
27621	if err != nil {
27622		return nil, err
27623	}
27624	defer googleapi.CloseBody(res)
27625	if err := googleapi.CheckResponse(res); err != nil {
27626		return nil, err
27627	}
27628	ret := &CreativeField{
27629		ServerResponse: googleapi.ServerResponse{
27630			Header:         res.Header,
27631			HTTPStatusCode: res.StatusCode,
27632		},
27633	}
27634	target := &ret
27635	if err := gensupport.DecodeResponse(target, res); err != nil {
27636		return nil, err
27637	}
27638	return ret, nil
27639	// {
27640	//   "description": "Updates an existing creative field. This method supports patch semantics.",
27641	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields",
27642	//   "httpMethod": "PATCH",
27643	//   "id": "dfareporting.creativeFields.patch",
27644	//   "parameterOrder": [
27645	//     "profileId",
27646	//     "id"
27647	//   ],
27648	//   "parameters": {
27649	//     "id": {
27650	//       "description": "CreativeField ID.",
27651	//       "format": "int64",
27652	//       "location": "query",
27653	//       "required": true,
27654	//       "type": "string"
27655	//     },
27656	//     "profileId": {
27657	//       "description": "User profile ID associated with this request.",
27658	//       "format": "int64",
27659	//       "location": "path",
27660	//       "required": true,
27661	//       "type": "string"
27662	//     }
27663	//   },
27664	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields",
27665	//   "request": {
27666	//     "$ref": "CreativeField"
27667	//   },
27668	//   "response": {
27669	//     "$ref": "CreativeField"
27670	//   },
27671	//   "scopes": [
27672	//     "https://www.googleapis.com/auth/dfatrafficking"
27673	//   ]
27674	// }
27675
27676}
27677
27678// method id "dfareporting.creativeFields.update":
27679
27680type CreativeFieldsUpdateCall struct {
27681	s             *Service
27682	profileId     int64
27683	creativefield *CreativeField
27684	urlParams_    gensupport.URLParams
27685	ctx_          context.Context
27686	header_       http.Header
27687}
27688
27689// Update: Updates an existing creative field.
27690//
27691// - profileId: User profile ID associated with this request.
27692func (r *CreativeFieldsService) Update(profileId int64, creativefield *CreativeField) *CreativeFieldsUpdateCall {
27693	c := &CreativeFieldsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27694	c.profileId = profileId
27695	c.creativefield = creativefield
27696	return c
27697}
27698
27699// Fields allows partial responses to be retrieved. See
27700// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27701// for more information.
27702func (c *CreativeFieldsUpdateCall) Fields(s ...googleapi.Field) *CreativeFieldsUpdateCall {
27703	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27704	return c
27705}
27706
27707// Context sets the context to be used in this call's Do method. Any
27708// pending HTTP request will be aborted if the provided context is
27709// canceled.
27710func (c *CreativeFieldsUpdateCall) Context(ctx context.Context) *CreativeFieldsUpdateCall {
27711	c.ctx_ = ctx
27712	return c
27713}
27714
27715// Header returns an http.Header that can be modified by the caller to
27716// add HTTP headers to the request.
27717func (c *CreativeFieldsUpdateCall) Header() http.Header {
27718	if c.header_ == nil {
27719		c.header_ = make(http.Header)
27720	}
27721	return c.header_
27722}
27723
27724func (c *CreativeFieldsUpdateCall) doRequest(alt string) (*http.Response, error) {
27725	reqHeaders := make(http.Header)
27726	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27727	for k, v := range c.header_ {
27728		reqHeaders[k] = v
27729	}
27730	reqHeaders.Set("User-Agent", c.s.userAgent())
27731	var body io.Reader = nil
27732	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefield)
27733	if err != nil {
27734		return nil, err
27735	}
27736	reqHeaders.Set("Content-Type", "application/json")
27737	c.urlParams_.Set("alt", alt)
27738	c.urlParams_.Set("prettyPrint", "false")
27739	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeFields")
27740	urls += "?" + c.urlParams_.Encode()
27741	req, err := http.NewRequest("PUT", urls, body)
27742	if err != nil {
27743		return nil, err
27744	}
27745	req.Header = reqHeaders
27746	googleapi.Expand(req.URL, map[string]string{
27747		"profileId": strconv.FormatInt(c.profileId, 10),
27748	})
27749	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27750}
27751
27752// Do executes the "dfareporting.creativeFields.update" call.
27753// Exactly one of *CreativeField or error will be non-nil. Any non-2xx
27754// status code is an error. Response headers are in either
27755// *CreativeField.ServerResponse.Header or (if a response was returned
27756// at all) in error.(*googleapi.Error).Header. Use
27757// googleapi.IsNotModified to check whether the returned error was
27758// because http.StatusNotModified was returned.
27759func (c *CreativeFieldsUpdateCall) Do(opts ...googleapi.CallOption) (*CreativeField, error) {
27760	gensupport.SetOptions(c.urlParams_, opts...)
27761	res, err := c.doRequest("json")
27762	if res != nil && res.StatusCode == http.StatusNotModified {
27763		if res.Body != nil {
27764			res.Body.Close()
27765		}
27766		return nil, &googleapi.Error{
27767			Code:   res.StatusCode,
27768			Header: res.Header,
27769		}
27770	}
27771	if err != nil {
27772		return nil, err
27773	}
27774	defer googleapi.CloseBody(res)
27775	if err := googleapi.CheckResponse(res); err != nil {
27776		return nil, err
27777	}
27778	ret := &CreativeField{
27779		ServerResponse: googleapi.ServerResponse{
27780			Header:         res.Header,
27781			HTTPStatusCode: res.StatusCode,
27782		},
27783	}
27784	target := &ret
27785	if err := gensupport.DecodeResponse(target, res); err != nil {
27786		return nil, err
27787	}
27788	return ret, nil
27789	// {
27790	//   "description": "Updates an existing creative field.",
27791	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields",
27792	//   "httpMethod": "PUT",
27793	//   "id": "dfareporting.creativeFields.update",
27794	//   "parameterOrder": [
27795	//     "profileId"
27796	//   ],
27797	//   "parameters": {
27798	//     "profileId": {
27799	//       "description": "User profile ID associated with this request.",
27800	//       "format": "int64",
27801	//       "location": "path",
27802	//       "required": true,
27803	//       "type": "string"
27804	//     }
27805	//   },
27806	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeFields",
27807	//   "request": {
27808	//     "$ref": "CreativeField"
27809	//   },
27810	//   "response": {
27811	//     "$ref": "CreativeField"
27812	//   },
27813	//   "scopes": [
27814	//     "https://www.googleapis.com/auth/dfatrafficking"
27815	//   ]
27816	// }
27817
27818}
27819
27820// method id "dfareporting.creativeGroups.get":
27821
27822type CreativeGroupsGetCall struct {
27823	s            *Service
27824	profileId    int64
27825	id           int64
27826	urlParams_   gensupport.URLParams
27827	ifNoneMatch_ string
27828	ctx_         context.Context
27829	header_      http.Header
27830}
27831
27832// Get: Gets one creative group by ID.
27833//
27834// - id: Creative group ID.
27835// - profileId: User profile ID associated with this request.
27836func (r *CreativeGroupsService) Get(profileId int64, id int64) *CreativeGroupsGetCall {
27837	c := &CreativeGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27838	c.profileId = profileId
27839	c.id = id
27840	return c
27841}
27842
27843// Fields allows partial responses to be retrieved. See
27844// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27845// for more information.
27846func (c *CreativeGroupsGetCall) Fields(s ...googleapi.Field) *CreativeGroupsGetCall {
27847	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27848	return c
27849}
27850
27851// IfNoneMatch sets the optional parameter which makes the operation
27852// fail if the object's ETag matches the given value. This is useful for
27853// getting updates only after the object has changed since the last
27854// request. Use googleapi.IsNotModified to check whether the response
27855// error from Do is the result of In-None-Match.
27856func (c *CreativeGroupsGetCall) IfNoneMatch(entityTag string) *CreativeGroupsGetCall {
27857	c.ifNoneMatch_ = entityTag
27858	return c
27859}
27860
27861// Context sets the context to be used in this call's Do method. Any
27862// pending HTTP request will be aborted if the provided context is
27863// canceled.
27864func (c *CreativeGroupsGetCall) Context(ctx context.Context) *CreativeGroupsGetCall {
27865	c.ctx_ = ctx
27866	return c
27867}
27868
27869// Header returns an http.Header that can be modified by the caller to
27870// add HTTP headers to the request.
27871func (c *CreativeGroupsGetCall) Header() http.Header {
27872	if c.header_ == nil {
27873		c.header_ = make(http.Header)
27874	}
27875	return c.header_
27876}
27877
27878func (c *CreativeGroupsGetCall) doRequest(alt string) (*http.Response, error) {
27879	reqHeaders := make(http.Header)
27880	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27881	for k, v := range c.header_ {
27882		reqHeaders[k] = v
27883	}
27884	reqHeaders.Set("User-Agent", c.s.userAgent())
27885	if c.ifNoneMatch_ != "" {
27886		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27887	}
27888	var body io.Reader = nil
27889	c.urlParams_.Set("alt", alt)
27890	c.urlParams_.Set("prettyPrint", "false")
27891	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups/{id}")
27892	urls += "?" + c.urlParams_.Encode()
27893	req, err := http.NewRequest("GET", urls, body)
27894	if err != nil {
27895		return nil, err
27896	}
27897	req.Header = reqHeaders
27898	googleapi.Expand(req.URL, map[string]string{
27899		"profileId": strconv.FormatInt(c.profileId, 10),
27900		"id":        strconv.FormatInt(c.id, 10),
27901	})
27902	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27903}
27904
27905// Do executes the "dfareporting.creativeGroups.get" call.
27906// Exactly one of *CreativeGroup or error will be non-nil. Any non-2xx
27907// status code is an error. Response headers are in either
27908// *CreativeGroup.ServerResponse.Header or (if a response was returned
27909// at all) in error.(*googleapi.Error).Header. Use
27910// googleapi.IsNotModified to check whether the returned error was
27911// because http.StatusNotModified was returned.
27912func (c *CreativeGroupsGetCall) Do(opts ...googleapi.CallOption) (*CreativeGroup, error) {
27913	gensupport.SetOptions(c.urlParams_, opts...)
27914	res, err := c.doRequest("json")
27915	if res != nil && res.StatusCode == http.StatusNotModified {
27916		if res.Body != nil {
27917			res.Body.Close()
27918		}
27919		return nil, &googleapi.Error{
27920			Code:   res.StatusCode,
27921			Header: res.Header,
27922		}
27923	}
27924	if err != nil {
27925		return nil, err
27926	}
27927	defer googleapi.CloseBody(res)
27928	if err := googleapi.CheckResponse(res); err != nil {
27929		return nil, err
27930	}
27931	ret := &CreativeGroup{
27932		ServerResponse: googleapi.ServerResponse{
27933			Header:         res.Header,
27934			HTTPStatusCode: res.StatusCode,
27935		},
27936	}
27937	target := &ret
27938	if err := gensupport.DecodeResponse(target, res); err != nil {
27939		return nil, err
27940	}
27941	return ret, nil
27942	// {
27943	//   "description": "Gets one creative group by ID.",
27944	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups/{id}",
27945	//   "httpMethod": "GET",
27946	//   "id": "dfareporting.creativeGroups.get",
27947	//   "parameterOrder": [
27948	//     "profileId",
27949	//     "id"
27950	//   ],
27951	//   "parameters": {
27952	//     "id": {
27953	//       "description": "Creative group ID.",
27954	//       "format": "int64",
27955	//       "location": "path",
27956	//       "required": true,
27957	//       "type": "string"
27958	//     },
27959	//     "profileId": {
27960	//       "description": "User profile ID associated with this request.",
27961	//       "format": "int64",
27962	//       "location": "path",
27963	//       "required": true,
27964	//       "type": "string"
27965	//     }
27966	//   },
27967	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups/{id}",
27968	//   "response": {
27969	//     "$ref": "CreativeGroup"
27970	//   },
27971	//   "scopes": [
27972	//     "https://www.googleapis.com/auth/dfatrafficking"
27973	//   ]
27974	// }
27975
27976}
27977
27978// method id "dfareporting.creativeGroups.insert":
27979
27980type CreativeGroupsInsertCall struct {
27981	s             *Service
27982	profileId     int64
27983	creativegroup *CreativeGroup
27984	urlParams_    gensupport.URLParams
27985	ctx_          context.Context
27986	header_       http.Header
27987}
27988
27989// Insert: Inserts a new creative group.
27990//
27991// - profileId: User profile ID associated with this request.
27992func (r *CreativeGroupsService) Insert(profileId int64, creativegroup *CreativeGroup) *CreativeGroupsInsertCall {
27993	c := &CreativeGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27994	c.profileId = profileId
27995	c.creativegroup = creativegroup
27996	return c
27997}
27998
27999// Fields allows partial responses to be retrieved. See
28000// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28001// for more information.
28002func (c *CreativeGroupsInsertCall) Fields(s ...googleapi.Field) *CreativeGroupsInsertCall {
28003	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28004	return c
28005}
28006
28007// Context sets the context to be used in this call's Do method. Any
28008// pending HTTP request will be aborted if the provided context is
28009// canceled.
28010func (c *CreativeGroupsInsertCall) Context(ctx context.Context) *CreativeGroupsInsertCall {
28011	c.ctx_ = ctx
28012	return c
28013}
28014
28015// Header returns an http.Header that can be modified by the caller to
28016// add HTTP headers to the request.
28017func (c *CreativeGroupsInsertCall) Header() http.Header {
28018	if c.header_ == nil {
28019		c.header_ = make(http.Header)
28020	}
28021	return c.header_
28022}
28023
28024func (c *CreativeGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
28025	reqHeaders := make(http.Header)
28026	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28027	for k, v := range c.header_ {
28028		reqHeaders[k] = v
28029	}
28030	reqHeaders.Set("User-Agent", c.s.userAgent())
28031	var body io.Reader = nil
28032	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativegroup)
28033	if err != nil {
28034		return nil, err
28035	}
28036	reqHeaders.Set("Content-Type", "application/json")
28037	c.urlParams_.Set("alt", alt)
28038	c.urlParams_.Set("prettyPrint", "false")
28039	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups")
28040	urls += "?" + c.urlParams_.Encode()
28041	req, err := http.NewRequest("POST", urls, body)
28042	if err != nil {
28043		return nil, err
28044	}
28045	req.Header = reqHeaders
28046	googleapi.Expand(req.URL, map[string]string{
28047		"profileId": strconv.FormatInt(c.profileId, 10),
28048	})
28049	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28050}
28051
28052// Do executes the "dfareporting.creativeGroups.insert" call.
28053// Exactly one of *CreativeGroup or error will be non-nil. Any non-2xx
28054// status code is an error. Response headers are in either
28055// *CreativeGroup.ServerResponse.Header or (if a response was returned
28056// at all) in error.(*googleapi.Error).Header. Use
28057// googleapi.IsNotModified to check whether the returned error was
28058// because http.StatusNotModified was returned.
28059func (c *CreativeGroupsInsertCall) Do(opts ...googleapi.CallOption) (*CreativeGroup, error) {
28060	gensupport.SetOptions(c.urlParams_, opts...)
28061	res, err := c.doRequest("json")
28062	if res != nil && res.StatusCode == http.StatusNotModified {
28063		if res.Body != nil {
28064			res.Body.Close()
28065		}
28066		return nil, &googleapi.Error{
28067			Code:   res.StatusCode,
28068			Header: res.Header,
28069		}
28070	}
28071	if err != nil {
28072		return nil, err
28073	}
28074	defer googleapi.CloseBody(res)
28075	if err := googleapi.CheckResponse(res); err != nil {
28076		return nil, err
28077	}
28078	ret := &CreativeGroup{
28079		ServerResponse: googleapi.ServerResponse{
28080			Header:         res.Header,
28081			HTTPStatusCode: res.StatusCode,
28082		},
28083	}
28084	target := &ret
28085	if err := gensupport.DecodeResponse(target, res); err != nil {
28086		return nil, err
28087	}
28088	return ret, nil
28089	// {
28090	//   "description": "Inserts a new creative group.",
28091	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups",
28092	//   "httpMethod": "POST",
28093	//   "id": "dfareporting.creativeGroups.insert",
28094	//   "parameterOrder": [
28095	//     "profileId"
28096	//   ],
28097	//   "parameters": {
28098	//     "profileId": {
28099	//       "description": "User profile ID associated with this request.",
28100	//       "format": "int64",
28101	//       "location": "path",
28102	//       "required": true,
28103	//       "type": "string"
28104	//     }
28105	//   },
28106	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups",
28107	//   "request": {
28108	//     "$ref": "CreativeGroup"
28109	//   },
28110	//   "response": {
28111	//     "$ref": "CreativeGroup"
28112	//   },
28113	//   "scopes": [
28114	//     "https://www.googleapis.com/auth/dfatrafficking"
28115	//   ]
28116	// }
28117
28118}
28119
28120// method id "dfareporting.creativeGroups.list":
28121
28122type CreativeGroupsListCall struct {
28123	s            *Service
28124	profileId    int64
28125	urlParams_   gensupport.URLParams
28126	ifNoneMatch_ string
28127	ctx_         context.Context
28128	header_      http.Header
28129}
28130
28131// List: Retrieves a list of creative groups, possibly filtered. This
28132// method supports paging.
28133//
28134// - profileId: User profile ID associated with this request.
28135func (r *CreativeGroupsService) List(profileId int64) *CreativeGroupsListCall {
28136	c := &CreativeGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28137	c.profileId = profileId
28138	return c
28139}
28140
28141// AdvertiserIds sets the optional parameter "advertiserIds": Select
28142// only creative groups that belong to these advertisers.
28143func (c *CreativeGroupsListCall) AdvertiserIds(advertiserIds ...int64) *CreativeGroupsListCall {
28144	var advertiserIds_ []string
28145	for _, v := range advertiserIds {
28146		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
28147	}
28148	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
28149	return c
28150}
28151
28152// GroupNumber sets the optional parameter "groupNumber": Select only
28153// creative groups that belong to this subgroup.
28154func (c *CreativeGroupsListCall) GroupNumber(groupNumber int64) *CreativeGroupsListCall {
28155	c.urlParams_.Set("groupNumber", fmt.Sprint(groupNumber))
28156	return c
28157}
28158
28159// Ids sets the optional parameter "ids": Select only creative groups
28160// with these IDs.
28161func (c *CreativeGroupsListCall) Ids(ids ...int64) *CreativeGroupsListCall {
28162	var ids_ []string
28163	for _, v := range ids {
28164		ids_ = append(ids_, fmt.Sprint(v))
28165	}
28166	c.urlParams_.SetMulti("ids", ids_)
28167	return c
28168}
28169
28170// MaxResults sets the optional parameter "maxResults": Maximum number
28171// of results to return.
28172func (c *CreativeGroupsListCall) MaxResults(maxResults int64) *CreativeGroupsListCall {
28173	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28174	return c
28175}
28176
28177// PageToken sets the optional parameter "pageToken": Value of the
28178// nextPageToken from the previous result page.
28179func (c *CreativeGroupsListCall) PageToken(pageToken string) *CreativeGroupsListCall {
28180	c.urlParams_.Set("pageToken", pageToken)
28181	return c
28182}
28183
28184// SearchString sets the optional parameter "searchString": Allows
28185// searching for creative groups by name or ID. Wildcards (*) are
28186// allowed. For example, "creativegroup*2015" will return creative
28187// groups with names like "creativegroup June 2015", "creativegroup
28188// April 2015", or simply "creativegroup 2015". Most of the searches
28189// also add wild-cards implicitly at the start and the end of the search
28190// string. For example, a search string of "creativegroup" will match
28191// creative groups with the name "my creativegroup", "creativegroup
28192// 2015", or simply "creativegroup".
28193func (c *CreativeGroupsListCall) SearchString(searchString string) *CreativeGroupsListCall {
28194	c.urlParams_.Set("searchString", searchString)
28195	return c
28196}
28197
28198// SortField sets the optional parameter "sortField": Field by which to
28199// sort the list.
28200//
28201// Possible values:
28202//   "ID" (default)
28203//   "NAME"
28204func (c *CreativeGroupsListCall) SortField(sortField string) *CreativeGroupsListCall {
28205	c.urlParams_.Set("sortField", sortField)
28206	return c
28207}
28208
28209// SortOrder sets the optional parameter "sortOrder": Order of sorted
28210// results.
28211//
28212// Possible values:
28213//   "ASCENDING" (default)
28214//   "DESCENDING"
28215func (c *CreativeGroupsListCall) SortOrder(sortOrder string) *CreativeGroupsListCall {
28216	c.urlParams_.Set("sortOrder", sortOrder)
28217	return c
28218}
28219
28220// Fields allows partial responses to be retrieved. See
28221// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28222// for more information.
28223func (c *CreativeGroupsListCall) Fields(s ...googleapi.Field) *CreativeGroupsListCall {
28224	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28225	return c
28226}
28227
28228// IfNoneMatch sets the optional parameter which makes the operation
28229// fail if the object's ETag matches the given value. This is useful for
28230// getting updates only after the object has changed since the last
28231// request. Use googleapi.IsNotModified to check whether the response
28232// error from Do is the result of In-None-Match.
28233func (c *CreativeGroupsListCall) IfNoneMatch(entityTag string) *CreativeGroupsListCall {
28234	c.ifNoneMatch_ = entityTag
28235	return c
28236}
28237
28238// Context sets the context to be used in this call's Do method. Any
28239// pending HTTP request will be aborted if the provided context is
28240// canceled.
28241func (c *CreativeGroupsListCall) Context(ctx context.Context) *CreativeGroupsListCall {
28242	c.ctx_ = ctx
28243	return c
28244}
28245
28246// Header returns an http.Header that can be modified by the caller to
28247// add HTTP headers to the request.
28248func (c *CreativeGroupsListCall) Header() http.Header {
28249	if c.header_ == nil {
28250		c.header_ = make(http.Header)
28251	}
28252	return c.header_
28253}
28254
28255func (c *CreativeGroupsListCall) doRequest(alt string) (*http.Response, error) {
28256	reqHeaders := make(http.Header)
28257	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28258	for k, v := range c.header_ {
28259		reqHeaders[k] = v
28260	}
28261	reqHeaders.Set("User-Agent", c.s.userAgent())
28262	if c.ifNoneMatch_ != "" {
28263		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28264	}
28265	var body io.Reader = nil
28266	c.urlParams_.Set("alt", alt)
28267	c.urlParams_.Set("prettyPrint", "false")
28268	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups")
28269	urls += "?" + c.urlParams_.Encode()
28270	req, err := http.NewRequest("GET", urls, body)
28271	if err != nil {
28272		return nil, err
28273	}
28274	req.Header = reqHeaders
28275	googleapi.Expand(req.URL, map[string]string{
28276		"profileId": strconv.FormatInt(c.profileId, 10),
28277	})
28278	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28279}
28280
28281// Do executes the "dfareporting.creativeGroups.list" call.
28282// Exactly one of *CreativeGroupsListResponse or error will be non-nil.
28283// Any non-2xx status code is an error. Response headers are in either
28284// *CreativeGroupsListResponse.ServerResponse.Header or (if a response
28285// was returned at all) in error.(*googleapi.Error).Header. Use
28286// googleapi.IsNotModified to check whether the returned error was
28287// because http.StatusNotModified was returned.
28288func (c *CreativeGroupsListCall) Do(opts ...googleapi.CallOption) (*CreativeGroupsListResponse, error) {
28289	gensupport.SetOptions(c.urlParams_, opts...)
28290	res, err := c.doRequest("json")
28291	if res != nil && res.StatusCode == http.StatusNotModified {
28292		if res.Body != nil {
28293			res.Body.Close()
28294		}
28295		return nil, &googleapi.Error{
28296			Code:   res.StatusCode,
28297			Header: res.Header,
28298		}
28299	}
28300	if err != nil {
28301		return nil, err
28302	}
28303	defer googleapi.CloseBody(res)
28304	if err := googleapi.CheckResponse(res); err != nil {
28305		return nil, err
28306	}
28307	ret := &CreativeGroupsListResponse{
28308		ServerResponse: googleapi.ServerResponse{
28309			Header:         res.Header,
28310			HTTPStatusCode: res.StatusCode,
28311		},
28312	}
28313	target := &ret
28314	if err := gensupport.DecodeResponse(target, res); err != nil {
28315		return nil, err
28316	}
28317	return ret, nil
28318	// {
28319	//   "description": "Retrieves a list of creative groups, possibly filtered. This method supports paging.",
28320	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups",
28321	//   "httpMethod": "GET",
28322	//   "id": "dfareporting.creativeGroups.list",
28323	//   "parameterOrder": [
28324	//     "profileId"
28325	//   ],
28326	//   "parameters": {
28327	//     "advertiserIds": {
28328	//       "description": "Select only creative groups that belong to these advertisers.",
28329	//       "format": "int64",
28330	//       "location": "query",
28331	//       "repeated": true,
28332	//       "type": "string"
28333	//     },
28334	//     "groupNumber": {
28335	//       "description": "Select only creative groups that belong to this subgroup.",
28336	//       "format": "int32",
28337	//       "location": "query",
28338	//       "maximum": "2",
28339	//       "minimum": "1",
28340	//       "type": "integer"
28341	//     },
28342	//     "ids": {
28343	//       "description": "Select only creative groups with these IDs.",
28344	//       "format": "int64",
28345	//       "location": "query",
28346	//       "repeated": true,
28347	//       "type": "string"
28348	//     },
28349	//     "maxResults": {
28350	//       "default": "1000",
28351	//       "description": "Maximum number of results to return.",
28352	//       "format": "int32",
28353	//       "location": "query",
28354	//       "maximum": "1000",
28355	//       "minimum": "0",
28356	//       "type": "integer"
28357	//     },
28358	//     "pageToken": {
28359	//       "description": "Value of the nextPageToken from the previous result page.",
28360	//       "location": "query",
28361	//       "type": "string"
28362	//     },
28363	//     "profileId": {
28364	//       "description": "User profile ID associated with this request.",
28365	//       "format": "int64",
28366	//       "location": "path",
28367	//       "required": true,
28368	//       "type": "string"
28369	//     },
28370	//     "searchString": {
28371	//       "description": "Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, \"creativegroup*2015\" will return creative groups with names like \"creativegroup June 2015\", \"creativegroup April 2015\", or simply \"creativegroup 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativegroup\" will match creative groups with the name \"my creativegroup\", \"creativegroup 2015\", or simply \"creativegroup\".",
28372	//       "location": "query",
28373	//       "type": "string"
28374	//     },
28375	//     "sortField": {
28376	//       "default": "ID",
28377	//       "description": "Field by which to sort the list.",
28378	//       "enum": [
28379	//         "ID",
28380	//         "NAME"
28381	//       ],
28382	//       "enumDescriptions": [
28383	//         "",
28384	//         ""
28385	//       ],
28386	//       "location": "query",
28387	//       "type": "string"
28388	//     },
28389	//     "sortOrder": {
28390	//       "default": "ASCENDING",
28391	//       "description": "Order of sorted results.",
28392	//       "enum": [
28393	//         "ASCENDING",
28394	//         "DESCENDING"
28395	//       ],
28396	//       "enumDescriptions": [
28397	//         "",
28398	//         ""
28399	//       ],
28400	//       "location": "query",
28401	//       "type": "string"
28402	//     }
28403	//   },
28404	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups",
28405	//   "response": {
28406	//     "$ref": "CreativeGroupsListResponse"
28407	//   },
28408	//   "scopes": [
28409	//     "https://www.googleapis.com/auth/dfatrafficking"
28410	//   ]
28411	// }
28412
28413}
28414
28415// Pages invokes f for each page of results.
28416// A non-nil error returned from f will halt the iteration.
28417// The provided context supersedes any context provided to the Context method.
28418func (c *CreativeGroupsListCall) Pages(ctx context.Context, f func(*CreativeGroupsListResponse) error) error {
28419	c.ctx_ = ctx
28420	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
28421	for {
28422		x, err := c.Do()
28423		if err != nil {
28424			return err
28425		}
28426		if err := f(x); err != nil {
28427			return err
28428		}
28429		if x.NextPageToken == "" {
28430			return nil
28431		}
28432		c.PageToken(x.NextPageToken)
28433	}
28434}
28435
28436// method id "dfareporting.creativeGroups.patch":
28437
28438type CreativeGroupsPatchCall struct {
28439	s             *Service
28440	profileId     int64
28441	creativegroup *CreativeGroup
28442	urlParams_    gensupport.URLParams
28443	ctx_          context.Context
28444	header_       http.Header
28445}
28446
28447// Patch: Updates an existing creative group. This method supports patch
28448// semantics.
28449//
28450// - id: CreativeGroup ID.
28451// - profileId: User profile ID associated with this request.
28452func (r *CreativeGroupsService) Patch(profileId int64, id int64, creativegroup *CreativeGroup) *CreativeGroupsPatchCall {
28453	c := &CreativeGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28454	c.profileId = profileId
28455	c.urlParams_.Set("id", fmt.Sprint(id))
28456	c.creativegroup = creativegroup
28457	return c
28458}
28459
28460// Fields allows partial responses to be retrieved. See
28461// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28462// for more information.
28463func (c *CreativeGroupsPatchCall) Fields(s ...googleapi.Field) *CreativeGroupsPatchCall {
28464	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28465	return c
28466}
28467
28468// Context sets the context to be used in this call's Do method. Any
28469// pending HTTP request will be aborted if the provided context is
28470// canceled.
28471func (c *CreativeGroupsPatchCall) Context(ctx context.Context) *CreativeGroupsPatchCall {
28472	c.ctx_ = ctx
28473	return c
28474}
28475
28476// Header returns an http.Header that can be modified by the caller to
28477// add HTTP headers to the request.
28478func (c *CreativeGroupsPatchCall) Header() http.Header {
28479	if c.header_ == nil {
28480		c.header_ = make(http.Header)
28481	}
28482	return c.header_
28483}
28484
28485func (c *CreativeGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
28486	reqHeaders := make(http.Header)
28487	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28488	for k, v := range c.header_ {
28489		reqHeaders[k] = v
28490	}
28491	reqHeaders.Set("User-Agent", c.s.userAgent())
28492	var body io.Reader = nil
28493	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativegroup)
28494	if err != nil {
28495		return nil, err
28496	}
28497	reqHeaders.Set("Content-Type", "application/json")
28498	c.urlParams_.Set("alt", alt)
28499	c.urlParams_.Set("prettyPrint", "false")
28500	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups")
28501	urls += "?" + c.urlParams_.Encode()
28502	req, err := http.NewRequest("PATCH", urls, body)
28503	if err != nil {
28504		return nil, err
28505	}
28506	req.Header = reqHeaders
28507	googleapi.Expand(req.URL, map[string]string{
28508		"profileId": strconv.FormatInt(c.profileId, 10),
28509	})
28510	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28511}
28512
28513// Do executes the "dfareporting.creativeGroups.patch" call.
28514// Exactly one of *CreativeGroup or error will be non-nil. Any non-2xx
28515// status code is an error. Response headers are in either
28516// *CreativeGroup.ServerResponse.Header or (if a response was returned
28517// at all) in error.(*googleapi.Error).Header. Use
28518// googleapi.IsNotModified to check whether the returned error was
28519// because http.StatusNotModified was returned.
28520func (c *CreativeGroupsPatchCall) Do(opts ...googleapi.CallOption) (*CreativeGroup, error) {
28521	gensupport.SetOptions(c.urlParams_, opts...)
28522	res, err := c.doRequest("json")
28523	if res != nil && res.StatusCode == http.StatusNotModified {
28524		if res.Body != nil {
28525			res.Body.Close()
28526		}
28527		return nil, &googleapi.Error{
28528			Code:   res.StatusCode,
28529			Header: res.Header,
28530		}
28531	}
28532	if err != nil {
28533		return nil, err
28534	}
28535	defer googleapi.CloseBody(res)
28536	if err := googleapi.CheckResponse(res); err != nil {
28537		return nil, err
28538	}
28539	ret := &CreativeGroup{
28540		ServerResponse: googleapi.ServerResponse{
28541			Header:         res.Header,
28542			HTTPStatusCode: res.StatusCode,
28543		},
28544	}
28545	target := &ret
28546	if err := gensupport.DecodeResponse(target, res); err != nil {
28547		return nil, err
28548	}
28549	return ret, nil
28550	// {
28551	//   "description": "Updates an existing creative group. This method supports patch semantics.",
28552	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups",
28553	//   "httpMethod": "PATCH",
28554	//   "id": "dfareporting.creativeGroups.patch",
28555	//   "parameterOrder": [
28556	//     "profileId",
28557	//     "id"
28558	//   ],
28559	//   "parameters": {
28560	//     "id": {
28561	//       "description": "CreativeGroup ID.",
28562	//       "format": "int64",
28563	//       "location": "query",
28564	//       "required": true,
28565	//       "type": "string"
28566	//     },
28567	//     "profileId": {
28568	//       "description": "User profile ID associated with this request.",
28569	//       "format": "int64",
28570	//       "location": "path",
28571	//       "required": true,
28572	//       "type": "string"
28573	//     }
28574	//   },
28575	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups",
28576	//   "request": {
28577	//     "$ref": "CreativeGroup"
28578	//   },
28579	//   "response": {
28580	//     "$ref": "CreativeGroup"
28581	//   },
28582	//   "scopes": [
28583	//     "https://www.googleapis.com/auth/dfatrafficking"
28584	//   ]
28585	// }
28586
28587}
28588
28589// method id "dfareporting.creativeGroups.update":
28590
28591type CreativeGroupsUpdateCall struct {
28592	s             *Service
28593	profileId     int64
28594	creativegroup *CreativeGroup
28595	urlParams_    gensupport.URLParams
28596	ctx_          context.Context
28597	header_       http.Header
28598}
28599
28600// Update: Updates an existing creative group.
28601//
28602// - profileId: User profile ID associated with this request.
28603func (r *CreativeGroupsService) Update(profileId int64, creativegroup *CreativeGroup) *CreativeGroupsUpdateCall {
28604	c := &CreativeGroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28605	c.profileId = profileId
28606	c.creativegroup = creativegroup
28607	return c
28608}
28609
28610// Fields allows partial responses to be retrieved. See
28611// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28612// for more information.
28613func (c *CreativeGroupsUpdateCall) Fields(s ...googleapi.Field) *CreativeGroupsUpdateCall {
28614	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28615	return c
28616}
28617
28618// Context sets the context to be used in this call's Do method. Any
28619// pending HTTP request will be aborted if the provided context is
28620// canceled.
28621func (c *CreativeGroupsUpdateCall) Context(ctx context.Context) *CreativeGroupsUpdateCall {
28622	c.ctx_ = ctx
28623	return c
28624}
28625
28626// Header returns an http.Header that can be modified by the caller to
28627// add HTTP headers to the request.
28628func (c *CreativeGroupsUpdateCall) Header() http.Header {
28629	if c.header_ == nil {
28630		c.header_ = make(http.Header)
28631	}
28632	return c.header_
28633}
28634
28635func (c *CreativeGroupsUpdateCall) doRequest(alt string) (*http.Response, error) {
28636	reqHeaders := make(http.Header)
28637	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28638	for k, v := range c.header_ {
28639		reqHeaders[k] = v
28640	}
28641	reqHeaders.Set("User-Agent", c.s.userAgent())
28642	var body io.Reader = nil
28643	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativegroup)
28644	if err != nil {
28645		return nil, err
28646	}
28647	reqHeaders.Set("Content-Type", "application/json")
28648	c.urlParams_.Set("alt", alt)
28649	c.urlParams_.Set("prettyPrint", "false")
28650	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups")
28651	urls += "?" + c.urlParams_.Encode()
28652	req, err := http.NewRequest("PUT", urls, body)
28653	if err != nil {
28654		return nil, err
28655	}
28656	req.Header = reqHeaders
28657	googleapi.Expand(req.URL, map[string]string{
28658		"profileId": strconv.FormatInt(c.profileId, 10),
28659	})
28660	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28661}
28662
28663// Do executes the "dfareporting.creativeGroups.update" call.
28664// Exactly one of *CreativeGroup or error will be non-nil. Any non-2xx
28665// status code is an error. Response headers are in either
28666// *CreativeGroup.ServerResponse.Header or (if a response was returned
28667// at all) in error.(*googleapi.Error).Header. Use
28668// googleapi.IsNotModified to check whether the returned error was
28669// because http.StatusNotModified was returned.
28670func (c *CreativeGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*CreativeGroup, error) {
28671	gensupport.SetOptions(c.urlParams_, opts...)
28672	res, err := c.doRequest("json")
28673	if res != nil && res.StatusCode == http.StatusNotModified {
28674		if res.Body != nil {
28675			res.Body.Close()
28676		}
28677		return nil, &googleapi.Error{
28678			Code:   res.StatusCode,
28679			Header: res.Header,
28680		}
28681	}
28682	if err != nil {
28683		return nil, err
28684	}
28685	defer googleapi.CloseBody(res)
28686	if err := googleapi.CheckResponse(res); err != nil {
28687		return nil, err
28688	}
28689	ret := &CreativeGroup{
28690		ServerResponse: googleapi.ServerResponse{
28691			Header:         res.Header,
28692			HTTPStatusCode: res.StatusCode,
28693		},
28694	}
28695	target := &ret
28696	if err := gensupport.DecodeResponse(target, res); err != nil {
28697		return nil, err
28698	}
28699	return ret, nil
28700	// {
28701	//   "description": "Updates an existing creative group.",
28702	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups",
28703	//   "httpMethod": "PUT",
28704	//   "id": "dfareporting.creativeGroups.update",
28705	//   "parameterOrder": [
28706	//     "profileId"
28707	//   ],
28708	//   "parameters": {
28709	//     "profileId": {
28710	//       "description": "User profile ID associated with this request.",
28711	//       "format": "int64",
28712	//       "location": "path",
28713	//       "required": true,
28714	//       "type": "string"
28715	//     }
28716	//   },
28717	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creativeGroups",
28718	//   "request": {
28719	//     "$ref": "CreativeGroup"
28720	//   },
28721	//   "response": {
28722	//     "$ref": "CreativeGroup"
28723	//   },
28724	//   "scopes": [
28725	//     "https://www.googleapis.com/auth/dfatrafficking"
28726	//   ]
28727	// }
28728
28729}
28730
28731// method id "dfareporting.creatives.get":
28732
28733type CreativesGetCall struct {
28734	s            *Service
28735	profileId    int64
28736	id           int64
28737	urlParams_   gensupport.URLParams
28738	ifNoneMatch_ string
28739	ctx_         context.Context
28740	header_      http.Header
28741}
28742
28743// Get: Gets one creative by ID.
28744//
28745// - id: Creative ID.
28746// - profileId: User profile ID associated with this request.
28747func (r *CreativesService) Get(profileId int64, id int64) *CreativesGetCall {
28748	c := &CreativesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28749	c.profileId = profileId
28750	c.id = id
28751	return c
28752}
28753
28754// Fields allows partial responses to be retrieved. See
28755// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28756// for more information.
28757func (c *CreativesGetCall) Fields(s ...googleapi.Field) *CreativesGetCall {
28758	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28759	return c
28760}
28761
28762// IfNoneMatch sets the optional parameter which makes the operation
28763// fail if the object's ETag matches the given value. This is useful for
28764// getting updates only after the object has changed since the last
28765// request. Use googleapi.IsNotModified to check whether the response
28766// error from Do is the result of In-None-Match.
28767func (c *CreativesGetCall) IfNoneMatch(entityTag string) *CreativesGetCall {
28768	c.ifNoneMatch_ = entityTag
28769	return c
28770}
28771
28772// Context sets the context to be used in this call's Do method. Any
28773// pending HTTP request will be aborted if the provided context is
28774// canceled.
28775func (c *CreativesGetCall) Context(ctx context.Context) *CreativesGetCall {
28776	c.ctx_ = ctx
28777	return c
28778}
28779
28780// Header returns an http.Header that can be modified by the caller to
28781// add HTTP headers to the request.
28782func (c *CreativesGetCall) Header() http.Header {
28783	if c.header_ == nil {
28784		c.header_ = make(http.Header)
28785	}
28786	return c.header_
28787}
28788
28789func (c *CreativesGetCall) doRequest(alt string) (*http.Response, error) {
28790	reqHeaders := make(http.Header)
28791	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28792	for k, v := range c.header_ {
28793		reqHeaders[k] = v
28794	}
28795	reqHeaders.Set("User-Agent", c.s.userAgent())
28796	if c.ifNoneMatch_ != "" {
28797		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28798	}
28799	var body io.Reader = nil
28800	c.urlParams_.Set("alt", alt)
28801	c.urlParams_.Set("prettyPrint", "false")
28802	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creatives/{id}")
28803	urls += "?" + c.urlParams_.Encode()
28804	req, err := http.NewRequest("GET", urls, body)
28805	if err != nil {
28806		return nil, err
28807	}
28808	req.Header = reqHeaders
28809	googleapi.Expand(req.URL, map[string]string{
28810		"profileId": strconv.FormatInt(c.profileId, 10),
28811		"id":        strconv.FormatInt(c.id, 10),
28812	})
28813	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28814}
28815
28816// Do executes the "dfareporting.creatives.get" call.
28817// Exactly one of *Creative or error will be non-nil. Any non-2xx status
28818// code is an error. Response headers are in either
28819// *Creative.ServerResponse.Header or (if a response was returned at
28820// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
28821// to check whether the returned error was because
28822// http.StatusNotModified was returned.
28823func (c *CreativesGetCall) Do(opts ...googleapi.CallOption) (*Creative, error) {
28824	gensupport.SetOptions(c.urlParams_, opts...)
28825	res, err := c.doRequest("json")
28826	if res != nil && res.StatusCode == http.StatusNotModified {
28827		if res.Body != nil {
28828			res.Body.Close()
28829		}
28830		return nil, &googleapi.Error{
28831			Code:   res.StatusCode,
28832			Header: res.Header,
28833		}
28834	}
28835	if err != nil {
28836		return nil, err
28837	}
28838	defer googleapi.CloseBody(res)
28839	if err := googleapi.CheckResponse(res); err != nil {
28840		return nil, err
28841	}
28842	ret := &Creative{
28843		ServerResponse: googleapi.ServerResponse{
28844			Header:         res.Header,
28845			HTTPStatusCode: res.StatusCode,
28846		},
28847	}
28848	target := &ret
28849	if err := gensupport.DecodeResponse(target, res); err != nil {
28850		return nil, err
28851	}
28852	return ret, nil
28853	// {
28854	//   "description": "Gets one creative by ID.",
28855	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creatives/{id}",
28856	//   "httpMethod": "GET",
28857	//   "id": "dfareporting.creatives.get",
28858	//   "parameterOrder": [
28859	//     "profileId",
28860	//     "id"
28861	//   ],
28862	//   "parameters": {
28863	//     "id": {
28864	//       "description": "Creative ID.",
28865	//       "format": "int64",
28866	//       "location": "path",
28867	//       "required": true,
28868	//       "type": "string"
28869	//     },
28870	//     "profileId": {
28871	//       "description": "User profile ID associated with this request.",
28872	//       "format": "int64",
28873	//       "location": "path",
28874	//       "required": true,
28875	//       "type": "string"
28876	//     }
28877	//   },
28878	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creatives/{id}",
28879	//   "response": {
28880	//     "$ref": "Creative"
28881	//   },
28882	//   "scopes": [
28883	//     "https://www.googleapis.com/auth/dfatrafficking"
28884	//   ]
28885	// }
28886
28887}
28888
28889// method id "dfareporting.creatives.insert":
28890
28891type CreativesInsertCall struct {
28892	s          *Service
28893	profileId  int64
28894	creative   *Creative
28895	urlParams_ gensupport.URLParams
28896	ctx_       context.Context
28897	header_    http.Header
28898}
28899
28900// Insert: Inserts a new creative.
28901//
28902// - profileId: User profile ID associated with this request.
28903func (r *CreativesService) Insert(profileId int64, creative *Creative) *CreativesInsertCall {
28904	c := &CreativesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28905	c.profileId = profileId
28906	c.creative = creative
28907	return c
28908}
28909
28910// Fields allows partial responses to be retrieved. See
28911// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28912// for more information.
28913func (c *CreativesInsertCall) Fields(s ...googleapi.Field) *CreativesInsertCall {
28914	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28915	return c
28916}
28917
28918// Context sets the context to be used in this call's Do method. Any
28919// pending HTTP request will be aborted if the provided context is
28920// canceled.
28921func (c *CreativesInsertCall) Context(ctx context.Context) *CreativesInsertCall {
28922	c.ctx_ = ctx
28923	return c
28924}
28925
28926// Header returns an http.Header that can be modified by the caller to
28927// add HTTP headers to the request.
28928func (c *CreativesInsertCall) Header() http.Header {
28929	if c.header_ == nil {
28930		c.header_ = make(http.Header)
28931	}
28932	return c.header_
28933}
28934
28935func (c *CreativesInsertCall) doRequest(alt string) (*http.Response, error) {
28936	reqHeaders := make(http.Header)
28937	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28938	for k, v := range c.header_ {
28939		reqHeaders[k] = v
28940	}
28941	reqHeaders.Set("User-Agent", c.s.userAgent())
28942	var body io.Reader = nil
28943	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creative)
28944	if err != nil {
28945		return nil, err
28946	}
28947	reqHeaders.Set("Content-Type", "application/json")
28948	c.urlParams_.Set("alt", alt)
28949	c.urlParams_.Set("prettyPrint", "false")
28950	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creatives")
28951	urls += "?" + c.urlParams_.Encode()
28952	req, err := http.NewRequest("POST", urls, body)
28953	if err != nil {
28954		return nil, err
28955	}
28956	req.Header = reqHeaders
28957	googleapi.Expand(req.URL, map[string]string{
28958		"profileId": strconv.FormatInt(c.profileId, 10),
28959	})
28960	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28961}
28962
28963// Do executes the "dfareporting.creatives.insert" call.
28964// Exactly one of *Creative or error will be non-nil. Any non-2xx status
28965// code is an error. Response headers are in either
28966// *Creative.ServerResponse.Header or (if a response was returned at
28967// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
28968// to check whether the returned error was because
28969// http.StatusNotModified was returned.
28970func (c *CreativesInsertCall) Do(opts ...googleapi.CallOption) (*Creative, error) {
28971	gensupport.SetOptions(c.urlParams_, opts...)
28972	res, err := c.doRequest("json")
28973	if res != nil && res.StatusCode == http.StatusNotModified {
28974		if res.Body != nil {
28975			res.Body.Close()
28976		}
28977		return nil, &googleapi.Error{
28978			Code:   res.StatusCode,
28979			Header: res.Header,
28980		}
28981	}
28982	if err != nil {
28983		return nil, err
28984	}
28985	defer googleapi.CloseBody(res)
28986	if err := googleapi.CheckResponse(res); err != nil {
28987		return nil, err
28988	}
28989	ret := &Creative{
28990		ServerResponse: googleapi.ServerResponse{
28991			Header:         res.Header,
28992			HTTPStatusCode: res.StatusCode,
28993		},
28994	}
28995	target := &ret
28996	if err := gensupport.DecodeResponse(target, res); err != nil {
28997		return nil, err
28998	}
28999	return ret, nil
29000	// {
29001	//   "description": "Inserts a new creative.",
29002	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creatives",
29003	//   "httpMethod": "POST",
29004	//   "id": "dfareporting.creatives.insert",
29005	//   "parameterOrder": [
29006	//     "profileId"
29007	//   ],
29008	//   "parameters": {
29009	//     "profileId": {
29010	//       "description": "User profile ID associated with this request.",
29011	//       "format": "int64",
29012	//       "location": "path",
29013	//       "required": true,
29014	//       "type": "string"
29015	//     }
29016	//   },
29017	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creatives",
29018	//   "request": {
29019	//     "$ref": "Creative"
29020	//   },
29021	//   "response": {
29022	//     "$ref": "Creative"
29023	//   },
29024	//   "scopes": [
29025	//     "https://www.googleapis.com/auth/dfatrafficking"
29026	//   ]
29027	// }
29028
29029}
29030
29031// method id "dfareporting.creatives.list":
29032
29033type CreativesListCall struct {
29034	s            *Service
29035	profileId    int64
29036	urlParams_   gensupport.URLParams
29037	ifNoneMatch_ string
29038	ctx_         context.Context
29039	header_      http.Header
29040}
29041
29042// List: Retrieves a list of creatives, possibly filtered. This method
29043// supports paging.
29044//
29045// - profileId: User profile ID associated with this request.
29046func (r *CreativesService) List(profileId int64) *CreativesListCall {
29047	c := &CreativesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29048	c.profileId = profileId
29049	return c
29050}
29051
29052// Active sets the optional parameter "active": Select only active
29053// creatives. Leave blank to select active and inactive creatives.
29054func (c *CreativesListCall) Active(active bool) *CreativesListCall {
29055	c.urlParams_.Set("active", fmt.Sprint(active))
29056	return c
29057}
29058
29059// AdvertiserId sets the optional parameter "advertiserId": Select only
29060// creatives with this advertiser ID.
29061func (c *CreativesListCall) AdvertiserId(advertiserId int64) *CreativesListCall {
29062	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
29063	return c
29064}
29065
29066// Archived sets the optional parameter "archived": Select only archived
29067// creatives. Leave blank to select archived and unarchived creatives.
29068func (c *CreativesListCall) Archived(archived bool) *CreativesListCall {
29069	c.urlParams_.Set("archived", fmt.Sprint(archived))
29070	return c
29071}
29072
29073// CampaignId sets the optional parameter "campaignId": Select only
29074// creatives with this campaign ID.
29075func (c *CreativesListCall) CampaignId(campaignId int64) *CreativesListCall {
29076	c.urlParams_.Set("campaignId", fmt.Sprint(campaignId))
29077	return c
29078}
29079
29080// CompanionCreativeIds sets the optional parameter
29081// "companionCreativeIds": Select only in-stream video creatives with
29082// these companion IDs.
29083func (c *CreativesListCall) CompanionCreativeIds(companionCreativeIds ...int64) *CreativesListCall {
29084	var companionCreativeIds_ []string
29085	for _, v := range companionCreativeIds {
29086		companionCreativeIds_ = append(companionCreativeIds_, fmt.Sprint(v))
29087	}
29088	c.urlParams_.SetMulti("companionCreativeIds", companionCreativeIds_)
29089	return c
29090}
29091
29092// CreativeFieldIds sets the optional parameter "creativeFieldIds":
29093// Select only creatives with these creative field IDs.
29094func (c *CreativesListCall) CreativeFieldIds(creativeFieldIds ...int64) *CreativesListCall {
29095	var creativeFieldIds_ []string
29096	for _, v := range creativeFieldIds {
29097		creativeFieldIds_ = append(creativeFieldIds_, fmt.Sprint(v))
29098	}
29099	c.urlParams_.SetMulti("creativeFieldIds", creativeFieldIds_)
29100	return c
29101}
29102
29103// Ids sets the optional parameter "ids": Select only creatives with
29104// these IDs.
29105func (c *CreativesListCall) Ids(ids ...int64) *CreativesListCall {
29106	var ids_ []string
29107	for _, v := range ids {
29108		ids_ = append(ids_, fmt.Sprint(v))
29109	}
29110	c.urlParams_.SetMulti("ids", ids_)
29111	return c
29112}
29113
29114// MaxResults sets the optional parameter "maxResults": Maximum number
29115// of results to return.
29116func (c *CreativesListCall) MaxResults(maxResults int64) *CreativesListCall {
29117	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
29118	return c
29119}
29120
29121// PageToken sets the optional parameter "pageToken": Value of the
29122// nextPageToken from the previous result page.
29123func (c *CreativesListCall) PageToken(pageToken string) *CreativesListCall {
29124	c.urlParams_.Set("pageToken", pageToken)
29125	return c
29126}
29127
29128// RenderingIds sets the optional parameter "renderingIds": Select only
29129// creatives with these rendering IDs.
29130func (c *CreativesListCall) RenderingIds(renderingIds ...int64) *CreativesListCall {
29131	var renderingIds_ []string
29132	for _, v := range renderingIds {
29133		renderingIds_ = append(renderingIds_, fmt.Sprint(v))
29134	}
29135	c.urlParams_.SetMulti("renderingIds", renderingIds_)
29136	return c
29137}
29138
29139// SearchString sets the optional parameter "searchString": Allows
29140// searching for objects by name or ID. Wildcards (*) are allowed. For
29141// example, "creative*2015" will return objects with names like
29142// "creative June 2015", "creative April 2015", or simply "creative
29143// 2015". Most of the searches also add wildcards implicitly at the
29144// start and the end of the search string. For example, a search string
29145// of "creative" will match objects with name "my creative", "creative
29146// 2015", or simply "creative".
29147func (c *CreativesListCall) SearchString(searchString string) *CreativesListCall {
29148	c.urlParams_.Set("searchString", searchString)
29149	return c
29150}
29151
29152// SizeIds sets the optional parameter "sizeIds": Select only creatives
29153// with these size IDs.
29154func (c *CreativesListCall) SizeIds(sizeIds ...int64) *CreativesListCall {
29155	var sizeIds_ []string
29156	for _, v := range sizeIds {
29157		sizeIds_ = append(sizeIds_, fmt.Sprint(v))
29158	}
29159	c.urlParams_.SetMulti("sizeIds", sizeIds_)
29160	return c
29161}
29162
29163// SortField sets the optional parameter "sortField": Field by which to
29164// sort the list.
29165//
29166// Possible values:
29167//   "ID" (default)
29168//   "NAME"
29169func (c *CreativesListCall) SortField(sortField string) *CreativesListCall {
29170	c.urlParams_.Set("sortField", sortField)
29171	return c
29172}
29173
29174// SortOrder sets the optional parameter "sortOrder": Order of sorted
29175// results.
29176//
29177// Possible values:
29178//   "ASCENDING" (default)
29179//   "DESCENDING"
29180func (c *CreativesListCall) SortOrder(sortOrder string) *CreativesListCall {
29181	c.urlParams_.Set("sortOrder", sortOrder)
29182	return c
29183}
29184
29185// StudioCreativeId sets the optional parameter "studioCreativeId":
29186// Select only creatives corresponding to this Studio creative ID.
29187func (c *CreativesListCall) StudioCreativeId(studioCreativeId int64) *CreativesListCall {
29188	c.urlParams_.Set("studioCreativeId", fmt.Sprint(studioCreativeId))
29189	return c
29190}
29191
29192// Types sets the optional parameter "types": Select only creatives with
29193// these creative types.
29194//
29195// Possible values:
29196//   "IMAGE"
29197//   "DISPLAY_REDIRECT"
29198//   "CUSTOM_DISPLAY"
29199//   "INTERNAL_REDIRECT"
29200//   "CUSTOM_DISPLAY_INTERSTITIAL"
29201//   "INTERSTITIAL_INTERNAL_REDIRECT"
29202//   "TRACKING_TEXT"
29203//   "RICH_MEDIA_DISPLAY_BANNER"
29204//   "RICH_MEDIA_INPAGE_FLOATING"
29205//   "RICH_MEDIA_IM_EXPAND"
29206//   "RICH_MEDIA_DISPLAY_EXPANDING"
29207//   "RICH_MEDIA_DISPLAY_INTERSTITIAL"
29208//   "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL"
29209//   "RICH_MEDIA_MOBILE_IN_APP"
29210//   "FLASH_INPAGE"
29211//   "INSTREAM_VIDEO"
29212//   "VPAID_LINEAR_VIDEO"
29213//   "VPAID_NON_LINEAR_VIDEO"
29214//   "INSTREAM_VIDEO_REDIRECT"
29215//   "RICH_MEDIA_PEEL_DOWN"
29216//   "HTML5_BANNER"
29217//   "DISPLAY"
29218//   "DISPLAY_IMAGE_GALLERY"
29219//   "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
29220//   "INSTREAM_AUDIO"
29221func (c *CreativesListCall) Types(types ...string) *CreativesListCall {
29222	c.urlParams_.SetMulti("types", append([]string{}, types...))
29223	return c
29224}
29225
29226// Fields allows partial responses to be retrieved. See
29227// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29228// for more information.
29229func (c *CreativesListCall) Fields(s ...googleapi.Field) *CreativesListCall {
29230	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29231	return c
29232}
29233
29234// IfNoneMatch sets the optional parameter which makes the operation
29235// fail if the object's ETag matches the given value. This is useful for
29236// getting updates only after the object has changed since the last
29237// request. Use googleapi.IsNotModified to check whether the response
29238// error from Do is the result of In-None-Match.
29239func (c *CreativesListCall) IfNoneMatch(entityTag string) *CreativesListCall {
29240	c.ifNoneMatch_ = entityTag
29241	return c
29242}
29243
29244// Context sets the context to be used in this call's Do method. Any
29245// pending HTTP request will be aborted if the provided context is
29246// canceled.
29247func (c *CreativesListCall) Context(ctx context.Context) *CreativesListCall {
29248	c.ctx_ = ctx
29249	return c
29250}
29251
29252// Header returns an http.Header that can be modified by the caller to
29253// add HTTP headers to the request.
29254func (c *CreativesListCall) Header() http.Header {
29255	if c.header_ == nil {
29256		c.header_ = make(http.Header)
29257	}
29258	return c.header_
29259}
29260
29261func (c *CreativesListCall) doRequest(alt string) (*http.Response, error) {
29262	reqHeaders := make(http.Header)
29263	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29264	for k, v := range c.header_ {
29265		reqHeaders[k] = v
29266	}
29267	reqHeaders.Set("User-Agent", c.s.userAgent())
29268	if c.ifNoneMatch_ != "" {
29269		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29270	}
29271	var body io.Reader = nil
29272	c.urlParams_.Set("alt", alt)
29273	c.urlParams_.Set("prettyPrint", "false")
29274	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creatives")
29275	urls += "?" + c.urlParams_.Encode()
29276	req, err := http.NewRequest("GET", urls, body)
29277	if err != nil {
29278		return nil, err
29279	}
29280	req.Header = reqHeaders
29281	googleapi.Expand(req.URL, map[string]string{
29282		"profileId": strconv.FormatInt(c.profileId, 10),
29283	})
29284	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29285}
29286
29287// Do executes the "dfareporting.creatives.list" call.
29288// Exactly one of *CreativesListResponse or error will be non-nil. Any
29289// non-2xx status code is an error. Response headers are in either
29290// *CreativesListResponse.ServerResponse.Header or (if a response was
29291// returned at all) in error.(*googleapi.Error).Header. Use
29292// googleapi.IsNotModified to check whether the returned error was
29293// because http.StatusNotModified was returned.
29294func (c *CreativesListCall) Do(opts ...googleapi.CallOption) (*CreativesListResponse, error) {
29295	gensupport.SetOptions(c.urlParams_, opts...)
29296	res, err := c.doRequest("json")
29297	if res != nil && res.StatusCode == http.StatusNotModified {
29298		if res.Body != nil {
29299			res.Body.Close()
29300		}
29301		return nil, &googleapi.Error{
29302			Code:   res.StatusCode,
29303			Header: res.Header,
29304		}
29305	}
29306	if err != nil {
29307		return nil, err
29308	}
29309	defer googleapi.CloseBody(res)
29310	if err := googleapi.CheckResponse(res); err != nil {
29311		return nil, err
29312	}
29313	ret := &CreativesListResponse{
29314		ServerResponse: googleapi.ServerResponse{
29315			Header:         res.Header,
29316			HTTPStatusCode: res.StatusCode,
29317		},
29318	}
29319	target := &ret
29320	if err := gensupport.DecodeResponse(target, res); err != nil {
29321		return nil, err
29322	}
29323	return ret, nil
29324	// {
29325	//   "description": "Retrieves a list of creatives, possibly filtered. This method supports paging.",
29326	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creatives",
29327	//   "httpMethod": "GET",
29328	//   "id": "dfareporting.creatives.list",
29329	//   "parameterOrder": [
29330	//     "profileId"
29331	//   ],
29332	//   "parameters": {
29333	//     "active": {
29334	//       "description": "Select only active creatives. Leave blank to select active and inactive creatives.",
29335	//       "location": "query",
29336	//       "type": "boolean"
29337	//     },
29338	//     "advertiserId": {
29339	//       "description": "Select only creatives with this advertiser ID.",
29340	//       "format": "int64",
29341	//       "location": "query",
29342	//       "type": "string"
29343	//     },
29344	//     "archived": {
29345	//       "description": "Select only archived creatives. Leave blank to select archived and unarchived creatives.",
29346	//       "location": "query",
29347	//       "type": "boolean"
29348	//     },
29349	//     "campaignId": {
29350	//       "description": "Select only creatives with this campaign ID.",
29351	//       "format": "int64",
29352	//       "location": "query",
29353	//       "type": "string"
29354	//     },
29355	//     "companionCreativeIds": {
29356	//       "description": "Select only in-stream video creatives with these companion IDs.",
29357	//       "format": "int64",
29358	//       "location": "query",
29359	//       "repeated": true,
29360	//       "type": "string"
29361	//     },
29362	//     "creativeFieldIds": {
29363	//       "description": "Select only creatives with these creative field IDs.",
29364	//       "format": "int64",
29365	//       "location": "query",
29366	//       "repeated": true,
29367	//       "type": "string"
29368	//     },
29369	//     "ids": {
29370	//       "description": "Select only creatives with these IDs.",
29371	//       "format": "int64",
29372	//       "location": "query",
29373	//       "repeated": true,
29374	//       "type": "string"
29375	//     },
29376	//     "maxResults": {
29377	//       "default": "1000",
29378	//       "description": "Maximum number of results to return.",
29379	//       "format": "int32",
29380	//       "location": "query",
29381	//       "maximum": "1000",
29382	//       "minimum": "0",
29383	//       "type": "integer"
29384	//     },
29385	//     "pageToken": {
29386	//       "description": "Value of the nextPageToken from the previous result page.",
29387	//       "location": "query",
29388	//       "type": "string"
29389	//     },
29390	//     "profileId": {
29391	//       "description": "User profile ID associated with this request.",
29392	//       "format": "int64",
29393	//       "location": "path",
29394	//       "required": true,
29395	//       "type": "string"
29396	//     },
29397	//     "renderingIds": {
29398	//       "description": "Select only creatives with these rendering IDs.",
29399	//       "format": "int64",
29400	//       "location": "query",
29401	//       "repeated": true,
29402	//       "type": "string"
29403	//     },
29404	//     "searchString": {
29405	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"creative*2015\" will return objects with names like \"creative June 2015\", \"creative April 2015\", or simply \"creative 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"creative\" will match objects with name \"my creative\", \"creative 2015\", or simply \"creative\".",
29406	//       "location": "query",
29407	//       "type": "string"
29408	//     },
29409	//     "sizeIds": {
29410	//       "description": "Select only creatives with these size IDs.",
29411	//       "format": "int64",
29412	//       "location": "query",
29413	//       "repeated": true,
29414	//       "type": "string"
29415	//     },
29416	//     "sortField": {
29417	//       "default": "ID",
29418	//       "description": "Field by which to sort the list.",
29419	//       "enum": [
29420	//         "ID",
29421	//         "NAME"
29422	//       ],
29423	//       "enumDescriptions": [
29424	//         "",
29425	//         ""
29426	//       ],
29427	//       "location": "query",
29428	//       "type": "string"
29429	//     },
29430	//     "sortOrder": {
29431	//       "default": "ASCENDING",
29432	//       "description": "Order of sorted results.",
29433	//       "enum": [
29434	//         "ASCENDING",
29435	//         "DESCENDING"
29436	//       ],
29437	//       "enumDescriptions": [
29438	//         "",
29439	//         ""
29440	//       ],
29441	//       "location": "query",
29442	//       "type": "string"
29443	//     },
29444	//     "studioCreativeId": {
29445	//       "description": "Select only creatives corresponding to this Studio creative ID.",
29446	//       "format": "int64",
29447	//       "location": "query",
29448	//       "type": "string"
29449	//     },
29450	//     "types": {
29451	//       "description": "Select only creatives with these creative types.",
29452	//       "enum": [
29453	//         "IMAGE",
29454	//         "DISPLAY_REDIRECT",
29455	//         "CUSTOM_DISPLAY",
29456	//         "INTERNAL_REDIRECT",
29457	//         "CUSTOM_DISPLAY_INTERSTITIAL",
29458	//         "INTERSTITIAL_INTERNAL_REDIRECT",
29459	//         "TRACKING_TEXT",
29460	//         "RICH_MEDIA_DISPLAY_BANNER",
29461	//         "RICH_MEDIA_INPAGE_FLOATING",
29462	//         "RICH_MEDIA_IM_EXPAND",
29463	//         "RICH_MEDIA_DISPLAY_EXPANDING",
29464	//         "RICH_MEDIA_DISPLAY_INTERSTITIAL",
29465	//         "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL",
29466	//         "RICH_MEDIA_MOBILE_IN_APP",
29467	//         "FLASH_INPAGE",
29468	//         "INSTREAM_VIDEO",
29469	//         "VPAID_LINEAR_VIDEO",
29470	//         "VPAID_NON_LINEAR_VIDEO",
29471	//         "INSTREAM_VIDEO_REDIRECT",
29472	//         "RICH_MEDIA_PEEL_DOWN",
29473	//         "HTML5_BANNER",
29474	//         "DISPLAY",
29475	//         "DISPLAY_IMAGE_GALLERY",
29476	//         "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO",
29477	//         "INSTREAM_AUDIO"
29478	//       ],
29479	//       "enumDescriptions": [
29480	//         "",
29481	//         "",
29482	//         "",
29483	//         "",
29484	//         "",
29485	//         "",
29486	//         "",
29487	//         "",
29488	//         "",
29489	//         "",
29490	//         "",
29491	//         "",
29492	//         "",
29493	//         "",
29494	//         "",
29495	//         "",
29496	//         "",
29497	//         "",
29498	//         "",
29499	//         "",
29500	//         "",
29501	//         "",
29502	//         "",
29503	//         "",
29504	//         ""
29505	//       ],
29506	//       "location": "query",
29507	//       "repeated": true,
29508	//       "type": "string"
29509	//     }
29510	//   },
29511	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creatives",
29512	//   "response": {
29513	//     "$ref": "CreativesListResponse"
29514	//   },
29515	//   "scopes": [
29516	//     "https://www.googleapis.com/auth/dfatrafficking"
29517	//   ]
29518	// }
29519
29520}
29521
29522// Pages invokes f for each page of results.
29523// A non-nil error returned from f will halt the iteration.
29524// The provided context supersedes any context provided to the Context method.
29525func (c *CreativesListCall) Pages(ctx context.Context, f func(*CreativesListResponse) error) error {
29526	c.ctx_ = ctx
29527	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29528	for {
29529		x, err := c.Do()
29530		if err != nil {
29531			return err
29532		}
29533		if err := f(x); err != nil {
29534			return err
29535		}
29536		if x.NextPageToken == "" {
29537			return nil
29538		}
29539		c.PageToken(x.NextPageToken)
29540	}
29541}
29542
29543// method id "dfareporting.creatives.patch":
29544
29545type CreativesPatchCall struct {
29546	s          *Service
29547	profileId  int64
29548	creative   *Creative
29549	urlParams_ gensupport.URLParams
29550	ctx_       context.Context
29551	header_    http.Header
29552}
29553
29554// Patch: Updates an existing creative. This method supports patch
29555// semantics.
29556//
29557// - id: Creative ID.
29558// - profileId: User profile ID associated with this request.
29559func (r *CreativesService) Patch(profileId int64, id int64, creative *Creative) *CreativesPatchCall {
29560	c := &CreativesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29561	c.profileId = profileId
29562	c.urlParams_.Set("id", fmt.Sprint(id))
29563	c.creative = creative
29564	return c
29565}
29566
29567// Fields allows partial responses to be retrieved. See
29568// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29569// for more information.
29570func (c *CreativesPatchCall) Fields(s ...googleapi.Field) *CreativesPatchCall {
29571	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29572	return c
29573}
29574
29575// Context sets the context to be used in this call's Do method. Any
29576// pending HTTP request will be aborted if the provided context is
29577// canceled.
29578func (c *CreativesPatchCall) Context(ctx context.Context) *CreativesPatchCall {
29579	c.ctx_ = ctx
29580	return c
29581}
29582
29583// Header returns an http.Header that can be modified by the caller to
29584// add HTTP headers to the request.
29585func (c *CreativesPatchCall) Header() http.Header {
29586	if c.header_ == nil {
29587		c.header_ = make(http.Header)
29588	}
29589	return c.header_
29590}
29591
29592func (c *CreativesPatchCall) doRequest(alt string) (*http.Response, error) {
29593	reqHeaders := make(http.Header)
29594	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29595	for k, v := range c.header_ {
29596		reqHeaders[k] = v
29597	}
29598	reqHeaders.Set("User-Agent", c.s.userAgent())
29599	var body io.Reader = nil
29600	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creative)
29601	if err != nil {
29602		return nil, err
29603	}
29604	reqHeaders.Set("Content-Type", "application/json")
29605	c.urlParams_.Set("alt", alt)
29606	c.urlParams_.Set("prettyPrint", "false")
29607	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creatives")
29608	urls += "?" + c.urlParams_.Encode()
29609	req, err := http.NewRequest("PATCH", urls, body)
29610	if err != nil {
29611		return nil, err
29612	}
29613	req.Header = reqHeaders
29614	googleapi.Expand(req.URL, map[string]string{
29615		"profileId": strconv.FormatInt(c.profileId, 10),
29616	})
29617	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29618}
29619
29620// Do executes the "dfareporting.creatives.patch" call.
29621// Exactly one of *Creative or error will be non-nil. Any non-2xx status
29622// code is an error. Response headers are in either
29623// *Creative.ServerResponse.Header or (if a response was returned at
29624// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
29625// to check whether the returned error was because
29626// http.StatusNotModified was returned.
29627func (c *CreativesPatchCall) Do(opts ...googleapi.CallOption) (*Creative, error) {
29628	gensupport.SetOptions(c.urlParams_, opts...)
29629	res, err := c.doRequest("json")
29630	if res != nil && res.StatusCode == http.StatusNotModified {
29631		if res.Body != nil {
29632			res.Body.Close()
29633		}
29634		return nil, &googleapi.Error{
29635			Code:   res.StatusCode,
29636			Header: res.Header,
29637		}
29638	}
29639	if err != nil {
29640		return nil, err
29641	}
29642	defer googleapi.CloseBody(res)
29643	if err := googleapi.CheckResponse(res); err != nil {
29644		return nil, err
29645	}
29646	ret := &Creative{
29647		ServerResponse: googleapi.ServerResponse{
29648			Header:         res.Header,
29649			HTTPStatusCode: res.StatusCode,
29650		},
29651	}
29652	target := &ret
29653	if err := gensupport.DecodeResponse(target, res); err != nil {
29654		return nil, err
29655	}
29656	return ret, nil
29657	// {
29658	//   "description": "Updates an existing creative. This method supports patch semantics.",
29659	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creatives",
29660	//   "httpMethod": "PATCH",
29661	//   "id": "dfareporting.creatives.patch",
29662	//   "parameterOrder": [
29663	//     "profileId",
29664	//     "id"
29665	//   ],
29666	//   "parameters": {
29667	//     "id": {
29668	//       "description": "Creative ID.",
29669	//       "format": "int64",
29670	//       "location": "query",
29671	//       "required": true,
29672	//       "type": "string"
29673	//     },
29674	//     "profileId": {
29675	//       "description": "User profile ID associated with this request.",
29676	//       "format": "int64",
29677	//       "location": "path",
29678	//       "required": true,
29679	//       "type": "string"
29680	//     }
29681	//   },
29682	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creatives",
29683	//   "request": {
29684	//     "$ref": "Creative"
29685	//   },
29686	//   "response": {
29687	//     "$ref": "Creative"
29688	//   },
29689	//   "scopes": [
29690	//     "https://www.googleapis.com/auth/dfatrafficking"
29691	//   ]
29692	// }
29693
29694}
29695
29696// method id "dfareporting.creatives.update":
29697
29698type CreativesUpdateCall struct {
29699	s          *Service
29700	profileId  int64
29701	creative   *Creative
29702	urlParams_ gensupport.URLParams
29703	ctx_       context.Context
29704	header_    http.Header
29705}
29706
29707// Update: Updates an existing creative.
29708//
29709// - profileId: User profile ID associated with this request.
29710func (r *CreativesService) Update(profileId int64, creative *Creative) *CreativesUpdateCall {
29711	c := &CreativesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29712	c.profileId = profileId
29713	c.creative = creative
29714	return c
29715}
29716
29717// Fields allows partial responses to be retrieved. See
29718// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29719// for more information.
29720func (c *CreativesUpdateCall) Fields(s ...googleapi.Field) *CreativesUpdateCall {
29721	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29722	return c
29723}
29724
29725// Context sets the context to be used in this call's Do method. Any
29726// pending HTTP request will be aborted if the provided context is
29727// canceled.
29728func (c *CreativesUpdateCall) Context(ctx context.Context) *CreativesUpdateCall {
29729	c.ctx_ = ctx
29730	return c
29731}
29732
29733// Header returns an http.Header that can be modified by the caller to
29734// add HTTP headers to the request.
29735func (c *CreativesUpdateCall) Header() http.Header {
29736	if c.header_ == nil {
29737		c.header_ = make(http.Header)
29738	}
29739	return c.header_
29740}
29741
29742func (c *CreativesUpdateCall) doRequest(alt string) (*http.Response, error) {
29743	reqHeaders := make(http.Header)
29744	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29745	for k, v := range c.header_ {
29746		reqHeaders[k] = v
29747	}
29748	reqHeaders.Set("User-Agent", c.s.userAgent())
29749	var body io.Reader = nil
29750	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creative)
29751	if err != nil {
29752		return nil, err
29753	}
29754	reqHeaders.Set("Content-Type", "application/json")
29755	c.urlParams_.Set("alt", alt)
29756	c.urlParams_.Set("prettyPrint", "false")
29757	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/creatives")
29758	urls += "?" + c.urlParams_.Encode()
29759	req, err := http.NewRequest("PUT", urls, body)
29760	if err != nil {
29761		return nil, err
29762	}
29763	req.Header = reqHeaders
29764	googleapi.Expand(req.URL, map[string]string{
29765		"profileId": strconv.FormatInt(c.profileId, 10),
29766	})
29767	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29768}
29769
29770// Do executes the "dfareporting.creatives.update" call.
29771// Exactly one of *Creative or error will be non-nil. Any non-2xx status
29772// code is an error. Response headers are in either
29773// *Creative.ServerResponse.Header or (if a response was returned at
29774// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
29775// to check whether the returned error was because
29776// http.StatusNotModified was returned.
29777func (c *CreativesUpdateCall) Do(opts ...googleapi.CallOption) (*Creative, error) {
29778	gensupport.SetOptions(c.urlParams_, opts...)
29779	res, err := c.doRequest("json")
29780	if res != nil && res.StatusCode == http.StatusNotModified {
29781		if res.Body != nil {
29782			res.Body.Close()
29783		}
29784		return nil, &googleapi.Error{
29785			Code:   res.StatusCode,
29786			Header: res.Header,
29787		}
29788	}
29789	if err != nil {
29790		return nil, err
29791	}
29792	defer googleapi.CloseBody(res)
29793	if err := googleapi.CheckResponse(res); err != nil {
29794		return nil, err
29795	}
29796	ret := &Creative{
29797		ServerResponse: googleapi.ServerResponse{
29798			Header:         res.Header,
29799			HTTPStatusCode: res.StatusCode,
29800		},
29801	}
29802	target := &ret
29803	if err := gensupport.DecodeResponse(target, res); err != nil {
29804		return nil, err
29805	}
29806	return ret, nil
29807	// {
29808	//   "description": "Updates an existing creative.",
29809	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/creatives",
29810	//   "httpMethod": "PUT",
29811	//   "id": "dfareporting.creatives.update",
29812	//   "parameterOrder": [
29813	//     "profileId"
29814	//   ],
29815	//   "parameters": {
29816	//     "profileId": {
29817	//       "description": "User profile ID associated with this request.",
29818	//       "format": "int64",
29819	//       "location": "path",
29820	//       "required": true,
29821	//       "type": "string"
29822	//     }
29823	//   },
29824	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/creatives",
29825	//   "request": {
29826	//     "$ref": "Creative"
29827	//   },
29828	//   "response": {
29829	//     "$ref": "Creative"
29830	//   },
29831	//   "scopes": [
29832	//     "https://www.googleapis.com/auth/dfatrafficking"
29833	//   ]
29834	// }
29835
29836}
29837
29838// method id "dfareporting.dimensionValues.query":
29839
29840type DimensionValuesQueryCall struct {
29841	s                     *Service
29842	profileId             int64
29843	dimensionvaluerequest *DimensionValueRequest
29844	urlParams_            gensupport.URLParams
29845	ctx_                  context.Context
29846	header_               http.Header
29847}
29848
29849// Query: Retrieves list of report dimension values for a list of
29850// filters.
29851//
29852// - profileId: The Campaign Manager 360 user profile ID.
29853func (r *DimensionValuesService) Query(profileId int64, dimensionvaluerequest *DimensionValueRequest) *DimensionValuesQueryCall {
29854	c := &DimensionValuesQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29855	c.profileId = profileId
29856	c.dimensionvaluerequest = dimensionvaluerequest
29857	return c
29858}
29859
29860// MaxResults sets the optional parameter "maxResults": Maximum number
29861// of results to return.
29862func (c *DimensionValuesQueryCall) MaxResults(maxResults int64) *DimensionValuesQueryCall {
29863	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
29864	return c
29865}
29866
29867// PageToken sets the optional parameter "pageToken": The value of the
29868// nextToken from the previous result page.
29869func (c *DimensionValuesQueryCall) PageToken(pageToken string) *DimensionValuesQueryCall {
29870	c.urlParams_.Set("pageToken", pageToken)
29871	return c
29872}
29873
29874// Fields allows partial responses to be retrieved. See
29875// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29876// for more information.
29877func (c *DimensionValuesQueryCall) Fields(s ...googleapi.Field) *DimensionValuesQueryCall {
29878	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29879	return c
29880}
29881
29882// Context sets the context to be used in this call's Do method. Any
29883// pending HTTP request will be aborted if the provided context is
29884// canceled.
29885func (c *DimensionValuesQueryCall) Context(ctx context.Context) *DimensionValuesQueryCall {
29886	c.ctx_ = ctx
29887	return c
29888}
29889
29890// Header returns an http.Header that can be modified by the caller to
29891// add HTTP headers to the request.
29892func (c *DimensionValuesQueryCall) Header() http.Header {
29893	if c.header_ == nil {
29894		c.header_ = make(http.Header)
29895	}
29896	return c.header_
29897}
29898
29899func (c *DimensionValuesQueryCall) doRequest(alt string) (*http.Response, error) {
29900	reqHeaders := make(http.Header)
29901	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29902	for k, v := range c.header_ {
29903		reqHeaders[k] = v
29904	}
29905	reqHeaders.Set("User-Agent", c.s.userAgent())
29906	var body io.Reader = nil
29907	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dimensionvaluerequest)
29908	if err != nil {
29909		return nil, err
29910	}
29911	reqHeaders.Set("Content-Type", "application/json")
29912	c.urlParams_.Set("alt", alt)
29913	c.urlParams_.Set("prettyPrint", "false")
29914	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/dimensionvalues/query")
29915	urls += "?" + c.urlParams_.Encode()
29916	req, err := http.NewRequest("POST", urls, body)
29917	if err != nil {
29918		return nil, err
29919	}
29920	req.Header = reqHeaders
29921	googleapi.Expand(req.URL, map[string]string{
29922		"profileId": strconv.FormatInt(c.profileId, 10),
29923	})
29924	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29925}
29926
29927// Do executes the "dfareporting.dimensionValues.query" call.
29928// Exactly one of *DimensionValueList or error will be non-nil. Any
29929// non-2xx status code is an error. Response headers are in either
29930// *DimensionValueList.ServerResponse.Header or (if a response was
29931// returned at all) in error.(*googleapi.Error).Header. Use
29932// googleapi.IsNotModified to check whether the returned error was
29933// because http.StatusNotModified was returned.
29934func (c *DimensionValuesQueryCall) Do(opts ...googleapi.CallOption) (*DimensionValueList, error) {
29935	gensupport.SetOptions(c.urlParams_, opts...)
29936	res, err := c.doRequest("json")
29937	if res != nil && res.StatusCode == http.StatusNotModified {
29938		if res.Body != nil {
29939			res.Body.Close()
29940		}
29941		return nil, &googleapi.Error{
29942			Code:   res.StatusCode,
29943			Header: res.Header,
29944		}
29945	}
29946	if err != nil {
29947		return nil, err
29948	}
29949	defer googleapi.CloseBody(res)
29950	if err := googleapi.CheckResponse(res); err != nil {
29951		return nil, err
29952	}
29953	ret := &DimensionValueList{
29954		ServerResponse: googleapi.ServerResponse{
29955			Header:         res.Header,
29956			HTTPStatusCode: res.StatusCode,
29957		},
29958	}
29959	target := &ret
29960	if err := gensupport.DecodeResponse(target, res); err != nil {
29961		return nil, err
29962	}
29963	return ret, nil
29964	// {
29965	//   "description": "Retrieves list of report dimension values for a list of filters.",
29966	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/dimensionvalues/query",
29967	//   "httpMethod": "POST",
29968	//   "id": "dfareporting.dimensionValues.query",
29969	//   "parameterOrder": [
29970	//     "profileId"
29971	//   ],
29972	//   "parameters": {
29973	//     "maxResults": {
29974	//       "default": "100",
29975	//       "description": "Maximum number of results to return.",
29976	//       "format": "int32",
29977	//       "location": "query",
29978	//       "maximum": "100",
29979	//       "minimum": "0",
29980	//       "type": "integer"
29981	//     },
29982	//     "pageToken": {
29983	//       "description": "The value of the nextToken from the previous result page.",
29984	//       "location": "query",
29985	//       "type": "string"
29986	//     },
29987	//     "profileId": {
29988	//       "description": "The Campaign Manager 360 user profile ID.",
29989	//       "format": "int64",
29990	//       "location": "path",
29991	//       "required": true,
29992	//       "type": "string"
29993	//     }
29994	//   },
29995	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/dimensionvalues/query",
29996	//   "request": {
29997	//     "$ref": "DimensionValueRequest"
29998	//   },
29999	//   "response": {
30000	//     "$ref": "DimensionValueList"
30001	//   },
30002	//   "scopes": [
30003	//     "https://www.googleapis.com/auth/dfareporting"
30004	//   ]
30005	// }
30006
30007}
30008
30009// Pages invokes f for each page of results.
30010// A non-nil error returned from f will halt the iteration.
30011// The provided context supersedes any context provided to the Context method.
30012func (c *DimensionValuesQueryCall) Pages(ctx context.Context, f func(*DimensionValueList) error) error {
30013	c.ctx_ = ctx
30014	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
30015	for {
30016		x, err := c.Do()
30017		if err != nil {
30018			return err
30019		}
30020		if err := f(x); err != nil {
30021			return err
30022		}
30023		if x.NextPageToken == "" {
30024			return nil
30025		}
30026		c.PageToken(x.NextPageToken)
30027	}
30028}
30029
30030// method id "dfareporting.directorySites.get":
30031
30032type DirectorySitesGetCall struct {
30033	s            *Service
30034	profileId    int64
30035	id           int64
30036	urlParams_   gensupport.URLParams
30037	ifNoneMatch_ string
30038	ctx_         context.Context
30039	header_      http.Header
30040}
30041
30042// Get: Gets one directory site by ID.
30043//
30044// - id: Directory site ID.
30045// - profileId: User profile ID associated with this request.
30046func (r *DirectorySitesService) Get(profileId int64, id int64) *DirectorySitesGetCall {
30047	c := &DirectorySitesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30048	c.profileId = profileId
30049	c.id = id
30050	return c
30051}
30052
30053// Fields allows partial responses to be retrieved. See
30054// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30055// for more information.
30056func (c *DirectorySitesGetCall) Fields(s ...googleapi.Field) *DirectorySitesGetCall {
30057	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30058	return c
30059}
30060
30061// IfNoneMatch sets the optional parameter which makes the operation
30062// fail if the object's ETag matches the given value. This is useful for
30063// getting updates only after the object has changed since the last
30064// request. Use googleapi.IsNotModified to check whether the response
30065// error from Do is the result of In-None-Match.
30066func (c *DirectorySitesGetCall) IfNoneMatch(entityTag string) *DirectorySitesGetCall {
30067	c.ifNoneMatch_ = entityTag
30068	return c
30069}
30070
30071// Context sets the context to be used in this call's Do method. Any
30072// pending HTTP request will be aborted if the provided context is
30073// canceled.
30074func (c *DirectorySitesGetCall) Context(ctx context.Context) *DirectorySitesGetCall {
30075	c.ctx_ = ctx
30076	return c
30077}
30078
30079// Header returns an http.Header that can be modified by the caller to
30080// add HTTP headers to the request.
30081func (c *DirectorySitesGetCall) Header() http.Header {
30082	if c.header_ == nil {
30083		c.header_ = make(http.Header)
30084	}
30085	return c.header_
30086}
30087
30088func (c *DirectorySitesGetCall) doRequest(alt string) (*http.Response, error) {
30089	reqHeaders := make(http.Header)
30090	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30091	for k, v := range c.header_ {
30092		reqHeaders[k] = v
30093	}
30094	reqHeaders.Set("User-Agent", c.s.userAgent())
30095	if c.ifNoneMatch_ != "" {
30096		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30097	}
30098	var body io.Reader = nil
30099	c.urlParams_.Set("alt", alt)
30100	c.urlParams_.Set("prettyPrint", "false")
30101	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/directorySites/{id}")
30102	urls += "?" + c.urlParams_.Encode()
30103	req, err := http.NewRequest("GET", urls, body)
30104	if err != nil {
30105		return nil, err
30106	}
30107	req.Header = reqHeaders
30108	googleapi.Expand(req.URL, map[string]string{
30109		"profileId": strconv.FormatInt(c.profileId, 10),
30110		"id":        strconv.FormatInt(c.id, 10),
30111	})
30112	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30113}
30114
30115// Do executes the "dfareporting.directorySites.get" call.
30116// Exactly one of *DirectorySite or error will be non-nil. Any non-2xx
30117// status code is an error. Response headers are in either
30118// *DirectorySite.ServerResponse.Header or (if a response was returned
30119// at all) in error.(*googleapi.Error).Header. Use
30120// googleapi.IsNotModified to check whether the returned error was
30121// because http.StatusNotModified was returned.
30122func (c *DirectorySitesGetCall) Do(opts ...googleapi.CallOption) (*DirectorySite, error) {
30123	gensupport.SetOptions(c.urlParams_, opts...)
30124	res, err := c.doRequest("json")
30125	if res != nil && res.StatusCode == http.StatusNotModified {
30126		if res.Body != nil {
30127			res.Body.Close()
30128		}
30129		return nil, &googleapi.Error{
30130			Code:   res.StatusCode,
30131			Header: res.Header,
30132		}
30133	}
30134	if err != nil {
30135		return nil, err
30136	}
30137	defer googleapi.CloseBody(res)
30138	if err := googleapi.CheckResponse(res); err != nil {
30139		return nil, err
30140	}
30141	ret := &DirectorySite{
30142		ServerResponse: googleapi.ServerResponse{
30143			Header:         res.Header,
30144			HTTPStatusCode: res.StatusCode,
30145		},
30146	}
30147	target := &ret
30148	if err := gensupport.DecodeResponse(target, res); err != nil {
30149		return nil, err
30150	}
30151	return ret, nil
30152	// {
30153	//   "description": "Gets one directory site by ID.",
30154	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/directorySites/{id}",
30155	//   "httpMethod": "GET",
30156	//   "id": "dfareporting.directorySites.get",
30157	//   "parameterOrder": [
30158	//     "profileId",
30159	//     "id"
30160	//   ],
30161	//   "parameters": {
30162	//     "id": {
30163	//       "description": "Directory site ID.",
30164	//       "format": "int64",
30165	//       "location": "path",
30166	//       "required": true,
30167	//       "type": "string"
30168	//     },
30169	//     "profileId": {
30170	//       "description": "User profile ID associated with this request.",
30171	//       "format": "int64",
30172	//       "location": "path",
30173	//       "required": true,
30174	//       "type": "string"
30175	//     }
30176	//   },
30177	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/directorySites/{id}",
30178	//   "response": {
30179	//     "$ref": "DirectorySite"
30180	//   },
30181	//   "scopes": [
30182	//     "https://www.googleapis.com/auth/dfatrafficking"
30183	//   ]
30184	// }
30185
30186}
30187
30188// method id "dfareporting.directorySites.insert":
30189
30190type DirectorySitesInsertCall struct {
30191	s             *Service
30192	profileId     int64
30193	directorysite *DirectorySite
30194	urlParams_    gensupport.URLParams
30195	ctx_          context.Context
30196	header_       http.Header
30197}
30198
30199// Insert: Inserts a new directory site.
30200//
30201// - profileId: User profile ID associated with this request.
30202func (r *DirectorySitesService) Insert(profileId int64, directorysite *DirectorySite) *DirectorySitesInsertCall {
30203	c := &DirectorySitesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30204	c.profileId = profileId
30205	c.directorysite = directorysite
30206	return c
30207}
30208
30209// Fields allows partial responses to be retrieved. See
30210// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30211// for more information.
30212func (c *DirectorySitesInsertCall) Fields(s ...googleapi.Field) *DirectorySitesInsertCall {
30213	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30214	return c
30215}
30216
30217// Context sets the context to be used in this call's Do method. Any
30218// pending HTTP request will be aborted if the provided context is
30219// canceled.
30220func (c *DirectorySitesInsertCall) Context(ctx context.Context) *DirectorySitesInsertCall {
30221	c.ctx_ = ctx
30222	return c
30223}
30224
30225// Header returns an http.Header that can be modified by the caller to
30226// add HTTP headers to the request.
30227func (c *DirectorySitesInsertCall) Header() http.Header {
30228	if c.header_ == nil {
30229		c.header_ = make(http.Header)
30230	}
30231	return c.header_
30232}
30233
30234func (c *DirectorySitesInsertCall) doRequest(alt string) (*http.Response, error) {
30235	reqHeaders := make(http.Header)
30236	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30237	for k, v := range c.header_ {
30238		reqHeaders[k] = v
30239	}
30240	reqHeaders.Set("User-Agent", c.s.userAgent())
30241	var body io.Reader = nil
30242	body, err := googleapi.WithoutDataWrapper.JSONReader(c.directorysite)
30243	if err != nil {
30244		return nil, err
30245	}
30246	reqHeaders.Set("Content-Type", "application/json")
30247	c.urlParams_.Set("alt", alt)
30248	c.urlParams_.Set("prettyPrint", "false")
30249	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/directorySites")
30250	urls += "?" + c.urlParams_.Encode()
30251	req, err := http.NewRequest("POST", urls, body)
30252	if err != nil {
30253		return nil, err
30254	}
30255	req.Header = reqHeaders
30256	googleapi.Expand(req.URL, map[string]string{
30257		"profileId": strconv.FormatInt(c.profileId, 10),
30258	})
30259	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30260}
30261
30262// Do executes the "dfareporting.directorySites.insert" call.
30263// Exactly one of *DirectorySite or error will be non-nil. Any non-2xx
30264// status code is an error. Response headers are in either
30265// *DirectorySite.ServerResponse.Header or (if a response was returned
30266// at all) in error.(*googleapi.Error).Header. Use
30267// googleapi.IsNotModified to check whether the returned error was
30268// because http.StatusNotModified was returned.
30269func (c *DirectorySitesInsertCall) Do(opts ...googleapi.CallOption) (*DirectorySite, error) {
30270	gensupport.SetOptions(c.urlParams_, opts...)
30271	res, err := c.doRequest("json")
30272	if res != nil && res.StatusCode == http.StatusNotModified {
30273		if res.Body != nil {
30274			res.Body.Close()
30275		}
30276		return nil, &googleapi.Error{
30277			Code:   res.StatusCode,
30278			Header: res.Header,
30279		}
30280	}
30281	if err != nil {
30282		return nil, err
30283	}
30284	defer googleapi.CloseBody(res)
30285	if err := googleapi.CheckResponse(res); err != nil {
30286		return nil, err
30287	}
30288	ret := &DirectorySite{
30289		ServerResponse: googleapi.ServerResponse{
30290			Header:         res.Header,
30291			HTTPStatusCode: res.StatusCode,
30292		},
30293	}
30294	target := &ret
30295	if err := gensupport.DecodeResponse(target, res); err != nil {
30296		return nil, err
30297	}
30298	return ret, nil
30299	// {
30300	//   "description": "Inserts a new directory site.",
30301	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/directorySites",
30302	//   "httpMethod": "POST",
30303	//   "id": "dfareporting.directorySites.insert",
30304	//   "parameterOrder": [
30305	//     "profileId"
30306	//   ],
30307	//   "parameters": {
30308	//     "profileId": {
30309	//       "description": "User profile ID associated with this request.",
30310	//       "format": "int64",
30311	//       "location": "path",
30312	//       "required": true,
30313	//       "type": "string"
30314	//     }
30315	//   },
30316	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/directorySites",
30317	//   "request": {
30318	//     "$ref": "DirectorySite"
30319	//   },
30320	//   "response": {
30321	//     "$ref": "DirectorySite"
30322	//   },
30323	//   "scopes": [
30324	//     "https://www.googleapis.com/auth/dfatrafficking"
30325	//   ]
30326	// }
30327
30328}
30329
30330// method id "dfareporting.directorySites.list":
30331
30332type DirectorySitesListCall struct {
30333	s            *Service
30334	profileId    int64
30335	urlParams_   gensupport.URLParams
30336	ifNoneMatch_ string
30337	ctx_         context.Context
30338	header_      http.Header
30339}
30340
30341// List: Retrieves a list of directory sites, possibly filtered. This
30342// method supports paging.
30343//
30344// - profileId: User profile ID associated with this request.
30345func (r *DirectorySitesService) List(profileId int64) *DirectorySitesListCall {
30346	c := &DirectorySitesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30347	c.profileId = profileId
30348	return c
30349}
30350
30351// AcceptsInStreamVideoPlacements sets the optional parameter
30352// "acceptsInStreamVideoPlacements": This search filter is no longer
30353// supported and will have no effect on the results returned.
30354func (c *DirectorySitesListCall) AcceptsInStreamVideoPlacements(acceptsInStreamVideoPlacements bool) *DirectorySitesListCall {
30355	c.urlParams_.Set("acceptsInStreamVideoPlacements", fmt.Sprint(acceptsInStreamVideoPlacements))
30356	return c
30357}
30358
30359// AcceptsInterstitialPlacements sets the optional parameter
30360// "acceptsInterstitialPlacements": This search filter is no longer
30361// supported and will have no effect on the results returned.
30362func (c *DirectorySitesListCall) AcceptsInterstitialPlacements(acceptsInterstitialPlacements bool) *DirectorySitesListCall {
30363	c.urlParams_.Set("acceptsInterstitialPlacements", fmt.Sprint(acceptsInterstitialPlacements))
30364	return c
30365}
30366
30367// AcceptsPublisherPaidPlacements sets the optional parameter
30368// "acceptsPublisherPaidPlacements": Select only directory sites that
30369// accept publisher paid placements. This field can be left blank.
30370func (c *DirectorySitesListCall) AcceptsPublisherPaidPlacements(acceptsPublisherPaidPlacements bool) *DirectorySitesListCall {
30371	c.urlParams_.Set("acceptsPublisherPaidPlacements", fmt.Sprint(acceptsPublisherPaidPlacements))
30372	return c
30373}
30374
30375// Active sets the optional parameter "active": Select only active
30376// directory sites. Leave blank to retrieve both active and inactive
30377// directory sites.
30378func (c *DirectorySitesListCall) Active(active bool) *DirectorySitesListCall {
30379	c.urlParams_.Set("active", fmt.Sprint(active))
30380	return c
30381}
30382
30383// DfpNetworkCode sets the optional parameter "dfpNetworkCode": Select
30384// only directory sites with this Ad Manager network code.
30385func (c *DirectorySitesListCall) DfpNetworkCode(dfpNetworkCode string) *DirectorySitesListCall {
30386	c.urlParams_.Set("dfpNetworkCode", dfpNetworkCode)
30387	return c
30388}
30389
30390// Ids sets the optional parameter "ids": Select only directory sites
30391// with these IDs.
30392func (c *DirectorySitesListCall) Ids(ids ...int64) *DirectorySitesListCall {
30393	var ids_ []string
30394	for _, v := range ids {
30395		ids_ = append(ids_, fmt.Sprint(v))
30396	}
30397	c.urlParams_.SetMulti("ids", ids_)
30398	return c
30399}
30400
30401// MaxResults sets the optional parameter "maxResults": Maximum number
30402// of results to return.
30403func (c *DirectorySitesListCall) MaxResults(maxResults int64) *DirectorySitesListCall {
30404	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
30405	return c
30406}
30407
30408// PageToken sets the optional parameter "pageToken": Value of the
30409// nextPageToken from the previous result page.
30410func (c *DirectorySitesListCall) PageToken(pageToken string) *DirectorySitesListCall {
30411	c.urlParams_.Set("pageToken", pageToken)
30412	return c
30413}
30414
30415// SearchString sets the optional parameter "searchString": Allows
30416// searching for objects by name, ID or URL. Wildcards (*) are allowed.
30417// For example, "directory site*2015" will return objects with names
30418// like "directory site June 2015", "directory site April 2015", or
30419// simply "directory site 2015". Most of the searches also add wildcards
30420// implicitly at the start and the end of the search string. For
30421// example, a search string of "directory site" will match objects with
30422// name "my directory site", "directory site 2015" or simply, "directory
30423// site".
30424func (c *DirectorySitesListCall) SearchString(searchString string) *DirectorySitesListCall {
30425	c.urlParams_.Set("searchString", searchString)
30426	return c
30427}
30428
30429// SortField sets the optional parameter "sortField": Field by which to
30430// sort the list.
30431//
30432// Possible values:
30433//   "ID" (default)
30434//   "NAME"
30435func (c *DirectorySitesListCall) SortField(sortField string) *DirectorySitesListCall {
30436	c.urlParams_.Set("sortField", sortField)
30437	return c
30438}
30439
30440// SortOrder sets the optional parameter "sortOrder": Order of sorted
30441// results.
30442//
30443// Possible values:
30444//   "ASCENDING" (default)
30445//   "DESCENDING"
30446func (c *DirectorySitesListCall) SortOrder(sortOrder string) *DirectorySitesListCall {
30447	c.urlParams_.Set("sortOrder", sortOrder)
30448	return c
30449}
30450
30451// Fields allows partial responses to be retrieved. See
30452// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30453// for more information.
30454func (c *DirectorySitesListCall) Fields(s ...googleapi.Field) *DirectorySitesListCall {
30455	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30456	return c
30457}
30458
30459// IfNoneMatch sets the optional parameter which makes the operation
30460// fail if the object's ETag matches the given value. This is useful for
30461// getting updates only after the object has changed since the last
30462// request. Use googleapi.IsNotModified to check whether the response
30463// error from Do is the result of In-None-Match.
30464func (c *DirectorySitesListCall) IfNoneMatch(entityTag string) *DirectorySitesListCall {
30465	c.ifNoneMatch_ = entityTag
30466	return c
30467}
30468
30469// Context sets the context to be used in this call's Do method. Any
30470// pending HTTP request will be aborted if the provided context is
30471// canceled.
30472func (c *DirectorySitesListCall) Context(ctx context.Context) *DirectorySitesListCall {
30473	c.ctx_ = ctx
30474	return c
30475}
30476
30477// Header returns an http.Header that can be modified by the caller to
30478// add HTTP headers to the request.
30479func (c *DirectorySitesListCall) Header() http.Header {
30480	if c.header_ == nil {
30481		c.header_ = make(http.Header)
30482	}
30483	return c.header_
30484}
30485
30486func (c *DirectorySitesListCall) doRequest(alt string) (*http.Response, error) {
30487	reqHeaders := make(http.Header)
30488	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30489	for k, v := range c.header_ {
30490		reqHeaders[k] = v
30491	}
30492	reqHeaders.Set("User-Agent", c.s.userAgent())
30493	if c.ifNoneMatch_ != "" {
30494		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30495	}
30496	var body io.Reader = nil
30497	c.urlParams_.Set("alt", alt)
30498	c.urlParams_.Set("prettyPrint", "false")
30499	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/directorySites")
30500	urls += "?" + c.urlParams_.Encode()
30501	req, err := http.NewRequest("GET", urls, body)
30502	if err != nil {
30503		return nil, err
30504	}
30505	req.Header = reqHeaders
30506	googleapi.Expand(req.URL, map[string]string{
30507		"profileId": strconv.FormatInt(c.profileId, 10),
30508	})
30509	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30510}
30511
30512// Do executes the "dfareporting.directorySites.list" call.
30513// Exactly one of *DirectorySitesListResponse or error will be non-nil.
30514// Any non-2xx status code is an error. Response headers are in either
30515// *DirectorySitesListResponse.ServerResponse.Header or (if a response
30516// was returned at all) in error.(*googleapi.Error).Header. Use
30517// googleapi.IsNotModified to check whether the returned error was
30518// because http.StatusNotModified was returned.
30519func (c *DirectorySitesListCall) Do(opts ...googleapi.CallOption) (*DirectorySitesListResponse, error) {
30520	gensupport.SetOptions(c.urlParams_, opts...)
30521	res, err := c.doRequest("json")
30522	if res != nil && res.StatusCode == http.StatusNotModified {
30523		if res.Body != nil {
30524			res.Body.Close()
30525		}
30526		return nil, &googleapi.Error{
30527			Code:   res.StatusCode,
30528			Header: res.Header,
30529		}
30530	}
30531	if err != nil {
30532		return nil, err
30533	}
30534	defer googleapi.CloseBody(res)
30535	if err := googleapi.CheckResponse(res); err != nil {
30536		return nil, err
30537	}
30538	ret := &DirectorySitesListResponse{
30539		ServerResponse: googleapi.ServerResponse{
30540			Header:         res.Header,
30541			HTTPStatusCode: res.StatusCode,
30542		},
30543	}
30544	target := &ret
30545	if err := gensupport.DecodeResponse(target, res); err != nil {
30546		return nil, err
30547	}
30548	return ret, nil
30549	// {
30550	//   "description": "Retrieves a list of directory sites, possibly filtered. This method supports paging.",
30551	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/directorySites",
30552	//   "httpMethod": "GET",
30553	//   "id": "dfareporting.directorySites.list",
30554	//   "parameterOrder": [
30555	//     "profileId"
30556	//   ],
30557	//   "parameters": {
30558	//     "acceptsInStreamVideoPlacements": {
30559	//       "description": "This search filter is no longer supported and will have no effect on the results returned.",
30560	//       "location": "query",
30561	//       "type": "boolean"
30562	//     },
30563	//     "acceptsInterstitialPlacements": {
30564	//       "description": "This search filter is no longer supported and will have no effect on the results returned.",
30565	//       "location": "query",
30566	//       "type": "boolean"
30567	//     },
30568	//     "acceptsPublisherPaidPlacements": {
30569	//       "description": "Select only directory sites that accept publisher paid placements. This field can be left blank.",
30570	//       "location": "query",
30571	//       "type": "boolean"
30572	//     },
30573	//     "active": {
30574	//       "description": "Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.",
30575	//       "location": "query",
30576	//       "type": "boolean"
30577	//     },
30578	//     "dfpNetworkCode": {
30579	//       "description": "Select only directory sites with this Ad Manager network code.",
30580	//       "location": "query",
30581	//       "type": "string"
30582	//     },
30583	//     "ids": {
30584	//       "description": "Select only directory sites with these IDs.",
30585	//       "format": "int64",
30586	//       "location": "query",
30587	//       "repeated": true,
30588	//       "type": "string"
30589	//     },
30590	//     "maxResults": {
30591	//       "default": "1000",
30592	//       "description": "Maximum number of results to return.",
30593	//       "format": "int32",
30594	//       "location": "query",
30595	//       "maximum": "1000",
30596	//       "minimum": "0",
30597	//       "type": "integer"
30598	//     },
30599	//     "pageToken": {
30600	//       "description": "Value of the nextPageToken from the previous result page.",
30601	//       "location": "query",
30602	//       "type": "string"
30603	//     },
30604	//     "profileId": {
30605	//       "description": "User profile ID associated with this request.",
30606	//       "format": "int64",
30607	//       "location": "path",
30608	//       "required": true,
30609	//       "type": "string"
30610	//     },
30611	//     "searchString": {
30612	//       "description": "Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, \"directory site*2015\" will return objects with names like \"directory site June 2015\", \"directory site April 2015\", or simply \"directory site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site\" will match objects with name \"my directory site\", \"directory site 2015\" or simply, \"directory site\".",
30613	//       "location": "query",
30614	//       "type": "string"
30615	//     },
30616	//     "sortField": {
30617	//       "default": "ID",
30618	//       "description": "Field by which to sort the list.",
30619	//       "enum": [
30620	//         "ID",
30621	//         "NAME"
30622	//       ],
30623	//       "enumDescriptions": [
30624	//         "",
30625	//         ""
30626	//       ],
30627	//       "location": "query",
30628	//       "type": "string"
30629	//     },
30630	//     "sortOrder": {
30631	//       "default": "ASCENDING",
30632	//       "description": "Order of sorted results.",
30633	//       "enum": [
30634	//         "ASCENDING",
30635	//         "DESCENDING"
30636	//       ],
30637	//       "enumDescriptions": [
30638	//         "",
30639	//         ""
30640	//       ],
30641	//       "location": "query",
30642	//       "type": "string"
30643	//     }
30644	//   },
30645	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/directorySites",
30646	//   "response": {
30647	//     "$ref": "DirectorySitesListResponse"
30648	//   },
30649	//   "scopes": [
30650	//     "https://www.googleapis.com/auth/dfatrafficking"
30651	//   ]
30652	// }
30653
30654}
30655
30656// Pages invokes f for each page of results.
30657// A non-nil error returned from f will halt the iteration.
30658// The provided context supersedes any context provided to the Context method.
30659func (c *DirectorySitesListCall) Pages(ctx context.Context, f func(*DirectorySitesListResponse) error) error {
30660	c.ctx_ = ctx
30661	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
30662	for {
30663		x, err := c.Do()
30664		if err != nil {
30665			return err
30666		}
30667		if err := f(x); err != nil {
30668			return err
30669		}
30670		if x.NextPageToken == "" {
30671			return nil
30672		}
30673		c.PageToken(x.NextPageToken)
30674	}
30675}
30676
30677// method id "dfareporting.dynamicTargetingKeys.delete":
30678
30679type DynamicTargetingKeysDeleteCall struct {
30680	s          *Service
30681	profileId  int64
30682	objectId   int64
30683	urlParams_ gensupport.URLParams
30684	ctx_       context.Context
30685	header_    http.Header
30686}
30687
30688// Delete: Deletes an existing dynamic targeting key.
30689//
30690// - name: Name of this dynamic targeting key. This is a required field.
30691//   Must be less than 256 characters long and cannot contain commas.
30692//   All characters are converted to lowercase.
30693// - objectId: ID of the object of this dynamic targeting key. This is a
30694//   required field.
30695// - objectType: Type of the object of this dynamic targeting key. This
30696//   is a required field.
30697// - profileId: User profile ID associated with this request.
30698func (r *DynamicTargetingKeysService) Delete(profileId int64, objectId int64, name string, objectType string) *DynamicTargetingKeysDeleteCall {
30699	c := &DynamicTargetingKeysDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30700	c.profileId = profileId
30701	c.objectId = objectId
30702	c.urlParams_.Set("name", name)
30703	c.urlParams_.Set("objectType", objectType)
30704	return c
30705}
30706
30707// Fields allows partial responses to be retrieved. See
30708// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30709// for more information.
30710func (c *DynamicTargetingKeysDeleteCall) Fields(s ...googleapi.Field) *DynamicTargetingKeysDeleteCall {
30711	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30712	return c
30713}
30714
30715// Context sets the context to be used in this call's Do method. Any
30716// pending HTTP request will be aborted if the provided context is
30717// canceled.
30718func (c *DynamicTargetingKeysDeleteCall) Context(ctx context.Context) *DynamicTargetingKeysDeleteCall {
30719	c.ctx_ = ctx
30720	return c
30721}
30722
30723// Header returns an http.Header that can be modified by the caller to
30724// add HTTP headers to the request.
30725func (c *DynamicTargetingKeysDeleteCall) Header() http.Header {
30726	if c.header_ == nil {
30727		c.header_ = make(http.Header)
30728	}
30729	return c.header_
30730}
30731
30732func (c *DynamicTargetingKeysDeleteCall) doRequest(alt string) (*http.Response, error) {
30733	reqHeaders := make(http.Header)
30734	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30735	for k, v := range c.header_ {
30736		reqHeaders[k] = v
30737	}
30738	reqHeaders.Set("User-Agent", c.s.userAgent())
30739	var body io.Reader = nil
30740	c.urlParams_.Set("alt", alt)
30741	c.urlParams_.Set("prettyPrint", "false")
30742	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys/{objectId}")
30743	urls += "?" + c.urlParams_.Encode()
30744	req, err := http.NewRequest("DELETE", urls, body)
30745	if err != nil {
30746		return nil, err
30747	}
30748	req.Header = reqHeaders
30749	googleapi.Expand(req.URL, map[string]string{
30750		"profileId": strconv.FormatInt(c.profileId, 10),
30751		"objectId":  strconv.FormatInt(c.objectId, 10),
30752	})
30753	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30754}
30755
30756// Do executes the "dfareporting.dynamicTargetingKeys.delete" call.
30757func (c *DynamicTargetingKeysDeleteCall) Do(opts ...googleapi.CallOption) error {
30758	gensupport.SetOptions(c.urlParams_, opts...)
30759	res, err := c.doRequest("json")
30760	if err != nil {
30761		return err
30762	}
30763	defer googleapi.CloseBody(res)
30764	if err := googleapi.CheckResponse(res); err != nil {
30765		return err
30766	}
30767	return nil
30768	// {
30769	//   "description": "Deletes an existing dynamic targeting key.",
30770	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys/{objectId}",
30771	//   "httpMethod": "DELETE",
30772	//   "id": "dfareporting.dynamicTargetingKeys.delete",
30773	//   "parameterOrder": [
30774	//     "profileId",
30775	//     "objectId",
30776	//     "name",
30777	//     "objectType"
30778	//   ],
30779	//   "parameters": {
30780	//     "name": {
30781	//       "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.",
30782	//       "location": "query",
30783	//       "required": true,
30784	//       "type": "string"
30785	//     },
30786	//     "objectId": {
30787	//       "description": "ID of the object of this dynamic targeting key. This is a required field.",
30788	//       "format": "int64",
30789	//       "location": "path",
30790	//       "required": true,
30791	//       "type": "string"
30792	//     },
30793	//     "objectType": {
30794	//       "description": "Type of the object of this dynamic targeting key. This is a required field.",
30795	//       "enum": [
30796	//         "OBJECT_ADVERTISER",
30797	//         "OBJECT_AD",
30798	//         "OBJECT_CREATIVE",
30799	//         "OBJECT_PLACEMENT"
30800	//       ],
30801	//       "enumDescriptions": [
30802	//         "",
30803	//         "",
30804	//         "",
30805	//         ""
30806	//       ],
30807	//       "location": "query",
30808	//       "required": true,
30809	//       "type": "string"
30810	//     },
30811	//     "profileId": {
30812	//       "description": "User profile ID associated with this request.",
30813	//       "format": "int64",
30814	//       "location": "path",
30815	//       "required": true,
30816	//       "type": "string"
30817	//     }
30818	//   },
30819	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys/{objectId}",
30820	//   "scopes": [
30821	//     "https://www.googleapis.com/auth/dfatrafficking"
30822	//   ]
30823	// }
30824
30825}
30826
30827// method id "dfareporting.dynamicTargetingKeys.insert":
30828
30829type DynamicTargetingKeysInsertCall struct {
30830	s                   *Service
30831	profileId           int64
30832	dynamictargetingkey *DynamicTargetingKey
30833	urlParams_          gensupport.URLParams
30834	ctx_                context.Context
30835	header_             http.Header
30836}
30837
30838// Insert: Inserts a new dynamic targeting key. Keys must be created at
30839// the advertiser level before being assigned to the advertiser's ads,
30840// creatives, or placements. There is a maximum of 1000 keys per
30841// advertiser, out of which a maximum of 20 keys can be assigned per ad,
30842// creative, or placement.
30843//
30844// - profileId: User profile ID associated with this request.
30845func (r *DynamicTargetingKeysService) Insert(profileId int64, dynamictargetingkey *DynamicTargetingKey) *DynamicTargetingKeysInsertCall {
30846	c := &DynamicTargetingKeysInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30847	c.profileId = profileId
30848	c.dynamictargetingkey = dynamictargetingkey
30849	return c
30850}
30851
30852// Fields allows partial responses to be retrieved. See
30853// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30854// for more information.
30855func (c *DynamicTargetingKeysInsertCall) Fields(s ...googleapi.Field) *DynamicTargetingKeysInsertCall {
30856	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30857	return c
30858}
30859
30860// Context sets the context to be used in this call's Do method. Any
30861// pending HTTP request will be aborted if the provided context is
30862// canceled.
30863func (c *DynamicTargetingKeysInsertCall) Context(ctx context.Context) *DynamicTargetingKeysInsertCall {
30864	c.ctx_ = ctx
30865	return c
30866}
30867
30868// Header returns an http.Header that can be modified by the caller to
30869// add HTTP headers to the request.
30870func (c *DynamicTargetingKeysInsertCall) Header() http.Header {
30871	if c.header_ == nil {
30872		c.header_ = make(http.Header)
30873	}
30874	return c.header_
30875}
30876
30877func (c *DynamicTargetingKeysInsertCall) doRequest(alt string) (*http.Response, error) {
30878	reqHeaders := make(http.Header)
30879	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30880	for k, v := range c.header_ {
30881		reqHeaders[k] = v
30882	}
30883	reqHeaders.Set("User-Agent", c.s.userAgent())
30884	var body io.Reader = nil
30885	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dynamictargetingkey)
30886	if err != nil {
30887		return nil, err
30888	}
30889	reqHeaders.Set("Content-Type", "application/json")
30890	c.urlParams_.Set("alt", alt)
30891	c.urlParams_.Set("prettyPrint", "false")
30892	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys")
30893	urls += "?" + c.urlParams_.Encode()
30894	req, err := http.NewRequest("POST", urls, body)
30895	if err != nil {
30896		return nil, err
30897	}
30898	req.Header = reqHeaders
30899	googleapi.Expand(req.URL, map[string]string{
30900		"profileId": strconv.FormatInt(c.profileId, 10),
30901	})
30902	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30903}
30904
30905// Do executes the "dfareporting.dynamicTargetingKeys.insert" call.
30906// Exactly one of *DynamicTargetingKey or error will be non-nil. Any
30907// non-2xx status code is an error. Response headers are in either
30908// *DynamicTargetingKey.ServerResponse.Header or (if a response was
30909// returned at all) in error.(*googleapi.Error).Header. Use
30910// googleapi.IsNotModified to check whether the returned error was
30911// because http.StatusNotModified was returned.
30912func (c *DynamicTargetingKeysInsertCall) Do(opts ...googleapi.CallOption) (*DynamicTargetingKey, error) {
30913	gensupport.SetOptions(c.urlParams_, opts...)
30914	res, err := c.doRequest("json")
30915	if res != nil && res.StatusCode == http.StatusNotModified {
30916		if res.Body != nil {
30917			res.Body.Close()
30918		}
30919		return nil, &googleapi.Error{
30920			Code:   res.StatusCode,
30921			Header: res.Header,
30922		}
30923	}
30924	if err != nil {
30925		return nil, err
30926	}
30927	defer googleapi.CloseBody(res)
30928	if err := googleapi.CheckResponse(res); err != nil {
30929		return nil, err
30930	}
30931	ret := &DynamicTargetingKey{
30932		ServerResponse: googleapi.ServerResponse{
30933			Header:         res.Header,
30934			HTTPStatusCode: res.StatusCode,
30935		},
30936	}
30937	target := &ret
30938	if err := gensupport.DecodeResponse(target, res); err != nil {
30939		return nil, err
30940	}
30941	return ret, nil
30942	// {
30943	//   "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.",
30944	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys",
30945	//   "httpMethod": "POST",
30946	//   "id": "dfareporting.dynamicTargetingKeys.insert",
30947	//   "parameterOrder": [
30948	//     "profileId"
30949	//   ],
30950	//   "parameters": {
30951	//     "profileId": {
30952	//       "description": "User profile ID associated with this request.",
30953	//       "format": "int64",
30954	//       "location": "path",
30955	//       "required": true,
30956	//       "type": "string"
30957	//     }
30958	//   },
30959	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys",
30960	//   "request": {
30961	//     "$ref": "DynamicTargetingKey"
30962	//   },
30963	//   "response": {
30964	//     "$ref": "DynamicTargetingKey"
30965	//   },
30966	//   "scopes": [
30967	//     "https://www.googleapis.com/auth/dfatrafficking"
30968	//   ]
30969	// }
30970
30971}
30972
30973// method id "dfareporting.dynamicTargetingKeys.list":
30974
30975type DynamicTargetingKeysListCall struct {
30976	s            *Service
30977	profileId    int64
30978	urlParams_   gensupport.URLParams
30979	ifNoneMatch_ string
30980	ctx_         context.Context
30981	header_      http.Header
30982}
30983
30984// List: Retrieves a list of dynamic targeting keys.
30985//
30986// - profileId: User profile ID associated with this request.
30987func (r *DynamicTargetingKeysService) List(profileId int64) *DynamicTargetingKeysListCall {
30988	c := &DynamicTargetingKeysListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30989	c.profileId = profileId
30990	return c
30991}
30992
30993// AdvertiserId sets the optional parameter "advertiserId": Select only
30994// dynamic targeting keys whose object has this advertiser ID.
30995func (c *DynamicTargetingKeysListCall) AdvertiserId(advertiserId int64) *DynamicTargetingKeysListCall {
30996	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
30997	return c
30998}
30999
31000// Names sets the optional parameter "names": Select only dynamic
31001// targeting keys exactly matching these names.
31002func (c *DynamicTargetingKeysListCall) Names(names ...string) *DynamicTargetingKeysListCall {
31003	c.urlParams_.SetMulti("names", append([]string{}, names...))
31004	return c
31005}
31006
31007// ObjectId sets the optional parameter "objectId": Select only dynamic
31008// targeting keys with this object ID.
31009func (c *DynamicTargetingKeysListCall) ObjectId(objectId int64) *DynamicTargetingKeysListCall {
31010	c.urlParams_.Set("objectId", fmt.Sprint(objectId))
31011	return c
31012}
31013
31014// ObjectType sets the optional parameter "objectType": Select only
31015// dynamic targeting keys with this object type.
31016//
31017// Possible values:
31018//   "OBJECT_ADVERTISER"
31019//   "OBJECT_AD"
31020//   "OBJECT_CREATIVE"
31021//   "OBJECT_PLACEMENT"
31022func (c *DynamicTargetingKeysListCall) ObjectType(objectType string) *DynamicTargetingKeysListCall {
31023	c.urlParams_.Set("objectType", objectType)
31024	return c
31025}
31026
31027// Fields allows partial responses to be retrieved. See
31028// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31029// for more information.
31030func (c *DynamicTargetingKeysListCall) Fields(s ...googleapi.Field) *DynamicTargetingKeysListCall {
31031	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31032	return c
31033}
31034
31035// IfNoneMatch sets the optional parameter which makes the operation
31036// fail if the object's ETag matches the given value. This is useful for
31037// getting updates only after the object has changed since the last
31038// request. Use googleapi.IsNotModified to check whether the response
31039// error from Do is the result of In-None-Match.
31040func (c *DynamicTargetingKeysListCall) IfNoneMatch(entityTag string) *DynamicTargetingKeysListCall {
31041	c.ifNoneMatch_ = entityTag
31042	return c
31043}
31044
31045// Context sets the context to be used in this call's Do method. Any
31046// pending HTTP request will be aborted if the provided context is
31047// canceled.
31048func (c *DynamicTargetingKeysListCall) Context(ctx context.Context) *DynamicTargetingKeysListCall {
31049	c.ctx_ = ctx
31050	return c
31051}
31052
31053// Header returns an http.Header that can be modified by the caller to
31054// add HTTP headers to the request.
31055func (c *DynamicTargetingKeysListCall) Header() http.Header {
31056	if c.header_ == nil {
31057		c.header_ = make(http.Header)
31058	}
31059	return c.header_
31060}
31061
31062func (c *DynamicTargetingKeysListCall) doRequest(alt string) (*http.Response, error) {
31063	reqHeaders := make(http.Header)
31064	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31065	for k, v := range c.header_ {
31066		reqHeaders[k] = v
31067	}
31068	reqHeaders.Set("User-Agent", c.s.userAgent())
31069	if c.ifNoneMatch_ != "" {
31070		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31071	}
31072	var body io.Reader = nil
31073	c.urlParams_.Set("alt", alt)
31074	c.urlParams_.Set("prettyPrint", "false")
31075	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys")
31076	urls += "?" + c.urlParams_.Encode()
31077	req, err := http.NewRequest("GET", urls, body)
31078	if err != nil {
31079		return nil, err
31080	}
31081	req.Header = reqHeaders
31082	googleapi.Expand(req.URL, map[string]string{
31083		"profileId": strconv.FormatInt(c.profileId, 10),
31084	})
31085	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31086}
31087
31088// Do executes the "dfareporting.dynamicTargetingKeys.list" call.
31089// Exactly one of *DynamicTargetingKeysListResponse or error will be
31090// non-nil. Any non-2xx status code is an error. Response headers are in
31091// either *DynamicTargetingKeysListResponse.ServerResponse.Header or (if
31092// a response was returned at all) in error.(*googleapi.Error).Header.
31093// Use googleapi.IsNotModified to check whether the returned error was
31094// because http.StatusNotModified was returned.
31095func (c *DynamicTargetingKeysListCall) Do(opts ...googleapi.CallOption) (*DynamicTargetingKeysListResponse, error) {
31096	gensupport.SetOptions(c.urlParams_, opts...)
31097	res, err := c.doRequest("json")
31098	if res != nil && res.StatusCode == http.StatusNotModified {
31099		if res.Body != nil {
31100			res.Body.Close()
31101		}
31102		return nil, &googleapi.Error{
31103			Code:   res.StatusCode,
31104			Header: res.Header,
31105		}
31106	}
31107	if err != nil {
31108		return nil, err
31109	}
31110	defer googleapi.CloseBody(res)
31111	if err := googleapi.CheckResponse(res); err != nil {
31112		return nil, err
31113	}
31114	ret := &DynamicTargetingKeysListResponse{
31115		ServerResponse: googleapi.ServerResponse{
31116			Header:         res.Header,
31117			HTTPStatusCode: res.StatusCode,
31118		},
31119	}
31120	target := &ret
31121	if err := gensupport.DecodeResponse(target, res); err != nil {
31122		return nil, err
31123	}
31124	return ret, nil
31125	// {
31126	//   "description": "Retrieves a list of dynamic targeting keys.",
31127	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys",
31128	//   "httpMethod": "GET",
31129	//   "id": "dfareporting.dynamicTargetingKeys.list",
31130	//   "parameterOrder": [
31131	//     "profileId"
31132	//   ],
31133	//   "parameters": {
31134	//     "advertiserId": {
31135	//       "description": "Select only dynamic targeting keys whose object has this advertiser ID.",
31136	//       "format": "int64",
31137	//       "location": "query",
31138	//       "type": "string"
31139	//     },
31140	//     "names": {
31141	//       "description": "Select only dynamic targeting keys exactly matching these names.",
31142	//       "location": "query",
31143	//       "repeated": true,
31144	//       "type": "string"
31145	//     },
31146	//     "objectId": {
31147	//       "description": "Select only dynamic targeting keys with this object ID.",
31148	//       "format": "int64",
31149	//       "location": "query",
31150	//       "type": "string"
31151	//     },
31152	//     "objectType": {
31153	//       "description": "Select only dynamic targeting keys with this object type.",
31154	//       "enum": [
31155	//         "OBJECT_ADVERTISER",
31156	//         "OBJECT_AD",
31157	//         "OBJECT_CREATIVE",
31158	//         "OBJECT_PLACEMENT"
31159	//       ],
31160	//       "enumDescriptions": [
31161	//         "",
31162	//         "",
31163	//         "",
31164	//         ""
31165	//       ],
31166	//       "location": "query",
31167	//       "type": "string"
31168	//     },
31169	//     "profileId": {
31170	//       "description": "User profile ID associated with this request.",
31171	//       "format": "int64",
31172	//       "location": "path",
31173	//       "required": true,
31174	//       "type": "string"
31175	//     }
31176	//   },
31177	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/dynamicTargetingKeys",
31178	//   "response": {
31179	//     "$ref": "DynamicTargetingKeysListResponse"
31180	//   },
31181	//   "scopes": [
31182	//     "https://www.googleapis.com/auth/dfatrafficking"
31183	//   ]
31184	// }
31185
31186}
31187
31188// method id "dfareporting.eventTags.delete":
31189
31190type EventTagsDeleteCall struct {
31191	s          *Service
31192	profileId  int64
31193	id         int64
31194	urlParams_ gensupport.URLParams
31195	ctx_       context.Context
31196	header_    http.Header
31197}
31198
31199// Delete: Deletes an existing event tag.
31200//
31201// - id: Event tag ID.
31202// - profileId: User profile ID associated with this request.
31203func (r *EventTagsService) Delete(profileId int64, id int64) *EventTagsDeleteCall {
31204	c := &EventTagsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31205	c.profileId = profileId
31206	c.id = id
31207	return c
31208}
31209
31210// Fields allows partial responses to be retrieved. See
31211// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31212// for more information.
31213func (c *EventTagsDeleteCall) Fields(s ...googleapi.Field) *EventTagsDeleteCall {
31214	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31215	return c
31216}
31217
31218// Context sets the context to be used in this call's Do method. Any
31219// pending HTTP request will be aborted if the provided context is
31220// canceled.
31221func (c *EventTagsDeleteCall) Context(ctx context.Context) *EventTagsDeleteCall {
31222	c.ctx_ = ctx
31223	return c
31224}
31225
31226// Header returns an http.Header that can be modified by the caller to
31227// add HTTP headers to the request.
31228func (c *EventTagsDeleteCall) Header() http.Header {
31229	if c.header_ == nil {
31230		c.header_ = make(http.Header)
31231	}
31232	return c.header_
31233}
31234
31235func (c *EventTagsDeleteCall) doRequest(alt string) (*http.Response, error) {
31236	reqHeaders := make(http.Header)
31237	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31238	for k, v := range c.header_ {
31239		reqHeaders[k] = v
31240	}
31241	reqHeaders.Set("User-Agent", c.s.userAgent())
31242	var body io.Reader = nil
31243	c.urlParams_.Set("alt", alt)
31244	c.urlParams_.Set("prettyPrint", "false")
31245	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/eventTags/{id}")
31246	urls += "?" + c.urlParams_.Encode()
31247	req, err := http.NewRequest("DELETE", urls, body)
31248	if err != nil {
31249		return nil, err
31250	}
31251	req.Header = reqHeaders
31252	googleapi.Expand(req.URL, map[string]string{
31253		"profileId": strconv.FormatInt(c.profileId, 10),
31254		"id":        strconv.FormatInt(c.id, 10),
31255	})
31256	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31257}
31258
31259// Do executes the "dfareporting.eventTags.delete" call.
31260func (c *EventTagsDeleteCall) Do(opts ...googleapi.CallOption) error {
31261	gensupport.SetOptions(c.urlParams_, opts...)
31262	res, err := c.doRequest("json")
31263	if err != nil {
31264		return err
31265	}
31266	defer googleapi.CloseBody(res)
31267	if err := googleapi.CheckResponse(res); err != nil {
31268		return err
31269	}
31270	return nil
31271	// {
31272	//   "description": "Deletes an existing event tag.",
31273	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/eventTags/{id}",
31274	//   "httpMethod": "DELETE",
31275	//   "id": "dfareporting.eventTags.delete",
31276	//   "parameterOrder": [
31277	//     "profileId",
31278	//     "id"
31279	//   ],
31280	//   "parameters": {
31281	//     "id": {
31282	//       "description": "Event tag ID.",
31283	//       "format": "int64",
31284	//       "location": "path",
31285	//       "required": true,
31286	//       "type": "string"
31287	//     },
31288	//     "profileId": {
31289	//       "description": "User profile ID associated with this request.",
31290	//       "format": "int64",
31291	//       "location": "path",
31292	//       "required": true,
31293	//       "type": "string"
31294	//     }
31295	//   },
31296	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/eventTags/{id}",
31297	//   "scopes": [
31298	//     "https://www.googleapis.com/auth/dfatrafficking"
31299	//   ]
31300	// }
31301
31302}
31303
31304// method id "dfareporting.eventTags.get":
31305
31306type EventTagsGetCall struct {
31307	s            *Service
31308	profileId    int64
31309	id           int64
31310	urlParams_   gensupport.URLParams
31311	ifNoneMatch_ string
31312	ctx_         context.Context
31313	header_      http.Header
31314}
31315
31316// Get: Gets one event tag by ID.
31317//
31318// - id: Event tag ID.
31319// - profileId: User profile ID associated with this request.
31320func (r *EventTagsService) Get(profileId int64, id int64) *EventTagsGetCall {
31321	c := &EventTagsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31322	c.profileId = profileId
31323	c.id = id
31324	return c
31325}
31326
31327// Fields allows partial responses to be retrieved. See
31328// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31329// for more information.
31330func (c *EventTagsGetCall) Fields(s ...googleapi.Field) *EventTagsGetCall {
31331	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31332	return c
31333}
31334
31335// IfNoneMatch sets the optional parameter which makes the operation
31336// fail if the object's ETag matches the given value. This is useful for
31337// getting updates only after the object has changed since the last
31338// request. Use googleapi.IsNotModified to check whether the response
31339// error from Do is the result of In-None-Match.
31340func (c *EventTagsGetCall) IfNoneMatch(entityTag string) *EventTagsGetCall {
31341	c.ifNoneMatch_ = entityTag
31342	return c
31343}
31344
31345// Context sets the context to be used in this call's Do method. Any
31346// pending HTTP request will be aborted if the provided context is
31347// canceled.
31348func (c *EventTagsGetCall) Context(ctx context.Context) *EventTagsGetCall {
31349	c.ctx_ = ctx
31350	return c
31351}
31352
31353// Header returns an http.Header that can be modified by the caller to
31354// add HTTP headers to the request.
31355func (c *EventTagsGetCall) Header() http.Header {
31356	if c.header_ == nil {
31357		c.header_ = make(http.Header)
31358	}
31359	return c.header_
31360}
31361
31362func (c *EventTagsGetCall) doRequest(alt string) (*http.Response, error) {
31363	reqHeaders := make(http.Header)
31364	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31365	for k, v := range c.header_ {
31366		reqHeaders[k] = v
31367	}
31368	reqHeaders.Set("User-Agent", c.s.userAgent())
31369	if c.ifNoneMatch_ != "" {
31370		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31371	}
31372	var body io.Reader = nil
31373	c.urlParams_.Set("alt", alt)
31374	c.urlParams_.Set("prettyPrint", "false")
31375	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/eventTags/{id}")
31376	urls += "?" + c.urlParams_.Encode()
31377	req, err := http.NewRequest("GET", urls, body)
31378	if err != nil {
31379		return nil, err
31380	}
31381	req.Header = reqHeaders
31382	googleapi.Expand(req.URL, map[string]string{
31383		"profileId": strconv.FormatInt(c.profileId, 10),
31384		"id":        strconv.FormatInt(c.id, 10),
31385	})
31386	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31387}
31388
31389// Do executes the "dfareporting.eventTags.get" call.
31390// Exactly one of *EventTag or error will be non-nil. Any non-2xx status
31391// code is an error. Response headers are in either
31392// *EventTag.ServerResponse.Header or (if a response was returned at
31393// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
31394// to check whether the returned error was because
31395// http.StatusNotModified was returned.
31396func (c *EventTagsGetCall) Do(opts ...googleapi.CallOption) (*EventTag, error) {
31397	gensupport.SetOptions(c.urlParams_, opts...)
31398	res, err := c.doRequest("json")
31399	if res != nil && res.StatusCode == http.StatusNotModified {
31400		if res.Body != nil {
31401			res.Body.Close()
31402		}
31403		return nil, &googleapi.Error{
31404			Code:   res.StatusCode,
31405			Header: res.Header,
31406		}
31407	}
31408	if err != nil {
31409		return nil, err
31410	}
31411	defer googleapi.CloseBody(res)
31412	if err := googleapi.CheckResponse(res); err != nil {
31413		return nil, err
31414	}
31415	ret := &EventTag{
31416		ServerResponse: googleapi.ServerResponse{
31417			Header:         res.Header,
31418			HTTPStatusCode: res.StatusCode,
31419		},
31420	}
31421	target := &ret
31422	if err := gensupport.DecodeResponse(target, res); err != nil {
31423		return nil, err
31424	}
31425	return ret, nil
31426	// {
31427	//   "description": "Gets one event tag by ID.",
31428	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/eventTags/{id}",
31429	//   "httpMethod": "GET",
31430	//   "id": "dfareporting.eventTags.get",
31431	//   "parameterOrder": [
31432	//     "profileId",
31433	//     "id"
31434	//   ],
31435	//   "parameters": {
31436	//     "id": {
31437	//       "description": "Event tag ID.",
31438	//       "format": "int64",
31439	//       "location": "path",
31440	//       "required": true,
31441	//       "type": "string"
31442	//     },
31443	//     "profileId": {
31444	//       "description": "User profile ID associated with this request.",
31445	//       "format": "int64",
31446	//       "location": "path",
31447	//       "required": true,
31448	//       "type": "string"
31449	//     }
31450	//   },
31451	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/eventTags/{id}",
31452	//   "response": {
31453	//     "$ref": "EventTag"
31454	//   },
31455	//   "scopes": [
31456	//     "https://www.googleapis.com/auth/dfatrafficking"
31457	//   ]
31458	// }
31459
31460}
31461
31462// method id "dfareporting.eventTags.insert":
31463
31464type EventTagsInsertCall struct {
31465	s          *Service
31466	profileId  int64
31467	eventtag   *EventTag
31468	urlParams_ gensupport.URLParams
31469	ctx_       context.Context
31470	header_    http.Header
31471}
31472
31473// Insert: Inserts a new event tag.
31474//
31475// - profileId: User profile ID associated with this request.
31476func (r *EventTagsService) Insert(profileId int64, eventtag *EventTag) *EventTagsInsertCall {
31477	c := &EventTagsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31478	c.profileId = profileId
31479	c.eventtag = eventtag
31480	return c
31481}
31482
31483// Fields allows partial responses to be retrieved. See
31484// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31485// for more information.
31486func (c *EventTagsInsertCall) Fields(s ...googleapi.Field) *EventTagsInsertCall {
31487	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31488	return c
31489}
31490
31491// Context sets the context to be used in this call's Do method. Any
31492// pending HTTP request will be aborted if the provided context is
31493// canceled.
31494func (c *EventTagsInsertCall) Context(ctx context.Context) *EventTagsInsertCall {
31495	c.ctx_ = ctx
31496	return c
31497}
31498
31499// Header returns an http.Header that can be modified by the caller to
31500// add HTTP headers to the request.
31501func (c *EventTagsInsertCall) Header() http.Header {
31502	if c.header_ == nil {
31503		c.header_ = make(http.Header)
31504	}
31505	return c.header_
31506}
31507
31508func (c *EventTagsInsertCall) doRequest(alt string) (*http.Response, error) {
31509	reqHeaders := make(http.Header)
31510	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31511	for k, v := range c.header_ {
31512		reqHeaders[k] = v
31513	}
31514	reqHeaders.Set("User-Agent", c.s.userAgent())
31515	var body io.Reader = nil
31516	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventtag)
31517	if err != nil {
31518		return nil, err
31519	}
31520	reqHeaders.Set("Content-Type", "application/json")
31521	c.urlParams_.Set("alt", alt)
31522	c.urlParams_.Set("prettyPrint", "false")
31523	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/eventTags")
31524	urls += "?" + c.urlParams_.Encode()
31525	req, err := http.NewRequest("POST", urls, body)
31526	if err != nil {
31527		return nil, err
31528	}
31529	req.Header = reqHeaders
31530	googleapi.Expand(req.URL, map[string]string{
31531		"profileId": strconv.FormatInt(c.profileId, 10),
31532	})
31533	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31534}
31535
31536// Do executes the "dfareporting.eventTags.insert" call.
31537// Exactly one of *EventTag or error will be non-nil. Any non-2xx status
31538// code is an error. Response headers are in either
31539// *EventTag.ServerResponse.Header or (if a response was returned at
31540// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
31541// to check whether the returned error was because
31542// http.StatusNotModified was returned.
31543func (c *EventTagsInsertCall) Do(opts ...googleapi.CallOption) (*EventTag, error) {
31544	gensupport.SetOptions(c.urlParams_, opts...)
31545	res, err := c.doRequest("json")
31546	if res != nil && res.StatusCode == http.StatusNotModified {
31547		if res.Body != nil {
31548			res.Body.Close()
31549		}
31550		return nil, &googleapi.Error{
31551			Code:   res.StatusCode,
31552			Header: res.Header,
31553		}
31554	}
31555	if err != nil {
31556		return nil, err
31557	}
31558	defer googleapi.CloseBody(res)
31559	if err := googleapi.CheckResponse(res); err != nil {
31560		return nil, err
31561	}
31562	ret := &EventTag{
31563		ServerResponse: googleapi.ServerResponse{
31564			Header:         res.Header,
31565			HTTPStatusCode: res.StatusCode,
31566		},
31567	}
31568	target := &ret
31569	if err := gensupport.DecodeResponse(target, res); err != nil {
31570		return nil, err
31571	}
31572	return ret, nil
31573	// {
31574	//   "description": "Inserts a new event tag.",
31575	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/eventTags",
31576	//   "httpMethod": "POST",
31577	//   "id": "dfareporting.eventTags.insert",
31578	//   "parameterOrder": [
31579	//     "profileId"
31580	//   ],
31581	//   "parameters": {
31582	//     "profileId": {
31583	//       "description": "User profile ID associated with this request.",
31584	//       "format": "int64",
31585	//       "location": "path",
31586	//       "required": true,
31587	//       "type": "string"
31588	//     }
31589	//   },
31590	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/eventTags",
31591	//   "request": {
31592	//     "$ref": "EventTag"
31593	//   },
31594	//   "response": {
31595	//     "$ref": "EventTag"
31596	//   },
31597	//   "scopes": [
31598	//     "https://www.googleapis.com/auth/dfatrafficking"
31599	//   ]
31600	// }
31601
31602}
31603
31604// method id "dfareporting.eventTags.list":
31605
31606type EventTagsListCall struct {
31607	s            *Service
31608	profileId    int64
31609	urlParams_   gensupport.URLParams
31610	ifNoneMatch_ string
31611	ctx_         context.Context
31612	header_      http.Header
31613}
31614
31615// List: Retrieves a list of event tags, possibly filtered.
31616//
31617// - profileId: User profile ID associated with this request.
31618func (r *EventTagsService) List(profileId int64) *EventTagsListCall {
31619	c := &EventTagsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31620	c.profileId = profileId
31621	return c
31622}
31623
31624// AdId sets the optional parameter "adId": Select only event tags that
31625// belong to this ad.
31626func (c *EventTagsListCall) AdId(adId int64) *EventTagsListCall {
31627	c.urlParams_.Set("adId", fmt.Sprint(adId))
31628	return c
31629}
31630
31631// AdvertiserId sets the optional parameter "advertiserId": Select only
31632// event tags that belong to this advertiser.
31633func (c *EventTagsListCall) AdvertiserId(advertiserId int64) *EventTagsListCall {
31634	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
31635	return c
31636}
31637
31638// CampaignId sets the optional parameter "campaignId": Select only
31639// event tags that belong to this campaign.
31640func (c *EventTagsListCall) CampaignId(campaignId int64) *EventTagsListCall {
31641	c.urlParams_.Set("campaignId", fmt.Sprint(campaignId))
31642	return c
31643}
31644
31645// DefinitionsOnly sets the optional parameter "definitionsOnly":
31646// Examine only the specified campaign or advertiser's event tags for
31647// matching selector criteria. When set to false, the parent advertiser
31648// and parent campaign of the specified ad or campaign is examined as
31649// well. In addition, when set to false, the status field is examined as
31650// well, along with the enabledByDefault field. This parameter can not
31651// be set to true when adId is specified as ads do not define their own
31652// even tags.
31653func (c *EventTagsListCall) DefinitionsOnly(definitionsOnly bool) *EventTagsListCall {
31654	c.urlParams_.Set("definitionsOnly", fmt.Sprint(definitionsOnly))
31655	return c
31656}
31657
31658// Enabled sets the optional parameter "enabled": Select only enabled
31659// event tags. What is considered enabled or disabled depends on the
31660// definitionsOnly parameter. When definitionsOnly is set to true, only
31661// the specified advertiser or campaign's event tags' enabledByDefault
31662// field is examined. When definitionsOnly is set to false, the
31663// specified ad or specified campaign's parent advertiser's or parent
31664// campaign's event tags' enabledByDefault and status fields are
31665// examined as well.
31666func (c *EventTagsListCall) Enabled(enabled bool) *EventTagsListCall {
31667	c.urlParams_.Set("enabled", fmt.Sprint(enabled))
31668	return c
31669}
31670
31671// EventTagTypes sets the optional parameter "eventTagTypes": Select
31672// only event tags with the specified event tag types. Event tag types
31673// can be used to specify whether to use a third-party pixel, a
31674// third-party JavaScript URL, or a third-party click-through URL for
31675// either impression or click tracking.
31676//
31677// Possible values:
31678//   "IMPRESSION_IMAGE_EVENT_TAG"
31679//   "IMPRESSION_JAVASCRIPT_EVENT_TAG"
31680//   "CLICK_THROUGH_EVENT_TAG"
31681func (c *EventTagsListCall) EventTagTypes(eventTagTypes ...string) *EventTagsListCall {
31682	c.urlParams_.SetMulti("eventTagTypes", append([]string{}, eventTagTypes...))
31683	return c
31684}
31685
31686// Ids sets the optional parameter "ids": Select only event tags with
31687// these IDs.
31688func (c *EventTagsListCall) Ids(ids ...int64) *EventTagsListCall {
31689	var ids_ []string
31690	for _, v := range ids {
31691		ids_ = append(ids_, fmt.Sprint(v))
31692	}
31693	c.urlParams_.SetMulti("ids", ids_)
31694	return c
31695}
31696
31697// SearchString sets the optional parameter "searchString": Allows
31698// searching for objects by name or ID. Wildcards (*) are allowed. For
31699// example, "eventtag*2015" will return objects with names like
31700// "eventtag June 2015", "eventtag April 2015", or simply "eventtag
31701// 2015". Most of the searches also add wildcards implicitly at the
31702// start and the end of the search string. For example, a search string
31703// of "eventtag" will match objects with name "my eventtag", "eventtag
31704// 2015", or simply "eventtag".
31705func (c *EventTagsListCall) SearchString(searchString string) *EventTagsListCall {
31706	c.urlParams_.Set("searchString", searchString)
31707	return c
31708}
31709
31710// SortField sets the optional parameter "sortField": Field by which to
31711// sort the list.
31712//
31713// Possible values:
31714//   "ID" (default)
31715//   "NAME"
31716func (c *EventTagsListCall) SortField(sortField string) *EventTagsListCall {
31717	c.urlParams_.Set("sortField", sortField)
31718	return c
31719}
31720
31721// SortOrder sets the optional parameter "sortOrder": Order of sorted
31722// results.
31723//
31724// Possible values:
31725//   "ASCENDING" (default)
31726//   "DESCENDING"
31727func (c *EventTagsListCall) SortOrder(sortOrder string) *EventTagsListCall {
31728	c.urlParams_.Set("sortOrder", sortOrder)
31729	return c
31730}
31731
31732// Fields allows partial responses to be retrieved. See
31733// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31734// for more information.
31735func (c *EventTagsListCall) Fields(s ...googleapi.Field) *EventTagsListCall {
31736	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31737	return c
31738}
31739
31740// IfNoneMatch sets the optional parameter which makes the operation
31741// fail if the object's ETag matches the given value. This is useful for
31742// getting updates only after the object has changed since the last
31743// request. Use googleapi.IsNotModified to check whether the response
31744// error from Do is the result of In-None-Match.
31745func (c *EventTagsListCall) IfNoneMatch(entityTag string) *EventTagsListCall {
31746	c.ifNoneMatch_ = entityTag
31747	return c
31748}
31749
31750// Context sets the context to be used in this call's Do method. Any
31751// pending HTTP request will be aborted if the provided context is
31752// canceled.
31753func (c *EventTagsListCall) Context(ctx context.Context) *EventTagsListCall {
31754	c.ctx_ = ctx
31755	return c
31756}
31757
31758// Header returns an http.Header that can be modified by the caller to
31759// add HTTP headers to the request.
31760func (c *EventTagsListCall) Header() http.Header {
31761	if c.header_ == nil {
31762		c.header_ = make(http.Header)
31763	}
31764	return c.header_
31765}
31766
31767func (c *EventTagsListCall) doRequest(alt string) (*http.Response, error) {
31768	reqHeaders := make(http.Header)
31769	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31770	for k, v := range c.header_ {
31771		reqHeaders[k] = v
31772	}
31773	reqHeaders.Set("User-Agent", c.s.userAgent())
31774	if c.ifNoneMatch_ != "" {
31775		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31776	}
31777	var body io.Reader = nil
31778	c.urlParams_.Set("alt", alt)
31779	c.urlParams_.Set("prettyPrint", "false")
31780	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/eventTags")
31781	urls += "?" + c.urlParams_.Encode()
31782	req, err := http.NewRequest("GET", urls, body)
31783	if err != nil {
31784		return nil, err
31785	}
31786	req.Header = reqHeaders
31787	googleapi.Expand(req.URL, map[string]string{
31788		"profileId": strconv.FormatInt(c.profileId, 10),
31789	})
31790	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31791}
31792
31793// Do executes the "dfareporting.eventTags.list" call.
31794// Exactly one of *EventTagsListResponse or error will be non-nil. Any
31795// non-2xx status code is an error. Response headers are in either
31796// *EventTagsListResponse.ServerResponse.Header or (if a response was
31797// returned at all) in error.(*googleapi.Error).Header. Use
31798// googleapi.IsNotModified to check whether the returned error was
31799// because http.StatusNotModified was returned.
31800func (c *EventTagsListCall) Do(opts ...googleapi.CallOption) (*EventTagsListResponse, error) {
31801	gensupport.SetOptions(c.urlParams_, opts...)
31802	res, err := c.doRequest("json")
31803	if res != nil && res.StatusCode == http.StatusNotModified {
31804		if res.Body != nil {
31805			res.Body.Close()
31806		}
31807		return nil, &googleapi.Error{
31808			Code:   res.StatusCode,
31809			Header: res.Header,
31810		}
31811	}
31812	if err != nil {
31813		return nil, err
31814	}
31815	defer googleapi.CloseBody(res)
31816	if err := googleapi.CheckResponse(res); err != nil {
31817		return nil, err
31818	}
31819	ret := &EventTagsListResponse{
31820		ServerResponse: googleapi.ServerResponse{
31821			Header:         res.Header,
31822			HTTPStatusCode: res.StatusCode,
31823		},
31824	}
31825	target := &ret
31826	if err := gensupport.DecodeResponse(target, res); err != nil {
31827		return nil, err
31828	}
31829	return ret, nil
31830	// {
31831	//   "description": "Retrieves a list of event tags, possibly filtered.",
31832	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/eventTags",
31833	//   "httpMethod": "GET",
31834	//   "id": "dfareporting.eventTags.list",
31835	//   "parameterOrder": [
31836	//     "profileId"
31837	//   ],
31838	//   "parameters": {
31839	//     "adId": {
31840	//       "description": "Select only event tags that belong to this ad.",
31841	//       "format": "int64",
31842	//       "location": "query",
31843	//       "type": "string"
31844	//     },
31845	//     "advertiserId": {
31846	//       "description": "Select only event tags that belong to this advertiser.",
31847	//       "format": "int64",
31848	//       "location": "query",
31849	//       "type": "string"
31850	//     },
31851	//     "campaignId": {
31852	//       "description": "Select only event tags that belong to this campaign.",
31853	//       "format": "int64",
31854	//       "location": "query",
31855	//       "type": "string"
31856	//     },
31857	//     "definitionsOnly": {
31858	//       "description": "Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.",
31859	//       "location": "query",
31860	//       "type": "boolean"
31861	//     },
31862	//     "enabled": {
31863	//       "description": "Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.",
31864	//       "location": "query",
31865	//       "type": "boolean"
31866	//     },
31867	//     "eventTagTypes": {
31868	//       "description": "Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.",
31869	//       "enum": [
31870	//         "IMPRESSION_IMAGE_EVENT_TAG",
31871	//         "IMPRESSION_JAVASCRIPT_EVENT_TAG",
31872	//         "CLICK_THROUGH_EVENT_TAG"
31873	//       ],
31874	//       "enumDescriptions": [
31875	//         "",
31876	//         "",
31877	//         ""
31878	//       ],
31879	//       "location": "query",
31880	//       "repeated": true,
31881	//       "type": "string"
31882	//     },
31883	//     "ids": {
31884	//       "description": "Select only event tags with these IDs.",
31885	//       "format": "int64",
31886	//       "location": "query",
31887	//       "repeated": true,
31888	//       "type": "string"
31889	//     },
31890	//     "profileId": {
31891	//       "description": "User profile ID associated with this request.",
31892	//       "format": "int64",
31893	//       "location": "path",
31894	//       "required": true,
31895	//       "type": "string"
31896	//     },
31897	//     "searchString": {
31898	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"eventtag*2015\" will return objects with names like \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"eventtag\" will match objects with name \"my eventtag\", \"eventtag 2015\", or simply \"eventtag\".",
31899	//       "location": "query",
31900	//       "type": "string"
31901	//     },
31902	//     "sortField": {
31903	//       "default": "ID",
31904	//       "description": "Field by which to sort the list.",
31905	//       "enum": [
31906	//         "ID",
31907	//         "NAME"
31908	//       ],
31909	//       "enumDescriptions": [
31910	//         "",
31911	//         ""
31912	//       ],
31913	//       "location": "query",
31914	//       "type": "string"
31915	//     },
31916	//     "sortOrder": {
31917	//       "default": "ASCENDING",
31918	//       "description": "Order of sorted results.",
31919	//       "enum": [
31920	//         "ASCENDING",
31921	//         "DESCENDING"
31922	//       ],
31923	//       "enumDescriptions": [
31924	//         "",
31925	//         ""
31926	//       ],
31927	//       "location": "query",
31928	//       "type": "string"
31929	//     }
31930	//   },
31931	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/eventTags",
31932	//   "response": {
31933	//     "$ref": "EventTagsListResponse"
31934	//   },
31935	//   "scopes": [
31936	//     "https://www.googleapis.com/auth/dfatrafficking"
31937	//   ]
31938	// }
31939
31940}
31941
31942// method id "dfareporting.eventTags.patch":
31943
31944type EventTagsPatchCall struct {
31945	s          *Service
31946	profileId  int64
31947	eventtag   *EventTag
31948	urlParams_ gensupport.URLParams
31949	ctx_       context.Context
31950	header_    http.Header
31951}
31952
31953// Patch: Updates an existing event tag. This method supports patch
31954// semantics.
31955//
31956// - id: EventTag ID.
31957// - profileId: User profile ID associated with this request.
31958func (r *EventTagsService) Patch(profileId int64, id int64, eventtag *EventTag) *EventTagsPatchCall {
31959	c := &EventTagsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31960	c.profileId = profileId
31961	c.urlParams_.Set("id", fmt.Sprint(id))
31962	c.eventtag = eventtag
31963	return c
31964}
31965
31966// Fields allows partial responses to be retrieved. See
31967// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31968// for more information.
31969func (c *EventTagsPatchCall) Fields(s ...googleapi.Field) *EventTagsPatchCall {
31970	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31971	return c
31972}
31973
31974// Context sets the context to be used in this call's Do method. Any
31975// pending HTTP request will be aborted if the provided context is
31976// canceled.
31977func (c *EventTagsPatchCall) Context(ctx context.Context) *EventTagsPatchCall {
31978	c.ctx_ = ctx
31979	return c
31980}
31981
31982// Header returns an http.Header that can be modified by the caller to
31983// add HTTP headers to the request.
31984func (c *EventTagsPatchCall) Header() http.Header {
31985	if c.header_ == nil {
31986		c.header_ = make(http.Header)
31987	}
31988	return c.header_
31989}
31990
31991func (c *EventTagsPatchCall) doRequest(alt string) (*http.Response, error) {
31992	reqHeaders := make(http.Header)
31993	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31994	for k, v := range c.header_ {
31995		reqHeaders[k] = v
31996	}
31997	reqHeaders.Set("User-Agent", c.s.userAgent())
31998	var body io.Reader = nil
31999	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventtag)
32000	if err != nil {
32001		return nil, err
32002	}
32003	reqHeaders.Set("Content-Type", "application/json")
32004	c.urlParams_.Set("alt", alt)
32005	c.urlParams_.Set("prettyPrint", "false")
32006	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/eventTags")
32007	urls += "?" + c.urlParams_.Encode()
32008	req, err := http.NewRequest("PATCH", urls, body)
32009	if err != nil {
32010		return nil, err
32011	}
32012	req.Header = reqHeaders
32013	googleapi.Expand(req.URL, map[string]string{
32014		"profileId": strconv.FormatInt(c.profileId, 10),
32015	})
32016	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32017}
32018
32019// Do executes the "dfareporting.eventTags.patch" call.
32020// Exactly one of *EventTag or error will be non-nil. Any non-2xx status
32021// code is an error. Response headers are in either
32022// *EventTag.ServerResponse.Header or (if a response was returned at
32023// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
32024// to check whether the returned error was because
32025// http.StatusNotModified was returned.
32026func (c *EventTagsPatchCall) Do(opts ...googleapi.CallOption) (*EventTag, error) {
32027	gensupport.SetOptions(c.urlParams_, opts...)
32028	res, err := c.doRequest("json")
32029	if res != nil && res.StatusCode == http.StatusNotModified {
32030		if res.Body != nil {
32031			res.Body.Close()
32032		}
32033		return nil, &googleapi.Error{
32034			Code:   res.StatusCode,
32035			Header: res.Header,
32036		}
32037	}
32038	if err != nil {
32039		return nil, err
32040	}
32041	defer googleapi.CloseBody(res)
32042	if err := googleapi.CheckResponse(res); err != nil {
32043		return nil, err
32044	}
32045	ret := &EventTag{
32046		ServerResponse: googleapi.ServerResponse{
32047			Header:         res.Header,
32048			HTTPStatusCode: res.StatusCode,
32049		},
32050	}
32051	target := &ret
32052	if err := gensupport.DecodeResponse(target, res); err != nil {
32053		return nil, err
32054	}
32055	return ret, nil
32056	// {
32057	//   "description": "Updates an existing event tag. This method supports patch semantics.",
32058	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/eventTags",
32059	//   "httpMethod": "PATCH",
32060	//   "id": "dfareporting.eventTags.patch",
32061	//   "parameterOrder": [
32062	//     "profileId",
32063	//     "id"
32064	//   ],
32065	//   "parameters": {
32066	//     "id": {
32067	//       "description": "EventTag ID.",
32068	//       "format": "int64",
32069	//       "location": "query",
32070	//       "required": true,
32071	//       "type": "string"
32072	//     },
32073	//     "profileId": {
32074	//       "description": "User profile ID associated with this request.",
32075	//       "format": "int64",
32076	//       "location": "path",
32077	//       "required": true,
32078	//       "type": "string"
32079	//     }
32080	//   },
32081	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/eventTags",
32082	//   "request": {
32083	//     "$ref": "EventTag"
32084	//   },
32085	//   "response": {
32086	//     "$ref": "EventTag"
32087	//   },
32088	//   "scopes": [
32089	//     "https://www.googleapis.com/auth/dfatrafficking"
32090	//   ]
32091	// }
32092
32093}
32094
32095// method id "dfareporting.eventTags.update":
32096
32097type EventTagsUpdateCall struct {
32098	s          *Service
32099	profileId  int64
32100	eventtag   *EventTag
32101	urlParams_ gensupport.URLParams
32102	ctx_       context.Context
32103	header_    http.Header
32104}
32105
32106// Update: Updates an existing event tag.
32107//
32108// - profileId: User profile ID associated with this request.
32109func (r *EventTagsService) Update(profileId int64, eventtag *EventTag) *EventTagsUpdateCall {
32110	c := &EventTagsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32111	c.profileId = profileId
32112	c.eventtag = eventtag
32113	return c
32114}
32115
32116// Fields allows partial responses to be retrieved. See
32117// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32118// for more information.
32119func (c *EventTagsUpdateCall) Fields(s ...googleapi.Field) *EventTagsUpdateCall {
32120	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32121	return c
32122}
32123
32124// Context sets the context to be used in this call's Do method. Any
32125// pending HTTP request will be aborted if the provided context is
32126// canceled.
32127func (c *EventTagsUpdateCall) Context(ctx context.Context) *EventTagsUpdateCall {
32128	c.ctx_ = ctx
32129	return c
32130}
32131
32132// Header returns an http.Header that can be modified by the caller to
32133// add HTTP headers to the request.
32134func (c *EventTagsUpdateCall) Header() http.Header {
32135	if c.header_ == nil {
32136		c.header_ = make(http.Header)
32137	}
32138	return c.header_
32139}
32140
32141func (c *EventTagsUpdateCall) doRequest(alt string) (*http.Response, error) {
32142	reqHeaders := make(http.Header)
32143	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32144	for k, v := range c.header_ {
32145		reqHeaders[k] = v
32146	}
32147	reqHeaders.Set("User-Agent", c.s.userAgent())
32148	var body io.Reader = nil
32149	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventtag)
32150	if err != nil {
32151		return nil, err
32152	}
32153	reqHeaders.Set("Content-Type", "application/json")
32154	c.urlParams_.Set("alt", alt)
32155	c.urlParams_.Set("prettyPrint", "false")
32156	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/eventTags")
32157	urls += "?" + c.urlParams_.Encode()
32158	req, err := http.NewRequest("PUT", urls, body)
32159	if err != nil {
32160		return nil, err
32161	}
32162	req.Header = reqHeaders
32163	googleapi.Expand(req.URL, map[string]string{
32164		"profileId": strconv.FormatInt(c.profileId, 10),
32165	})
32166	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32167}
32168
32169// Do executes the "dfareporting.eventTags.update" call.
32170// Exactly one of *EventTag or error will be non-nil. Any non-2xx status
32171// code is an error. Response headers are in either
32172// *EventTag.ServerResponse.Header or (if a response was returned at
32173// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
32174// to check whether the returned error was because
32175// http.StatusNotModified was returned.
32176func (c *EventTagsUpdateCall) Do(opts ...googleapi.CallOption) (*EventTag, error) {
32177	gensupport.SetOptions(c.urlParams_, opts...)
32178	res, err := c.doRequest("json")
32179	if res != nil && res.StatusCode == http.StatusNotModified {
32180		if res.Body != nil {
32181			res.Body.Close()
32182		}
32183		return nil, &googleapi.Error{
32184			Code:   res.StatusCode,
32185			Header: res.Header,
32186		}
32187	}
32188	if err != nil {
32189		return nil, err
32190	}
32191	defer googleapi.CloseBody(res)
32192	if err := googleapi.CheckResponse(res); err != nil {
32193		return nil, err
32194	}
32195	ret := &EventTag{
32196		ServerResponse: googleapi.ServerResponse{
32197			Header:         res.Header,
32198			HTTPStatusCode: res.StatusCode,
32199		},
32200	}
32201	target := &ret
32202	if err := gensupport.DecodeResponse(target, res); err != nil {
32203		return nil, err
32204	}
32205	return ret, nil
32206	// {
32207	//   "description": "Updates an existing event tag.",
32208	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/eventTags",
32209	//   "httpMethod": "PUT",
32210	//   "id": "dfareporting.eventTags.update",
32211	//   "parameterOrder": [
32212	//     "profileId"
32213	//   ],
32214	//   "parameters": {
32215	//     "profileId": {
32216	//       "description": "User profile ID associated with this request.",
32217	//       "format": "int64",
32218	//       "location": "path",
32219	//       "required": true,
32220	//       "type": "string"
32221	//     }
32222	//   },
32223	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/eventTags",
32224	//   "request": {
32225	//     "$ref": "EventTag"
32226	//   },
32227	//   "response": {
32228	//     "$ref": "EventTag"
32229	//   },
32230	//   "scopes": [
32231	//     "https://www.googleapis.com/auth/dfatrafficking"
32232	//   ]
32233	// }
32234
32235}
32236
32237// method id "dfareporting.files.get":
32238
32239type FilesGetCall struct {
32240	s            *Service
32241	reportId     int64
32242	fileId       int64
32243	urlParams_   gensupport.URLParams
32244	ifNoneMatch_ string
32245	ctx_         context.Context
32246	header_      http.Header
32247}
32248
32249// Get: Retrieves a report file by its report ID and file ID. This
32250// method supports media download.
32251//
32252// - fileId: The ID of the report file.
32253// - reportId: The ID of the report.
32254func (r *FilesService) Get(reportId int64, fileId int64) *FilesGetCall {
32255	c := &FilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32256	c.reportId = reportId
32257	c.fileId = fileId
32258	return c
32259}
32260
32261// Fields allows partial responses to be retrieved. See
32262// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32263// for more information.
32264func (c *FilesGetCall) Fields(s ...googleapi.Field) *FilesGetCall {
32265	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32266	return c
32267}
32268
32269// IfNoneMatch sets the optional parameter which makes the operation
32270// fail if the object's ETag matches the given value. This is useful for
32271// getting updates only after the object has changed since the last
32272// request. Use googleapi.IsNotModified to check whether the response
32273// error from Do is the result of In-None-Match.
32274func (c *FilesGetCall) IfNoneMatch(entityTag string) *FilesGetCall {
32275	c.ifNoneMatch_ = entityTag
32276	return c
32277}
32278
32279// Context sets the context to be used in this call's Do and Download
32280// methods. Any pending HTTP request will be aborted if the provided
32281// context is canceled.
32282func (c *FilesGetCall) Context(ctx context.Context) *FilesGetCall {
32283	c.ctx_ = ctx
32284	return c
32285}
32286
32287// Header returns an http.Header that can be modified by the caller to
32288// add HTTP headers to the request.
32289func (c *FilesGetCall) Header() http.Header {
32290	if c.header_ == nil {
32291		c.header_ = make(http.Header)
32292	}
32293	return c.header_
32294}
32295
32296func (c *FilesGetCall) doRequest(alt string) (*http.Response, error) {
32297	reqHeaders := make(http.Header)
32298	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32299	for k, v := range c.header_ {
32300		reqHeaders[k] = v
32301	}
32302	reqHeaders.Set("User-Agent", c.s.userAgent())
32303	if c.ifNoneMatch_ != "" {
32304		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32305	}
32306	var body io.Reader = nil
32307	c.urlParams_.Set("alt", alt)
32308	c.urlParams_.Set("prettyPrint", "false")
32309	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/reports/{reportId}/files/{fileId}")
32310	urls += "?" + c.urlParams_.Encode()
32311	req, err := http.NewRequest("GET", urls, body)
32312	if err != nil {
32313		return nil, err
32314	}
32315	req.Header = reqHeaders
32316	googleapi.Expand(req.URL, map[string]string{
32317		"reportId": strconv.FormatInt(c.reportId, 10),
32318		"fileId":   strconv.FormatInt(c.fileId, 10),
32319	})
32320	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32321}
32322
32323// Download fetches the API endpoint's "media" value, instead of the normal
32324// API response value. If the returned error is nil, the Response is guaranteed to
32325// have a 2xx status code. Callers must close the Response.Body as usual.
32326func (c *FilesGetCall) Download(opts ...googleapi.CallOption) (*http.Response, error) {
32327	gensupport.SetOptions(c.urlParams_, opts...)
32328	res, err := c.doRequest("media")
32329	if err != nil {
32330		return nil, err
32331	}
32332	if err := googleapi.CheckResponse(res); err != nil {
32333		res.Body.Close()
32334		return nil, err
32335	}
32336	return res, nil
32337}
32338
32339// Do executes the "dfareporting.files.get" call.
32340// Exactly one of *File or error will be non-nil. Any non-2xx status
32341// code is an error. Response headers are in either
32342// *File.ServerResponse.Header or (if a response was returned at all) in
32343// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32344// whether the returned error was because http.StatusNotModified was
32345// returned.
32346func (c *FilesGetCall) Do(opts ...googleapi.CallOption) (*File, error) {
32347	gensupport.SetOptions(c.urlParams_, opts...)
32348	res, err := c.doRequest("json")
32349	if res != nil && res.StatusCode == http.StatusNotModified {
32350		if res.Body != nil {
32351			res.Body.Close()
32352		}
32353		return nil, &googleapi.Error{
32354			Code:   res.StatusCode,
32355			Header: res.Header,
32356		}
32357	}
32358	if err != nil {
32359		return nil, err
32360	}
32361	defer googleapi.CloseBody(res)
32362	if err := googleapi.CheckResponse(res); err != nil {
32363		return nil, err
32364	}
32365	ret := &File{
32366		ServerResponse: googleapi.ServerResponse{
32367			Header:         res.Header,
32368			HTTPStatusCode: res.StatusCode,
32369		},
32370	}
32371	target := &ret
32372	if err := gensupport.DecodeResponse(target, res); err != nil {
32373		return nil, err
32374	}
32375	return ret, nil
32376	// {
32377	//   "description": "Retrieves a report file by its report ID and file ID. This method supports media download.",
32378	//   "flatPath": "dfareporting/v3.5/reports/{reportId}/files/{fileId}",
32379	//   "httpMethod": "GET",
32380	//   "id": "dfareporting.files.get",
32381	//   "parameterOrder": [
32382	//     "reportId",
32383	//     "fileId"
32384	//   ],
32385	//   "parameters": {
32386	//     "fileId": {
32387	//       "description": "The ID of the report file.",
32388	//       "format": "int64",
32389	//       "location": "path",
32390	//       "required": true,
32391	//       "type": "string"
32392	//     },
32393	//     "reportId": {
32394	//       "description": "The ID of the report.",
32395	//       "format": "int64",
32396	//       "location": "path",
32397	//       "required": true,
32398	//       "type": "string"
32399	//     }
32400	//   },
32401	//   "path": "dfareporting/v3.5/reports/{reportId}/files/{fileId}",
32402	//   "response": {
32403	//     "$ref": "File"
32404	//   },
32405	//   "scopes": [
32406	//     "https://www.googleapis.com/auth/dfareporting"
32407	//   ],
32408	//   "supportsMediaDownload": true
32409	// }
32410
32411}
32412
32413// method id "dfareporting.files.list":
32414
32415type FilesListCall struct {
32416	s            *Service
32417	profileId    int64
32418	urlParams_   gensupport.URLParams
32419	ifNoneMatch_ string
32420	ctx_         context.Context
32421	header_      http.Header
32422}
32423
32424// List: Lists files for a user profile.
32425//
32426// - profileId: The Campaign Manager 360 user profile ID.
32427func (r *FilesService) List(profileId int64) *FilesListCall {
32428	c := &FilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32429	c.profileId = profileId
32430	return c
32431}
32432
32433// MaxResults sets the optional parameter "maxResults": Maximum number
32434// of results to return.
32435func (c *FilesListCall) MaxResults(maxResults int64) *FilesListCall {
32436	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
32437	return c
32438}
32439
32440// PageToken sets the optional parameter "pageToken": The value of the
32441// nextToken from the previous result page.
32442func (c *FilesListCall) PageToken(pageToken string) *FilesListCall {
32443	c.urlParams_.Set("pageToken", pageToken)
32444	return c
32445}
32446
32447// Scope sets the optional parameter "scope": The scope that defines
32448// which results are returned.
32449//
32450// Possible values:
32451//   "ALL" - All files in account.
32452//   "MINE" (default) - My files.
32453//   "SHARED_WITH_ME" - Files shared with me.
32454func (c *FilesListCall) Scope(scope string) *FilesListCall {
32455	c.urlParams_.Set("scope", scope)
32456	return c
32457}
32458
32459// SortField sets the optional parameter "sortField": The field by which
32460// to sort the list.
32461//
32462// Possible values:
32463//   "ID" - Sort by file ID.
32464//   "LAST_MODIFIED_TIME" (default) - Sort by 'lastmodifiedAt' field.
32465func (c *FilesListCall) SortField(sortField string) *FilesListCall {
32466	c.urlParams_.Set("sortField", sortField)
32467	return c
32468}
32469
32470// SortOrder sets the optional parameter "sortOrder": Order of sorted
32471// results.
32472//
32473// Possible values:
32474//   "ASCENDING" - Ascending order.
32475//   "DESCENDING" (default) - Descending order.
32476func (c *FilesListCall) SortOrder(sortOrder string) *FilesListCall {
32477	c.urlParams_.Set("sortOrder", sortOrder)
32478	return c
32479}
32480
32481// Fields allows partial responses to be retrieved. See
32482// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32483// for more information.
32484func (c *FilesListCall) Fields(s ...googleapi.Field) *FilesListCall {
32485	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32486	return c
32487}
32488
32489// IfNoneMatch sets the optional parameter which makes the operation
32490// fail if the object's ETag matches the given value. This is useful for
32491// getting updates only after the object has changed since the last
32492// request. Use googleapi.IsNotModified to check whether the response
32493// error from Do is the result of In-None-Match.
32494func (c *FilesListCall) IfNoneMatch(entityTag string) *FilesListCall {
32495	c.ifNoneMatch_ = entityTag
32496	return c
32497}
32498
32499// Context sets the context to be used in this call's Do method. Any
32500// pending HTTP request will be aborted if the provided context is
32501// canceled.
32502func (c *FilesListCall) Context(ctx context.Context) *FilesListCall {
32503	c.ctx_ = ctx
32504	return c
32505}
32506
32507// Header returns an http.Header that can be modified by the caller to
32508// add HTTP headers to the request.
32509func (c *FilesListCall) Header() http.Header {
32510	if c.header_ == nil {
32511		c.header_ = make(http.Header)
32512	}
32513	return c.header_
32514}
32515
32516func (c *FilesListCall) doRequest(alt string) (*http.Response, error) {
32517	reqHeaders := make(http.Header)
32518	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32519	for k, v := range c.header_ {
32520		reqHeaders[k] = v
32521	}
32522	reqHeaders.Set("User-Agent", c.s.userAgent())
32523	if c.ifNoneMatch_ != "" {
32524		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32525	}
32526	var body io.Reader = nil
32527	c.urlParams_.Set("alt", alt)
32528	c.urlParams_.Set("prettyPrint", "false")
32529	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/files")
32530	urls += "?" + c.urlParams_.Encode()
32531	req, err := http.NewRequest("GET", urls, body)
32532	if err != nil {
32533		return nil, err
32534	}
32535	req.Header = reqHeaders
32536	googleapi.Expand(req.URL, map[string]string{
32537		"profileId": strconv.FormatInt(c.profileId, 10),
32538	})
32539	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32540}
32541
32542// Do executes the "dfareporting.files.list" call.
32543// Exactly one of *FileList or error will be non-nil. Any non-2xx status
32544// code is an error. Response headers are in either
32545// *FileList.ServerResponse.Header or (if a response was returned at
32546// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
32547// to check whether the returned error was because
32548// http.StatusNotModified was returned.
32549func (c *FilesListCall) Do(opts ...googleapi.CallOption) (*FileList, error) {
32550	gensupport.SetOptions(c.urlParams_, opts...)
32551	res, err := c.doRequest("json")
32552	if res != nil && res.StatusCode == http.StatusNotModified {
32553		if res.Body != nil {
32554			res.Body.Close()
32555		}
32556		return nil, &googleapi.Error{
32557			Code:   res.StatusCode,
32558			Header: res.Header,
32559		}
32560	}
32561	if err != nil {
32562		return nil, err
32563	}
32564	defer googleapi.CloseBody(res)
32565	if err := googleapi.CheckResponse(res); err != nil {
32566		return nil, err
32567	}
32568	ret := &FileList{
32569		ServerResponse: googleapi.ServerResponse{
32570			Header:         res.Header,
32571			HTTPStatusCode: res.StatusCode,
32572		},
32573	}
32574	target := &ret
32575	if err := gensupport.DecodeResponse(target, res); err != nil {
32576		return nil, err
32577	}
32578	return ret, nil
32579	// {
32580	//   "description": "Lists files for a user profile.",
32581	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/files",
32582	//   "httpMethod": "GET",
32583	//   "id": "dfareporting.files.list",
32584	//   "parameterOrder": [
32585	//     "profileId"
32586	//   ],
32587	//   "parameters": {
32588	//     "maxResults": {
32589	//       "default": "10",
32590	//       "description": "Maximum number of results to return.",
32591	//       "format": "int32",
32592	//       "location": "query",
32593	//       "maximum": "10",
32594	//       "minimum": "0",
32595	//       "type": "integer"
32596	//     },
32597	//     "pageToken": {
32598	//       "description": "The value of the nextToken from the previous result page.",
32599	//       "location": "query",
32600	//       "type": "string"
32601	//     },
32602	//     "profileId": {
32603	//       "description": "The Campaign Manager 360 user profile ID.",
32604	//       "format": "int64",
32605	//       "location": "path",
32606	//       "required": true,
32607	//       "type": "string"
32608	//     },
32609	//     "scope": {
32610	//       "default": "MINE",
32611	//       "description": "The scope that defines which results are returned.",
32612	//       "enum": [
32613	//         "ALL",
32614	//         "MINE",
32615	//         "SHARED_WITH_ME"
32616	//       ],
32617	//       "enumDescriptions": [
32618	//         "All files in account.",
32619	//         "My files.",
32620	//         "Files shared with me."
32621	//       ],
32622	//       "location": "query",
32623	//       "type": "string"
32624	//     },
32625	//     "sortField": {
32626	//       "default": "LAST_MODIFIED_TIME",
32627	//       "description": "The field by which to sort the list.",
32628	//       "enum": [
32629	//         "ID",
32630	//         "LAST_MODIFIED_TIME"
32631	//       ],
32632	//       "enumDescriptions": [
32633	//         "Sort by file ID.",
32634	//         "Sort by 'lastmodifiedAt' field."
32635	//       ],
32636	//       "location": "query",
32637	//       "type": "string"
32638	//     },
32639	//     "sortOrder": {
32640	//       "default": "DESCENDING",
32641	//       "description": "Order of sorted results.",
32642	//       "enum": [
32643	//         "ASCENDING",
32644	//         "DESCENDING"
32645	//       ],
32646	//       "enumDescriptions": [
32647	//         "Ascending order.",
32648	//         "Descending order."
32649	//       ],
32650	//       "location": "query",
32651	//       "type": "string"
32652	//     }
32653	//   },
32654	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/files",
32655	//   "response": {
32656	//     "$ref": "FileList"
32657	//   },
32658	//   "scopes": [
32659	//     "https://www.googleapis.com/auth/dfareporting"
32660	//   ]
32661	// }
32662
32663}
32664
32665// Pages invokes f for each page of results.
32666// A non-nil error returned from f will halt the iteration.
32667// The provided context supersedes any context provided to the Context method.
32668func (c *FilesListCall) Pages(ctx context.Context, f func(*FileList) error) error {
32669	c.ctx_ = ctx
32670	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32671	for {
32672		x, err := c.Do()
32673		if err != nil {
32674			return err
32675		}
32676		if err := f(x); err != nil {
32677			return err
32678		}
32679		if x.NextPageToken == "" {
32680			return nil
32681		}
32682		c.PageToken(x.NextPageToken)
32683	}
32684}
32685
32686// method id "dfareporting.floodlightActivities.delete":
32687
32688type FloodlightActivitiesDeleteCall struct {
32689	s          *Service
32690	profileId  int64
32691	id         int64
32692	urlParams_ gensupport.URLParams
32693	ctx_       context.Context
32694	header_    http.Header
32695}
32696
32697// Delete: Deletes an existing floodlight activity.
32698//
32699// - id: Floodlight activity ID.
32700// - profileId: User profile ID associated with this request.
32701func (r *FloodlightActivitiesService) Delete(profileId int64, id int64) *FloodlightActivitiesDeleteCall {
32702	c := &FloodlightActivitiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32703	c.profileId = profileId
32704	c.id = id
32705	return c
32706}
32707
32708// Fields allows partial responses to be retrieved. See
32709// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32710// for more information.
32711func (c *FloodlightActivitiesDeleteCall) Fields(s ...googleapi.Field) *FloodlightActivitiesDeleteCall {
32712	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32713	return c
32714}
32715
32716// Context sets the context to be used in this call's Do method. Any
32717// pending HTTP request will be aborted if the provided context is
32718// canceled.
32719func (c *FloodlightActivitiesDeleteCall) Context(ctx context.Context) *FloodlightActivitiesDeleteCall {
32720	c.ctx_ = ctx
32721	return c
32722}
32723
32724// Header returns an http.Header that can be modified by the caller to
32725// add HTTP headers to the request.
32726func (c *FloodlightActivitiesDeleteCall) Header() http.Header {
32727	if c.header_ == nil {
32728		c.header_ = make(http.Header)
32729	}
32730	return c.header_
32731}
32732
32733func (c *FloodlightActivitiesDeleteCall) doRequest(alt string) (*http.Response, error) {
32734	reqHeaders := make(http.Header)
32735	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32736	for k, v := range c.header_ {
32737		reqHeaders[k] = v
32738	}
32739	reqHeaders.Set("User-Agent", c.s.userAgent())
32740	var body io.Reader = nil
32741	c.urlParams_.Set("alt", alt)
32742	c.urlParams_.Set("prettyPrint", "false")
32743	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/{id}")
32744	urls += "?" + c.urlParams_.Encode()
32745	req, err := http.NewRequest("DELETE", urls, body)
32746	if err != nil {
32747		return nil, err
32748	}
32749	req.Header = reqHeaders
32750	googleapi.Expand(req.URL, map[string]string{
32751		"profileId": strconv.FormatInt(c.profileId, 10),
32752		"id":        strconv.FormatInt(c.id, 10),
32753	})
32754	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32755}
32756
32757// Do executes the "dfareporting.floodlightActivities.delete" call.
32758func (c *FloodlightActivitiesDeleteCall) Do(opts ...googleapi.CallOption) error {
32759	gensupport.SetOptions(c.urlParams_, opts...)
32760	res, err := c.doRequest("json")
32761	if err != nil {
32762		return err
32763	}
32764	defer googleapi.CloseBody(res)
32765	if err := googleapi.CheckResponse(res); err != nil {
32766		return err
32767	}
32768	return nil
32769	// {
32770	//   "description": "Deletes an existing floodlight activity.",
32771	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/{id}",
32772	//   "httpMethod": "DELETE",
32773	//   "id": "dfareporting.floodlightActivities.delete",
32774	//   "parameterOrder": [
32775	//     "profileId",
32776	//     "id"
32777	//   ],
32778	//   "parameters": {
32779	//     "id": {
32780	//       "description": "Floodlight activity ID.",
32781	//       "format": "int64",
32782	//       "location": "path",
32783	//       "required": true,
32784	//       "type": "string"
32785	//     },
32786	//     "profileId": {
32787	//       "description": "User profile ID associated with this request.",
32788	//       "format": "int64",
32789	//       "location": "path",
32790	//       "required": true,
32791	//       "type": "string"
32792	//     }
32793	//   },
32794	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/{id}",
32795	//   "scopes": [
32796	//     "https://www.googleapis.com/auth/dfatrafficking"
32797	//   ]
32798	// }
32799
32800}
32801
32802// method id "dfareporting.floodlightActivities.generatetag":
32803
32804type FloodlightActivitiesGeneratetagCall struct {
32805	s          *Service
32806	profileId  int64
32807	urlParams_ gensupport.URLParams
32808	ctx_       context.Context
32809	header_    http.Header
32810}
32811
32812// Generatetag: Generates a tag for a floodlight activity.
32813//
32814// - profileId: User profile ID associated with this request.
32815func (r *FloodlightActivitiesService) Generatetag(profileId int64) *FloodlightActivitiesGeneratetagCall {
32816	c := &FloodlightActivitiesGeneratetagCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32817	c.profileId = profileId
32818	return c
32819}
32820
32821// FloodlightActivityId sets the optional parameter
32822// "floodlightActivityId": Floodlight activity ID for which we want to
32823// generate a tag.
32824func (c *FloodlightActivitiesGeneratetagCall) FloodlightActivityId(floodlightActivityId int64) *FloodlightActivitiesGeneratetagCall {
32825	c.urlParams_.Set("floodlightActivityId", fmt.Sprint(floodlightActivityId))
32826	return c
32827}
32828
32829// Fields allows partial responses to be retrieved. See
32830// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32831// for more information.
32832func (c *FloodlightActivitiesGeneratetagCall) Fields(s ...googleapi.Field) *FloodlightActivitiesGeneratetagCall {
32833	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32834	return c
32835}
32836
32837// Context sets the context to be used in this call's Do method. Any
32838// pending HTTP request will be aborted if the provided context is
32839// canceled.
32840func (c *FloodlightActivitiesGeneratetagCall) Context(ctx context.Context) *FloodlightActivitiesGeneratetagCall {
32841	c.ctx_ = ctx
32842	return c
32843}
32844
32845// Header returns an http.Header that can be modified by the caller to
32846// add HTTP headers to the request.
32847func (c *FloodlightActivitiesGeneratetagCall) Header() http.Header {
32848	if c.header_ == nil {
32849		c.header_ = make(http.Header)
32850	}
32851	return c.header_
32852}
32853
32854func (c *FloodlightActivitiesGeneratetagCall) doRequest(alt string) (*http.Response, error) {
32855	reqHeaders := make(http.Header)
32856	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32857	for k, v := range c.header_ {
32858		reqHeaders[k] = v
32859	}
32860	reqHeaders.Set("User-Agent", c.s.userAgent())
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, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/generatetag")
32865	urls += "?" + c.urlParams_.Encode()
32866	req, err := http.NewRequest("POST", 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	})
32874	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32875}
32876
32877// Do executes the "dfareporting.floodlightActivities.generatetag" call.
32878// Exactly one of *FloodlightActivitiesGenerateTagResponse or error will
32879// be non-nil. Any non-2xx status code is an error. Response headers are
32880// in either
32881// *FloodlightActivitiesGenerateTagResponse.ServerResponse.Header or (if
32882// a response was returned at all) in error.(*googleapi.Error).Header.
32883// Use googleapi.IsNotModified to check whether the returned error was
32884// because http.StatusNotModified was returned.
32885func (c *FloodlightActivitiesGeneratetagCall) Do(opts ...googleapi.CallOption) (*FloodlightActivitiesGenerateTagResponse, error) {
32886	gensupport.SetOptions(c.urlParams_, opts...)
32887	res, err := c.doRequest("json")
32888	if res != nil && res.StatusCode == http.StatusNotModified {
32889		if res.Body != nil {
32890			res.Body.Close()
32891		}
32892		return nil, &googleapi.Error{
32893			Code:   res.StatusCode,
32894			Header: res.Header,
32895		}
32896	}
32897	if err != nil {
32898		return nil, err
32899	}
32900	defer googleapi.CloseBody(res)
32901	if err := googleapi.CheckResponse(res); err != nil {
32902		return nil, err
32903	}
32904	ret := &FloodlightActivitiesGenerateTagResponse{
32905		ServerResponse: googleapi.ServerResponse{
32906			Header:         res.Header,
32907			HTTPStatusCode: res.StatusCode,
32908		},
32909	}
32910	target := &ret
32911	if err := gensupport.DecodeResponse(target, res); err != nil {
32912		return nil, err
32913	}
32914	return ret, nil
32915	// {
32916	//   "description": "Generates a tag for a floodlight activity.",
32917	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/generatetag",
32918	//   "httpMethod": "POST",
32919	//   "id": "dfareporting.floodlightActivities.generatetag",
32920	//   "parameterOrder": [
32921	//     "profileId"
32922	//   ],
32923	//   "parameters": {
32924	//     "floodlightActivityId": {
32925	//       "description": "Floodlight activity ID for which we want to generate a tag.",
32926	//       "format": "int64",
32927	//       "location": "query",
32928	//       "type": "string"
32929	//     },
32930	//     "profileId": {
32931	//       "description": "User profile ID associated with this request.",
32932	//       "format": "int64",
32933	//       "location": "path",
32934	//       "required": true,
32935	//       "type": "string"
32936	//     }
32937	//   },
32938	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/generatetag",
32939	//   "response": {
32940	//     "$ref": "FloodlightActivitiesGenerateTagResponse"
32941	//   },
32942	//   "scopes": [
32943	//     "https://www.googleapis.com/auth/dfatrafficking"
32944	//   ]
32945	// }
32946
32947}
32948
32949// method id "dfareporting.floodlightActivities.get":
32950
32951type FloodlightActivitiesGetCall struct {
32952	s            *Service
32953	profileId    int64
32954	id           int64
32955	urlParams_   gensupport.URLParams
32956	ifNoneMatch_ string
32957	ctx_         context.Context
32958	header_      http.Header
32959}
32960
32961// Get: Gets one floodlight activity by ID.
32962//
32963// - id: Floodlight activity ID.
32964// - profileId: User profile ID associated with this request.
32965func (r *FloodlightActivitiesService) Get(profileId int64, id int64) *FloodlightActivitiesGetCall {
32966	c := &FloodlightActivitiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32967	c.profileId = profileId
32968	c.id = id
32969	return c
32970}
32971
32972// Fields allows partial responses to be retrieved. See
32973// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32974// for more information.
32975func (c *FloodlightActivitiesGetCall) Fields(s ...googleapi.Field) *FloodlightActivitiesGetCall {
32976	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32977	return c
32978}
32979
32980// IfNoneMatch sets the optional parameter which makes the operation
32981// fail if the object's ETag matches the given value. This is useful for
32982// getting updates only after the object has changed since the last
32983// request. Use googleapi.IsNotModified to check whether the response
32984// error from Do is the result of In-None-Match.
32985func (c *FloodlightActivitiesGetCall) IfNoneMatch(entityTag string) *FloodlightActivitiesGetCall {
32986	c.ifNoneMatch_ = entityTag
32987	return c
32988}
32989
32990// Context sets the context to be used in this call's Do method. Any
32991// pending HTTP request will be aborted if the provided context is
32992// canceled.
32993func (c *FloodlightActivitiesGetCall) Context(ctx context.Context) *FloodlightActivitiesGetCall {
32994	c.ctx_ = ctx
32995	return c
32996}
32997
32998// Header returns an http.Header that can be modified by the caller to
32999// add HTTP headers to the request.
33000func (c *FloodlightActivitiesGetCall) Header() http.Header {
33001	if c.header_ == nil {
33002		c.header_ = make(http.Header)
33003	}
33004	return c.header_
33005}
33006
33007func (c *FloodlightActivitiesGetCall) doRequest(alt string) (*http.Response, error) {
33008	reqHeaders := make(http.Header)
33009	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33010	for k, v := range c.header_ {
33011		reqHeaders[k] = v
33012	}
33013	reqHeaders.Set("User-Agent", c.s.userAgent())
33014	if c.ifNoneMatch_ != "" {
33015		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33016	}
33017	var body io.Reader = nil
33018	c.urlParams_.Set("alt", alt)
33019	c.urlParams_.Set("prettyPrint", "false")
33020	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/{id}")
33021	urls += "?" + c.urlParams_.Encode()
33022	req, err := http.NewRequest("GET", urls, body)
33023	if err != nil {
33024		return nil, err
33025	}
33026	req.Header = reqHeaders
33027	googleapi.Expand(req.URL, map[string]string{
33028		"profileId": strconv.FormatInt(c.profileId, 10),
33029		"id":        strconv.FormatInt(c.id, 10),
33030	})
33031	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33032}
33033
33034// Do executes the "dfareporting.floodlightActivities.get" call.
33035// Exactly one of *FloodlightActivity or error will be non-nil. Any
33036// non-2xx status code is an error. Response headers are in either
33037// *FloodlightActivity.ServerResponse.Header or (if a response was
33038// returned at all) in error.(*googleapi.Error).Header. Use
33039// googleapi.IsNotModified to check whether the returned error was
33040// because http.StatusNotModified was returned.
33041func (c *FloodlightActivitiesGetCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) {
33042	gensupport.SetOptions(c.urlParams_, opts...)
33043	res, err := c.doRequest("json")
33044	if res != nil && res.StatusCode == http.StatusNotModified {
33045		if res.Body != nil {
33046			res.Body.Close()
33047		}
33048		return nil, &googleapi.Error{
33049			Code:   res.StatusCode,
33050			Header: res.Header,
33051		}
33052	}
33053	if err != nil {
33054		return nil, err
33055	}
33056	defer googleapi.CloseBody(res)
33057	if err := googleapi.CheckResponse(res); err != nil {
33058		return nil, err
33059	}
33060	ret := &FloodlightActivity{
33061		ServerResponse: googleapi.ServerResponse{
33062			Header:         res.Header,
33063			HTTPStatusCode: res.StatusCode,
33064		},
33065	}
33066	target := &ret
33067	if err := gensupport.DecodeResponse(target, res); err != nil {
33068		return nil, err
33069	}
33070	return ret, nil
33071	// {
33072	//   "description": "Gets one floodlight activity by ID.",
33073	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/{id}",
33074	//   "httpMethod": "GET",
33075	//   "id": "dfareporting.floodlightActivities.get",
33076	//   "parameterOrder": [
33077	//     "profileId",
33078	//     "id"
33079	//   ],
33080	//   "parameters": {
33081	//     "id": {
33082	//       "description": "Floodlight activity ID.",
33083	//       "format": "int64",
33084	//       "location": "path",
33085	//       "required": true,
33086	//       "type": "string"
33087	//     },
33088	//     "profileId": {
33089	//       "description": "User profile ID associated with this request.",
33090	//       "format": "int64",
33091	//       "location": "path",
33092	//       "required": true,
33093	//       "type": "string"
33094	//     }
33095	//   },
33096	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities/{id}",
33097	//   "response": {
33098	//     "$ref": "FloodlightActivity"
33099	//   },
33100	//   "scopes": [
33101	//     "https://www.googleapis.com/auth/dfatrafficking"
33102	//   ]
33103	// }
33104
33105}
33106
33107// method id "dfareporting.floodlightActivities.insert":
33108
33109type FloodlightActivitiesInsertCall struct {
33110	s                  *Service
33111	profileId          int64
33112	floodlightactivity *FloodlightActivity
33113	urlParams_         gensupport.URLParams
33114	ctx_               context.Context
33115	header_            http.Header
33116}
33117
33118// Insert: Inserts a new floodlight activity.
33119//
33120// - profileId: User profile ID associated with this request.
33121func (r *FloodlightActivitiesService) Insert(profileId int64, floodlightactivity *FloodlightActivity) *FloodlightActivitiesInsertCall {
33122	c := &FloodlightActivitiesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33123	c.profileId = profileId
33124	c.floodlightactivity = floodlightactivity
33125	return c
33126}
33127
33128// Fields allows partial responses to be retrieved. See
33129// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33130// for more information.
33131func (c *FloodlightActivitiesInsertCall) Fields(s ...googleapi.Field) *FloodlightActivitiesInsertCall {
33132	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33133	return c
33134}
33135
33136// Context sets the context to be used in this call's Do method. Any
33137// pending HTTP request will be aborted if the provided context is
33138// canceled.
33139func (c *FloodlightActivitiesInsertCall) Context(ctx context.Context) *FloodlightActivitiesInsertCall {
33140	c.ctx_ = ctx
33141	return c
33142}
33143
33144// Header returns an http.Header that can be modified by the caller to
33145// add HTTP headers to the request.
33146func (c *FloodlightActivitiesInsertCall) Header() http.Header {
33147	if c.header_ == nil {
33148		c.header_ = make(http.Header)
33149	}
33150	return c.header_
33151}
33152
33153func (c *FloodlightActivitiesInsertCall) doRequest(alt string) (*http.Response, error) {
33154	reqHeaders := make(http.Header)
33155	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33156	for k, v := range c.header_ {
33157		reqHeaders[k] = v
33158	}
33159	reqHeaders.Set("User-Agent", c.s.userAgent())
33160	var body io.Reader = nil
33161	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivity)
33162	if err != nil {
33163		return nil, err
33164	}
33165	reqHeaders.Set("Content-Type", "application/json")
33166	c.urlParams_.Set("alt", alt)
33167	c.urlParams_.Set("prettyPrint", "false")
33168	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities")
33169	urls += "?" + c.urlParams_.Encode()
33170	req, err := http.NewRequest("POST", urls, body)
33171	if err != nil {
33172		return nil, err
33173	}
33174	req.Header = reqHeaders
33175	googleapi.Expand(req.URL, map[string]string{
33176		"profileId": strconv.FormatInt(c.profileId, 10),
33177	})
33178	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33179}
33180
33181// Do executes the "dfareporting.floodlightActivities.insert" call.
33182// Exactly one of *FloodlightActivity or error will be non-nil. Any
33183// non-2xx status code is an error. Response headers are in either
33184// *FloodlightActivity.ServerResponse.Header or (if a response was
33185// returned at all) in error.(*googleapi.Error).Header. Use
33186// googleapi.IsNotModified to check whether the returned error was
33187// because http.StatusNotModified was returned.
33188func (c *FloodlightActivitiesInsertCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) {
33189	gensupport.SetOptions(c.urlParams_, opts...)
33190	res, err := c.doRequest("json")
33191	if res != nil && res.StatusCode == http.StatusNotModified {
33192		if res.Body != nil {
33193			res.Body.Close()
33194		}
33195		return nil, &googleapi.Error{
33196			Code:   res.StatusCode,
33197			Header: res.Header,
33198		}
33199	}
33200	if err != nil {
33201		return nil, err
33202	}
33203	defer googleapi.CloseBody(res)
33204	if err := googleapi.CheckResponse(res); err != nil {
33205		return nil, err
33206	}
33207	ret := &FloodlightActivity{
33208		ServerResponse: googleapi.ServerResponse{
33209			Header:         res.Header,
33210			HTTPStatusCode: res.StatusCode,
33211		},
33212	}
33213	target := &ret
33214	if err := gensupport.DecodeResponse(target, res); err != nil {
33215		return nil, err
33216	}
33217	return ret, nil
33218	// {
33219	//   "description": "Inserts a new floodlight activity.",
33220	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities",
33221	//   "httpMethod": "POST",
33222	//   "id": "dfareporting.floodlightActivities.insert",
33223	//   "parameterOrder": [
33224	//     "profileId"
33225	//   ],
33226	//   "parameters": {
33227	//     "profileId": {
33228	//       "description": "User profile ID associated with this request.",
33229	//       "format": "int64",
33230	//       "location": "path",
33231	//       "required": true,
33232	//       "type": "string"
33233	//     }
33234	//   },
33235	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities",
33236	//   "request": {
33237	//     "$ref": "FloodlightActivity"
33238	//   },
33239	//   "response": {
33240	//     "$ref": "FloodlightActivity"
33241	//   },
33242	//   "scopes": [
33243	//     "https://www.googleapis.com/auth/dfatrafficking"
33244	//   ]
33245	// }
33246
33247}
33248
33249// method id "dfareporting.floodlightActivities.list":
33250
33251type FloodlightActivitiesListCall struct {
33252	s            *Service
33253	profileId    int64
33254	urlParams_   gensupport.URLParams
33255	ifNoneMatch_ string
33256	ctx_         context.Context
33257	header_      http.Header
33258}
33259
33260// List: Retrieves a list of floodlight activities, possibly filtered.
33261// This method supports paging.
33262//
33263// - profileId: User profile ID associated with this request.
33264func (r *FloodlightActivitiesService) List(profileId int64) *FloodlightActivitiesListCall {
33265	c := &FloodlightActivitiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33266	c.profileId = profileId
33267	return c
33268}
33269
33270// AdvertiserId sets the optional parameter "advertiserId": Select only
33271// floodlight activities for the specified advertiser ID. Must specify
33272// either ids, advertiserId, or floodlightConfigurationId for a
33273// non-empty result.
33274func (c *FloodlightActivitiesListCall) AdvertiserId(advertiserId int64) *FloodlightActivitiesListCall {
33275	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
33276	return c
33277}
33278
33279// FloodlightActivityGroupIds sets the optional parameter
33280// "floodlightActivityGroupIds": Select only floodlight activities with
33281// the specified floodlight activity group IDs.
33282func (c *FloodlightActivitiesListCall) FloodlightActivityGroupIds(floodlightActivityGroupIds ...int64) *FloodlightActivitiesListCall {
33283	var floodlightActivityGroupIds_ []string
33284	for _, v := range floodlightActivityGroupIds {
33285		floodlightActivityGroupIds_ = append(floodlightActivityGroupIds_, fmt.Sprint(v))
33286	}
33287	c.urlParams_.SetMulti("floodlightActivityGroupIds", floodlightActivityGroupIds_)
33288	return c
33289}
33290
33291// FloodlightActivityGroupName sets the optional parameter
33292// "floodlightActivityGroupName": Select only floodlight activities with
33293// the specified floodlight activity group name.
33294func (c *FloodlightActivitiesListCall) FloodlightActivityGroupName(floodlightActivityGroupName string) *FloodlightActivitiesListCall {
33295	c.urlParams_.Set("floodlightActivityGroupName", floodlightActivityGroupName)
33296	return c
33297}
33298
33299// FloodlightActivityGroupTagString sets the optional parameter
33300// "floodlightActivityGroupTagString": Select only floodlight activities
33301// with the specified floodlight activity group tag string.
33302func (c *FloodlightActivitiesListCall) FloodlightActivityGroupTagString(floodlightActivityGroupTagString string) *FloodlightActivitiesListCall {
33303	c.urlParams_.Set("floodlightActivityGroupTagString", floodlightActivityGroupTagString)
33304	return c
33305}
33306
33307// FloodlightActivityGroupType sets the optional parameter
33308// "floodlightActivityGroupType": Select only floodlight activities with
33309// the specified floodlight activity group type.
33310//
33311// Possible values:
33312//   "COUNTER"
33313//   "SALE"
33314func (c *FloodlightActivitiesListCall) FloodlightActivityGroupType(floodlightActivityGroupType string) *FloodlightActivitiesListCall {
33315	c.urlParams_.Set("floodlightActivityGroupType", floodlightActivityGroupType)
33316	return c
33317}
33318
33319// FloodlightConfigurationId sets the optional parameter
33320// "floodlightConfigurationId": Select only floodlight activities for
33321// the specified floodlight configuration ID. Must specify either ids,
33322// advertiserId, or floodlightConfigurationId for a non-empty result.
33323func (c *FloodlightActivitiesListCall) FloodlightConfigurationId(floodlightConfigurationId int64) *FloodlightActivitiesListCall {
33324	c.urlParams_.Set("floodlightConfigurationId", fmt.Sprint(floodlightConfigurationId))
33325	return c
33326}
33327
33328// Ids sets the optional parameter "ids": Select only floodlight
33329// activities with the specified IDs. Must specify either ids,
33330// advertiserId, or floodlightConfigurationId for a non-empty result.
33331func (c *FloodlightActivitiesListCall) Ids(ids ...int64) *FloodlightActivitiesListCall {
33332	var ids_ []string
33333	for _, v := range ids {
33334		ids_ = append(ids_, fmt.Sprint(v))
33335	}
33336	c.urlParams_.SetMulti("ids", ids_)
33337	return c
33338}
33339
33340// MaxResults sets the optional parameter "maxResults": Maximum number
33341// of results to return.
33342func (c *FloodlightActivitiesListCall) MaxResults(maxResults int64) *FloodlightActivitiesListCall {
33343	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
33344	return c
33345}
33346
33347// PageToken sets the optional parameter "pageToken": Value of the
33348// nextPageToken from the previous result page.
33349func (c *FloodlightActivitiesListCall) PageToken(pageToken string) *FloodlightActivitiesListCall {
33350	c.urlParams_.Set("pageToken", pageToken)
33351	return c
33352}
33353
33354// SearchString sets the optional parameter "searchString": Allows
33355// searching for objects by name or ID. Wildcards (*) are allowed. For
33356// example, "floodlightactivity*2015" will return objects with names
33357// like "floodlightactivity June 2015", "floodlightactivity April 2015",
33358// or simply "floodlightactivity 2015". Most of the searches also add
33359// wildcards implicitly at the start and the end of the search string.
33360// For example, a search string of "floodlightactivity" will match
33361// objects with name "my floodlightactivity activity",
33362// "floodlightactivity 2015", or simply "floodlightactivity".
33363func (c *FloodlightActivitiesListCall) SearchString(searchString string) *FloodlightActivitiesListCall {
33364	c.urlParams_.Set("searchString", searchString)
33365	return c
33366}
33367
33368// SortField sets the optional parameter "sortField": Field by which to
33369// sort the list.
33370//
33371// Possible values:
33372//   "ID" (default)
33373//   "NAME"
33374func (c *FloodlightActivitiesListCall) SortField(sortField string) *FloodlightActivitiesListCall {
33375	c.urlParams_.Set("sortField", sortField)
33376	return c
33377}
33378
33379// SortOrder sets the optional parameter "sortOrder": Order of sorted
33380// results.
33381//
33382// Possible values:
33383//   "ASCENDING" (default)
33384//   "DESCENDING"
33385func (c *FloodlightActivitiesListCall) SortOrder(sortOrder string) *FloodlightActivitiesListCall {
33386	c.urlParams_.Set("sortOrder", sortOrder)
33387	return c
33388}
33389
33390// TagString sets the optional parameter "tagString": Select only
33391// floodlight activities with the specified tag string.
33392func (c *FloodlightActivitiesListCall) TagString(tagString string) *FloodlightActivitiesListCall {
33393	c.urlParams_.Set("tagString", tagString)
33394	return c
33395}
33396
33397// Fields allows partial responses to be retrieved. See
33398// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33399// for more information.
33400func (c *FloodlightActivitiesListCall) Fields(s ...googleapi.Field) *FloodlightActivitiesListCall {
33401	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33402	return c
33403}
33404
33405// IfNoneMatch sets the optional parameter which makes the operation
33406// fail if the object's ETag matches the given value. This is useful for
33407// getting updates only after the object has changed since the last
33408// request. Use googleapi.IsNotModified to check whether the response
33409// error from Do is the result of In-None-Match.
33410func (c *FloodlightActivitiesListCall) IfNoneMatch(entityTag string) *FloodlightActivitiesListCall {
33411	c.ifNoneMatch_ = entityTag
33412	return c
33413}
33414
33415// Context sets the context to be used in this call's Do method. Any
33416// pending HTTP request will be aborted if the provided context is
33417// canceled.
33418func (c *FloodlightActivitiesListCall) Context(ctx context.Context) *FloodlightActivitiesListCall {
33419	c.ctx_ = ctx
33420	return c
33421}
33422
33423// Header returns an http.Header that can be modified by the caller to
33424// add HTTP headers to the request.
33425func (c *FloodlightActivitiesListCall) Header() http.Header {
33426	if c.header_ == nil {
33427		c.header_ = make(http.Header)
33428	}
33429	return c.header_
33430}
33431
33432func (c *FloodlightActivitiesListCall) doRequest(alt string) (*http.Response, error) {
33433	reqHeaders := make(http.Header)
33434	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33435	for k, v := range c.header_ {
33436		reqHeaders[k] = v
33437	}
33438	reqHeaders.Set("User-Agent", c.s.userAgent())
33439	if c.ifNoneMatch_ != "" {
33440		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33441	}
33442	var body io.Reader = nil
33443	c.urlParams_.Set("alt", alt)
33444	c.urlParams_.Set("prettyPrint", "false")
33445	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities")
33446	urls += "?" + c.urlParams_.Encode()
33447	req, err := http.NewRequest("GET", urls, body)
33448	if err != nil {
33449		return nil, err
33450	}
33451	req.Header = reqHeaders
33452	googleapi.Expand(req.URL, map[string]string{
33453		"profileId": strconv.FormatInt(c.profileId, 10),
33454	})
33455	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33456}
33457
33458// Do executes the "dfareporting.floodlightActivities.list" call.
33459// Exactly one of *FloodlightActivitiesListResponse or error will be
33460// non-nil. Any non-2xx status code is an error. Response headers are in
33461// either *FloodlightActivitiesListResponse.ServerResponse.Header or (if
33462// a response was returned at all) in error.(*googleapi.Error).Header.
33463// Use googleapi.IsNotModified to check whether the returned error was
33464// because http.StatusNotModified was returned.
33465func (c *FloodlightActivitiesListCall) Do(opts ...googleapi.CallOption) (*FloodlightActivitiesListResponse, error) {
33466	gensupport.SetOptions(c.urlParams_, opts...)
33467	res, err := c.doRequest("json")
33468	if res != nil && res.StatusCode == http.StatusNotModified {
33469		if res.Body != nil {
33470			res.Body.Close()
33471		}
33472		return nil, &googleapi.Error{
33473			Code:   res.StatusCode,
33474			Header: res.Header,
33475		}
33476	}
33477	if err != nil {
33478		return nil, err
33479	}
33480	defer googleapi.CloseBody(res)
33481	if err := googleapi.CheckResponse(res); err != nil {
33482		return nil, err
33483	}
33484	ret := &FloodlightActivitiesListResponse{
33485		ServerResponse: googleapi.ServerResponse{
33486			Header:         res.Header,
33487			HTTPStatusCode: res.StatusCode,
33488		},
33489	}
33490	target := &ret
33491	if err := gensupport.DecodeResponse(target, res); err != nil {
33492		return nil, err
33493	}
33494	return ret, nil
33495	// {
33496	//   "description": "Retrieves a list of floodlight activities, possibly filtered. This method supports paging.",
33497	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities",
33498	//   "httpMethod": "GET",
33499	//   "id": "dfareporting.floodlightActivities.list",
33500	//   "parameterOrder": [
33501	//     "profileId"
33502	//   ],
33503	//   "parameters": {
33504	//     "advertiserId": {
33505	//       "description": "Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.",
33506	//       "format": "int64",
33507	//       "location": "query",
33508	//       "type": "string"
33509	//     },
33510	//     "floodlightActivityGroupIds": {
33511	//       "description": "Select only floodlight activities with the specified floodlight activity group IDs.",
33512	//       "format": "int64",
33513	//       "location": "query",
33514	//       "repeated": true,
33515	//       "type": "string"
33516	//     },
33517	//     "floodlightActivityGroupName": {
33518	//       "description": "Select only floodlight activities with the specified floodlight activity group name.",
33519	//       "location": "query",
33520	//       "type": "string"
33521	//     },
33522	//     "floodlightActivityGroupTagString": {
33523	//       "description": "Select only floodlight activities with the specified floodlight activity group tag string.",
33524	//       "location": "query",
33525	//       "type": "string"
33526	//     },
33527	//     "floodlightActivityGroupType": {
33528	//       "description": "Select only floodlight activities with the specified floodlight activity group type.",
33529	//       "enum": [
33530	//         "COUNTER",
33531	//         "SALE"
33532	//       ],
33533	//       "enumDescriptions": [
33534	//         "",
33535	//         ""
33536	//       ],
33537	//       "location": "query",
33538	//       "type": "string"
33539	//     },
33540	//     "floodlightConfigurationId": {
33541	//       "description": "Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.",
33542	//       "format": "int64",
33543	//       "location": "query",
33544	//       "type": "string"
33545	//     },
33546	//     "ids": {
33547	//       "description": "Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.",
33548	//       "format": "int64",
33549	//       "location": "query",
33550	//       "repeated": true,
33551	//       "type": "string"
33552	//     },
33553	//     "maxResults": {
33554	//       "default": "1000",
33555	//       "description": "Maximum number of results to return.",
33556	//       "format": "int32",
33557	//       "location": "query",
33558	//       "maximum": "1000",
33559	//       "minimum": "0",
33560	//       "type": "integer"
33561	//     },
33562	//     "pageToken": {
33563	//       "description": "Value of the nextPageToken from the previous result page.",
33564	//       "location": "query",
33565	//       "type": "string"
33566	//     },
33567	//     "profileId": {
33568	//       "description": "User profile ID associated with this request.",
33569	//       "format": "int64",
33570	//       "location": "path",
33571	//       "required": true,
33572	//       "type": "string"
33573	//     },
33574	//     "searchString": {
33575	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivity*2015\" will return objects with names like \"floodlightactivity June 2015\", \"floodlightactivity April 2015\", or simply \"floodlightactivity 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivity\" will match objects with name \"my floodlightactivity activity\", \"floodlightactivity 2015\", or simply \"floodlightactivity\".",
33576	//       "location": "query",
33577	//       "type": "string"
33578	//     },
33579	//     "sortField": {
33580	//       "default": "ID",
33581	//       "description": "Field by which to sort the list.",
33582	//       "enum": [
33583	//         "ID",
33584	//         "NAME"
33585	//       ],
33586	//       "enumDescriptions": [
33587	//         "",
33588	//         ""
33589	//       ],
33590	//       "location": "query",
33591	//       "type": "string"
33592	//     },
33593	//     "sortOrder": {
33594	//       "default": "ASCENDING",
33595	//       "description": "Order of sorted results.",
33596	//       "enum": [
33597	//         "ASCENDING",
33598	//         "DESCENDING"
33599	//       ],
33600	//       "enumDescriptions": [
33601	//         "",
33602	//         ""
33603	//       ],
33604	//       "location": "query",
33605	//       "type": "string"
33606	//     },
33607	//     "tagString": {
33608	//       "description": "Select only floodlight activities with the specified tag string.",
33609	//       "location": "query",
33610	//       "type": "string"
33611	//     }
33612	//   },
33613	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities",
33614	//   "response": {
33615	//     "$ref": "FloodlightActivitiesListResponse"
33616	//   },
33617	//   "scopes": [
33618	//     "https://www.googleapis.com/auth/dfatrafficking"
33619	//   ]
33620	// }
33621
33622}
33623
33624// Pages invokes f for each page of results.
33625// A non-nil error returned from f will halt the iteration.
33626// The provided context supersedes any context provided to the Context method.
33627func (c *FloodlightActivitiesListCall) Pages(ctx context.Context, f func(*FloodlightActivitiesListResponse) error) error {
33628	c.ctx_ = ctx
33629	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
33630	for {
33631		x, err := c.Do()
33632		if err != nil {
33633			return err
33634		}
33635		if err := f(x); err != nil {
33636			return err
33637		}
33638		if x.NextPageToken == "" {
33639			return nil
33640		}
33641		c.PageToken(x.NextPageToken)
33642	}
33643}
33644
33645// method id "dfareporting.floodlightActivities.patch":
33646
33647type FloodlightActivitiesPatchCall struct {
33648	s                  *Service
33649	profileId          int64
33650	floodlightactivity *FloodlightActivity
33651	urlParams_         gensupport.URLParams
33652	ctx_               context.Context
33653	header_            http.Header
33654}
33655
33656// Patch: Updates an existing floodlight activity. This method supports
33657// patch semantics.
33658//
33659// - id: FloodlightActivity ID.
33660// - profileId: User profile ID associated with this request.
33661func (r *FloodlightActivitiesService) Patch(profileId int64, id int64, floodlightactivity *FloodlightActivity) *FloodlightActivitiesPatchCall {
33662	c := &FloodlightActivitiesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33663	c.profileId = profileId
33664	c.urlParams_.Set("id", fmt.Sprint(id))
33665	c.floodlightactivity = floodlightactivity
33666	return c
33667}
33668
33669// Fields allows partial responses to be retrieved. See
33670// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33671// for more information.
33672func (c *FloodlightActivitiesPatchCall) Fields(s ...googleapi.Field) *FloodlightActivitiesPatchCall {
33673	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33674	return c
33675}
33676
33677// Context sets the context to be used in this call's Do method. Any
33678// pending HTTP request will be aborted if the provided context is
33679// canceled.
33680func (c *FloodlightActivitiesPatchCall) Context(ctx context.Context) *FloodlightActivitiesPatchCall {
33681	c.ctx_ = ctx
33682	return c
33683}
33684
33685// Header returns an http.Header that can be modified by the caller to
33686// add HTTP headers to the request.
33687func (c *FloodlightActivitiesPatchCall) Header() http.Header {
33688	if c.header_ == nil {
33689		c.header_ = make(http.Header)
33690	}
33691	return c.header_
33692}
33693
33694func (c *FloodlightActivitiesPatchCall) doRequest(alt string) (*http.Response, error) {
33695	reqHeaders := make(http.Header)
33696	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33697	for k, v := range c.header_ {
33698		reqHeaders[k] = v
33699	}
33700	reqHeaders.Set("User-Agent", c.s.userAgent())
33701	var body io.Reader = nil
33702	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivity)
33703	if err != nil {
33704		return nil, err
33705	}
33706	reqHeaders.Set("Content-Type", "application/json")
33707	c.urlParams_.Set("alt", alt)
33708	c.urlParams_.Set("prettyPrint", "false")
33709	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities")
33710	urls += "?" + c.urlParams_.Encode()
33711	req, err := http.NewRequest("PATCH", urls, body)
33712	if err != nil {
33713		return nil, err
33714	}
33715	req.Header = reqHeaders
33716	googleapi.Expand(req.URL, map[string]string{
33717		"profileId": strconv.FormatInt(c.profileId, 10),
33718	})
33719	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33720}
33721
33722// Do executes the "dfareporting.floodlightActivities.patch" call.
33723// Exactly one of *FloodlightActivity or error will be non-nil. Any
33724// non-2xx status code is an error. Response headers are in either
33725// *FloodlightActivity.ServerResponse.Header or (if a response was
33726// returned at all) in error.(*googleapi.Error).Header. Use
33727// googleapi.IsNotModified to check whether the returned error was
33728// because http.StatusNotModified was returned.
33729func (c *FloodlightActivitiesPatchCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) {
33730	gensupport.SetOptions(c.urlParams_, opts...)
33731	res, err := c.doRequest("json")
33732	if res != nil && res.StatusCode == http.StatusNotModified {
33733		if res.Body != nil {
33734			res.Body.Close()
33735		}
33736		return nil, &googleapi.Error{
33737			Code:   res.StatusCode,
33738			Header: res.Header,
33739		}
33740	}
33741	if err != nil {
33742		return nil, err
33743	}
33744	defer googleapi.CloseBody(res)
33745	if err := googleapi.CheckResponse(res); err != nil {
33746		return nil, err
33747	}
33748	ret := &FloodlightActivity{
33749		ServerResponse: googleapi.ServerResponse{
33750			Header:         res.Header,
33751			HTTPStatusCode: res.StatusCode,
33752		},
33753	}
33754	target := &ret
33755	if err := gensupport.DecodeResponse(target, res); err != nil {
33756		return nil, err
33757	}
33758	return ret, nil
33759	// {
33760	//   "description": "Updates an existing floodlight activity. This method supports patch semantics.",
33761	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities",
33762	//   "httpMethod": "PATCH",
33763	//   "id": "dfareporting.floodlightActivities.patch",
33764	//   "parameterOrder": [
33765	//     "profileId",
33766	//     "id"
33767	//   ],
33768	//   "parameters": {
33769	//     "id": {
33770	//       "description": "FloodlightActivity ID.",
33771	//       "format": "int64",
33772	//       "location": "query",
33773	//       "required": true,
33774	//       "type": "string"
33775	//     },
33776	//     "profileId": {
33777	//       "description": "User profile ID associated with this request.",
33778	//       "format": "int64",
33779	//       "location": "path",
33780	//       "required": true,
33781	//       "type": "string"
33782	//     }
33783	//   },
33784	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities",
33785	//   "request": {
33786	//     "$ref": "FloodlightActivity"
33787	//   },
33788	//   "response": {
33789	//     "$ref": "FloodlightActivity"
33790	//   },
33791	//   "scopes": [
33792	//     "https://www.googleapis.com/auth/dfatrafficking"
33793	//   ]
33794	// }
33795
33796}
33797
33798// method id "dfareporting.floodlightActivities.update":
33799
33800type FloodlightActivitiesUpdateCall struct {
33801	s                  *Service
33802	profileId          int64
33803	floodlightactivity *FloodlightActivity
33804	urlParams_         gensupport.URLParams
33805	ctx_               context.Context
33806	header_            http.Header
33807}
33808
33809// Update: Updates an existing floodlight activity.
33810//
33811// - profileId: User profile ID associated with this request.
33812func (r *FloodlightActivitiesService) Update(profileId int64, floodlightactivity *FloodlightActivity) *FloodlightActivitiesUpdateCall {
33813	c := &FloodlightActivitiesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33814	c.profileId = profileId
33815	c.floodlightactivity = floodlightactivity
33816	return c
33817}
33818
33819// Fields allows partial responses to be retrieved. See
33820// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33821// for more information.
33822func (c *FloodlightActivitiesUpdateCall) Fields(s ...googleapi.Field) *FloodlightActivitiesUpdateCall {
33823	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33824	return c
33825}
33826
33827// Context sets the context to be used in this call's Do method. Any
33828// pending HTTP request will be aborted if the provided context is
33829// canceled.
33830func (c *FloodlightActivitiesUpdateCall) Context(ctx context.Context) *FloodlightActivitiesUpdateCall {
33831	c.ctx_ = ctx
33832	return c
33833}
33834
33835// Header returns an http.Header that can be modified by the caller to
33836// add HTTP headers to the request.
33837func (c *FloodlightActivitiesUpdateCall) Header() http.Header {
33838	if c.header_ == nil {
33839		c.header_ = make(http.Header)
33840	}
33841	return c.header_
33842}
33843
33844func (c *FloodlightActivitiesUpdateCall) doRequest(alt string) (*http.Response, error) {
33845	reqHeaders := make(http.Header)
33846	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33847	for k, v := range c.header_ {
33848		reqHeaders[k] = v
33849	}
33850	reqHeaders.Set("User-Agent", c.s.userAgent())
33851	var body io.Reader = nil
33852	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivity)
33853	if err != nil {
33854		return nil, err
33855	}
33856	reqHeaders.Set("Content-Type", "application/json")
33857	c.urlParams_.Set("alt", alt)
33858	c.urlParams_.Set("prettyPrint", "false")
33859	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities")
33860	urls += "?" + c.urlParams_.Encode()
33861	req, err := http.NewRequest("PUT", urls, body)
33862	if err != nil {
33863		return nil, err
33864	}
33865	req.Header = reqHeaders
33866	googleapi.Expand(req.URL, map[string]string{
33867		"profileId": strconv.FormatInt(c.profileId, 10),
33868	})
33869	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33870}
33871
33872// Do executes the "dfareporting.floodlightActivities.update" call.
33873// Exactly one of *FloodlightActivity or error will be non-nil. Any
33874// non-2xx status code is an error. Response headers are in either
33875// *FloodlightActivity.ServerResponse.Header or (if a response was
33876// returned at all) in error.(*googleapi.Error).Header. Use
33877// googleapi.IsNotModified to check whether the returned error was
33878// because http.StatusNotModified was returned.
33879func (c *FloodlightActivitiesUpdateCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) {
33880	gensupport.SetOptions(c.urlParams_, opts...)
33881	res, err := c.doRequest("json")
33882	if res != nil && res.StatusCode == http.StatusNotModified {
33883		if res.Body != nil {
33884			res.Body.Close()
33885		}
33886		return nil, &googleapi.Error{
33887			Code:   res.StatusCode,
33888			Header: res.Header,
33889		}
33890	}
33891	if err != nil {
33892		return nil, err
33893	}
33894	defer googleapi.CloseBody(res)
33895	if err := googleapi.CheckResponse(res); err != nil {
33896		return nil, err
33897	}
33898	ret := &FloodlightActivity{
33899		ServerResponse: googleapi.ServerResponse{
33900			Header:         res.Header,
33901			HTTPStatusCode: res.StatusCode,
33902		},
33903	}
33904	target := &ret
33905	if err := gensupport.DecodeResponse(target, res); err != nil {
33906		return nil, err
33907	}
33908	return ret, nil
33909	// {
33910	//   "description": "Updates an existing floodlight activity.",
33911	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities",
33912	//   "httpMethod": "PUT",
33913	//   "id": "dfareporting.floodlightActivities.update",
33914	//   "parameterOrder": [
33915	//     "profileId"
33916	//   ],
33917	//   "parameters": {
33918	//     "profileId": {
33919	//       "description": "User profile ID associated with this request.",
33920	//       "format": "int64",
33921	//       "location": "path",
33922	//       "required": true,
33923	//       "type": "string"
33924	//     }
33925	//   },
33926	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivities",
33927	//   "request": {
33928	//     "$ref": "FloodlightActivity"
33929	//   },
33930	//   "response": {
33931	//     "$ref": "FloodlightActivity"
33932	//   },
33933	//   "scopes": [
33934	//     "https://www.googleapis.com/auth/dfatrafficking"
33935	//   ]
33936	// }
33937
33938}
33939
33940// method id "dfareporting.floodlightActivityGroups.get":
33941
33942type FloodlightActivityGroupsGetCall struct {
33943	s            *Service
33944	profileId    int64
33945	id           int64
33946	urlParams_   gensupport.URLParams
33947	ifNoneMatch_ string
33948	ctx_         context.Context
33949	header_      http.Header
33950}
33951
33952// Get: Gets one floodlight activity group by ID.
33953//
33954// - id: Floodlight activity Group ID.
33955// - profileId: User profile ID associated with this request.
33956func (r *FloodlightActivityGroupsService) Get(profileId int64, id int64) *FloodlightActivityGroupsGetCall {
33957	c := &FloodlightActivityGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33958	c.profileId = profileId
33959	c.id = id
33960	return c
33961}
33962
33963// Fields allows partial responses to be retrieved. See
33964// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33965// for more information.
33966func (c *FloodlightActivityGroupsGetCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsGetCall {
33967	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33968	return c
33969}
33970
33971// IfNoneMatch sets the optional parameter which makes the operation
33972// fail if the object's ETag matches the given value. This is useful for
33973// getting updates only after the object has changed since the last
33974// request. Use googleapi.IsNotModified to check whether the response
33975// error from Do is the result of In-None-Match.
33976func (c *FloodlightActivityGroupsGetCall) IfNoneMatch(entityTag string) *FloodlightActivityGroupsGetCall {
33977	c.ifNoneMatch_ = entityTag
33978	return c
33979}
33980
33981// Context sets the context to be used in this call's Do method. Any
33982// pending HTTP request will be aborted if the provided context is
33983// canceled.
33984func (c *FloodlightActivityGroupsGetCall) Context(ctx context.Context) *FloodlightActivityGroupsGetCall {
33985	c.ctx_ = ctx
33986	return c
33987}
33988
33989// Header returns an http.Header that can be modified by the caller to
33990// add HTTP headers to the request.
33991func (c *FloodlightActivityGroupsGetCall) Header() http.Header {
33992	if c.header_ == nil {
33993		c.header_ = make(http.Header)
33994	}
33995	return c.header_
33996}
33997
33998func (c *FloodlightActivityGroupsGetCall) doRequest(alt string) (*http.Response, error) {
33999	reqHeaders := make(http.Header)
34000	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34001	for k, v := range c.header_ {
34002		reqHeaders[k] = v
34003	}
34004	reqHeaders.Set("User-Agent", c.s.userAgent())
34005	if c.ifNoneMatch_ != "" {
34006		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34007	}
34008	var body io.Reader = nil
34009	c.urlParams_.Set("alt", alt)
34010	c.urlParams_.Set("prettyPrint", "false")
34011	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups/{id}")
34012	urls += "?" + c.urlParams_.Encode()
34013	req, err := http.NewRequest("GET", urls, body)
34014	if err != nil {
34015		return nil, err
34016	}
34017	req.Header = reqHeaders
34018	googleapi.Expand(req.URL, map[string]string{
34019		"profileId": strconv.FormatInt(c.profileId, 10),
34020		"id":        strconv.FormatInt(c.id, 10),
34021	})
34022	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34023}
34024
34025// Do executes the "dfareporting.floodlightActivityGroups.get" call.
34026// Exactly one of *FloodlightActivityGroup or error will be non-nil. Any
34027// non-2xx status code is an error. Response headers are in either
34028// *FloodlightActivityGroup.ServerResponse.Header or (if a response was
34029// returned at all) in error.(*googleapi.Error).Header. Use
34030// googleapi.IsNotModified to check whether the returned error was
34031// because http.StatusNotModified was returned.
34032func (c *FloodlightActivityGroupsGetCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroup, error) {
34033	gensupport.SetOptions(c.urlParams_, opts...)
34034	res, err := c.doRequest("json")
34035	if res != nil && res.StatusCode == http.StatusNotModified {
34036		if res.Body != nil {
34037			res.Body.Close()
34038		}
34039		return nil, &googleapi.Error{
34040			Code:   res.StatusCode,
34041			Header: res.Header,
34042		}
34043	}
34044	if err != nil {
34045		return nil, err
34046	}
34047	defer googleapi.CloseBody(res)
34048	if err := googleapi.CheckResponse(res); err != nil {
34049		return nil, err
34050	}
34051	ret := &FloodlightActivityGroup{
34052		ServerResponse: googleapi.ServerResponse{
34053			Header:         res.Header,
34054			HTTPStatusCode: res.StatusCode,
34055		},
34056	}
34057	target := &ret
34058	if err := gensupport.DecodeResponse(target, res); err != nil {
34059		return nil, err
34060	}
34061	return ret, nil
34062	// {
34063	//   "description": "Gets one floodlight activity group by ID.",
34064	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups/{id}",
34065	//   "httpMethod": "GET",
34066	//   "id": "dfareporting.floodlightActivityGroups.get",
34067	//   "parameterOrder": [
34068	//     "profileId",
34069	//     "id"
34070	//   ],
34071	//   "parameters": {
34072	//     "id": {
34073	//       "description": "Floodlight activity Group ID.",
34074	//       "format": "int64",
34075	//       "location": "path",
34076	//       "required": true,
34077	//       "type": "string"
34078	//     },
34079	//     "profileId": {
34080	//       "description": "User profile ID associated with this request.",
34081	//       "format": "int64",
34082	//       "location": "path",
34083	//       "required": true,
34084	//       "type": "string"
34085	//     }
34086	//   },
34087	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups/{id}",
34088	//   "response": {
34089	//     "$ref": "FloodlightActivityGroup"
34090	//   },
34091	//   "scopes": [
34092	//     "https://www.googleapis.com/auth/dfatrafficking"
34093	//   ]
34094	// }
34095
34096}
34097
34098// method id "dfareporting.floodlightActivityGroups.insert":
34099
34100type FloodlightActivityGroupsInsertCall struct {
34101	s                       *Service
34102	profileId               int64
34103	floodlightactivitygroup *FloodlightActivityGroup
34104	urlParams_              gensupport.URLParams
34105	ctx_                    context.Context
34106	header_                 http.Header
34107}
34108
34109// Insert: Inserts a new floodlight activity group.
34110//
34111// - profileId: User profile ID associated with this request.
34112func (r *FloodlightActivityGroupsService) Insert(profileId int64, floodlightactivitygroup *FloodlightActivityGroup) *FloodlightActivityGroupsInsertCall {
34113	c := &FloodlightActivityGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34114	c.profileId = profileId
34115	c.floodlightactivitygroup = floodlightactivitygroup
34116	return c
34117}
34118
34119// Fields allows partial responses to be retrieved. See
34120// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34121// for more information.
34122func (c *FloodlightActivityGroupsInsertCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsInsertCall {
34123	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34124	return c
34125}
34126
34127// Context sets the context to be used in this call's Do method. Any
34128// pending HTTP request will be aborted if the provided context is
34129// canceled.
34130func (c *FloodlightActivityGroupsInsertCall) Context(ctx context.Context) *FloodlightActivityGroupsInsertCall {
34131	c.ctx_ = ctx
34132	return c
34133}
34134
34135// Header returns an http.Header that can be modified by the caller to
34136// add HTTP headers to the request.
34137func (c *FloodlightActivityGroupsInsertCall) Header() http.Header {
34138	if c.header_ == nil {
34139		c.header_ = make(http.Header)
34140	}
34141	return c.header_
34142}
34143
34144func (c *FloodlightActivityGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
34145	reqHeaders := make(http.Header)
34146	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34147	for k, v := range c.header_ {
34148		reqHeaders[k] = v
34149	}
34150	reqHeaders.Set("User-Agent", c.s.userAgent())
34151	var body io.Reader = nil
34152	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivitygroup)
34153	if err != nil {
34154		return nil, err
34155	}
34156	reqHeaders.Set("Content-Type", "application/json")
34157	c.urlParams_.Set("alt", alt)
34158	c.urlParams_.Set("prettyPrint", "false")
34159	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups")
34160	urls += "?" + c.urlParams_.Encode()
34161	req, err := http.NewRequest("POST", urls, body)
34162	if err != nil {
34163		return nil, err
34164	}
34165	req.Header = reqHeaders
34166	googleapi.Expand(req.URL, map[string]string{
34167		"profileId": strconv.FormatInt(c.profileId, 10),
34168	})
34169	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34170}
34171
34172// Do executes the "dfareporting.floodlightActivityGroups.insert" call.
34173// Exactly one of *FloodlightActivityGroup or error will be non-nil. Any
34174// non-2xx status code is an error. Response headers are in either
34175// *FloodlightActivityGroup.ServerResponse.Header or (if a response was
34176// returned at all) in error.(*googleapi.Error).Header. Use
34177// googleapi.IsNotModified to check whether the returned error was
34178// because http.StatusNotModified was returned.
34179func (c *FloodlightActivityGroupsInsertCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroup, error) {
34180	gensupport.SetOptions(c.urlParams_, opts...)
34181	res, err := c.doRequest("json")
34182	if res != nil && res.StatusCode == http.StatusNotModified {
34183		if res.Body != nil {
34184			res.Body.Close()
34185		}
34186		return nil, &googleapi.Error{
34187			Code:   res.StatusCode,
34188			Header: res.Header,
34189		}
34190	}
34191	if err != nil {
34192		return nil, err
34193	}
34194	defer googleapi.CloseBody(res)
34195	if err := googleapi.CheckResponse(res); err != nil {
34196		return nil, err
34197	}
34198	ret := &FloodlightActivityGroup{
34199		ServerResponse: googleapi.ServerResponse{
34200			Header:         res.Header,
34201			HTTPStatusCode: res.StatusCode,
34202		},
34203	}
34204	target := &ret
34205	if err := gensupport.DecodeResponse(target, res); err != nil {
34206		return nil, err
34207	}
34208	return ret, nil
34209	// {
34210	//   "description": "Inserts a new floodlight activity group.",
34211	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups",
34212	//   "httpMethod": "POST",
34213	//   "id": "dfareporting.floodlightActivityGroups.insert",
34214	//   "parameterOrder": [
34215	//     "profileId"
34216	//   ],
34217	//   "parameters": {
34218	//     "profileId": {
34219	//       "description": "User profile ID associated with this request.",
34220	//       "format": "int64",
34221	//       "location": "path",
34222	//       "required": true,
34223	//       "type": "string"
34224	//     }
34225	//   },
34226	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups",
34227	//   "request": {
34228	//     "$ref": "FloodlightActivityGroup"
34229	//   },
34230	//   "response": {
34231	//     "$ref": "FloodlightActivityGroup"
34232	//   },
34233	//   "scopes": [
34234	//     "https://www.googleapis.com/auth/dfatrafficking"
34235	//   ]
34236	// }
34237
34238}
34239
34240// method id "dfareporting.floodlightActivityGroups.list":
34241
34242type FloodlightActivityGroupsListCall struct {
34243	s            *Service
34244	profileId    int64
34245	urlParams_   gensupport.URLParams
34246	ifNoneMatch_ string
34247	ctx_         context.Context
34248	header_      http.Header
34249}
34250
34251// List: Retrieves a list of floodlight activity groups, possibly
34252// filtered. This method supports paging.
34253//
34254// - profileId: User profile ID associated with this request.
34255func (r *FloodlightActivityGroupsService) List(profileId int64) *FloodlightActivityGroupsListCall {
34256	c := &FloodlightActivityGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34257	c.profileId = profileId
34258	return c
34259}
34260
34261// AdvertiserId sets the optional parameter "advertiserId": Select only
34262// floodlight activity groups with the specified advertiser ID. Must
34263// specify either advertiserId or floodlightConfigurationId for a
34264// non-empty result.
34265func (c *FloodlightActivityGroupsListCall) AdvertiserId(advertiserId int64) *FloodlightActivityGroupsListCall {
34266	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
34267	return c
34268}
34269
34270// FloodlightConfigurationId sets the optional parameter
34271// "floodlightConfigurationId": Select only floodlight activity groups
34272// with the specified floodlight configuration ID. Must specify either
34273// advertiserId, or floodlightConfigurationId for a non-empty result.
34274func (c *FloodlightActivityGroupsListCall) FloodlightConfigurationId(floodlightConfigurationId int64) *FloodlightActivityGroupsListCall {
34275	c.urlParams_.Set("floodlightConfigurationId", fmt.Sprint(floodlightConfigurationId))
34276	return c
34277}
34278
34279// Ids sets the optional parameter "ids": Select only floodlight
34280// activity groups with the specified IDs. Must specify either
34281// advertiserId or floodlightConfigurationId for a non-empty result.
34282func (c *FloodlightActivityGroupsListCall) Ids(ids ...int64) *FloodlightActivityGroupsListCall {
34283	var ids_ []string
34284	for _, v := range ids {
34285		ids_ = append(ids_, fmt.Sprint(v))
34286	}
34287	c.urlParams_.SetMulti("ids", ids_)
34288	return c
34289}
34290
34291// MaxResults sets the optional parameter "maxResults": Maximum number
34292// of results to return.
34293func (c *FloodlightActivityGroupsListCall) MaxResults(maxResults int64) *FloodlightActivityGroupsListCall {
34294	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
34295	return c
34296}
34297
34298// PageToken sets the optional parameter "pageToken": Value of the
34299// nextPageToken from the previous result page.
34300func (c *FloodlightActivityGroupsListCall) PageToken(pageToken string) *FloodlightActivityGroupsListCall {
34301	c.urlParams_.Set("pageToken", pageToken)
34302	return c
34303}
34304
34305// SearchString sets the optional parameter "searchString": Allows
34306// searching for objects by name or ID. Wildcards (*) are allowed. For
34307// example, "floodlightactivitygroup*2015" will return objects with
34308// names like "floodlightactivitygroup June 2015",
34309// "floodlightactivitygroup April 2015", or simply
34310// "floodlightactivitygroup 2015". Most of the searches also add
34311// wildcards implicitly at the start and the end of the search string.
34312// For example, a search string of "floodlightactivitygroup" will match
34313// objects with name "my floodlightactivitygroup activity",
34314// "floodlightactivitygroup 2015", or simply "floodlightactivitygroup".
34315func (c *FloodlightActivityGroupsListCall) SearchString(searchString string) *FloodlightActivityGroupsListCall {
34316	c.urlParams_.Set("searchString", searchString)
34317	return c
34318}
34319
34320// SortField sets the optional parameter "sortField": Field by which to
34321// sort the list.
34322//
34323// Possible values:
34324//   "ID" (default)
34325//   "NAME"
34326func (c *FloodlightActivityGroupsListCall) SortField(sortField string) *FloodlightActivityGroupsListCall {
34327	c.urlParams_.Set("sortField", sortField)
34328	return c
34329}
34330
34331// SortOrder sets the optional parameter "sortOrder": Order of sorted
34332// results.
34333//
34334// Possible values:
34335//   "ASCENDING" (default)
34336//   "DESCENDING"
34337func (c *FloodlightActivityGroupsListCall) SortOrder(sortOrder string) *FloodlightActivityGroupsListCall {
34338	c.urlParams_.Set("sortOrder", sortOrder)
34339	return c
34340}
34341
34342// Type sets the optional parameter "type": Select only floodlight
34343// activity groups with the specified floodlight activity group type.
34344//
34345// Possible values:
34346//   "COUNTER"
34347//   "SALE"
34348func (c *FloodlightActivityGroupsListCall) Type(type_ string) *FloodlightActivityGroupsListCall {
34349	c.urlParams_.Set("type", type_)
34350	return c
34351}
34352
34353// Fields allows partial responses to be retrieved. See
34354// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34355// for more information.
34356func (c *FloodlightActivityGroupsListCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsListCall {
34357	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34358	return c
34359}
34360
34361// IfNoneMatch sets the optional parameter which makes the operation
34362// fail if the object's ETag matches the given value. This is useful for
34363// getting updates only after the object has changed since the last
34364// request. Use googleapi.IsNotModified to check whether the response
34365// error from Do is the result of In-None-Match.
34366func (c *FloodlightActivityGroupsListCall) IfNoneMatch(entityTag string) *FloodlightActivityGroupsListCall {
34367	c.ifNoneMatch_ = entityTag
34368	return c
34369}
34370
34371// Context sets the context to be used in this call's Do method. Any
34372// pending HTTP request will be aborted if the provided context is
34373// canceled.
34374func (c *FloodlightActivityGroupsListCall) Context(ctx context.Context) *FloodlightActivityGroupsListCall {
34375	c.ctx_ = ctx
34376	return c
34377}
34378
34379// Header returns an http.Header that can be modified by the caller to
34380// add HTTP headers to the request.
34381func (c *FloodlightActivityGroupsListCall) Header() http.Header {
34382	if c.header_ == nil {
34383		c.header_ = make(http.Header)
34384	}
34385	return c.header_
34386}
34387
34388func (c *FloodlightActivityGroupsListCall) doRequest(alt string) (*http.Response, error) {
34389	reqHeaders := make(http.Header)
34390	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34391	for k, v := range c.header_ {
34392		reqHeaders[k] = v
34393	}
34394	reqHeaders.Set("User-Agent", c.s.userAgent())
34395	if c.ifNoneMatch_ != "" {
34396		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34397	}
34398	var body io.Reader = nil
34399	c.urlParams_.Set("alt", alt)
34400	c.urlParams_.Set("prettyPrint", "false")
34401	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups")
34402	urls += "?" + c.urlParams_.Encode()
34403	req, err := http.NewRequest("GET", urls, body)
34404	if err != nil {
34405		return nil, err
34406	}
34407	req.Header = reqHeaders
34408	googleapi.Expand(req.URL, map[string]string{
34409		"profileId": strconv.FormatInt(c.profileId, 10),
34410	})
34411	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34412}
34413
34414// Do executes the "dfareporting.floodlightActivityGroups.list" call.
34415// Exactly one of *FloodlightActivityGroupsListResponse or error will be
34416// non-nil. Any non-2xx status code is an error. Response headers are in
34417// either *FloodlightActivityGroupsListResponse.ServerResponse.Header or
34418// (if a response was returned at all) in
34419// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
34420// whether the returned error was because http.StatusNotModified was
34421// returned.
34422func (c *FloodlightActivityGroupsListCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroupsListResponse, error) {
34423	gensupport.SetOptions(c.urlParams_, opts...)
34424	res, err := c.doRequest("json")
34425	if res != nil && res.StatusCode == http.StatusNotModified {
34426		if res.Body != nil {
34427			res.Body.Close()
34428		}
34429		return nil, &googleapi.Error{
34430			Code:   res.StatusCode,
34431			Header: res.Header,
34432		}
34433	}
34434	if err != nil {
34435		return nil, err
34436	}
34437	defer googleapi.CloseBody(res)
34438	if err := googleapi.CheckResponse(res); err != nil {
34439		return nil, err
34440	}
34441	ret := &FloodlightActivityGroupsListResponse{
34442		ServerResponse: googleapi.ServerResponse{
34443			Header:         res.Header,
34444			HTTPStatusCode: res.StatusCode,
34445		},
34446	}
34447	target := &ret
34448	if err := gensupport.DecodeResponse(target, res); err != nil {
34449		return nil, err
34450	}
34451	return ret, nil
34452	// {
34453	//   "description": "Retrieves a list of floodlight activity groups, possibly filtered. This method supports paging.",
34454	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups",
34455	//   "httpMethod": "GET",
34456	//   "id": "dfareporting.floodlightActivityGroups.list",
34457	//   "parameterOrder": [
34458	//     "profileId"
34459	//   ],
34460	//   "parameters": {
34461	//     "advertiserId": {
34462	//       "description": "Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.",
34463	//       "format": "int64",
34464	//       "location": "query",
34465	//       "type": "string"
34466	//     },
34467	//     "floodlightConfigurationId": {
34468	//       "description": "Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.",
34469	//       "format": "int64",
34470	//       "location": "query",
34471	//       "type": "string"
34472	//     },
34473	//     "ids": {
34474	//       "description": "Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.",
34475	//       "format": "int64",
34476	//       "location": "query",
34477	//       "repeated": true,
34478	//       "type": "string"
34479	//     },
34480	//     "maxResults": {
34481	//       "default": "1000",
34482	//       "description": "Maximum number of results to return.",
34483	//       "format": "int32",
34484	//       "location": "query",
34485	//       "maximum": "1000",
34486	//       "minimum": "0",
34487	//       "type": "integer"
34488	//     },
34489	//     "pageToken": {
34490	//       "description": "Value of the nextPageToken from the previous result page.",
34491	//       "location": "query",
34492	//       "type": "string"
34493	//     },
34494	//     "profileId": {
34495	//       "description": "User profile ID associated with this request.",
34496	//       "format": "int64",
34497	//       "location": "path",
34498	//       "required": true,
34499	//       "type": "string"
34500	//     },
34501	//     "searchString": {
34502	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivitygroup*2015\" will return objects with names like \"floodlightactivitygroup June 2015\", \"floodlightactivitygroup April 2015\", or simply \"floodlightactivitygroup 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivitygroup\" will match objects with name \"my floodlightactivitygroup activity\", \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".",
34503	//       "location": "query",
34504	//       "type": "string"
34505	//     },
34506	//     "sortField": {
34507	//       "default": "ID",
34508	//       "description": "Field by which to sort the list.",
34509	//       "enum": [
34510	//         "ID",
34511	//         "NAME"
34512	//       ],
34513	//       "enumDescriptions": [
34514	//         "",
34515	//         ""
34516	//       ],
34517	//       "location": "query",
34518	//       "type": "string"
34519	//     },
34520	//     "sortOrder": {
34521	//       "default": "ASCENDING",
34522	//       "description": "Order of sorted results.",
34523	//       "enum": [
34524	//         "ASCENDING",
34525	//         "DESCENDING"
34526	//       ],
34527	//       "enumDescriptions": [
34528	//         "",
34529	//         ""
34530	//       ],
34531	//       "location": "query",
34532	//       "type": "string"
34533	//     },
34534	//     "type": {
34535	//       "description": "Select only floodlight activity groups with the specified floodlight activity group type.",
34536	//       "enum": [
34537	//         "COUNTER",
34538	//         "SALE"
34539	//       ],
34540	//       "enumDescriptions": [
34541	//         "",
34542	//         ""
34543	//       ],
34544	//       "location": "query",
34545	//       "type": "string"
34546	//     }
34547	//   },
34548	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups",
34549	//   "response": {
34550	//     "$ref": "FloodlightActivityGroupsListResponse"
34551	//   },
34552	//   "scopes": [
34553	//     "https://www.googleapis.com/auth/dfatrafficking"
34554	//   ]
34555	// }
34556
34557}
34558
34559// Pages invokes f for each page of results.
34560// A non-nil error returned from f will halt the iteration.
34561// The provided context supersedes any context provided to the Context method.
34562func (c *FloodlightActivityGroupsListCall) Pages(ctx context.Context, f func(*FloodlightActivityGroupsListResponse) error) error {
34563	c.ctx_ = ctx
34564	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
34565	for {
34566		x, err := c.Do()
34567		if err != nil {
34568			return err
34569		}
34570		if err := f(x); err != nil {
34571			return err
34572		}
34573		if x.NextPageToken == "" {
34574			return nil
34575		}
34576		c.PageToken(x.NextPageToken)
34577	}
34578}
34579
34580// method id "dfareporting.floodlightActivityGroups.patch":
34581
34582type FloodlightActivityGroupsPatchCall struct {
34583	s                       *Service
34584	profileId               int64
34585	floodlightactivitygroup *FloodlightActivityGroup
34586	urlParams_              gensupport.URLParams
34587	ctx_                    context.Context
34588	header_                 http.Header
34589}
34590
34591// Patch: Updates an existing floodlight activity group. This method
34592// supports patch semantics.
34593//
34594// - id: FloodlightActivityGroup ID.
34595// - profileId: User profile ID associated with this request.
34596func (r *FloodlightActivityGroupsService) Patch(profileId int64, id int64, floodlightactivitygroup *FloodlightActivityGroup) *FloodlightActivityGroupsPatchCall {
34597	c := &FloodlightActivityGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34598	c.profileId = profileId
34599	c.urlParams_.Set("id", fmt.Sprint(id))
34600	c.floodlightactivitygroup = floodlightactivitygroup
34601	return c
34602}
34603
34604// Fields allows partial responses to be retrieved. See
34605// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34606// for more information.
34607func (c *FloodlightActivityGroupsPatchCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsPatchCall {
34608	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34609	return c
34610}
34611
34612// Context sets the context to be used in this call's Do method. Any
34613// pending HTTP request will be aborted if the provided context is
34614// canceled.
34615func (c *FloodlightActivityGroupsPatchCall) Context(ctx context.Context) *FloodlightActivityGroupsPatchCall {
34616	c.ctx_ = ctx
34617	return c
34618}
34619
34620// Header returns an http.Header that can be modified by the caller to
34621// add HTTP headers to the request.
34622func (c *FloodlightActivityGroupsPatchCall) Header() http.Header {
34623	if c.header_ == nil {
34624		c.header_ = make(http.Header)
34625	}
34626	return c.header_
34627}
34628
34629func (c *FloodlightActivityGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
34630	reqHeaders := make(http.Header)
34631	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34632	for k, v := range c.header_ {
34633		reqHeaders[k] = v
34634	}
34635	reqHeaders.Set("User-Agent", c.s.userAgent())
34636	var body io.Reader = nil
34637	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivitygroup)
34638	if err != nil {
34639		return nil, err
34640	}
34641	reqHeaders.Set("Content-Type", "application/json")
34642	c.urlParams_.Set("alt", alt)
34643	c.urlParams_.Set("prettyPrint", "false")
34644	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups")
34645	urls += "?" + c.urlParams_.Encode()
34646	req, err := http.NewRequest("PATCH", urls, body)
34647	if err != nil {
34648		return nil, err
34649	}
34650	req.Header = reqHeaders
34651	googleapi.Expand(req.URL, map[string]string{
34652		"profileId": strconv.FormatInt(c.profileId, 10),
34653	})
34654	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34655}
34656
34657// Do executes the "dfareporting.floodlightActivityGroups.patch" call.
34658// Exactly one of *FloodlightActivityGroup or error will be non-nil. Any
34659// non-2xx status code is an error. Response headers are in either
34660// *FloodlightActivityGroup.ServerResponse.Header or (if a response was
34661// returned at all) in error.(*googleapi.Error).Header. Use
34662// googleapi.IsNotModified to check whether the returned error was
34663// because http.StatusNotModified was returned.
34664func (c *FloodlightActivityGroupsPatchCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroup, error) {
34665	gensupport.SetOptions(c.urlParams_, opts...)
34666	res, err := c.doRequest("json")
34667	if res != nil && res.StatusCode == http.StatusNotModified {
34668		if res.Body != nil {
34669			res.Body.Close()
34670		}
34671		return nil, &googleapi.Error{
34672			Code:   res.StatusCode,
34673			Header: res.Header,
34674		}
34675	}
34676	if err != nil {
34677		return nil, err
34678	}
34679	defer googleapi.CloseBody(res)
34680	if err := googleapi.CheckResponse(res); err != nil {
34681		return nil, err
34682	}
34683	ret := &FloodlightActivityGroup{
34684		ServerResponse: googleapi.ServerResponse{
34685			Header:         res.Header,
34686			HTTPStatusCode: res.StatusCode,
34687		},
34688	}
34689	target := &ret
34690	if err := gensupport.DecodeResponse(target, res); err != nil {
34691		return nil, err
34692	}
34693	return ret, nil
34694	// {
34695	//   "description": "Updates an existing floodlight activity group. This method supports patch semantics.",
34696	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups",
34697	//   "httpMethod": "PATCH",
34698	//   "id": "dfareporting.floodlightActivityGroups.patch",
34699	//   "parameterOrder": [
34700	//     "profileId",
34701	//     "id"
34702	//   ],
34703	//   "parameters": {
34704	//     "id": {
34705	//       "description": "FloodlightActivityGroup ID.",
34706	//       "format": "int64",
34707	//       "location": "query",
34708	//       "required": true,
34709	//       "type": "string"
34710	//     },
34711	//     "profileId": {
34712	//       "description": "User profile ID associated with this request.",
34713	//       "format": "int64",
34714	//       "location": "path",
34715	//       "required": true,
34716	//       "type": "string"
34717	//     }
34718	//   },
34719	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups",
34720	//   "request": {
34721	//     "$ref": "FloodlightActivityGroup"
34722	//   },
34723	//   "response": {
34724	//     "$ref": "FloodlightActivityGroup"
34725	//   },
34726	//   "scopes": [
34727	//     "https://www.googleapis.com/auth/dfatrafficking"
34728	//   ]
34729	// }
34730
34731}
34732
34733// method id "dfareporting.floodlightActivityGroups.update":
34734
34735type FloodlightActivityGroupsUpdateCall struct {
34736	s                       *Service
34737	profileId               int64
34738	floodlightactivitygroup *FloodlightActivityGroup
34739	urlParams_              gensupport.URLParams
34740	ctx_                    context.Context
34741	header_                 http.Header
34742}
34743
34744// Update: Updates an existing floodlight activity group.
34745//
34746// - profileId: User profile ID associated with this request.
34747func (r *FloodlightActivityGroupsService) Update(profileId int64, floodlightactivitygroup *FloodlightActivityGroup) *FloodlightActivityGroupsUpdateCall {
34748	c := &FloodlightActivityGroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34749	c.profileId = profileId
34750	c.floodlightactivitygroup = floodlightactivitygroup
34751	return c
34752}
34753
34754// Fields allows partial responses to be retrieved. See
34755// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34756// for more information.
34757func (c *FloodlightActivityGroupsUpdateCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsUpdateCall {
34758	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34759	return c
34760}
34761
34762// Context sets the context to be used in this call's Do method. Any
34763// pending HTTP request will be aborted if the provided context is
34764// canceled.
34765func (c *FloodlightActivityGroupsUpdateCall) Context(ctx context.Context) *FloodlightActivityGroupsUpdateCall {
34766	c.ctx_ = ctx
34767	return c
34768}
34769
34770// Header returns an http.Header that can be modified by the caller to
34771// add HTTP headers to the request.
34772func (c *FloodlightActivityGroupsUpdateCall) Header() http.Header {
34773	if c.header_ == nil {
34774		c.header_ = make(http.Header)
34775	}
34776	return c.header_
34777}
34778
34779func (c *FloodlightActivityGroupsUpdateCall) doRequest(alt string) (*http.Response, error) {
34780	reqHeaders := make(http.Header)
34781	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34782	for k, v := range c.header_ {
34783		reqHeaders[k] = v
34784	}
34785	reqHeaders.Set("User-Agent", c.s.userAgent())
34786	var body io.Reader = nil
34787	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivitygroup)
34788	if err != nil {
34789		return nil, err
34790	}
34791	reqHeaders.Set("Content-Type", "application/json")
34792	c.urlParams_.Set("alt", alt)
34793	c.urlParams_.Set("prettyPrint", "false")
34794	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups")
34795	urls += "?" + c.urlParams_.Encode()
34796	req, err := http.NewRequest("PUT", urls, body)
34797	if err != nil {
34798		return nil, err
34799	}
34800	req.Header = reqHeaders
34801	googleapi.Expand(req.URL, map[string]string{
34802		"profileId": strconv.FormatInt(c.profileId, 10),
34803	})
34804	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34805}
34806
34807// Do executes the "dfareporting.floodlightActivityGroups.update" call.
34808// Exactly one of *FloodlightActivityGroup or error will be non-nil. Any
34809// non-2xx status code is an error. Response headers are in either
34810// *FloodlightActivityGroup.ServerResponse.Header or (if a response was
34811// returned at all) in error.(*googleapi.Error).Header. Use
34812// googleapi.IsNotModified to check whether the returned error was
34813// because http.StatusNotModified was returned.
34814func (c *FloodlightActivityGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroup, error) {
34815	gensupport.SetOptions(c.urlParams_, opts...)
34816	res, err := c.doRequest("json")
34817	if res != nil && res.StatusCode == http.StatusNotModified {
34818		if res.Body != nil {
34819			res.Body.Close()
34820		}
34821		return nil, &googleapi.Error{
34822			Code:   res.StatusCode,
34823			Header: res.Header,
34824		}
34825	}
34826	if err != nil {
34827		return nil, err
34828	}
34829	defer googleapi.CloseBody(res)
34830	if err := googleapi.CheckResponse(res); err != nil {
34831		return nil, err
34832	}
34833	ret := &FloodlightActivityGroup{
34834		ServerResponse: googleapi.ServerResponse{
34835			Header:         res.Header,
34836			HTTPStatusCode: res.StatusCode,
34837		},
34838	}
34839	target := &ret
34840	if err := gensupport.DecodeResponse(target, res); err != nil {
34841		return nil, err
34842	}
34843	return ret, nil
34844	// {
34845	//   "description": "Updates an existing floodlight activity group.",
34846	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups",
34847	//   "httpMethod": "PUT",
34848	//   "id": "dfareporting.floodlightActivityGroups.update",
34849	//   "parameterOrder": [
34850	//     "profileId"
34851	//   ],
34852	//   "parameters": {
34853	//     "profileId": {
34854	//       "description": "User profile ID associated with this request.",
34855	//       "format": "int64",
34856	//       "location": "path",
34857	//       "required": true,
34858	//       "type": "string"
34859	//     }
34860	//   },
34861	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightActivityGroups",
34862	//   "request": {
34863	//     "$ref": "FloodlightActivityGroup"
34864	//   },
34865	//   "response": {
34866	//     "$ref": "FloodlightActivityGroup"
34867	//   },
34868	//   "scopes": [
34869	//     "https://www.googleapis.com/auth/dfatrafficking"
34870	//   ]
34871	// }
34872
34873}
34874
34875// method id "dfareporting.floodlightConfigurations.get":
34876
34877type FloodlightConfigurationsGetCall struct {
34878	s            *Service
34879	profileId    int64
34880	id           int64
34881	urlParams_   gensupport.URLParams
34882	ifNoneMatch_ string
34883	ctx_         context.Context
34884	header_      http.Header
34885}
34886
34887// Get: Gets one floodlight configuration by ID.
34888//
34889// - id: Floodlight configuration ID.
34890// - profileId: User profile ID associated with this request.
34891func (r *FloodlightConfigurationsService) Get(profileId int64, id int64) *FloodlightConfigurationsGetCall {
34892	c := &FloodlightConfigurationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34893	c.profileId = profileId
34894	c.id = id
34895	return c
34896}
34897
34898// Fields allows partial responses to be retrieved. See
34899// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34900// for more information.
34901func (c *FloodlightConfigurationsGetCall) Fields(s ...googleapi.Field) *FloodlightConfigurationsGetCall {
34902	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34903	return c
34904}
34905
34906// IfNoneMatch sets the optional parameter which makes the operation
34907// fail if the object's ETag matches the given value. This is useful for
34908// getting updates only after the object has changed since the last
34909// request. Use googleapi.IsNotModified to check whether the response
34910// error from Do is the result of In-None-Match.
34911func (c *FloodlightConfigurationsGetCall) IfNoneMatch(entityTag string) *FloodlightConfigurationsGetCall {
34912	c.ifNoneMatch_ = entityTag
34913	return c
34914}
34915
34916// Context sets the context to be used in this call's Do method. Any
34917// pending HTTP request will be aborted if the provided context is
34918// canceled.
34919func (c *FloodlightConfigurationsGetCall) Context(ctx context.Context) *FloodlightConfigurationsGetCall {
34920	c.ctx_ = ctx
34921	return c
34922}
34923
34924// Header returns an http.Header that can be modified by the caller to
34925// add HTTP headers to the request.
34926func (c *FloodlightConfigurationsGetCall) Header() http.Header {
34927	if c.header_ == nil {
34928		c.header_ = make(http.Header)
34929	}
34930	return c.header_
34931}
34932
34933func (c *FloodlightConfigurationsGetCall) doRequest(alt string) (*http.Response, error) {
34934	reqHeaders := make(http.Header)
34935	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34936	for k, v := range c.header_ {
34937		reqHeaders[k] = v
34938	}
34939	reqHeaders.Set("User-Agent", c.s.userAgent())
34940	if c.ifNoneMatch_ != "" {
34941		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34942	}
34943	var body io.Reader = nil
34944	c.urlParams_.Set("alt", alt)
34945	c.urlParams_.Set("prettyPrint", "false")
34946	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations/{id}")
34947	urls += "?" + c.urlParams_.Encode()
34948	req, err := http.NewRequest("GET", urls, body)
34949	if err != nil {
34950		return nil, err
34951	}
34952	req.Header = reqHeaders
34953	googleapi.Expand(req.URL, map[string]string{
34954		"profileId": strconv.FormatInt(c.profileId, 10),
34955		"id":        strconv.FormatInt(c.id, 10),
34956	})
34957	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34958}
34959
34960// Do executes the "dfareporting.floodlightConfigurations.get" call.
34961// Exactly one of *FloodlightConfiguration or error will be non-nil. Any
34962// non-2xx status code is an error. Response headers are in either
34963// *FloodlightConfiguration.ServerResponse.Header or (if a response was
34964// returned at all) in error.(*googleapi.Error).Header. Use
34965// googleapi.IsNotModified to check whether the returned error was
34966// because http.StatusNotModified was returned.
34967func (c *FloodlightConfigurationsGetCall) Do(opts ...googleapi.CallOption) (*FloodlightConfiguration, error) {
34968	gensupport.SetOptions(c.urlParams_, opts...)
34969	res, err := c.doRequest("json")
34970	if res != nil && res.StatusCode == http.StatusNotModified {
34971		if res.Body != nil {
34972			res.Body.Close()
34973		}
34974		return nil, &googleapi.Error{
34975			Code:   res.StatusCode,
34976			Header: res.Header,
34977		}
34978	}
34979	if err != nil {
34980		return nil, err
34981	}
34982	defer googleapi.CloseBody(res)
34983	if err := googleapi.CheckResponse(res); err != nil {
34984		return nil, err
34985	}
34986	ret := &FloodlightConfiguration{
34987		ServerResponse: googleapi.ServerResponse{
34988			Header:         res.Header,
34989			HTTPStatusCode: res.StatusCode,
34990		},
34991	}
34992	target := &ret
34993	if err := gensupport.DecodeResponse(target, res); err != nil {
34994		return nil, err
34995	}
34996	return ret, nil
34997	// {
34998	//   "description": "Gets one floodlight configuration by ID.",
34999	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations/{id}",
35000	//   "httpMethod": "GET",
35001	//   "id": "dfareporting.floodlightConfigurations.get",
35002	//   "parameterOrder": [
35003	//     "profileId",
35004	//     "id"
35005	//   ],
35006	//   "parameters": {
35007	//     "id": {
35008	//       "description": "Floodlight configuration ID.",
35009	//       "format": "int64",
35010	//       "location": "path",
35011	//       "required": true,
35012	//       "type": "string"
35013	//     },
35014	//     "profileId": {
35015	//       "description": "User profile ID associated with this request.",
35016	//       "format": "int64",
35017	//       "location": "path",
35018	//       "required": true,
35019	//       "type": "string"
35020	//     }
35021	//   },
35022	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations/{id}",
35023	//   "response": {
35024	//     "$ref": "FloodlightConfiguration"
35025	//   },
35026	//   "scopes": [
35027	//     "https://www.googleapis.com/auth/dfatrafficking"
35028	//   ]
35029	// }
35030
35031}
35032
35033// method id "dfareporting.floodlightConfigurations.list":
35034
35035type FloodlightConfigurationsListCall struct {
35036	s            *Service
35037	profileId    int64
35038	urlParams_   gensupport.URLParams
35039	ifNoneMatch_ string
35040	ctx_         context.Context
35041	header_      http.Header
35042}
35043
35044// List: Retrieves a list of floodlight configurations, possibly
35045// filtered.
35046//
35047// - profileId: User profile ID associated with this request.
35048func (r *FloodlightConfigurationsService) List(profileId int64) *FloodlightConfigurationsListCall {
35049	c := &FloodlightConfigurationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35050	c.profileId = profileId
35051	return c
35052}
35053
35054// Ids sets the optional parameter "ids": Set of IDs of floodlight
35055// configurations to retrieve. Required field; otherwise an empty list
35056// will be returned.
35057func (c *FloodlightConfigurationsListCall) Ids(ids ...int64) *FloodlightConfigurationsListCall {
35058	var ids_ []string
35059	for _, v := range ids {
35060		ids_ = append(ids_, fmt.Sprint(v))
35061	}
35062	c.urlParams_.SetMulti("ids", ids_)
35063	return c
35064}
35065
35066// Fields allows partial responses to be retrieved. See
35067// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35068// for more information.
35069func (c *FloodlightConfigurationsListCall) Fields(s ...googleapi.Field) *FloodlightConfigurationsListCall {
35070	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35071	return c
35072}
35073
35074// IfNoneMatch sets the optional parameter which makes the operation
35075// fail if the object's ETag matches the given value. This is useful for
35076// getting updates only after the object has changed since the last
35077// request. Use googleapi.IsNotModified to check whether the response
35078// error from Do is the result of In-None-Match.
35079func (c *FloodlightConfigurationsListCall) IfNoneMatch(entityTag string) *FloodlightConfigurationsListCall {
35080	c.ifNoneMatch_ = entityTag
35081	return c
35082}
35083
35084// Context sets the context to be used in this call's Do method. Any
35085// pending HTTP request will be aborted if the provided context is
35086// canceled.
35087func (c *FloodlightConfigurationsListCall) Context(ctx context.Context) *FloodlightConfigurationsListCall {
35088	c.ctx_ = ctx
35089	return c
35090}
35091
35092// Header returns an http.Header that can be modified by the caller to
35093// add HTTP headers to the request.
35094func (c *FloodlightConfigurationsListCall) Header() http.Header {
35095	if c.header_ == nil {
35096		c.header_ = make(http.Header)
35097	}
35098	return c.header_
35099}
35100
35101func (c *FloodlightConfigurationsListCall) doRequest(alt string) (*http.Response, error) {
35102	reqHeaders := make(http.Header)
35103	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35104	for k, v := range c.header_ {
35105		reqHeaders[k] = v
35106	}
35107	reqHeaders.Set("User-Agent", c.s.userAgent())
35108	if c.ifNoneMatch_ != "" {
35109		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35110	}
35111	var body io.Reader = nil
35112	c.urlParams_.Set("alt", alt)
35113	c.urlParams_.Set("prettyPrint", "false")
35114	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations")
35115	urls += "?" + c.urlParams_.Encode()
35116	req, err := http.NewRequest("GET", urls, body)
35117	if err != nil {
35118		return nil, err
35119	}
35120	req.Header = reqHeaders
35121	googleapi.Expand(req.URL, map[string]string{
35122		"profileId": strconv.FormatInt(c.profileId, 10),
35123	})
35124	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35125}
35126
35127// Do executes the "dfareporting.floodlightConfigurations.list" call.
35128// Exactly one of *FloodlightConfigurationsListResponse or error will be
35129// non-nil. Any non-2xx status code is an error. Response headers are in
35130// either *FloodlightConfigurationsListResponse.ServerResponse.Header or
35131// (if a response was returned at all) in
35132// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
35133// whether the returned error was because http.StatusNotModified was
35134// returned.
35135func (c *FloodlightConfigurationsListCall) Do(opts ...googleapi.CallOption) (*FloodlightConfigurationsListResponse, error) {
35136	gensupport.SetOptions(c.urlParams_, opts...)
35137	res, err := c.doRequest("json")
35138	if res != nil && res.StatusCode == http.StatusNotModified {
35139		if res.Body != nil {
35140			res.Body.Close()
35141		}
35142		return nil, &googleapi.Error{
35143			Code:   res.StatusCode,
35144			Header: res.Header,
35145		}
35146	}
35147	if err != nil {
35148		return nil, err
35149	}
35150	defer googleapi.CloseBody(res)
35151	if err := googleapi.CheckResponse(res); err != nil {
35152		return nil, err
35153	}
35154	ret := &FloodlightConfigurationsListResponse{
35155		ServerResponse: googleapi.ServerResponse{
35156			Header:         res.Header,
35157			HTTPStatusCode: res.StatusCode,
35158		},
35159	}
35160	target := &ret
35161	if err := gensupport.DecodeResponse(target, res); err != nil {
35162		return nil, err
35163	}
35164	return ret, nil
35165	// {
35166	//   "description": "Retrieves a list of floodlight configurations, possibly filtered.",
35167	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations",
35168	//   "httpMethod": "GET",
35169	//   "id": "dfareporting.floodlightConfigurations.list",
35170	//   "parameterOrder": [
35171	//     "profileId"
35172	//   ],
35173	//   "parameters": {
35174	//     "ids": {
35175	//       "description": "Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.",
35176	//       "format": "int64",
35177	//       "location": "query",
35178	//       "repeated": true,
35179	//       "type": "string"
35180	//     },
35181	//     "profileId": {
35182	//       "description": "User profile ID associated with this request.",
35183	//       "format": "int64",
35184	//       "location": "path",
35185	//       "required": true,
35186	//       "type": "string"
35187	//     }
35188	//   },
35189	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations",
35190	//   "response": {
35191	//     "$ref": "FloodlightConfigurationsListResponse"
35192	//   },
35193	//   "scopes": [
35194	//     "https://www.googleapis.com/auth/dfatrafficking"
35195	//   ]
35196	// }
35197
35198}
35199
35200// method id "dfareporting.floodlightConfigurations.patch":
35201
35202type FloodlightConfigurationsPatchCall struct {
35203	s                       *Service
35204	profileId               int64
35205	floodlightconfiguration *FloodlightConfiguration
35206	urlParams_              gensupport.URLParams
35207	ctx_                    context.Context
35208	header_                 http.Header
35209}
35210
35211// Patch: Updates an existing floodlight configuration. This method
35212// supports patch semantics.
35213//
35214// - id: FloodlightConfiguration ID.
35215// - profileId: User profile ID associated with this request.
35216func (r *FloodlightConfigurationsService) Patch(profileId int64, id int64, floodlightconfiguration *FloodlightConfiguration) *FloodlightConfigurationsPatchCall {
35217	c := &FloodlightConfigurationsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35218	c.profileId = profileId
35219	c.urlParams_.Set("id", fmt.Sprint(id))
35220	c.floodlightconfiguration = floodlightconfiguration
35221	return c
35222}
35223
35224// Fields allows partial responses to be retrieved. See
35225// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35226// for more information.
35227func (c *FloodlightConfigurationsPatchCall) Fields(s ...googleapi.Field) *FloodlightConfigurationsPatchCall {
35228	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35229	return c
35230}
35231
35232// Context sets the context to be used in this call's Do method. Any
35233// pending HTTP request will be aborted if the provided context is
35234// canceled.
35235func (c *FloodlightConfigurationsPatchCall) Context(ctx context.Context) *FloodlightConfigurationsPatchCall {
35236	c.ctx_ = ctx
35237	return c
35238}
35239
35240// Header returns an http.Header that can be modified by the caller to
35241// add HTTP headers to the request.
35242func (c *FloodlightConfigurationsPatchCall) Header() http.Header {
35243	if c.header_ == nil {
35244		c.header_ = make(http.Header)
35245	}
35246	return c.header_
35247}
35248
35249func (c *FloodlightConfigurationsPatchCall) doRequest(alt string) (*http.Response, error) {
35250	reqHeaders := make(http.Header)
35251	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35252	for k, v := range c.header_ {
35253		reqHeaders[k] = v
35254	}
35255	reqHeaders.Set("User-Agent", c.s.userAgent())
35256	var body io.Reader = nil
35257	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightconfiguration)
35258	if err != nil {
35259		return nil, err
35260	}
35261	reqHeaders.Set("Content-Type", "application/json")
35262	c.urlParams_.Set("alt", alt)
35263	c.urlParams_.Set("prettyPrint", "false")
35264	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations")
35265	urls += "?" + c.urlParams_.Encode()
35266	req, err := http.NewRequest("PATCH", urls, body)
35267	if err != nil {
35268		return nil, err
35269	}
35270	req.Header = reqHeaders
35271	googleapi.Expand(req.URL, map[string]string{
35272		"profileId": strconv.FormatInt(c.profileId, 10),
35273	})
35274	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35275}
35276
35277// Do executes the "dfareporting.floodlightConfigurations.patch" call.
35278// Exactly one of *FloodlightConfiguration or error will be non-nil. Any
35279// non-2xx status code is an error. Response headers are in either
35280// *FloodlightConfiguration.ServerResponse.Header or (if a response was
35281// returned at all) in error.(*googleapi.Error).Header. Use
35282// googleapi.IsNotModified to check whether the returned error was
35283// because http.StatusNotModified was returned.
35284func (c *FloodlightConfigurationsPatchCall) Do(opts ...googleapi.CallOption) (*FloodlightConfiguration, error) {
35285	gensupport.SetOptions(c.urlParams_, opts...)
35286	res, err := c.doRequest("json")
35287	if res != nil && res.StatusCode == http.StatusNotModified {
35288		if res.Body != nil {
35289			res.Body.Close()
35290		}
35291		return nil, &googleapi.Error{
35292			Code:   res.StatusCode,
35293			Header: res.Header,
35294		}
35295	}
35296	if err != nil {
35297		return nil, err
35298	}
35299	defer googleapi.CloseBody(res)
35300	if err := googleapi.CheckResponse(res); err != nil {
35301		return nil, err
35302	}
35303	ret := &FloodlightConfiguration{
35304		ServerResponse: googleapi.ServerResponse{
35305			Header:         res.Header,
35306			HTTPStatusCode: res.StatusCode,
35307		},
35308	}
35309	target := &ret
35310	if err := gensupport.DecodeResponse(target, res); err != nil {
35311		return nil, err
35312	}
35313	return ret, nil
35314	// {
35315	//   "description": "Updates an existing floodlight configuration. This method supports patch semantics.",
35316	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations",
35317	//   "httpMethod": "PATCH",
35318	//   "id": "dfareporting.floodlightConfigurations.patch",
35319	//   "parameterOrder": [
35320	//     "profileId",
35321	//     "id"
35322	//   ],
35323	//   "parameters": {
35324	//     "id": {
35325	//       "description": "FloodlightConfiguration ID.",
35326	//       "format": "int64",
35327	//       "location": "query",
35328	//       "required": true,
35329	//       "type": "string"
35330	//     },
35331	//     "profileId": {
35332	//       "description": "User profile ID associated with this request.",
35333	//       "format": "int64",
35334	//       "location": "path",
35335	//       "required": true,
35336	//       "type": "string"
35337	//     }
35338	//   },
35339	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations",
35340	//   "request": {
35341	//     "$ref": "FloodlightConfiguration"
35342	//   },
35343	//   "response": {
35344	//     "$ref": "FloodlightConfiguration"
35345	//   },
35346	//   "scopes": [
35347	//     "https://www.googleapis.com/auth/dfatrafficking"
35348	//   ]
35349	// }
35350
35351}
35352
35353// method id "dfareporting.floodlightConfigurations.update":
35354
35355type FloodlightConfigurationsUpdateCall struct {
35356	s                       *Service
35357	profileId               int64
35358	floodlightconfiguration *FloodlightConfiguration
35359	urlParams_              gensupport.URLParams
35360	ctx_                    context.Context
35361	header_                 http.Header
35362}
35363
35364// Update: Updates an existing floodlight configuration.
35365//
35366// - profileId: User profile ID associated with this request.
35367func (r *FloodlightConfigurationsService) Update(profileId int64, floodlightconfiguration *FloodlightConfiguration) *FloodlightConfigurationsUpdateCall {
35368	c := &FloodlightConfigurationsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35369	c.profileId = profileId
35370	c.floodlightconfiguration = floodlightconfiguration
35371	return c
35372}
35373
35374// Fields allows partial responses to be retrieved. See
35375// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35376// for more information.
35377func (c *FloodlightConfigurationsUpdateCall) Fields(s ...googleapi.Field) *FloodlightConfigurationsUpdateCall {
35378	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35379	return c
35380}
35381
35382// Context sets the context to be used in this call's Do method. Any
35383// pending HTTP request will be aborted if the provided context is
35384// canceled.
35385func (c *FloodlightConfigurationsUpdateCall) Context(ctx context.Context) *FloodlightConfigurationsUpdateCall {
35386	c.ctx_ = ctx
35387	return c
35388}
35389
35390// Header returns an http.Header that can be modified by the caller to
35391// add HTTP headers to the request.
35392func (c *FloodlightConfigurationsUpdateCall) Header() http.Header {
35393	if c.header_ == nil {
35394		c.header_ = make(http.Header)
35395	}
35396	return c.header_
35397}
35398
35399func (c *FloodlightConfigurationsUpdateCall) doRequest(alt string) (*http.Response, error) {
35400	reqHeaders := make(http.Header)
35401	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35402	for k, v := range c.header_ {
35403		reqHeaders[k] = v
35404	}
35405	reqHeaders.Set("User-Agent", c.s.userAgent())
35406	var body io.Reader = nil
35407	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightconfiguration)
35408	if err != nil {
35409		return nil, err
35410	}
35411	reqHeaders.Set("Content-Type", "application/json")
35412	c.urlParams_.Set("alt", alt)
35413	c.urlParams_.Set("prettyPrint", "false")
35414	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations")
35415	urls += "?" + c.urlParams_.Encode()
35416	req, err := http.NewRequest("PUT", urls, body)
35417	if err != nil {
35418		return nil, err
35419	}
35420	req.Header = reqHeaders
35421	googleapi.Expand(req.URL, map[string]string{
35422		"profileId": strconv.FormatInt(c.profileId, 10),
35423	})
35424	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35425}
35426
35427// Do executes the "dfareporting.floodlightConfigurations.update" call.
35428// Exactly one of *FloodlightConfiguration or error will be non-nil. Any
35429// non-2xx status code is an error. Response headers are in either
35430// *FloodlightConfiguration.ServerResponse.Header or (if a response was
35431// returned at all) in error.(*googleapi.Error).Header. Use
35432// googleapi.IsNotModified to check whether the returned error was
35433// because http.StatusNotModified was returned.
35434func (c *FloodlightConfigurationsUpdateCall) Do(opts ...googleapi.CallOption) (*FloodlightConfiguration, error) {
35435	gensupport.SetOptions(c.urlParams_, opts...)
35436	res, err := c.doRequest("json")
35437	if res != nil && res.StatusCode == http.StatusNotModified {
35438		if res.Body != nil {
35439			res.Body.Close()
35440		}
35441		return nil, &googleapi.Error{
35442			Code:   res.StatusCode,
35443			Header: res.Header,
35444		}
35445	}
35446	if err != nil {
35447		return nil, err
35448	}
35449	defer googleapi.CloseBody(res)
35450	if err := googleapi.CheckResponse(res); err != nil {
35451		return nil, err
35452	}
35453	ret := &FloodlightConfiguration{
35454		ServerResponse: googleapi.ServerResponse{
35455			Header:         res.Header,
35456			HTTPStatusCode: res.StatusCode,
35457		},
35458	}
35459	target := &ret
35460	if err := gensupport.DecodeResponse(target, res); err != nil {
35461		return nil, err
35462	}
35463	return ret, nil
35464	// {
35465	//   "description": "Updates an existing floodlight configuration.",
35466	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations",
35467	//   "httpMethod": "PUT",
35468	//   "id": "dfareporting.floodlightConfigurations.update",
35469	//   "parameterOrder": [
35470	//     "profileId"
35471	//   ],
35472	//   "parameters": {
35473	//     "profileId": {
35474	//       "description": "User profile ID associated with this request.",
35475	//       "format": "int64",
35476	//       "location": "path",
35477	//       "required": true,
35478	//       "type": "string"
35479	//     }
35480	//   },
35481	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/floodlightConfigurations",
35482	//   "request": {
35483	//     "$ref": "FloodlightConfiguration"
35484	//   },
35485	//   "response": {
35486	//     "$ref": "FloodlightConfiguration"
35487	//   },
35488	//   "scopes": [
35489	//     "https://www.googleapis.com/auth/dfatrafficking"
35490	//   ]
35491	// }
35492
35493}
35494
35495// method id "dfareporting.inventoryItems.get":
35496
35497type InventoryItemsGetCall struct {
35498	s            *Service
35499	profileId    int64
35500	projectId    int64
35501	id           int64
35502	urlParams_   gensupport.URLParams
35503	ifNoneMatch_ string
35504	ctx_         context.Context
35505	header_      http.Header
35506}
35507
35508// Get: Gets one inventory item by ID.
35509//
35510// - id: Inventory item ID.
35511// - profileId: User profile ID associated with this request.
35512// - projectId: Project ID for order documents.
35513func (r *InventoryItemsService) Get(profileId int64, projectId int64, id int64) *InventoryItemsGetCall {
35514	c := &InventoryItemsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35515	c.profileId = profileId
35516	c.projectId = projectId
35517	c.id = id
35518	return c
35519}
35520
35521// Fields allows partial responses to be retrieved. See
35522// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35523// for more information.
35524func (c *InventoryItemsGetCall) Fields(s ...googleapi.Field) *InventoryItemsGetCall {
35525	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35526	return c
35527}
35528
35529// IfNoneMatch sets the optional parameter which makes the operation
35530// fail if the object's ETag matches the given value. This is useful for
35531// getting updates only after the object has changed since the last
35532// request. Use googleapi.IsNotModified to check whether the response
35533// error from Do is the result of In-None-Match.
35534func (c *InventoryItemsGetCall) IfNoneMatch(entityTag string) *InventoryItemsGetCall {
35535	c.ifNoneMatch_ = entityTag
35536	return c
35537}
35538
35539// Context sets the context to be used in this call's Do method. Any
35540// pending HTTP request will be aborted if the provided context is
35541// canceled.
35542func (c *InventoryItemsGetCall) Context(ctx context.Context) *InventoryItemsGetCall {
35543	c.ctx_ = ctx
35544	return c
35545}
35546
35547// Header returns an http.Header that can be modified by the caller to
35548// add HTTP headers to the request.
35549func (c *InventoryItemsGetCall) Header() http.Header {
35550	if c.header_ == nil {
35551		c.header_ = make(http.Header)
35552	}
35553	return c.header_
35554}
35555
35556func (c *InventoryItemsGetCall) doRequest(alt string) (*http.Response, error) {
35557	reqHeaders := make(http.Header)
35558	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35559	for k, v := range c.header_ {
35560		reqHeaders[k] = v
35561	}
35562	reqHeaders.Set("User-Agent", c.s.userAgent())
35563	if c.ifNoneMatch_ != "" {
35564		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35565	}
35566	var body io.Reader = nil
35567	c.urlParams_.Set("alt", alt)
35568	c.urlParams_.Set("prettyPrint", "false")
35569	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}")
35570	urls += "?" + c.urlParams_.Encode()
35571	req, err := http.NewRequest("GET", urls, body)
35572	if err != nil {
35573		return nil, err
35574	}
35575	req.Header = reqHeaders
35576	googleapi.Expand(req.URL, map[string]string{
35577		"profileId": strconv.FormatInt(c.profileId, 10),
35578		"projectId": strconv.FormatInt(c.projectId, 10),
35579		"id":        strconv.FormatInt(c.id, 10),
35580	})
35581	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35582}
35583
35584// Do executes the "dfareporting.inventoryItems.get" call.
35585// Exactly one of *InventoryItem or error will be non-nil. Any non-2xx
35586// status code is an error. Response headers are in either
35587// *InventoryItem.ServerResponse.Header or (if a response was returned
35588// at all) in error.(*googleapi.Error).Header. Use
35589// googleapi.IsNotModified to check whether the returned error was
35590// because http.StatusNotModified was returned.
35591func (c *InventoryItemsGetCall) Do(opts ...googleapi.CallOption) (*InventoryItem, error) {
35592	gensupport.SetOptions(c.urlParams_, opts...)
35593	res, err := c.doRequest("json")
35594	if res != nil && res.StatusCode == http.StatusNotModified {
35595		if res.Body != nil {
35596			res.Body.Close()
35597		}
35598		return nil, &googleapi.Error{
35599			Code:   res.StatusCode,
35600			Header: res.Header,
35601		}
35602	}
35603	if err != nil {
35604		return nil, err
35605	}
35606	defer googleapi.CloseBody(res)
35607	if err := googleapi.CheckResponse(res); err != nil {
35608		return nil, err
35609	}
35610	ret := &InventoryItem{
35611		ServerResponse: googleapi.ServerResponse{
35612			Header:         res.Header,
35613			HTTPStatusCode: res.StatusCode,
35614		},
35615	}
35616	target := &ret
35617	if err := gensupport.DecodeResponse(target, res); err != nil {
35618		return nil, err
35619	}
35620	return ret, nil
35621	// {
35622	//   "description": "Gets one inventory item by ID.",
35623	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}",
35624	//   "httpMethod": "GET",
35625	//   "id": "dfareporting.inventoryItems.get",
35626	//   "parameterOrder": [
35627	//     "profileId",
35628	//     "projectId",
35629	//     "id"
35630	//   ],
35631	//   "parameters": {
35632	//     "id": {
35633	//       "description": "Inventory item ID.",
35634	//       "format": "int64",
35635	//       "location": "path",
35636	//       "required": true,
35637	//       "type": "string"
35638	//     },
35639	//     "profileId": {
35640	//       "description": "User profile ID associated with this request.",
35641	//       "format": "int64",
35642	//       "location": "path",
35643	//       "required": true,
35644	//       "type": "string"
35645	//     },
35646	//     "projectId": {
35647	//       "description": "Project ID for order documents.",
35648	//       "format": "int64",
35649	//       "location": "path",
35650	//       "required": true,
35651	//       "type": "string"
35652	//     }
35653	//   },
35654	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}",
35655	//   "response": {
35656	//     "$ref": "InventoryItem"
35657	//   },
35658	//   "scopes": [
35659	//     "https://www.googleapis.com/auth/dfatrafficking"
35660	//   ]
35661	// }
35662
35663}
35664
35665// method id "dfareporting.inventoryItems.list":
35666
35667type InventoryItemsListCall struct {
35668	s            *Service
35669	profileId    int64
35670	projectId    int64
35671	urlParams_   gensupport.URLParams
35672	ifNoneMatch_ string
35673	ctx_         context.Context
35674	header_      http.Header
35675}
35676
35677// List: Retrieves a list of inventory items, possibly filtered. This
35678// method supports paging.
35679//
35680// - profileId: User profile ID associated with this request.
35681// - projectId: Project ID for order documents.
35682func (r *InventoryItemsService) List(profileId int64, projectId int64) *InventoryItemsListCall {
35683	c := &InventoryItemsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35684	c.profileId = profileId
35685	c.projectId = projectId
35686	return c
35687}
35688
35689// Ids sets the optional parameter "ids": Select only inventory items
35690// with these IDs.
35691func (c *InventoryItemsListCall) Ids(ids ...int64) *InventoryItemsListCall {
35692	var ids_ []string
35693	for _, v := range ids {
35694		ids_ = append(ids_, fmt.Sprint(v))
35695	}
35696	c.urlParams_.SetMulti("ids", ids_)
35697	return c
35698}
35699
35700// InPlan sets the optional parameter "inPlan": Select only inventory
35701// items that are in plan.
35702func (c *InventoryItemsListCall) InPlan(inPlan bool) *InventoryItemsListCall {
35703	c.urlParams_.Set("inPlan", fmt.Sprint(inPlan))
35704	return c
35705}
35706
35707// MaxResults sets the optional parameter "maxResults": Maximum number
35708// of results to return.
35709func (c *InventoryItemsListCall) MaxResults(maxResults int64) *InventoryItemsListCall {
35710	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
35711	return c
35712}
35713
35714// OrderId sets the optional parameter "orderId": Select only inventory
35715// items that belong to specified orders.
35716func (c *InventoryItemsListCall) OrderId(orderId ...int64) *InventoryItemsListCall {
35717	var orderId_ []string
35718	for _, v := range orderId {
35719		orderId_ = append(orderId_, fmt.Sprint(v))
35720	}
35721	c.urlParams_.SetMulti("orderId", orderId_)
35722	return c
35723}
35724
35725// PageToken sets the optional parameter "pageToken": Value of the
35726// nextPageToken from the previous result page.
35727func (c *InventoryItemsListCall) PageToken(pageToken string) *InventoryItemsListCall {
35728	c.urlParams_.Set("pageToken", pageToken)
35729	return c
35730}
35731
35732// SiteId sets the optional parameter "siteId": Select only inventory
35733// items that are associated with these sites.
35734func (c *InventoryItemsListCall) SiteId(siteId ...int64) *InventoryItemsListCall {
35735	var siteId_ []string
35736	for _, v := range siteId {
35737		siteId_ = append(siteId_, fmt.Sprint(v))
35738	}
35739	c.urlParams_.SetMulti("siteId", siteId_)
35740	return c
35741}
35742
35743// SortField sets the optional parameter "sortField": Field by which to
35744// sort the list.
35745//
35746// Possible values:
35747//   "ID" (default)
35748//   "NAME"
35749func (c *InventoryItemsListCall) SortField(sortField string) *InventoryItemsListCall {
35750	c.urlParams_.Set("sortField", sortField)
35751	return c
35752}
35753
35754// SortOrder sets the optional parameter "sortOrder": Order of sorted
35755// results.
35756//
35757// Possible values:
35758//   "ASCENDING" (default)
35759//   "DESCENDING"
35760func (c *InventoryItemsListCall) SortOrder(sortOrder string) *InventoryItemsListCall {
35761	c.urlParams_.Set("sortOrder", sortOrder)
35762	return c
35763}
35764
35765// Type sets the optional parameter "type": Select only inventory items
35766// with this type.
35767//
35768// Possible values:
35769//   "PLANNING_PLACEMENT_TYPE_REGULAR"
35770//   "PLANNING_PLACEMENT_TYPE_CREDIT"
35771func (c *InventoryItemsListCall) Type(type_ string) *InventoryItemsListCall {
35772	c.urlParams_.Set("type", type_)
35773	return c
35774}
35775
35776// Fields allows partial responses to be retrieved. See
35777// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35778// for more information.
35779func (c *InventoryItemsListCall) Fields(s ...googleapi.Field) *InventoryItemsListCall {
35780	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35781	return c
35782}
35783
35784// IfNoneMatch sets the optional parameter which makes the operation
35785// fail if the object's ETag matches the given value. This is useful for
35786// getting updates only after the object has changed since the last
35787// request. Use googleapi.IsNotModified to check whether the response
35788// error from Do is the result of In-None-Match.
35789func (c *InventoryItemsListCall) IfNoneMatch(entityTag string) *InventoryItemsListCall {
35790	c.ifNoneMatch_ = entityTag
35791	return c
35792}
35793
35794// Context sets the context to be used in this call's Do method. Any
35795// pending HTTP request will be aborted if the provided context is
35796// canceled.
35797func (c *InventoryItemsListCall) Context(ctx context.Context) *InventoryItemsListCall {
35798	c.ctx_ = ctx
35799	return c
35800}
35801
35802// Header returns an http.Header that can be modified by the caller to
35803// add HTTP headers to the request.
35804func (c *InventoryItemsListCall) Header() http.Header {
35805	if c.header_ == nil {
35806		c.header_ = make(http.Header)
35807	}
35808	return c.header_
35809}
35810
35811func (c *InventoryItemsListCall) doRequest(alt string) (*http.Response, error) {
35812	reqHeaders := make(http.Header)
35813	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35814	for k, v := range c.header_ {
35815		reqHeaders[k] = v
35816	}
35817	reqHeaders.Set("User-Agent", c.s.userAgent())
35818	if c.ifNoneMatch_ != "" {
35819		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35820	}
35821	var body io.Reader = nil
35822	c.urlParams_.Set("alt", alt)
35823	c.urlParams_.Set("prettyPrint", "false")
35824	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/inventoryItems")
35825	urls += "?" + c.urlParams_.Encode()
35826	req, err := http.NewRequest("GET", urls, body)
35827	if err != nil {
35828		return nil, err
35829	}
35830	req.Header = reqHeaders
35831	googleapi.Expand(req.URL, map[string]string{
35832		"profileId": strconv.FormatInt(c.profileId, 10),
35833		"projectId": strconv.FormatInt(c.projectId, 10),
35834	})
35835	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35836}
35837
35838// Do executes the "dfareporting.inventoryItems.list" call.
35839// Exactly one of *InventoryItemsListResponse or error will be non-nil.
35840// Any non-2xx status code is an error. Response headers are in either
35841// *InventoryItemsListResponse.ServerResponse.Header or (if a response
35842// was returned at all) in error.(*googleapi.Error).Header. Use
35843// googleapi.IsNotModified to check whether the returned error was
35844// because http.StatusNotModified was returned.
35845func (c *InventoryItemsListCall) Do(opts ...googleapi.CallOption) (*InventoryItemsListResponse, error) {
35846	gensupport.SetOptions(c.urlParams_, opts...)
35847	res, err := c.doRequest("json")
35848	if res != nil && res.StatusCode == http.StatusNotModified {
35849		if res.Body != nil {
35850			res.Body.Close()
35851		}
35852		return nil, &googleapi.Error{
35853			Code:   res.StatusCode,
35854			Header: res.Header,
35855		}
35856	}
35857	if err != nil {
35858		return nil, err
35859	}
35860	defer googleapi.CloseBody(res)
35861	if err := googleapi.CheckResponse(res); err != nil {
35862		return nil, err
35863	}
35864	ret := &InventoryItemsListResponse{
35865		ServerResponse: googleapi.ServerResponse{
35866			Header:         res.Header,
35867			HTTPStatusCode: res.StatusCode,
35868		},
35869	}
35870	target := &ret
35871	if err := gensupport.DecodeResponse(target, res); err != nil {
35872		return nil, err
35873	}
35874	return ret, nil
35875	// {
35876	//   "description": "Retrieves a list of inventory items, possibly filtered. This method supports paging.",
35877	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/inventoryItems",
35878	//   "httpMethod": "GET",
35879	//   "id": "dfareporting.inventoryItems.list",
35880	//   "parameterOrder": [
35881	//     "profileId",
35882	//     "projectId"
35883	//   ],
35884	//   "parameters": {
35885	//     "ids": {
35886	//       "description": "Select only inventory items with these IDs.",
35887	//       "format": "int64",
35888	//       "location": "query",
35889	//       "repeated": true,
35890	//       "type": "string"
35891	//     },
35892	//     "inPlan": {
35893	//       "description": "Select only inventory items that are in plan.",
35894	//       "location": "query",
35895	//       "type": "boolean"
35896	//     },
35897	//     "maxResults": {
35898	//       "default": "1000",
35899	//       "description": "Maximum number of results to return.",
35900	//       "format": "int32",
35901	//       "location": "query",
35902	//       "maximum": "1000",
35903	//       "minimum": "0",
35904	//       "type": "integer"
35905	//     },
35906	//     "orderId": {
35907	//       "description": "Select only inventory items that belong to specified orders.",
35908	//       "format": "int64",
35909	//       "location": "query",
35910	//       "repeated": true,
35911	//       "type": "string"
35912	//     },
35913	//     "pageToken": {
35914	//       "description": "Value of the nextPageToken from the previous result page.",
35915	//       "location": "query",
35916	//       "type": "string"
35917	//     },
35918	//     "profileId": {
35919	//       "description": "User profile ID associated with this request.",
35920	//       "format": "int64",
35921	//       "location": "path",
35922	//       "required": true,
35923	//       "type": "string"
35924	//     },
35925	//     "projectId": {
35926	//       "description": "Project ID for order documents.",
35927	//       "format": "int64",
35928	//       "location": "path",
35929	//       "required": true,
35930	//       "type": "string"
35931	//     },
35932	//     "siteId": {
35933	//       "description": "Select only inventory items that are associated with these sites.",
35934	//       "format": "int64",
35935	//       "location": "query",
35936	//       "repeated": true,
35937	//       "type": "string"
35938	//     },
35939	//     "sortField": {
35940	//       "default": "ID",
35941	//       "description": "Field by which to sort the list.",
35942	//       "enum": [
35943	//         "ID",
35944	//         "NAME"
35945	//       ],
35946	//       "enumDescriptions": [
35947	//         "",
35948	//         ""
35949	//       ],
35950	//       "location": "query",
35951	//       "type": "string"
35952	//     },
35953	//     "sortOrder": {
35954	//       "default": "ASCENDING",
35955	//       "description": "Order of sorted results.",
35956	//       "enum": [
35957	//         "ASCENDING",
35958	//         "DESCENDING"
35959	//       ],
35960	//       "enumDescriptions": [
35961	//         "",
35962	//         ""
35963	//       ],
35964	//       "location": "query",
35965	//       "type": "string"
35966	//     },
35967	//     "type": {
35968	//       "description": "Select only inventory items with this type.",
35969	//       "enum": [
35970	//         "PLANNING_PLACEMENT_TYPE_REGULAR",
35971	//         "PLANNING_PLACEMENT_TYPE_CREDIT"
35972	//       ],
35973	//       "enumDescriptions": [
35974	//         "",
35975	//         ""
35976	//       ],
35977	//       "location": "query",
35978	//       "type": "string"
35979	//     }
35980	//   },
35981	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/inventoryItems",
35982	//   "response": {
35983	//     "$ref": "InventoryItemsListResponse"
35984	//   },
35985	//   "scopes": [
35986	//     "https://www.googleapis.com/auth/dfatrafficking"
35987	//   ]
35988	// }
35989
35990}
35991
35992// Pages invokes f for each page of results.
35993// A non-nil error returned from f will halt the iteration.
35994// The provided context supersedes any context provided to the Context method.
35995func (c *InventoryItemsListCall) Pages(ctx context.Context, f func(*InventoryItemsListResponse) error) error {
35996	c.ctx_ = ctx
35997	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
35998	for {
35999		x, err := c.Do()
36000		if err != nil {
36001			return err
36002		}
36003		if err := f(x); err != nil {
36004			return err
36005		}
36006		if x.NextPageToken == "" {
36007			return nil
36008		}
36009		c.PageToken(x.NextPageToken)
36010	}
36011}
36012
36013// method id "dfareporting.languages.list":
36014
36015type LanguagesListCall struct {
36016	s            *Service
36017	profileId    int64
36018	urlParams_   gensupport.URLParams
36019	ifNoneMatch_ string
36020	ctx_         context.Context
36021	header_      http.Header
36022}
36023
36024// List: Retrieves a list of languages.
36025//
36026// - profileId: User profile ID associated with this request.
36027func (r *LanguagesService) List(profileId int64) *LanguagesListCall {
36028	c := &LanguagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36029	c.profileId = profileId
36030	return c
36031}
36032
36033// Fields allows partial responses to be retrieved. See
36034// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36035// for more information.
36036func (c *LanguagesListCall) Fields(s ...googleapi.Field) *LanguagesListCall {
36037	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36038	return c
36039}
36040
36041// IfNoneMatch sets the optional parameter which makes the operation
36042// fail if the object's ETag matches the given value. This is useful for
36043// getting updates only after the object has changed since the last
36044// request. Use googleapi.IsNotModified to check whether the response
36045// error from Do is the result of In-None-Match.
36046func (c *LanguagesListCall) IfNoneMatch(entityTag string) *LanguagesListCall {
36047	c.ifNoneMatch_ = entityTag
36048	return c
36049}
36050
36051// Context sets the context to be used in this call's Do method. Any
36052// pending HTTP request will be aborted if the provided context is
36053// canceled.
36054func (c *LanguagesListCall) Context(ctx context.Context) *LanguagesListCall {
36055	c.ctx_ = ctx
36056	return c
36057}
36058
36059// Header returns an http.Header that can be modified by the caller to
36060// add HTTP headers to the request.
36061func (c *LanguagesListCall) Header() http.Header {
36062	if c.header_ == nil {
36063		c.header_ = make(http.Header)
36064	}
36065	return c.header_
36066}
36067
36068func (c *LanguagesListCall) doRequest(alt string) (*http.Response, error) {
36069	reqHeaders := make(http.Header)
36070	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36071	for k, v := range c.header_ {
36072		reqHeaders[k] = v
36073	}
36074	reqHeaders.Set("User-Agent", c.s.userAgent())
36075	if c.ifNoneMatch_ != "" {
36076		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36077	}
36078	var body io.Reader = nil
36079	c.urlParams_.Set("alt", alt)
36080	c.urlParams_.Set("prettyPrint", "false")
36081	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/languages")
36082	urls += "?" + c.urlParams_.Encode()
36083	req, err := http.NewRequest("GET", urls, body)
36084	if err != nil {
36085		return nil, err
36086	}
36087	req.Header = reqHeaders
36088	googleapi.Expand(req.URL, map[string]string{
36089		"profileId": strconv.FormatInt(c.profileId, 10),
36090	})
36091	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36092}
36093
36094// Do executes the "dfareporting.languages.list" call.
36095// Exactly one of *LanguagesListResponse or error will be non-nil. Any
36096// non-2xx status code is an error. Response headers are in either
36097// *LanguagesListResponse.ServerResponse.Header or (if a response was
36098// returned at all) in error.(*googleapi.Error).Header. Use
36099// googleapi.IsNotModified to check whether the returned error was
36100// because http.StatusNotModified was returned.
36101func (c *LanguagesListCall) Do(opts ...googleapi.CallOption) (*LanguagesListResponse, error) {
36102	gensupport.SetOptions(c.urlParams_, opts...)
36103	res, err := c.doRequest("json")
36104	if res != nil && res.StatusCode == http.StatusNotModified {
36105		if res.Body != nil {
36106			res.Body.Close()
36107		}
36108		return nil, &googleapi.Error{
36109			Code:   res.StatusCode,
36110			Header: res.Header,
36111		}
36112	}
36113	if err != nil {
36114		return nil, err
36115	}
36116	defer googleapi.CloseBody(res)
36117	if err := googleapi.CheckResponse(res); err != nil {
36118		return nil, err
36119	}
36120	ret := &LanguagesListResponse{
36121		ServerResponse: googleapi.ServerResponse{
36122			Header:         res.Header,
36123			HTTPStatusCode: res.StatusCode,
36124		},
36125	}
36126	target := &ret
36127	if err := gensupport.DecodeResponse(target, res); err != nil {
36128		return nil, err
36129	}
36130	return ret, nil
36131	// {
36132	//   "description": "Retrieves a list of languages.",
36133	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/languages",
36134	//   "httpMethod": "GET",
36135	//   "id": "dfareporting.languages.list",
36136	//   "parameterOrder": [
36137	//     "profileId"
36138	//   ],
36139	//   "parameters": {
36140	//     "profileId": {
36141	//       "description": "User profile ID associated with this request.",
36142	//       "format": "int64",
36143	//       "location": "path",
36144	//       "required": true,
36145	//       "type": "string"
36146	//     }
36147	//   },
36148	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/languages",
36149	//   "response": {
36150	//     "$ref": "LanguagesListResponse"
36151	//   },
36152	//   "scopes": [
36153	//     "https://www.googleapis.com/auth/dfatrafficking"
36154	//   ]
36155	// }
36156
36157}
36158
36159// method id "dfareporting.metros.list":
36160
36161type MetrosListCall struct {
36162	s            *Service
36163	profileId    int64
36164	urlParams_   gensupport.URLParams
36165	ifNoneMatch_ string
36166	ctx_         context.Context
36167	header_      http.Header
36168}
36169
36170// List: Retrieves a list of metros.
36171//
36172// - profileId: User profile ID associated with this request.
36173func (r *MetrosService) List(profileId int64) *MetrosListCall {
36174	c := &MetrosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36175	c.profileId = profileId
36176	return c
36177}
36178
36179// Fields allows partial responses to be retrieved. See
36180// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36181// for more information.
36182func (c *MetrosListCall) Fields(s ...googleapi.Field) *MetrosListCall {
36183	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36184	return c
36185}
36186
36187// IfNoneMatch sets the optional parameter which makes the operation
36188// fail if the object's ETag matches the given value. This is useful for
36189// getting updates only after the object has changed since the last
36190// request. Use googleapi.IsNotModified to check whether the response
36191// error from Do is the result of In-None-Match.
36192func (c *MetrosListCall) IfNoneMatch(entityTag string) *MetrosListCall {
36193	c.ifNoneMatch_ = entityTag
36194	return c
36195}
36196
36197// Context sets the context to be used in this call's Do method. Any
36198// pending HTTP request will be aborted if the provided context is
36199// canceled.
36200func (c *MetrosListCall) Context(ctx context.Context) *MetrosListCall {
36201	c.ctx_ = ctx
36202	return c
36203}
36204
36205// Header returns an http.Header that can be modified by the caller to
36206// add HTTP headers to the request.
36207func (c *MetrosListCall) Header() http.Header {
36208	if c.header_ == nil {
36209		c.header_ = make(http.Header)
36210	}
36211	return c.header_
36212}
36213
36214func (c *MetrosListCall) doRequest(alt string) (*http.Response, error) {
36215	reqHeaders := make(http.Header)
36216	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36217	for k, v := range c.header_ {
36218		reqHeaders[k] = v
36219	}
36220	reqHeaders.Set("User-Agent", c.s.userAgent())
36221	if c.ifNoneMatch_ != "" {
36222		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36223	}
36224	var body io.Reader = nil
36225	c.urlParams_.Set("alt", alt)
36226	c.urlParams_.Set("prettyPrint", "false")
36227	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/metros")
36228	urls += "?" + c.urlParams_.Encode()
36229	req, err := http.NewRequest("GET", urls, body)
36230	if err != nil {
36231		return nil, err
36232	}
36233	req.Header = reqHeaders
36234	googleapi.Expand(req.URL, map[string]string{
36235		"profileId": strconv.FormatInt(c.profileId, 10),
36236	})
36237	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36238}
36239
36240// Do executes the "dfareporting.metros.list" call.
36241// Exactly one of *MetrosListResponse or error will be non-nil. Any
36242// non-2xx status code is an error. Response headers are in either
36243// *MetrosListResponse.ServerResponse.Header or (if a response was
36244// returned at all) in error.(*googleapi.Error).Header. Use
36245// googleapi.IsNotModified to check whether the returned error was
36246// because http.StatusNotModified was returned.
36247func (c *MetrosListCall) Do(opts ...googleapi.CallOption) (*MetrosListResponse, error) {
36248	gensupport.SetOptions(c.urlParams_, opts...)
36249	res, err := c.doRequest("json")
36250	if res != nil && res.StatusCode == http.StatusNotModified {
36251		if res.Body != nil {
36252			res.Body.Close()
36253		}
36254		return nil, &googleapi.Error{
36255			Code:   res.StatusCode,
36256			Header: res.Header,
36257		}
36258	}
36259	if err != nil {
36260		return nil, err
36261	}
36262	defer googleapi.CloseBody(res)
36263	if err := googleapi.CheckResponse(res); err != nil {
36264		return nil, err
36265	}
36266	ret := &MetrosListResponse{
36267		ServerResponse: googleapi.ServerResponse{
36268			Header:         res.Header,
36269			HTTPStatusCode: res.StatusCode,
36270		},
36271	}
36272	target := &ret
36273	if err := gensupport.DecodeResponse(target, res); err != nil {
36274		return nil, err
36275	}
36276	return ret, nil
36277	// {
36278	//   "description": "Retrieves a list of metros.",
36279	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/metros",
36280	//   "httpMethod": "GET",
36281	//   "id": "dfareporting.metros.list",
36282	//   "parameterOrder": [
36283	//     "profileId"
36284	//   ],
36285	//   "parameters": {
36286	//     "profileId": {
36287	//       "description": "User profile ID associated with this request.",
36288	//       "format": "int64",
36289	//       "location": "path",
36290	//       "required": true,
36291	//       "type": "string"
36292	//     }
36293	//   },
36294	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/metros",
36295	//   "response": {
36296	//     "$ref": "MetrosListResponse"
36297	//   },
36298	//   "scopes": [
36299	//     "https://www.googleapis.com/auth/dfatrafficking"
36300	//   ]
36301	// }
36302
36303}
36304
36305// method id "dfareporting.mobileApps.get":
36306
36307type MobileAppsGetCall struct {
36308	s            *Service
36309	profileId    int64
36310	id           string
36311	urlParams_   gensupport.URLParams
36312	ifNoneMatch_ string
36313	ctx_         context.Context
36314	header_      http.Header
36315}
36316
36317// Get: Gets one mobile app by ID.
36318//
36319// - id: Mobile app ID.
36320// - profileId: User profile ID associated with this request.
36321func (r *MobileAppsService) Get(profileId int64, id string) *MobileAppsGetCall {
36322	c := &MobileAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36323	c.profileId = profileId
36324	c.id = id
36325	return c
36326}
36327
36328// Fields allows partial responses to be retrieved. See
36329// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36330// for more information.
36331func (c *MobileAppsGetCall) Fields(s ...googleapi.Field) *MobileAppsGetCall {
36332	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36333	return c
36334}
36335
36336// IfNoneMatch sets the optional parameter which makes the operation
36337// fail if the object's ETag matches the given value. This is useful for
36338// getting updates only after the object has changed since the last
36339// request. Use googleapi.IsNotModified to check whether the response
36340// error from Do is the result of In-None-Match.
36341func (c *MobileAppsGetCall) IfNoneMatch(entityTag string) *MobileAppsGetCall {
36342	c.ifNoneMatch_ = entityTag
36343	return c
36344}
36345
36346// Context sets the context to be used in this call's Do method. Any
36347// pending HTTP request will be aborted if the provided context is
36348// canceled.
36349func (c *MobileAppsGetCall) Context(ctx context.Context) *MobileAppsGetCall {
36350	c.ctx_ = ctx
36351	return c
36352}
36353
36354// Header returns an http.Header that can be modified by the caller to
36355// add HTTP headers to the request.
36356func (c *MobileAppsGetCall) Header() http.Header {
36357	if c.header_ == nil {
36358		c.header_ = make(http.Header)
36359	}
36360	return c.header_
36361}
36362
36363func (c *MobileAppsGetCall) doRequest(alt string) (*http.Response, error) {
36364	reqHeaders := make(http.Header)
36365	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36366	for k, v := range c.header_ {
36367		reqHeaders[k] = v
36368	}
36369	reqHeaders.Set("User-Agent", c.s.userAgent())
36370	if c.ifNoneMatch_ != "" {
36371		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36372	}
36373	var body io.Reader = nil
36374	c.urlParams_.Set("alt", alt)
36375	c.urlParams_.Set("prettyPrint", "false")
36376	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/mobileApps/{id}")
36377	urls += "?" + c.urlParams_.Encode()
36378	req, err := http.NewRequest("GET", urls, body)
36379	if err != nil {
36380		return nil, err
36381	}
36382	req.Header = reqHeaders
36383	googleapi.Expand(req.URL, map[string]string{
36384		"profileId": strconv.FormatInt(c.profileId, 10),
36385		"id":        c.id,
36386	})
36387	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36388}
36389
36390// Do executes the "dfareporting.mobileApps.get" call.
36391// Exactly one of *MobileApp or error will be non-nil. Any non-2xx
36392// status code is an error. Response headers are in either
36393// *MobileApp.ServerResponse.Header or (if a response was returned at
36394// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
36395// to check whether the returned error was because
36396// http.StatusNotModified was returned.
36397func (c *MobileAppsGetCall) Do(opts ...googleapi.CallOption) (*MobileApp, error) {
36398	gensupport.SetOptions(c.urlParams_, opts...)
36399	res, err := c.doRequest("json")
36400	if res != nil && res.StatusCode == http.StatusNotModified {
36401		if res.Body != nil {
36402			res.Body.Close()
36403		}
36404		return nil, &googleapi.Error{
36405			Code:   res.StatusCode,
36406			Header: res.Header,
36407		}
36408	}
36409	if err != nil {
36410		return nil, err
36411	}
36412	defer googleapi.CloseBody(res)
36413	if err := googleapi.CheckResponse(res); err != nil {
36414		return nil, err
36415	}
36416	ret := &MobileApp{
36417		ServerResponse: googleapi.ServerResponse{
36418			Header:         res.Header,
36419			HTTPStatusCode: res.StatusCode,
36420		},
36421	}
36422	target := &ret
36423	if err := gensupport.DecodeResponse(target, res); err != nil {
36424		return nil, err
36425	}
36426	return ret, nil
36427	// {
36428	//   "description": "Gets one mobile app by ID.",
36429	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/mobileApps/{id}",
36430	//   "httpMethod": "GET",
36431	//   "id": "dfareporting.mobileApps.get",
36432	//   "parameterOrder": [
36433	//     "profileId",
36434	//     "id"
36435	//   ],
36436	//   "parameters": {
36437	//     "id": {
36438	//       "description": "Mobile app ID.",
36439	//       "location": "path",
36440	//       "required": true,
36441	//       "type": "string"
36442	//     },
36443	//     "profileId": {
36444	//       "description": "User profile ID associated with this request.",
36445	//       "format": "int64",
36446	//       "location": "path",
36447	//       "required": true,
36448	//       "type": "string"
36449	//     }
36450	//   },
36451	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/mobileApps/{id}",
36452	//   "response": {
36453	//     "$ref": "MobileApp"
36454	//   },
36455	//   "scopes": [
36456	//     "https://www.googleapis.com/auth/dfatrafficking"
36457	//   ]
36458	// }
36459
36460}
36461
36462// method id "dfareporting.mobileApps.list":
36463
36464type MobileAppsListCall struct {
36465	s            *Service
36466	profileId    int64
36467	urlParams_   gensupport.URLParams
36468	ifNoneMatch_ string
36469	ctx_         context.Context
36470	header_      http.Header
36471}
36472
36473// List: Retrieves list of available mobile apps.
36474//
36475// - profileId: User profile ID associated with this request.
36476func (r *MobileAppsService) List(profileId int64) *MobileAppsListCall {
36477	c := &MobileAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36478	c.profileId = profileId
36479	return c
36480}
36481
36482// Directories sets the optional parameter "directories": Select only
36483// apps from these directories.
36484//
36485// Possible values:
36486//   "UNKNOWN"
36487//   "APPLE_APP_STORE"
36488//   "GOOGLE_PLAY_STORE"
36489func (c *MobileAppsListCall) Directories(directories ...string) *MobileAppsListCall {
36490	c.urlParams_.SetMulti("directories", append([]string{}, directories...))
36491	return c
36492}
36493
36494// Ids sets the optional parameter "ids": Select only apps with these
36495// IDs.
36496func (c *MobileAppsListCall) Ids(ids ...string) *MobileAppsListCall {
36497	c.urlParams_.SetMulti("ids", append([]string{}, ids...))
36498	return c
36499}
36500
36501// MaxResults sets the optional parameter "maxResults": Maximum number
36502// of results to return.
36503func (c *MobileAppsListCall) MaxResults(maxResults int64) *MobileAppsListCall {
36504	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
36505	return c
36506}
36507
36508// PageToken sets the optional parameter "pageToken": Value of the
36509// nextPageToken from the previous result page.
36510func (c *MobileAppsListCall) PageToken(pageToken string) *MobileAppsListCall {
36511	c.urlParams_.Set("pageToken", pageToken)
36512	return c
36513}
36514
36515// SearchString sets the optional parameter "searchString": Allows
36516// searching for objects by name or ID. Wildcards (*) are allowed. For
36517// example, "app*2015" will return objects with names like "app Jan
36518// 2018", "app Jan 2018", or simply "app 2018". Most of the searches
36519// also add wildcards implicitly at the start and the end of the search
36520// string. For example, a search string of "app" will match objects with
36521// name "my app", "app 2018", or simply "app".
36522func (c *MobileAppsListCall) SearchString(searchString string) *MobileAppsListCall {
36523	c.urlParams_.Set("searchString", searchString)
36524	return c
36525}
36526
36527// Fields allows partial responses to be retrieved. See
36528// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36529// for more information.
36530func (c *MobileAppsListCall) Fields(s ...googleapi.Field) *MobileAppsListCall {
36531	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36532	return c
36533}
36534
36535// IfNoneMatch sets the optional parameter which makes the operation
36536// fail if the object's ETag matches the given value. This is useful for
36537// getting updates only after the object has changed since the last
36538// request. Use googleapi.IsNotModified to check whether the response
36539// error from Do is the result of In-None-Match.
36540func (c *MobileAppsListCall) IfNoneMatch(entityTag string) *MobileAppsListCall {
36541	c.ifNoneMatch_ = entityTag
36542	return c
36543}
36544
36545// Context sets the context to be used in this call's Do method. Any
36546// pending HTTP request will be aborted if the provided context is
36547// canceled.
36548func (c *MobileAppsListCall) Context(ctx context.Context) *MobileAppsListCall {
36549	c.ctx_ = ctx
36550	return c
36551}
36552
36553// Header returns an http.Header that can be modified by the caller to
36554// add HTTP headers to the request.
36555func (c *MobileAppsListCall) Header() http.Header {
36556	if c.header_ == nil {
36557		c.header_ = make(http.Header)
36558	}
36559	return c.header_
36560}
36561
36562func (c *MobileAppsListCall) doRequest(alt string) (*http.Response, error) {
36563	reqHeaders := make(http.Header)
36564	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36565	for k, v := range c.header_ {
36566		reqHeaders[k] = v
36567	}
36568	reqHeaders.Set("User-Agent", c.s.userAgent())
36569	if c.ifNoneMatch_ != "" {
36570		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36571	}
36572	var body io.Reader = nil
36573	c.urlParams_.Set("alt", alt)
36574	c.urlParams_.Set("prettyPrint", "false")
36575	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/mobileApps")
36576	urls += "?" + c.urlParams_.Encode()
36577	req, err := http.NewRequest("GET", urls, body)
36578	if err != nil {
36579		return nil, err
36580	}
36581	req.Header = reqHeaders
36582	googleapi.Expand(req.URL, map[string]string{
36583		"profileId": strconv.FormatInt(c.profileId, 10),
36584	})
36585	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36586}
36587
36588// Do executes the "dfareporting.mobileApps.list" call.
36589// Exactly one of *MobileAppsListResponse or error will be non-nil. Any
36590// non-2xx status code is an error. Response headers are in either
36591// *MobileAppsListResponse.ServerResponse.Header or (if a response was
36592// returned at all) in error.(*googleapi.Error).Header. Use
36593// googleapi.IsNotModified to check whether the returned error was
36594// because http.StatusNotModified was returned.
36595func (c *MobileAppsListCall) Do(opts ...googleapi.CallOption) (*MobileAppsListResponse, error) {
36596	gensupport.SetOptions(c.urlParams_, opts...)
36597	res, err := c.doRequest("json")
36598	if res != nil && res.StatusCode == http.StatusNotModified {
36599		if res.Body != nil {
36600			res.Body.Close()
36601		}
36602		return nil, &googleapi.Error{
36603			Code:   res.StatusCode,
36604			Header: res.Header,
36605		}
36606	}
36607	if err != nil {
36608		return nil, err
36609	}
36610	defer googleapi.CloseBody(res)
36611	if err := googleapi.CheckResponse(res); err != nil {
36612		return nil, err
36613	}
36614	ret := &MobileAppsListResponse{
36615		ServerResponse: googleapi.ServerResponse{
36616			Header:         res.Header,
36617			HTTPStatusCode: res.StatusCode,
36618		},
36619	}
36620	target := &ret
36621	if err := gensupport.DecodeResponse(target, res); err != nil {
36622		return nil, err
36623	}
36624	return ret, nil
36625	// {
36626	//   "description": "Retrieves list of available mobile apps.",
36627	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/mobileApps",
36628	//   "httpMethod": "GET",
36629	//   "id": "dfareporting.mobileApps.list",
36630	//   "parameterOrder": [
36631	//     "profileId"
36632	//   ],
36633	//   "parameters": {
36634	//     "directories": {
36635	//       "description": "Select only apps from these directories.",
36636	//       "enum": [
36637	//         "UNKNOWN",
36638	//         "APPLE_APP_STORE",
36639	//         "GOOGLE_PLAY_STORE"
36640	//       ],
36641	//       "enumDescriptions": [
36642	//         "",
36643	//         "",
36644	//         ""
36645	//       ],
36646	//       "location": "query",
36647	//       "repeated": true,
36648	//       "type": "string"
36649	//     },
36650	//     "ids": {
36651	//       "description": "Select only apps with these IDs.",
36652	//       "location": "query",
36653	//       "repeated": true,
36654	//       "type": "string"
36655	//     },
36656	//     "maxResults": {
36657	//       "default": "1000",
36658	//       "description": "Maximum number of results to return.",
36659	//       "format": "int32",
36660	//       "location": "query",
36661	//       "maximum": "1000",
36662	//       "minimum": "0",
36663	//       "type": "integer"
36664	//     },
36665	//     "pageToken": {
36666	//       "description": "Value of the nextPageToken from the previous result page.",
36667	//       "location": "query",
36668	//       "type": "string"
36669	//     },
36670	//     "profileId": {
36671	//       "description": "User profile ID associated with this request.",
36672	//       "format": "int64",
36673	//       "location": "path",
36674	//       "required": true,
36675	//       "type": "string"
36676	//     },
36677	//     "searchString": {
36678	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"app*2015\" will return objects with names like \"app Jan 2018\", \"app Jan 2018\", or simply \"app 2018\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"app\" will match objects with name \"my app\", \"app 2018\", or simply \"app\".",
36679	//       "location": "query",
36680	//       "type": "string"
36681	//     }
36682	//   },
36683	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/mobileApps",
36684	//   "response": {
36685	//     "$ref": "MobileAppsListResponse"
36686	//   },
36687	//   "scopes": [
36688	//     "https://www.googleapis.com/auth/dfatrafficking"
36689	//   ]
36690	// }
36691
36692}
36693
36694// Pages invokes f for each page of results.
36695// A non-nil error returned from f will halt the iteration.
36696// The provided context supersedes any context provided to the Context method.
36697func (c *MobileAppsListCall) Pages(ctx context.Context, f func(*MobileAppsListResponse) error) error {
36698	c.ctx_ = ctx
36699	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
36700	for {
36701		x, err := c.Do()
36702		if err != nil {
36703			return err
36704		}
36705		if err := f(x); err != nil {
36706			return err
36707		}
36708		if x.NextPageToken == "" {
36709			return nil
36710		}
36711		c.PageToken(x.NextPageToken)
36712	}
36713}
36714
36715// method id "dfareporting.mobileCarriers.get":
36716
36717type MobileCarriersGetCall struct {
36718	s            *Service
36719	profileId    int64
36720	id           int64
36721	urlParams_   gensupport.URLParams
36722	ifNoneMatch_ string
36723	ctx_         context.Context
36724	header_      http.Header
36725}
36726
36727// Get: Gets one mobile carrier by ID.
36728//
36729// - id: Mobile carrier ID.
36730// - profileId: User profile ID associated with this request.
36731func (r *MobileCarriersService) Get(profileId int64, id int64) *MobileCarriersGetCall {
36732	c := &MobileCarriersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36733	c.profileId = profileId
36734	c.id = id
36735	return c
36736}
36737
36738// Fields allows partial responses to be retrieved. See
36739// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36740// for more information.
36741func (c *MobileCarriersGetCall) Fields(s ...googleapi.Field) *MobileCarriersGetCall {
36742	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36743	return c
36744}
36745
36746// IfNoneMatch sets the optional parameter which makes the operation
36747// fail if the object's ETag matches the given value. This is useful for
36748// getting updates only after the object has changed since the last
36749// request. Use googleapi.IsNotModified to check whether the response
36750// error from Do is the result of In-None-Match.
36751func (c *MobileCarriersGetCall) IfNoneMatch(entityTag string) *MobileCarriersGetCall {
36752	c.ifNoneMatch_ = entityTag
36753	return c
36754}
36755
36756// Context sets the context to be used in this call's Do method. Any
36757// pending HTTP request will be aborted if the provided context is
36758// canceled.
36759func (c *MobileCarriersGetCall) Context(ctx context.Context) *MobileCarriersGetCall {
36760	c.ctx_ = ctx
36761	return c
36762}
36763
36764// Header returns an http.Header that can be modified by the caller to
36765// add HTTP headers to the request.
36766func (c *MobileCarriersGetCall) Header() http.Header {
36767	if c.header_ == nil {
36768		c.header_ = make(http.Header)
36769	}
36770	return c.header_
36771}
36772
36773func (c *MobileCarriersGetCall) doRequest(alt string) (*http.Response, error) {
36774	reqHeaders := make(http.Header)
36775	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36776	for k, v := range c.header_ {
36777		reqHeaders[k] = v
36778	}
36779	reqHeaders.Set("User-Agent", c.s.userAgent())
36780	if c.ifNoneMatch_ != "" {
36781		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36782	}
36783	var body io.Reader = nil
36784	c.urlParams_.Set("alt", alt)
36785	c.urlParams_.Set("prettyPrint", "false")
36786	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/mobileCarriers/{id}")
36787	urls += "?" + c.urlParams_.Encode()
36788	req, err := http.NewRequest("GET", urls, body)
36789	if err != nil {
36790		return nil, err
36791	}
36792	req.Header = reqHeaders
36793	googleapi.Expand(req.URL, map[string]string{
36794		"profileId": strconv.FormatInt(c.profileId, 10),
36795		"id":        strconv.FormatInt(c.id, 10),
36796	})
36797	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36798}
36799
36800// Do executes the "dfareporting.mobileCarriers.get" call.
36801// Exactly one of *MobileCarrier or error will be non-nil. Any non-2xx
36802// status code is an error. Response headers are in either
36803// *MobileCarrier.ServerResponse.Header or (if a response was returned
36804// at all) in error.(*googleapi.Error).Header. Use
36805// googleapi.IsNotModified to check whether the returned error was
36806// because http.StatusNotModified was returned.
36807func (c *MobileCarriersGetCall) Do(opts ...googleapi.CallOption) (*MobileCarrier, error) {
36808	gensupport.SetOptions(c.urlParams_, opts...)
36809	res, err := c.doRequest("json")
36810	if res != nil && res.StatusCode == http.StatusNotModified {
36811		if res.Body != nil {
36812			res.Body.Close()
36813		}
36814		return nil, &googleapi.Error{
36815			Code:   res.StatusCode,
36816			Header: res.Header,
36817		}
36818	}
36819	if err != nil {
36820		return nil, err
36821	}
36822	defer googleapi.CloseBody(res)
36823	if err := googleapi.CheckResponse(res); err != nil {
36824		return nil, err
36825	}
36826	ret := &MobileCarrier{
36827		ServerResponse: googleapi.ServerResponse{
36828			Header:         res.Header,
36829			HTTPStatusCode: res.StatusCode,
36830		},
36831	}
36832	target := &ret
36833	if err := gensupport.DecodeResponse(target, res); err != nil {
36834		return nil, err
36835	}
36836	return ret, nil
36837	// {
36838	//   "description": "Gets one mobile carrier by ID.",
36839	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/mobileCarriers/{id}",
36840	//   "httpMethod": "GET",
36841	//   "id": "dfareporting.mobileCarriers.get",
36842	//   "parameterOrder": [
36843	//     "profileId",
36844	//     "id"
36845	//   ],
36846	//   "parameters": {
36847	//     "id": {
36848	//       "description": "Mobile carrier ID.",
36849	//       "format": "int64",
36850	//       "location": "path",
36851	//       "required": true,
36852	//       "type": "string"
36853	//     },
36854	//     "profileId": {
36855	//       "description": "User profile ID associated with this request.",
36856	//       "format": "int64",
36857	//       "location": "path",
36858	//       "required": true,
36859	//       "type": "string"
36860	//     }
36861	//   },
36862	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/mobileCarriers/{id}",
36863	//   "response": {
36864	//     "$ref": "MobileCarrier"
36865	//   },
36866	//   "scopes": [
36867	//     "https://www.googleapis.com/auth/dfatrafficking"
36868	//   ]
36869	// }
36870
36871}
36872
36873// method id "dfareporting.mobileCarriers.list":
36874
36875type MobileCarriersListCall struct {
36876	s            *Service
36877	profileId    int64
36878	urlParams_   gensupport.URLParams
36879	ifNoneMatch_ string
36880	ctx_         context.Context
36881	header_      http.Header
36882}
36883
36884// List: Retrieves a list of mobile carriers.
36885//
36886// - profileId: User profile ID associated with this request.
36887func (r *MobileCarriersService) List(profileId int64) *MobileCarriersListCall {
36888	c := &MobileCarriersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36889	c.profileId = profileId
36890	return c
36891}
36892
36893// Fields allows partial responses to be retrieved. See
36894// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36895// for more information.
36896func (c *MobileCarriersListCall) Fields(s ...googleapi.Field) *MobileCarriersListCall {
36897	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36898	return c
36899}
36900
36901// IfNoneMatch sets the optional parameter which makes the operation
36902// fail if the object's ETag matches the given value. This is useful for
36903// getting updates only after the object has changed since the last
36904// request. Use googleapi.IsNotModified to check whether the response
36905// error from Do is the result of In-None-Match.
36906func (c *MobileCarriersListCall) IfNoneMatch(entityTag string) *MobileCarriersListCall {
36907	c.ifNoneMatch_ = entityTag
36908	return c
36909}
36910
36911// Context sets the context to be used in this call's Do method. Any
36912// pending HTTP request will be aborted if the provided context is
36913// canceled.
36914func (c *MobileCarriersListCall) Context(ctx context.Context) *MobileCarriersListCall {
36915	c.ctx_ = ctx
36916	return c
36917}
36918
36919// Header returns an http.Header that can be modified by the caller to
36920// add HTTP headers to the request.
36921func (c *MobileCarriersListCall) Header() http.Header {
36922	if c.header_ == nil {
36923		c.header_ = make(http.Header)
36924	}
36925	return c.header_
36926}
36927
36928func (c *MobileCarriersListCall) doRequest(alt string) (*http.Response, error) {
36929	reqHeaders := make(http.Header)
36930	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36931	for k, v := range c.header_ {
36932		reqHeaders[k] = v
36933	}
36934	reqHeaders.Set("User-Agent", c.s.userAgent())
36935	if c.ifNoneMatch_ != "" {
36936		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36937	}
36938	var body io.Reader = nil
36939	c.urlParams_.Set("alt", alt)
36940	c.urlParams_.Set("prettyPrint", "false")
36941	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/mobileCarriers")
36942	urls += "?" + c.urlParams_.Encode()
36943	req, err := http.NewRequest("GET", urls, body)
36944	if err != nil {
36945		return nil, err
36946	}
36947	req.Header = reqHeaders
36948	googleapi.Expand(req.URL, map[string]string{
36949		"profileId": strconv.FormatInt(c.profileId, 10),
36950	})
36951	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36952}
36953
36954// Do executes the "dfareporting.mobileCarriers.list" call.
36955// Exactly one of *MobileCarriersListResponse or error will be non-nil.
36956// Any non-2xx status code is an error. Response headers are in either
36957// *MobileCarriersListResponse.ServerResponse.Header or (if a response
36958// was returned at all) in error.(*googleapi.Error).Header. Use
36959// googleapi.IsNotModified to check whether the returned error was
36960// because http.StatusNotModified was returned.
36961func (c *MobileCarriersListCall) Do(opts ...googleapi.CallOption) (*MobileCarriersListResponse, error) {
36962	gensupport.SetOptions(c.urlParams_, opts...)
36963	res, err := c.doRequest("json")
36964	if res != nil && res.StatusCode == http.StatusNotModified {
36965		if res.Body != nil {
36966			res.Body.Close()
36967		}
36968		return nil, &googleapi.Error{
36969			Code:   res.StatusCode,
36970			Header: res.Header,
36971		}
36972	}
36973	if err != nil {
36974		return nil, err
36975	}
36976	defer googleapi.CloseBody(res)
36977	if err := googleapi.CheckResponse(res); err != nil {
36978		return nil, err
36979	}
36980	ret := &MobileCarriersListResponse{
36981		ServerResponse: googleapi.ServerResponse{
36982			Header:         res.Header,
36983			HTTPStatusCode: res.StatusCode,
36984		},
36985	}
36986	target := &ret
36987	if err := gensupport.DecodeResponse(target, res); err != nil {
36988		return nil, err
36989	}
36990	return ret, nil
36991	// {
36992	//   "description": "Retrieves a list of mobile carriers.",
36993	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/mobileCarriers",
36994	//   "httpMethod": "GET",
36995	//   "id": "dfareporting.mobileCarriers.list",
36996	//   "parameterOrder": [
36997	//     "profileId"
36998	//   ],
36999	//   "parameters": {
37000	//     "profileId": {
37001	//       "description": "User profile ID associated with this request.",
37002	//       "format": "int64",
37003	//       "location": "path",
37004	//       "required": true,
37005	//       "type": "string"
37006	//     }
37007	//   },
37008	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/mobileCarriers",
37009	//   "response": {
37010	//     "$ref": "MobileCarriersListResponse"
37011	//   },
37012	//   "scopes": [
37013	//     "https://www.googleapis.com/auth/dfatrafficking"
37014	//   ]
37015	// }
37016
37017}
37018
37019// method id "dfareporting.operatingSystemVersions.get":
37020
37021type OperatingSystemVersionsGetCall struct {
37022	s            *Service
37023	profileId    int64
37024	id           int64
37025	urlParams_   gensupport.URLParams
37026	ifNoneMatch_ string
37027	ctx_         context.Context
37028	header_      http.Header
37029}
37030
37031// Get: Gets one operating system version by ID.
37032//
37033// - id: Operating system version ID.
37034// - profileId: User profile ID associated with this request.
37035func (r *OperatingSystemVersionsService) Get(profileId int64, id int64) *OperatingSystemVersionsGetCall {
37036	c := &OperatingSystemVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37037	c.profileId = profileId
37038	c.id = id
37039	return c
37040}
37041
37042// Fields allows partial responses to be retrieved. See
37043// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37044// for more information.
37045func (c *OperatingSystemVersionsGetCall) Fields(s ...googleapi.Field) *OperatingSystemVersionsGetCall {
37046	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37047	return c
37048}
37049
37050// IfNoneMatch sets the optional parameter which makes the operation
37051// fail if the object's ETag matches the given value. This is useful for
37052// getting updates only after the object has changed since the last
37053// request. Use googleapi.IsNotModified to check whether the response
37054// error from Do is the result of In-None-Match.
37055func (c *OperatingSystemVersionsGetCall) IfNoneMatch(entityTag string) *OperatingSystemVersionsGetCall {
37056	c.ifNoneMatch_ = entityTag
37057	return c
37058}
37059
37060// Context sets the context to be used in this call's Do method. Any
37061// pending HTTP request will be aborted if the provided context is
37062// canceled.
37063func (c *OperatingSystemVersionsGetCall) Context(ctx context.Context) *OperatingSystemVersionsGetCall {
37064	c.ctx_ = ctx
37065	return c
37066}
37067
37068// Header returns an http.Header that can be modified by the caller to
37069// add HTTP headers to the request.
37070func (c *OperatingSystemVersionsGetCall) Header() http.Header {
37071	if c.header_ == nil {
37072		c.header_ = make(http.Header)
37073	}
37074	return c.header_
37075}
37076
37077func (c *OperatingSystemVersionsGetCall) doRequest(alt string) (*http.Response, error) {
37078	reqHeaders := make(http.Header)
37079	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37080	for k, v := range c.header_ {
37081		reqHeaders[k] = v
37082	}
37083	reqHeaders.Set("User-Agent", c.s.userAgent())
37084	if c.ifNoneMatch_ != "" {
37085		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37086	}
37087	var body io.Reader = nil
37088	c.urlParams_.Set("alt", alt)
37089	c.urlParams_.Set("prettyPrint", "false")
37090	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/operatingSystemVersions/{id}")
37091	urls += "?" + c.urlParams_.Encode()
37092	req, err := http.NewRequest("GET", urls, body)
37093	if err != nil {
37094		return nil, err
37095	}
37096	req.Header = reqHeaders
37097	googleapi.Expand(req.URL, map[string]string{
37098		"profileId": strconv.FormatInt(c.profileId, 10),
37099		"id":        strconv.FormatInt(c.id, 10),
37100	})
37101	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37102}
37103
37104// Do executes the "dfareporting.operatingSystemVersions.get" call.
37105// Exactly one of *OperatingSystemVersion or error will be non-nil. Any
37106// non-2xx status code is an error. Response headers are in either
37107// *OperatingSystemVersion.ServerResponse.Header or (if a response was
37108// returned at all) in error.(*googleapi.Error).Header. Use
37109// googleapi.IsNotModified to check whether the returned error was
37110// because http.StatusNotModified was returned.
37111func (c *OperatingSystemVersionsGetCall) Do(opts ...googleapi.CallOption) (*OperatingSystemVersion, error) {
37112	gensupport.SetOptions(c.urlParams_, opts...)
37113	res, err := c.doRequest("json")
37114	if res != nil && res.StatusCode == http.StatusNotModified {
37115		if res.Body != nil {
37116			res.Body.Close()
37117		}
37118		return nil, &googleapi.Error{
37119			Code:   res.StatusCode,
37120			Header: res.Header,
37121		}
37122	}
37123	if err != nil {
37124		return nil, err
37125	}
37126	defer googleapi.CloseBody(res)
37127	if err := googleapi.CheckResponse(res); err != nil {
37128		return nil, err
37129	}
37130	ret := &OperatingSystemVersion{
37131		ServerResponse: googleapi.ServerResponse{
37132			Header:         res.Header,
37133			HTTPStatusCode: res.StatusCode,
37134		},
37135	}
37136	target := &ret
37137	if err := gensupport.DecodeResponse(target, res); err != nil {
37138		return nil, err
37139	}
37140	return ret, nil
37141	// {
37142	//   "description": "Gets one operating system version by ID.",
37143	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/operatingSystemVersions/{id}",
37144	//   "httpMethod": "GET",
37145	//   "id": "dfareporting.operatingSystemVersions.get",
37146	//   "parameterOrder": [
37147	//     "profileId",
37148	//     "id"
37149	//   ],
37150	//   "parameters": {
37151	//     "id": {
37152	//       "description": "Operating system version ID.",
37153	//       "format": "int64",
37154	//       "location": "path",
37155	//       "required": true,
37156	//       "type": "string"
37157	//     },
37158	//     "profileId": {
37159	//       "description": "User profile ID associated with this request.",
37160	//       "format": "int64",
37161	//       "location": "path",
37162	//       "required": true,
37163	//       "type": "string"
37164	//     }
37165	//   },
37166	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/operatingSystemVersions/{id}",
37167	//   "response": {
37168	//     "$ref": "OperatingSystemVersion"
37169	//   },
37170	//   "scopes": [
37171	//     "https://www.googleapis.com/auth/dfatrafficking"
37172	//   ]
37173	// }
37174
37175}
37176
37177// method id "dfareporting.operatingSystemVersions.list":
37178
37179type OperatingSystemVersionsListCall struct {
37180	s            *Service
37181	profileId    int64
37182	urlParams_   gensupport.URLParams
37183	ifNoneMatch_ string
37184	ctx_         context.Context
37185	header_      http.Header
37186}
37187
37188// List: Retrieves a list of operating system versions.
37189//
37190// - profileId: User profile ID associated with this request.
37191func (r *OperatingSystemVersionsService) List(profileId int64) *OperatingSystemVersionsListCall {
37192	c := &OperatingSystemVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37193	c.profileId = profileId
37194	return c
37195}
37196
37197// Fields allows partial responses to be retrieved. See
37198// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37199// for more information.
37200func (c *OperatingSystemVersionsListCall) Fields(s ...googleapi.Field) *OperatingSystemVersionsListCall {
37201	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37202	return c
37203}
37204
37205// IfNoneMatch sets the optional parameter which makes the operation
37206// fail if the object's ETag matches the given value. This is useful for
37207// getting updates only after the object has changed since the last
37208// request. Use googleapi.IsNotModified to check whether the response
37209// error from Do is the result of In-None-Match.
37210func (c *OperatingSystemVersionsListCall) IfNoneMatch(entityTag string) *OperatingSystemVersionsListCall {
37211	c.ifNoneMatch_ = entityTag
37212	return c
37213}
37214
37215// Context sets the context to be used in this call's Do method. Any
37216// pending HTTP request will be aborted if the provided context is
37217// canceled.
37218func (c *OperatingSystemVersionsListCall) Context(ctx context.Context) *OperatingSystemVersionsListCall {
37219	c.ctx_ = ctx
37220	return c
37221}
37222
37223// Header returns an http.Header that can be modified by the caller to
37224// add HTTP headers to the request.
37225func (c *OperatingSystemVersionsListCall) Header() http.Header {
37226	if c.header_ == nil {
37227		c.header_ = make(http.Header)
37228	}
37229	return c.header_
37230}
37231
37232func (c *OperatingSystemVersionsListCall) doRequest(alt string) (*http.Response, error) {
37233	reqHeaders := make(http.Header)
37234	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37235	for k, v := range c.header_ {
37236		reqHeaders[k] = v
37237	}
37238	reqHeaders.Set("User-Agent", c.s.userAgent())
37239	if c.ifNoneMatch_ != "" {
37240		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37241	}
37242	var body io.Reader = nil
37243	c.urlParams_.Set("alt", alt)
37244	c.urlParams_.Set("prettyPrint", "false")
37245	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/operatingSystemVersions")
37246	urls += "?" + c.urlParams_.Encode()
37247	req, err := http.NewRequest("GET", urls, body)
37248	if err != nil {
37249		return nil, err
37250	}
37251	req.Header = reqHeaders
37252	googleapi.Expand(req.URL, map[string]string{
37253		"profileId": strconv.FormatInt(c.profileId, 10),
37254	})
37255	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37256}
37257
37258// Do executes the "dfareporting.operatingSystemVersions.list" call.
37259// Exactly one of *OperatingSystemVersionsListResponse or error will be
37260// non-nil. Any non-2xx status code is an error. Response headers are in
37261// either *OperatingSystemVersionsListResponse.ServerResponse.Header or
37262// (if a response was returned at all) in
37263// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
37264// whether the returned error was because http.StatusNotModified was
37265// returned.
37266func (c *OperatingSystemVersionsListCall) Do(opts ...googleapi.CallOption) (*OperatingSystemVersionsListResponse, error) {
37267	gensupport.SetOptions(c.urlParams_, opts...)
37268	res, err := c.doRequest("json")
37269	if res != nil && res.StatusCode == http.StatusNotModified {
37270		if res.Body != nil {
37271			res.Body.Close()
37272		}
37273		return nil, &googleapi.Error{
37274			Code:   res.StatusCode,
37275			Header: res.Header,
37276		}
37277	}
37278	if err != nil {
37279		return nil, err
37280	}
37281	defer googleapi.CloseBody(res)
37282	if err := googleapi.CheckResponse(res); err != nil {
37283		return nil, err
37284	}
37285	ret := &OperatingSystemVersionsListResponse{
37286		ServerResponse: googleapi.ServerResponse{
37287			Header:         res.Header,
37288			HTTPStatusCode: res.StatusCode,
37289		},
37290	}
37291	target := &ret
37292	if err := gensupport.DecodeResponse(target, res); err != nil {
37293		return nil, err
37294	}
37295	return ret, nil
37296	// {
37297	//   "description": "Retrieves a list of operating system versions.",
37298	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/operatingSystemVersions",
37299	//   "httpMethod": "GET",
37300	//   "id": "dfareporting.operatingSystemVersions.list",
37301	//   "parameterOrder": [
37302	//     "profileId"
37303	//   ],
37304	//   "parameters": {
37305	//     "profileId": {
37306	//       "description": "User profile ID associated with this request.",
37307	//       "format": "int64",
37308	//       "location": "path",
37309	//       "required": true,
37310	//       "type": "string"
37311	//     }
37312	//   },
37313	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/operatingSystemVersions",
37314	//   "response": {
37315	//     "$ref": "OperatingSystemVersionsListResponse"
37316	//   },
37317	//   "scopes": [
37318	//     "https://www.googleapis.com/auth/dfatrafficking"
37319	//   ]
37320	// }
37321
37322}
37323
37324// method id "dfareporting.operatingSystems.get":
37325
37326type OperatingSystemsGetCall struct {
37327	s            *Service
37328	profileId    int64
37329	dartId       int64
37330	urlParams_   gensupport.URLParams
37331	ifNoneMatch_ string
37332	ctx_         context.Context
37333	header_      http.Header
37334}
37335
37336// Get: Gets one operating system by DART ID.
37337//
37338// - dartId: Operating system DART ID.
37339// - profileId: User profile ID associated with this request.
37340func (r *OperatingSystemsService) Get(profileId int64, dartId int64) *OperatingSystemsGetCall {
37341	c := &OperatingSystemsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37342	c.profileId = profileId
37343	c.dartId = dartId
37344	return c
37345}
37346
37347// Fields allows partial responses to be retrieved. See
37348// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37349// for more information.
37350func (c *OperatingSystemsGetCall) Fields(s ...googleapi.Field) *OperatingSystemsGetCall {
37351	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37352	return c
37353}
37354
37355// IfNoneMatch sets the optional parameter which makes the operation
37356// fail if the object's ETag matches the given value. This is useful for
37357// getting updates only after the object has changed since the last
37358// request. Use googleapi.IsNotModified to check whether the response
37359// error from Do is the result of In-None-Match.
37360func (c *OperatingSystemsGetCall) IfNoneMatch(entityTag string) *OperatingSystemsGetCall {
37361	c.ifNoneMatch_ = entityTag
37362	return c
37363}
37364
37365// Context sets the context to be used in this call's Do method. Any
37366// pending HTTP request will be aborted if the provided context is
37367// canceled.
37368func (c *OperatingSystemsGetCall) Context(ctx context.Context) *OperatingSystemsGetCall {
37369	c.ctx_ = ctx
37370	return c
37371}
37372
37373// Header returns an http.Header that can be modified by the caller to
37374// add HTTP headers to the request.
37375func (c *OperatingSystemsGetCall) Header() http.Header {
37376	if c.header_ == nil {
37377		c.header_ = make(http.Header)
37378	}
37379	return c.header_
37380}
37381
37382func (c *OperatingSystemsGetCall) doRequest(alt string) (*http.Response, error) {
37383	reqHeaders := make(http.Header)
37384	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37385	for k, v := range c.header_ {
37386		reqHeaders[k] = v
37387	}
37388	reqHeaders.Set("User-Agent", c.s.userAgent())
37389	if c.ifNoneMatch_ != "" {
37390		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37391	}
37392	var body io.Reader = nil
37393	c.urlParams_.Set("alt", alt)
37394	c.urlParams_.Set("prettyPrint", "false")
37395	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/operatingSystems/{dartId}")
37396	urls += "?" + c.urlParams_.Encode()
37397	req, err := http.NewRequest("GET", urls, body)
37398	if err != nil {
37399		return nil, err
37400	}
37401	req.Header = reqHeaders
37402	googleapi.Expand(req.URL, map[string]string{
37403		"profileId": strconv.FormatInt(c.profileId, 10),
37404		"dartId":    strconv.FormatInt(c.dartId, 10),
37405	})
37406	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37407}
37408
37409// Do executes the "dfareporting.operatingSystems.get" call.
37410// Exactly one of *OperatingSystem or error will be non-nil. Any non-2xx
37411// status code is an error. Response headers are in either
37412// *OperatingSystem.ServerResponse.Header or (if a response was returned
37413// at all) in error.(*googleapi.Error).Header. Use
37414// googleapi.IsNotModified to check whether the returned error was
37415// because http.StatusNotModified was returned.
37416func (c *OperatingSystemsGetCall) Do(opts ...googleapi.CallOption) (*OperatingSystem, error) {
37417	gensupport.SetOptions(c.urlParams_, opts...)
37418	res, err := c.doRequest("json")
37419	if res != nil && res.StatusCode == http.StatusNotModified {
37420		if res.Body != nil {
37421			res.Body.Close()
37422		}
37423		return nil, &googleapi.Error{
37424			Code:   res.StatusCode,
37425			Header: res.Header,
37426		}
37427	}
37428	if err != nil {
37429		return nil, err
37430	}
37431	defer googleapi.CloseBody(res)
37432	if err := googleapi.CheckResponse(res); err != nil {
37433		return nil, err
37434	}
37435	ret := &OperatingSystem{
37436		ServerResponse: googleapi.ServerResponse{
37437			Header:         res.Header,
37438			HTTPStatusCode: res.StatusCode,
37439		},
37440	}
37441	target := &ret
37442	if err := gensupport.DecodeResponse(target, res); err != nil {
37443		return nil, err
37444	}
37445	return ret, nil
37446	// {
37447	//   "description": "Gets one operating system by DART ID.",
37448	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/operatingSystems/{dartId}",
37449	//   "httpMethod": "GET",
37450	//   "id": "dfareporting.operatingSystems.get",
37451	//   "parameterOrder": [
37452	//     "profileId",
37453	//     "dartId"
37454	//   ],
37455	//   "parameters": {
37456	//     "dartId": {
37457	//       "description": "Operating system DART ID.",
37458	//       "format": "int64",
37459	//       "location": "path",
37460	//       "required": true,
37461	//       "type": "string"
37462	//     },
37463	//     "profileId": {
37464	//       "description": "User profile ID associated with this request.",
37465	//       "format": "int64",
37466	//       "location": "path",
37467	//       "required": true,
37468	//       "type": "string"
37469	//     }
37470	//   },
37471	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/operatingSystems/{dartId}",
37472	//   "response": {
37473	//     "$ref": "OperatingSystem"
37474	//   },
37475	//   "scopes": [
37476	//     "https://www.googleapis.com/auth/dfatrafficking"
37477	//   ]
37478	// }
37479
37480}
37481
37482// method id "dfareporting.operatingSystems.list":
37483
37484type OperatingSystemsListCall struct {
37485	s            *Service
37486	profileId    int64
37487	urlParams_   gensupport.URLParams
37488	ifNoneMatch_ string
37489	ctx_         context.Context
37490	header_      http.Header
37491}
37492
37493// List: Retrieves a list of operating systems.
37494//
37495// - profileId: User profile ID associated with this request.
37496func (r *OperatingSystemsService) List(profileId int64) *OperatingSystemsListCall {
37497	c := &OperatingSystemsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37498	c.profileId = profileId
37499	return c
37500}
37501
37502// Fields allows partial responses to be retrieved. See
37503// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37504// for more information.
37505func (c *OperatingSystemsListCall) Fields(s ...googleapi.Field) *OperatingSystemsListCall {
37506	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37507	return c
37508}
37509
37510// IfNoneMatch sets the optional parameter which makes the operation
37511// fail if the object's ETag matches the given value. This is useful for
37512// getting updates only after the object has changed since the last
37513// request. Use googleapi.IsNotModified to check whether the response
37514// error from Do is the result of In-None-Match.
37515func (c *OperatingSystemsListCall) IfNoneMatch(entityTag string) *OperatingSystemsListCall {
37516	c.ifNoneMatch_ = entityTag
37517	return c
37518}
37519
37520// Context sets the context to be used in this call's Do method. Any
37521// pending HTTP request will be aborted if the provided context is
37522// canceled.
37523func (c *OperatingSystemsListCall) Context(ctx context.Context) *OperatingSystemsListCall {
37524	c.ctx_ = ctx
37525	return c
37526}
37527
37528// Header returns an http.Header that can be modified by the caller to
37529// add HTTP headers to the request.
37530func (c *OperatingSystemsListCall) Header() http.Header {
37531	if c.header_ == nil {
37532		c.header_ = make(http.Header)
37533	}
37534	return c.header_
37535}
37536
37537func (c *OperatingSystemsListCall) doRequest(alt string) (*http.Response, error) {
37538	reqHeaders := make(http.Header)
37539	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37540	for k, v := range c.header_ {
37541		reqHeaders[k] = v
37542	}
37543	reqHeaders.Set("User-Agent", c.s.userAgent())
37544	if c.ifNoneMatch_ != "" {
37545		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37546	}
37547	var body io.Reader = nil
37548	c.urlParams_.Set("alt", alt)
37549	c.urlParams_.Set("prettyPrint", "false")
37550	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/operatingSystems")
37551	urls += "?" + c.urlParams_.Encode()
37552	req, err := http.NewRequest("GET", urls, body)
37553	if err != nil {
37554		return nil, err
37555	}
37556	req.Header = reqHeaders
37557	googleapi.Expand(req.URL, map[string]string{
37558		"profileId": strconv.FormatInt(c.profileId, 10),
37559	})
37560	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37561}
37562
37563// Do executes the "dfareporting.operatingSystems.list" call.
37564// Exactly one of *OperatingSystemsListResponse or error will be
37565// non-nil. Any non-2xx status code is an error. Response headers are in
37566// either *OperatingSystemsListResponse.ServerResponse.Header or (if a
37567// response was returned at all) in error.(*googleapi.Error).Header. Use
37568// googleapi.IsNotModified to check whether the returned error was
37569// because http.StatusNotModified was returned.
37570func (c *OperatingSystemsListCall) Do(opts ...googleapi.CallOption) (*OperatingSystemsListResponse, error) {
37571	gensupport.SetOptions(c.urlParams_, opts...)
37572	res, err := c.doRequest("json")
37573	if res != nil && res.StatusCode == http.StatusNotModified {
37574		if res.Body != nil {
37575			res.Body.Close()
37576		}
37577		return nil, &googleapi.Error{
37578			Code:   res.StatusCode,
37579			Header: res.Header,
37580		}
37581	}
37582	if err != nil {
37583		return nil, err
37584	}
37585	defer googleapi.CloseBody(res)
37586	if err := googleapi.CheckResponse(res); err != nil {
37587		return nil, err
37588	}
37589	ret := &OperatingSystemsListResponse{
37590		ServerResponse: googleapi.ServerResponse{
37591			Header:         res.Header,
37592			HTTPStatusCode: res.StatusCode,
37593		},
37594	}
37595	target := &ret
37596	if err := gensupport.DecodeResponse(target, res); err != nil {
37597		return nil, err
37598	}
37599	return ret, nil
37600	// {
37601	//   "description": "Retrieves a list of operating systems.",
37602	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/operatingSystems",
37603	//   "httpMethod": "GET",
37604	//   "id": "dfareporting.operatingSystems.list",
37605	//   "parameterOrder": [
37606	//     "profileId"
37607	//   ],
37608	//   "parameters": {
37609	//     "profileId": {
37610	//       "description": "User profile ID associated with this request.",
37611	//       "format": "int64",
37612	//       "location": "path",
37613	//       "required": true,
37614	//       "type": "string"
37615	//     }
37616	//   },
37617	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/operatingSystems",
37618	//   "response": {
37619	//     "$ref": "OperatingSystemsListResponse"
37620	//   },
37621	//   "scopes": [
37622	//     "https://www.googleapis.com/auth/dfatrafficking"
37623	//   ]
37624	// }
37625
37626}
37627
37628// method id "dfareporting.orderDocuments.get":
37629
37630type OrderDocumentsGetCall struct {
37631	s            *Service
37632	profileId    int64
37633	projectId    int64
37634	id           int64
37635	urlParams_   gensupport.URLParams
37636	ifNoneMatch_ string
37637	ctx_         context.Context
37638	header_      http.Header
37639}
37640
37641// Get: Gets one order document by ID.
37642//
37643// - id: Order document ID.
37644// - profileId: User profile ID associated with this request.
37645// - projectId: Project ID for order documents.
37646func (r *OrderDocumentsService) Get(profileId int64, projectId int64, id int64) *OrderDocumentsGetCall {
37647	c := &OrderDocumentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37648	c.profileId = profileId
37649	c.projectId = projectId
37650	c.id = id
37651	return c
37652}
37653
37654// Fields allows partial responses to be retrieved. See
37655// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37656// for more information.
37657func (c *OrderDocumentsGetCall) Fields(s ...googleapi.Field) *OrderDocumentsGetCall {
37658	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37659	return c
37660}
37661
37662// IfNoneMatch sets the optional parameter which makes the operation
37663// fail if the object's ETag matches the given value. This is useful for
37664// getting updates only after the object has changed since the last
37665// request. Use googleapi.IsNotModified to check whether the response
37666// error from Do is the result of In-None-Match.
37667func (c *OrderDocumentsGetCall) IfNoneMatch(entityTag string) *OrderDocumentsGetCall {
37668	c.ifNoneMatch_ = entityTag
37669	return c
37670}
37671
37672// Context sets the context to be used in this call's Do method. Any
37673// pending HTTP request will be aborted if the provided context is
37674// canceled.
37675func (c *OrderDocumentsGetCall) Context(ctx context.Context) *OrderDocumentsGetCall {
37676	c.ctx_ = ctx
37677	return c
37678}
37679
37680// Header returns an http.Header that can be modified by the caller to
37681// add HTTP headers to the request.
37682func (c *OrderDocumentsGetCall) Header() http.Header {
37683	if c.header_ == nil {
37684		c.header_ = make(http.Header)
37685	}
37686	return c.header_
37687}
37688
37689func (c *OrderDocumentsGetCall) doRequest(alt string) (*http.Response, error) {
37690	reqHeaders := make(http.Header)
37691	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37692	for k, v := range c.header_ {
37693		reqHeaders[k] = v
37694	}
37695	reqHeaders.Set("User-Agent", c.s.userAgent())
37696	if c.ifNoneMatch_ != "" {
37697		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37698	}
37699	var body io.Reader = nil
37700	c.urlParams_.Set("alt", alt)
37701	c.urlParams_.Set("prettyPrint", "false")
37702	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}")
37703	urls += "?" + c.urlParams_.Encode()
37704	req, err := http.NewRequest("GET", urls, body)
37705	if err != nil {
37706		return nil, err
37707	}
37708	req.Header = reqHeaders
37709	googleapi.Expand(req.URL, map[string]string{
37710		"profileId": strconv.FormatInt(c.profileId, 10),
37711		"projectId": strconv.FormatInt(c.projectId, 10),
37712		"id":        strconv.FormatInt(c.id, 10),
37713	})
37714	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37715}
37716
37717// Do executes the "dfareporting.orderDocuments.get" call.
37718// Exactly one of *OrderDocument or error will be non-nil. Any non-2xx
37719// status code is an error. Response headers are in either
37720// *OrderDocument.ServerResponse.Header or (if a response was returned
37721// at all) in error.(*googleapi.Error).Header. Use
37722// googleapi.IsNotModified to check whether the returned error was
37723// because http.StatusNotModified was returned.
37724func (c *OrderDocumentsGetCall) Do(opts ...googleapi.CallOption) (*OrderDocument, error) {
37725	gensupport.SetOptions(c.urlParams_, opts...)
37726	res, err := c.doRequest("json")
37727	if res != nil && res.StatusCode == http.StatusNotModified {
37728		if res.Body != nil {
37729			res.Body.Close()
37730		}
37731		return nil, &googleapi.Error{
37732			Code:   res.StatusCode,
37733			Header: res.Header,
37734		}
37735	}
37736	if err != nil {
37737		return nil, err
37738	}
37739	defer googleapi.CloseBody(res)
37740	if err := googleapi.CheckResponse(res); err != nil {
37741		return nil, err
37742	}
37743	ret := &OrderDocument{
37744		ServerResponse: googleapi.ServerResponse{
37745			Header:         res.Header,
37746			HTTPStatusCode: res.StatusCode,
37747		},
37748	}
37749	target := &ret
37750	if err := gensupport.DecodeResponse(target, res); err != nil {
37751		return nil, err
37752	}
37753	return ret, nil
37754	// {
37755	//   "description": "Gets one order document by ID.",
37756	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}",
37757	//   "httpMethod": "GET",
37758	//   "id": "dfareporting.orderDocuments.get",
37759	//   "parameterOrder": [
37760	//     "profileId",
37761	//     "projectId",
37762	//     "id"
37763	//   ],
37764	//   "parameters": {
37765	//     "id": {
37766	//       "description": "Order document ID.",
37767	//       "format": "int64",
37768	//       "location": "path",
37769	//       "required": true,
37770	//       "type": "string"
37771	//     },
37772	//     "profileId": {
37773	//       "description": "User profile ID associated with this request.",
37774	//       "format": "int64",
37775	//       "location": "path",
37776	//       "required": true,
37777	//       "type": "string"
37778	//     },
37779	//     "projectId": {
37780	//       "description": "Project ID for order documents.",
37781	//       "format": "int64",
37782	//       "location": "path",
37783	//       "required": true,
37784	//       "type": "string"
37785	//     }
37786	//   },
37787	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}",
37788	//   "response": {
37789	//     "$ref": "OrderDocument"
37790	//   },
37791	//   "scopes": [
37792	//     "https://www.googleapis.com/auth/dfatrafficking"
37793	//   ]
37794	// }
37795
37796}
37797
37798// method id "dfareporting.orderDocuments.list":
37799
37800type OrderDocumentsListCall struct {
37801	s            *Service
37802	profileId    int64
37803	projectId    int64
37804	urlParams_   gensupport.URLParams
37805	ifNoneMatch_ string
37806	ctx_         context.Context
37807	header_      http.Header
37808}
37809
37810// List: Retrieves a list of order documents, possibly filtered. This
37811// method supports paging.
37812//
37813// - profileId: User profile ID associated with this request.
37814// - projectId: Project ID for order documents.
37815func (r *OrderDocumentsService) List(profileId int64, projectId int64) *OrderDocumentsListCall {
37816	c := &OrderDocumentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37817	c.profileId = profileId
37818	c.projectId = projectId
37819	return c
37820}
37821
37822// Approved sets the optional parameter "approved": Select only order
37823// documents that have been approved by at least one user.
37824func (c *OrderDocumentsListCall) Approved(approved bool) *OrderDocumentsListCall {
37825	c.urlParams_.Set("approved", fmt.Sprint(approved))
37826	return c
37827}
37828
37829// Ids sets the optional parameter "ids": Select only order documents
37830// with these IDs.
37831func (c *OrderDocumentsListCall) Ids(ids ...int64) *OrderDocumentsListCall {
37832	var ids_ []string
37833	for _, v := range ids {
37834		ids_ = append(ids_, fmt.Sprint(v))
37835	}
37836	c.urlParams_.SetMulti("ids", ids_)
37837	return c
37838}
37839
37840// MaxResults sets the optional parameter "maxResults": Maximum number
37841// of results to return.
37842func (c *OrderDocumentsListCall) MaxResults(maxResults int64) *OrderDocumentsListCall {
37843	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
37844	return c
37845}
37846
37847// OrderId sets the optional parameter "orderId": Select only order
37848// documents for specified orders.
37849func (c *OrderDocumentsListCall) OrderId(orderId ...int64) *OrderDocumentsListCall {
37850	var orderId_ []string
37851	for _, v := range orderId {
37852		orderId_ = append(orderId_, fmt.Sprint(v))
37853	}
37854	c.urlParams_.SetMulti("orderId", orderId_)
37855	return c
37856}
37857
37858// PageToken sets the optional parameter "pageToken": Value of the
37859// nextPageToken from the previous result page.
37860func (c *OrderDocumentsListCall) PageToken(pageToken string) *OrderDocumentsListCall {
37861	c.urlParams_.Set("pageToken", pageToken)
37862	return c
37863}
37864
37865// SearchString sets the optional parameter "searchString": Allows
37866// searching for order documents by name or ID. Wildcards (*) are
37867// allowed. For example, "orderdocument*2015" will return order
37868// documents with names like "orderdocument June 2015", "orderdocument
37869// April 2015", or simply "orderdocument 2015". Most of the searches
37870// also add wildcards implicitly at the start and the end of the search
37871// string. For example, a search string of "orderdocument" will match
37872// order documents with name "my orderdocument", "orderdocument 2015",
37873// or simply "orderdocument".
37874func (c *OrderDocumentsListCall) SearchString(searchString string) *OrderDocumentsListCall {
37875	c.urlParams_.Set("searchString", searchString)
37876	return c
37877}
37878
37879// SiteId sets the optional parameter "siteId": Select only order
37880// documents that are associated with these sites.
37881func (c *OrderDocumentsListCall) SiteId(siteId ...int64) *OrderDocumentsListCall {
37882	var siteId_ []string
37883	for _, v := range siteId {
37884		siteId_ = append(siteId_, fmt.Sprint(v))
37885	}
37886	c.urlParams_.SetMulti("siteId", siteId_)
37887	return c
37888}
37889
37890// SortField sets the optional parameter "sortField": Field by which to
37891// sort the list.
37892//
37893// Possible values:
37894//   "ID" (default)
37895//   "NAME"
37896func (c *OrderDocumentsListCall) SortField(sortField string) *OrderDocumentsListCall {
37897	c.urlParams_.Set("sortField", sortField)
37898	return c
37899}
37900
37901// SortOrder sets the optional parameter "sortOrder": Order of sorted
37902// results.
37903//
37904// Possible values:
37905//   "ASCENDING" (default)
37906//   "DESCENDING"
37907func (c *OrderDocumentsListCall) SortOrder(sortOrder string) *OrderDocumentsListCall {
37908	c.urlParams_.Set("sortOrder", sortOrder)
37909	return c
37910}
37911
37912// Fields allows partial responses to be retrieved. See
37913// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37914// for more information.
37915func (c *OrderDocumentsListCall) Fields(s ...googleapi.Field) *OrderDocumentsListCall {
37916	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37917	return c
37918}
37919
37920// IfNoneMatch sets the optional parameter which makes the operation
37921// fail if the object's ETag matches the given value. This is useful for
37922// getting updates only after the object has changed since the last
37923// request. Use googleapi.IsNotModified to check whether the response
37924// error from Do is the result of In-None-Match.
37925func (c *OrderDocumentsListCall) IfNoneMatch(entityTag string) *OrderDocumentsListCall {
37926	c.ifNoneMatch_ = entityTag
37927	return c
37928}
37929
37930// Context sets the context to be used in this call's Do method. Any
37931// pending HTTP request will be aborted if the provided context is
37932// canceled.
37933func (c *OrderDocumentsListCall) Context(ctx context.Context) *OrderDocumentsListCall {
37934	c.ctx_ = ctx
37935	return c
37936}
37937
37938// Header returns an http.Header that can be modified by the caller to
37939// add HTTP headers to the request.
37940func (c *OrderDocumentsListCall) Header() http.Header {
37941	if c.header_ == nil {
37942		c.header_ = make(http.Header)
37943	}
37944	return c.header_
37945}
37946
37947func (c *OrderDocumentsListCall) doRequest(alt string) (*http.Response, error) {
37948	reqHeaders := make(http.Header)
37949	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37950	for k, v := range c.header_ {
37951		reqHeaders[k] = v
37952	}
37953	reqHeaders.Set("User-Agent", c.s.userAgent())
37954	if c.ifNoneMatch_ != "" {
37955		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37956	}
37957	var body io.Reader = nil
37958	c.urlParams_.Set("alt", alt)
37959	c.urlParams_.Set("prettyPrint", "false")
37960	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orderDocuments")
37961	urls += "?" + c.urlParams_.Encode()
37962	req, err := http.NewRequest("GET", urls, body)
37963	if err != nil {
37964		return nil, err
37965	}
37966	req.Header = reqHeaders
37967	googleapi.Expand(req.URL, map[string]string{
37968		"profileId": strconv.FormatInt(c.profileId, 10),
37969		"projectId": strconv.FormatInt(c.projectId, 10),
37970	})
37971	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37972}
37973
37974// Do executes the "dfareporting.orderDocuments.list" call.
37975// Exactly one of *OrderDocumentsListResponse or error will be non-nil.
37976// Any non-2xx status code is an error. Response headers are in either
37977// *OrderDocumentsListResponse.ServerResponse.Header or (if a response
37978// was returned at all) in error.(*googleapi.Error).Header. Use
37979// googleapi.IsNotModified to check whether the returned error was
37980// because http.StatusNotModified was returned.
37981func (c *OrderDocumentsListCall) Do(opts ...googleapi.CallOption) (*OrderDocumentsListResponse, 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, &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, err
37999	}
38000	ret := &OrderDocumentsListResponse{
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	//   "description": "Retrieves a list of order documents, possibly filtered. This method supports paging.",
38013	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orderDocuments",
38014	//   "httpMethod": "GET",
38015	//   "id": "dfareporting.orderDocuments.list",
38016	//   "parameterOrder": [
38017	//     "profileId",
38018	//     "projectId"
38019	//   ],
38020	//   "parameters": {
38021	//     "approved": {
38022	//       "description": "Select only order documents that have been approved by at least one user.",
38023	//       "location": "query",
38024	//       "type": "boolean"
38025	//     },
38026	//     "ids": {
38027	//       "description": "Select only order documents with these IDs.",
38028	//       "format": "int64",
38029	//       "location": "query",
38030	//       "repeated": true,
38031	//       "type": "string"
38032	//     },
38033	//     "maxResults": {
38034	//       "default": "1000",
38035	//       "description": "Maximum number of results to return.",
38036	//       "format": "int32",
38037	//       "location": "query",
38038	//       "maximum": "1000",
38039	//       "minimum": "0",
38040	//       "type": "integer"
38041	//     },
38042	//     "orderId": {
38043	//       "description": "Select only order documents for specified orders.",
38044	//       "format": "int64",
38045	//       "location": "query",
38046	//       "repeated": true,
38047	//       "type": "string"
38048	//     },
38049	//     "pageToken": {
38050	//       "description": "Value of the nextPageToken from the previous result page.",
38051	//       "location": "query",
38052	//       "type": "string"
38053	//     },
38054	//     "profileId": {
38055	//       "description": "User profile ID associated with this request.",
38056	//       "format": "int64",
38057	//       "location": "path",
38058	//       "required": true,
38059	//       "type": "string"
38060	//     },
38061	//     "projectId": {
38062	//       "description": "Project ID for order documents.",
38063	//       "format": "int64",
38064	//       "location": "path",
38065	//       "required": true,
38066	//       "type": "string"
38067	//     },
38068	//     "searchString": {
38069	//       "description": "Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, \"orderdocument*2015\" will return order documents with names like \"orderdocument June 2015\", \"orderdocument April 2015\", or simply \"orderdocument 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"orderdocument\" will match order documents with name \"my orderdocument\", \"orderdocument 2015\", or simply \"orderdocument\".",
38070	//       "location": "query",
38071	//       "type": "string"
38072	//     },
38073	//     "siteId": {
38074	//       "description": "Select only order documents that are associated with these sites.",
38075	//       "format": "int64",
38076	//       "location": "query",
38077	//       "repeated": true,
38078	//       "type": "string"
38079	//     },
38080	//     "sortField": {
38081	//       "default": "ID",
38082	//       "description": "Field by which to sort the list.",
38083	//       "enum": [
38084	//         "ID",
38085	//         "NAME"
38086	//       ],
38087	//       "enumDescriptions": [
38088	//         "",
38089	//         ""
38090	//       ],
38091	//       "location": "query",
38092	//       "type": "string"
38093	//     },
38094	//     "sortOrder": {
38095	//       "default": "ASCENDING",
38096	//       "description": "Order of sorted results.",
38097	//       "enum": [
38098	//         "ASCENDING",
38099	//         "DESCENDING"
38100	//       ],
38101	//       "enumDescriptions": [
38102	//         "",
38103	//         ""
38104	//       ],
38105	//       "location": "query",
38106	//       "type": "string"
38107	//     }
38108	//   },
38109	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orderDocuments",
38110	//   "response": {
38111	//     "$ref": "OrderDocumentsListResponse"
38112	//   },
38113	//   "scopes": [
38114	//     "https://www.googleapis.com/auth/dfatrafficking"
38115	//   ]
38116	// }
38117
38118}
38119
38120// Pages invokes f for each page of results.
38121// A non-nil error returned from f will halt the iteration.
38122// The provided context supersedes any context provided to the Context method.
38123func (c *OrderDocumentsListCall) Pages(ctx context.Context, f func(*OrderDocumentsListResponse) error) error {
38124	c.ctx_ = ctx
38125	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
38126	for {
38127		x, err := c.Do()
38128		if err != nil {
38129			return err
38130		}
38131		if err := f(x); err != nil {
38132			return err
38133		}
38134		if x.NextPageToken == "" {
38135			return nil
38136		}
38137		c.PageToken(x.NextPageToken)
38138	}
38139}
38140
38141// method id "dfareporting.orders.get":
38142
38143type OrdersGetCall struct {
38144	s            *Service
38145	profileId    int64
38146	projectId    int64
38147	id           int64
38148	urlParams_   gensupport.URLParams
38149	ifNoneMatch_ string
38150	ctx_         context.Context
38151	header_      http.Header
38152}
38153
38154// Get: Gets one order by ID.
38155//
38156// - id: Order ID.
38157// - profileId: User profile ID associated with this request.
38158// - projectId: Project ID for orders.
38159func (r *OrdersService) Get(profileId int64, projectId int64, id int64) *OrdersGetCall {
38160	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38161	c.profileId = profileId
38162	c.projectId = projectId
38163	c.id = id
38164	return c
38165}
38166
38167// Fields allows partial responses to be retrieved. See
38168// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38169// for more information.
38170func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
38171	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38172	return c
38173}
38174
38175// IfNoneMatch sets the optional parameter which makes the operation
38176// fail if the object's ETag matches the given value. This is useful for
38177// getting updates only after the object has changed since the last
38178// request. Use googleapi.IsNotModified to check whether the response
38179// error from Do is the result of In-None-Match.
38180func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
38181	c.ifNoneMatch_ = entityTag
38182	return c
38183}
38184
38185// Context sets the context to be used in this call's Do method. Any
38186// pending HTTP request will be aborted if the provided context is
38187// canceled.
38188func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
38189	c.ctx_ = ctx
38190	return c
38191}
38192
38193// Header returns an http.Header that can be modified by the caller to
38194// add HTTP headers to the request.
38195func (c *OrdersGetCall) Header() http.Header {
38196	if c.header_ == nil {
38197		c.header_ = make(http.Header)
38198	}
38199	return c.header_
38200}
38201
38202func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
38203	reqHeaders := make(http.Header)
38204	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38205	for k, v := range c.header_ {
38206		reqHeaders[k] = v
38207	}
38208	reqHeaders.Set("User-Agent", c.s.userAgent())
38209	if c.ifNoneMatch_ != "" {
38210		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38211	}
38212	var body io.Reader = nil
38213	c.urlParams_.Set("alt", alt)
38214	c.urlParams_.Set("prettyPrint", "false")
38215	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orders/{id}")
38216	urls += "?" + c.urlParams_.Encode()
38217	req, err := http.NewRequest("GET", urls, body)
38218	if err != nil {
38219		return nil, err
38220	}
38221	req.Header = reqHeaders
38222	googleapi.Expand(req.URL, map[string]string{
38223		"profileId": strconv.FormatInt(c.profileId, 10),
38224		"projectId": strconv.FormatInt(c.projectId, 10),
38225		"id":        strconv.FormatInt(c.id, 10),
38226	})
38227	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38228}
38229
38230// Do executes the "dfareporting.orders.get" call.
38231// Exactly one of *Order or error will be non-nil. Any non-2xx status
38232// code is an error. Response headers are in either
38233// *Order.ServerResponse.Header or (if a response was returned at all)
38234// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
38235// check whether the returned error was because http.StatusNotModified
38236// was returned.
38237func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
38238	gensupport.SetOptions(c.urlParams_, opts...)
38239	res, err := c.doRequest("json")
38240	if res != nil && res.StatusCode == http.StatusNotModified {
38241		if res.Body != nil {
38242			res.Body.Close()
38243		}
38244		return nil, &googleapi.Error{
38245			Code:   res.StatusCode,
38246			Header: res.Header,
38247		}
38248	}
38249	if err != nil {
38250		return nil, err
38251	}
38252	defer googleapi.CloseBody(res)
38253	if err := googleapi.CheckResponse(res); err != nil {
38254		return nil, err
38255	}
38256	ret := &Order{
38257		ServerResponse: googleapi.ServerResponse{
38258			Header:         res.Header,
38259			HTTPStatusCode: res.StatusCode,
38260		},
38261	}
38262	target := &ret
38263	if err := gensupport.DecodeResponse(target, res); err != nil {
38264		return nil, err
38265	}
38266	return ret, nil
38267	// {
38268	//   "description": "Gets one order by ID.",
38269	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orders/{id}",
38270	//   "httpMethod": "GET",
38271	//   "id": "dfareporting.orders.get",
38272	//   "parameterOrder": [
38273	//     "profileId",
38274	//     "projectId",
38275	//     "id"
38276	//   ],
38277	//   "parameters": {
38278	//     "id": {
38279	//       "description": "Order ID.",
38280	//       "format": "int64",
38281	//       "location": "path",
38282	//       "required": true,
38283	//       "type": "string"
38284	//     },
38285	//     "profileId": {
38286	//       "description": "User profile ID associated with this request.",
38287	//       "format": "int64",
38288	//       "location": "path",
38289	//       "required": true,
38290	//       "type": "string"
38291	//     },
38292	//     "projectId": {
38293	//       "description": "Project ID for orders.",
38294	//       "format": "int64",
38295	//       "location": "path",
38296	//       "required": true,
38297	//       "type": "string"
38298	//     }
38299	//   },
38300	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orders/{id}",
38301	//   "response": {
38302	//     "$ref": "Order"
38303	//   },
38304	//   "scopes": [
38305	//     "https://www.googleapis.com/auth/dfatrafficking"
38306	//   ]
38307	// }
38308
38309}
38310
38311// method id "dfareporting.orders.list":
38312
38313type OrdersListCall struct {
38314	s            *Service
38315	profileId    int64
38316	projectId    int64
38317	urlParams_   gensupport.URLParams
38318	ifNoneMatch_ string
38319	ctx_         context.Context
38320	header_      http.Header
38321}
38322
38323// List: Retrieves a list of orders, possibly filtered. This method
38324// supports paging.
38325//
38326// - profileId: User profile ID associated with this request.
38327// - projectId: Project ID for orders.
38328func (r *OrdersService) List(profileId int64, projectId int64) *OrdersListCall {
38329	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38330	c.profileId = profileId
38331	c.projectId = projectId
38332	return c
38333}
38334
38335// Ids sets the optional parameter "ids": Select only orders with these
38336// IDs.
38337func (c *OrdersListCall) Ids(ids ...int64) *OrdersListCall {
38338	var ids_ []string
38339	for _, v := range ids {
38340		ids_ = append(ids_, fmt.Sprint(v))
38341	}
38342	c.urlParams_.SetMulti("ids", ids_)
38343	return c
38344}
38345
38346// MaxResults sets the optional parameter "maxResults": Maximum number
38347// of results to return.
38348func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
38349	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
38350	return c
38351}
38352
38353// PageToken sets the optional parameter "pageToken": Value of the
38354// nextPageToken from the previous result page.
38355func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
38356	c.urlParams_.Set("pageToken", pageToken)
38357	return c
38358}
38359
38360// SearchString sets the optional parameter "searchString": Allows
38361// searching for orders by name or ID. Wildcards (*) are allowed. For
38362// example, "order*2015" will return orders with names like "order June
38363// 2015", "order April 2015", or simply "order 2015". Most of the
38364// searches also add wildcards implicitly at the start and the end of
38365// the search string. For example, a search string of "order" will match
38366// orders with name "my order", "order 2015", or simply "order".
38367func (c *OrdersListCall) SearchString(searchString string) *OrdersListCall {
38368	c.urlParams_.Set("searchString", searchString)
38369	return c
38370}
38371
38372// SiteId sets the optional parameter "siteId": Select only orders that
38373// are associated with these site IDs.
38374func (c *OrdersListCall) SiteId(siteId ...int64) *OrdersListCall {
38375	var siteId_ []string
38376	for _, v := range siteId {
38377		siteId_ = append(siteId_, fmt.Sprint(v))
38378	}
38379	c.urlParams_.SetMulti("siteId", siteId_)
38380	return c
38381}
38382
38383// SortField sets the optional parameter "sortField": Field by which to
38384// sort the list.
38385//
38386// Possible values:
38387//   "ID" (default)
38388//   "NAME"
38389func (c *OrdersListCall) SortField(sortField string) *OrdersListCall {
38390	c.urlParams_.Set("sortField", sortField)
38391	return c
38392}
38393
38394// SortOrder sets the optional parameter "sortOrder": Order of sorted
38395// results.
38396//
38397// Possible values:
38398//   "ASCENDING" (default)
38399//   "DESCENDING"
38400func (c *OrdersListCall) SortOrder(sortOrder string) *OrdersListCall {
38401	c.urlParams_.Set("sortOrder", sortOrder)
38402	return c
38403}
38404
38405// Fields allows partial responses to be retrieved. See
38406// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38407// for more information.
38408func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
38409	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38410	return c
38411}
38412
38413// IfNoneMatch sets the optional parameter which makes the operation
38414// fail if the object's ETag matches the given value. This is useful for
38415// getting updates only after the object has changed since the last
38416// request. Use googleapi.IsNotModified to check whether the response
38417// error from Do is the result of In-None-Match.
38418func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
38419	c.ifNoneMatch_ = entityTag
38420	return c
38421}
38422
38423// Context sets the context to be used in this call's Do method. Any
38424// pending HTTP request will be aborted if the provided context is
38425// canceled.
38426func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
38427	c.ctx_ = ctx
38428	return c
38429}
38430
38431// Header returns an http.Header that can be modified by the caller to
38432// add HTTP headers to the request.
38433func (c *OrdersListCall) Header() http.Header {
38434	if c.header_ == nil {
38435		c.header_ = make(http.Header)
38436	}
38437	return c.header_
38438}
38439
38440func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
38441	reqHeaders := make(http.Header)
38442	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38443	for k, v := range c.header_ {
38444		reqHeaders[k] = v
38445	}
38446	reqHeaders.Set("User-Agent", c.s.userAgent())
38447	if c.ifNoneMatch_ != "" {
38448		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38449	}
38450	var body io.Reader = nil
38451	c.urlParams_.Set("alt", alt)
38452	c.urlParams_.Set("prettyPrint", "false")
38453	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orders")
38454	urls += "?" + c.urlParams_.Encode()
38455	req, err := http.NewRequest("GET", urls, body)
38456	if err != nil {
38457		return nil, err
38458	}
38459	req.Header = reqHeaders
38460	googleapi.Expand(req.URL, map[string]string{
38461		"profileId": strconv.FormatInt(c.profileId, 10),
38462		"projectId": strconv.FormatInt(c.projectId, 10),
38463	})
38464	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38465}
38466
38467// Do executes the "dfareporting.orders.list" call.
38468// Exactly one of *OrdersListResponse or error will be non-nil. Any
38469// non-2xx status code is an error. Response headers are in either
38470// *OrdersListResponse.ServerResponse.Header or (if a response was
38471// returned at all) in error.(*googleapi.Error).Header. Use
38472// googleapi.IsNotModified to check whether the returned error was
38473// because http.StatusNotModified was returned.
38474func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
38475	gensupport.SetOptions(c.urlParams_, opts...)
38476	res, err := c.doRequest("json")
38477	if res != nil && res.StatusCode == http.StatusNotModified {
38478		if res.Body != nil {
38479			res.Body.Close()
38480		}
38481		return nil, &googleapi.Error{
38482			Code:   res.StatusCode,
38483			Header: res.Header,
38484		}
38485	}
38486	if err != nil {
38487		return nil, err
38488	}
38489	defer googleapi.CloseBody(res)
38490	if err := googleapi.CheckResponse(res); err != nil {
38491		return nil, err
38492	}
38493	ret := &OrdersListResponse{
38494		ServerResponse: googleapi.ServerResponse{
38495			Header:         res.Header,
38496			HTTPStatusCode: res.StatusCode,
38497		},
38498	}
38499	target := &ret
38500	if err := gensupport.DecodeResponse(target, res); err != nil {
38501		return nil, err
38502	}
38503	return ret, nil
38504	// {
38505	//   "description": "Retrieves a list of orders, possibly filtered. This method supports paging.",
38506	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orders",
38507	//   "httpMethod": "GET",
38508	//   "id": "dfareporting.orders.list",
38509	//   "parameterOrder": [
38510	//     "profileId",
38511	//     "projectId"
38512	//   ],
38513	//   "parameters": {
38514	//     "ids": {
38515	//       "description": "Select only orders with these IDs.",
38516	//       "format": "int64",
38517	//       "location": "query",
38518	//       "repeated": true,
38519	//       "type": "string"
38520	//     },
38521	//     "maxResults": {
38522	//       "default": "1000",
38523	//       "description": "Maximum number of results to return.",
38524	//       "format": "int32",
38525	//       "location": "query",
38526	//       "maximum": "1000",
38527	//       "minimum": "0",
38528	//       "type": "integer"
38529	//     },
38530	//     "pageToken": {
38531	//       "description": "Value of the nextPageToken from the previous result page.",
38532	//       "location": "query",
38533	//       "type": "string"
38534	//     },
38535	//     "profileId": {
38536	//       "description": "User profile ID associated with this request.",
38537	//       "format": "int64",
38538	//       "location": "path",
38539	//       "required": true,
38540	//       "type": "string"
38541	//     },
38542	//     "projectId": {
38543	//       "description": "Project ID for orders.",
38544	//       "format": "int64",
38545	//       "location": "path",
38546	//       "required": true,
38547	//       "type": "string"
38548	//     },
38549	//     "searchString": {
38550	//       "description": "Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, \"order*2015\" will return orders with names like \"order June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"order\" will match orders with name \"my order\", \"order 2015\", or simply \"order\".",
38551	//       "location": "query",
38552	//       "type": "string"
38553	//     },
38554	//     "siteId": {
38555	//       "description": "Select only orders that are associated with these site IDs.",
38556	//       "format": "int64",
38557	//       "location": "query",
38558	//       "repeated": true,
38559	//       "type": "string"
38560	//     },
38561	//     "sortField": {
38562	//       "default": "ID",
38563	//       "description": "Field by which to sort the list.",
38564	//       "enum": [
38565	//         "ID",
38566	//         "NAME"
38567	//       ],
38568	//       "enumDescriptions": [
38569	//         "",
38570	//         ""
38571	//       ],
38572	//       "location": "query",
38573	//       "type": "string"
38574	//     },
38575	//     "sortOrder": {
38576	//       "default": "ASCENDING",
38577	//       "description": "Order of sorted results.",
38578	//       "enum": [
38579	//         "ASCENDING",
38580	//         "DESCENDING"
38581	//       ],
38582	//       "enumDescriptions": [
38583	//         "",
38584	//         ""
38585	//       ],
38586	//       "location": "query",
38587	//       "type": "string"
38588	//     }
38589	//   },
38590	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/projects/{projectId}/orders",
38591	//   "response": {
38592	//     "$ref": "OrdersListResponse"
38593	//   },
38594	//   "scopes": [
38595	//     "https://www.googleapis.com/auth/dfatrafficking"
38596	//   ]
38597	// }
38598
38599}
38600
38601// Pages invokes f for each page of results.
38602// A non-nil error returned from f will halt the iteration.
38603// The provided context supersedes any context provided to the Context method.
38604func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
38605	c.ctx_ = ctx
38606	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
38607	for {
38608		x, err := c.Do()
38609		if err != nil {
38610			return err
38611		}
38612		if err := f(x); err != nil {
38613			return err
38614		}
38615		if x.NextPageToken == "" {
38616			return nil
38617		}
38618		c.PageToken(x.NextPageToken)
38619	}
38620}
38621
38622// method id "dfareporting.placementGroups.get":
38623
38624type PlacementGroupsGetCall struct {
38625	s            *Service
38626	profileId    int64
38627	id           int64
38628	urlParams_   gensupport.URLParams
38629	ifNoneMatch_ string
38630	ctx_         context.Context
38631	header_      http.Header
38632}
38633
38634// Get: Gets one placement group by ID.
38635//
38636// - id: Placement group ID.
38637// - profileId: User profile ID associated with this request.
38638func (r *PlacementGroupsService) Get(profileId int64, id int64) *PlacementGroupsGetCall {
38639	c := &PlacementGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38640	c.profileId = profileId
38641	c.id = id
38642	return c
38643}
38644
38645// Fields allows partial responses to be retrieved. See
38646// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38647// for more information.
38648func (c *PlacementGroupsGetCall) Fields(s ...googleapi.Field) *PlacementGroupsGetCall {
38649	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38650	return c
38651}
38652
38653// IfNoneMatch sets the optional parameter which makes the operation
38654// fail if the object's ETag matches the given value. This is useful for
38655// getting updates only after the object has changed since the last
38656// request. Use googleapi.IsNotModified to check whether the response
38657// error from Do is the result of In-None-Match.
38658func (c *PlacementGroupsGetCall) IfNoneMatch(entityTag string) *PlacementGroupsGetCall {
38659	c.ifNoneMatch_ = entityTag
38660	return c
38661}
38662
38663// Context sets the context to be used in this call's Do method. Any
38664// pending HTTP request will be aborted if the provided context is
38665// canceled.
38666func (c *PlacementGroupsGetCall) Context(ctx context.Context) *PlacementGroupsGetCall {
38667	c.ctx_ = ctx
38668	return c
38669}
38670
38671// Header returns an http.Header that can be modified by the caller to
38672// add HTTP headers to the request.
38673func (c *PlacementGroupsGetCall) Header() http.Header {
38674	if c.header_ == nil {
38675		c.header_ = make(http.Header)
38676	}
38677	return c.header_
38678}
38679
38680func (c *PlacementGroupsGetCall) doRequest(alt string) (*http.Response, error) {
38681	reqHeaders := make(http.Header)
38682	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38683	for k, v := range c.header_ {
38684		reqHeaders[k] = v
38685	}
38686	reqHeaders.Set("User-Agent", c.s.userAgent())
38687	if c.ifNoneMatch_ != "" {
38688		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38689	}
38690	var body io.Reader = nil
38691	c.urlParams_.Set("alt", alt)
38692	c.urlParams_.Set("prettyPrint", "false")
38693	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementGroups/{id}")
38694	urls += "?" + c.urlParams_.Encode()
38695	req, err := http.NewRequest("GET", urls, body)
38696	if err != nil {
38697		return nil, err
38698	}
38699	req.Header = reqHeaders
38700	googleapi.Expand(req.URL, map[string]string{
38701		"profileId": strconv.FormatInt(c.profileId, 10),
38702		"id":        strconv.FormatInt(c.id, 10),
38703	})
38704	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38705}
38706
38707// Do executes the "dfareporting.placementGroups.get" call.
38708// Exactly one of *PlacementGroup or error will be non-nil. Any non-2xx
38709// status code is an error. Response headers are in either
38710// *PlacementGroup.ServerResponse.Header or (if a response was returned
38711// at all) in error.(*googleapi.Error).Header. Use
38712// googleapi.IsNotModified to check whether the returned error was
38713// because http.StatusNotModified was returned.
38714func (c *PlacementGroupsGetCall) Do(opts ...googleapi.CallOption) (*PlacementGroup, error) {
38715	gensupport.SetOptions(c.urlParams_, opts...)
38716	res, err := c.doRequest("json")
38717	if res != nil && res.StatusCode == http.StatusNotModified {
38718		if res.Body != nil {
38719			res.Body.Close()
38720		}
38721		return nil, &googleapi.Error{
38722			Code:   res.StatusCode,
38723			Header: res.Header,
38724		}
38725	}
38726	if err != nil {
38727		return nil, err
38728	}
38729	defer googleapi.CloseBody(res)
38730	if err := googleapi.CheckResponse(res); err != nil {
38731		return nil, err
38732	}
38733	ret := &PlacementGroup{
38734		ServerResponse: googleapi.ServerResponse{
38735			Header:         res.Header,
38736			HTTPStatusCode: res.StatusCode,
38737		},
38738	}
38739	target := &ret
38740	if err := gensupport.DecodeResponse(target, res); err != nil {
38741		return nil, err
38742	}
38743	return ret, nil
38744	// {
38745	//   "description": "Gets one placement group by ID.",
38746	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups/{id}",
38747	//   "httpMethod": "GET",
38748	//   "id": "dfareporting.placementGroups.get",
38749	//   "parameterOrder": [
38750	//     "profileId",
38751	//     "id"
38752	//   ],
38753	//   "parameters": {
38754	//     "id": {
38755	//       "description": "Placement group ID.",
38756	//       "format": "int64",
38757	//       "location": "path",
38758	//       "required": true,
38759	//       "type": "string"
38760	//     },
38761	//     "profileId": {
38762	//       "description": "User profile ID associated with this request.",
38763	//       "format": "int64",
38764	//       "location": "path",
38765	//       "required": true,
38766	//       "type": "string"
38767	//     }
38768	//   },
38769	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups/{id}",
38770	//   "response": {
38771	//     "$ref": "PlacementGroup"
38772	//   },
38773	//   "scopes": [
38774	//     "https://www.googleapis.com/auth/dfatrafficking"
38775	//   ]
38776	// }
38777
38778}
38779
38780// method id "dfareporting.placementGroups.insert":
38781
38782type PlacementGroupsInsertCall struct {
38783	s              *Service
38784	profileId      int64
38785	placementgroup *PlacementGroup
38786	urlParams_     gensupport.URLParams
38787	ctx_           context.Context
38788	header_        http.Header
38789}
38790
38791// Insert: Inserts a new placement group.
38792//
38793// - profileId: User profile ID associated with this request.
38794func (r *PlacementGroupsService) Insert(profileId int64, placementgroup *PlacementGroup) *PlacementGroupsInsertCall {
38795	c := &PlacementGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38796	c.profileId = profileId
38797	c.placementgroup = placementgroup
38798	return c
38799}
38800
38801// Fields allows partial responses to be retrieved. See
38802// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38803// for more information.
38804func (c *PlacementGroupsInsertCall) Fields(s ...googleapi.Field) *PlacementGroupsInsertCall {
38805	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38806	return c
38807}
38808
38809// Context sets the context to be used in this call's Do method. Any
38810// pending HTTP request will be aborted if the provided context is
38811// canceled.
38812func (c *PlacementGroupsInsertCall) Context(ctx context.Context) *PlacementGroupsInsertCall {
38813	c.ctx_ = ctx
38814	return c
38815}
38816
38817// Header returns an http.Header that can be modified by the caller to
38818// add HTTP headers to the request.
38819func (c *PlacementGroupsInsertCall) Header() http.Header {
38820	if c.header_ == nil {
38821		c.header_ = make(http.Header)
38822	}
38823	return c.header_
38824}
38825
38826func (c *PlacementGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
38827	reqHeaders := make(http.Header)
38828	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38829	for k, v := range c.header_ {
38830		reqHeaders[k] = v
38831	}
38832	reqHeaders.Set("User-Agent", c.s.userAgent())
38833	var body io.Reader = nil
38834	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementgroup)
38835	if err != nil {
38836		return nil, err
38837	}
38838	reqHeaders.Set("Content-Type", "application/json")
38839	c.urlParams_.Set("alt", alt)
38840	c.urlParams_.Set("prettyPrint", "false")
38841	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementGroups")
38842	urls += "?" + c.urlParams_.Encode()
38843	req, err := http.NewRequest("POST", urls, body)
38844	if err != nil {
38845		return nil, err
38846	}
38847	req.Header = reqHeaders
38848	googleapi.Expand(req.URL, map[string]string{
38849		"profileId": strconv.FormatInt(c.profileId, 10),
38850	})
38851	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38852}
38853
38854// Do executes the "dfareporting.placementGroups.insert" call.
38855// Exactly one of *PlacementGroup or error will be non-nil. Any non-2xx
38856// status code is an error. Response headers are in either
38857// *PlacementGroup.ServerResponse.Header or (if a response was returned
38858// at all) in error.(*googleapi.Error).Header. Use
38859// googleapi.IsNotModified to check whether the returned error was
38860// because http.StatusNotModified was returned.
38861func (c *PlacementGroupsInsertCall) Do(opts ...googleapi.CallOption) (*PlacementGroup, error) {
38862	gensupport.SetOptions(c.urlParams_, opts...)
38863	res, err := c.doRequest("json")
38864	if res != nil && res.StatusCode == http.StatusNotModified {
38865		if res.Body != nil {
38866			res.Body.Close()
38867		}
38868		return nil, &googleapi.Error{
38869			Code:   res.StatusCode,
38870			Header: res.Header,
38871		}
38872	}
38873	if err != nil {
38874		return nil, err
38875	}
38876	defer googleapi.CloseBody(res)
38877	if err := googleapi.CheckResponse(res); err != nil {
38878		return nil, err
38879	}
38880	ret := &PlacementGroup{
38881		ServerResponse: googleapi.ServerResponse{
38882			Header:         res.Header,
38883			HTTPStatusCode: res.StatusCode,
38884		},
38885	}
38886	target := &ret
38887	if err := gensupport.DecodeResponse(target, res); err != nil {
38888		return nil, err
38889	}
38890	return ret, nil
38891	// {
38892	//   "description": "Inserts a new placement group.",
38893	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups",
38894	//   "httpMethod": "POST",
38895	//   "id": "dfareporting.placementGroups.insert",
38896	//   "parameterOrder": [
38897	//     "profileId"
38898	//   ],
38899	//   "parameters": {
38900	//     "profileId": {
38901	//       "description": "User profile ID associated with this request.",
38902	//       "format": "int64",
38903	//       "location": "path",
38904	//       "required": true,
38905	//       "type": "string"
38906	//     }
38907	//   },
38908	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups",
38909	//   "request": {
38910	//     "$ref": "PlacementGroup"
38911	//   },
38912	//   "response": {
38913	//     "$ref": "PlacementGroup"
38914	//   },
38915	//   "scopes": [
38916	//     "https://www.googleapis.com/auth/dfatrafficking"
38917	//   ]
38918	// }
38919
38920}
38921
38922// method id "dfareporting.placementGroups.list":
38923
38924type PlacementGroupsListCall struct {
38925	s            *Service
38926	profileId    int64
38927	urlParams_   gensupport.URLParams
38928	ifNoneMatch_ string
38929	ctx_         context.Context
38930	header_      http.Header
38931}
38932
38933// List: Retrieves a list of placement groups, possibly filtered. This
38934// method supports paging.
38935//
38936// - profileId: User profile ID associated with this request.
38937func (r *PlacementGroupsService) List(profileId int64) *PlacementGroupsListCall {
38938	c := &PlacementGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38939	c.profileId = profileId
38940	return c
38941}
38942
38943// AdvertiserIds sets the optional parameter "advertiserIds": Select
38944// only placement groups that belong to these advertisers.
38945func (c *PlacementGroupsListCall) AdvertiserIds(advertiserIds ...int64) *PlacementGroupsListCall {
38946	var advertiserIds_ []string
38947	for _, v := range advertiserIds {
38948		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
38949	}
38950	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
38951	return c
38952}
38953
38954// Archived sets the optional parameter "archived": Select only archived
38955// placements. Don't set this field to select both archived and
38956// non-archived placements.
38957func (c *PlacementGroupsListCall) Archived(archived bool) *PlacementGroupsListCall {
38958	c.urlParams_.Set("archived", fmt.Sprint(archived))
38959	return c
38960}
38961
38962// CampaignIds sets the optional parameter "campaignIds": Select only
38963// placement groups that belong to these campaigns.
38964func (c *PlacementGroupsListCall) CampaignIds(campaignIds ...int64) *PlacementGroupsListCall {
38965	var campaignIds_ []string
38966	for _, v := range campaignIds {
38967		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
38968	}
38969	c.urlParams_.SetMulti("campaignIds", campaignIds_)
38970	return c
38971}
38972
38973// ContentCategoryIds sets the optional parameter "contentCategoryIds":
38974// Select only placement groups that are associated with these content
38975// categories.
38976func (c *PlacementGroupsListCall) ContentCategoryIds(contentCategoryIds ...int64) *PlacementGroupsListCall {
38977	var contentCategoryIds_ []string
38978	for _, v := range contentCategoryIds {
38979		contentCategoryIds_ = append(contentCategoryIds_, fmt.Sprint(v))
38980	}
38981	c.urlParams_.SetMulti("contentCategoryIds", contentCategoryIds_)
38982	return c
38983}
38984
38985// DirectorySiteIds sets the optional parameter "directorySiteIds":
38986// Select only placement groups that are associated with these directory
38987// sites.
38988func (c *PlacementGroupsListCall) DirectorySiteIds(directorySiteIds ...int64) *PlacementGroupsListCall {
38989	var directorySiteIds_ []string
38990	for _, v := range directorySiteIds {
38991		directorySiteIds_ = append(directorySiteIds_, fmt.Sprint(v))
38992	}
38993	c.urlParams_.SetMulti("directorySiteIds", directorySiteIds_)
38994	return c
38995}
38996
38997// Ids sets the optional parameter "ids": Select only placement groups
38998// with these IDs.
38999func (c *PlacementGroupsListCall) Ids(ids ...int64) *PlacementGroupsListCall {
39000	var ids_ []string
39001	for _, v := range ids {
39002		ids_ = append(ids_, fmt.Sprint(v))
39003	}
39004	c.urlParams_.SetMulti("ids", ids_)
39005	return c
39006}
39007
39008// MaxEndDate sets the optional parameter "maxEndDate": Select only
39009// placements or placement groups whose end date is on or before the
39010// specified maxEndDate. The date should be formatted as "yyyy-MM-dd".
39011func (c *PlacementGroupsListCall) MaxEndDate(maxEndDate string) *PlacementGroupsListCall {
39012	c.urlParams_.Set("maxEndDate", maxEndDate)
39013	return c
39014}
39015
39016// MaxResults sets the optional parameter "maxResults": Maximum number
39017// of results to return.
39018func (c *PlacementGroupsListCall) MaxResults(maxResults int64) *PlacementGroupsListCall {
39019	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
39020	return c
39021}
39022
39023// MaxStartDate sets the optional parameter "maxStartDate": Select only
39024// placements or placement groups whose start date is on or before the
39025// specified maxStartDate. The date should be formatted as "yyyy-MM-dd".
39026func (c *PlacementGroupsListCall) MaxStartDate(maxStartDate string) *PlacementGroupsListCall {
39027	c.urlParams_.Set("maxStartDate", maxStartDate)
39028	return c
39029}
39030
39031// MinEndDate sets the optional parameter "minEndDate": Select only
39032// placements or placement groups whose end date is on or after the
39033// specified minEndDate. The date should be formatted as "yyyy-MM-dd".
39034func (c *PlacementGroupsListCall) MinEndDate(minEndDate string) *PlacementGroupsListCall {
39035	c.urlParams_.Set("minEndDate", minEndDate)
39036	return c
39037}
39038
39039// MinStartDate sets the optional parameter "minStartDate": Select only
39040// placements or placement groups whose start date is on or after the
39041// specified minStartDate. The date should be formatted as "yyyy-MM-dd".
39042func (c *PlacementGroupsListCall) MinStartDate(minStartDate string) *PlacementGroupsListCall {
39043	c.urlParams_.Set("minStartDate", minStartDate)
39044	return c
39045}
39046
39047// PageToken sets the optional parameter "pageToken": Value of the
39048// nextPageToken from the previous result page.
39049func (c *PlacementGroupsListCall) PageToken(pageToken string) *PlacementGroupsListCall {
39050	c.urlParams_.Set("pageToken", pageToken)
39051	return c
39052}
39053
39054// PlacementGroupType sets the optional parameter "placementGroupType":
39055// Select only placement groups belonging with this group type. A
39056// package is a simple group of placements that acts as a single pricing
39057// point for a group of tags. A roadblock is a group of placements that
39058// not only acts as a single pricing point but also assumes that all the
39059// tags in it will be served at the same time. A roadblock requires one
39060// of its assigned placements to be marked as primary for reporting.
39061//
39062// Possible values:
39063//   "PLACEMENT_PACKAGE"
39064//   "PLACEMENT_ROADBLOCK"
39065func (c *PlacementGroupsListCall) PlacementGroupType(placementGroupType string) *PlacementGroupsListCall {
39066	c.urlParams_.Set("placementGroupType", placementGroupType)
39067	return c
39068}
39069
39070// PlacementStrategyIds sets the optional parameter
39071// "placementStrategyIds": Select only placement groups that are
39072// associated with these placement strategies.
39073func (c *PlacementGroupsListCall) PlacementStrategyIds(placementStrategyIds ...int64) *PlacementGroupsListCall {
39074	var placementStrategyIds_ []string
39075	for _, v := range placementStrategyIds {
39076		placementStrategyIds_ = append(placementStrategyIds_, fmt.Sprint(v))
39077	}
39078	c.urlParams_.SetMulti("placementStrategyIds", placementStrategyIds_)
39079	return c
39080}
39081
39082// PricingTypes sets the optional parameter "pricingTypes": Select only
39083// placement groups with these pricing types.
39084//
39085// Possible values:
39086//   "PRICING_TYPE_CPM"
39087//   "PRICING_TYPE_CPC"
39088//   "PRICING_TYPE_CPA"
39089//   "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
39090//   "PRICING_TYPE_FLAT_RATE_CLICKS"
39091//   "PRICING_TYPE_CPM_ACTIVEVIEW"
39092func (c *PlacementGroupsListCall) PricingTypes(pricingTypes ...string) *PlacementGroupsListCall {
39093	c.urlParams_.SetMulti("pricingTypes", append([]string{}, pricingTypes...))
39094	return c
39095}
39096
39097// SearchString sets the optional parameter "searchString": Allows
39098// searching for placement groups by name or ID. Wildcards (*) are
39099// allowed. For example, "placement*2015" will return placement groups
39100// with names like "placement group June 2015", "placement group May
39101// 2015", or simply "placements 2015". Most of the searches also add
39102// wildcards implicitly at the start and the end of the search string.
39103// For example, a search string of "placementgroup" will match placement
39104// groups with name "my placementgroup", "placementgroup 2015", or
39105// simply "placementgroup".
39106func (c *PlacementGroupsListCall) SearchString(searchString string) *PlacementGroupsListCall {
39107	c.urlParams_.Set("searchString", searchString)
39108	return c
39109}
39110
39111// SiteIds sets the optional parameter "siteIds": Select only placement
39112// groups that are associated with these sites.
39113func (c *PlacementGroupsListCall) SiteIds(siteIds ...int64) *PlacementGroupsListCall {
39114	var siteIds_ []string
39115	for _, v := range siteIds {
39116		siteIds_ = append(siteIds_, fmt.Sprint(v))
39117	}
39118	c.urlParams_.SetMulti("siteIds", siteIds_)
39119	return c
39120}
39121
39122// SortField sets the optional parameter "sortField": Field by which to
39123// sort the list.
39124//
39125// Possible values:
39126//   "ID" (default)
39127//   "NAME"
39128func (c *PlacementGroupsListCall) SortField(sortField string) *PlacementGroupsListCall {
39129	c.urlParams_.Set("sortField", sortField)
39130	return c
39131}
39132
39133// SortOrder sets the optional parameter "sortOrder": Order of sorted
39134// results.
39135//
39136// Possible values:
39137//   "ASCENDING" (default)
39138//   "DESCENDING"
39139func (c *PlacementGroupsListCall) SortOrder(sortOrder string) *PlacementGroupsListCall {
39140	c.urlParams_.Set("sortOrder", sortOrder)
39141	return c
39142}
39143
39144// Fields allows partial responses to be retrieved. See
39145// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39146// for more information.
39147func (c *PlacementGroupsListCall) Fields(s ...googleapi.Field) *PlacementGroupsListCall {
39148	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39149	return c
39150}
39151
39152// IfNoneMatch sets the optional parameter which makes the operation
39153// fail if the object's ETag matches the given value. This is useful for
39154// getting updates only after the object has changed since the last
39155// request. Use googleapi.IsNotModified to check whether the response
39156// error from Do is the result of In-None-Match.
39157func (c *PlacementGroupsListCall) IfNoneMatch(entityTag string) *PlacementGroupsListCall {
39158	c.ifNoneMatch_ = entityTag
39159	return c
39160}
39161
39162// Context sets the context to be used in this call's Do method. Any
39163// pending HTTP request will be aborted if the provided context is
39164// canceled.
39165func (c *PlacementGroupsListCall) Context(ctx context.Context) *PlacementGroupsListCall {
39166	c.ctx_ = ctx
39167	return c
39168}
39169
39170// Header returns an http.Header that can be modified by the caller to
39171// add HTTP headers to the request.
39172func (c *PlacementGroupsListCall) Header() http.Header {
39173	if c.header_ == nil {
39174		c.header_ = make(http.Header)
39175	}
39176	return c.header_
39177}
39178
39179func (c *PlacementGroupsListCall) doRequest(alt string) (*http.Response, error) {
39180	reqHeaders := make(http.Header)
39181	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39182	for k, v := range c.header_ {
39183		reqHeaders[k] = v
39184	}
39185	reqHeaders.Set("User-Agent", c.s.userAgent())
39186	if c.ifNoneMatch_ != "" {
39187		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39188	}
39189	var body io.Reader = nil
39190	c.urlParams_.Set("alt", alt)
39191	c.urlParams_.Set("prettyPrint", "false")
39192	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementGroups")
39193	urls += "?" + c.urlParams_.Encode()
39194	req, err := http.NewRequest("GET", urls, body)
39195	if err != nil {
39196		return nil, err
39197	}
39198	req.Header = reqHeaders
39199	googleapi.Expand(req.URL, map[string]string{
39200		"profileId": strconv.FormatInt(c.profileId, 10),
39201	})
39202	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39203}
39204
39205// Do executes the "dfareporting.placementGroups.list" call.
39206// Exactly one of *PlacementGroupsListResponse or error will be non-nil.
39207// Any non-2xx status code is an error. Response headers are in either
39208// *PlacementGroupsListResponse.ServerResponse.Header or (if a response
39209// was returned at all) in error.(*googleapi.Error).Header. Use
39210// googleapi.IsNotModified to check whether the returned error was
39211// because http.StatusNotModified was returned.
39212func (c *PlacementGroupsListCall) Do(opts ...googleapi.CallOption) (*PlacementGroupsListResponse, error) {
39213	gensupport.SetOptions(c.urlParams_, opts...)
39214	res, err := c.doRequest("json")
39215	if res != nil && res.StatusCode == http.StatusNotModified {
39216		if res.Body != nil {
39217			res.Body.Close()
39218		}
39219		return nil, &googleapi.Error{
39220			Code:   res.StatusCode,
39221			Header: res.Header,
39222		}
39223	}
39224	if err != nil {
39225		return nil, err
39226	}
39227	defer googleapi.CloseBody(res)
39228	if err := googleapi.CheckResponse(res); err != nil {
39229		return nil, err
39230	}
39231	ret := &PlacementGroupsListResponse{
39232		ServerResponse: googleapi.ServerResponse{
39233			Header:         res.Header,
39234			HTTPStatusCode: res.StatusCode,
39235		},
39236	}
39237	target := &ret
39238	if err := gensupport.DecodeResponse(target, res); err != nil {
39239		return nil, err
39240	}
39241	return ret, nil
39242	// {
39243	//   "description": "Retrieves a list of placement groups, possibly filtered. This method supports paging.",
39244	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups",
39245	//   "httpMethod": "GET",
39246	//   "id": "dfareporting.placementGroups.list",
39247	//   "parameterOrder": [
39248	//     "profileId"
39249	//   ],
39250	//   "parameters": {
39251	//     "advertiserIds": {
39252	//       "description": "Select only placement groups that belong to these advertisers.",
39253	//       "format": "int64",
39254	//       "location": "query",
39255	//       "repeated": true,
39256	//       "type": "string"
39257	//     },
39258	//     "archived": {
39259	//       "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.",
39260	//       "location": "query",
39261	//       "type": "boolean"
39262	//     },
39263	//     "campaignIds": {
39264	//       "description": "Select only placement groups that belong to these campaigns.",
39265	//       "format": "int64",
39266	//       "location": "query",
39267	//       "repeated": true,
39268	//       "type": "string"
39269	//     },
39270	//     "contentCategoryIds": {
39271	//       "description": "Select only placement groups that are associated with these content categories.",
39272	//       "format": "int64",
39273	//       "location": "query",
39274	//       "repeated": true,
39275	//       "type": "string"
39276	//     },
39277	//     "directorySiteIds": {
39278	//       "description": "Select only placement groups that are associated with these directory sites.",
39279	//       "format": "int64",
39280	//       "location": "query",
39281	//       "repeated": true,
39282	//       "type": "string"
39283	//     },
39284	//     "ids": {
39285	//       "description": "Select only placement groups with these IDs.",
39286	//       "format": "int64",
39287	//       "location": "query",
39288	//       "repeated": true,
39289	//       "type": "string"
39290	//     },
39291	//     "maxEndDate": {
39292	//       "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".",
39293	//       "location": "query",
39294	//       "type": "string"
39295	//     },
39296	//     "maxResults": {
39297	//       "default": "800",
39298	//       "description": "Maximum number of results to return.",
39299	//       "format": "int32",
39300	//       "location": "query",
39301	//       "maximum": "800",
39302	//       "minimum": "0",
39303	//       "type": "integer"
39304	//     },
39305	//     "maxStartDate": {
39306	//       "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".",
39307	//       "location": "query",
39308	//       "type": "string"
39309	//     },
39310	//     "minEndDate": {
39311	//       "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".",
39312	//       "location": "query",
39313	//       "type": "string"
39314	//     },
39315	//     "minStartDate": {
39316	//       "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".",
39317	//       "location": "query",
39318	//       "type": "string"
39319	//     },
39320	//     "pageToken": {
39321	//       "description": "Value of the nextPageToken from the previous result page.",
39322	//       "location": "query",
39323	//       "type": "string"
39324	//     },
39325	//     "placementGroupType": {
39326	//       "description": "Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.",
39327	//       "enum": [
39328	//         "PLACEMENT_PACKAGE",
39329	//         "PLACEMENT_ROADBLOCK"
39330	//       ],
39331	//       "enumDescriptions": [
39332	//         "",
39333	//         ""
39334	//       ],
39335	//       "location": "query",
39336	//       "type": "string"
39337	//     },
39338	//     "placementStrategyIds": {
39339	//       "description": "Select only placement groups that are associated with these placement strategies.",
39340	//       "format": "int64",
39341	//       "location": "query",
39342	//       "repeated": true,
39343	//       "type": "string"
39344	//     },
39345	//     "pricingTypes": {
39346	//       "description": "Select only placement groups with these pricing types.",
39347	//       "enum": [
39348	//         "PRICING_TYPE_CPM",
39349	//         "PRICING_TYPE_CPC",
39350	//         "PRICING_TYPE_CPA",
39351	//         "PRICING_TYPE_FLAT_RATE_IMPRESSIONS",
39352	//         "PRICING_TYPE_FLAT_RATE_CLICKS",
39353	//         "PRICING_TYPE_CPM_ACTIVEVIEW"
39354	//       ],
39355	//       "enumDescriptions": [
39356	//         "",
39357	//         "",
39358	//         "",
39359	//         "",
39360	//         "",
39361	//         ""
39362	//       ],
39363	//       "location": "query",
39364	//       "repeated": true,
39365	//       "type": "string"
39366	//     },
39367	//     "profileId": {
39368	//       "description": "User profile ID associated with this request.",
39369	//       "format": "int64",
39370	//       "location": "path",
39371	//       "required": true,
39372	//       "type": "string"
39373	//     },
39374	//     "searchString": {
39375	//       "description": "Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placement groups with names like \"placement group June 2015\", \"placement group May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementgroup\" will match placement groups with name \"my placementgroup\", \"placementgroup 2015\", or simply \"placementgroup\".",
39376	//       "location": "query",
39377	//       "type": "string"
39378	//     },
39379	//     "siteIds": {
39380	//       "description": "Select only placement groups that are associated with these sites.",
39381	//       "format": "int64",
39382	//       "location": "query",
39383	//       "repeated": true,
39384	//       "type": "string"
39385	//     },
39386	//     "sortField": {
39387	//       "default": "ID",
39388	//       "description": "Field by which to sort the list.",
39389	//       "enum": [
39390	//         "ID",
39391	//         "NAME"
39392	//       ],
39393	//       "enumDescriptions": [
39394	//         "",
39395	//         ""
39396	//       ],
39397	//       "location": "query",
39398	//       "type": "string"
39399	//     },
39400	//     "sortOrder": {
39401	//       "default": "ASCENDING",
39402	//       "description": "Order of sorted results.",
39403	//       "enum": [
39404	//         "ASCENDING",
39405	//         "DESCENDING"
39406	//       ],
39407	//       "enumDescriptions": [
39408	//         "",
39409	//         ""
39410	//       ],
39411	//       "location": "query",
39412	//       "type": "string"
39413	//     }
39414	//   },
39415	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups",
39416	//   "response": {
39417	//     "$ref": "PlacementGroupsListResponse"
39418	//   },
39419	//   "scopes": [
39420	//     "https://www.googleapis.com/auth/dfatrafficking"
39421	//   ]
39422	// }
39423
39424}
39425
39426// Pages invokes f for each page of results.
39427// A non-nil error returned from f will halt the iteration.
39428// The provided context supersedes any context provided to the Context method.
39429func (c *PlacementGroupsListCall) Pages(ctx context.Context, f func(*PlacementGroupsListResponse) error) error {
39430	c.ctx_ = ctx
39431	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
39432	for {
39433		x, err := c.Do()
39434		if err != nil {
39435			return err
39436		}
39437		if err := f(x); err != nil {
39438			return err
39439		}
39440		if x.NextPageToken == "" {
39441			return nil
39442		}
39443		c.PageToken(x.NextPageToken)
39444	}
39445}
39446
39447// method id "dfareporting.placementGroups.patch":
39448
39449type PlacementGroupsPatchCall struct {
39450	s              *Service
39451	profileId      int64
39452	placementgroup *PlacementGroup
39453	urlParams_     gensupport.URLParams
39454	ctx_           context.Context
39455	header_        http.Header
39456}
39457
39458// Patch: Updates an existing placement group. This method supports
39459// patch semantics.
39460//
39461// - id: PlacementGroup ID.
39462// - profileId: User profile ID associated with this request.
39463func (r *PlacementGroupsService) Patch(profileId int64, id int64, placementgroup *PlacementGroup) *PlacementGroupsPatchCall {
39464	c := &PlacementGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39465	c.profileId = profileId
39466	c.urlParams_.Set("id", fmt.Sprint(id))
39467	c.placementgroup = placementgroup
39468	return c
39469}
39470
39471// Fields allows partial responses to be retrieved. See
39472// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39473// for more information.
39474func (c *PlacementGroupsPatchCall) Fields(s ...googleapi.Field) *PlacementGroupsPatchCall {
39475	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39476	return c
39477}
39478
39479// Context sets the context to be used in this call's Do method. Any
39480// pending HTTP request will be aborted if the provided context is
39481// canceled.
39482func (c *PlacementGroupsPatchCall) Context(ctx context.Context) *PlacementGroupsPatchCall {
39483	c.ctx_ = ctx
39484	return c
39485}
39486
39487// Header returns an http.Header that can be modified by the caller to
39488// add HTTP headers to the request.
39489func (c *PlacementGroupsPatchCall) Header() http.Header {
39490	if c.header_ == nil {
39491		c.header_ = make(http.Header)
39492	}
39493	return c.header_
39494}
39495
39496func (c *PlacementGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
39497	reqHeaders := make(http.Header)
39498	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39499	for k, v := range c.header_ {
39500		reqHeaders[k] = v
39501	}
39502	reqHeaders.Set("User-Agent", c.s.userAgent())
39503	var body io.Reader = nil
39504	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementgroup)
39505	if err != nil {
39506		return nil, err
39507	}
39508	reqHeaders.Set("Content-Type", "application/json")
39509	c.urlParams_.Set("alt", alt)
39510	c.urlParams_.Set("prettyPrint", "false")
39511	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementGroups")
39512	urls += "?" + c.urlParams_.Encode()
39513	req, err := http.NewRequest("PATCH", urls, body)
39514	if err != nil {
39515		return nil, err
39516	}
39517	req.Header = reqHeaders
39518	googleapi.Expand(req.URL, map[string]string{
39519		"profileId": strconv.FormatInt(c.profileId, 10),
39520	})
39521	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39522}
39523
39524// Do executes the "dfareporting.placementGroups.patch" call.
39525// Exactly one of *PlacementGroup or error will be non-nil. Any non-2xx
39526// status code is an error. Response headers are in either
39527// *PlacementGroup.ServerResponse.Header or (if a response was returned
39528// at all) in error.(*googleapi.Error).Header. Use
39529// googleapi.IsNotModified to check whether the returned error was
39530// because http.StatusNotModified was returned.
39531func (c *PlacementGroupsPatchCall) Do(opts ...googleapi.CallOption) (*PlacementGroup, error) {
39532	gensupport.SetOptions(c.urlParams_, opts...)
39533	res, err := c.doRequest("json")
39534	if res != nil && res.StatusCode == http.StatusNotModified {
39535		if res.Body != nil {
39536			res.Body.Close()
39537		}
39538		return nil, &googleapi.Error{
39539			Code:   res.StatusCode,
39540			Header: res.Header,
39541		}
39542	}
39543	if err != nil {
39544		return nil, err
39545	}
39546	defer googleapi.CloseBody(res)
39547	if err := googleapi.CheckResponse(res); err != nil {
39548		return nil, err
39549	}
39550	ret := &PlacementGroup{
39551		ServerResponse: googleapi.ServerResponse{
39552			Header:         res.Header,
39553			HTTPStatusCode: res.StatusCode,
39554		},
39555	}
39556	target := &ret
39557	if err := gensupport.DecodeResponse(target, res); err != nil {
39558		return nil, err
39559	}
39560	return ret, nil
39561	// {
39562	//   "description": "Updates an existing placement group. This method supports patch semantics.",
39563	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups",
39564	//   "httpMethod": "PATCH",
39565	//   "id": "dfareporting.placementGroups.patch",
39566	//   "parameterOrder": [
39567	//     "profileId",
39568	//     "id"
39569	//   ],
39570	//   "parameters": {
39571	//     "id": {
39572	//       "description": "PlacementGroup ID.",
39573	//       "format": "int64",
39574	//       "location": "query",
39575	//       "required": true,
39576	//       "type": "string"
39577	//     },
39578	//     "profileId": {
39579	//       "description": "User profile ID associated with this request.",
39580	//       "format": "int64",
39581	//       "location": "path",
39582	//       "required": true,
39583	//       "type": "string"
39584	//     }
39585	//   },
39586	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups",
39587	//   "request": {
39588	//     "$ref": "PlacementGroup"
39589	//   },
39590	//   "response": {
39591	//     "$ref": "PlacementGroup"
39592	//   },
39593	//   "scopes": [
39594	//     "https://www.googleapis.com/auth/dfatrafficking"
39595	//   ]
39596	// }
39597
39598}
39599
39600// method id "dfareporting.placementGroups.update":
39601
39602type PlacementGroupsUpdateCall struct {
39603	s              *Service
39604	profileId      int64
39605	placementgroup *PlacementGroup
39606	urlParams_     gensupport.URLParams
39607	ctx_           context.Context
39608	header_        http.Header
39609}
39610
39611// Update: Updates an existing placement group.
39612//
39613// - profileId: User profile ID associated with this request.
39614func (r *PlacementGroupsService) Update(profileId int64, placementgroup *PlacementGroup) *PlacementGroupsUpdateCall {
39615	c := &PlacementGroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39616	c.profileId = profileId
39617	c.placementgroup = placementgroup
39618	return c
39619}
39620
39621// Fields allows partial responses to be retrieved. See
39622// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39623// for more information.
39624func (c *PlacementGroupsUpdateCall) Fields(s ...googleapi.Field) *PlacementGroupsUpdateCall {
39625	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39626	return c
39627}
39628
39629// Context sets the context to be used in this call's Do method. Any
39630// pending HTTP request will be aborted if the provided context is
39631// canceled.
39632func (c *PlacementGroupsUpdateCall) Context(ctx context.Context) *PlacementGroupsUpdateCall {
39633	c.ctx_ = ctx
39634	return c
39635}
39636
39637// Header returns an http.Header that can be modified by the caller to
39638// add HTTP headers to the request.
39639func (c *PlacementGroupsUpdateCall) Header() http.Header {
39640	if c.header_ == nil {
39641		c.header_ = make(http.Header)
39642	}
39643	return c.header_
39644}
39645
39646func (c *PlacementGroupsUpdateCall) doRequest(alt string) (*http.Response, error) {
39647	reqHeaders := make(http.Header)
39648	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39649	for k, v := range c.header_ {
39650		reqHeaders[k] = v
39651	}
39652	reqHeaders.Set("User-Agent", c.s.userAgent())
39653	var body io.Reader = nil
39654	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementgroup)
39655	if err != nil {
39656		return nil, err
39657	}
39658	reqHeaders.Set("Content-Type", "application/json")
39659	c.urlParams_.Set("alt", alt)
39660	c.urlParams_.Set("prettyPrint", "false")
39661	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementGroups")
39662	urls += "?" + c.urlParams_.Encode()
39663	req, err := http.NewRequest("PUT", urls, body)
39664	if err != nil {
39665		return nil, err
39666	}
39667	req.Header = reqHeaders
39668	googleapi.Expand(req.URL, map[string]string{
39669		"profileId": strconv.FormatInt(c.profileId, 10),
39670	})
39671	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39672}
39673
39674// Do executes the "dfareporting.placementGroups.update" call.
39675// Exactly one of *PlacementGroup or error will be non-nil. Any non-2xx
39676// status code is an error. Response headers are in either
39677// *PlacementGroup.ServerResponse.Header or (if a response was returned
39678// at all) in error.(*googleapi.Error).Header. Use
39679// googleapi.IsNotModified to check whether the returned error was
39680// because http.StatusNotModified was returned.
39681func (c *PlacementGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*PlacementGroup, error) {
39682	gensupport.SetOptions(c.urlParams_, opts...)
39683	res, err := c.doRequest("json")
39684	if res != nil && res.StatusCode == http.StatusNotModified {
39685		if res.Body != nil {
39686			res.Body.Close()
39687		}
39688		return nil, &googleapi.Error{
39689			Code:   res.StatusCode,
39690			Header: res.Header,
39691		}
39692	}
39693	if err != nil {
39694		return nil, err
39695	}
39696	defer googleapi.CloseBody(res)
39697	if err := googleapi.CheckResponse(res); err != nil {
39698		return nil, err
39699	}
39700	ret := &PlacementGroup{
39701		ServerResponse: googleapi.ServerResponse{
39702			Header:         res.Header,
39703			HTTPStatusCode: res.StatusCode,
39704		},
39705	}
39706	target := &ret
39707	if err := gensupport.DecodeResponse(target, res); err != nil {
39708		return nil, err
39709	}
39710	return ret, nil
39711	// {
39712	//   "description": "Updates an existing placement group.",
39713	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups",
39714	//   "httpMethod": "PUT",
39715	//   "id": "dfareporting.placementGroups.update",
39716	//   "parameterOrder": [
39717	//     "profileId"
39718	//   ],
39719	//   "parameters": {
39720	//     "profileId": {
39721	//       "description": "User profile ID associated with this request.",
39722	//       "format": "int64",
39723	//       "location": "path",
39724	//       "required": true,
39725	//       "type": "string"
39726	//     }
39727	//   },
39728	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementGroups",
39729	//   "request": {
39730	//     "$ref": "PlacementGroup"
39731	//   },
39732	//   "response": {
39733	//     "$ref": "PlacementGroup"
39734	//   },
39735	//   "scopes": [
39736	//     "https://www.googleapis.com/auth/dfatrafficking"
39737	//   ]
39738	// }
39739
39740}
39741
39742// method id "dfareporting.placementStrategies.delete":
39743
39744type PlacementStrategiesDeleteCall struct {
39745	s          *Service
39746	profileId  int64
39747	id         int64
39748	urlParams_ gensupport.URLParams
39749	ctx_       context.Context
39750	header_    http.Header
39751}
39752
39753// Delete: Deletes an existing placement strategy.
39754//
39755// - id: Placement strategy ID.
39756// - profileId: User profile ID associated with this request.
39757func (r *PlacementStrategiesService) Delete(profileId int64, id int64) *PlacementStrategiesDeleteCall {
39758	c := &PlacementStrategiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39759	c.profileId = profileId
39760	c.id = id
39761	return c
39762}
39763
39764// Fields allows partial responses to be retrieved. See
39765// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39766// for more information.
39767func (c *PlacementStrategiesDeleteCall) Fields(s ...googleapi.Field) *PlacementStrategiesDeleteCall {
39768	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39769	return c
39770}
39771
39772// Context sets the context to be used in this call's Do method. Any
39773// pending HTTP request will be aborted if the provided context is
39774// canceled.
39775func (c *PlacementStrategiesDeleteCall) Context(ctx context.Context) *PlacementStrategiesDeleteCall {
39776	c.ctx_ = ctx
39777	return c
39778}
39779
39780// Header returns an http.Header that can be modified by the caller to
39781// add HTTP headers to the request.
39782func (c *PlacementStrategiesDeleteCall) Header() http.Header {
39783	if c.header_ == nil {
39784		c.header_ = make(http.Header)
39785	}
39786	return c.header_
39787}
39788
39789func (c *PlacementStrategiesDeleteCall) doRequest(alt string) (*http.Response, error) {
39790	reqHeaders := make(http.Header)
39791	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39792	for k, v := range c.header_ {
39793		reqHeaders[k] = v
39794	}
39795	reqHeaders.Set("User-Agent", c.s.userAgent())
39796	var body io.Reader = nil
39797	c.urlParams_.Set("alt", alt)
39798	c.urlParams_.Set("prettyPrint", "false")
39799	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies/{id}")
39800	urls += "?" + c.urlParams_.Encode()
39801	req, err := http.NewRequest("DELETE", urls, body)
39802	if err != nil {
39803		return nil, err
39804	}
39805	req.Header = reqHeaders
39806	googleapi.Expand(req.URL, map[string]string{
39807		"profileId": strconv.FormatInt(c.profileId, 10),
39808		"id":        strconv.FormatInt(c.id, 10),
39809	})
39810	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39811}
39812
39813// Do executes the "dfareporting.placementStrategies.delete" call.
39814func (c *PlacementStrategiesDeleteCall) Do(opts ...googleapi.CallOption) error {
39815	gensupport.SetOptions(c.urlParams_, opts...)
39816	res, err := c.doRequest("json")
39817	if err != nil {
39818		return err
39819	}
39820	defer googleapi.CloseBody(res)
39821	if err := googleapi.CheckResponse(res); err != nil {
39822		return err
39823	}
39824	return nil
39825	// {
39826	//   "description": "Deletes an existing placement strategy.",
39827	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies/{id}",
39828	//   "httpMethod": "DELETE",
39829	//   "id": "dfareporting.placementStrategies.delete",
39830	//   "parameterOrder": [
39831	//     "profileId",
39832	//     "id"
39833	//   ],
39834	//   "parameters": {
39835	//     "id": {
39836	//       "description": "Placement strategy ID.",
39837	//       "format": "int64",
39838	//       "location": "path",
39839	//       "required": true,
39840	//       "type": "string"
39841	//     },
39842	//     "profileId": {
39843	//       "description": "User profile ID associated with this request.",
39844	//       "format": "int64",
39845	//       "location": "path",
39846	//       "required": true,
39847	//       "type": "string"
39848	//     }
39849	//   },
39850	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies/{id}",
39851	//   "scopes": [
39852	//     "https://www.googleapis.com/auth/dfatrafficking"
39853	//   ]
39854	// }
39855
39856}
39857
39858// method id "dfareporting.placementStrategies.get":
39859
39860type PlacementStrategiesGetCall struct {
39861	s            *Service
39862	profileId    int64
39863	id           int64
39864	urlParams_   gensupport.URLParams
39865	ifNoneMatch_ string
39866	ctx_         context.Context
39867	header_      http.Header
39868}
39869
39870// Get: Gets one placement strategy by ID.
39871//
39872// - id: Placement strategy ID.
39873// - profileId: User profile ID associated with this request.
39874func (r *PlacementStrategiesService) Get(profileId int64, id int64) *PlacementStrategiesGetCall {
39875	c := &PlacementStrategiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39876	c.profileId = profileId
39877	c.id = id
39878	return c
39879}
39880
39881// Fields allows partial responses to be retrieved. See
39882// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39883// for more information.
39884func (c *PlacementStrategiesGetCall) Fields(s ...googleapi.Field) *PlacementStrategiesGetCall {
39885	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39886	return c
39887}
39888
39889// IfNoneMatch sets the optional parameter which makes the operation
39890// fail if the object's ETag matches the given value. This is useful for
39891// getting updates only after the object has changed since the last
39892// request. Use googleapi.IsNotModified to check whether the response
39893// error from Do is the result of In-None-Match.
39894func (c *PlacementStrategiesGetCall) IfNoneMatch(entityTag string) *PlacementStrategiesGetCall {
39895	c.ifNoneMatch_ = entityTag
39896	return c
39897}
39898
39899// Context sets the context to be used in this call's Do method. Any
39900// pending HTTP request will be aborted if the provided context is
39901// canceled.
39902func (c *PlacementStrategiesGetCall) Context(ctx context.Context) *PlacementStrategiesGetCall {
39903	c.ctx_ = ctx
39904	return c
39905}
39906
39907// Header returns an http.Header that can be modified by the caller to
39908// add HTTP headers to the request.
39909func (c *PlacementStrategiesGetCall) Header() http.Header {
39910	if c.header_ == nil {
39911		c.header_ = make(http.Header)
39912	}
39913	return c.header_
39914}
39915
39916func (c *PlacementStrategiesGetCall) doRequest(alt string) (*http.Response, error) {
39917	reqHeaders := make(http.Header)
39918	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39919	for k, v := range c.header_ {
39920		reqHeaders[k] = v
39921	}
39922	reqHeaders.Set("User-Agent", c.s.userAgent())
39923	if c.ifNoneMatch_ != "" {
39924		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39925	}
39926	var body io.Reader = nil
39927	c.urlParams_.Set("alt", alt)
39928	c.urlParams_.Set("prettyPrint", "false")
39929	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies/{id}")
39930	urls += "?" + c.urlParams_.Encode()
39931	req, err := http.NewRequest("GET", urls, body)
39932	if err != nil {
39933		return nil, err
39934	}
39935	req.Header = reqHeaders
39936	googleapi.Expand(req.URL, map[string]string{
39937		"profileId": strconv.FormatInt(c.profileId, 10),
39938		"id":        strconv.FormatInt(c.id, 10),
39939	})
39940	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39941}
39942
39943// Do executes the "dfareporting.placementStrategies.get" call.
39944// Exactly one of *PlacementStrategy or error will be non-nil. Any
39945// non-2xx status code is an error. Response headers are in either
39946// *PlacementStrategy.ServerResponse.Header or (if a response was
39947// returned at all) in error.(*googleapi.Error).Header. Use
39948// googleapi.IsNotModified to check whether the returned error was
39949// because http.StatusNotModified was returned.
39950func (c *PlacementStrategiesGetCall) Do(opts ...googleapi.CallOption) (*PlacementStrategy, error) {
39951	gensupport.SetOptions(c.urlParams_, opts...)
39952	res, err := c.doRequest("json")
39953	if res != nil && res.StatusCode == http.StatusNotModified {
39954		if res.Body != nil {
39955			res.Body.Close()
39956		}
39957		return nil, &googleapi.Error{
39958			Code:   res.StatusCode,
39959			Header: res.Header,
39960		}
39961	}
39962	if err != nil {
39963		return nil, err
39964	}
39965	defer googleapi.CloseBody(res)
39966	if err := googleapi.CheckResponse(res); err != nil {
39967		return nil, err
39968	}
39969	ret := &PlacementStrategy{
39970		ServerResponse: googleapi.ServerResponse{
39971			Header:         res.Header,
39972			HTTPStatusCode: res.StatusCode,
39973		},
39974	}
39975	target := &ret
39976	if err := gensupport.DecodeResponse(target, res); err != nil {
39977		return nil, err
39978	}
39979	return ret, nil
39980	// {
39981	//   "description": "Gets one placement strategy by ID.",
39982	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies/{id}",
39983	//   "httpMethod": "GET",
39984	//   "id": "dfareporting.placementStrategies.get",
39985	//   "parameterOrder": [
39986	//     "profileId",
39987	//     "id"
39988	//   ],
39989	//   "parameters": {
39990	//     "id": {
39991	//       "description": "Placement strategy ID.",
39992	//       "format": "int64",
39993	//       "location": "path",
39994	//       "required": true,
39995	//       "type": "string"
39996	//     },
39997	//     "profileId": {
39998	//       "description": "User profile ID associated with this request.",
39999	//       "format": "int64",
40000	//       "location": "path",
40001	//       "required": true,
40002	//       "type": "string"
40003	//     }
40004	//   },
40005	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies/{id}",
40006	//   "response": {
40007	//     "$ref": "PlacementStrategy"
40008	//   },
40009	//   "scopes": [
40010	//     "https://www.googleapis.com/auth/dfatrafficking"
40011	//   ]
40012	// }
40013
40014}
40015
40016// method id "dfareporting.placementStrategies.insert":
40017
40018type PlacementStrategiesInsertCall struct {
40019	s                 *Service
40020	profileId         int64
40021	placementstrategy *PlacementStrategy
40022	urlParams_        gensupport.URLParams
40023	ctx_              context.Context
40024	header_           http.Header
40025}
40026
40027// Insert: Inserts a new placement strategy.
40028//
40029// - profileId: User profile ID associated with this request.
40030func (r *PlacementStrategiesService) Insert(profileId int64, placementstrategy *PlacementStrategy) *PlacementStrategiesInsertCall {
40031	c := &PlacementStrategiesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40032	c.profileId = profileId
40033	c.placementstrategy = placementstrategy
40034	return c
40035}
40036
40037// Fields allows partial responses to be retrieved. See
40038// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40039// for more information.
40040func (c *PlacementStrategiesInsertCall) Fields(s ...googleapi.Field) *PlacementStrategiesInsertCall {
40041	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40042	return c
40043}
40044
40045// Context sets the context to be used in this call's Do method. Any
40046// pending HTTP request will be aborted if the provided context is
40047// canceled.
40048func (c *PlacementStrategiesInsertCall) Context(ctx context.Context) *PlacementStrategiesInsertCall {
40049	c.ctx_ = ctx
40050	return c
40051}
40052
40053// Header returns an http.Header that can be modified by the caller to
40054// add HTTP headers to the request.
40055func (c *PlacementStrategiesInsertCall) Header() http.Header {
40056	if c.header_ == nil {
40057		c.header_ = make(http.Header)
40058	}
40059	return c.header_
40060}
40061
40062func (c *PlacementStrategiesInsertCall) doRequest(alt string) (*http.Response, error) {
40063	reqHeaders := make(http.Header)
40064	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40065	for k, v := range c.header_ {
40066		reqHeaders[k] = v
40067	}
40068	reqHeaders.Set("User-Agent", c.s.userAgent())
40069	var body io.Reader = nil
40070	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementstrategy)
40071	if err != nil {
40072		return nil, err
40073	}
40074	reqHeaders.Set("Content-Type", "application/json")
40075	c.urlParams_.Set("alt", alt)
40076	c.urlParams_.Set("prettyPrint", "false")
40077	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies")
40078	urls += "?" + c.urlParams_.Encode()
40079	req, err := http.NewRequest("POST", urls, body)
40080	if err != nil {
40081		return nil, err
40082	}
40083	req.Header = reqHeaders
40084	googleapi.Expand(req.URL, map[string]string{
40085		"profileId": strconv.FormatInt(c.profileId, 10),
40086	})
40087	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40088}
40089
40090// Do executes the "dfareporting.placementStrategies.insert" call.
40091// Exactly one of *PlacementStrategy or error will be non-nil. Any
40092// non-2xx status code is an error. Response headers are in either
40093// *PlacementStrategy.ServerResponse.Header or (if a response was
40094// returned at all) in error.(*googleapi.Error).Header. Use
40095// googleapi.IsNotModified to check whether the returned error was
40096// because http.StatusNotModified was returned.
40097func (c *PlacementStrategiesInsertCall) Do(opts ...googleapi.CallOption) (*PlacementStrategy, error) {
40098	gensupport.SetOptions(c.urlParams_, opts...)
40099	res, err := c.doRequest("json")
40100	if res != nil && res.StatusCode == http.StatusNotModified {
40101		if res.Body != nil {
40102			res.Body.Close()
40103		}
40104		return nil, &googleapi.Error{
40105			Code:   res.StatusCode,
40106			Header: res.Header,
40107		}
40108	}
40109	if err != nil {
40110		return nil, err
40111	}
40112	defer googleapi.CloseBody(res)
40113	if err := googleapi.CheckResponse(res); err != nil {
40114		return nil, err
40115	}
40116	ret := &PlacementStrategy{
40117		ServerResponse: googleapi.ServerResponse{
40118			Header:         res.Header,
40119			HTTPStatusCode: res.StatusCode,
40120		},
40121	}
40122	target := &ret
40123	if err := gensupport.DecodeResponse(target, res); err != nil {
40124		return nil, err
40125	}
40126	return ret, nil
40127	// {
40128	//   "description": "Inserts a new placement strategy.",
40129	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies",
40130	//   "httpMethod": "POST",
40131	//   "id": "dfareporting.placementStrategies.insert",
40132	//   "parameterOrder": [
40133	//     "profileId"
40134	//   ],
40135	//   "parameters": {
40136	//     "profileId": {
40137	//       "description": "User profile ID associated with this request.",
40138	//       "format": "int64",
40139	//       "location": "path",
40140	//       "required": true,
40141	//       "type": "string"
40142	//     }
40143	//   },
40144	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies",
40145	//   "request": {
40146	//     "$ref": "PlacementStrategy"
40147	//   },
40148	//   "response": {
40149	//     "$ref": "PlacementStrategy"
40150	//   },
40151	//   "scopes": [
40152	//     "https://www.googleapis.com/auth/dfatrafficking"
40153	//   ]
40154	// }
40155
40156}
40157
40158// method id "dfareporting.placementStrategies.list":
40159
40160type PlacementStrategiesListCall struct {
40161	s            *Service
40162	profileId    int64
40163	urlParams_   gensupport.URLParams
40164	ifNoneMatch_ string
40165	ctx_         context.Context
40166	header_      http.Header
40167}
40168
40169// List: Retrieves a list of placement strategies, possibly filtered.
40170// This method supports paging.
40171//
40172// - profileId: User profile ID associated with this request.
40173func (r *PlacementStrategiesService) List(profileId int64) *PlacementStrategiesListCall {
40174	c := &PlacementStrategiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40175	c.profileId = profileId
40176	return c
40177}
40178
40179// Ids sets the optional parameter "ids": Select only placement
40180// strategies with these IDs.
40181func (c *PlacementStrategiesListCall) Ids(ids ...int64) *PlacementStrategiesListCall {
40182	var ids_ []string
40183	for _, v := range ids {
40184		ids_ = append(ids_, fmt.Sprint(v))
40185	}
40186	c.urlParams_.SetMulti("ids", ids_)
40187	return c
40188}
40189
40190// MaxResults sets the optional parameter "maxResults": Maximum number
40191// of results to return.
40192func (c *PlacementStrategiesListCall) MaxResults(maxResults int64) *PlacementStrategiesListCall {
40193	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
40194	return c
40195}
40196
40197// PageToken sets the optional parameter "pageToken": Value of the
40198// nextPageToken from the previous result page.
40199func (c *PlacementStrategiesListCall) PageToken(pageToken string) *PlacementStrategiesListCall {
40200	c.urlParams_.Set("pageToken", pageToken)
40201	return c
40202}
40203
40204// SearchString sets the optional parameter "searchString": Allows
40205// searching for objects by name or ID. Wildcards (*) are allowed. For
40206// example, "placementstrategy*2015" will return objects with names like
40207// "placementstrategy June 2015", "placementstrategy April 2015", or
40208// simply "placementstrategy 2015". Most of the searches also add
40209// wildcards implicitly at the start and the end of the search string.
40210// For example, a search string of "placementstrategy" will match
40211// objects with name "my placementstrategy", "placementstrategy 2015",
40212// or simply "placementstrategy".
40213func (c *PlacementStrategiesListCall) SearchString(searchString string) *PlacementStrategiesListCall {
40214	c.urlParams_.Set("searchString", searchString)
40215	return c
40216}
40217
40218// SortField sets the optional parameter "sortField": Field by which to
40219// sort the list.
40220//
40221// Possible values:
40222//   "ID" (default)
40223//   "NAME"
40224func (c *PlacementStrategiesListCall) SortField(sortField string) *PlacementStrategiesListCall {
40225	c.urlParams_.Set("sortField", sortField)
40226	return c
40227}
40228
40229// SortOrder sets the optional parameter "sortOrder": Order of sorted
40230// results.
40231//
40232// Possible values:
40233//   "ASCENDING" (default)
40234//   "DESCENDING"
40235func (c *PlacementStrategiesListCall) SortOrder(sortOrder string) *PlacementStrategiesListCall {
40236	c.urlParams_.Set("sortOrder", sortOrder)
40237	return c
40238}
40239
40240// Fields allows partial responses to be retrieved. See
40241// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40242// for more information.
40243func (c *PlacementStrategiesListCall) Fields(s ...googleapi.Field) *PlacementStrategiesListCall {
40244	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40245	return c
40246}
40247
40248// IfNoneMatch sets the optional parameter which makes the operation
40249// fail if the object's ETag matches the given value. This is useful for
40250// getting updates only after the object has changed since the last
40251// request. Use googleapi.IsNotModified to check whether the response
40252// error from Do is the result of In-None-Match.
40253func (c *PlacementStrategiesListCall) IfNoneMatch(entityTag string) *PlacementStrategiesListCall {
40254	c.ifNoneMatch_ = entityTag
40255	return c
40256}
40257
40258// Context sets the context to be used in this call's Do method. Any
40259// pending HTTP request will be aborted if the provided context is
40260// canceled.
40261func (c *PlacementStrategiesListCall) Context(ctx context.Context) *PlacementStrategiesListCall {
40262	c.ctx_ = ctx
40263	return c
40264}
40265
40266// Header returns an http.Header that can be modified by the caller to
40267// add HTTP headers to the request.
40268func (c *PlacementStrategiesListCall) Header() http.Header {
40269	if c.header_ == nil {
40270		c.header_ = make(http.Header)
40271	}
40272	return c.header_
40273}
40274
40275func (c *PlacementStrategiesListCall) doRequest(alt string) (*http.Response, error) {
40276	reqHeaders := make(http.Header)
40277	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40278	for k, v := range c.header_ {
40279		reqHeaders[k] = v
40280	}
40281	reqHeaders.Set("User-Agent", c.s.userAgent())
40282	if c.ifNoneMatch_ != "" {
40283		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40284	}
40285	var body io.Reader = nil
40286	c.urlParams_.Set("alt", alt)
40287	c.urlParams_.Set("prettyPrint", "false")
40288	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies")
40289	urls += "?" + c.urlParams_.Encode()
40290	req, err := http.NewRequest("GET", urls, body)
40291	if err != nil {
40292		return nil, err
40293	}
40294	req.Header = reqHeaders
40295	googleapi.Expand(req.URL, map[string]string{
40296		"profileId": strconv.FormatInt(c.profileId, 10),
40297	})
40298	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40299}
40300
40301// Do executes the "dfareporting.placementStrategies.list" call.
40302// Exactly one of *PlacementStrategiesListResponse or error will be
40303// non-nil. Any non-2xx status code is an error. Response headers are in
40304// either *PlacementStrategiesListResponse.ServerResponse.Header or (if
40305// a response was returned at all) in error.(*googleapi.Error).Header.
40306// Use googleapi.IsNotModified to check whether the returned error was
40307// because http.StatusNotModified was returned.
40308func (c *PlacementStrategiesListCall) Do(opts ...googleapi.CallOption) (*PlacementStrategiesListResponse, error) {
40309	gensupport.SetOptions(c.urlParams_, opts...)
40310	res, err := c.doRequest("json")
40311	if res != nil && res.StatusCode == http.StatusNotModified {
40312		if res.Body != nil {
40313			res.Body.Close()
40314		}
40315		return nil, &googleapi.Error{
40316			Code:   res.StatusCode,
40317			Header: res.Header,
40318		}
40319	}
40320	if err != nil {
40321		return nil, err
40322	}
40323	defer googleapi.CloseBody(res)
40324	if err := googleapi.CheckResponse(res); err != nil {
40325		return nil, err
40326	}
40327	ret := &PlacementStrategiesListResponse{
40328		ServerResponse: googleapi.ServerResponse{
40329			Header:         res.Header,
40330			HTTPStatusCode: res.StatusCode,
40331		},
40332	}
40333	target := &ret
40334	if err := gensupport.DecodeResponse(target, res); err != nil {
40335		return nil, err
40336	}
40337	return ret, nil
40338	// {
40339	//   "description": "Retrieves a list of placement strategies, possibly filtered. This method supports paging.",
40340	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies",
40341	//   "httpMethod": "GET",
40342	//   "id": "dfareporting.placementStrategies.list",
40343	//   "parameterOrder": [
40344	//     "profileId"
40345	//   ],
40346	//   "parameters": {
40347	//     "ids": {
40348	//       "description": "Select only placement strategies with these IDs.",
40349	//       "format": "int64",
40350	//       "location": "query",
40351	//       "repeated": true,
40352	//       "type": "string"
40353	//     },
40354	//     "maxResults": {
40355	//       "default": "1000",
40356	//       "description": "Maximum number of results to return.",
40357	//       "format": "int32",
40358	//       "location": "query",
40359	//       "maximum": "1000",
40360	//       "minimum": "0",
40361	//       "type": "integer"
40362	//     },
40363	//     "pageToken": {
40364	//       "description": "Value of the nextPageToken from the previous result page.",
40365	//       "location": "query",
40366	//       "type": "string"
40367	//     },
40368	//     "profileId": {
40369	//       "description": "User profile ID associated with this request.",
40370	//       "format": "int64",
40371	//       "location": "path",
40372	//       "required": true,
40373	//       "type": "string"
40374	//     },
40375	//     "searchString": {
40376	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"placementstrategy*2015\" will return objects with names like \"placementstrategy June 2015\", \"placementstrategy April 2015\", or simply \"placementstrategy 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementstrategy\" will match objects with name \"my placementstrategy\", \"placementstrategy 2015\", or simply \"placementstrategy\".",
40377	//       "location": "query",
40378	//       "type": "string"
40379	//     },
40380	//     "sortField": {
40381	//       "default": "ID",
40382	//       "description": "Field by which to sort the list.",
40383	//       "enum": [
40384	//         "ID",
40385	//         "NAME"
40386	//       ],
40387	//       "enumDescriptions": [
40388	//         "",
40389	//         ""
40390	//       ],
40391	//       "location": "query",
40392	//       "type": "string"
40393	//     },
40394	//     "sortOrder": {
40395	//       "default": "ASCENDING",
40396	//       "description": "Order of sorted results.",
40397	//       "enum": [
40398	//         "ASCENDING",
40399	//         "DESCENDING"
40400	//       ],
40401	//       "enumDescriptions": [
40402	//         "",
40403	//         ""
40404	//       ],
40405	//       "location": "query",
40406	//       "type": "string"
40407	//     }
40408	//   },
40409	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies",
40410	//   "response": {
40411	//     "$ref": "PlacementStrategiesListResponse"
40412	//   },
40413	//   "scopes": [
40414	//     "https://www.googleapis.com/auth/dfatrafficking"
40415	//   ]
40416	// }
40417
40418}
40419
40420// Pages invokes f for each page of results.
40421// A non-nil error returned from f will halt the iteration.
40422// The provided context supersedes any context provided to the Context method.
40423func (c *PlacementStrategiesListCall) Pages(ctx context.Context, f func(*PlacementStrategiesListResponse) error) error {
40424	c.ctx_ = ctx
40425	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
40426	for {
40427		x, err := c.Do()
40428		if err != nil {
40429			return err
40430		}
40431		if err := f(x); err != nil {
40432			return err
40433		}
40434		if x.NextPageToken == "" {
40435			return nil
40436		}
40437		c.PageToken(x.NextPageToken)
40438	}
40439}
40440
40441// method id "dfareporting.placementStrategies.patch":
40442
40443type PlacementStrategiesPatchCall struct {
40444	s                 *Service
40445	profileId         int64
40446	placementstrategy *PlacementStrategy
40447	urlParams_        gensupport.URLParams
40448	ctx_              context.Context
40449	header_           http.Header
40450}
40451
40452// Patch: Updates an existing placement strategy. This method supports
40453// patch semantics.
40454//
40455// - id: PlacementStrategy ID.
40456// - profileId: User profile ID associated with this request.
40457func (r *PlacementStrategiesService) Patch(profileId int64, id int64, placementstrategy *PlacementStrategy) *PlacementStrategiesPatchCall {
40458	c := &PlacementStrategiesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40459	c.profileId = profileId
40460	c.urlParams_.Set("id", fmt.Sprint(id))
40461	c.placementstrategy = placementstrategy
40462	return c
40463}
40464
40465// Fields allows partial responses to be retrieved. See
40466// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40467// for more information.
40468func (c *PlacementStrategiesPatchCall) Fields(s ...googleapi.Field) *PlacementStrategiesPatchCall {
40469	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40470	return c
40471}
40472
40473// Context sets the context to be used in this call's Do method. Any
40474// pending HTTP request will be aborted if the provided context is
40475// canceled.
40476func (c *PlacementStrategiesPatchCall) Context(ctx context.Context) *PlacementStrategiesPatchCall {
40477	c.ctx_ = ctx
40478	return c
40479}
40480
40481// Header returns an http.Header that can be modified by the caller to
40482// add HTTP headers to the request.
40483func (c *PlacementStrategiesPatchCall) Header() http.Header {
40484	if c.header_ == nil {
40485		c.header_ = make(http.Header)
40486	}
40487	return c.header_
40488}
40489
40490func (c *PlacementStrategiesPatchCall) doRequest(alt string) (*http.Response, error) {
40491	reqHeaders := make(http.Header)
40492	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40493	for k, v := range c.header_ {
40494		reqHeaders[k] = v
40495	}
40496	reqHeaders.Set("User-Agent", c.s.userAgent())
40497	var body io.Reader = nil
40498	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementstrategy)
40499	if err != nil {
40500		return nil, err
40501	}
40502	reqHeaders.Set("Content-Type", "application/json")
40503	c.urlParams_.Set("alt", alt)
40504	c.urlParams_.Set("prettyPrint", "false")
40505	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies")
40506	urls += "?" + c.urlParams_.Encode()
40507	req, err := http.NewRequest("PATCH", urls, body)
40508	if err != nil {
40509		return nil, err
40510	}
40511	req.Header = reqHeaders
40512	googleapi.Expand(req.URL, map[string]string{
40513		"profileId": strconv.FormatInt(c.profileId, 10),
40514	})
40515	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40516}
40517
40518// Do executes the "dfareporting.placementStrategies.patch" call.
40519// Exactly one of *PlacementStrategy or error will be non-nil. Any
40520// non-2xx status code is an error. Response headers are in either
40521// *PlacementStrategy.ServerResponse.Header or (if a response was
40522// returned at all) in error.(*googleapi.Error).Header. Use
40523// googleapi.IsNotModified to check whether the returned error was
40524// because http.StatusNotModified was returned.
40525func (c *PlacementStrategiesPatchCall) Do(opts ...googleapi.CallOption) (*PlacementStrategy, error) {
40526	gensupport.SetOptions(c.urlParams_, opts...)
40527	res, err := c.doRequest("json")
40528	if res != nil && res.StatusCode == http.StatusNotModified {
40529		if res.Body != nil {
40530			res.Body.Close()
40531		}
40532		return nil, &googleapi.Error{
40533			Code:   res.StatusCode,
40534			Header: res.Header,
40535		}
40536	}
40537	if err != nil {
40538		return nil, err
40539	}
40540	defer googleapi.CloseBody(res)
40541	if err := googleapi.CheckResponse(res); err != nil {
40542		return nil, err
40543	}
40544	ret := &PlacementStrategy{
40545		ServerResponse: googleapi.ServerResponse{
40546			Header:         res.Header,
40547			HTTPStatusCode: res.StatusCode,
40548		},
40549	}
40550	target := &ret
40551	if err := gensupport.DecodeResponse(target, res); err != nil {
40552		return nil, err
40553	}
40554	return ret, nil
40555	// {
40556	//   "description": "Updates an existing placement strategy. This method supports patch semantics.",
40557	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies",
40558	//   "httpMethod": "PATCH",
40559	//   "id": "dfareporting.placementStrategies.patch",
40560	//   "parameterOrder": [
40561	//     "profileId",
40562	//     "id"
40563	//   ],
40564	//   "parameters": {
40565	//     "id": {
40566	//       "description": "PlacementStrategy ID.",
40567	//       "format": "int64",
40568	//       "location": "query",
40569	//       "required": true,
40570	//       "type": "string"
40571	//     },
40572	//     "profileId": {
40573	//       "description": "User profile ID associated with this request.",
40574	//       "format": "int64",
40575	//       "location": "path",
40576	//       "required": true,
40577	//       "type": "string"
40578	//     }
40579	//   },
40580	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies",
40581	//   "request": {
40582	//     "$ref": "PlacementStrategy"
40583	//   },
40584	//   "response": {
40585	//     "$ref": "PlacementStrategy"
40586	//   },
40587	//   "scopes": [
40588	//     "https://www.googleapis.com/auth/dfatrafficking"
40589	//   ]
40590	// }
40591
40592}
40593
40594// method id "dfareporting.placementStrategies.update":
40595
40596type PlacementStrategiesUpdateCall struct {
40597	s                 *Service
40598	profileId         int64
40599	placementstrategy *PlacementStrategy
40600	urlParams_        gensupport.URLParams
40601	ctx_              context.Context
40602	header_           http.Header
40603}
40604
40605// Update: Updates an existing placement strategy.
40606//
40607// - profileId: User profile ID associated with this request.
40608func (r *PlacementStrategiesService) Update(profileId int64, placementstrategy *PlacementStrategy) *PlacementStrategiesUpdateCall {
40609	c := &PlacementStrategiesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40610	c.profileId = profileId
40611	c.placementstrategy = placementstrategy
40612	return c
40613}
40614
40615// Fields allows partial responses to be retrieved. See
40616// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40617// for more information.
40618func (c *PlacementStrategiesUpdateCall) Fields(s ...googleapi.Field) *PlacementStrategiesUpdateCall {
40619	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40620	return c
40621}
40622
40623// Context sets the context to be used in this call's Do method. Any
40624// pending HTTP request will be aborted if the provided context is
40625// canceled.
40626func (c *PlacementStrategiesUpdateCall) Context(ctx context.Context) *PlacementStrategiesUpdateCall {
40627	c.ctx_ = ctx
40628	return c
40629}
40630
40631// Header returns an http.Header that can be modified by the caller to
40632// add HTTP headers to the request.
40633func (c *PlacementStrategiesUpdateCall) Header() http.Header {
40634	if c.header_ == nil {
40635		c.header_ = make(http.Header)
40636	}
40637	return c.header_
40638}
40639
40640func (c *PlacementStrategiesUpdateCall) doRequest(alt string) (*http.Response, error) {
40641	reqHeaders := make(http.Header)
40642	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40643	for k, v := range c.header_ {
40644		reqHeaders[k] = v
40645	}
40646	reqHeaders.Set("User-Agent", c.s.userAgent())
40647	var body io.Reader = nil
40648	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementstrategy)
40649	if err != nil {
40650		return nil, err
40651	}
40652	reqHeaders.Set("Content-Type", "application/json")
40653	c.urlParams_.Set("alt", alt)
40654	c.urlParams_.Set("prettyPrint", "false")
40655	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies")
40656	urls += "?" + c.urlParams_.Encode()
40657	req, err := http.NewRequest("PUT", urls, body)
40658	if err != nil {
40659		return nil, err
40660	}
40661	req.Header = reqHeaders
40662	googleapi.Expand(req.URL, map[string]string{
40663		"profileId": strconv.FormatInt(c.profileId, 10),
40664	})
40665	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40666}
40667
40668// Do executes the "dfareporting.placementStrategies.update" call.
40669// Exactly one of *PlacementStrategy or error will be non-nil. Any
40670// non-2xx status code is an error. Response headers are in either
40671// *PlacementStrategy.ServerResponse.Header or (if a response was
40672// returned at all) in error.(*googleapi.Error).Header. Use
40673// googleapi.IsNotModified to check whether the returned error was
40674// because http.StatusNotModified was returned.
40675func (c *PlacementStrategiesUpdateCall) Do(opts ...googleapi.CallOption) (*PlacementStrategy, error) {
40676	gensupport.SetOptions(c.urlParams_, opts...)
40677	res, err := c.doRequest("json")
40678	if res != nil && res.StatusCode == http.StatusNotModified {
40679		if res.Body != nil {
40680			res.Body.Close()
40681		}
40682		return nil, &googleapi.Error{
40683			Code:   res.StatusCode,
40684			Header: res.Header,
40685		}
40686	}
40687	if err != nil {
40688		return nil, err
40689	}
40690	defer googleapi.CloseBody(res)
40691	if err := googleapi.CheckResponse(res); err != nil {
40692		return nil, err
40693	}
40694	ret := &PlacementStrategy{
40695		ServerResponse: googleapi.ServerResponse{
40696			Header:         res.Header,
40697			HTTPStatusCode: res.StatusCode,
40698		},
40699	}
40700	target := &ret
40701	if err := gensupport.DecodeResponse(target, res); err != nil {
40702		return nil, err
40703	}
40704	return ret, nil
40705	// {
40706	//   "description": "Updates an existing placement strategy.",
40707	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies",
40708	//   "httpMethod": "PUT",
40709	//   "id": "dfareporting.placementStrategies.update",
40710	//   "parameterOrder": [
40711	//     "profileId"
40712	//   ],
40713	//   "parameters": {
40714	//     "profileId": {
40715	//       "description": "User profile ID associated with this request.",
40716	//       "format": "int64",
40717	//       "location": "path",
40718	//       "required": true,
40719	//       "type": "string"
40720	//     }
40721	//   },
40722	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placementStrategies",
40723	//   "request": {
40724	//     "$ref": "PlacementStrategy"
40725	//   },
40726	//   "response": {
40727	//     "$ref": "PlacementStrategy"
40728	//   },
40729	//   "scopes": [
40730	//     "https://www.googleapis.com/auth/dfatrafficking"
40731	//   ]
40732	// }
40733
40734}
40735
40736// method id "dfareporting.placements.generatetags":
40737
40738type PlacementsGeneratetagsCall struct {
40739	s          *Service
40740	profileId  int64
40741	urlParams_ gensupport.URLParams
40742	ctx_       context.Context
40743	header_    http.Header
40744}
40745
40746// Generatetags: Generates tags for a placement.
40747//
40748// - profileId: User profile ID associated with this request.
40749func (r *PlacementsService) Generatetags(profileId int64) *PlacementsGeneratetagsCall {
40750	c := &PlacementsGeneratetagsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40751	c.profileId = profileId
40752	return c
40753}
40754
40755// CampaignId sets the optional parameter "campaignId": Generate
40756// placements belonging to this campaign. This is a required field.
40757func (c *PlacementsGeneratetagsCall) CampaignId(campaignId int64) *PlacementsGeneratetagsCall {
40758	c.urlParams_.Set("campaignId", fmt.Sprint(campaignId))
40759	return c
40760}
40761
40762// PlacementIds sets the optional parameter "placementIds": Generate
40763// tags for these placements.
40764func (c *PlacementsGeneratetagsCall) PlacementIds(placementIds ...int64) *PlacementsGeneratetagsCall {
40765	var placementIds_ []string
40766	for _, v := range placementIds {
40767		placementIds_ = append(placementIds_, fmt.Sprint(v))
40768	}
40769	c.urlParams_.SetMulti("placementIds", placementIds_)
40770	return c
40771}
40772
40773// TagFormats sets the optional parameter "tagFormats": Tag formats to
40774// generate for these placements. *Note:* PLACEMENT_TAG_STANDARD can
40775// only be generated for 1x1 placements.
40776//
40777// Possible values:
40778//   "PLACEMENT_TAG_STANDARD"
40779//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
40780//   "PLACEMENT_TAG_IFRAME_ILAYER"
40781//   "PLACEMENT_TAG_INTERNAL_REDIRECT"
40782//   "PLACEMENT_TAG_JAVASCRIPT"
40783//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
40784//   "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
40785//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
40786//   "PLACEMENT_TAG_CLICK_COMMANDS"
40787//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
40788//   "PLACEMENT_TAG_TRACKING"
40789//   "PLACEMENT_TAG_TRACKING_IFRAME"
40790//   "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
40791//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
40792//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
40793//   "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
40794//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
40795//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
40796//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
40797func (c *PlacementsGeneratetagsCall) TagFormats(tagFormats ...string) *PlacementsGeneratetagsCall {
40798	c.urlParams_.SetMulti("tagFormats", append([]string{}, tagFormats...))
40799	return c
40800}
40801
40802// Fields allows partial responses to be retrieved. See
40803// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40804// for more information.
40805func (c *PlacementsGeneratetagsCall) Fields(s ...googleapi.Field) *PlacementsGeneratetagsCall {
40806	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40807	return c
40808}
40809
40810// Context sets the context to be used in this call's Do method. Any
40811// pending HTTP request will be aborted if the provided context is
40812// canceled.
40813func (c *PlacementsGeneratetagsCall) Context(ctx context.Context) *PlacementsGeneratetagsCall {
40814	c.ctx_ = ctx
40815	return c
40816}
40817
40818// Header returns an http.Header that can be modified by the caller to
40819// add HTTP headers to the request.
40820func (c *PlacementsGeneratetagsCall) Header() http.Header {
40821	if c.header_ == nil {
40822		c.header_ = make(http.Header)
40823	}
40824	return c.header_
40825}
40826
40827func (c *PlacementsGeneratetagsCall) doRequest(alt string) (*http.Response, error) {
40828	reqHeaders := make(http.Header)
40829	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40830	for k, v := range c.header_ {
40831		reqHeaders[k] = v
40832	}
40833	reqHeaders.Set("User-Agent", c.s.userAgent())
40834	var body io.Reader = nil
40835	c.urlParams_.Set("alt", alt)
40836	c.urlParams_.Set("prettyPrint", "false")
40837	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placements/generatetags")
40838	urls += "?" + c.urlParams_.Encode()
40839	req, err := http.NewRequest("POST", urls, body)
40840	if err != nil {
40841		return nil, err
40842	}
40843	req.Header = reqHeaders
40844	googleapi.Expand(req.URL, map[string]string{
40845		"profileId": strconv.FormatInt(c.profileId, 10),
40846	})
40847	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40848}
40849
40850// Do executes the "dfareporting.placements.generatetags" call.
40851// Exactly one of *PlacementsGenerateTagsResponse or error will be
40852// non-nil. Any non-2xx status code is an error. Response headers are in
40853// either *PlacementsGenerateTagsResponse.ServerResponse.Header or (if a
40854// response was returned at all) in error.(*googleapi.Error).Header. Use
40855// googleapi.IsNotModified to check whether the returned error was
40856// because http.StatusNotModified was returned.
40857func (c *PlacementsGeneratetagsCall) Do(opts ...googleapi.CallOption) (*PlacementsGenerateTagsResponse, error) {
40858	gensupport.SetOptions(c.urlParams_, opts...)
40859	res, err := c.doRequest("json")
40860	if res != nil && res.StatusCode == http.StatusNotModified {
40861		if res.Body != nil {
40862			res.Body.Close()
40863		}
40864		return nil, &googleapi.Error{
40865			Code:   res.StatusCode,
40866			Header: res.Header,
40867		}
40868	}
40869	if err != nil {
40870		return nil, err
40871	}
40872	defer googleapi.CloseBody(res)
40873	if err := googleapi.CheckResponse(res); err != nil {
40874		return nil, err
40875	}
40876	ret := &PlacementsGenerateTagsResponse{
40877		ServerResponse: googleapi.ServerResponse{
40878			Header:         res.Header,
40879			HTTPStatusCode: res.StatusCode,
40880		},
40881	}
40882	target := &ret
40883	if err := gensupport.DecodeResponse(target, res); err != nil {
40884		return nil, err
40885	}
40886	return ret, nil
40887	// {
40888	//   "description": "Generates tags for a placement.",
40889	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placements/generatetags",
40890	//   "httpMethod": "POST",
40891	//   "id": "dfareporting.placements.generatetags",
40892	//   "parameterOrder": [
40893	//     "profileId"
40894	//   ],
40895	//   "parameters": {
40896	//     "campaignId": {
40897	//       "description": "Generate placements belonging to this campaign. This is a required field.",
40898	//       "format": "int64",
40899	//       "location": "query",
40900	//       "type": "string"
40901	//     },
40902	//     "placementIds": {
40903	//       "description": "Generate tags for these placements.",
40904	//       "format": "int64",
40905	//       "location": "query",
40906	//       "repeated": true,
40907	//       "type": "string"
40908	//     },
40909	//     "profileId": {
40910	//       "description": "User profile ID associated with this request.",
40911	//       "format": "int64",
40912	//       "location": "path",
40913	//       "required": true,
40914	//       "type": "string"
40915	//     },
40916	//     "tagFormats": {
40917	//       "description": "Tag formats to generate for these placements. *Note:* PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements.",
40918	//       "enum": [
40919	//         "PLACEMENT_TAG_STANDARD",
40920	//         "PLACEMENT_TAG_IFRAME_JAVASCRIPT",
40921	//         "PLACEMENT_TAG_IFRAME_ILAYER",
40922	//         "PLACEMENT_TAG_INTERNAL_REDIRECT",
40923	//         "PLACEMENT_TAG_JAVASCRIPT",
40924	//         "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT",
40925	//         "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT",
40926	//         "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT",
40927	//         "PLACEMENT_TAG_CLICK_COMMANDS",
40928	//         "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH",
40929	//         "PLACEMENT_TAG_TRACKING",
40930	//         "PLACEMENT_TAG_TRACKING_IFRAME",
40931	//         "PLACEMENT_TAG_TRACKING_JAVASCRIPT",
40932	//         "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3",
40933	//         "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY",
40934	//         "PLACEMENT_TAG_JAVASCRIPT_LEGACY",
40935	//         "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY",
40936	//         "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY",
40937	//         "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
40938	//       ],
40939	//       "enumDescriptions": [
40940	//         "",
40941	//         "",
40942	//         "",
40943	//         "",
40944	//         "",
40945	//         "",
40946	//         "",
40947	//         "",
40948	//         "",
40949	//         "",
40950	//         "",
40951	//         "",
40952	//         "",
40953	//         "",
40954	//         "",
40955	//         "",
40956	//         "",
40957	//         "",
40958	//         ""
40959	//       ],
40960	//       "location": "query",
40961	//       "repeated": true,
40962	//       "type": "string"
40963	//     }
40964	//   },
40965	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placements/generatetags",
40966	//   "response": {
40967	//     "$ref": "PlacementsGenerateTagsResponse"
40968	//   },
40969	//   "scopes": [
40970	//     "https://www.googleapis.com/auth/dfatrafficking"
40971	//   ]
40972	// }
40973
40974}
40975
40976// method id "dfareporting.placements.get":
40977
40978type PlacementsGetCall struct {
40979	s            *Service
40980	profileId    int64
40981	id           int64
40982	urlParams_   gensupport.URLParams
40983	ifNoneMatch_ string
40984	ctx_         context.Context
40985	header_      http.Header
40986}
40987
40988// Get: Gets one placement by ID.
40989//
40990// - id: Placement ID.
40991// - profileId: User profile ID associated with this request.
40992func (r *PlacementsService) Get(profileId int64, id int64) *PlacementsGetCall {
40993	c := &PlacementsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40994	c.profileId = profileId
40995	c.id = id
40996	return c
40997}
40998
40999// Fields allows partial responses to be retrieved. See
41000// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41001// for more information.
41002func (c *PlacementsGetCall) Fields(s ...googleapi.Field) *PlacementsGetCall {
41003	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41004	return c
41005}
41006
41007// IfNoneMatch sets the optional parameter which makes the operation
41008// fail if the object's ETag matches the given value. This is useful for
41009// getting updates only after the object has changed since the last
41010// request. Use googleapi.IsNotModified to check whether the response
41011// error from Do is the result of In-None-Match.
41012func (c *PlacementsGetCall) IfNoneMatch(entityTag string) *PlacementsGetCall {
41013	c.ifNoneMatch_ = entityTag
41014	return c
41015}
41016
41017// Context sets the context to be used in this call's Do method. Any
41018// pending HTTP request will be aborted if the provided context is
41019// canceled.
41020func (c *PlacementsGetCall) Context(ctx context.Context) *PlacementsGetCall {
41021	c.ctx_ = ctx
41022	return c
41023}
41024
41025// Header returns an http.Header that can be modified by the caller to
41026// add HTTP headers to the request.
41027func (c *PlacementsGetCall) Header() http.Header {
41028	if c.header_ == nil {
41029		c.header_ = make(http.Header)
41030	}
41031	return c.header_
41032}
41033
41034func (c *PlacementsGetCall) doRequest(alt string) (*http.Response, error) {
41035	reqHeaders := make(http.Header)
41036	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41037	for k, v := range c.header_ {
41038		reqHeaders[k] = v
41039	}
41040	reqHeaders.Set("User-Agent", c.s.userAgent())
41041	if c.ifNoneMatch_ != "" {
41042		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41043	}
41044	var body io.Reader = nil
41045	c.urlParams_.Set("alt", alt)
41046	c.urlParams_.Set("prettyPrint", "false")
41047	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placements/{id}")
41048	urls += "?" + c.urlParams_.Encode()
41049	req, err := http.NewRequest("GET", urls, body)
41050	if err != nil {
41051		return nil, err
41052	}
41053	req.Header = reqHeaders
41054	googleapi.Expand(req.URL, map[string]string{
41055		"profileId": strconv.FormatInt(c.profileId, 10),
41056		"id":        strconv.FormatInt(c.id, 10),
41057	})
41058	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41059}
41060
41061// Do executes the "dfareporting.placements.get" call.
41062// Exactly one of *Placement or error will be non-nil. Any non-2xx
41063// status code is an error. Response headers are in either
41064// *Placement.ServerResponse.Header or (if a response was returned at
41065// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
41066// to check whether the returned error was because
41067// http.StatusNotModified was returned.
41068func (c *PlacementsGetCall) Do(opts ...googleapi.CallOption) (*Placement, error) {
41069	gensupport.SetOptions(c.urlParams_, opts...)
41070	res, err := c.doRequest("json")
41071	if res != nil && res.StatusCode == http.StatusNotModified {
41072		if res.Body != nil {
41073			res.Body.Close()
41074		}
41075		return nil, &googleapi.Error{
41076			Code:   res.StatusCode,
41077			Header: res.Header,
41078		}
41079	}
41080	if err != nil {
41081		return nil, err
41082	}
41083	defer googleapi.CloseBody(res)
41084	if err := googleapi.CheckResponse(res); err != nil {
41085		return nil, err
41086	}
41087	ret := &Placement{
41088		ServerResponse: googleapi.ServerResponse{
41089			Header:         res.Header,
41090			HTTPStatusCode: res.StatusCode,
41091		},
41092	}
41093	target := &ret
41094	if err := gensupport.DecodeResponse(target, res); err != nil {
41095		return nil, err
41096	}
41097	return ret, nil
41098	// {
41099	//   "description": "Gets one placement by ID.",
41100	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placements/{id}",
41101	//   "httpMethod": "GET",
41102	//   "id": "dfareporting.placements.get",
41103	//   "parameterOrder": [
41104	//     "profileId",
41105	//     "id"
41106	//   ],
41107	//   "parameters": {
41108	//     "id": {
41109	//       "description": "Placement ID.",
41110	//       "format": "int64",
41111	//       "location": "path",
41112	//       "required": true,
41113	//       "type": "string"
41114	//     },
41115	//     "profileId": {
41116	//       "description": "User profile ID associated with this request.",
41117	//       "format": "int64",
41118	//       "location": "path",
41119	//       "required": true,
41120	//       "type": "string"
41121	//     }
41122	//   },
41123	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placements/{id}",
41124	//   "response": {
41125	//     "$ref": "Placement"
41126	//   },
41127	//   "scopes": [
41128	//     "https://www.googleapis.com/auth/dfatrafficking"
41129	//   ]
41130	// }
41131
41132}
41133
41134// method id "dfareporting.placements.insert":
41135
41136type PlacementsInsertCall struct {
41137	s          *Service
41138	profileId  int64
41139	placement  *Placement
41140	urlParams_ gensupport.URLParams
41141	ctx_       context.Context
41142	header_    http.Header
41143}
41144
41145// Insert: Inserts a new placement.
41146//
41147// - profileId: User profile ID associated with this request.
41148func (r *PlacementsService) Insert(profileId int64, placement *Placement) *PlacementsInsertCall {
41149	c := &PlacementsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41150	c.profileId = profileId
41151	c.placement = placement
41152	return c
41153}
41154
41155// Fields allows partial responses to be retrieved. See
41156// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41157// for more information.
41158func (c *PlacementsInsertCall) Fields(s ...googleapi.Field) *PlacementsInsertCall {
41159	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41160	return c
41161}
41162
41163// Context sets the context to be used in this call's Do method. Any
41164// pending HTTP request will be aborted if the provided context is
41165// canceled.
41166func (c *PlacementsInsertCall) Context(ctx context.Context) *PlacementsInsertCall {
41167	c.ctx_ = ctx
41168	return c
41169}
41170
41171// Header returns an http.Header that can be modified by the caller to
41172// add HTTP headers to the request.
41173func (c *PlacementsInsertCall) Header() http.Header {
41174	if c.header_ == nil {
41175		c.header_ = make(http.Header)
41176	}
41177	return c.header_
41178}
41179
41180func (c *PlacementsInsertCall) doRequest(alt string) (*http.Response, error) {
41181	reqHeaders := make(http.Header)
41182	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41183	for k, v := range c.header_ {
41184		reqHeaders[k] = v
41185	}
41186	reqHeaders.Set("User-Agent", c.s.userAgent())
41187	var body io.Reader = nil
41188	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placement)
41189	if err != nil {
41190		return nil, err
41191	}
41192	reqHeaders.Set("Content-Type", "application/json")
41193	c.urlParams_.Set("alt", alt)
41194	c.urlParams_.Set("prettyPrint", "false")
41195	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placements")
41196	urls += "?" + c.urlParams_.Encode()
41197	req, err := http.NewRequest("POST", urls, body)
41198	if err != nil {
41199		return nil, err
41200	}
41201	req.Header = reqHeaders
41202	googleapi.Expand(req.URL, map[string]string{
41203		"profileId": strconv.FormatInt(c.profileId, 10),
41204	})
41205	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41206}
41207
41208// Do executes the "dfareporting.placements.insert" call.
41209// Exactly one of *Placement or error will be non-nil. Any non-2xx
41210// status code is an error. Response headers are in either
41211// *Placement.ServerResponse.Header or (if a response was returned at
41212// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
41213// to check whether the returned error was because
41214// http.StatusNotModified was returned.
41215func (c *PlacementsInsertCall) Do(opts ...googleapi.CallOption) (*Placement, error) {
41216	gensupport.SetOptions(c.urlParams_, opts...)
41217	res, err := c.doRequest("json")
41218	if res != nil && res.StatusCode == http.StatusNotModified {
41219		if res.Body != nil {
41220			res.Body.Close()
41221		}
41222		return nil, &googleapi.Error{
41223			Code:   res.StatusCode,
41224			Header: res.Header,
41225		}
41226	}
41227	if err != nil {
41228		return nil, err
41229	}
41230	defer googleapi.CloseBody(res)
41231	if err := googleapi.CheckResponse(res); err != nil {
41232		return nil, err
41233	}
41234	ret := &Placement{
41235		ServerResponse: googleapi.ServerResponse{
41236			Header:         res.Header,
41237			HTTPStatusCode: res.StatusCode,
41238		},
41239	}
41240	target := &ret
41241	if err := gensupport.DecodeResponse(target, res); err != nil {
41242		return nil, err
41243	}
41244	return ret, nil
41245	// {
41246	//   "description": "Inserts a new placement.",
41247	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placements",
41248	//   "httpMethod": "POST",
41249	//   "id": "dfareporting.placements.insert",
41250	//   "parameterOrder": [
41251	//     "profileId"
41252	//   ],
41253	//   "parameters": {
41254	//     "profileId": {
41255	//       "description": "User profile ID associated with this request.",
41256	//       "format": "int64",
41257	//       "location": "path",
41258	//       "required": true,
41259	//       "type": "string"
41260	//     }
41261	//   },
41262	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placements",
41263	//   "request": {
41264	//     "$ref": "Placement"
41265	//   },
41266	//   "response": {
41267	//     "$ref": "Placement"
41268	//   },
41269	//   "scopes": [
41270	//     "https://www.googleapis.com/auth/dfatrafficking"
41271	//   ]
41272	// }
41273
41274}
41275
41276// method id "dfareporting.placements.list":
41277
41278type PlacementsListCall struct {
41279	s            *Service
41280	profileId    int64
41281	urlParams_   gensupport.URLParams
41282	ifNoneMatch_ string
41283	ctx_         context.Context
41284	header_      http.Header
41285}
41286
41287// List: Retrieves a list of placements, possibly filtered. This method
41288// supports paging.
41289//
41290// - profileId: User profile ID associated with this request.
41291func (r *PlacementsService) List(profileId int64) *PlacementsListCall {
41292	c := &PlacementsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41293	c.profileId = profileId
41294	return c
41295}
41296
41297// AdvertiserIds sets the optional parameter "advertiserIds": Select
41298// only placements that belong to these advertisers.
41299func (c *PlacementsListCall) AdvertiserIds(advertiserIds ...int64) *PlacementsListCall {
41300	var advertiserIds_ []string
41301	for _, v := range advertiserIds {
41302		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
41303	}
41304	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
41305	return c
41306}
41307
41308// Archived sets the optional parameter "archived": Select only archived
41309// placements. Don't set this field to select both archived and
41310// non-archived placements.
41311func (c *PlacementsListCall) Archived(archived bool) *PlacementsListCall {
41312	c.urlParams_.Set("archived", fmt.Sprint(archived))
41313	return c
41314}
41315
41316// CampaignIds sets the optional parameter "campaignIds": Select only
41317// placements that belong to these campaigns.
41318func (c *PlacementsListCall) CampaignIds(campaignIds ...int64) *PlacementsListCall {
41319	var campaignIds_ []string
41320	for _, v := range campaignIds {
41321		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
41322	}
41323	c.urlParams_.SetMulti("campaignIds", campaignIds_)
41324	return c
41325}
41326
41327// Compatibilities sets the optional parameter "compatibilities": Select
41328// only placements that are associated with these compatibilities.
41329// DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop
41330// or on mobile devices for regular or interstitial ads respectively.
41331// APP and APP_INTERSTITIAL are for rendering in mobile apps.
41332// IN_STREAM_VIDEO refers to rendering in in-stream video ads developed
41333// with the VAST standard.
41334//
41335// Possible values:
41336//   "DISPLAY"
41337//   "DISPLAY_INTERSTITIAL"
41338//   "APP"
41339//   "APP_INTERSTITIAL"
41340//   "IN_STREAM_VIDEO"
41341//   "IN_STREAM_AUDIO"
41342func (c *PlacementsListCall) Compatibilities(compatibilities ...string) *PlacementsListCall {
41343	c.urlParams_.SetMulti("compatibilities", append([]string{}, compatibilities...))
41344	return c
41345}
41346
41347// ContentCategoryIds sets the optional parameter "contentCategoryIds":
41348// Select only placements that are associated with these content
41349// categories.
41350func (c *PlacementsListCall) ContentCategoryIds(contentCategoryIds ...int64) *PlacementsListCall {
41351	var contentCategoryIds_ []string
41352	for _, v := range contentCategoryIds {
41353		contentCategoryIds_ = append(contentCategoryIds_, fmt.Sprint(v))
41354	}
41355	c.urlParams_.SetMulti("contentCategoryIds", contentCategoryIds_)
41356	return c
41357}
41358
41359// DirectorySiteIds sets the optional parameter "directorySiteIds":
41360// Select only placements that are associated with these directory
41361// sites.
41362func (c *PlacementsListCall) DirectorySiteIds(directorySiteIds ...int64) *PlacementsListCall {
41363	var directorySiteIds_ []string
41364	for _, v := range directorySiteIds {
41365		directorySiteIds_ = append(directorySiteIds_, fmt.Sprint(v))
41366	}
41367	c.urlParams_.SetMulti("directorySiteIds", directorySiteIds_)
41368	return c
41369}
41370
41371// GroupIds sets the optional parameter "groupIds": Select only
41372// placements that belong to these placement groups.
41373func (c *PlacementsListCall) GroupIds(groupIds ...int64) *PlacementsListCall {
41374	var groupIds_ []string
41375	for _, v := range groupIds {
41376		groupIds_ = append(groupIds_, fmt.Sprint(v))
41377	}
41378	c.urlParams_.SetMulti("groupIds", groupIds_)
41379	return c
41380}
41381
41382// Ids sets the optional parameter "ids": Select only placements with
41383// these IDs.
41384func (c *PlacementsListCall) Ids(ids ...int64) *PlacementsListCall {
41385	var ids_ []string
41386	for _, v := range ids {
41387		ids_ = append(ids_, fmt.Sprint(v))
41388	}
41389	c.urlParams_.SetMulti("ids", ids_)
41390	return c
41391}
41392
41393// MaxEndDate sets the optional parameter "maxEndDate": Select only
41394// placements or placement groups whose end date is on or before the
41395// specified maxEndDate. The date should be formatted as "yyyy-MM-dd".
41396func (c *PlacementsListCall) MaxEndDate(maxEndDate string) *PlacementsListCall {
41397	c.urlParams_.Set("maxEndDate", maxEndDate)
41398	return c
41399}
41400
41401// MaxResults sets the optional parameter "maxResults": Maximum number
41402// of results to return.
41403func (c *PlacementsListCall) MaxResults(maxResults int64) *PlacementsListCall {
41404	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
41405	return c
41406}
41407
41408// MaxStartDate sets the optional parameter "maxStartDate": Select only
41409// placements or placement groups whose start date is on or before the
41410// specified maxStartDate. The date should be formatted as "yyyy-MM-dd".
41411func (c *PlacementsListCall) MaxStartDate(maxStartDate string) *PlacementsListCall {
41412	c.urlParams_.Set("maxStartDate", maxStartDate)
41413	return c
41414}
41415
41416// MinEndDate sets the optional parameter "minEndDate": Select only
41417// placements or placement groups whose end date is on or after the
41418// specified minEndDate. The date should be formatted as "yyyy-MM-dd".
41419func (c *PlacementsListCall) MinEndDate(minEndDate string) *PlacementsListCall {
41420	c.urlParams_.Set("minEndDate", minEndDate)
41421	return c
41422}
41423
41424// MinStartDate sets the optional parameter "minStartDate": Select only
41425// placements or placement groups whose start date is on or after the
41426// specified minStartDate. The date should be formatted as "yyyy-MM-dd".
41427func (c *PlacementsListCall) MinStartDate(minStartDate string) *PlacementsListCall {
41428	c.urlParams_.Set("minStartDate", minStartDate)
41429	return c
41430}
41431
41432// PageToken sets the optional parameter "pageToken": Value of the
41433// nextPageToken from the previous result page.
41434func (c *PlacementsListCall) PageToken(pageToken string) *PlacementsListCall {
41435	c.urlParams_.Set("pageToken", pageToken)
41436	return c
41437}
41438
41439// PaymentSource sets the optional parameter "paymentSource": Select
41440// only placements with this payment source.
41441//
41442// Possible values:
41443//   "PLACEMENT_AGENCY_PAID"
41444//   "PLACEMENT_PUBLISHER_PAID"
41445func (c *PlacementsListCall) PaymentSource(paymentSource string) *PlacementsListCall {
41446	c.urlParams_.Set("paymentSource", paymentSource)
41447	return c
41448}
41449
41450// PlacementStrategyIds sets the optional parameter
41451// "placementStrategyIds": Select only placements that are associated
41452// with these placement strategies.
41453func (c *PlacementsListCall) PlacementStrategyIds(placementStrategyIds ...int64) *PlacementsListCall {
41454	var placementStrategyIds_ []string
41455	for _, v := range placementStrategyIds {
41456		placementStrategyIds_ = append(placementStrategyIds_, fmt.Sprint(v))
41457	}
41458	c.urlParams_.SetMulti("placementStrategyIds", placementStrategyIds_)
41459	return c
41460}
41461
41462// PricingTypes sets the optional parameter "pricingTypes": Select only
41463// placements with these pricing types.
41464//
41465// Possible values:
41466//   "PRICING_TYPE_CPM"
41467//   "PRICING_TYPE_CPC"
41468//   "PRICING_TYPE_CPA"
41469//   "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
41470//   "PRICING_TYPE_FLAT_RATE_CLICKS"
41471//   "PRICING_TYPE_CPM_ACTIVEVIEW"
41472func (c *PlacementsListCall) PricingTypes(pricingTypes ...string) *PlacementsListCall {
41473	c.urlParams_.SetMulti("pricingTypes", append([]string{}, pricingTypes...))
41474	return c
41475}
41476
41477// SearchString sets the optional parameter "searchString": Allows
41478// searching for placements by name or ID. Wildcards (*) are allowed.
41479// For example, "placement*2015" will return placements with names like
41480// "placement June 2015", "placement May 2015", or simply "placements
41481// 2015". Most of the searches also add wildcards implicitly at the
41482// start and the end of the search string. For example, a search string
41483// of "placement" will match placements with name "my placement",
41484// "placement 2015", or simply "placement" .
41485func (c *PlacementsListCall) SearchString(searchString string) *PlacementsListCall {
41486	c.urlParams_.Set("searchString", searchString)
41487	return c
41488}
41489
41490// SiteIds sets the optional parameter "siteIds": Select only placements
41491// that are associated with these sites.
41492func (c *PlacementsListCall) SiteIds(siteIds ...int64) *PlacementsListCall {
41493	var siteIds_ []string
41494	for _, v := range siteIds {
41495		siteIds_ = append(siteIds_, fmt.Sprint(v))
41496	}
41497	c.urlParams_.SetMulti("siteIds", siteIds_)
41498	return c
41499}
41500
41501// SizeIds sets the optional parameter "sizeIds": Select only placements
41502// that are associated with these sizes.
41503func (c *PlacementsListCall) SizeIds(sizeIds ...int64) *PlacementsListCall {
41504	var sizeIds_ []string
41505	for _, v := range sizeIds {
41506		sizeIds_ = append(sizeIds_, fmt.Sprint(v))
41507	}
41508	c.urlParams_.SetMulti("sizeIds", sizeIds_)
41509	return c
41510}
41511
41512// SortField sets the optional parameter "sortField": Field by which to
41513// sort the list.
41514//
41515// Possible values:
41516//   "ID" (default)
41517//   "NAME"
41518func (c *PlacementsListCall) SortField(sortField string) *PlacementsListCall {
41519	c.urlParams_.Set("sortField", sortField)
41520	return c
41521}
41522
41523// SortOrder sets the optional parameter "sortOrder": Order of sorted
41524// results.
41525//
41526// Possible values:
41527//   "ASCENDING" (default)
41528//   "DESCENDING"
41529func (c *PlacementsListCall) SortOrder(sortOrder string) *PlacementsListCall {
41530	c.urlParams_.Set("sortOrder", sortOrder)
41531	return c
41532}
41533
41534// Fields allows partial responses to be retrieved. See
41535// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41536// for more information.
41537func (c *PlacementsListCall) Fields(s ...googleapi.Field) *PlacementsListCall {
41538	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41539	return c
41540}
41541
41542// IfNoneMatch sets the optional parameter which makes the operation
41543// fail if the object's ETag matches the given value. This is useful for
41544// getting updates only after the object has changed since the last
41545// request. Use googleapi.IsNotModified to check whether the response
41546// error from Do is the result of In-None-Match.
41547func (c *PlacementsListCall) IfNoneMatch(entityTag string) *PlacementsListCall {
41548	c.ifNoneMatch_ = entityTag
41549	return c
41550}
41551
41552// Context sets the context to be used in this call's Do method. Any
41553// pending HTTP request will be aborted if the provided context is
41554// canceled.
41555func (c *PlacementsListCall) Context(ctx context.Context) *PlacementsListCall {
41556	c.ctx_ = ctx
41557	return c
41558}
41559
41560// Header returns an http.Header that can be modified by the caller to
41561// add HTTP headers to the request.
41562func (c *PlacementsListCall) Header() http.Header {
41563	if c.header_ == nil {
41564		c.header_ = make(http.Header)
41565	}
41566	return c.header_
41567}
41568
41569func (c *PlacementsListCall) doRequest(alt string) (*http.Response, error) {
41570	reqHeaders := make(http.Header)
41571	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41572	for k, v := range c.header_ {
41573		reqHeaders[k] = v
41574	}
41575	reqHeaders.Set("User-Agent", c.s.userAgent())
41576	if c.ifNoneMatch_ != "" {
41577		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41578	}
41579	var body io.Reader = nil
41580	c.urlParams_.Set("alt", alt)
41581	c.urlParams_.Set("prettyPrint", "false")
41582	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placements")
41583	urls += "?" + c.urlParams_.Encode()
41584	req, err := http.NewRequest("GET", urls, body)
41585	if err != nil {
41586		return nil, err
41587	}
41588	req.Header = reqHeaders
41589	googleapi.Expand(req.URL, map[string]string{
41590		"profileId": strconv.FormatInt(c.profileId, 10),
41591	})
41592	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41593}
41594
41595// Do executes the "dfareporting.placements.list" call.
41596// Exactly one of *PlacementsListResponse or error will be non-nil. Any
41597// non-2xx status code is an error. Response headers are in either
41598// *PlacementsListResponse.ServerResponse.Header or (if a response was
41599// returned at all) in error.(*googleapi.Error).Header. Use
41600// googleapi.IsNotModified to check whether the returned error was
41601// because http.StatusNotModified was returned.
41602func (c *PlacementsListCall) Do(opts ...googleapi.CallOption) (*PlacementsListResponse, error) {
41603	gensupport.SetOptions(c.urlParams_, opts...)
41604	res, err := c.doRequest("json")
41605	if res != nil && res.StatusCode == http.StatusNotModified {
41606		if res.Body != nil {
41607			res.Body.Close()
41608		}
41609		return nil, &googleapi.Error{
41610			Code:   res.StatusCode,
41611			Header: res.Header,
41612		}
41613	}
41614	if err != nil {
41615		return nil, err
41616	}
41617	defer googleapi.CloseBody(res)
41618	if err := googleapi.CheckResponse(res); err != nil {
41619		return nil, err
41620	}
41621	ret := &PlacementsListResponse{
41622		ServerResponse: googleapi.ServerResponse{
41623			Header:         res.Header,
41624			HTTPStatusCode: res.StatusCode,
41625		},
41626	}
41627	target := &ret
41628	if err := gensupport.DecodeResponse(target, res); err != nil {
41629		return nil, err
41630	}
41631	return ret, nil
41632	// {
41633	//   "description": "Retrieves a list of placements, possibly filtered. This method supports paging.",
41634	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placements",
41635	//   "httpMethod": "GET",
41636	//   "id": "dfareporting.placements.list",
41637	//   "parameterOrder": [
41638	//     "profileId"
41639	//   ],
41640	//   "parameters": {
41641	//     "advertiserIds": {
41642	//       "description": "Select only placements that belong to these advertisers.",
41643	//       "format": "int64",
41644	//       "location": "query",
41645	//       "repeated": true,
41646	//       "type": "string"
41647	//     },
41648	//     "archived": {
41649	//       "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.",
41650	//       "location": "query",
41651	//       "type": "boolean"
41652	//     },
41653	//     "campaignIds": {
41654	//       "description": "Select only placements that belong to these campaigns.",
41655	//       "format": "int64",
41656	//       "location": "query",
41657	//       "repeated": true,
41658	//       "type": "string"
41659	//     },
41660	//     "compatibilities": {
41661	//       "description": "Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.",
41662	//       "enum": [
41663	//         "DISPLAY",
41664	//         "DISPLAY_INTERSTITIAL",
41665	//         "APP",
41666	//         "APP_INTERSTITIAL",
41667	//         "IN_STREAM_VIDEO",
41668	//         "IN_STREAM_AUDIO"
41669	//       ],
41670	//       "enumDescriptions": [
41671	//         "",
41672	//         "",
41673	//         "",
41674	//         "",
41675	//         "",
41676	//         ""
41677	//       ],
41678	//       "location": "query",
41679	//       "repeated": true,
41680	//       "type": "string"
41681	//     },
41682	//     "contentCategoryIds": {
41683	//       "description": "Select only placements that are associated with these content categories.",
41684	//       "format": "int64",
41685	//       "location": "query",
41686	//       "repeated": true,
41687	//       "type": "string"
41688	//     },
41689	//     "directorySiteIds": {
41690	//       "description": "Select only placements that are associated with these directory sites.",
41691	//       "format": "int64",
41692	//       "location": "query",
41693	//       "repeated": true,
41694	//       "type": "string"
41695	//     },
41696	//     "groupIds": {
41697	//       "description": "Select only placements that belong to these placement groups.",
41698	//       "format": "int64",
41699	//       "location": "query",
41700	//       "repeated": true,
41701	//       "type": "string"
41702	//     },
41703	//     "ids": {
41704	//       "description": "Select only placements with these IDs.",
41705	//       "format": "int64",
41706	//       "location": "query",
41707	//       "repeated": true,
41708	//       "type": "string"
41709	//     },
41710	//     "maxEndDate": {
41711	//       "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".",
41712	//       "location": "query",
41713	//       "type": "string"
41714	//     },
41715	//     "maxResults": {
41716	//       "default": "1000",
41717	//       "description": "Maximum number of results to return.",
41718	//       "format": "int32",
41719	//       "location": "query",
41720	//       "maximum": "1000",
41721	//       "minimum": "0",
41722	//       "type": "integer"
41723	//     },
41724	//     "maxStartDate": {
41725	//       "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".",
41726	//       "location": "query",
41727	//       "type": "string"
41728	//     },
41729	//     "minEndDate": {
41730	//       "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".",
41731	//       "location": "query",
41732	//       "type": "string"
41733	//     },
41734	//     "minStartDate": {
41735	//       "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".",
41736	//       "location": "query",
41737	//       "type": "string"
41738	//     },
41739	//     "pageToken": {
41740	//       "description": "Value of the nextPageToken from the previous result page.",
41741	//       "location": "query",
41742	//       "type": "string"
41743	//     },
41744	//     "paymentSource": {
41745	//       "description": "Select only placements with this payment source.",
41746	//       "enum": [
41747	//         "PLACEMENT_AGENCY_PAID",
41748	//         "PLACEMENT_PUBLISHER_PAID"
41749	//       ],
41750	//       "enumDescriptions": [
41751	//         "",
41752	//         ""
41753	//       ],
41754	//       "location": "query",
41755	//       "type": "string"
41756	//     },
41757	//     "placementStrategyIds": {
41758	//       "description": "Select only placements that are associated with these placement strategies.",
41759	//       "format": "int64",
41760	//       "location": "query",
41761	//       "repeated": true,
41762	//       "type": "string"
41763	//     },
41764	//     "pricingTypes": {
41765	//       "description": "Select only placements with these pricing types.",
41766	//       "enum": [
41767	//         "PRICING_TYPE_CPM",
41768	//         "PRICING_TYPE_CPC",
41769	//         "PRICING_TYPE_CPA",
41770	//         "PRICING_TYPE_FLAT_RATE_IMPRESSIONS",
41771	//         "PRICING_TYPE_FLAT_RATE_CLICKS",
41772	//         "PRICING_TYPE_CPM_ACTIVEVIEW"
41773	//       ],
41774	//       "enumDescriptions": [
41775	//         "",
41776	//         "",
41777	//         "",
41778	//         "",
41779	//         "",
41780	//         ""
41781	//       ],
41782	//       "location": "query",
41783	//       "repeated": true,
41784	//       "type": "string"
41785	//     },
41786	//     "profileId": {
41787	//       "description": "User profile ID associated with this request.",
41788	//       "format": "int64",
41789	//       "location": "path",
41790	//       "required": true,
41791	//       "type": "string"
41792	//     },
41793	//     "searchString": {
41794	//       "description": "Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placements with names like \"placement June 2015\", \"placement May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placement\" will match placements with name \"my placement\", \"placement 2015\", or simply \"placement\" .",
41795	//       "location": "query",
41796	//       "type": "string"
41797	//     },
41798	//     "siteIds": {
41799	//       "description": "Select only placements that are associated with these sites.",
41800	//       "format": "int64",
41801	//       "location": "query",
41802	//       "repeated": true,
41803	//       "type": "string"
41804	//     },
41805	//     "sizeIds": {
41806	//       "description": "Select only placements that are associated with these sizes.",
41807	//       "format": "int64",
41808	//       "location": "query",
41809	//       "repeated": true,
41810	//       "type": "string"
41811	//     },
41812	//     "sortField": {
41813	//       "default": "ID",
41814	//       "description": "Field by which to sort the list.",
41815	//       "enum": [
41816	//         "ID",
41817	//         "NAME"
41818	//       ],
41819	//       "enumDescriptions": [
41820	//         "",
41821	//         ""
41822	//       ],
41823	//       "location": "query",
41824	//       "type": "string"
41825	//     },
41826	//     "sortOrder": {
41827	//       "default": "ASCENDING",
41828	//       "description": "Order of sorted results.",
41829	//       "enum": [
41830	//         "ASCENDING",
41831	//         "DESCENDING"
41832	//       ],
41833	//       "enumDescriptions": [
41834	//         "",
41835	//         ""
41836	//       ],
41837	//       "location": "query",
41838	//       "type": "string"
41839	//     }
41840	//   },
41841	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placements",
41842	//   "response": {
41843	//     "$ref": "PlacementsListResponse"
41844	//   },
41845	//   "scopes": [
41846	//     "https://www.googleapis.com/auth/dfatrafficking"
41847	//   ]
41848	// }
41849
41850}
41851
41852// Pages invokes f for each page of results.
41853// A non-nil error returned from f will halt the iteration.
41854// The provided context supersedes any context provided to the Context method.
41855func (c *PlacementsListCall) Pages(ctx context.Context, f func(*PlacementsListResponse) error) error {
41856	c.ctx_ = ctx
41857	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
41858	for {
41859		x, err := c.Do()
41860		if err != nil {
41861			return err
41862		}
41863		if err := f(x); err != nil {
41864			return err
41865		}
41866		if x.NextPageToken == "" {
41867			return nil
41868		}
41869		c.PageToken(x.NextPageToken)
41870	}
41871}
41872
41873// method id "dfareporting.placements.patch":
41874
41875type PlacementsPatchCall struct {
41876	s          *Service
41877	profileId  int64
41878	placement  *Placement
41879	urlParams_ gensupport.URLParams
41880	ctx_       context.Context
41881	header_    http.Header
41882}
41883
41884// Patch: Updates an existing placement. This method supports patch
41885// semantics.
41886//
41887// - id: Placement ID.
41888// - profileId: User profile ID associated with this request.
41889func (r *PlacementsService) Patch(profileId int64, id int64, placement *Placement) *PlacementsPatchCall {
41890	c := &PlacementsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41891	c.profileId = profileId
41892	c.urlParams_.Set("id", fmt.Sprint(id))
41893	c.placement = placement
41894	return c
41895}
41896
41897// Fields allows partial responses to be retrieved. See
41898// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41899// for more information.
41900func (c *PlacementsPatchCall) Fields(s ...googleapi.Field) *PlacementsPatchCall {
41901	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41902	return c
41903}
41904
41905// Context sets the context to be used in this call's Do method. Any
41906// pending HTTP request will be aborted if the provided context is
41907// canceled.
41908func (c *PlacementsPatchCall) Context(ctx context.Context) *PlacementsPatchCall {
41909	c.ctx_ = ctx
41910	return c
41911}
41912
41913// Header returns an http.Header that can be modified by the caller to
41914// add HTTP headers to the request.
41915func (c *PlacementsPatchCall) Header() http.Header {
41916	if c.header_ == nil {
41917		c.header_ = make(http.Header)
41918	}
41919	return c.header_
41920}
41921
41922func (c *PlacementsPatchCall) doRequest(alt string) (*http.Response, error) {
41923	reqHeaders := make(http.Header)
41924	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41925	for k, v := range c.header_ {
41926		reqHeaders[k] = v
41927	}
41928	reqHeaders.Set("User-Agent", c.s.userAgent())
41929	var body io.Reader = nil
41930	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placement)
41931	if err != nil {
41932		return nil, err
41933	}
41934	reqHeaders.Set("Content-Type", "application/json")
41935	c.urlParams_.Set("alt", alt)
41936	c.urlParams_.Set("prettyPrint", "false")
41937	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placements")
41938	urls += "?" + c.urlParams_.Encode()
41939	req, err := http.NewRequest("PATCH", urls, body)
41940	if err != nil {
41941		return nil, err
41942	}
41943	req.Header = reqHeaders
41944	googleapi.Expand(req.URL, map[string]string{
41945		"profileId": strconv.FormatInt(c.profileId, 10),
41946	})
41947	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41948}
41949
41950// Do executes the "dfareporting.placements.patch" call.
41951// Exactly one of *Placement or error will be non-nil. Any non-2xx
41952// status code is an error. Response headers are in either
41953// *Placement.ServerResponse.Header or (if a response was returned at
41954// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
41955// to check whether the returned error was because
41956// http.StatusNotModified was returned.
41957func (c *PlacementsPatchCall) Do(opts ...googleapi.CallOption) (*Placement, error) {
41958	gensupport.SetOptions(c.urlParams_, opts...)
41959	res, err := c.doRequest("json")
41960	if res != nil && res.StatusCode == http.StatusNotModified {
41961		if res.Body != nil {
41962			res.Body.Close()
41963		}
41964		return nil, &googleapi.Error{
41965			Code:   res.StatusCode,
41966			Header: res.Header,
41967		}
41968	}
41969	if err != nil {
41970		return nil, err
41971	}
41972	defer googleapi.CloseBody(res)
41973	if err := googleapi.CheckResponse(res); err != nil {
41974		return nil, err
41975	}
41976	ret := &Placement{
41977		ServerResponse: googleapi.ServerResponse{
41978			Header:         res.Header,
41979			HTTPStatusCode: res.StatusCode,
41980		},
41981	}
41982	target := &ret
41983	if err := gensupport.DecodeResponse(target, res); err != nil {
41984		return nil, err
41985	}
41986	return ret, nil
41987	// {
41988	//   "description": "Updates an existing placement. This method supports patch semantics.",
41989	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placements",
41990	//   "httpMethod": "PATCH",
41991	//   "id": "dfareporting.placements.patch",
41992	//   "parameterOrder": [
41993	//     "profileId",
41994	//     "id"
41995	//   ],
41996	//   "parameters": {
41997	//     "id": {
41998	//       "description": "Placement ID.",
41999	//       "format": "int64",
42000	//       "location": "query",
42001	//       "required": true,
42002	//       "type": "string"
42003	//     },
42004	//     "profileId": {
42005	//       "description": "User profile ID associated with this request.",
42006	//       "format": "int64",
42007	//       "location": "path",
42008	//       "required": true,
42009	//       "type": "string"
42010	//     }
42011	//   },
42012	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placements",
42013	//   "request": {
42014	//     "$ref": "Placement"
42015	//   },
42016	//   "response": {
42017	//     "$ref": "Placement"
42018	//   },
42019	//   "scopes": [
42020	//     "https://www.googleapis.com/auth/dfatrafficking"
42021	//   ]
42022	// }
42023
42024}
42025
42026// method id "dfareporting.placements.update":
42027
42028type PlacementsUpdateCall struct {
42029	s          *Service
42030	profileId  int64
42031	placement  *Placement
42032	urlParams_ gensupport.URLParams
42033	ctx_       context.Context
42034	header_    http.Header
42035}
42036
42037// Update: Updates an existing placement.
42038//
42039// - profileId: User profile ID associated with this request.
42040func (r *PlacementsService) Update(profileId int64, placement *Placement) *PlacementsUpdateCall {
42041	c := &PlacementsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42042	c.profileId = profileId
42043	c.placement = placement
42044	return c
42045}
42046
42047// Fields allows partial responses to be retrieved. See
42048// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42049// for more information.
42050func (c *PlacementsUpdateCall) Fields(s ...googleapi.Field) *PlacementsUpdateCall {
42051	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42052	return c
42053}
42054
42055// Context sets the context to be used in this call's Do method. Any
42056// pending HTTP request will be aborted if the provided context is
42057// canceled.
42058func (c *PlacementsUpdateCall) Context(ctx context.Context) *PlacementsUpdateCall {
42059	c.ctx_ = ctx
42060	return c
42061}
42062
42063// Header returns an http.Header that can be modified by the caller to
42064// add HTTP headers to the request.
42065func (c *PlacementsUpdateCall) Header() http.Header {
42066	if c.header_ == nil {
42067		c.header_ = make(http.Header)
42068	}
42069	return c.header_
42070}
42071
42072func (c *PlacementsUpdateCall) doRequest(alt string) (*http.Response, error) {
42073	reqHeaders := make(http.Header)
42074	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42075	for k, v := range c.header_ {
42076		reqHeaders[k] = v
42077	}
42078	reqHeaders.Set("User-Agent", c.s.userAgent())
42079	var body io.Reader = nil
42080	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placement)
42081	if err != nil {
42082		return nil, err
42083	}
42084	reqHeaders.Set("Content-Type", "application/json")
42085	c.urlParams_.Set("alt", alt)
42086	c.urlParams_.Set("prettyPrint", "false")
42087	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/placements")
42088	urls += "?" + c.urlParams_.Encode()
42089	req, err := http.NewRequest("PUT", urls, body)
42090	if err != nil {
42091		return nil, err
42092	}
42093	req.Header = reqHeaders
42094	googleapi.Expand(req.URL, map[string]string{
42095		"profileId": strconv.FormatInt(c.profileId, 10),
42096	})
42097	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42098}
42099
42100// Do executes the "dfareporting.placements.update" call.
42101// Exactly one of *Placement or error will be non-nil. Any non-2xx
42102// status code is an error. Response headers are in either
42103// *Placement.ServerResponse.Header or (if a response was returned at
42104// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
42105// to check whether the returned error was because
42106// http.StatusNotModified was returned.
42107func (c *PlacementsUpdateCall) Do(opts ...googleapi.CallOption) (*Placement, error) {
42108	gensupport.SetOptions(c.urlParams_, opts...)
42109	res, err := c.doRequest("json")
42110	if res != nil && res.StatusCode == http.StatusNotModified {
42111		if res.Body != nil {
42112			res.Body.Close()
42113		}
42114		return nil, &googleapi.Error{
42115			Code:   res.StatusCode,
42116			Header: res.Header,
42117		}
42118	}
42119	if err != nil {
42120		return nil, err
42121	}
42122	defer googleapi.CloseBody(res)
42123	if err := googleapi.CheckResponse(res); err != nil {
42124		return nil, err
42125	}
42126	ret := &Placement{
42127		ServerResponse: googleapi.ServerResponse{
42128			Header:         res.Header,
42129			HTTPStatusCode: res.StatusCode,
42130		},
42131	}
42132	target := &ret
42133	if err := gensupport.DecodeResponse(target, res); err != nil {
42134		return nil, err
42135	}
42136	return ret, nil
42137	// {
42138	//   "description": "Updates an existing placement.",
42139	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/placements",
42140	//   "httpMethod": "PUT",
42141	//   "id": "dfareporting.placements.update",
42142	//   "parameterOrder": [
42143	//     "profileId"
42144	//   ],
42145	//   "parameters": {
42146	//     "profileId": {
42147	//       "description": "User profile ID associated with this request.",
42148	//       "format": "int64",
42149	//       "location": "path",
42150	//       "required": true,
42151	//       "type": "string"
42152	//     }
42153	//   },
42154	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/placements",
42155	//   "request": {
42156	//     "$ref": "Placement"
42157	//   },
42158	//   "response": {
42159	//     "$ref": "Placement"
42160	//   },
42161	//   "scopes": [
42162	//     "https://www.googleapis.com/auth/dfatrafficking"
42163	//   ]
42164	// }
42165
42166}
42167
42168// method id "dfareporting.platformTypes.get":
42169
42170type PlatformTypesGetCall struct {
42171	s            *Service
42172	profileId    int64
42173	id           int64
42174	urlParams_   gensupport.URLParams
42175	ifNoneMatch_ string
42176	ctx_         context.Context
42177	header_      http.Header
42178}
42179
42180// Get: Gets one platform type by ID.
42181//
42182// - id: Platform type ID.
42183// - profileId: User profile ID associated with this request.
42184func (r *PlatformTypesService) Get(profileId int64, id int64) *PlatformTypesGetCall {
42185	c := &PlatformTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42186	c.profileId = profileId
42187	c.id = id
42188	return c
42189}
42190
42191// Fields allows partial responses to be retrieved. See
42192// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42193// for more information.
42194func (c *PlatformTypesGetCall) Fields(s ...googleapi.Field) *PlatformTypesGetCall {
42195	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42196	return c
42197}
42198
42199// IfNoneMatch sets the optional parameter which makes the operation
42200// fail if the object's ETag matches the given value. This is useful for
42201// getting updates only after the object has changed since the last
42202// request. Use googleapi.IsNotModified to check whether the response
42203// error from Do is the result of In-None-Match.
42204func (c *PlatformTypesGetCall) IfNoneMatch(entityTag string) *PlatformTypesGetCall {
42205	c.ifNoneMatch_ = entityTag
42206	return c
42207}
42208
42209// Context sets the context to be used in this call's Do method. Any
42210// pending HTTP request will be aborted if the provided context is
42211// canceled.
42212func (c *PlatformTypesGetCall) Context(ctx context.Context) *PlatformTypesGetCall {
42213	c.ctx_ = ctx
42214	return c
42215}
42216
42217// Header returns an http.Header that can be modified by the caller to
42218// add HTTP headers to the request.
42219func (c *PlatformTypesGetCall) Header() http.Header {
42220	if c.header_ == nil {
42221		c.header_ = make(http.Header)
42222	}
42223	return c.header_
42224}
42225
42226func (c *PlatformTypesGetCall) doRequest(alt string) (*http.Response, error) {
42227	reqHeaders := make(http.Header)
42228	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42229	for k, v := range c.header_ {
42230		reqHeaders[k] = v
42231	}
42232	reqHeaders.Set("User-Agent", c.s.userAgent())
42233	if c.ifNoneMatch_ != "" {
42234		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42235	}
42236	var body io.Reader = nil
42237	c.urlParams_.Set("alt", alt)
42238	c.urlParams_.Set("prettyPrint", "false")
42239	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/platformTypes/{id}")
42240	urls += "?" + c.urlParams_.Encode()
42241	req, err := http.NewRequest("GET", urls, body)
42242	if err != nil {
42243		return nil, err
42244	}
42245	req.Header = reqHeaders
42246	googleapi.Expand(req.URL, map[string]string{
42247		"profileId": strconv.FormatInt(c.profileId, 10),
42248		"id":        strconv.FormatInt(c.id, 10),
42249	})
42250	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42251}
42252
42253// Do executes the "dfareporting.platformTypes.get" call.
42254// Exactly one of *PlatformType or error will be non-nil. Any non-2xx
42255// status code is an error. Response headers are in either
42256// *PlatformType.ServerResponse.Header or (if a response was returned at
42257// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
42258// to check whether the returned error was because
42259// http.StatusNotModified was returned.
42260func (c *PlatformTypesGetCall) Do(opts ...googleapi.CallOption) (*PlatformType, error) {
42261	gensupport.SetOptions(c.urlParams_, opts...)
42262	res, err := c.doRequest("json")
42263	if res != nil && res.StatusCode == http.StatusNotModified {
42264		if res.Body != nil {
42265			res.Body.Close()
42266		}
42267		return nil, &googleapi.Error{
42268			Code:   res.StatusCode,
42269			Header: res.Header,
42270		}
42271	}
42272	if err != nil {
42273		return nil, err
42274	}
42275	defer googleapi.CloseBody(res)
42276	if err := googleapi.CheckResponse(res); err != nil {
42277		return nil, err
42278	}
42279	ret := &PlatformType{
42280		ServerResponse: googleapi.ServerResponse{
42281			Header:         res.Header,
42282			HTTPStatusCode: res.StatusCode,
42283		},
42284	}
42285	target := &ret
42286	if err := gensupport.DecodeResponse(target, res); err != nil {
42287		return nil, err
42288	}
42289	return ret, nil
42290	// {
42291	//   "description": "Gets one platform type by ID.",
42292	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/platformTypes/{id}",
42293	//   "httpMethod": "GET",
42294	//   "id": "dfareporting.platformTypes.get",
42295	//   "parameterOrder": [
42296	//     "profileId",
42297	//     "id"
42298	//   ],
42299	//   "parameters": {
42300	//     "id": {
42301	//       "description": "Platform type ID.",
42302	//       "format": "int64",
42303	//       "location": "path",
42304	//       "required": true,
42305	//       "type": "string"
42306	//     },
42307	//     "profileId": {
42308	//       "description": "User profile ID associated with this request.",
42309	//       "format": "int64",
42310	//       "location": "path",
42311	//       "required": true,
42312	//       "type": "string"
42313	//     }
42314	//   },
42315	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/platformTypes/{id}",
42316	//   "response": {
42317	//     "$ref": "PlatformType"
42318	//   },
42319	//   "scopes": [
42320	//     "https://www.googleapis.com/auth/dfatrafficking"
42321	//   ]
42322	// }
42323
42324}
42325
42326// method id "dfareporting.platformTypes.list":
42327
42328type PlatformTypesListCall struct {
42329	s            *Service
42330	profileId    int64
42331	urlParams_   gensupport.URLParams
42332	ifNoneMatch_ string
42333	ctx_         context.Context
42334	header_      http.Header
42335}
42336
42337// List: Retrieves a list of platform types.
42338//
42339// - profileId: User profile ID associated with this request.
42340func (r *PlatformTypesService) List(profileId int64) *PlatformTypesListCall {
42341	c := &PlatformTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42342	c.profileId = profileId
42343	return c
42344}
42345
42346// Fields allows partial responses to be retrieved. See
42347// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42348// for more information.
42349func (c *PlatformTypesListCall) Fields(s ...googleapi.Field) *PlatformTypesListCall {
42350	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42351	return c
42352}
42353
42354// IfNoneMatch sets the optional parameter which makes the operation
42355// fail if the object's ETag matches the given value. This is useful for
42356// getting updates only after the object has changed since the last
42357// request. Use googleapi.IsNotModified to check whether the response
42358// error from Do is the result of In-None-Match.
42359func (c *PlatformTypesListCall) IfNoneMatch(entityTag string) *PlatformTypesListCall {
42360	c.ifNoneMatch_ = entityTag
42361	return c
42362}
42363
42364// Context sets the context to be used in this call's Do method. Any
42365// pending HTTP request will be aborted if the provided context is
42366// canceled.
42367func (c *PlatformTypesListCall) Context(ctx context.Context) *PlatformTypesListCall {
42368	c.ctx_ = ctx
42369	return c
42370}
42371
42372// Header returns an http.Header that can be modified by the caller to
42373// add HTTP headers to the request.
42374func (c *PlatformTypesListCall) Header() http.Header {
42375	if c.header_ == nil {
42376		c.header_ = make(http.Header)
42377	}
42378	return c.header_
42379}
42380
42381func (c *PlatformTypesListCall) doRequest(alt string) (*http.Response, error) {
42382	reqHeaders := make(http.Header)
42383	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42384	for k, v := range c.header_ {
42385		reqHeaders[k] = v
42386	}
42387	reqHeaders.Set("User-Agent", c.s.userAgent())
42388	if c.ifNoneMatch_ != "" {
42389		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42390	}
42391	var body io.Reader = nil
42392	c.urlParams_.Set("alt", alt)
42393	c.urlParams_.Set("prettyPrint", "false")
42394	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/platformTypes")
42395	urls += "?" + c.urlParams_.Encode()
42396	req, err := http.NewRequest("GET", urls, body)
42397	if err != nil {
42398		return nil, err
42399	}
42400	req.Header = reqHeaders
42401	googleapi.Expand(req.URL, map[string]string{
42402		"profileId": strconv.FormatInt(c.profileId, 10),
42403	})
42404	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42405}
42406
42407// Do executes the "dfareporting.platformTypes.list" call.
42408// Exactly one of *PlatformTypesListResponse or error will be non-nil.
42409// Any non-2xx status code is an error. Response headers are in either
42410// *PlatformTypesListResponse.ServerResponse.Header or (if a response
42411// was returned at all) in error.(*googleapi.Error).Header. Use
42412// googleapi.IsNotModified to check whether the returned error was
42413// because http.StatusNotModified was returned.
42414func (c *PlatformTypesListCall) Do(opts ...googleapi.CallOption) (*PlatformTypesListResponse, error) {
42415	gensupport.SetOptions(c.urlParams_, opts...)
42416	res, err := c.doRequest("json")
42417	if res != nil && res.StatusCode == http.StatusNotModified {
42418		if res.Body != nil {
42419			res.Body.Close()
42420		}
42421		return nil, &googleapi.Error{
42422			Code:   res.StatusCode,
42423			Header: res.Header,
42424		}
42425	}
42426	if err != nil {
42427		return nil, err
42428	}
42429	defer googleapi.CloseBody(res)
42430	if err := googleapi.CheckResponse(res); err != nil {
42431		return nil, err
42432	}
42433	ret := &PlatformTypesListResponse{
42434		ServerResponse: googleapi.ServerResponse{
42435			Header:         res.Header,
42436			HTTPStatusCode: res.StatusCode,
42437		},
42438	}
42439	target := &ret
42440	if err := gensupport.DecodeResponse(target, res); err != nil {
42441		return nil, err
42442	}
42443	return ret, nil
42444	// {
42445	//   "description": "Retrieves a list of platform types.",
42446	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/platformTypes",
42447	//   "httpMethod": "GET",
42448	//   "id": "dfareporting.platformTypes.list",
42449	//   "parameterOrder": [
42450	//     "profileId"
42451	//   ],
42452	//   "parameters": {
42453	//     "profileId": {
42454	//       "description": "User profile ID associated with this request.",
42455	//       "format": "int64",
42456	//       "location": "path",
42457	//       "required": true,
42458	//       "type": "string"
42459	//     }
42460	//   },
42461	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/platformTypes",
42462	//   "response": {
42463	//     "$ref": "PlatformTypesListResponse"
42464	//   },
42465	//   "scopes": [
42466	//     "https://www.googleapis.com/auth/dfatrafficking"
42467	//   ]
42468	// }
42469
42470}
42471
42472// method id "dfareporting.postalCodes.get":
42473
42474type PostalCodesGetCall struct {
42475	s            *Service
42476	profileId    int64
42477	code         string
42478	urlParams_   gensupport.URLParams
42479	ifNoneMatch_ string
42480	ctx_         context.Context
42481	header_      http.Header
42482}
42483
42484// Get: Gets one postal code by ID.
42485//
42486// - code: Postal code ID.
42487// - profileId: User profile ID associated with this request.
42488func (r *PostalCodesService) Get(profileId int64, code string) *PostalCodesGetCall {
42489	c := &PostalCodesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42490	c.profileId = profileId
42491	c.code = code
42492	return c
42493}
42494
42495// Fields allows partial responses to be retrieved. See
42496// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42497// for more information.
42498func (c *PostalCodesGetCall) Fields(s ...googleapi.Field) *PostalCodesGetCall {
42499	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42500	return c
42501}
42502
42503// IfNoneMatch sets the optional parameter which makes the operation
42504// fail if the object's ETag matches the given value. This is useful for
42505// getting updates only after the object has changed since the last
42506// request. Use googleapi.IsNotModified to check whether the response
42507// error from Do is the result of In-None-Match.
42508func (c *PostalCodesGetCall) IfNoneMatch(entityTag string) *PostalCodesGetCall {
42509	c.ifNoneMatch_ = entityTag
42510	return c
42511}
42512
42513// Context sets the context to be used in this call's Do method. Any
42514// pending HTTP request will be aborted if the provided context is
42515// canceled.
42516func (c *PostalCodesGetCall) Context(ctx context.Context) *PostalCodesGetCall {
42517	c.ctx_ = ctx
42518	return c
42519}
42520
42521// Header returns an http.Header that can be modified by the caller to
42522// add HTTP headers to the request.
42523func (c *PostalCodesGetCall) Header() http.Header {
42524	if c.header_ == nil {
42525		c.header_ = make(http.Header)
42526	}
42527	return c.header_
42528}
42529
42530func (c *PostalCodesGetCall) doRequest(alt string) (*http.Response, error) {
42531	reqHeaders := make(http.Header)
42532	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42533	for k, v := range c.header_ {
42534		reqHeaders[k] = v
42535	}
42536	reqHeaders.Set("User-Agent", c.s.userAgent())
42537	if c.ifNoneMatch_ != "" {
42538		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42539	}
42540	var body io.Reader = nil
42541	c.urlParams_.Set("alt", alt)
42542	c.urlParams_.Set("prettyPrint", "false")
42543	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/postalCodes/{code}")
42544	urls += "?" + c.urlParams_.Encode()
42545	req, err := http.NewRequest("GET", urls, body)
42546	if err != nil {
42547		return nil, err
42548	}
42549	req.Header = reqHeaders
42550	googleapi.Expand(req.URL, map[string]string{
42551		"profileId": strconv.FormatInt(c.profileId, 10),
42552		"code":      c.code,
42553	})
42554	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42555}
42556
42557// Do executes the "dfareporting.postalCodes.get" call.
42558// Exactly one of *PostalCode or error will be non-nil. Any non-2xx
42559// status code is an error. Response headers are in either
42560// *PostalCode.ServerResponse.Header or (if a response was returned at
42561// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
42562// to check whether the returned error was because
42563// http.StatusNotModified was returned.
42564func (c *PostalCodesGetCall) Do(opts ...googleapi.CallOption) (*PostalCode, error) {
42565	gensupport.SetOptions(c.urlParams_, opts...)
42566	res, err := c.doRequest("json")
42567	if res != nil && res.StatusCode == http.StatusNotModified {
42568		if res.Body != nil {
42569			res.Body.Close()
42570		}
42571		return nil, &googleapi.Error{
42572			Code:   res.StatusCode,
42573			Header: res.Header,
42574		}
42575	}
42576	if err != nil {
42577		return nil, err
42578	}
42579	defer googleapi.CloseBody(res)
42580	if err := googleapi.CheckResponse(res); err != nil {
42581		return nil, err
42582	}
42583	ret := &PostalCode{
42584		ServerResponse: googleapi.ServerResponse{
42585			Header:         res.Header,
42586			HTTPStatusCode: res.StatusCode,
42587		},
42588	}
42589	target := &ret
42590	if err := gensupport.DecodeResponse(target, res); err != nil {
42591		return nil, err
42592	}
42593	return ret, nil
42594	// {
42595	//   "description": "Gets one postal code by ID.",
42596	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/postalCodes/{code}",
42597	//   "httpMethod": "GET",
42598	//   "id": "dfareporting.postalCodes.get",
42599	//   "parameterOrder": [
42600	//     "profileId",
42601	//     "code"
42602	//   ],
42603	//   "parameters": {
42604	//     "code": {
42605	//       "description": "Postal code ID.",
42606	//       "location": "path",
42607	//       "required": true,
42608	//       "type": "string"
42609	//     },
42610	//     "profileId": {
42611	//       "description": "User profile ID associated with this request.",
42612	//       "format": "int64",
42613	//       "location": "path",
42614	//       "required": true,
42615	//       "type": "string"
42616	//     }
42617	//   },
42618	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/postalCodes/{code}",
42619	//   "response": {
42620	//     "$ref": "PostalCode"
42621	//   },
42622	//   "scopes": [
42623	//     "https://www.googleapis.com/auth/dfatrafficking"
42624	//   ]
42625	// }
42626
42627}
42628
42629// method id "dfareporting.postalCodes.list":
42630
42631type PostalCodesListCall struct {
42632	s            *Service
42633	profileId    int64
42634	urlParams_   gensupport.URLParams
42635	ifNoneMatch_ string
42636	ctx_         context.Context
42637	header_      http.Header
42638}
42639
42640// List: Retrieves a list of postal codes.
42641//
42642// - profileId: User profile ID associated with this request.
42643func (r *PostalCodesService) List(profileId int64) *PostalCodesListCall {
42644	c := &PostalCodesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42645	c.profileId = profileId
42646	return c
42647}
42648
42649// Fields allows partial responses to be retrieved. See
42650// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42651// for more information.
42652func (c *PostalCodesListCall) Fields(s ...googleapi.Field) *PostalCodesListCall {
42653	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42654	return c
42655}
42656
42657// IfNoneMatch sets the optional parameter which makes the operation
42658// fail if the object's ETag matches the given value. This is useful for
42659// getting updates only after the object has changed since the last
42660// request. Use googleapi.IsNotModified to check whether the response
42661// error from Do is the result of In-None-Match.
42662func (c *PostalCodesListCall) IfNoneMatch(entityTag string) *PostalCodesListCall {
42663	c.ifNoneMatch_ = entityTag
42664	return c
42665}
42666
42667// Context sets the context to be used in this call's Do method. Any
42668// pending HTTP request will be aborted if the provided context is
42669// canceled.
42670func (c *PostalCodesListCall) Context(ctx context.Context) *PostalCodesListCall {
42671	c.ctx_ = ctx
42672	return c
42673}
42674
42675// Header returns an http.Header that can be modified by the caller to
42676// add HTTP headers to the request.
42677func (c *PostalCodesListCall) Header() http.Header {
42678	if c.header_ == nil {
42679		c.header_ = make(http.Header)
42680	}
42681	return c.header_
42682}
42683
42684func (c *PostalCodesListCall) doRequest(alt string) (*http.Response, error) {
42685	reqHeaders := make(http.Header)
42686	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42687	for k, v := range c.header_ {
42688		reqHeaders[k] = v
42689	}
42690	reqHeaders.Set("User-Agent", c.s.userAgent())
42691	if c.ifNoneMatch_ != "" {
42692		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42693	}
42694	var body io.Reader = nil
42695	c.urlParams_.Set("alt", alt)
42696	c.urlParams_.Set("prettyPrint", "false")
42697	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/postalCodes")
42698	urls += "?" + c.urlParams_.Encode()
42699	req, err := http.NewRequest("GET", urls, body)
42700	if err != nil {
42701		return nil, err
42702	}
42703	req.Header = reqHeaders
42704	googleapi.Expand(req.URL, map[string]string{
42705		"profileId": strconv.FormatInt(c.profileId, 10),
42706	})
42707	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42708}
42709
42710// Do executes the "dfareporting.postalCodes.list" call.
42711// Exactly one of *PostalCodesListResponse or error will be non-nil. Any
42712// non-2xx status code is an error. Response headers are in either
42713// *PostalCodesListResponse.ServerResponse.Header or (if a response was
42714// returned at all) in error.(*googleapi.Error).Header. Use
42715// googleapi.IsNotModified to check whether the returned error was
42716// because http.StatusNotModified was returned.
42717func (c *PostalCodesListCall) Do(opts ...googleapi.CallOption) (*PostalCodesListResponse, error) {
42718	gensupport.SetOptions(c.urlParams_, opts...)
42719	res, err := c.doRequest("json")
42720	if res != nil && res.StatusCode == http.StatusNotModified {
42721		if res.Body != nil {
42722			res.Body.Close()
42723		}
42724		return nil, &googleapi.Error{
42725			Code:   res.StatusCode,
42726			Header: res.Header,
42727		}
42728	}
42729	if err != nil {
42730		return nil, err
42731	}
42732	defer googleapi.CloseBody(res)
42733	if err := googleapi.CheckResponse(res); err != nil {
42734		return nil, err
42735	}
42736	ret := &PostalCodesListResponse{
42737		ServerResponse: googleapi.ServerResponse{
42738			Header:         res.Header,
42739			HTTPStatusCode: res.StatusCode,
42740		},
42741	}
42742	target := &ret
42743	if err := gensupport.DecodeResponse(target, res); err != nil {
42744		return nil, err
42745	}
42746	return ret, nil
42747	// {
42748	//   "description": "Retrieves a list of postal codes.",
42749	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/postalCodes",
42750	//   "httpMethod": "GET",
42751	//   "id": "dfareporting.postalCodes.list",
42752	//   "parameterOrder": [
42753	//     "profileId"
42754	//   ],
42755	//   "parameters": {
42756	//     "profileId": {
42757	//       "description": "User profile ID associated with this request.",
42758	//       "format": "int64",
42759	//       "location": "path",
42760	//       "required": true,
42761	//       "type": "string"
42762	//     }
42763	//   },
42764	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/postalCodes",
42765	//   "response": {
42766	//     "$ref": "PostalCodesListResponse"
42767	//   },
42768	//   "scopes": [
42769	//     "https://www.googleapis.com/auth/dfatrafficking"
42770	//   ]
42771	// }
42772
42773}
42774
42775// method id "dfareporting.projects.get":
42776
42777type ProjectsGetCall struct {
42778	s            *Service
42779	profileId    int64
42780	id           int64
42781	urlParams_   gensupport.URLParams
42782	ifNoneMatch_ string
42783	ctx_         context.Context
42784	header_      http.Header
42785}
42786
42787// Get: Gets one project by ID.
42788//
42789// - id: Project ID.
42790// - profileId: User profile ID associated with this request.
42791func (r *ProjectsService) Get(profileId int64, id int64) *ProjectsGetCall {
42792	c := &ProjectsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42793	c.profileId = profileId
42794	c.id = id
42795	return c
42796}
42797
42798// Fields allows partial responses to be retrieved. See
42799// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42800// for more information.
42801func (c *ProjectsGetCall) Fields(s ...googleapi.Field) *ProjectsGetCall {
42802	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42803	return c
42804}
42805
42806// IfNoneMatch sets the optional parameter which makes the operation
42807// fail if the object's ETag matches the given value. This is useful for
42808// getting updates only after the object has changed since the last
42809// request. Use googleapi.IsNotModified to check whether the response
42810// error from Do is the result of In-None-Match.
42811func (c *ProjectsGetCall) IfNoneMatch(entityTag string) *ProjectsGetCall {
42812	c.ifNoneMatch_ = entityTag
42813	return c
42814}
42815
42816// Context sets the context to be used in this call's Do method. Any
42817// pending HTTP request will be aborted if the provided context is
42818// canceled.
42819func (c *ProjectsGetCall) Context(ctx context.Context) *ProjectsGetCall {
42820	c.ctx_ = ctx
42821	return c
42822}
42823
42824// Header returns an http.Header that can be modified by the caller to
42825// add HTTP headers to the request.
42826func (c *ProjectsGetCall) Header() http.Header {
42827	if c.header_ == nil {
42828		c.header_ = make(http.Header)
42829	}
42830	return c.header_
42831}
42832
42833func (c *ProjectsGetCall) doRequest(alt string) (*http.Response, error) {
42834	reqHeaders := make(http.Header)
42835	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42836	for k, v := range c.header_ {
42837		reqHeaders[k] = v
42838	}
42839	reqHeaders.Set("User-Agent", c.s.userAgent())
42840	if c.ifNoneMatch_ != "" {
42841		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42842	}
42843	var body io.Reader = nil
42844	c.urlParams_.Set("alt", alt)
42845	c.urlParams_.Set("prettyPrint", "false")
42846	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/projects/{id}")
42847	urls += "?" + c.urlParams_.Encode()
42848	req, err := http.NewRequest("GET", urls, body)
42849	if err != nil {
42850		return nil, err
42851	}
42852	req.Header = reqHeaders
42853	googleapi.Expand(req.URL, map[string]string{
42854		"profileId": strconv.FormatInt(c.profileId, 10),
42855		"id":        strconv.FormatInt(c.id, 10),
42856	})
42857	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42858}
42859
42860// Do executes the "dfareporting.projects.get" call.
42861// Exactly one of *Project or error will be non-nil. Any non-2xx status
42862// code is an error. Response headers are in either
42863// *Project.ServerResponse.Header or (if a response was returned at all)
42864// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
42865// check whether the returned error was because http.StatusNotModified
42866// was returned.
42867func (c *ProjectsGetCall) Do(opts ...googleapi.CallOption) (*Project, error) {
42868	gensupport.SetOptions(c.urlParams_, opts...)
42869	res, err := c.doRequest("json")
42870	if res != nil && res.StatusCode == http.StatusNotModified {
42871		if res.Body != nil {
42872			res.Body.Close()
42873		}
42874		return nil, &googleapi.Error{
42875			Code:   res.StatusCode,
42876			Header: res.Header,
42877		}
42878	}
42879	if err != nil {
42880		return nil, err
42881	}
42882	defer googleapi.CloseBody(res)
42883	if err := googleapi.CheckResponse(res); err != nil {
42884		return nil, err
42885	}
42886	ret := &Project{
42887		ServerResponse: googleapi.ServerResponse{
42888			Header:         res.Header,
42889			HTTPStatusCode: res.StatusCode,
42890		},
42891	}
42892	target := &ret
42893	if err := gensupport.DecodeResponse(target, res); err != nil {
42894		return nil, err
42895	}
42896	return ret, nil
42897	// {
42898	//   "description": "Gets one project by ID.",
42899	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/projects/{id}",
42900	//   "httpMethod": "GET",
42901	//   "id": "dfareporting.projects.get",
42902	//   "parameterOrder": [
42903	//     "profileId",
42904	//     "id"
42905	//   ],
42906	//   "parameters": {
42907	//     "id": {
42908	//       "description": "Project ID.",
42909	//       "format": "int64",
42910	//       "location": "path",
42911	//       "required": true,
42912	//       "type": "string"
42913	//     },
42914	//     "profileId": {
42915	//       "description": "User profile ID associated with this request.",
42916	//       "format": "int64",
42917	//       "location": "path",
42918	//       "required": true,
42919	//       "type": "string"
42920	//     }
42921	//   },
42922	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/projects/{id}",
42923	//   "response": {
42924	//     "$ref": "Project"
42925	//   },
42926	//   "scopes": [
42927	//     "https://www.googleapis.com/auth/dfatrafficking"
42928	//   ]
42929	// }
42930
42931}
42932
42933// method id "dfareporting.projects.list":
42934
42935type ProjectsListCall struct {
42936	s            *Service
42937	profileId    int64
42938	urlParams_   gensupport.URLParams
42939	ifNoneMatch_ string
42940	ctx_         context.Context
42941	header_      http.Header
42942}
42943
42944// List: Retrieves a list of projects, possibly filtered. This method
42945// supports paging .
42946//
42947// - profileId: User profile ID associated with this request.
42948func (r *ProjectsService) List(profileId int64) *ProjectsListCall {
42949	c := &ProjectsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42950	c.profileId = profileId
42951	return c
42952}
42953
42954// AdvertiserIds sets the optional parameter "advertiserIds": Select
42955// only projects with these advertiser IDs.
42956func (c *ProjectsListCall) AdvertiserIds(advertiserIds ...int64) *ProjectsListCall {
42957	var advertiserIds_ []string
42958	for _, v := range advertiserIds {
42959		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
42960	}
42961	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
42962	return c
42963}
42964
42965// Ids sets the optional parameter "ids": Select only projects with
42966// these IDs.
42967func (c *ProjectsListCall) Ids(ids ...int64) *ProjectsListCall {
42968	var ids_ []string
42969	for _, v := range ids {
42970		ids_ = append(ids_, fmt.Sprint(v))
42971	}
42972	c.urlParams_.SetMulti("ids", ids_)
42973	return c
42974}
42975
42976// MaxResults sets the optional parameter "maxResults": Maximum number
42977// of results to return.
42978func (c *ProjectsListCall) MaxResults(maxResults int64) *ProjectsListCall {
42979	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
42980	return c
42981}
42982
42983// PageToken sets the optional parameter "pageToken": Value of the
42984// nextPageToken from the previous result page.
42985func (c *ProjectsListCall) PageToken(pageToken string) *ProjectsListCall {
42986	c.urlParams_.Set("pageToken", pageToken)
42987	return c
42988}
42989
42990// SearchString sets the optional parameter "searchString": Allows
42991// searching for projects by name or ID. Wildcards (*) are allowed. For
42992// example, "project*2015" will return projects with names like "project
42993// June 2015", "project April 2015", or simply "project 2015". Most of
42994// the searches also add wildcards implicitly at the start and the end
42995// of the search string. For example, a search string of "project" will
42996// match projects with name "my project", "project 2015", or simply
42997// "project".
42998func (c *ProjectsListCall) SearchString(searchString string) *ProjectsListCall {
42999	c.urlParams_.Set("searchString", searchString)
43000	return c
43001}
43002
43003// SortField sets the optional parameter "sortField": Field by which to
43004// sort the list.
43005//
43006// Possible values:
43007//   "ID" (default)
43008//   "NAME"
43009func (c *ProjectsListCall) SortField(sortField string) *ProjectsListCall {
43010	c.urlParams_.Set("sortField", sortField)
43011	return c
43012}
43013
43014// SortOrder sets the optional parameter "sortOrder": Order of sorted
43015// results.
43016//
43017// Possible values:
43018//   "ASCENDING" (default)
43019//   "DESCENDING"
43020func (c *ProjectsListCall) SortOrder(sortOrder string) *ProjectsListCall {
43021	c.urlParams_.Set("sortOrder", sortOrder)
43022	return c
43023}
43024
43025// Fields allows partial responses to be retrieved. See
43026// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43027// for more information.
43028func (c *ProjectsListCall) Fields(s ...googleapi.Field) *ProjectsListCall {
43029	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43030	return c
43031}
43032
43033// IfNoneMatch sets the optional parameter which makes the operation
43034// fail if the object's ETag matches the given value. This is useful for
43035// getting updates only after the object has changed since the last
43036// request. Use googleapi.IsNotModified to check whether the response
43037// error from Do is the result of In-None-Match.
43038func (c *ProjectsListCall) IfNoneMatch(entityTag string) *ProjectsListCall {
43039	c.ifNoneMatch_ = entityTag
43040	return c
43041}
43042
43043// Context sets the context to be used in this call's Do method. Any
43044// pending HTTP request will be aborted if the provided context is
43045// canceled.
43046func (c *ProjectsListCall) Context(ctx context.Context) *ProjectsListCall {
43047	c.ctx_ = ctx
43048	return c
43049}
43050
43051// Header returns an http.Header that can be modified by the caller to
43052// add HTTP headers to the request.
43053func (c *ProjectsListCall) Header() http.Header {
43054	if c.header_ == nil {
43055		c.header_ = make(http.Header)
43056	}
43057	return c.header_
43058}
43059
43060func (c *ProjectsListCall) doRequest(alt string) (*http.Response, error) {
43061	reqHeaders := make(http.Header)
43062	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
43063	for k, v := range c.header_ {
43064		reqHeaders[k] = v
43065	}
43066	reqHeaders.Set("User-Agent", c.s.userAgent())
43067	if c.ifNoneMatch_ != "" {
43068		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
43069	}
43070	var body io.Reader = nil
43071	c.urlParams_.Set("alt", alt)
43072	c.urlParams_.Set("prettyPrint", "false")
43073	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/projects")
43074	urls += "?" + c.urlParams_.Encode()
43075	req, err := http.NewRequest("GET", urls, body)
43076	if err != nil {
43077		return nil, err
43078	}
43079	req.Header = reqHeaders
43080	googleapi.Expand(req.URL, map[string]string{
43081		"profileId": strconv.FormatInt(c.profileId, 10),
43082	})
43083	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43084}
43085
43086// Do executes the "dfareporting.projects.list" call.
43087// Exactly one of *ProjectsListResponse or error will be non-nil. Any
43088// non-2xx status code is an error. Response headers are in either
43089// *ProjectsListResponse.ServerResponse.Header or (if a response was
43090// returned at all) in error.(*googleapi.Error).Header. Use
43091// googleapi.IsNotModified to check whether the returned error was
43092// because http.StatusNotModified was returned.
43093func (c *ProjectsListCall) Do(opts ...googleapi.CallOption) (*ProjectsListResponse, error) {
43094	gensupport.SetOptions(c.urlParams_, opts...)
43095	res, err := c.doRequest("json")
43096	if res != nil && res.StatusCode == http.StatusNotModified {
43097		if res.Body != nil {
43098			res.Body.Close()
43099		}
43100		return nil, &googleapi.Error{
43101			Code:   res.StatusCode,
43102			Header: res.Header,
43103		}
43104	}
43105	if err != nil {
43106		return nil, err
43107	}
43108	defer googleapi.CloseBody(res)
43109	if err := googleapi.CheckResponse(res); err != nil {
43110		return nil, err
43111	}
43112	ret := &ProjectsListResponse{
43113		ServerResponse: googleapi.ServerResponse{
43114			Header:         res.Header,
43115			HTTPStatusCode: res.StatusCode,
43116		},
43117	}
43118	target := &ret
43119	if err := gensupport.DecodeResponse(target, res); err != nil {
43120		return nil, err
43121	}
43122	return ret, nil
43123	// {
43124	//   "description": "Retrieves a list of projects, possibly filtered. This method supports paging .",
43125	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/projects",
43126	//   "httpMethod": "GET",
43127	//   "id": "dfareporting.projects.list",
43128	//   "parameterOrder": [
43129	//     "profileId"
43130	//   ],
43131	//   "parameters": {
43132	//     "advertiserIds": {
43133	//       "description": "Select only projects with these advertiser IDs.",
43134	//       "format": "int64",
43135	//       "location": "query",
43136	//       "repeated": true,
43137	//       "type": "string"
43138	//     },
43139	//     "ids": {
43140	//       "description": "Select only projects with these IDs.",
43141	//       "format": "int64",
43142	//       "location": "query",
43143	//       "repeated": true,
43144	//       "type": "string"
43145	//     },
43146	//     "maxResults": {
43147	//       "default": "1000",
43148	//       "description": "Maximum number of results to return.",
43149	//       "format": "int32",
43150	//       "location": "query",
43151	//       "maximum": "1000",
43152	//       "minimum": "0",
43153	//       "type": "integer"
43154	//     },
43155	//     "pageToken": {
43156	//       "description": "Value of the nextPageToken from the previous result page.",
43157	//       "location": "query",
43158	//       "type": "string"
43159	//     },
43160	//     "profileId": {
43161	//       "description": "User profile ID associated with this request.",
43162	//       "format": "int64",
43163	//       "location": "path",
43164	//       "required": true,
43165	//       "type": "string"
43166	//     },
43167	//     "searchString": {
43168	//       "description": "Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, \"project*2015\" will return projects with names like \"project June 2015\", \"project April 2015\", or simply \"project 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"project\" will match projects with name \"my project\", \"project 2015\", or simply \"project\".",
43169	//       "location": "query",
43170	//       "type": "string"
43171	//     },
43172	//     "sortField": {
43173	//       "default": "ID",
43174	//       "description": "Field by which to sort the list.",
43175	//       "enum": [
43176	//         "ID",
43177	//         "NAME"
43178	//       ],
43179	//       "enumDescriptions": [
43180	//         "",
43181	//         ""
43182	//       ],
43183	//       "location": "query",
43184	//       "type": "string"
43185	//     },
43186	//     "sortOrder": {
43187	//       "default": "ASCENDING",
43188	//       "description": "Order of sorted results.",
43189	//       "enum": [
43190	//         "ASCENDING",
43191	//         "DESCENDING"
43192	//       ],
43193	//       "enumDescriptions": [
43194	//         "",
43195	//         ""
43196	//       ],
43197	//       "location": "query",
43198	//       "type": "string"
43199	//     }
43200	//   },
43201	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/projects",
43202	//   "response": {
43203	//     "$ref": "ProjectsListResponse"
43204	//   },
43205	//   "scopes": [
43206	//     "https://www.googleapis.com/auth/dfatrafficking"
43207	//   ]
43208	// }
43209
43210}
43211
43212// Pages invokes f for each page of results.
43213// A non-nil error returned from f will halt the iteration.
43214// The provided context supersedes any context provided to the Context method.
43215func (c *ProjectsListCall) Pages(ctx context.Context, f func(*ProjectsListResponse) error) error {
43216	c.ctx_ = ctx
43217	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
43218	for {
43219		x, err := c.Do()
43220		if err != nil {
43221			return err
43222		}
43223		if err := f(x); err != nil {
43224			return err
43225		}
43226		if x.NextPageToken == "" {
43227			return nil
43228		}
43229		c.PageToken(x.NextPageToken)
43230	}
43231}
43232
43233// method id "dfareporting.regions.list":
43234
43235type RegionsListCall struct {
43236	s            *Service
43237	profileId    int64
43238	urlParams_   gensupport.URLParams
43239	ifNoneMatch_ string
43240	ctx_         context.Context
43241	header_      http.Header
43242}
43243
43244// List: Retrieves a list of regions.
43245//
43246// - profileId: User profile ID associated with this request.
43247func (r *RegionsService) List(profileId int64) *RegionsListCall {
43248	c := &RegionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43249	c.profileId = profileId
43250	return c
43251}
43252
43253// Fields allows partial responses to be retrieved. See
43254// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43255// for more information.
43256func (c *RegionsListCall) Fields(s ...googleapi.Field) *RegionsListCall {
43257	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43258	return c
43259}
43260
43261// IfNoneMatch sets the optional parameter which makes the operation
43262// fail if the object's ETag matches the given value. This is useful for
43263// getting updates only after the object has changed since the last
43264// request. Use googleapi.IsNotModified to check whether the response
43265// error from Do is the result of In-None-Match.
43266func (c *RegionsListCall) IfNoneMatch(entityTag string) *RegionsListCall {
43267	c.ifNoneMatch_ = entityTag
43268	return c
43269}
43270
43271// Context sets the context to be used in this call's Do method. Any
43272// pending HTTP request will be aborted if the provided context is
43273// canceled.
43274func (c *RegionsListCall) Context(ctx context.Context) *RegionsListCall {
43275	c.ctx_ = ctx
43276	return c
43277}
43278
43279// Header returns an http.Header that can be modified by the caller to
43280// add HTTP headers to the request.
43281func (c *RegionsListCall) Header() http.Header {
43282	if c.header_ == nil {
43283		c.header_ = make(http.Header)
43284	}
43285	return c.header_
43286}
43287
43288func (c *RegionsListCall) doRequest(alt string) (*http.Response, error) {
43289	reqHeaders := make(http.Header)
43290	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
43291	for k, v := range c.header_ {
43292		reqHeaders[k] = v
43293	}
43294	reqHeaders.Set("User-Agent", c.s.userAgent())
43295	if c.ifNoneMatch_ != "" {
43296		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
43297	}
43298	var body io.Reader = nil
43299	c.urlParams_.Set("alt", alt)
43300	c.urlParams_.Set("prettyPrint", "false")
43301	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/regions")
43302	urls += "?" + c.urlParams_.Encode()
43303	req, err := http.NewRequest("GET", urls, body)
43304	if err != nil {
43305		return nil, err
43306	}
43307	req.Header = reqHeaders
43308	googleapi.Expand(req.URL, map[string]string{
43309		"profileId": strconv.FormatInt(c.profileId, 10),
43310	})
43311	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43312}
43313
43314// Do executes the "dfareporting.regions.list" call.
43315// Exactly one of *RegionsListResponse or error will be non-nil. Any
43316// non-2xx status code is an error. Response headers are in either
43317// *RegionsListResponse.ServerResponse.Header or (if a response was
43318// returned at all) in error.(*googleapi.Error).Header. Use
43319// googleapi.IsNotModified to check whether the returned error was
43320// because http.StatusNotModified was returned.
43321func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*RegionsListResponse, error) {
43322	gensupport.SetOptions(c.urlParams_, opts...)
43323	res, err := c.doRequest("json")
43324	if res != nil && res.StatusCode == http.StatusNotModified {
43325		if res.Body != nil {
43326			res.Body.Close()
43327		}
43328		return nil, &googleapi.Error{
43329			Code:   res.StatusCode,
43330			Header: res.Header,
43331		}
43332	}
43333	if err != nil {
43334		return nil, err
43335	}
43336	defer googleapi.CloseBody(res)
43337	if err := googleapi.CheckResponse(res); err != nil {
43338		return nil, err
43339	}
43340	ret := &RegionsListResponse{
43341		ServerResponse: googleapi.ServerResponse{
43342			Header:         res.Header,
43343			HTTPStatusCode: res.StatusCode,
43344		},
43345	}
43346	target := &ret
43347	if err := gensupport.DecodeResponse(target, res); err != nil {
43348		return nil, err
43349	}
43350	return ret, nil
43351	// {
43352	//   "description": "Retrieves a list of regions.",
43353	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/regions",
43354	//   "httpMethod": "GET",
43355	//   "id": "dfareporting.regions.list",
43356	//   "parameterOrder": [
43357	//     "profileId"
43358	//   ],
43359	//   "parameters": {
43360	//     "profileId": {
43361	//       "description": "User profile ID associated with this request.",
43362	//       "format": "int64",
43363	//       "location": "path",
43364	//       "required": true,
43365	//       "type": "string"
43366	//     }
43367	//   },
43368	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/regions",
43369	//   "response": {
43370	//     "$ref": "RegionsListResponse"
43371	//   },
43372	//   "scopes": [
43373	//     "https://www.googleapis.com/auth/dfatrafficking"
43374	//   ]
43375	// }
43376
43377}
43378
43379// method id "dfareporting.remarketingListShares.get":
43380
43381type RemarketingListSharesGetCall struct {
43382	s                 *Service
43383	profileId         int64
43384	remarketingListId int64
43385	urlParams_        gensupport.URLParams
43386	ifNoneMatch_      string
43387	ctx_              context.Context
43388	header_           http.Header
43389}
43390
43391// Get: Gets one remarketing list share by remarketing list ID.
43392//
43393// - profileId: User profile ID associated with this request.
43394// - remarketingListId: Remarketing list ID.
43395func (r *RemarketingListSharesService) Get(profileId int64, remarketingListId int64) *RemarketingListSharesGetCall {
43396	c := &RemarketingListSharesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43397	c.profileId = profileId
43398	c.remarketingListId = remarketingListId
43399	return c
43400}
43401
43402// Fields allows partial responses to be retrieved. See
43403// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43404// for more information.
43405func (c *RemarketingListSharesGetCall) Fields(s ...googleapi.Field) *RemarketingListSharesGetCall {
43406	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43407	return c
43408}
43409
43410// IfNoneMatch sets the optional parameter which makes the operation
43411// fail if the object's ETag matches the given value. This is useful for
43412// getting updates only after the object has changed since the last
43413// request. Use googleapi.IsNotModified to check whether the response
43414// error from Do is the result of In-None-Match.
43415func (c *RemarketingListSharesGetCall) IfNoneMatch(entityTag string) *RemarketingListSharesGetCall {
43416	c.ifNoneMatch_ = entityTag
43417	return c
43418}
43419
43420// Context sets the context to be used in this call's Do method. Any
43421// pending HTTP request will be aborted if the provided context is
43422// canceled.
43423func (c *RemarketingListSharesGetCall) Context(ctx context.Context) *RemarketingListSharesGetCall {
43424	c.ctx_ = ctx
43425	return c
43426}
43427
43428// Header returns an http.Header that can be modified by the caller to
43429// add HTTP headers to the request.
43430func (c *RemarketingListSharesGetCall) Header() http.Header {
43431	if c.header_ == nil {
43432		c.header_ = make(http.Header)
43433	}
43434	return c.header_
43435}
43436
43437func (c *RemarketingListSharesGetCall) doRequest(alt string) (*http.Response, error) {
43438	reqHeaders := make(http.Header)
43439	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
43440	for k, v := range c.header_ {
43441		reqHeaders[k] = v
43442	}
43443	reqHeaders.Set("User-Agent", c.s.userAgent())
43444	if c.ifNoneMatch_ != "" {
43445		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
43446	}
43447	var body io.Reader = nil
43448	c.urlParams_.Set("alt", alt)
43449	c.urlParams_.Set("prettyPrint", "false")
43450	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares/{remarketingListId}")
43451	urls += "?" + c.urlParams_.Encode()
43452	req, err := http.NewRequest("GET", urls, body)
43453	if err != nil {
43454		return nil, err
43455	}
43456	req.Header = reqHeaders
43457	googleapi.Expand(req.URL, map[string]string{
43458		"profileId":         strconv.FormatInt(c.profileId, 10),
43459		"remarketingListId": strconv.FormatInt(c.remarketingListId, 10),
43460	})
43461	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43462}
43463
43464// Do executes the "dfareporting.remarketingListShares.get" call.
43465// Exactly one of *RemarketingListShare or error will be non-nil. Any
43466// non-2xx status code is an error. Response headers are in either
43467// *RemarketingListShare.ServerResponse.Header or (if a response was
43468// returned at all) in error.(*googleapi.Error).Header. Use
43469// googleapi.IsNotModified to check whether the returned error was
43470// because http.StatusNotModified was returned.
43471func (c *RemarketingListSharesGetCall) Do(opts ...googleapi.CallOption) (*RemarketingListShare, error) {
43472	gensupport.SetOptions(c.urlParams_, opts...)
43473	res, err := c.doRequest("json")
43474	if res != nil && res.StatusCode == http.StatusNotModified {
43475		if res.Body != nil {
43476			res.Body.Close()
43477		}
43478		return nil, &googleapi.Error{
43479			Code:   res.StatusCode,
43480			Header: res.Header,
43481		}
43482	}
43483	if err != nil {
43484		return nil, err
43485	}
43486	defer googleapi.CloseBody(res)
43487	if err := googleapi.CheckResponse(res); err != nil {
43488		return nil, err
43489	}
43490	ret := &RemarketingListShare{
43491		ServerResponse: googleapi.ServerResponse{
43492			Header:         res.Header,
43493			HTTPStatusCode: res.StatusCode,
43494		},
43495	}
43496	target := &ret
43497	if err := gensupport.DecodeResponse(target, res); err != nil {
43498		return nil, err
43499	}
43500	return ret, nil
43501	// {
43502	//   "description": "Gets one remarketing list share by remarketing list ID.",
43503	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares/{remarketingListId}",
43504	//   "httpMethod": "GET",
43505	//   "id": "dfareporting.remarketingListShares.get",
43506	//   "parameterOrder": [
43507	//     "profileId",
43508	//     "remarketingListId"
43509	//   ],
43510	//   "parameters": {
43511	//     "profileId": {
43512	//       "description": "User profile ID associated with this request.",
43513	//       "format": "int64",
43514	//       "location": "path",
43515	//       "required": true,
43516	//       "type": "string"
43517	//     },
43518	//     "remarketingListId": {
43519	//       "description": "Remarketing list ID.",
43520	//       "format": "int64",
43521	//       "location": "path",
43522	//       "required": true,
43523	//       "type": "string"
43524	//     }
43525	//   },
43526	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares/{remarketingListId}",
43527	//   "response": {
43528	//     "$ref": "RemarketingListShare"
43529	//   },
43530	//   "scopes": [
43531	//     "https://www.googleapis.com/auth/dfatrafficking"
43532	//   ]
43533	// }
43534
43535}
43536
43537// method id "dfareporting.remarketingListShares.patch":
43538
43539type RemarketingListSharesPatchCall struct {
43540	s                    *Service
43541	profileId            int64
43542	remarketinglistshare *RemarketingListShare
43543	urlParams_           gensupport.URLParams
43544	ctx_                 context.Context
43545	header_              http.Header
43546}
43547
43548// Patch: Updates an existing remarketing list share. This method
43549// supports patch semantics.
43550//
43551// - id: RemarketingList ID.
43552// - profileId: User profile ID associated with this request.
43553func (r *RemarketingListSharesService) Patch(profileId int64, id int64, remarketinglistshare *RemarketingListShare) *RemarketingListSharesPatchCall {
43554	c := &RemarketingListSharesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43555	c.profileId = profileId
43556	c.urlParams_.Set("id", fmt.Sprint(id))
43557	c.remarketinglistshare = remarketinglistshare
43558	return c
43559}
43560
43561// Fields allows partial responses to be retrieved. See
43562// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43563// for more information.
43564func (c *RemarketingListSharesPatchCall) Fields(s ...googleapi.Field) *RemarketingListSharesPatchCall {
43565	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43566	return c
43567}
43568
43569// Context sets the context to be used in this call's Do method. Any
43570// pending HTTP request will be aborted if the provided context is
43571// canceled.
43572func (c *RemarketingListSharesPatchCall) Context(ctx context.Context) *RemarketingListSharesPatchCall {
43573	c.ctx_ = ctx
43574	return c
43575}
43576
43577// Header returns an http.Header that can be modified by the caller to
43578// add HTTP headers to the request.
43579func (c *RemarketingListSharesPatchCall) Header() http.Header {
43580	if c.header_ == nil {
43581		c.header_ = make(http.Header)
43582	}
43583	return c.header_
43584}
43585
43586func (c *RemarketingListSharesPatchCall) doRequest(alt string) (*http.Response, error) {
43587	reqHeaders := make(http.Header)
43588	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
43589	for k, v := range c.header_ {
43590		reqHeaders[k] = v
43591	}
43592	reqHeaders.Set("User-Agent", c.s.userAgent())
43593	var body io.Reader = nil
43594	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglistshare)
43595	if err != nil {
43596		return nil, err
43597	}
43598	reqHeaders.Set("Content-Type", "application/json")
43599	c.urlParams_.Set("alt", alt)
43600	c.urlParams_.Set("prettyPrint", "false")
43601	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares")
43602	urls += "?" + c.urlParams_.Encode()
43603	req, err := http.NewRequest("PATCH", urls, body)
43604	if err != nil {
43605		return nil, err
43606	}
43607	req.Header = reqHeaders
43608	googleapi.Expand(req.URL, map[string]string{
43609		"profileId": strconv.FormatInt(c.profileId, 10),
43610	})
43611	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43612}
43613
43614// Do executes the "dfareporting.remarketingListShares.patch" call.
43615// Exactly one of *RemarketingListShare or error will be non-nil. Any
43616// non-2xx status code is an error. Response headers are in either
43617// *RemarketingListShare.ServerResponse.Header or (if a response was
43618// returned at all) in error.(*googleapi.Error).Header. Use
43619// googleapi.IsNotModified to check whether the returned error was
43620// because http.StatusNotModified was returned.
43621func (c *RemarketingListSharesPatchCall) Do(opts ...googleapi.CallOption) (*RemarketingListShare, error) {
43622	gensupport.SetOptions(c.urlParams_, opts...)
43623	res, err := c.doRequest("json")
43624	if res != nil && res.StatusCode == http.StatusNotModified {
43625		if res.Body != nil {
43626			res.Body.Close()
43627		}
43628		return nil, &googleapi.Error{
43629			Code:   res.StatusCode,
43630			Header: res.Header,
43631		}
43632	}
43633	if err != nil {
43634		return nil, err
43635	}
43636	defer googleapi.CloseBody(res)
43637	if err := googleapi.CheckResponse(res); err != nil {
43638		return nil, err
43639	}
43640	ret := &RemarketingListShare{
43641		ServerResponse: googleapi.ServerResponse{
43642			Header:         res.Header,
43643			HTTPStatusCode: res.StatusCode,
43644		},
43645	}
43646	target := &ret
43647	if err := gensupport.DecodeResponse(target, res); err != nil {
43648		return nil, err
43649	}
43650	return ret, nil
43651	// {
43652	//   "description": "Updates an existing remarketing list share. This method supports patch semantics.",
43653	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares",
43654	//   "httpMethod": "PATCH",
43655	//   "id": "dfareporting.remarketingListShares.patch",
43656	//   "parameterOrder": [
43657	//     "profileId",
43658	//     "id"
43659	//   ],
43660	//   "parameters": {
43661	//     "id": {
43662	//       "description": "RemarketingList ID.",
43663	//       "format": "int64",
43664	//       "location": "query",
43665	//       "required": true,
43666	//       "type": "string"
43667	//     },
43668	//     "profileId": {
43669	//       "description": "User profile ID associated with this request.",
43670	//       "format": "int64",
43671	//       "location": "path",
43672	//       "required": true,
43673	//       "type": "string"
43674	//     }
43675	//   },
43676	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares",
43677	//   "request": {
43678	//     "$ref": "RemarketingListShare"
43679	//   },
43680	//   "response": {
43681	//     "$ref": "RemarketingListShare"
43682	//   },
43683	//   "scopes": [
43684	//     "https://www.googleapis.com/auth/dfatrafficking"
43685	//   ]
43686	// }
43687
43688}
43689
43690// method id "dfareporting.remarketingListShares.update":
43691
43692type RemarketingListSharesUpdateCall struct {
43693	s                    *Service
43694	profileId            int64
43695	remarketinglistshare *RemarketingListShare
43696	urlParams_           gensupport.URLParams
43697	ctx_                 context.Context
43698	header_              http.Header
43699}
43700
43701// Update: Updates an existing remarketing list share.
43702//
43703// - profileId: User profile ID associated with this request.
43704func (r *RemarketingListSharesService) Update(profileId int64, remarketinglistshare *RemarketingListShare) *RemarketingListSharesUpdateCall {
43705	c := &RemarketingListSharesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43706	c.profileId = profileId
43707	c.remarketinglistshare = remarketinglistshare
43708	return c
43709}
43710
43711// Fields allows partial responses to be retrieved. See
43712// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43713// for more information.
43714func (c *RemarketingListSharesUpdateCall) Fields(s ...googleapi.Field) *RemarketingListSharesUpdateCall {
43715	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43716	return c
43717}
43718
43719// Context sets the context to be used in this call's Do method. Any
43720// pending HTTP request will be aborted if the provided context is
43721// canceled.
43722func (c *RemarketingListSharesUpdateCall) Context(ctx context.Context) *RemarketingListSharesUpdateCall {
43723	c.ctx_ = ctx
43724	return c
43725}
43726
43727// Header returns an http.Header that can be modified by the caller to
43728// add HTTP headers to the request.
43729func (c *RemarketingListSharesUpdateCall) Header() http.Header {
43730	if c.header_ == nil {
43731		c.header_ = make(http.Header)
43732	}
43733	return c.header_
43734}
43735
43736func (c *RemarketingListSharesUpdateCall) doRequest(alt string) (*http.Response, error) {
43737	reqHeaders := make(http.Header)
43738	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
43739	for k, v := range c.header_ {
43740		reqHeaders[k] = v
43741	}
43742	reqHeaders.Set("User-Agent", c.s.userAgent())
43743	var body io.Reader = nil
43744	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglistshare)
43745	if err != nil {
43746		return nil, err
43747	}
43748	reqHeaders.Set("Content-Type", "application/json")
43749	c.urlParams_.Set("alt", alt)
43750	c.urlParams_.Set("prettyPrint", "false")
43751	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares")
43752	urls += "?" + c.urlParams_.Encode()
43753	req, err := http.NewRequest("PUT", urls, body)
43754	if err != nil {
43755		return nil, err
43756	}
43757	req.Header = reqHeaders
43758	googleapi.Expand(req.URL, map[string]string{
43759		"profileId": strconv.FormatInt(c.profileId, 10),
43760	})
43761	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43762}
43763
43764// Do executes the "dfareporting.remarketingListShares.update" call.
43765// Exactly one of *RemarketingListShare or error will be non-nil. Any
43766// non-2xx status code is an error. Response headers are in either
43767// *RemarketingListShare.ServerResponse.Header or (if a response was
43768// returned at all) in error.(*googleapi.Error).Header. Use
43769// googleapi.IsNotModified to check whether the returned error was
43770// because http.StatusNotModified was returned.
43771func (c *RemarketingListSharesUpdateCall) Do(opts ...googleapi.CallOption) (*RemarketingListShare, error) {
43772	gensupport.SetOptions(c.urlParams_, opts...)
43773	res, err := c.doRequest("json")
43774	if res != nil && res.StatusCode == http.StatusNotModified {
43775		if res.Body != nil {
43776			res.Body.Close()
43777		}
43778		return nil, &googleapi.Error{
43779			Code:   res.StatusCode,
43780			Header: res.Header,
43781		}
43782	}
43783	if err != nil {
43784		return nil, err
43785	}
43786	defer googleapi.CloseBody(res)
43787	if err := googleapi.CheckResponse(res); err != nil {
43788		return nil, err
43789	}
43790	ret := &RemarketingListShare{
43791		ServerResponse: googleapi.ServerResponse{
43792			Header:         res.Header,
43793			HTTPStatusCode: res.StatusCode,
43794		},
43795	}
43796	target := &ret
43797	if err := gensupport.DecodeResponse(target, res); err != nil {
43798		return nil, err
43799	}
43800	return ret, nil
43801	// {
43802	//   "description": "Updates an existing remarketing list share.",
43803	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares",
43804	//   "httpMethod": "PUT",
43805	//   "id": "dfareporting.remarketingListShares.update",
43806	//   "parameterOrder": [
43807	//     "profileId"
43808	//   ],
43809	//   "parameters": {
43810	//     "profileId": {
43811	//       "description": "User profile ID associated with this request.",
43812	//       "format": "int64",
43813	//       "location": "path",
43814	//       "required": true,
43815	//       "type": "string"
43816	//     }
43817	//   },
43818	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/remarketingListShares",
43819	//   "request": {
43820	//     "$ref": "RemarketingListShare"
43821	//   },
43822	//   "response": {
43823	//     "$ref": "RemarketingListShare"
43824	//   },
43825	//   "scopes": [
43826	//     "https://www.googleapis.com/auth/dfatrafficking"
43827	//   ]
43828	// }
43829
43830}
43831
43832// method id "dfareporting.remarketingLists.get":
43833
43834type RemarketingListsGetCall struct {
43835	s            *Service
43836	profileId    int64
43837	id           int64
43838	urlParams_   gensupport.URLParams
43839	ifNoneMatch_ string
43840	ctx_         context.Context
43841	header_      http.Header
43842}
43843
43844// Get: Gets one remarketing list by ID.
43845//
43846// - id: Remarketing list ID.
43847// - profileId: User profile ID associated with this request.
43848func (r *RemarketingListsService) Get(profileId int64, id int64) *RemarketingListsGetCall {
43849	c := &RemarketingListsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43850	c.profileId = profileId
43851	c.id = id
43852	return c
43853}
43854
43855// Fields allows partial responses to be retrieved. See
43856// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43857// for more information.
43858func (c *RemarketingListsGetCall) Fields(s ...googleapi.Field) *RemarketingListsGetCall {
43859	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43860	return c
43861}
43862
43863// IfNoneMatch sets the optional parameter which makes the operation
43864// fail if the object's ETag matches the given value. This is useful for
43865// getting updates only after the object has changed since the last
43866// request. Use googleapi.IsNotModified to check whether the response
43867// error from Do is the result of In-None-Match.
43868func (c *RemarketingListsGetCall) IfNoneMatch(entityTag string) *RemarketingListsGetCall {
43869	c.ifNoneMatch_ = entityTag
43870	return c
43871}
43872
43873// Context sets the context to be used in this call's Do method. Any
43874// pending HTTP request will be aborted if the provided context is
43875// canceled.
43876func (c *RemarketingListsGetCall) Context(ctx context.Context) *RemarketingListsGetCall {
43877	c.ctx_ = ctx
43878	return c
43879}
43880
43881// Header returns an http.Header that can be modified by the caller to
43882// add HTTP headers to the request.
43883func (c *RemarketingListsGetCall) Header() http.Header {
43884	if c.header_ == nil {
43885		c.header_ = make(http.Header)
43886	}
43887	return c.header_
43888}
43889
43890func (c *RemarketingListsGetCall) doRequest(alt string) (*http.Response, error) {
43891	reqHeaders := make(http.Header)
43892	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
43893	for k, v := range c.header_ {
43894		reqHeaders[k] = v
43895	}
43896	reqHeaders.Set("User-Agent", c.s.userAgent())
43897	if c.ifNoneMatch_ != "" {
43898		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
43899	}
43900	var body io.Reader = nil
43901	c.urlParams_.Set("alt", alt)
43902	c.urlParams_.Set("prettyPrint", "false")
43903	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists/{id}")
43904	urls += "?" + c.urlParams_.Encode()
43905	req, err := http.NewRequest("GET", urls, body)
43906	if err != nil {
43907		return nil, err
43908	}
43909	req.Header = reqHeaders
43910	googleapi.Expand(req.URL, map[string]string{
43911		"profileId": strconv.FormatInt(c.profileId, 10),
43912		"id":        strconv.FormatInt(c.id, 10),
43913	})
43914	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43915}
43916
43917// Do executes the "dfareporting.remarketingLists.get" call.
43918// Exactly one of *RemarketingList or error will be non-nil. Any non-2xx
43919// status code is an error. Response headers are in either
43920// *RemarketingList.ServerResponse.Header or (if a response was returned
43921// at all) in error.(*googleapi.Error).Header. Use
43922// googleapi.IsNotModified to check whether the returned error was
43923// because http.StatusNotModified was returned.
43924func (c *RemarketingListsGetCall) Do(opts ...googleapi.CallOption) (*RemarketingList, error) {
43925	gensupport.SetOptions(c.urlParams_, opts...)
43926	res, err := c.doRequest("json")
43927	if res != nil && res.StatusCode == http.StatusNotModified {
43928		if res.Body != nil {
43929			res.Body.Close()
43930		}
43931		return nil, &googleapi.Error{
43932			Code:   res.StatusCode,
43933			Header: res.Header,
43934		}
43935	}
43936	if err != nil {
43937		return nil, err
43938	}
43939	defer googleapi.CloseBody(res)
43940	if err := googleapi.CheckResponse(res); err != nil {
43941		return nil, err
43942	}
43943	ret := &RemarketingList{
43944		ServerResponse: googleapi.ServerResponse{
43945			Header:         res.Header,
43946			HTTPStatusCode: res.StatusCode,
43947		},
43948	}
43949	target := &ret
43950	if err := gensupport.DecodeResponse(target, res); err != nil {
43951		return nil, err
43952	}
43953	return ret, nil
43954	// {
43955	//   "description": "Gets one remarketing list by ID.",
43956	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists/{id}",
43957	//   "httpMethod": "GET",
43958	//   "id": "dfareporting.remarketingLists.get",
43959	//   "parameterOrder": [
43960	//     "profileId",
43961	//     "id"
43962	//   ],
43963	//   "parameters": {
43964	//     "id": {
43965	//       "description": "Remarketing list ID.",
43966	//       "format": "int64",
43967	//       "location": "path",
43968	//       "required": true,
43969	//       "type": "string"
43970	//     },
43971	//     "profileId": {
43972	//       "description": "User profile ID associated with this request.",
43973	//       "format": "int64",
43974	//       "location": "path",
43975	//       "required": true,
43976	//       "type": "string"
43977	//     }
43978	//   },
43979	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists/{id}",
43980	//   "response": {
43981	//     "$ref": "RemarketingList"
43982	//   },
43983	//   "scopes": [
43984	//     "https://www.googleapis.com/auth/dfatrafficking"
43985	//   ]
43986	// }
43987
43988}
43989
43990// method id "dfareporting.remarketingLists.insert":
43991
43992type RemarketingListsInsertCall struct {
43993	s               *Service
43994	profileId       int64
43995	remarketinglist *RemarketingList
43996	urlParams_      gensupport.URLParams
43997	ctx_            context.Context
43998	header_         http.Header
43999}
44000
44001// Insert: Inserts a new remarketing list.
44002//
44003// - profileId: User profile ID associated with this request.
44004func (r *RemarketingListsService) Insert(profileId int64, remarketinglist *RemarketingList) *RemarketingListsInsertCall {
44005	c := &RemarketingListsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
44006	c.profileId = profileId
44007	c.remarketinglist = remarketinglist
44008	return c
44009}
44010
44011// Fields allows partial responses to be retrieved. See
44012// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
44013// for more information.
44014func (c *RemarketingListsInsertCall) Fields(s ...googleapi.Field) *RemarketingListsInsertCall {
44015	c.urlParams_.Set("fields", googleapi.CombineFields(s))
44016	return c
44017}
44018
44019// Context sets the context to be used in this call's Do method. Any
44020// pending HTTP request will be aborted if the provided context is
44021// canceled.
44022func (c *RemarketingListsInsertCall) Context(ctx context.Context) *RemarketingListsInsertCall {
44023	c.ctx_ = ctx
44024	return c
44025}
44026
44027// Header returns an http.Header that can be modified by the caller to
44028// add HTTP headers to the request.
44029func (c *RemarketingListsInsertCall) Header() http.Header {
44030	if c.header_ == nil {
44031		c.header_ = make(http.Header)
44032	}
44033	return c.header_
44034}
44035
44036func (c *RemarketingListsInsertCall) doRequest(alt string) (*http.Response, error) {
44037	reqHeaders := make(http.Header)
44038	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
44039	for k, v := range c.header_ {
44040		reqHeaders[k] = v
44041	}
44042	reqHeaders.Set("User-Agent", c.s.userAgent())
44043	var body io.Reader = nil
44044	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglist)
44045	if err != nil {
44046		return nil, err
44047	}
44048	reqHeaders.Set("Content-Type", "application/json")
44049	c.urlParams_.Set("alt", alt)
44050	c.urlParams_.Set("prettyPrint", "false")
44051	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists")
44052	urls += "?" + c.urlParams_.Encode()
44053	req, err := http.NewRequest("POST", urls, body)
44054	if err != nil {
44055		return nil, err
44056	}
44057	req.Header = reqHeaders
44058	googleapi.Expand(req.URL, map[string]string{
44059		"profileId": strconv.FormatInt(c.profileId, 10),
44060	})
44061	return gensupport.SendRequest(c.ctx_, c.s.client, req)
44062}
44063
44064// Do executes the "dfareporting.remarketingLists.insert" call.
44065// Exactly one of *RemarketingList or error will be non-nil. Any non-2xx
44066// status code is an error. Response headers are in either
44067// *RemarketingList.ServerResponse.Header or (if a response was returned
44068// at all) in error.(*googleapi.Error).Header. Use
44069// googleapi.IsNotModified to check whether the returned error was
44070// because http.StatusNotModified was returned.
44071func (c *RemarketingListsInsertCall) Do(opts ...googleapi.CallOption) (*RemarketingList, error) {
44072	gensupport.SetOptions(c.urlParams_, opts...)
44073	res, err := c.doRequest("json")
44074	if res != nil && res.StatusCode == http.StatusNotModified {
44075		if res.Body != nil {
44076			res.Body.Close()
44077		}
44078		return nil, &googleapi.Error{
44079			Code:   res.StatusCode,
44080			Header: res.Header,
44081		}
44082	}
44083	if err != nil {
44084		return nil, err
44085	}
44086	defer googleapi.CloseBody(res)
44087	if err := googleapi.CheckResponse(res); err != nil {
44088		return nil, err
44089	}
44090	ret := &RemarketingList{
44091		ServerResponse: googleapi.ServerResponse{
44092			Header:         res.Header,
44093			HTTPStatusCode: res.StatusCode,
44094		},
44095	}
44096	target := &ret
44097	if err := gensupport.DecodeResponse(target, res); err != nil {
44098		return nil, err
44099	}
44100	return ret, nil
44101	// {
44102	//   "description": "Inserts a new remarketing list.",
44103	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists",
44104	//   "httpMethod": "POST",
44105	//   "id": "dfareporting.remarketingLists.insert",
44106	//   "parameterOrder": [
44107	//     "profileId"
44108	//   ],
44109	//   "parameters": {
44110	//     "profileId": {
44111	//       "description": "User profile ID associated with this request.",
44112	//       "format": "int64",
44113	//       "location": "path",
44114	//       "required": true,
44115	//       "type": "string"
44116	//     }
44117	//   },
44118	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists",
44119	//   "request": {
44120	//     "$ref": "RemarketingList"
44121	//   },
44122	//   "response": {
44123	//     "$ref": "RemarketingList"
44124	//   },
44125	//   "scopes": [
44126	//     "https://www.googleapis.com/auth/dfatrafficking"
44127	//   ]
44128	// }
44129
44130}
44131
44132// method id "dfareporting.remarketingLists.list":
44133
44134type RemarketingListsListCall struct {
44135	s            *Service
44136	profileId    int64
44137	urlParams_   gensupport.URLParams
44138	ifNoneMatch_ string
44139	ctx_         context.Context
44140	header_      http.Header
44141}
44142
44143// List: Retrieves a list of remarketing lists, possibly filtered. This
44144// method supports paging.
44145//
44146// - advertiserId: Select only remarketing lists owned by this
44147//   advertiser.
44148// - profileId: User profile ID associated with this request.
44149func (r *RemarketingListsService) List(profileId int64, advertiserId int64) *RemarketingListsListCall {
44150	c := &RemarketingListsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
44151	c.profileId = profileId
44152	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
44153	return c
44154}
44155
44156// Active sets the optional parameter "active": Select only active or
44157// only inactive remarketing lists.
44158func (c *RemarketingListsListCall) Active(active bool) *RemarketingListsListCall {
44159	c.urlParams_.Set("active", fmt.Sprint(active))
44160	return c
44161}
44162
44163// FloodlightActivityId sets the optional parameter
44164// "floodlightActivityId": Select only remarketing lists that have this
44165// floodlight activity ID.
44166func (c *RemarketingListsListCall) FloodlightActivityId(floodlightActivityId int64) *RemarketingListsListCall {
44167	c.urlParams_.Set("floodlightActivityId", fmt.Sprint(floodlightActivityId))
44168	return c
44169}
44170
44171// MaxResults sets the optional parameter "maxResults": Maximum number
44172// of results to return.
44173func (c *RemarketingListsListCall) MaxResults(maxResults int64) *RemarketingListsListCall {
44174	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
44175	return c
44176}
44177
44178// Name sets the optional parameter "name": Allows searching for objects
44179// by name or ID. Wildcards (*) are allowed. For example, "remarketing
44180// list*2015" will return objects with names like "remarketing list June
44181// 2015", "remarketing list April 2015", or simply "remarketing list
44182// 2015". Most of the searches also add wildcards implicitly at the
44183// start and the end of the search string. For example, a search string
44184// of "remarketing list" will match objects with name "my remarketing
44185// list", "remarketing list 2015", or simply "remarketing list".
44186func (c *RemarketingListsListCall) Name(name string) *RemarketingListsListCall {
44187	c.urlParams_.Set("name", name)
44188	return c
44189}
44190
44191// PageToken sets the optional parameter "pageToken": Value of the
44192// nextPageToken from the previous result page.
44193func (c *RemarketingListsListCall) PageToken(pageToken string) *RemarketingListsListCall {
44194	c.urlParams_.Set("pageToken", pageToken)
44195	return c
44196}
44197
44198// SortField sets the optional parameter "sortField": Field by which to
44199// sort the list.
44200//
44201// Possible values:
44202//   "ID" (default)
44203//   "NAME"
44204func (c *RemarketingListsListCall) SortField(sortField string) *RemarketingListsListCall {
44205	c.urlParams_.Set("sortField", sortField)
44206	return c
44207}
44208
44209// SortOrder sets the optional parameter "sortOrder": Order of sorted
44210// results.
44211//
44212// Possible values:
44213//   "ASCENDING" (default)
44214//   "DESCENDING"
44215func (c *RemarketingListsListCall) SortOrder(sortOrder string) *RemarketingListsListCall {
44216	c.urlParams_.Set("sortOrder", sortOrder)
44217	return c
44218}
44219
44220// Fields allows partial responses to be retrieved. See
44221// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
44222// for more information.
44223func (c *RemarketingListsListCall) Fields(s ...googleapi.Field) *RemarketingListsListCall {
44224	c.urlParams_.Set("fields", googleapi.CombineFields(s))
44225	return c
44226}
44227
44228// IfNoneMatch sets the optional parameter which makes the operation
44229// fail if the object's ETag matches the given value. This is useful for
44230// getting updates only after the object has changed since the last
44231// request. Use googleapi.IsNotModified to check whether the response
44232// error from Do is the result of In-None-Match.
44233func (c *RemarketingListsListCall) IfNoneMatch(entityTag string) *RemarketingListsListCall {
44234	c.ifNoneMatch_ = entityTag
44235	return c
44236}
44237
44238// Context sets the context to be used in this call's Do method. Any
44239// pending HTTP request will be aborted if the provided context is
44240// canceled.
44241func (c *RemarketingListsListCall) Context(ctx context.Context) *RemarketingListsListCall {
44242	c.ctx_ = ctx
44243	return c
44244}
44245
44246// Header returns an http.Header that can be modified by the caller to
44247// add HTTP headers to the request.
44248func (c *RemarketingListsListCall) Header() http.Header {
44249	if c.header_ == nil {
44250		c.header_ = make(http.Header)
44251	}
44252	return c.header_
44253}
44254
44255func (c *RemarketingListsListCall) doRequest(alt string) (*http.Response, error) {
44256	reqHeaders := make(http.Header)
44257	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
44258	for k, v := range c.header_ {
44259		reqHeaders[k] = v
44260	}
44261	reqHeaders.Set("User-Agent", c.s.userAgent())
44262	if c.ifNoneMatch_ != "" {
44263		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
44264	}
44265	var body io.Reader = nil
44266	c.urlParams_.Set("alt", alt)
44267	c.urlParams_.Set("prettyPrint", "false")
44268	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists")
44269	urls += "?" + c.urlParams_.Encode()
44270	req, err := http.NewRequest("GET", urls, body)
44271	if err != nil {
44272		return nil, err
44273	}
44274	req.Header = reqHeaders
44275	googleapi.Expand(req.URL, map[string]string{
44276		"profileId": strconv.FormatInt(c.profileId, 10),
44277	})
44278	return gensupport.SendRequest(c.ctx_, c.s.client, req)
44279}
44280
44281// Do executes the "dfareporting.remarketingLists.list" call.
44282// Exactly one of *RemarketingListsListResponse or error will be
44283// non-nil. Any non-2xx status code is an error. Response headers are in
44284// either *RemarketingListsListResponse.ServerResponse.Header or (if a
44285// response was returned at all) in error.(*googleapi.Error).Header. Use
44286// googleapi.IsNotModified to check whether the returned error was
44287// because http.StatusNotModified was returned.
44288func (c *RemarketingListsListCall) Do(opts ...googleapi.CallOption) (*RemarketingListsListResponse, error) {
44289	gensupport.SetOptions(c.urlParams_, opts...)
44290	res, err := c.doRequest("json")
44291	if res != nil && res.StatusCode == http.StatusNotModified {
44292		if res.Body != nil {
44293			res.Body.Close()
44294		}
44295		return nil, &googleapi.Error{
44296			Code:   res.StatusCode,
44297			Header: res.Header,
44298		}
44299	}
44300	if err != nil {
44301		return nil, err
44302	}
44303	defer googleapi.CloseBody(res)
44304	if err := googleapi.CheckResponse(res); err != nil {
44305		return nil, err
44306	}
44307	ret := &RemarketingListsListResponse{
44308		ServerResponse: googleapi.ServerResponse{
44309			Header:         res.Header,
44310			HTTPStatusCode: res.StatusCode,
44311		},
44312	}
44313	target := &ret
44314	if err := gensupport.DecodeResponse(target, res); err != nil {
44315		return nil, err
44316	}
44317	return ret, nil
44318	// {
44319	//   "description": "Retrieves a list of remarketing lists, possibly filtered. This method supports paging.",
44320	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists",
44321	//   "httpMethod": "GET",
44322	//   "id": "dfareporting.remarketingLists.list",
44323	//   "parameterOrder": [
44324	//     "profileId",
44325	//     "advertiserId"
44326	//   ],
44327	//   "parameters": {
44328	//     "active": {
44329	//       "description": "Select only active or only inactive remarketing lists.",
44330	//       "location": "query",
44331	//       "type": "boolean"
44332	//     },
44333	//     "advertiserId": {
44334	//       "description": "Select only remarketing lists owned by this advertiser.",
44335	//       "format": "int64",
44336	//       "location": "query",
44337	//       "required": true,
44338	//       "type": "string"
44339	//     },
44340	//     "floodlightActivityId": {
44341	//       "description": "Select only remarketing lists that have this floodlight activity ID.",
44342	//       "format": "int64",
44343	//       "location": "query",
44344	//       "type": "string"
44345	//     },
44346	//     "maxResults": {
44347	//       "default": "1000",
44348	//       "description": "Maximum number of results to return.",
44349	//       "format": "int32",
44350	//       "location": "query",
44351	//       "maximum": "1000",
44352	//       "minimum": "0",
44353	//       "type": "integer"
44354	//     },
44355	//     "name": {
44356	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".",
44357	//       "location": "query",
44358	//       "type": "string"
44359	//     },
44360	//     "pageToken": {
44361	//       "description": "Value of the nextPageToken from the previous result page.",
44362	//       "location": "query",
44363	//       "type": "string"
44364	//     },
44365	//     "profileId": {
44366	//       "description": "User profile ID associated with this request.",
44367	//       "format": "int64",
44368	//       "location": "path",
44369	//       "required": true,
44370	//       "type": "string"
44371	//     },
44372	//     "sortField": {
44373	//       "default": "ID",
44374	//       "description": "Field by which to sort the list.",
44375	//       "enum": [
44376	//         "ID",
44377	//         "NAME"
44378	//       ],
44379	//       "enumDescriptions": [
44380	//         "",
44381	//         ""
44382	//       ],
44383	//       "location": "query",
44384	//       "type": "string"
44385	//     },
44386	//     "sortOrder": {
44387	//       "default": "ASCENDING",
44388	//       "description": "Order of sorted results.",
44389	//       "enum": [
44390	//         "ASCENDING",
44391	//         "DESCENDING"
44392	//       ],
44393	//       "enumDescriptions": [
44394	//         "",
44395	//         ""
44396	//       ],
44397	//       "location": "query",
44398	//       "type": "string"
44399	//     }
44400	//   },
44401	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists",
44402	//   "response": {
44403	//     "$ref": "RemarketingListsListResponse"
44404	//   },
44405	//   "scopes": [
44406	//     "https://www.googleapis.com/auth/dfatrafficking"
44407	//   ]
44408	// }
44409
44410}
44411
44412// Pages invokes f for each page of results.
44413// A non-nil error returned from f will halt the iteration.
44414// The provided context supersedes any context provided to the Context method.
44415func (c *RemarketingListsListCall) Pages(ctx context.Context, f func(*RemarketingListsListResponse) error) error {
44416	c.ctx_ = ctx
44417	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
44418	for {
44419		x, err := c.Do()
44420		if err != nil {
44421			return err
44422		}
44423		if err := f(x); err != nil {
44424			return err
44425		}
44426		if x.NextPageToken == "" {
44427			return nil
44428		}
44429		c.PageToken(x.NextPageToken)
44430	}
44431}
44432
44433// method id "dfareporting.remarketingLists.patch":
44434
44435type RemarketingListsPatchCall struct {
44436	s               *Service
44437	profileId       int64
44438	remarketinglist *RemarketingList
44439	urlParams_      gensupport.URLParams
44440	ctx_            context.Context
44441	header_         http.Header
44442}
44443
44444// Patch: Updates an existing remarketing list. This method supports
44445// patch semantics.
44446//
44447// - id: RemarketingList ID.
44448// - profileId: User profile ID associated with this request.
44449func (r *RemarketingListsService) Patch(profileId int64, id int64, remarketinglist *RemarketingList) *RemarketingListsPatchCall {
44450	c := &RemarketingListsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
44451	c.profileId = profileId
44452	c.urlParams_.Set("id", fmt.Sprint(id))
44453	c.remarketinglist = remarketinglist
44454	return c
44455}
44456
44457// Fields allows partial responses to be retrieved. See
44458// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
44459// for more information.
44460func (c *RemarketingListsPatchCall) Fields(s ...googleapi.Field) *RemarketingListsPatchCall {
44461	c.urlParams_.Set("fields", googleapi.CombineFields(s))
44462	return c
44463}
44464
44465// Context sets the context to be used in this call's Do method. Any
44466// pending HTTP request will be aborted if the provided context is
44467// canceled.
44468func (c *RemarketingListsPatchCall) Context(ctx context.Context) *RemarketingListsPatchCall {
44469	c.ctx_ = ctx
44470	return c
44471}
44472
44473// Header returns an http.Header that can be modified by the caller to
44474// add HTTP headers to the request.
44475func (c *RemarketingListsPatchCall) Header() http.Header {
44476	if c.header_ == nil {
44477		c.header_ = make(http.Header)
44478	}
44479	return c.header_
44480}
44481
44482func (c *RemarketingListsPatchCall) doRequest(alt string) (*http.Response, error) {
44483	reqHeaders := make(http.Header)
44484	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
44485	for k, v := range c.header_ {
44486		reqHeaders[k] = v
44487	}
44488	reqHeaders.Set("User-Agent", c.s.userAgent())
44489	var body io.Reader = nil
44490	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglist)
44491	if err != nil {
44492		return nil, err
44493	}
44494	reqHeaders.Set("Content-Type", "application/json")
44495	c.urlParams_.Set("alt", alt)
44496	c.urlParams_.Set("prettyPrint", "false")
44497	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists")
44498	urls += "?" + c.urlParams_.Encode()
44499	req, err := http.NewRequest("PATCH", urls, body)
44500	if err != nil {
44501		return nil, err
44502	}
44503	req.Header = reqHeaders
44504	googleapi.Expand(req.URL, map[string]string{
44505		"profileId": strconv.FormatInt(c.profileId, 10),
44506	})
44507	return gensupport.SendRequest(c.ctx_, c.s.client, req)
44508}
44509
44510// Do executes the "dfareporting.remarketingLists.patch" call.
44511// Exactly one of *RemarketingList or error will be non-nil. Any non-2xx
44512// status code is an error. Response headers are in either
44513// *RemarketingList.ServerResponse.Header or (if a response was returned
44514// at all) in error.(*googleapi.Error).Header. Use
44515// googleapi.IsNotModified to check whether the returned error was
44516// because http.StatusNotModified was returned.
44517func (c *RemarketingListsPatchCall) Do(opts ...googleapi.CallOption) (*RemarketingList, error) {
44518	gensupport.SetOptions(c.urlParams_, opts...)
44519	res, err := c.doRequest("json")
44520	if res != nil && res.StatusCode == http.StatusNotModified {
44521		if res.Body != nil {
44522			res.Body.Close()
44523		}
44524		return nil, &googleapi.Error{
44525			Code:   res.StatusCode,
44526			Header: res.Header,
44527		}
44528	}
44529	if err != nil {
44530		return nil, err
44531	}
44532	defer googleapi.CloseBody(res)
44533	if err := googleapi.CheckResponse(res); err != nil {
44534		return nil, err
44535	}
44536	ret := &RemarketingList{
44537		ServerResponse: googleapi.ServerResponse{
44538			Header:         res.Header,
44539			HTTPStatusCode: res.StatusCode,
44540		},
44541	}
44542	target := &ret
44543	if err := gensupport.DecodeResponse(target, res); err != nil {
44544		return nil, err
44545	}
44546	return ret, nil
44547	// {
44548	//   "description": "Updates an existing remarketing list. This method supports patch semantics.",
44549	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists",
44550	//   "httpMethod": "PATCH",
44551	//   "id": "dfareporting.remarketingLists.patch",
44552	//   "parameterOrder": [
44553	//     "profileId",
44554	//     "id"
44555	//   ],
44556	//   "parameters": {
44557	//     "id": {
44558	//       "description": "RemarketingList ID.",
44559	//       "format": "int64",
44560	//       "location": "query",
44561	//       "required": true,
44562	//       "type": "string"
44563	//     },
44564	//     "profileId": {
44565	//       "description": "User profile ID associated with this request.",
44566	//       "format": "int64",
44567	//       "location": "path",
44568	//       "required": true,
44569	//       "type": "string"
44570	//     }
44571	//   },
44572	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists",
44573	//   "request": {
44574	//     "$ref": "RemarketingList"
44575	//   },
44576	//   "response": {
44577	//     "$ref": "RemarketingList"
44578	//   },
44579	//   "scopes": [
44580	//     "https://www.googleapis.com/auth/dfatrafficking"
44581	//   ]
44582	// }
44583
44584}
44585
44586// method id "dfareporting.remarketingLists.update":
44587
44588type RemarketingListsUpdateCall struct {
44589	s               *Service
44590	profileId       int64
44591	remarketinglist *RemarketingList
44592	urlParams_      gensupport.URLParams
44593	ctx_            context.Context
44594	header_         http.Header
44595}
44596
44597// Update: Updates an existing remarketing list.
44598//
44599// - profileId: User profile ID associated with this request.
44600func (r *RemarketingListsService) Update(profileId int64, remarketinglist *RemarketingList) *RemarketingListsUpdateCall {
44601	c := &RemarketingListsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
44602	c.profileId = profileId
44603	c.remarketinglist = remarketinglist
44604	return c
44605}
44606
44607// Fields allows partial responses to be retrieved. See
44608// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
44609// for more information.
44610func (c *RemarketingListsUpdateCall) Fields(s ...googleapi.Field) *RemarketingListsUpdateCall {
44611	c.urlParams_.Set("fields", googleapi.CombineFields(s))
44612	return c
44613}
44614
44615// Context sets the context to be used in this call's Do method. Any
44616// pending HTTP request will be aborted if the provided context is
44617// canceled.
44618func (c *RemarketingListsUpdateCall) Context(ctx context.Context) *RemarketingListsUpdateCall {
44619	c.ctx_ = ctx
44620	return c
44621}
44622
44623// Header returns an http.Header that can be modified by the caller to
44624// add HTTP headers to the request.
44625func (c *RemarketingListsUpdateCall) Header() http.Header {
44626	if c.header_ == nil {
44627		c.header_ = make(http.Header)
44628	}
44629	return c.header_
44630}
44631
44632func (c *RemarketingListsUpdateCall) doRequest(alt string) (*http.Response, error) {
44633	reqHeaders := make(http.Header)
44634	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
44635	for k, v := range c.header_ {
44636		reqHeaders[k] = v
44637	}
44638	reqHeaders.Set("User-Agent", c.s.userAgent())
44639	var body io.Reader = nil
44640	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglist)
44641	if err != nil {
44642		return nil, err
44643	}
44644	reqHeaders.Set("Content-Type", "application/json")
44645	c.urlParams_.Set("alt", alt)
44646	c.urlParams_.Set("prettyPrint", "false")
44647	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists")
44648	urls += "?" + c.urlParams_.Encode()
44649	req, err := http.NewRequest("PUT", urls, body)
44650	if err != nil {
44651		return nil, err
44652	}
44653	req.Header = reqHeaders
44654	googleapi.Expand(req.URL, map[string]string{
44655		"profileId": strconv.FormatInt(c.profileId, 10),
44656	})
44657	return gensupport.SendRequest(c.ctx_, c.s.client, req)
44658}
44659
44660// Do executes the "dfareporting.remarketingLists.update" call.
44661// Exactly one of *RemarketingList or error will be non-nil. Any non-2xx
44662// status code is an error. Response headers are in either
44663// *RemarketingList.ServerResponse.Header or (if a response was returned
44664// at all) in error.(*googleapi.Error).Header. Use
44665// googleapi.IsNotModified to check whether the returned error was
44666// because http.StatusNotModified was returned.
44667func (c *RemarketingListsUpdateCall) Do(opts ...googleapi.CallOption) (*RemarketingList, error) {
44668	gensupport.SetOptions(c.urlParams_, opts...)
44669	res, err := c.doRequest("json")
44670	if res != nil && res.StatusCode == http.StatusNotModified {
44671		if res.Body != nil {
44672			res.Body.Close()
44673		}
44674		return nil, &googleapi.Error{
44675			Code:   res.StatusCode,
44676			Header: res.Header,
44677		}
44678	}
44679	if err != nil {
44680		return nil, err
44681	}
44682	defer googleapi.CloseBody(res)
44683	if err := googleapi.CheckResponse(res); err != nil {
44684		return nil, err
44685	}
44686	ret := &RemarketingList{
44687		ServerResponse: googleapi.ServerResponse{
44688			Header:         res.Header,
44689			HTTPStatusCode: res.StatusCode,
44690		},
44691	}
44692	target := &ret
44693	if err := gensupport.DecodeResponse(target, res); err != nil {
44694		return nil, err
44695	}
44696	return ret, nil
44697	// {
44698	//   "description": "Updates an existing remarketing list.",
44699	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists",
44700	//   "httpMethod": "PUT",
44701	//   "id": "dfareporting.remarketingLists.update",
44702	//   "parameterOrder": [
44703	//     "profileId"
44704	//   ],
44705	//   "parameters": {
44706	//     "profileId": {
44707	//       "description": "User profile ID associated with this request.",
44708	//       "format": "int64",
44709	//       "location": "path",
44710	//       "required": true,
44711	//       "type": "string"
44712	//     }
44713	//   },
44714	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/remarketingLists",
44715	//   "request": {
44716	//     "$ref": "RemarketingList"
44717	//   },
44718	//   "response": {
44719	//     "$ref": "RemarketingList"
44720	//   },
44721	//   "scopes": [
44722	//     "https://www.googleapis.com/auth/dfatrafficking"
44723	//   ]
44724	// }
44725
44726}
44727
44728// method id "dfareporting.reports.delete":
44729
44730type ReportsDeleteCall struct {
44731	s          *Service
44732	profileId  int64
44733	reportId   int64
44734	urlParams_ gensupport.URLParams
44735	ctx_       context.Context
44736	header_    http.Header
44737}
44738
44739// Delete: Deletes a report by its ID.
44740//
44741// - profileId: The Campaign Manager 360 user profile ID.
44742// - reportId: The ID of the report.
44743func (r *ReportsService) Delete(profileId int64, reportId int64) *ReportsDeleteCall {
44744	c := &ReportsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
44745	c.profileId = profileId
44746	c.reportId = reportId
44747	return c
44748}
44749
44750// Fields allows partial responses to be retrieved. See
44751// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
44752// for more information.
44753func (c *ReportsDeleteCall) Fields(s ...googleapi.Field) *ReportsDeleteCall {
44754	c.urlParams_.Set("fields", googleapi.CombineFields(s))
44755	return c
44756}
44757
44758// Context sets the context to be used in this call's Do method. Any
44759// pending HTTP request will be aborted if the provided context is
44760// canceled.
44761func (c *ReportsDeleteCall) Context(ctx context.Context) *ReportsDeleteCall {
44762	c.ctx_ = ctx
44763	return c
44764}
44765
44766// Header returns an http.Header that can be modified by the caller to
44767// add HTTP headers to the request.
44768func (c *ReportsDeleteCall) Header() http.Header {
44769	if c.header_ == nil {
44770		c.header_ = make(http.Header)
44771	}
44772	return c.header_
44773}
44774
44775func (c *ReportsDeleteCall) doRequest(alt string) (*http.Response, error) {
44776	reqHeaders := make(http.Header)
44777	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
44778	for k, v := range c.header_ {
44779		reqHeaders[k] = v
44780	}
44781	reqHeaders.Set("User-Agent", c.s.userAgent())
44782	var body io.Reader = nil
44783	c.urlParams_.Set("alt", alt)
44784	c.urlParams_.Set("prettyPrint", "false")
44785	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}")
44786	urls += "?" + c.urlParams_.Encode()
44787	req, err := http.NewRequest("DELETE", urls, body)
44788	if err != nil {
44789		return nil, err
44790	}
44791	req.Header = reqHeaders
44792	googleapi.Expand(req.URL, map[string]string{
44793		"profileId": strconv.FormatInt(c.profileId, 10),
44794		"reportId":  strconv.FormatInt(c.reportId, 10),
44795	})
44796	return gensupport.SendRequest(c.ctx_, c.s.client, req)
44797}
44798
44799// Do executes the "dfareporting.reports.delete" call.
44800func (c *ReportsDeleteCall) Do(opts ...googleapi.CallOption) error {
44801	gensupport.SetOptions(c.urlParams_, opts...)
44802	res, err := c.doRequest("json")
44803	if err != nil {
44804		return err
44805	}
44806	defer googleapi.CloseBody(res)
44807	if err := googleapi.CheckResponse(res); err != nil {
44808		return err
44809	}
44810	return nil
44811	// {
44812	//   "description": "Deletes a report by its ID.",
44813	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}",
44814	//   "httpMethod": "DELETE",
44815	//   "id": "dfareporting.reports.delete",
44816	//   "parameterOrder": [
44817	//     "profileId",
44818	//     "reportId"
44819	//   ],
44820	//   "parameters": {
44821	//     "profileId": {
44822	//       "description": "The Campaign Manager 360 user profile ID.",
44823	//       "format": "int64",
44824	//       "location": "path",
44825	//       "required": true,
44826	//       "type": "string"
44827	//     },
44828	//     "reportId": {
44829	//       "description": "The ID of the report.",
44830	//       "format": "int64",
44831	//       "location": "path",
44832	//       "required": true,
44833	//       "type": "string"
44834	//     }
44835	//   },
44836	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}",
44837	//   "scopes": [
44838	//     "https://www.googleapis.com/auth/dfareporting"
44839	//   ]
44840	// }
44841
44842}
44843
44844// method id "dfareporting.reports.get":
44845
44846type ReportsGetCall struct {
44847	s            *Service
44848	profileId    int64
44849	reportId     int64
44850	urlParams_   gensupport.URLParams
44851	ifNoneMatch_ string
44852	ctx_         context.Context
44853	header_      http.Header
44854}
44855
44856// Get: Retrieves a report by its ID.
44857//
44858// - profileId: The Campaign Manager 360 user profile ID.
44859// - reportId: The ID of the report.
44860func (r *ReportsService) Get(profileId int64, reportId int64) *ReportsGetCall {
44861	c := &ReportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
44862	c.profileId = profileId
44863	c.reportId = reportId
44864	return c
44865}
44866
44867// Fields allows partial responses to be retrieved. See
44868// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
44869// for more information.
44870func (c *ReportsGetCall) Fields(s ...googleapi.Field) *ReportsGetCall {
44871	c.urlParams_.Set("fields", googleapi.CombineFields(s))
44872	return c
44873}
44874
44875// IfNoneMatch sets the optional parameter which makes the operation
44876// fail if the object's ETag matches the given value. This is useful for
44877// getting updates only after the object has changed since the last
44878// request. Use googleapi.IsNotModified to check whether the response
44879// error from Do is the result of In-None-Match.
44880func (c *ReportsGetCall) IfNoneMatch(entityTag string) *ReportsGetCall {
44881	c.ifNoneMatch_ = entityTag
44882	return c
44883}
44884
44885// Context sets the context to be used in this call's Do method. Any
44886// pending HTTP request will be aborted if the provided context is
44887// canceled.
44888func (c *ReportsGetCall) Context(ctx context.Context) *ReportsGetCall {
44889	c.ctx_ = ctx
44890	return c
44891}
44892
44893// Header returns an http.Header that can be modified by the caller to
44894// add HTTP headers to the request.
44895func (c *ReportsGetCall) Header() http.Header {
44896	if c.header_ == nil {
44897		c.header_ = make(http.Header)
44898	}
44899	return c.header_
44900}
44901
44902func (c *ReportsGetCall) doRequest(alt string) (*http.Response, error) {
44903	reqHeaders := make(http.Header)
44904	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
44905	for k, v := range c.header_ {
44906		reqHeaders[k] = v
44907	}
44908	reqHeaders.Set("User-Agent", c.s.userAgent())
44909	if c.ifNoneMatch_ != "" {
44910		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
44911	}
44912	var body io.Reader = nil
44913	c.urlParams_.Set("alt", alt)
44914	c.urlParams_.Set("prettyPrint", "false")
44915	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}")
44916	urls += "?" + c.urlParams_.Encode()
44917	req, err := http.NewRequest("GET", urls, body)
44918	if err != nil {
44919		return nil, err
44920	}
44921	req.Header = reqHeaders
44922	googleapi.Expand(req.URL, map[string]string{
44923		"profileId": strconv.FormatInt(c.profileId, 10),
44924		"reportId":  strconv.FormatInt(c.reportId, 10),
44925	})
44926	return gensupport.SendRequest(c.ctx_, c.s.client, req)
44927}
44928
44929// Do executes the "dfareporting.reports.get" call.
44930// Exactly one of *Report or error will be non-nil. Any non-2xx status
44931// code is an error. Response headers are in either
44932// *Report.ServerResponse.Header or (if a response was returned at all)
44933// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
44934// check whether the returned error was because http.StatusNotModified
44935// was returned.
44936func (c *ReportsGetCall) Do(opts ...googleapi.CallOption) (*Report, error) {
44937	gensupport.SetOptions(c.urlParams_, opts...)
44938	res, err := c.doRequest("json")
44939	if res != nil && res.StatusCode == http.StatusNotModified {
44940		if res.Body != nil {
44941			res.Body.Close()
44942		}
44943		return nil, &googleapi.Error{
44944			Code:   res.StatusCode,
44945			Header: res.Header,
44946		}
44947	}
44948	if err != nil {
44949		return nil, err
44950	}
44951	defer googleapi.CloseBody(res)
44952	if err := googleapi.CheckResponse(res); err != nil {
44953		return nil, err
44954	}
44955	ret := &Report{
44956		ServerResponse: googleapi.ServerResponse{
44957			Header:         res.Header,
44958			HTTPStatusCode: res.StatusCode,
44959		},
44960	}
44961	target := &ret
44962	if err := gensupport.DecodeResponse(target, res); err != nil {
44963		return nil, err
44964	}
44965	return ret, nil
44966	// {
44967	//   "description": "Retrieves a report by its ID.",
44968	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}",
44969	//   "httpMethod": "GET",
44970	//   "id": "dfareporting.reports.get",
44971	//   "parameterOrder": [
44972	//     "profileId",
44973	//     "reportId"
44974	//   ],
44975	//   "parameters": {
44976	//     "profileId": {
44977	//       "description": "The Campaign Manager 360 user profile ID.",
44978	//       "format": "int64",
44979	//       "location": "path",
44980	//       "required": true,
44981	//       "type": "string"
44982	//     },
44983	//     "reportId": {
44984	//       "description": "The ID of the report.",
44985	//       "format": "int64",
44986	//       "location": "path",
44987	//       "required": true,
44988	//       "type": "string"
44989	//     }
44990	//   },
44991	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}",
44992	//   "response": {
44993	//     "$ref": "Report"
44994	//   },
44995	//   "scopes": [
44996	//     "https://www.googleapis.com/auth/dfareporting"
44997	//   ]
44998	// }
44999
45000}
45001
45002// method id "dfareporting.reports.insert":
45003
45004type ReportsInsertCall struct {
45005	s          *Service
45006	profileId  int64
45007	report     *Report
45008	urlParams_ gensupport.URLParams
45009	ctx_       context.Context
45010	header_    http.Header
45011}
45012
45013// Insert: Creates a report.
45014//
45015// - profileId: The Campaign Manager 360 user profile ID.
45016func (r *ReportsService) Insert(profileId int64, report *Report) *ReportsInsertCall {
45017	c := &ReportsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
45018	c.profileId = profileId
45019	c.report = report
45020	return c
45021}
45022
45023// Fields allows partial responses to be retrieved. See
45024// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
45025// for more information.
45026func (c *ReportsInsertCall) Fields(s ...googleapi.Field) *ReportsInsertCall {
45027	c.urlParams_.Set("fields", googleapi.CombineFields(s))
45028	return c
45029}
45030
45031// Context sets the context to be used in this call's Do method. Any
45032// pending HTTP request will be aborted if the provided context is
45033// canceled.
45034func (c *ReportsInsertCall) Context(ctx context.Context) *ReportsInsertCall {
45035	c.ctx_ = ctx
45036	return c
45037}
45038
45039// Header returns an http.Header that can be modified by the caller to
45040// add HTTP headers to the request.
45041func (c *ReportsInsertCall) Header() http.Header {
45042	if c.header_ == nil {
45043		c.header_ = make(http.Header)
45044	}
45045	return c.header_
45046}
45047
45048func (c *ReportsInsertCall) doRequest(alt string) (*http.Response, error) {
45049	reqHeaders := make(http.Header)
45050	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
45051	for k, v := range c.header_ {
45052		reqHeaders[k] = v
45053	}
45054	reqHeaders.Set("User-Agent", c.s.userAgent())
45055	var body io.Reader = nil
45056	body, err := googleapi.WithoutDataWrapper.JSONReader(c.report)
45057	if err != nil {
45058		return nil, err
45059	}
45060	reqHeaders.Set("Content-Type", "application/json")
45061	c.urlParams_.Set("alt", alt)
45062	c.urlParams_.Set("prettyPrint", "false")
45063	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports")
45064	urls += "?" + c.urlParams_.Encode()
45065	req, err := http.NewRequest("POST", urls, body)
45066	if err != nil {
45067		return nil, err
45068	}
45069	req.Header = reqHeaders
45070	googleapi.Expand(req.URL, map[string]string{
45071		"profileId": strconv.FormatInt(c.profileId, 10),
45072	})
45073	return gensupport.SendRequest(c.ctx_, c.s.client, req)
45074}
45075
45076// Do executes the "dfareporting.reports.insert" call.
45077// Exactly one of *Report or error will be non-nil. Any non-2xx status
45078// code is an error. Response headers are in either
45079// *Report.ServerResponse.Header or (if a response was returned at all)
45080// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
45081// check whether the returned error was because http.StatusNotModified
45082// was returned.
45083func (c *ReportsInsertCall) Do(opts ...googleapi.CallOption) (*Report, error) {
45084	gensupport.SetOptions(c.urlParams_, opts...)
45085	res, err := c.doRequest("json")
45086	if res != nil && res.StatusCode == http.StatusNotModified {
45087		if res.Body != nil {
45088			res.Body.Close()
45089		}
45090		return nil, &googleapi.Error{
45091			Code:   res.StatusCode,
45092			Header: res.Header,
45093		}
45094	}
45095	if err != nil {
45096		return nil, err
45097	}
45098	defer googleapi.CloseBody(res)
45099	if err := googleapi.CheckResponse(res); err != nil {
45100		return nil, err
45101	}
45102	ret := &Report{
45103		ServerResponse: googleapi.ServerResponse{
45104			Header:         res.Header,
45105			HTTPStatusCode: res.StatusCode,
45106		},
45107	}
45108	target := &ret
45109	if err := gensupport.DecodeResponse(target, res); err != nil {
45110		return nil, err
45111	}
45112	return ret, nil
45113	// {
45114	//   "description": "Creates a report.",
45115	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports",
45116	//   "httpMethod": "POST",
45117	//   "id": "dfareporting.reports.insert",
45118	//   "parameterOrder": [
45119	//     "profileId"
45120	//   ],
45121	//   "parameters": {
45122	//     "profileId": {
45123	//       "description": "The Campaign Manager 360 user profile ID.",
45124	//       "format": "int64",
45125	//       "location": "path",
45126	//       "required": true,
45127	//       "type": "string"
45128	//     }
45129	//   },
45130	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports",
45131	//   "request": {
45132	//     "$ref": "Report"
45133	//   },
45134	//   "response": {
45135	//     "$ref": "Report"
45136	//   },
45137	//   "scopes": [
45138	//     "https://www.googleapis.com/auth/dfareporting"
45139	//   ]
45140	// }
45141
45142}
45143
45144// method id "dfareporting.reports.list":
45145
45146type ReportsListCall struct {
45147	s            *Service
45148	profileId    int64
45149	urlParams_   gensupport.URLParams
45150	ifNoneMatch_ string
45151	ctx_         context.Context
45152	header_      http.Header
45153}
45154
45155// List: Retrieves list of reports.
45156//
45157// - profileId: The Campaign Manager 360 user profile ID.
45158func (r *ReportsService) List(profileId int64) *ReportsListCall {
45159	c := &ReportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
45160	c.profileId = profileId
45161	return c
45162}
45163
45164// MaxResults sets the optional parameter "maxResults": Maximum number
45165// of results to return.
45166func (c *ReportsListCall) MaxResults(maxResults int64) *ReportsListCall {
45167	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
45168	return c
45169}
45170
45171// PageToken sets the optional parameter "pageToken": The value of the
45172// nextToken from the previous result page.
45173func (c *ReportsListCall) PageToken(pageToken string) *ReportsListCall {
45174	c.urlParams_.Set("pageToken", pageToken)
45175	return c
45176}
45177
45178// Scope sets the optional parameter "scope": The scope that defines
45179// which results are returned.
45180//
45181// Possible values:
45182//   "ALL" - All reports in account.
45183//   "MINE" (default) - My reports.
45184func (c *ReportsListCall) Scope(scope string) *ReportsListCall {
45185	c.urlParams_.Set("scope", scope)
45186	return c
45187}
45188
45189// SortField sets the optional parameter "sortField": The field by which
45190// to sort the list.
45191//
45192// Possible values:
45193//   "ID" - Sort by report ID.
45194//   "LAST_MODIFIED_TIME" (default) - Sort by 'lastModifiedTime' field.
45195//   "NAME" - Sort by name of reports.
45196func (c *ReportsListCall) SortField(sortField string) *ReportsListCall {
45197	c.urlParams_.Set("sortField", sortField)
45198	return c
45199}
45200
45201// SortOrder sets the optional parameter "sortOrder": Order of sorted
45202// results.
45203//
45204// Possible values:
45205//   "ASCENDING" - Ascending order.
45206//   "DESCENDING" (default) - Descending order.
45207func (c *ReportsListCall) SortOrder(sortOrder string) *ReportsListCall {
45208	c.urlParams_.Set("sortOrder", sortOrder)
45209	return c
45210}
45211
45212// Fields allows partial responses to be retrieved. See
45213// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
45214// for more information.
45215func (c *ReportsListCall) Fields(s ...googleapi.Field) *ReportsListCall {
45216	c.urlParams_.Set("fields", googleapi.CombineFields(s))
45217	return c
45218}
45219
45220// IfNoneMatch sets the optional parameter which makes the operation
45221// fail if the object's ETag matches the given value. This is useful for
45222// getting updates only after the object has changed since the last
45223// request. Use googleapi.IsNotModified to check whether the response
45224// error from Do is the result of In-None-Match.
45225func (c *ReportsListCall) IfNoneMatch(entityTag string) *ReportsListCall {
45226	c.ifNoneMatch_ = entityTag
45227	return c
45228}
45229
45230// Context sets the context to be used in this call's Do method. Any
45231// pending HTTP request will be aborted if the provided context is
45232// canceled.
45233func (c *ReportsListCall) Context(ctx context.Context) *ReportsListCall {
45234	c.ctx_ = ctx
45235	return c
45236}
45237
45238// Header returns an http.Header that can be modified by the caller to
45239// add HTTP headers to the request.
45240func (c *ReportsListCall) Header() http.Header {
45241	if c.header_ == nil {
45242		c.header_ = make(http.Header)
45243	}
45244	return c.header_
45245}
45246
45247func (c *ReportsListCall) doRequest(alt string) (*http.Response, error) {
45248	reqHeaders := make(http.Header)
45249	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
45250	for k, v := range c.header_ {
45251		reqHeaders[k] = v
45252	}
45253	reqHeaders.Set("User-Agent", c.s.userAgent())
45254	if c.ifNoneMatch_ != "" {
45255		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
45256	}
45257	var body io.Reader = nil
45258	c.urlParams_.Set("alt", alt)
45259	c.urlParams_.Set("prettyPrint", "false")
45260	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports")
45261	urls += "?" + c.urlParams_.Encode()
45262	req, err := http.NewRequest("GET", urls, body)
45263	if err != nil {
45264		return nil, err
45265	}
45266	req.Header = reqHeaders
45267	googleapi.Expand(req.URL, map[string]string{
45268		"profileId": strconv.FormatInt(c.profileId, 10),
45269	})
45270	return gensupport.SendRequest(c.ctx_, c.s.client, req)
45271}
45272
45273// Do executes the "dfareporting.reports.list" call.
45274// Exactly one of *ReportList or error will be non-nil. Any non-2xx
45275// status code is an error. Response headers are in either
45276// *ReportList.ServerResponse.Header or (if a response was returned at
45277// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
45278// to check whether the returned error was because
45279// http.StatusNotModified was returned.
45280func (c *ReportsListCall) Do(opts ...googleapi.CallOption) (*ReportList, error) {
45281	gensupport.SetOptions(c.urlParams_, opts...)
45282	res, err := c.doRequest("json")
45283	if res != nil && res.StatusCode == http.StatusNotModified {
45284		if res.Body != nil {
45285			res.Body.Close()
45286		}
45287		return nil, &googleapi.Error{
45288			Code:   res.StatusCode,
45289			Header: res.Header,
45290		}
45291	}
45292	if err != nil {
45293		return nil, err
45294	}
45295	defer googleapi.CloseBody(res)
45296	if err := googleapi.CheckResponse(res); err != nil {
45297		return nil, err
45298	}
45299	ret := &ReportList{
45300		ServerResponse: googleapi.ServerResponse{
45301			Header:         res.Header,
45302			HTTPStatusCode: res.StatusCode,
45303		},
45304	}
45305	target := &ret
45306	if err := gensupport.DecodeResponse(target, res); err != nil {
45307		return nil, err
45308	}
45309	return ret, nil
45310	// {
45311	//   "description": "Retrieves list of reports.",
45312	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports",
45313	//   "httpMethod": "GET",
45314	//   "id": "dfareporting.reports.list",
45315	//   "parameterOrder": [
45316	//     "profileId"
45317	//   ],
45318	//   "parameters": {
45319	//     "maxResults": {
45320	//       "default": "10",
45321	//       "description": "Maximum number of results to return.",
45322	//       "format": "int32",
45323	//       "location": "query",
45324	//       "maximum": "10",
45325	//       "minimum": "0",
45326	//       "type": "integer"
45327	//     },
45328	//     "pageToken": {
45329	//       "description": "The value of the nextToken from the previous result page.",
45330	//       "location": "query",
45331	//       "type": "string"
45332	//     },
45333	//     "profileId": {
45334	//       "description": "The Campaign Manager 360 user profile ID.",
45335	//       "format": "int64",
45336	//       "location": "path",
45337	//       "required": true,
45338	//       "type": "string"
45339	//     },
45340	//     "scope": {
45341	//       "default": "MINE",
45342	//       "description": "The scope that defines which results are returned.",
45343	//       "enum": [
45344	//         "ALL",
45345	//         "MINE"
45346	//       ],
45347	//       "enumDescriptions": [
45348	//         "All reports in account.",
45349	//         "My reports."
45350	//       ],
45351	//       "location": "query",
45352	//       "type": "string"
45353	//     },
45354	//     "sortField": {
45355	//       "default": "LAST_MODIFIED_TIME",
45356	//       "description": "The field by which to sort the list.",
45357	//       "enum": [
45358	//         "ID",
45359	//         "LAST_MODIFIED_TIME",
45360	//         "NAME"
45361	//       ],
45362	//       "enumDescriptions": [
45363	//         "Sort by report ID.",
45364	//         "Sort by 'lastModifiedTime' field.",
45365	//         "Sort by name of reports."
45366	//       ],
45367	//       "location": "query",
45368	//       "type": "string"
45369	//     },
45370	//     "sortOrder": {
45371	//       "default": "DESCENDING",
45372	//       "description": "Order of sorted results.",
45373	//       "enum": [
45374	//         "ASCENDING",
45375	//         "DESCENDING"
45376	//       ],
45377	//       "enumDescriptions": [
45378	//         "Ascending order.",
45379	//         "Descending order."
45380	//       ],
45381	//       "location": "query",
45382	//       "type": "string"
45383	//     }
45384	//   },
45385	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports",
45386	//   "response": {
45387	//     "$ref": "ReportList"
45388	//   },
45389	//   "scopes": [
45390	//     "https://www.googleapis.com/auth/dfareporting"
45391	//   ]
45392	// }
45393
45394}
45395
45396// Pages invokes f for each page of results.
45397// A non-nil error returned from f will halt the iteration.
45398// The provided context supersedes any context provided to the Context method.
45399func (c *ReportsListCall) Pages(ctx context.Context, f func(*ReportList) error) error {
45400	c.ctx_ = ctx
45401	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
45402	for {
45403		x, err := c.Do()
45404		if err != nil {
45405			return err
45406		}
45407		if err := f(x); err != nil {
45408			return err
45409		}
45410		if x.NextPageToken == "" {
45411			return nil
45412		}
45413		c.PageToken(x.NextPageToken)
45414	}
45415}
45416
45417// method id "dfareporting.reports.patch":
45418
45419type ReportsPatchCall struct {
45420	s          *Service
45421	profileId  int64
45422	reportId   int64
45423	report     *Report
45424	urlParams_ gensupport.URLParams
45425	ctx_       context.Context
45426	header_    http.Header
45427}
45428
45429// Patch: Updates an existing report. This method supports patch
45430// semantics.
45431//
45432// - profileId: The DFA user profile ID.
45433// - reportId: The ID of the report.
45434func (r *ReportsService) Patch(profileId int64, reportId int64, report *Report) *ReportsPatchCall {
45435	c := &ReportsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
45436	c.profileId = profileId
45437	c.reportId = reportId
45438	c.report = report
45439	return c
45440}
45441
45442// Fields allows partial responses to be retrieved. See
45443// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
45444// for more information.
45445func (c *ReportsPatchCall) Fields(s ...googleapi.Field) *ReportsPatchCall {
45446	c.urlParams_.Set("fields", googleapi.CombineFields(s))
45447	return c
45448}
45449
45450// Context sets the context to be used in this call's Do method. Any
45451// pending HTTP request will be aborted if the provided context is
45452// canceled.
45453func (c *ReportsPatchCall) Context(ctx context.Context) *ReportsPatchCall {
45454	c.ctx_ = ctx
45455	return c
45456}
45457
45458// Header returns an http.Header that can be modified by the caller to
45459// add HTTP headers to the request.
45460func (c *ReportsPatchCall) Header() http.Header {
45461	if c.header_ == nil {
45462		c.header_ = make(http.Header)
45463	}
45464	return c.header_
45465}
45466
45467func (c *ReportsPatchCall) doRequest(alt string) (*http.Response, error) {
45468	reqHeaders := make(http.Header)
45469	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
45470	for k, v := range c.header_ {
45471		reqHeaders[k] = v
45472	}
45473	reqHeaders.Set("User-Agent", c.s.userAgent())
45474	var body io.Reader = nil
45475	body, err := googleapi.WithoutDataWrapper.JSONReader(c.report)
45476	if err != nil {
45477		return nil, err
45478	}
45479	reqHeaders.Set("Content-Type", "application/json")
45480	c.urlParams_.Set("alt", alt)
45481	c.urlParams_.Set("prettyPrint", "false")
45482	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}")
45483	urls += "?" + c.urlParams_.Encode()
45484	req, err := http.NewRequest("PATCH", urls, body)
45485	if err != nil {
45486		return nil, err
45487	}
45488	req.Header = reqHeaders
45489	googleapi.Expand(req.URL, map[string]string{
45490		"profileId": strconv.FormatInt(c.profileId, 10),
45491		"reportId":  strconv.FormatInt(c.reportId, 10),
45492	})
45493	return gensupport.SendRequest(c.ctx_, c.s.client, req)
45494}
45495
45496// Do executes the "dfareporting.reports.patch" call.
45497// Exactly one of *Report or error will be non-nil. Any non-2xx status
45498// code is an error. Response headers are in either
45499// *Report.ServerResponse.Header or (if a response was returned at all)
45500// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
45501// check whether the returned error was because http.StatusNotModified
45502// was returned.
45503func (c *ReportsPatchCall) Do(opts ...googleapi.CallOption) (*Report, error) {
45504	gensupport.SetOptions(c.urlParams_, opts...)
45505	res, err := c.doRequest("json")
45506	if res != nil && res.StatusCode == http.StatusNotModified {
45507		if res.Body != nil {
45508			res.Body.Close()
45509		}
45510		return nil, &googleapi.Error{
45511			Code:   res.StatusCode,
45512			Header: res.Header,
45513		}
45514	}
45515	if err != nil {
45516		return nil, err
45517	}
45518	defer googleapi.CloseBody(res)
45519	if err := googleapi.CheckResponse(res); err != nil {
45520		return nil, err
45521	}
45522	ret := &Report{
45523		ServerResponse: googleapi.ServerResponse{
45524			Header:         res.Header,
45525			HTTPStatusCode: res.StatusCode,
45526		},
45527	}
45528	target := &ret
45529	if err := gensupport.DecodeResponse(target, res); err != nil {
45530		return nil, err
45531	}
45532	return ret, nil
45533	// {
45534	//   "description": "Updates an existing report. This method supports patch semantics.",
45535	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}",
45536	//   "httpMethod": "PATCH",
45537	//   "id": "dfareporting.reports.patch",
45538	//   "parameterOrder": [
45539	//     "profileId",
45540	//     "reportId"
45541	//   ],
45542	//   "parameters": {
45543	//     "profileId": {
45544	//       "description": "The DFA user profile ID.",
45545	//       "format": "int64",
45546	//       "location": "path",
45547	//       "required": true,
45548	//       "type": "string"
45549	//     },
45550	//     "reportId": {
45551	//       "description": "The ID of the report.",
45552	//       "format": "int64",
45553	//       "location": "path",
45554	//       "required": true,
45555	//       "type": "string"
45556	//     }
45557	//   },
45558	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}",
45559	//   "request": {
45560	//     "$ref": "Report"
45561	//   },
45562	//   "response": {
45563	//     "$ref": "Report"
45564	//   },
45565	//   "scopes": [
45566	//     "https://www.googleapis.com/auth/dfareporting"
45567	//   ]
45568	// }
45569
45570}
45571
45572// method id "dfareporting.reports.run":
45573
45574type ReportsRunCall struct {
45575	s          *Service
45576	profileId  int64
45577	reportId   int64
45578	urlParams_ gensupport.URLParams
45579	ctx_       context.Context
45580	header_    http.Header
45581}
45582
45583// Run: Runs a report.
45584//
45585// - profileId: The Campaign Manager 360 user profile ID.
45586// - reportId: The ID of the report.
45587func (r *ReportsService) Run(profileId int64, reportId int64) *ReportsRunCall {
45588	c := &ReportsRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
45589	c.profileId = profileId
45590	c.reportId = reportId
45591	return c
45592}
45593
45594// Synchronous sets the optional parameter "synchronous": If set and
45595// true, tries to run the report synchronously.
45596func (c *ReportsRunCall) Synchronous(synchronous bool) *ReportsRunCall {
45597	c.urlParams_.Set("synchronous", fmt.Sprint(synchronous))
45598	return c
45599}
45600
45601// Fields allows partial responses to be retrieved. See
45602// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
45603// for more information.
45604func (c *ReportsRunCall) Fields(s ...googleapi.Field) *ReportsRunCall {
45605	c.urlParams_.Set("fields", googleapi.CombineFields(s))
45606	return c
45607}
45608
45609// Context sets the context to be used in this call's Do method. Any
45610// pending HTTP request will be aborted if the provided context is
45611// canceled.
45612func (c *ReportsRunCall) Context(ctx context.Context) *ReportsRunCall {
45613	c.ctx_ = ctx
45614	return c
45615}
45616
45617// Header returns an http.Header that can be modified by the caller to
45618// add HTTP headers to the request.
45619func (c *ReportsRunCall) Header() http.Header {
45620	if c.header_ == nil {
45621		c.header_ = make(http.Header)
45622	}
45623	return c.header_
45624}
45625
45626func (c *ReportsRunCall) doRequest(alt string) (*http.Response, error) {
45627	reqHeaders := make(http.Header)
45628	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
45629	for k, v := range c.header_ {
45630		reqHeaders[k] = v
45631	}
45632	reqHeaders.Set("User-Agent", c.s.userAgent())
45633	var body io.Reader = nil
45634	c.urlParams_.Set("alt", alt)
45635	c.urlParams_.Set("prettyPrint", "false")
45636	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/run")
45637	urls += "?" + c.urlParams_.Encode()
45638	req, err := http.NewRequest("POST", urls, body)
45639	if err != nil {
45640		return nil, err
45641	}
45642	req.Header = reqHeaders
45643	googleapi.Expand(req.URL, map[string]string{
45644		"profileId": strconv.FormatInt(c.profileId, 10),
45645		"reportId":  strconv.FormatInt(c.reportId, 10),
45646	})
45647	return gensupport.SendRequest(c.ctx_, c.s.client, req)
45648}
45649
45650// Do executes the "dfareporting.reports.run" call.
45651// Exactly one of *File or error will be non-nil. Any non-2xx status
45652// code is an error. Response headers are in either
45653// *File.ServerResponse.Header or (if a response was returned at all) in
45654// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
45655// whether the returned error was because http.StatusNotModified was
45656// returned.
45657func (c *ReportsRunCall) Do(opts ...googleapi.CallOption) (*File, error) {
45658	gensupport.SetOptions(c.urlParams_, opts...)
45659	res, err := c.doRequest("json")
45660	if res != nil && res.StatusCode == http.StatusNotModified {
45661		if res.Body != nil {
45662			res.Body.Close()
45663		}
45664		return nil, &googleapi.Error{
45665			Code:   res.StatusCode,
45666			Header: res.Header,
45667		}
45668	}
45669	if err != nil {
45670		return nil, err
45671	}
45672	defer googleapi.CloseBody(res)
45673	if err := googleapi.CheckResponse(res); err != nil {
45674		return nil, err
45675	}
45676	ret := &File{
45677		ServerResponse: googleapi.ServerResponse{
45678			Header:         res.Header,
45679			HTTPStatusCode: res.StatusCode,
45680		},
45681	}
45682	target := &ret
45683	if err := gensupport.DecodeResponse(target, res); err != nil {
45684		return nil, err
45685	}
45686	return ret, nil
45687	// {
45688	//   "description": "Runs a report.",
45689	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/run",
45690	//   "httpMethod": "POST",
45691	//   "id": "dfareporting.reports.run",
45692	//   "parameterOrder": [
45693	//     "profileId",
45694	//     "reportId"
45695	//   ],
45696	//   "parameters": {
45697	//     "profileId": {
45698	//       "description": "The Campaign Manager 360 user profile ID.",
45699	//       "format": "int64",
45700	//       "location": "path",
45701	//       "required": true,
45702	//       "type": "string"
45703	//     },
45704	//     "reportId": {
45705	//       "description": "The ID of the report.",
45706	//       "format": "int64",
45707	//       "location": "path",
45708	//       "required": true,
45709	//       "type": "string"
45710	//     },
45711	//     "synchronous": {
45712	//       "default": "false",
45713	//       "description": "If set and true, tries to run the report synchronously.",
45714	//       "location": "query",
45715	//       "type": "boolean"
45716	//     }
45717	//   },
45718	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/run",
45719	//   "response": {
45720	//     "$ref": "File"
45721	//   },
45722	//   "scopes": [
45723	//     "https://www.googleapis.com/auth/dfareporting"
45724	//   ]
45725	// }
45726
45727}
45728
45729// method id "dfareporting.reports.update":
45730
45731type ReportsUpdateCall struct {
45732	s          *Service
45733	profileId  int64
45734	reportId   int64
45735	report     *Report
45736	urlParams_ gensupport.URLParams
45737	ctx_       context.Context
45738	header_    http.Header
45739}
45740
45741// Update: Updates a report.
45742//
45743// - profileId: The Campaign Manager 360 user profile ID.
45744// - reportId: The ID of the report.
45745func (r *ReportsService) Update(profileId int64, reportId int64, report *Report) *ReportsUpdateCall {
45746	c := &ReportsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
45747	c.profileId = profileId
45748	c.reportId = reportId
45749	c.report = report
45750	return c
45751}
45752
45753// Fields allows partial responses to be retrieved. See
45754// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
45755// for more information.
45756func (c *ReportsUpdateCall) Fields(s ...googleapi.Field) *ReportsUpdateCall {
45757	c.urlParams_.Set("fields", googleapi.CombineFields(s))
45758	return c
45759}
45760
45761// Context sets the context to be used in this call's Do method. Any
45762// pending HTTP request will be aborted if the provided context is
45763// canceled.
45764func (c *ReportsUpdateCall) Context(ctx context.Context) *ReportsUpdateCall {
45765	c.ctx_ = ctx
45766	return c
45767}
45768
45769// Header returns an http.Header that can be modified by the caller to
45770// add HTTP headers to the request.
45771func (c *ReportsUpdateCall) Header() http.Header {
45772	if c.header_ == nil {
45773		c.header_ = make(http.Header)
45774	}
45775	return c.header_
45776}
45777
45778func (c *ReportsUpdateCall) doRequest(alt string) (*http.Response, error) {
45779	reqHeaders := make(http.Header)
45780	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
45781	for k, v := range c.header_ {
45782		reqHeaders[k] = v
45783	}
45784	reqHeaders.Set("User-Agent", c.s.userAgent())
45785	var body io.Reader = nil
45786	body, err := googleapi.WithoutDataWrapper.JSONReader(c.report)
45787	if err != nil {
45788		return nil, err
45789	}
45790	reqHeaders.Set("Content-Type", "application/json")
45791	c.urlParams_.Set("alt", alt)
45792	c.urlParams_.Set("prettyPrint", "false")
45793	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}")
45794	urls += "?" + c.urlParams_.Encode()
45795	req, err := http.NewRequest("PUT", urls, body)
45796	if err != nil {
45797		return nil, err
45798	}
45799	req.Header = reqHeaders
45800	googleapi.Expand(req.URL, map[string]string{
45801		"profileId": strconv.FormatInt(c.profileId, 10),
45802		"reportId":  strconv.FormatInt(c.reportId, 10),
45803	})
45804	return gensupport.SendRequest(c.ctx_, c.s.client, req)
45805}
45806
45807// Do executes the "dfareporting.reports.update" call.
45808// Exactly one of *Report or error will be non-nil. Any non-2xx status
45809// code is an error. Response headers are in either
45810// *Report.ServerResponse.Header or (if a response was returned at all)
45811// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
45812// check whether the returned error was because http.StatusNotModified
45813// was returned.
45814func (c *ReportsUpdateCall) Do(opts ...googleapi.CallOption) (*Report, error) {
45815	gensupport.SetOptions(c.urlParams_, opts...)
45816	res, err := c.doRequest("json")
45817	if res != nil && res.StatusCode == http.StatusNotModified {
45818		if res.Body != nil {
45819			res.Body.Close()
45820		}
45821		return nil, &googleapi.Error{
45822			Code:   res.StatusCode,
45823			Header: res.Header,
45824		}
45825	}
45826	if err != nil {
45827		return nil, err
45828	}
45829	defer googleapi.CloseBody(res)
45830	if err := googleapi.CheckResponse(res); err != nil {
45831		return nil, err
45832	}
45833	ret := &Report{
45834		ServerResponse: googleapi.ServerResponse{
45835			Header:         res.Header,
45836			HTTPStatusCode: res.StatusCode,
45837		},
45838	}
45839	target := &ret
45840	if err := gensupport.DecodeResponse(target, res); err != nil {
45841		return nil, err
45842	}
45843	return ret, nil
45844	// {
45845	//   "description": "Updates a report.",
45846	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}",
45847	//   "httpMethod": "PUT",
45848	//   "id": "dfareporting.reports.update",
45849	//   "parameterOrder": [
45850	//     "profileId",
45851	//     "reportId"
45852	//   ],
45853	//   "parameters": {
45854	//     "profileId": {
45855	//       "description": "The Campaign Manager 360 user profile ID.",
45856	//       "format": "int64",
45857	//       "location": "path",
45858	//       "required": true,
45859	//       "type": "string"
45860	//     },
45861	//     "reportId": {
45862	//       "description": "The ID of the report.",
45863	//       "format": "int64",
45864	//       "location": "path",
45865	//       "required": true,
45866	//       "type": "string"
45867	//     }
45868	//   },
45869	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}",
45870	//   "request": {
45871	//     "$ref": "Report"
45872	//   },
45873	//   "response": {
45874	//     "$ref": "Report"
45875	//   },
45876	//   "scopes": [
45877	//     "https://www.googleapis.com/auth/dfareporting"
45878	//   ]
45879	// }
45880
45881}
45882
45883// method id "dfareporting.reports.compatibleFields.query":
45884
45885type ReportsCompatibleFieldsQueryCall struct {
45886	s          *Service
45887	profileId  int64
45888	report     *Report
45889	urlParams_ gensupport.URLParams
45890	ctx_       context.Context
45891	header_    http.Header
45892}
45893
45894// Query: Returns the fields that are compatible to be selected in the
45895// respective sections of a report criteria, given the fields already
45896// selected in the input report and user permissions.
45897//
45898// - profileId: The Campaign Manager 360 user profile ID.
45899func (r *ReportsCompatibleFieldsService) Query(profileId int64, report *Report) *ReportsCompatibleFieldsQueryCall {
45900	c := &ReportsCompatibleFieldsQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
45901	c.profileId = profileId
45902	c.report = report
45903	return c
45904}
45905
45906// Fields allows partial responses to be retrieved. See
45907// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
45908// for more information.
45909func (c *ReportsCompatibleFieldsQueryCall) Fields(s ...googleapi.Field) *ReportsCompatibleFieldsQueryCall {
45910	c.urlParams_.Set("fields", googleapi.CombineFields(s))
45911	return c
45912}
45913
45914// Context sets the context to be used in this call's Do method. Any
45915// pending HTTP request will be aborted if the provided context is
45916// canceled.
45917func (c *ReportsCompatibleFieldsQueryCall) Context(ctx context.Context) *ReportsCompatibleFieldsQueryCall {
45918	c.ctx_ = ctx
45919	return c
45920}
45921
45922// Header returns an http.Header that can be modified by the caller to
45923// add HTTP headers to the request.
45924func (c *ReportsCompatibleFieldsQueryCall) Header() http.Header {
45925	if c.header_ == nil {
45926		c.header_ = make(http.Header)
45927	}
45928	return c.header_
45929}
45930
45931func (c *ReportsCompatibleFieldsQueryCall) doRequest(alt string) (*http.Response, error) {
45932	reqHeaders := make(http.Header)
45933	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
45934	for k, v := range c.header_ {
45935		reqHeaders[k] = v
45936	}
45937	reqHeaders.Set("User-Agent", c.s.userAgent())
45938	var body io.Reader = nil
45939	body, err := googleapi.WithoutDataWrapper.JSONReader(c.report)
45940	if err != nil {
45941		return nil, err
45942	}
45943	reqHeaders.Set("Content-Type", "application/json")
45944	c.urlParams_.Set("alt", alt)
45945	c.urlParams_.Set("prettyPrint", "false")
45946	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports/compatiblefields/query")
45947	urls += "?" + c.urlParams_.Encode()
45948	req, err := http.NewRequest("POST", urls, body)
45949	if err != nil {
45950		return nil, err
45951	}
45952	req.Header = reqHeaders
45953	googleapi.Expand(req.URL, map[string]string{
45954		"profileId": strconv.FormatInt(c.profileId, 10),
45955	})
45956	return gensupport.SendRequest(c.ctx_, c.s.client, req)
45957}
45958
45959// Do executes the "dfareporting.reports.compatibleFields.query" call.
45960// Exactly one of *CompatibleFields or error will be non-nil. Any
45961// non-2xx status code is an error. Response headers are in either
45962// *CompatibleFields.ServerResponse.Header or (if a response was
45963// returned at all) in error.(*googleapi.Error).Header. Use
45964// googleapi.IsNotModified to check whether the returned error was
45965// because http.StatusNotModified was returned.
45966func (c *ReportsCompatibleFieldsQueryCall) Do(opts ...googleapi.CallOption) (*CompatibleFields, error) {
45967	gensupport.SetOptions(c.urlParams_, opts...)
45968	res, err := c.doRequest("json")
45969	if res != nil && res.StatusCode == http.StatusNotModified {
45970		if res.Body != nil {
45971			res.Body.Close()
45972		}
45973		return nil, &googleapi.Error{
45974			Code:   res.StatusCode,
45975			Header: res.Header,
45976		}
45977	}
45978	if err != nil {
45979		return nil, err
45980	}
45981	defer googleapi.CloseBody(res)
45982	if err := googleapi.CheckResponse(res); err != nil {
45983		return nil, err
45984	}
45985	ret := &CompatibleFields{
45986		ServerResponse: googleapi.ServerResponse{
45987			Header:         res.Header,
45988			HTTPStatusCode: res.StatusCode,
45989		},
45990	}
45991	target := &ret
45992	if err := gensupport.DecodeResponse(target, res); err != nil {
45993		return nil, err
45994	}
45995	return ret, nil
45996	// {
45997	//   "description": "Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.",
45998	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports/compatiblefields/query",
45999	//   "httpMethod": "POST",
46000	//   "id": "dfareporting.reports.compatibleFields.query",
46001	//   "parameterOrder": [
46002	//     "profileId"
46003	//   ],
46004	//   "parameters": {
46005	//     "profileId": {
46006	//       "description": "The Campaign Manager 360 user profile ID.",
46007	//       "format": "int64",
46008	//       "location": "path",
46009	//       "required": true,
46010	//       "type": "string"
46011	//     }
46012	//   },
46013	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports/compatiblefields/query",
46014	//   "request": {
46015	//     "$ref": "Report"
46016	//   },
46017	//   "response": {
46018	//     "$ref": "CompatibleFields"
46019	//   },
46020	//   "scopes": [
46021	//     "https://www.googleapis.com/auth/dfareporting"
46022	//   ]
46023	// }
46024
46025}
46026
46027// method id "dfareporting.reports.files.get":
46028
46029type ReportsFilesGetCall struct {
46030	s            *Service
46031	profileId    int64
46032	reportId     int64
46033	fileId       int64
46034	urlParams_   gensupport.URLParams
46035	ifNoneMatch_ string
46036	ctx_         context.Context
46037	header_      http.Header
46038}
46039
46040// Get: Retrieves a report file by its report ID and file ID. This
46041// method supports media download.
46042//
46043// - fileId: The ID of the report file.
46044// - profileId: The Campaign Manager 360 user profile ID.
46045// - reportId: The ID of the report.
46046func (r *ReportsFilesService) Get(profileId int64, reportId int64, fileId int64) *ReportsFilesGetCall {
46047	c := &ReportsFilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
46048	c.profileId = profileId
46049	c.reportId = reportId
46050	c.fileId = fileId
46051	return c
46052}
46053
46054// Fields allows partial responses to be retrieved. See
46055// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
46056// for more information.
46057func (c *ReportsFilesGetCall) Fields(s ...googleapi.Field) *ReportsFilesGetCall {
46058	c.urlParams_.Set("fields", googleapi.CombineFields(s))
46059	return c
46060}
46061
46062// IfNoneMatch sets the optional parameter which makes the operation
46063// fail if the object's ETag matches the given value. This is useful for
46064// getting updates only after the object has changed since the last
46065// request. Use googleapi.IsNotModified to check whether the response
46066// error from Do is the result of In-None-Match.
46067func (c *ReportsFilesGetCall) IfNoneMatch(entityTag string) *ReportsFilesGetCall {
46068	c.ifNoneMatch_ = entityTag
46069	return c
46070}
46071
46072// Context sets the context to be used in this call's Do and Download
46073// methods. Any pending HTTP request will be aborted if the provided
46074// context is canceled.
46075func (c *ReportsFilesGetCall) Context(ctx context.Context) *ReportsFilesGetCall {
46076	c.ctx_ = ctx
46077	return c
46078}
46079
46080// Header returns an http.Header that can be modified by the caller to
46081// add HTTP headers to the request.
46082func (c *ReportsFilesGetCall) Header() http.Header {
46083	if c.header_ == nil {
46084		c.header_ = make(http.Header)
46085	}
46086	return c.header_
46087}
46088
46089func (c *ReportsFilesGetCall) doRequest(alt string) (*http.Response, error) {
46090	reqHeaders := make(http.Header)
46091	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
46092	for k, v := range c.header_ {
46093		reqHeaders[k] = v
46094	}
46095	reqHeaders.Set("User-Agent", c.s.userAgent())
46096	if c.ifNoneMatch_ != "" {
46097		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
46098	}
46099	var body io.Reader = nil
46100	c.urlParams_.Set("alt", alt)
46101	c.urlParams_.Set("prettyPrint", "false")
46102	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/files/{fileId}")
46103	urls += "?" + c.urlParams_.Encode()
46104	req, err := http.NewRequest("GET", urls, body)
46105	if err != nil {
46106		return nil, err
46107	}
46108	req.Header = reqHeaders
46109	googleapi.Expand(req.URL, map[string]string{
46110		"profileId": strconv.FormatInt(c.profileId, 10),
46111		"reportId":  strconv.FormatInt(c.reportId, 10),
46112		"fileId":    strconv.FormatInt(c.fileId, 10),
46113	})
46114	return gensupport.SendRequest(c.ctx_, c.s.client, req)
46115}
46116
46117// Download fetches the API endpoint's "media" value, instead of the normal
46118// API response value. If the returned error is nil, the Response is guaranteed to
46119// have a 2xx status code. Callers must close the Response.Body as usual.
46120func (c *ReportsFilesGetCall) Download(opts ...googleapi.CallOption) (*http.Response, error) {
46121	gensupport.SetOptions(c.urlParams_, opts...)
46122	res, err := c.doRequest("media")
46123	if err != nil {
46124		return nil, err
46125	}
46126	if err := googleapi.CheckResponse(res); err != nil {
46127		res.Body.Close()
46128		return nil, err
46129	}
46130	return res, nil
46131}
46132
46133// Do executes the "dfareporting.reports.files.get" call.
46134// Exactly one of *File or error will be non-nil. Any non-2xx status
46135// code is an error. Response headers are in either
46136// *File.ServerResponse.Header or (if a response was returned at all) in
46137// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
46138// whether the returned error was because http.StatusNotModified was
46139// returned.
46140func (c *ReportsFilesGetCall) Do(opts ...googleapi.CallOption) (*File, error) {
46141	gensupport.SetOptions(c.urlParams_, opts...)
46142	res, err := c.doRequest("json")
46143	if res != nil && res.StatusCode == http.StatusNotModified {
46144		if res.Body != nil {
46145			res.Body.Close()
46146		}
46147		return nil, &googleapi.Error{
46148			Code:   res.StatusCode,
46149			Header: res.Header,
46150		}
46151	}
46152	if err != nil {
46153		return nil, err
46154	}
46155	defer googleapi.CloseBody(res)
46156	if err := googleapi.CheckResponse(res); err != nil {
46157		return nil, err
46158	}
46159	ret := &File{
46160		ServerResponse: googleapi.ServerResponse{
46161			Header:         res.Header,
46162			HTTPStatusCode: res.StatusCode,
46163		},
46164	}
46165	target := &ret
46166	if err := gensupport.DecodeResponse(target, res); err != nil {
46167		return nil, err
46168	}
46169	return ret, nil
46170	// {
46171	//   "description": "Retrieves a report file by its report ID and file ID. This method supports media download.",
46172	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/files/{fileId}",
46173	//   "httpMethod": "GET",
46174	//   "id": "dfareporting.reports.files.get",
46175	//   "parameterOrder": [
46176	//     "profileId",
46177	//     "reportId",
46178	//     "fileId"
46179	//   ],
46180	//   "parameters": {
46181	//     "fileId": {
46182	//       "description": "The ID of the report file.",
46183	//       "format": "int64",
46184	//       "location": "path",
46185	//       "required": true,
46186	//       "type": "string"
46187	//     },
46188	//     "profileId": {
46189	//       "description": "The Campaign Manager 360 user profile ID.",
46190	//       "format": "int64",
46191	//       "location": "path",
46192	//       "required": true,
46193	//       "type": "string"
46194	//     },
46195	//     "reportId": {
46196	//       "description": "The ID of the report.",
46197	//       "format": "int64",
46198	//       "location": "path",
46199	//       "required": true,
46200	//       "type": "string"
46201	//     }
46202	//   },
46203	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/files/{fileId}",
46204	//   "response": {
46205	//     "$ref": "File"
46206	//   },
46207	//   "scopes": [
46208	//     "https://www.googleapis.com/auth/dfareporting"
46209	//   ],
46210	//   "supportsMediaDownload": true
46211	// }
46212
46213}
46214
46215// method id "dfareporting.reports.files.list":
46216
46217type ReportsFilesListCall struct {
46218	s            *Service
46219	profileId    int64
46220	reportId     int64
46221	urlParams_   gensupport.URLParams
46222	ifNoneMatch_ string
46223	ctx_         context.Context
46224	header_      http.Header
46225}
46226
46227// List: Lists files for a report.
46228//
46229// - profileId: The Campaign Manager 360 user profile ID.
46230// - reportId: The ID of the parent report.
46231func (r *ReportsFilesService) List(profileId int64, reportId int64) *ReportsFilesListCall {
46232	c := &ReportsFilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
46233	c.profileId = profileId
46234	c.reportId = reportId
46235	return c
46236}
46237
46238// MaxResults sets the optional parameter "maxResults": Maximum number
46239// of results to return.
46240func (c *ReportsFilesListCall) MaxResults(maxResults int64) *ReportsFilesListCall {
46241	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
46242	return c
46243}
46244
46245// PageToken sets the optional parameter "pageToken": The value of the
46246// nextToken from the previous result page.
46247func (c *ReportsFilesListCall) PageToken(pageToken string) *ReportsFilesListCall {
46248	c.urlParams_.Set("pageToken", pageToken)
46249	return c
46250}
46251
46252// SortField sets the optional parameter "sortField": The field by which
46253// to sort the list.
46254//
46255// Possible values:
46256//   "ID"
46257//   "LAST_MODIFIED_TIME" (default)
46258func (c *ReportsFilesListCall) SortField(sortField string) *ReportsFilesListCall {
46259	c.urlParams_.Set("sortField", sortField)
46260	return c
46261}
46262
46263// SortOrder sets the optional parameter "sortOrder": Order of sorted
46264// results.
46265//
46266// Possible values:
46267//   "ASCENDING"
46268//   "DESCENDING" (default)
46269func (c *ReportsFilesListCall) SortOrder(sortOrder string) *ReportsFilesListCall {
46270	c.urlParams_.Set("sortOrder", sortOrder)
46271	return c
46272}
46273
46274// Fields allows partial responses to be retrieved. See
46275// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
46276// for more information.
46277func (c *ReportsFilesListCall) Fields(s ...googleapi.Field) *ReportsFilesListCall {
46278	c.urlParams_.Set("fields", googleapi.CombineFields(s))
46279	return c
46280}
46281
46282// IfNoneMatch sets the optional parameter which makes the operation
46283// fail if the object's ETag matches the given value. This is useful for
46284// getting updates only after the object has changed since the last
46285// request. Use googleapi.IsNotModified to check whether the response
46286// error from Do is the result of In-None-Match.
46287func (c *ReportsFilesListCall) IfNoneMatch(entityTag string) *ReportsFilesListCall {
46288	c.ifNoneMatch_ = entityTag
46289	return c
46290}
46291
46292// Context sets the context to be used in this call's Do method. Any
46293// pending HTTP request will be aborted if the provided context is
46294// canceled.
46295func (c *ReportsFilesListCall) Context(ctx context.Context) *ReportsFilesListCall {
46296	c.ctx_ = ctx
46297	return c
46298}
46299
46300// Header returns an http.Header that can be modified by the caller to
46301// add HTTP headers to the request.
46302func (c *ReportsFilesListCall) Header() http.Header {
46303	if c.header_ == nil {
46304		c.header_ = make(http.Header)
46305	}
46306	return c.header_
46307}
46308
46309func (c *ReportsFilesListCall) doRequest(alt string) (*http.Response, error) {
46310	reqHeaders := make(http.Header)
46311	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
46312	for k, v := range c.header_ {
46313		reqHeaders[k] = v
46314	}
46315	reqHeaders.Set("User-Agent", c.s.userAgent())
46316	if c.ifNoneMatch_ != "" {
46317		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
46318	}
46319	var body io.Reader = nil
46320	c.urlParams_.Set("alt", alt)
46321	c.urlParams_.Set("prettyPrint", "false")
46322	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/files")
46323	urls += "?" + c.urlParams_.Encode()
46324	req, err := http.NewRequest("GET", urls, body)
46325	if err != nil {
46326		return nil, err
46327	}
46328	req.Header = reqHeaders
46329	googleapi.Expand(req.URL, map[string]string{
46330		"profileId": strconv.FormatInt(c.profileId, 10),
46331		"reportId":  strconv.FormatInt(c.reportId, 10),
46332	})
46333	return gensupport.SendRequest(c.ctx_, c.s.client, req)
46334}
46335
46336// Do executes the "dfareporting.reports.files.list" call.
46337// Exactly one of *FileList or error will be non-nil. Any non-2xx status
46338// code is an error. Response headers are in either
46339// *FileList.ServerResponse.Header or (if a response was returned at
46340// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
46341// to check whether the returned error was because
46342// http.StatusNotModified was returned.
46343func (c *ReportsFilesListCall) Do(opts ...googleapi.CallOption) (*FileList, error) {
46344	gensupport.SetOptions(c.urlParams_, opts...)
46345	res, err := c.doRequest("json")
46346	if res != nil && res.StatusCode == http.StatusNotModified {
46347		if res.Body != nil {
46348			res.Body.Close()
46349		}
46350		return nil, &googleapi.Error{
46351			Code:   res.StatusCode,
46352			Header: res.Header,
46353		}
46354	}
46355	if err != nil {
46356		return nil, err
46357	}
46358	defer googleapi.CloseBody(res)
46359	if err := googleapi.CheckResponse(res); err != nil {
46360		return nil, err
46361	}
46362	ret := &FileList{
46363		ServerResponse: googleapi.ServerResponse{
46364			Header:         res.Header,
46365			HTTPStatusCode: res.StatusCode,
46366		},
46367	}
46368	target := &ret
46369	if err := gensupport.DecodeResponse(target, res); err != nil {
46370		return nil, err
46371	}
46372	return ret, nil
46373	// {
46374	//   "description": "Lists files for a report.",
46375	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/files",
46376	//   "httpMethod": "GET",
46377	//   "id": "dfareporting.reports.files.list",
46378	//   "parameterOrder": [
46379	//     "profileId",
46380	//     "reportId"
46381	//   ],
46382	//   "parameters": {
46383	//     "maxResults": {
46384	//       "default": "10",
46385	//       "description": "Maximum number of results to return.",
46386	//       "format": "int32",
46387	//       "location": "query",
46388	//       "maximum": "10",
46389	//       "minimum": "0",
46390	//       "type": "integer"
46391	//     },
46392	//     "pageToken": {
46393	//       "description": "The value of the nextToken from the previous result page.",
46394	//       "location": "query",
46395	//       "type": "string"
46396	//     },
46397	//     "profileId": {
46398	//       "description": "The Campaign Manager 360 user profile ID.",
46399	//       "format": "int64",
46400	//       "location": "path",
46401	//       "required": true,
46402	//       "type": "string"
46403	//     },
46404	//     "reportId": {
46405	//       "description": "The ID of the parent report.",
46406	//       "format": "int64",
46407	//       "location": "path",
46408	//       "required": true,
46409	//       "type": "string"
46410	//     },
46411	//     "sortField": {
46412	//       "default": "LAST_MODIFIED_TIME",
46413	//       "description": "The field by which to sort the list.",
46414	//       "enum": [
46415	//         "ID",
46416	//         "LAST_MODIFIED_TIME"
46417	//       ],
46418	//       "enumDescriptions": [
46419	//         "",
46420	//         ""
46421	//       ],
46422	//       "location": "query",
46423	//       "type": "string"
46424	//     },
46425	//     "sortOrder": {
46426	//       "default": "DESCENDING",
46427	//       "description": "Order of sorted results.",
46428	//       "enum": [
46429	//         "ASCENDING",
46430	//         "DESCENDING"
46431	//       ],
46432	//       "enumDescriptions": [
46433	//         "",
46434	//         ""
46435	//       ],
46436	//       "location": "query",
46437	//       "type": "string"
46438	//     }
46439	//   },
46440	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/reports/{reportId}/files",
46441	//   "response": {
46442	//     "$ref": "FileList"
46443	//   },
46444	//   "scopes": [
46445	//     "https://www.googleapis.com/auth/dfareporting"
46446	//   ]
46447	// }
46448
46449}
46450
46451// Pages invokes f for each page of results.
46452// A non-nil error returned from f will halt the iteration.
46453// The provided context supersedes any context provided to the Context method.
46454func (c *ReportsFilesListCall) Pages(ctx context.Context, f func(*FileList) error) error {
46455	c.ctx_ = ctx
46456	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
46457	for {
46458		x, err := c.Do()
46459		if err != nil {
46460			return err
46461		}
46462		if err := f(x); err != nil {
46463			return err
46464		}
46465		if x.NextPageToken == "" {
46466			return nil
46467		}
46468		c.PageToken(x.NextPageToken)
46469	}
46470}
46471
46472// method id "dfareporting.sites.get":
46473
46474type SitesGetCall struct {
46475	s            *Service
46476	profileId    int64
46477	id           int64
46478	urlParams_   gensupport.URLParams
46479	ifNoneMatch_ string
46480	ctx_         context.Context
46481	header_      http.Header
46482}
46483
46484// Get: Gets one site by ID.
46485//
46486// - id: Site ID.
46487// - profileId: User profile ID associated with this request.
46488func (r *SitesService) Get(profileId int64, id int64) *SitesGetCall {
46489	c := &SitesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
46490	c.profileId = profileId
46491	c.id = id
46492	return c
46493}
46494
46495// Fields allows partial responses to be retrieved. See
46496// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
46497// for more information.
46498func (c *SitesGetCall) Fields(s ...googleapi.Field) *SitesGetCall {
46499	c.urlParams_.Set("fields", googleapi.CombineFields(s))
46500	return c
46501}
46502
46503// IfNoneMatch sets the optional parameter which makes the operation
46504// fail if the object's ETag matches the given value. This is useful for
46505// getting updates only after the object has changed since the last
46506// request. Use googleapi.IsNotModified to check whether the response
46507// error from Do is the result of In-None-Match.
46508func (c *SitesGetCall) IfNoneMatch(entityTag string) *SitesGetCall {
46509	c.ifNoneMatch_ = entityTag
46510	return c
46511}
46512
46513// Context sets the context to be used in this call's Do method. Any
46514// pending HTTP request will be aborted if the provided context is
46515// canceled.
46516func (c *SitesGetCall) Context(ctx context.Context) *SitesGetCall {
46517	c.ctx_ = ctx
46518	return c
46519}
46520
46521// Header returns an http.Header that can be modified by the caller to
46522// add HTTP headers to the request.
46523func (c *SitesGetCall) Header() http.Header {
46524	if c.header_ == nil {
46525		c.header_ = make(http.Header)
46526	}
46527	return c.header_
46528}
46529
46530func (c *SitesGetCall) doRequest(alt string) (*http.Response, error) {
46531	reqHeaders := make(http.Header)
46532	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
46533	for k, v := range c.header_ {
46534		reqHeaders[k] = v
46535	}
46536	reqHeaders.Set("User-Agent", c.s.userAgent())
46537	if c.ifNoneMatch_ != "" {
46538		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
46539	}
46540	var body io.Reader = nil
46541	c.urlParams_.Set("alt", alt)
46542	c.urlParams_.Set("prettyPrint", "false")
46543	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/sites/{id}")
46544	urls += "?" + c.urlParams_.Encode()
46545	req, err := http.NewRequest("GET", urls, body)
46546	if err != nil {
46547		return nil, err
46548	}
46549	req.Header = reqHeaders
46550	googleapi.Expand(req.URL, map[string]string{
46551		"profileId": strconv.FormatInt(c.profileId, 10),
46552		"id":        strconv.FormatInt(c.id, 10),
46553	})
46554	return gensupport.SendRequest(c.ctx_, c.s.client, req)
46555}
46556
46557// Do executes the "dfareporting.sites.get" call.
46558// Exactly one of *Site or error will be non-nil. Any non-2xx status
46559// code is an error. Response headers are in either
46560// *Site.ServerResponse.Header or (if a response was returned at all) in
46561// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
46562// whether the returned error was because http.StatusNotModified was
46563// returned.
46564func (c *SitesGetCall) Do(opts ...googleapi.CallOption) (*Site, error) {
46565	gensupport.SetOptions(c.urlParams_, opts...)
46566	res, err := c.doRequest("json")
46567	if res != nil && res.StatusCode == http.StatusNotModified {
46568		if res.Body != nil {
46569			res.Body.Close()
46570		}
46571		return nil, &googleapi.Error{
46572			Code:   res.StatusCode,
46573			Header: res.Header,
46574		}
46575	}
46576	if err != nil {
46577		return nil, err
46578	}
46579	defer googleapi.CloseBody(res)
46580	if err := googleapi.CheckResponse(res); err != nil {
46581		return nil, err
46582	}
46583	ret := &Site{
46584		ServerResponse: googleapi.ServerResponse{
46585			Header:         res.Header,
46586			HTTPStatusCode: res.StatusCode,
46587		},
46588	}
46589	target := &ret
46590	if err := gensupport.DecodeResponse(target, res); err != nil {
46591		return nil, err
46592	}
46593	return ret, nil
46594	// {
46595	//   "description": "Gets one site by ID.",
46596	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/sites/{id}",
46597	//   "httpMethod": "GET",
46598	//   "id": "dfareporting.sites.get",
46599	//   "parameterOrder": [
46600	//     "profileId",
46601	//     "id"
46602	//   ],
46603	//   "parameters": {
46604	//     "id": {
46605	//       "description": "Site ID.",
46606	//       "format": "int64",
46607	//       "location": "path",
46608	//       "required": true,
46609	//       "type": "string"
46610	//     },
46611	//     "profileId": {
46612	//       "description": "User profile ID associated with this request.",
46613	//       "format": "int64",
46614	//       "location": "path",
46615	//       "required": true,
46616	//       "type": "string"
46617	//     }
46618	//   },
46619	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/sites/{id}",
46620	//   "response": {
46621	//     "$ref": "Site"
46622	//   },
46623	//   "scopes": [
46624	//     "https://www.googleapis.com/auth/dfatrafficking"
46625	//   ]
46626	// }
46627
46628}
46629
46630// method id "dfareporting.sites.insert":
46631
46632type SitesInsertCall struct {
46633	s          *Service
46634	profileId  int64
46635	site       *Site
46636	urlParams_ gensupport.URLParams
46637	ctx_       context.Context
46638	header_    http.Header
46639}
46640
46641// Insert: Inserts a new site.
46642//
46643// - profileId: User profile ID associated with this request.
46644func (r *SitesService) Insert(profileId int64, site *Site) *SitesInsertCall {
46645	c := &SitesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
46646	c.profileId = profileId
46647	c.site = site
46648	return c
46649}
46650
46651// Fields allows partial responses to be retrieved. See
46652// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
46653// for more information.
46654func (c *SitesInsertCall) Fields(s ...googleapi.Field) *SitesInsertCall {
46655	c.urlParams_.Set("fields", googleapi.CombineFields(s))
46656	return c
46657}
46658
46659// Context sets the context to be used in this call's Do method. Any
46660// pending HTTP request will be aborted if the provided context is
46661// canceled.
46662func (c *SitesInsertCall) Context(ctx context.Context) *SitesInsertCall {
46663	c.ctx_ = ctx
46664	return c
46665}
46666
46667// Header returns an http.Header that can be modified by the caller to
46668// add HTTP headers to the request.
46669func (c *SitesInsertCall) Header() http.Header {
46670	if c.header_ == nil {
46671		c.header_ = make(http.Header)
46672	}
46673	return c.header_
46674}
46675
46676func (c *SitesInsertCall) doRequest(alt string) (*http.Response, error) {
46677	reqHeaders := make(http.Header)
46678	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
46679	for k, v := range c.header_ {
46680		reqHeaders[k] = v
46681	}
46682	reqHeaders.Set("User-Agent", c.s.userAgent())
46683	var body io.Reader = nil
46684	body, err := googleapi.WithoutDataWrapper.JSONReader(c.site)
46685	if err != nil {
46686		return nil, err
46687	}
46688	reqHeaders.Set("Content-Type", "application/json")
46689	c.urlParams_.Set("alt", alt)
46690	c.urlParams_.Set("prettyPrint", "false")
46691	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/sites")
46692	urls += "?" + c.urlParams_.Encode()
46693	req, err := http.NewRequest("POST", urls, body)
46694	if err != nil {
46695		return nil, err
46696	}
46697	req.Header = reqHeaders
46698	googleapi.Expand(req.URL, map[string]string{
46699		"profileId": strconv.FormatInt(c.profileId, 10),
46700	})
46701	return gensupport.SendRequest(c.ctx_, c.s.client, req)
46702}
46703
46704// Do executes the "dfareporting.sites.insert" call.
46705// Exactly one of *Site or error will be non-nil. Any non-2xx status
46706// code is an error. Response headers are in either
46707// *Site.ServerResponse.Header or (if a response was returned at all) in
46708// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
46709// whether the returned error was because http.StatusNotModified was
46710// returned.
46711func (c *SitesInsertCall) Do(opts ...googleapi.CallOption) (*Site, error) {
46712	gensupport.SetOptions(c.urlParams_, opts...)
46713	res, err := c.doRequest("json")
46714	if res != nil && res.StatusCode == http.StatusNotModified {
46715		if res.Body != nil {
46716			res.Body.Close()
46717		}
46718		return nil, &googleapi.Error{
46719			Code:   res.StatusCode,
46720			Header: res.Header,
46721		}
46722	}
46723	if err != nil {
46724		return nil, err
46725	}
46726	defer googleapi.CloseBody(res)
46727	if err := googleapi.CheckResponse(res); err != nil {
46728		return nil, err
46729	}
46730	ret := &Site{
46731		ServerResponse: googleapi.ServerResponse{
46732			Header:         res.Header,
46733			HTTPStatusCode: res.StatusCode,
46734		},
46735	}
46736	target := &ret
46737	if err := gensupport.DecodeResponse(target, res); err != nil {
46738		return nil, err
46739	}
46740	return ret, nil
46741	// {
46742	//   "description": "Inserts a new site.",
46743	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/sites",
46744	//   "httpMethod": "POST",
46745	//   "id": "dfareporting.sites.insert",
46746	//   "parameterOrder": [
46747	//     "profileId"
46748	//   ],
46749	//   "parameters": {
46750	//     "profileId": {
46751	//       "description": "User profile ID associated with this request.",
46752	//       "format": "int64",
46753	//       "location": "path",
46754	//       "required": true,
46755	//       "type": "string"
46756	//     }
46757	//   },
46758	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/sites",
46759	//   "request": {
46760	//     "$ref": "Site"
46761	//   },
46762	//   "response": {
46763	//     "$ref": "Site"
46764	//   },
46765	//   "scopes": [
46766	//     "https://www.googleapis.com/auth/dfatrafficking"
46767	//   ]
46768	// }
46769
46770}
46771
46772// method id "dfareporting.sites.list":
46773
46774type SitesListCall struct {
46775	s            *Service
46776	profileId    int64
46777	urlParams_   gensupport.URLParams
46778	ifNoneMatch_ string
46779	ctx_         context.Context
46780	header_      http.Header
46781}
46782
46783// List: Retrieves a list of sites, possibly filtered. This method
46784// supports paging.
46785//
46786// - profileId: User profile ID associated with this request.
46787func (r *SitesService) List(profileId int64) *SitesListCall {
46788	c := &SitesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
46789	c.profileId = profileId
46790	return c
46791}
46792
46793// AcceptsInStreamVideoPlacements sets the optional parameter
46794// "acceptsInStreamVideoPlacements": This search filter is no longer
46795// supported and will have no effect on the results returned.
46796func (c *SitesListCall) AcceptsInStreamVideoPlacements(acceptsInStreamVideoPlacements bool) *SitesListCall {
46797	c.urlParams_.Set("acceptsInStreamVideoPlacements", fmt.Sprint(acceptsInStreamVideoPlacements))
46798	return c
46799}
46800
46801// AcceptsInterstitialPlacements sets the optional parameter
46802// "acceptsInterstitialPlacements": This search filter is no longer
46803// supported and will have no effect on the results returned.
46804func (c *SitesListCall) AcceptsInterstitialPlacements(acceptsInterstitialPlacements bool) *SitesListCall {
46805	c.urlParams_.Set("acceptsInterstitialPlacements", fmt.Sprint(acceptsInterstitialPlacements))
46806	return c
46807}
46808
46809// AcceptsPublisherPaidPlacements sets the optional parameter
46810// "acceptsPublisherPaidPlacements": Select only sites that accept
46811// publisher paid placements.
46812func (c *SitesListCall) AcceptsPublisherPaidPlacements(acceptsPublisherPaidPlacements bool) *SitesListCall {
46813	c.urlParams_.Set("acceptsPublisherPaidPlacements", fmt.Sprint(acceptsPublisherPaidPlacements))
46814	return c
46815}
46816
46817// AdWordsSite sets the optional parameter "adWordsSite": Select only
46818// AdWords sites.
46819func (c *SitesListCall) AdWordsSite(adWordsSite bool) *SitesListCall {
46820	c.urlParams_.Set("adWordsSite", fmt.Sprint(adWordsSite))
46821	return c
46822}
46823
46824// Approved sets the optional parameter "approved": Select only approved
46825// sites.
46826func (c *SitesListCall) Approved(approved bool) *SitesListCall {
46827	c.urlParams_.Set("approved", fmt.Sprint(approved))
46828	return c
46829}
46830
46831// CampaignIds sets the optional parameter "campaignIds": Select only
46832// sites with these campaign IDs.
46833func (c *SitesListCall) CampaignIds(campaignIds ...int64) *SitesListCall {
46834	var campaignIds_ []string
46835	for _, v := range campaignIds {
46836		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
46837	}
46838	c.urlParams_.SetMulti("campaignIds", campaignIds_)
46839	return c
46840}
46841
46842// DirectorySiteIds sets the optional parameter "directorySiteIds":
46843// Select only sites with these directory site IDs.
46844func (c *SitesListCall) DirectorySiteIds(directorySiteIds ...int64) *SitesListCall {
46845	var directorySiteIds_ []string
46846	for _, v := range directorySiteIds {
46847		directorySiteIds_ = append(directorySiteIds_, fmt.Sprint(v))
46848	}
46849	c.urlParams_.SetMulti("directorySiteIds", directorySiteIds_)
46850	return c
46851}
46852
46853// Ids sets the optional parameter "ids": Select only sites with these
46854// IDs.
46855func (c *SitesListCall) Ids(ids ...int64) *SitesListCall {
46856	var ids_ []string
46857	for _, v := range ids {
46858		ids_ = append(ids_, fmt.Sprint(v))
46859	}
46860	c.urlParams_.SetMulti("ids", ids_)
46861	return c
46862}
46863
46864// MaxResults sets the optional parameter "maxResults": Maximum number
46865// of results to return.
46866func (c *SitesListCall) MaxResults(maxResults int64) *SitesListCall {
46867	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
46868	return c
46869}
46870
46871// PageToken sets the optional parameter "pageToken": Value of the
46872// nextPageToken from the previous result page.
46873func (c *SitesListCall) PageToken(pageToken string) *SitesListCall {
46874	c.urlParams_.Set("pageToken", pageToken)
46875	return c
46876}
46877
46878// SearchString sets the optional parameter "searchString": Allows
46879// searching for objects by name, ID or keyName. Wildcards (*) are
46880// allowed. For example, "site*2015" will return objects with names like
46881// "site June 2015", "site April 2015", or simply "site 2015". Most of
46882// the searches also add wildcards implicitly at the start and the end
46883// of the search string. For example, a search string of "site" will
46884// match objects with name "my site", "site 2015", or simply "site".
46885func (c *SitesListCall) SearchString(searchString string) *SitesListCall {
46886	c.urlParams_.Set("searchString", searchString)
46887	return c
46888}
46889
46890// SortField sets the optional parameter "sortField": Field by which to
46891// sort the list.
46892//
46893// Possible values:
46894//   "ID" (default)
46895//   "NAME"
46896func (c *SitesListCall) SortField(sortField string) *SitesListCall {
46897	c.urlParams_.Set("sortField", sortField)
46898	return c
46899}
46900
46901// SortOrder sets the optional parameter "sortOrder": Order of sorted
46902// results.
46903//
46904// Possible values:
46905//   "ASCENDING" (default)
46906//   "DESCENDING"
46907func (c *SitesListCall) SortOrder(sortOrder string) *SitesListCall {
46908	c.urlParams_.Set("sortOrder", sortOrder)
46909	return c
46910}
46911
46912// SubaccountId sets the optional parameter "subaccountId": Select only
46913// sites with this subaccount ID.
46914func (c *SitesListCall) SubaccountId(subaccountId int64) *SitesListCall {
46915	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
46916	return c
46917}
46918
46919// UnmappedSite sets the optional parameter "unmappedSite": Select only
46920// sites that have not been mapped to a directory site.
46921func (c *SitesListCall) UnmappedSite(unmappedSite bool) *SitesListCall {
46922	c.urlParams_.Set("unmappedSite", fmt.Sprint(unmappedSite))
46923	return c
46924}
46925
46926// Fields allows partial responses to be retrieved. See
46927// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
46928// for more information.
46929func (c *SitesListCall) Fields(s ...googleapi.Field) *SitesListCall {
46930	c.urlParams_.Set("fields", googleapi.CombineFields(s))
46931	return c
46932}
46933
46934// IfNoneMatch sets the optional parameter which makes the operation
46935// fail if the object's ETag matches the given value. This is useful for
46936// getting updates only after the object has changed since the last
46937// request. Use googleapi.IsNotModified to check whether the response
46938// error from Do is the result of In-None-Match.
46939func (c *SitesListCall) IfNoneMatch(entityTag string) *SitesListCall {
46940	c.ifNoneMatch_ = entityTag
46941	return c
46942}
46943
46944// Context sets the context to be used in this call's Do method. Any
46945// pending HTTP request will be aborted if the provided context is
46946// canceled.
46947func (c *SitesListCall) Context(ctx context.Context) *SitesListCall {
46948	c.ctx_ = ctx
46949	return c
46950}
46951
46952// Header returns an http.Header that can be modified by the caller to
46953// add HTTP headers to the request.
46954func (c *SitesListCall) Header() http.Header {
46955	if c.header_ == nil {
46956		c.header_ = make(http.Header)
46957	}
46958	return c.header_
46959}
46960
46961func (c *SitesListCall) doRequest(alt string) (*http.Response, error) {
46962	reqHeaders := make(http.Header)
46963	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
46964	for k, v := range c.header_ {
46965		reqHeaders[k] = v
46966	}
46967	reqHeaders.Set("User-Agent", c.s.userAgent())
46968	if c.ifNoneMatch_ != "" {
46969		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
46970	}
46971	var body io.Reader = nil
46972	c.urlParams_.Set("alt", alt)
46973	c.urlParams_.Set("prettyPrint", "false")
46974	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/sites")
46975	urls += "?" + c.urlParams_.Encode()
46976	req, err := http.NewRequest("GET", urls, body)
46977	if err != nil {
46978		return nil, err
46979	}
46980	req.Header = reqHeaders
46981	googleapi.Expand(req.URL, map[string]string{
46982		"profileId": strconv.FormatInt(c.profileId, 10),
46983	})
46984	return gensupport.SendRequest(c.ctx_, c.s.client, req)
46985}
46986
46987// Do executes the "dfareporting.sites.list" call.
46988// Exactly one of *SitesListResponse or error will be non-nil. Any
46989// non-2xx status code is an error. Response headers are in either
46990// *SitesListResponse.ServerResponse.Header or (if a response was
46991// returned at all) in error.(*googleapi.Error).Header. Use
46992// googleapi.IsNotModified to check whether the returned error was
46993// because http.StatusNotModified was returned.
46994func (c *SitesListCall) Do(opts ...googleapi.CallOption) (*SitesListResponse, error) {
46995	gensupport.SetOptions(c.urlParams_, opts...)
46996	res, err := c.doRequest("json")
46997	if res != nil && res.StatusCode == http.StatusNotModified {
46998		if res.Body != nil {
46999			res.Body.Close()
47000		}
47001		return nil, &googleapi.Error{
47002			Code:   res.StatusCode,
47003			Header: res.Header,
47004		}
47005	}
47006	if err != nil {
47007		return nil, err
47008	}
47009	defer googleapi.CloseBody(res)
47010	if err := googleapi.CheckResponse(res); err != nil {
47011		return nil, err
47012	}
47013	ret := &SitesListResponse{
47014		ServerResponse: googleapi.ServerResponse{
47015			Header:         res.Header,
47016			HTTPStatusCode: res.StatusCode,
47017		},
47018	}
47019	target := &ret
47020	if err := gensupport.DecodeResponse(target, res); err != nil {
47021		return nil, err
47022	}
47023	return ret, nil
47024	// {
47025	//   "description": "Retrieves a list of sites, possibly filtered. This method supports paging.",
47026	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/sites",
47027	//   "httpMethod": "GET",
47028	//   "id": "dfareporting.sites.list",
47029	//   "parameterOrder": [
47030	//     "profileId"
47031	//   ],
47032	//   "parameters": {
47033	//     "acceptsInStreamVideoPlacements": {
47034	//       "description": "This search filter is no longer supported and will have no effect on the results returned.",
47035	//       "location": "query",
47036	//       "type": "boolean"
47037	//     },
47038	//     "acceptsInterstitialPlacements": {
47039	//       "description": "This search filter is no longer supported and will have no effect on the results returned.",
47040	//       "location": "query",
47041	//       "type": "boolean"
47042	//     },
47043	//     "acceptsPublisherPaidPlacements": {
47044	//       "description": "Select only sites that accept publisher paid placements.",
47045	//       "location": "query",
47046	//       "type": "boolean"
47047	//     },
47048	//     "adWordsSite": {
47049	//       "description": "Select only AdWords sites.",
47050	//       "location": "query",
47051	//       "type": "boolean"
47052	//     },
47053	//     "approved": {
47054	//       "description": "Select only approved sites.",
47055	//       "location": "query",
47056	//       "type": "boolean"
47057	//     },
47058	//     "campaignIds": {
47059	//       "description": "Select only sites with these campaign IDs.",
47060	//       "format": "int64",
47061	//       "location": "query",
47062	//       "repeated": true,
47063	//       "type": "string"
47064	//     },
47065	//     "directorySiteIds": {
47066	//       "description": "Select only sites with these directory site IDs.",
47067	//       "format": "int64",
47068	//       "location": "query",
47069	//       "repeated": true,
47070	//       "type": "string"
47071	//     },
47072	//     "ids": {
47073	//       "description": "Select only sites with these IDs.",
47074	//       "format": "int64",
47075	//       "location": "query",
47076	//       "repeated": true,
47077	//       "type": "string"
47078	//     },
47079	//     "maxResults": {
47080	//       "default": "1000",
47081	//       "description": "Maximum number of results to return.",
47082	//       "format": "int32",
47083	//       "location": "query",
47084	//       "maximum": "1000",
47085	//       "minimum": "0",
47086	//       "type": "integer"
47087	//     },
47088	//     "pageToken": {
47089	//       "description": "Value of the nextPageToken from the previous result page.",
47090	//       "location": "query",
47091	//       "type": "string"
47092	//     },
47093	//     "profileId": {
47094	//       "description": "User profile ID associated with this request.",
47095	//       "format": "int64",
47096	//       "location": "path",
47097	//       "required": true,
47098	//       "type": "string"
47099	//     },
47100	//     "searchString": {
47101	//       "description": "Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, \"site*2015\" will return objects with names like \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"site\" will match objects with name \"my site\", \"site 2015\", or simply \"site\".",
47102	//       "location": "query",
47103	//       "type": "string"
47104	//     },
47105	//     "sortField": {
47106	//       "default": "ID",
47107	//       "description": "Field by which to sort the list.",
47108	//       "enum": [
47109	//         "ID",
47110	//         "NAME"
47111	//       ],
47112	//       "enumDescriptions": [
47113	//         "",
47114	//         ""
47115	//       ],
47116	//       "location": "query",
47117	//       "type": "string"
47118	//     },
47119	//     "sortOrder": {
47120	//       "default": "ASCENDING",
47121	//       "description": "Order of sorted results.",
47122	//       "enum": [
47123	//         "ASCENDING",
47124	//         "DESCENDING"
47125	//       ],
47126	//       "enumDescriptions": [
47127	//         "",
47128	//         ""
47129	//       ],
47130	//       "location": "query",
47131	//       "type": "string"
47132	//     },
47133	//     "subaccountId": {
47134	//       "description": "Select only sites with this subaccount ID.",
47135	//       "format": "int64",
47136	//       "location": "query",
47137	//       "type": "string"
47138	//     },
47139	//     "unmappedSite": {
47140	//       "description": "Select only sites that have not been mapped to a directory site.",
47141	//       "location": "query",
47142	//       "type": "boolean"
47143	//     }
47144	//   },
47145	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/sites",
47146	//   "response": {
47147	//     "$ref": "SitesListResponse"
47148	//   },
47149	//   "scopes": [
47150	//     "https://www.googleapis.com/auth/dfatrafficking"
47151	//   ]
47152	// }
47153
47154}
47155
47156// Pages invokes f for each page of results.
47157// A non-nil error returned from f will halt the iteration.
47158// The provided context supersedes any context provided to the Context method.
47159func (c *SitesListCall) Pages(ctx context.Context, f func(*SitesListResponse) error) error {
47160	c.ctx_ = ctx
47161	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
47162	for {
47163		x, err := c.Do()
47164		if err != nil {
47165			return err
47166		}
47167		if err := f(x); err != nil {
47168			return err
47169		}
47170		if x.NextPageToken == "" {
47171			return nil
47172		}
47173		c.PageToken(x.NextPageToken)
47174	}
47175}
47176
47177// method id "dfareporting.sites.patch":
47178
47179type SitesPatchCall struct {
47180	s          *Service
47181	profileId  int64
47182	site       *Site
47183	urlParams_ gensupport.URLParams
47184	ctx_       context.Context
47185	header_    http.Header
47186}
47187
47188// Patch: Updates an existing site. This method supports patch
47189// semantics.
47190//
47191// - id: Site ID.
47192// - profileId: User profile ID associated with this request.
47193func (r *SitesService) Patch(profileId int64, id int64, site *Site) *SitesPatchCall {
47194	c := &SitesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
47195	c.profileId = profileId
47196	c.urlParams_.Set("id", fmt.Sprint(id))
47197	c.site = site
47198	return c
47199}
47200
47201// Fields allows partial responses to be retrieved. See
47202// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
47203// for more information.
47204func (c *SitesPatchCall) Fields(s ...googleapi.Field) *SitesPatchCall {
47205	c.urlParams_.Set("fields", googleapi.CombineFields(s))
47206	return c
47207}
47208
47209// Context sets the context to be used in this call's Do method. Any
47210// pending HTTP request will be aborted if the provided context is
47211// canceled.
47212func (c *SitesPatchCall) Context(ctx context.Context) *SitesPatchCall {
47213	c.ctx_ = ctx
47214	return c
47215}
47216
47217// Header returns an http.Header that can be modified by the caller to
47218// add HTTP headers to the request.
47219func (c *SitesPatchCall) Header() http.Header {
47220	if c.header_ == nil {
47221		c.header_ = make(http.Header)
47222	}
47223	return c.header_
47224}
47225
47226func (c *SitesPatchCall) doRequest(alt string) (*http.Response, error) {
47227	reqHeaders := make(http.Header)
47228	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
47229	for k, v := range c.header_ {
47230		reqHeaders[k] = v
47231	}
47232	reqHeaders.Set("User-Agent", c.s.userAgent())
47233	var body io.Reader = nil
47234	body, err := googleapi.WithoutDataWrapper.JSONReader(c.site)
47235	if err != nil {
47236		return nil, err
47237	}
47238	reqHeaders.Set("Content-Type", "application/json")
47239	c.urlParams_.Set("alt", alt)
47240	c.urlParams_.Set("prettyPrint", "false")
47241	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/sites")
47242	urls += "?" + c.urlParams_.Encode()
47243	req, err := http.NewRequest("PATCH", urls, body)
47244	if err != nil {
47245		return nil, err
47246	}
47247	req.Header = reqHeaders
47248	googleapi.Expand(req.URL, map[string]string{
47249		"profileId": strconv.FormatInt(c.profileId, 10),
47250	})
47251	return gensupport.SendRequest(c.ctx_, c.s.client, req)
47252}
47253
47254// Do executes the "dfareporting.sites.patch" call.
47255// Exactly one of *Site or error will be non-nil. Any non-2xx status
47256// code is an error. Response headers are in either
47257// *Site.ServerResponse.Header or (if a response was returned at all) in
47258// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
47259// whether the returned error was because http.StatusNotModified was
47260// returned.
47261func (c *SitesPatchCall) Do(opts ...googleapi.CallOption) (*Site, error) {
47262	gensupport.SetOptions(c.urlParams_, opts...)
47263	res, err := c.doRequest("json")
47264	if res != nil && res.StatusCode == http.StatusNotModified {
47265		if res.Body != nil {
47266			res.Body.Close()
47267		}
47268		return nil, &googleapi.Error{
47269			Code:   res.StatusCode,
47270			Header: res.Header,
47271		}
47272	}
47273	if err != nil {
47274		return nil, err
47275	}
47276	defer googleapi.CloseBody(res)
47277	if err := googleapi.CheckResponse(res); err != nil {
47278		return nil, err
47279	}
47280	ret := &Site{
47281		ServerResponse: googleapi.ServerResponse{
47282			Header:         res.Header,
47283			HTTPStatusCode: res.StatusCode,
47284		},
47285	}
47286	target := &ret
47287	if err := gensupport.DecodeResponse(target, res); err != nil {
47288		return nil, err
47289	}
47290	return ret, nil
47291	// {
47292	//   "description": "Updates an existing site. This method supports patch semantics.",
47293	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/sites",
47294	//   "httpMethod": "PATCH",
47295	//   "id": "dfareporting.sites.patch",
47296	//   "parameterOrder": [
47297	//     "profileId",
47298	//     "id"
47299	//   ],
47300	//   "parameters": {
47301	//     "id": {
47302	//       "description": "Site ID.",
47303	//       "format": "int64",
47304	//       "location": "query",
47305	//       "required": true,
47306	//       "type": "string"
47307	//     },
47308	//     "profileId": {
47309	//       "description": "User profile ID associated with this request.",
47310	//       "format": "int64",
47311	//       "location": "path",
47312	//       "required": true,
47313	//       "type": "string"
47314	//     }
47315	//   },
47316	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/sites",
47317	//   "request": {
47318	//     "$ref": "Site"
47319	//   },
47320	//   "response": {
47321	//     "$ref": "Site"
47322	//   },
47323	//   "scopes": [
47324	//     "https://www.googleapis.com/auth/dfatrafficking"
47325	//   ]
47326	// }
47327
47328}
47329
47330// method id "dfareporting.sites.update":
47331
47332type SitesUpdateCall struct {
47333	s          *Service
47334	profileId  int64
47335	site       *Site
47336	urlParams_ gensupport.URLParams
47337	ctx_       context.Context
47338	header_    http.Header
47339}
47340
47341// Update: Updates an existing site.
47342//
47343// - profileId: User profile ID associated with this request.
47344func (r *SitesService) Update(profileId int64, site *Site) *SitesUpdateCall {
47345	c := &SitesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
47346	c.profileId = profileId
47347	c.site = site
47348	return c
47349}
47350
47351// Fields allows partial responses to be retrieved. See
47352// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
47353// for more information.
47354func (c *SitesUpdateCall) Fields(s ...googleapi.Field) *SitesUpdateCall {
47355	c.urlParams_.Set("fields", googleapi.CombineFields(s))
47356	return c
47357}
47358
47359// Context sets the context to be used in this call's Do method. Any
47360// pending HTTP request will be aborted if the provided context is
47361// canceled.
47362func (c *SitesUpdateCall) Context(ctx context.Context) *SitesUpdateCall {
47363	c.ctx_ = ctx
47364	return c
47365}
47366
47367// Header returns an http.Header that can be modified by the caller to
47368// add HTTP headers to the request.
47369func (c *SitesUpdateCall) Header() http.Header {
47370	if c.header_ == nil {
47371		c.header_ = make(http.Header)
47372	}
47373	return c.header_
47374}
47375
47376func (c *SitesUpdateCall) doRequest(alt string) (*http.Response, error) {
47377	reqHeaders := make(http.Header)
47378	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
47379	for k, v := range c.header_ {
47380		reqHeaders[k] = v
47381	}
47382	reqHeaders.Set("User-Agent", c.s.userAgent())
47383	var body io.Reader = nil
47384	body, err := googleapi.WithoutDataWrapper.JSONReader(c.site)
47385	if err != nil {
47386		return nil, err
47387	}
47388	reqHeaders.Set("Content-Type", "application/json")
47389	c.urlParams_.Set("alt", alt)
47390	c.urlParams_.Set("prettyPrint", "false")
47391	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/sites")
47392	urls += "?" + c.urlParams_.Encode()
47393	req, err := http.NewRequest("PUT", urls, body)
47394	if err != nil {
47395		return nil, err
47396	}
47397	req.Header = reqHeaders
47398	googleapi.Expand(req.URL, map[string]string{
47399		"profileId": strconv.FormatInt(c.profileId, 10),
47400	})
47401	return gensupport.SendRequest(c.ctx_, c.s.client, req)
47402}
47403
47404// Do executes the "dfareporting.sites.update" call.
47405// Exactly one of *Site or error will be non-nil. Any non-2xx status
47406// code is an error. Response headers are in either
47407// *Site.ServerResponse.Header or (if a response was returned at all) in
47408// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
47409// whether the returned error was because http.StatusNotModified was
47410// returned.
47411func (c *SitesUpdateCall) Do(opts ...googleapi.CallOption) (*Site, error) {
47412	gensupport.SetOptions(c.urlParams_, opts...)
47413	res, err := c.doRequest("json")
47414	if res != nil && res.StatusCode == http.StatusNotModified {
47415		if res.Body != nil {
47416			res.Body.Close()
47417		}
47418		return nil, &googleapi.Error{
47419			Code:   res.StatusCode,
47420			Header: res.Header,
47421		}
47422	}
47423	if err != nil {
47424		return nil, err
47425	}
47426	defer googleapi.CloseBody(res)
47427	if err := googleapi.CheckResponse(res); err != nil {
47428		return nil, err
47429	}
47430	ret := &Site{
47431		ServerResponse: googleapi.ServerResponse{
47432			Header:         res.Header,
47433			HTTPStatusCode: res.StatusCode,
47434		},
47435	}
47436	target := &ret
47437	if err := gensupport.DecodeResponse(target, res); err != nil {
47438		return nil, err
47439	}
47440	return ret, nil
47441	// {
47442	//   "description": "Updates an existing site.",
47443	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/sites",
47444	//   "httpMethod": "PUT",
47445	//   "id": "dfareporting.sites.update",
47446	//   "parameterOrder": [
47447	//     "profileId"
47448	//   ],
47449	//   "parameters": {
47450	//     "profileId": {
47451	//       "description": "User profile ID associated with this request.",
47452	//       "format": "int64",
47453	//       "location": "path",
47454	//       "required": true,
47455	//       "type": "string"
47456	//     }
47457	//   },
47458	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/sites",
47459	//   "request": {
47460	//     "$ref": "Site"
47461	//   },
47462	//   "response": {
47463	//     "$ref": "Site"
47464	//   },
47465	//   "scopes": [
47466	//     "https://www.googleapis.com/auth/dfatrafficking"
47467	//   ]
47468	// }
47469
47470}
47471
47472// method id "dfareporting.sizes.get":
47473
47474type SizesGetCall struct {
47475	s            *Service
47476	profileId    int64
47477	id           int64
47478	urlParams_   gensupport.URLParams
47479	ifNoneMatch_ string
47480	ctx_         context.Context
47481	header_      http.Header
47482}
47483
47484// Get: Gets one size by ID.
47485//
47486// - id: Size ID.
47487// - profileId: User profile ID associated with this request.
47488func (r *SizesService) Get(profileId int64, id int64) *SizesGetCall {
47489	c := &SizesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
47490	c.profileId = profileId
47491	c.id = id
47492	return c
47493}
47494
47495// Fields allows partial responses to be retrieved. See
47496// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
47497// for more information.
47498func (c *SizesGetCall) Fields(s ...googleapi.Field) *SizesGetCall {
47499	c.urlParams_.Set("fields", googleapi.CombineFields(s))
47500	return c
47501}
47502
47503// IfNoneMatch sets the optional parameter which makes the operation
47504// fail if the object's ETag matches the given value. This is useful for
47505// getting updates only after the object has changed since the last
47506// request. Use googleapi.IsNotModified to check whether the response
47507// error from Do is the result of In-None-Match.
47508func (c *SizesGetCall) IfNoneMatch(entityTag string) *SizesGetCall {
47509	c.ifNoneMatch_ = entityTag
47510	return c
47511}
47512
47513// Context sets the context to be used in this call's Do method. Any
47514// pending HTTP request will be aborted if the provided context is
47515// canceled.
47516func (c *SizesGetCall) Context(ctx context.Context) *SizesGetCall {
47517	c.ctx_ = ctx
47518	return c
47519}
47520
47521// Header returns an http.Header that can be modified by the caller to
47522// add HTTP headers to the request.
47523func (c *SizesGetCall) Header() http.Header {
47524	if c.header_ == nil {
47525		c.header_ = make(http.Header)
47526	}
47527	return c.header_
47528}
47529
47530func (c *SizesGetCall) doRequest(alt string) (*http.Response, error) {
47531	reqHeaders := make(http.Header)
47532	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
47533	for k, v := range c.header_ {
47534		reqHeaders[k] = v
47535	}
47536	reqHeaders.Set("User-Agent", c.s.userAgent())
47537	if c.ifNoneMatch_ != "" {
47538		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
47539	}
47540	var body io.Reader = nil
47541	c.urlParams_.Set("alt", alt)
47542	c.urlParams_.Set("prettyPrint", "false")
47543	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/sizes/{id}")
47544	urls += "?" + c.urlParams_.Encode()
47545	req, err := http.NewRequest("GET", urls, body)
47546	if err != nil {
47547		return nil, err
47548	}
47549	req.Header = reqHeaders
47550	googleapi.Expand(req.URL, map[string]string{
47551		"profileId": strconv.FormatInt(c.profileId, 10),
47552		"id":        strconv.FormatInt(c.id, 10),
47553	})
47554	return gensupport.SendRequest(c.ctx_, c.s.client, req)
47555}
47556
47557// Do executes the "dfareporting.sizes.get" call.
47558// Exactly one of *Size or error will be non-nil. Any non-2xx status
47559// code is an error. Response headers are in either
47560// *Size.ServerResponse.Header or (if a response was returned at all) in
47561// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
47562// whether the returned error was because http.StatusNotModified was
47563// returned.
47564func (c *SizesGetCall) Do(opts ...googleapi.CallOption) (*Size, error) {
47565	gensupport.SetOptions(c.urlParams_, opts...)
47566	res, err := c.doRequest("json")
47567	if res != nil && res.StatusCode == http.StatusNotModified {
47568		if res.Body != nil {
47569			res.Body.Close()
47570		}
47571		return nil, &googleapi.Error{
47572			Code:   res.StatusCode,
47573			Header: res.Header,
47574		}
47575	}
47576	if err != nil {
47577		return nil, err
47578	}
47579	defer googleapi.CloseBody(res)
47580	if err := googleapi.CheckResponse(res); err != nil {
47581		return nil, err
47582	}
47583	ret := &Size{
47584		ServerResponse: googleapi.ServerResponse{
47585			Header:         res.Header,
47586			HTTPStatusCode: res.StatusCode,
47587		},
47588	}
47589	target := &ret
47590	if err := gensupport.DecodeResponse(target, res); err != nil {
47591		return nil, err
47592	}
47593	return ret, nil
47594	// {
47595	//   "description": "Gets one size by ID.",
47596	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/sizes/{id}",
47597	//   "httpMethod": "GET",
47598	//   "id": "dfareporting.sizes.get",
47599	//   "parameterOrder": [
47600	//     "profileId",
47601	//     "id"
47602	//   ],
47603	//   "parameters": {
47604	//     "id": {
47605	//       "description": "Size ID.",
47606	//       "format": "int64",
47607	//       "location": "path",
47608	//       "required": true,
47609	//       "type": "string"
47610	//     },
47611	//     "profileId": {
47612	//       "description": "User profile ID associated with this request.",
47613	//       "format": "int64",
47614	//       "location": "path",
47615	//       "required": true,
47616	//       "type": "string"
47617	//     }
47618	//   },
47619	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/sizes/{id}",
47620	//   "response": {
47621	//     "$ref": "Size"
47622	//   },
47623	//   "scopes": [
47624	//     "https://www.googleapis.com/auth/dfatrafficking"
47625	//   ]
47626	// }
47627
47628}
47629
47630// method id "dfareporting.sizes.insert":
47631
47632type SizesInsertCall struct {
47633	s          *Service
47634	profileId  int64
47635	size       *Size
47636	urlParams_ gensupport.URLParams
47637	ctx_       context.Context
47638	header_    http.Header
47639}
47640
47641// Insert: Inserts a new size.
47642//
47643// - profileId: User profile ID associated with this request.
47644func (r *SizesService) Insert(profileId int64, size *Size) *SizesInsertCall {
47645	c := &SizesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
47646	c.profileId = profileId
47647	c.size = size
47648	return c
47649}
47650
47651// Fields allows partial responses to be retrieved. See
47652// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
47653// for more information.
47654func (c *SizesInsertCall) Fields(s ...googleapi.Field) *SizesInsertCall {
47655	c.urlParams_.Set("fields", googleapi.CombineFields(s))
47656	return c
47657}
47658
47659// Context sets the context to be used in this call's Do method. Any
47660// pending HTTP request will be aborted if the provided context is
47661// canceled.
47662func (c *SizesInsertCall) Context(ctx context.Context) *SizesInsertCall {
47663	c.ctx_ = ctx
47664	return c
47665}
47666
47667// Header returns an http.Header that can be modified by the caller to
47668// add HTTP headers to the request.
47669func (c *SizesInsertCall) Header() http.Header {
47670	if c.header_ == nil {
47671		c.header_ = make(http.Header)
47672	}
47673	return c.header_
47674}
47675
47676func (c *SizesInsertCall) doRequest(alt string) (*http.Response, error) {
47677	reqHeaders := make(http.Header)
47678	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
47679	for k, v := range c.header_ {
47680		reqHeaders[k] = v
47681	}
47682	reqHeaders.Set("User-Agent", c.s.userAgent())
47683	var body io.Reader = nil
47684	body, err := googleapi.WithoutDataWrapper.JSONReader(c.size)
47685	if err != nil {
47686		return nil, err
47687	}
47688	reqHeaders.Set("Content-Type", "application/json")
47689	c.urlParams_.Set("alt", alt)
47690	c.urlParams_.Set("prettyPrint", "false")
47691	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/sizes")
47692	urls += "?" + c.urlParams_.Encode()
47693	req, err := http.NewRequest("POST", urls, body)
47694	if err != nil {
47695		return nil, err
47696	}
47697	req.Header = reqHeaders
47698	googleapi.Expand(req.URL, map[string]string{
47699		"profileId": strconv.FormatInt(c.profileId, 10),
47700	})
47701	return gensupport.SendRequest(c.ctx_, c.s.client, req)
47702}
47703
47704// Do executes the "dfareporting.sizes.insert" call.
47705// Exactly one of *Size or error will be non-nil. Any non-2xx status
47706// code is an error. Response headers are in either
47707// *Size.ServerResponse.Header or (if a response was returned at all) in
47708// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
47709// whether the returned error was because http.StatusNotModified was
47710// returned.
47711func (c *SizesInsertCall) Do(opts ...googleapi.CallOption) (*Size, error) {
47712	gensupport.SetOptions(c.urlParams_, opts...)
47713	res, err := c.doRequest("json")
47714	if res != nil && res.StatusCode == http.StatusNotModified {
47715		if res.Body != nil {
47716			res.Body.Close()
47717		}
47718		return nil, &googleapi.Error{
47719			Code:   res.StatusCode,
47720			Header: res.Header,
47721		}
47722	}
47723	if err != nil {
47724		return nil, err
47725	}
47726	defer googleapi.CloseBody(res)
47727	if err := googleapi.CheckResponse(res); err != nil {
47728		return nil, err
47729	}
47730	ret := &Size{
47731		ServerResponse: googleapi.ServerResponse{
47732			Header:         res.Header,
47733			HTTPStatusCode: res.StatusCode,
47734		},
47735	}
47736	target := &ret
47737	if err := gensupport.DecodeResponse(target, res); err != nil {
47738		return nil, err
47739	}
47740	return ret, nil
47741	// {
47742	//   "description": "Inserts a new size.",
47743	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/sizes",
47744	//   "httpMethod": "POST",
47745	//   "id": "dfareporting.sizes.insert",
47746	//   "parameterOrder": [
47747	//     "profileId"
47748	//   ],
47749	//   "parameters": {
47750	//     "profileId": {
47751	//       "description": "User profile ID associated with this request.",
47752	//       "format": "int64",
47753	//       "location": "path",
47754	//       "required": true,
47755	//       "type": "string"
47756	//     }
47757	//   },
47758	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/sizes",
47759	//   "request": {
47760	//     "$ref": "Size"
47761	//   },
47762	//   "response": {
47763	//     "$ref": "Size"
47764	//   },
47765	//   "scopes": [
47766	//     "https://www.googleapis.com/auth/dfatrafficking"
47767	//   ]
47768	// }
47769
47770}
47771
47772// method id "dfareporting.sizes.list":
47773
47774type SizesListCall struct {
47775	s            *Service
47776	profileId    int64
47777	urlParams_   gensupport.URLParams
47778	ifNoneMatch_ string
47779	ctx_         context.Context
47780	header_      http.Header
47781}
47782
47783// List: Retrieves a list of sizes, possibly filtered. Retrieved sizes
47784// are globally unique and may include values not currently in use by
47785// your account. Due to this, the list of sizes returned by this method
47786// may differ from the list seen in the Trafficking UI.
47787//
47788// - profileId: User profile ID associated with this request.
47789func (r *SizesService) List(profileId int64) *SizesListCall {
47790	c := &SizesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
47791	c.profileId = profileId
47792	return c
47793}
47794
47795// Height sets the optional parameter "height": Select only sizes with
47796// this height.
47797func (c *SizesListCall) Height(height int64) *SizesListCall {
47798	c.urlParams_.Set("height", fmt.Sprint(height))
47799	return c
47800}
47801
47802// IabStandard sets the optional parameter "iabStandard": Select only
47803// IAB standard sizes.
47804func (c *SizesListCall) IabStandard(iabStandard bool) *SizesListCall {
47805	c.urlParams_.Set("iabStandard", fmt.Sprint(iabStandard))
47806	return c
47807}
47808
47809// Ids sets the optional parameter "ids": Select only sizes with these
47810// IDs.
47811func (c *SizesListCall) Ids(ids ...int64) *SizesListCall {
47812	var ids_ []string
47813	for _, v := range ids {
47814		ids_ = append(ids_, fmt.Sprint(v))
47815	}
47816	c.urlParams_.SetMulti("ids", ids_)
47817	return c
47818}
47819
47820// Width sets the optional parameter "width": Select only sizes with
47821// this width.
47822func (c *SizesListCall) Width(width int64) *SizesListCall {
47823	c.urlParams_.Set("width", fmt.Sprint(width))
47824	return c
47825}
47826
47827// Fields allows partial responses to be retrieved. See
47828// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
47829// for more information.
47830func (c *SizesListCall) Fields(s ...googleapi.Field) *SizesListCall {
47831	c.urlParams_.Set("fields", googleapi.CombineFields(s))
47832	return c
47833}
47834
47835// IfNoneMatch sets the optional parameter which makes the operation
47836// fail if the object's ETag matches the given value. This is useful for
47837// getting updates only after the object has changed since the last
47838// request. Use googleapi.IsNotModified to check whether the response
47839// error from Do is the result of In-None-Match.
47840func (c *SizesListCall) IfNoneMatch(entityTag string) *SizesListCall {
47841	c.ifNoneMatch_ = entityTag
47842	return c
47843}
47844
47845// Context sets the context to be used in this call's Do method. Any
47846// pending HTTP request will be aborted if the provided context is
47847// canceled.
47848func (c *SizesListCall) Context(ctx context.Context) *SizesListCall {
47849	c.ctx_ = ctx
47850	return c
47851}
47852
47853// Header returns an http.Header that can be modified by the caller to
47854// add HTTP headers to the request.
47855func (c *SizesListCall) Header() http.Header {
47856	if c.header_ == nil {
47857		c.header_ = make(http.Header)
47858	}
47859	return c.header_
47860}
47861
47862func (c *SizesListCall) doRequest(alt string) (*http.Response, error) {
47863	reqHeaders := make(http.Header)
47864	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
47865	for k, v := range c.header_ {
47866		reqHeaders[k] = v
47867	}
47868	reqHeaders.Set("User-Agent", c.s.userAgent())
47869	if c.ifNoneMatch_ != "" {
47870		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
47871	}
47872	var body io.Reader = nil
47873	c.urlParams_.Set("alt", alt)
47874	c.urlParams_.Set("prettyPrint", "false")
47875	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/sizes")
47876	urls += "?" + c.urlParams_.Encode()
47877	req, err := http.NewRequest("GET", urls, body)
47878	if err != nil {
47879		return nil, err
47880	}
47881	req.Header = reqHeaders
47882	googleapi.Expand(req.URL, map[string]string{
47883		"profileId": strconv.FormatInt(c.profileId, 10),
47884	})
47885	return gensupport.SendRequest(c.ctx_, c.s.client, req)
47886}
47887
47888// Do executes the "dfareporting.sizes.list" call.
47889// Exactly one of *SizesListResponse or error will be non-nil. Any
47890// non-2xx status code is an error. Response headers are in either
47891// *SizesListResponse.ServerResponse.Header or (if a response was
47892// returned at all) in error.(*googleapi.Error).Header. Use
47893// googleapi.IsNotModified to check whether the returned error was
47894// because http.StatusNotModified was returned.
47895func (c *SizesListCall) Do(opts ...googleapi.CallOption) (*SizesListResponse, error) {
47896	gensupport.SetOptions(c.urlParams_, opts...)
47897	res, err := c.doRequest("json")
47898	if res != nil && res.StatusCode == http.StatusNotModified {
47899		if res.Body != nil {
47900			res.Body.Close()
47901		}
47902		return nil, &googleapi.Error{
47903			Code:   res.StatusCode,
47904			Header: res.Header,
47905		}
47906	}
47907	if err != nil {
47908		return nil, err
47909	}
47910	defer googleapi.CloseBody(res)
47911	if err := googleapi.CheckResponse(res); err != nil {
47912		return nil, err
47913	}
47914	ret := &SizesListResponse{
47915		ServerResponse: googleapi.ServerResponse{
47916			Header:         res.Header,
47917			HTTPStatusCode: res.StatusCode,
47918		},
47919	}
47920	target := &ret
47921	if err := gensupport.DecodeResponse(target, res); err != nil {
47922		return nil, err
47923	}
47924	return ret, nil
47925	// {
47926	//   "description": "Retrieves a list of sizes, possibly filtered. Retrieved sizes are globally unique and may include values not currently in use by your account. Due to this, the list of sizes returned by this method may differ from the list seen in the Trafficking UI.",
47927	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/sizes",
47928	//   "httpMethod": "GET",
47929	//   "id": "dfareporting.sizes.list",
47930	//   "parameterOrder": [
47931	//     "profileId"
47932	//   ],
47933	//   "parameters": {
47934	//     "height": {
47935	//       "description": "Select only sizes with this height.",
47936	//       "format": "int32",
47937	//       "location": "query",
47938	//       "maximum": "32767",
47939	//       "minimum": "0",
47940	//       "type": "integer"
47941	//     },
47942	//     "iabStandard": {
47943	//       "description": "Select only IAB standard sizes.",
47944	//       "location": "query",
47945	//       "type": "boolean"
47946	//     },
47947	//     "ids": {
47948	//       "description": "Select only sizes with these IDs.",
47949	//       "format": "int64",
47950	//       "location": "query",
47951	//       "repeated": true,
47952	//       "type": "string"
47953	//     },
47954	//     "profileId": {
47955	//       "description": "User profile ID associated with this request.",
47956	//       "format": "int64",
47957	//       "location": "path",
47958	//       "required": true,
47959	//       "type": "string"
47960	//     },
47961	//     "width": {
47962	//       "description": "Select only sizes with this width.",
47963	//       "format": "int32",
47964	//       "location": "query",
47965	//       "maximum": "32767",
47966	//       "minimum": "0",
47967	//       "type": "integer"
47968	//     }
47969	//   },
47970	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/sizes",
47971	//   "response": {
47972	//     "$ref": "SizesListResponse"
47973	//   },
47974	//   "scopes": [
47975	//     "https://www.googleapis.com/auth/dfatrafficking"
47976	//   ]
47977	// }
47978
47979}
47980
47981// method id "dfareporting.subaccounts.get":
47982
47983type SubaccountsGetCall struct {
47984	s            *Service
47985	profileId    int64
47986	id           int64
47987	urlParams_   gensupport.URLParams
47988	ifNoneMatch_ string
47989	ctx_         context.Context
47990	header_      http.Header
47991}
47992
47993// Get: Gets one subaccount by ID.
47994//
47995// - id: Subaccount ID.
47996// - profileId: User profile ID associated with this request.
47997func (r *SubaccountsService) Get(profileId int64, id int64) *SubaccountsGetCall {
47998	c := &SubaccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
47999	c.profileId = profileId
48000	c.id = id
48001	return c
48002}
48003
48004// Fields allows partial responses to be retrieved. See
48005// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
48006// for more information.
48007func (c *SubaccountsGetCall) Fields(s ...googleapi.Field) *SubaccountsGetCall {
48008	c.urlParams_.Set("fields", googleapi.CombineFields(s))
48009	return c
48010}
48011
48012// IfNoneMatch sets the optional parameter which makes the operation
48013// fail if the object's ETag matches the given value. This is useful for
48014// getting updates only after the object has changed since the last
48015// request. Use googleapi.IsNotModified to check whether the response
48016// error from Do is the result of In-None-Match.
48017func (c *SubaccountsGetCall) IfNoneMatch(entityTag string) *SubaccountsGetCall {
48018	c.ifNoneMatch_ = entityTag
48019	return c
48020}
48021
48022// Context sets the context to be used in this call's Do method. Any
48023// pending HTTP request will be aborted if the provided context is
48024// canceled.
48025func (c *SubaccountsGetCall) Context(ctx context.Context) *SubaccountsGetCall {
48026	c.ctx_ = ctx
48027	return c
48028}
48029
48030// Header returns an http.Header that can be modified by the caller to
48031// add HTTP headers to the request.
48032func (c *SubaccountsGetCall) Header() http.Header {
48033	if c.header_ == nil {
48034		c.header_ = make(http.Header)
48035	}
48036	return c.header_
48037}
48038
48039func (c *SubaccountsGetCall) doRequest(alt string) (*http.Response, error) {
48040	reqHeaders := make(http.Header)
48041	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
48042	for k, v := range c.header_ {
48043		reqHeaders[k] = v
48044	}
48045	reqHeaders.Set("User-Agent", c.s.userAgent())
48046	if c.ifNoneMatch_ != "" {
48047		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
48048	}
48049	var body io.Reader = nil
48050	c.urlParams_.Set("alt", alt)
48051	c.urlParams_.Set("prettyPrint", "false")
48052	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/subaccounts/{id}")
48053	urls += "?" + c.urlParams_.Encode()
48054	req, err := http.NewRequest("GET", urls, body)
48055	if err != nil {
48056		return nil, err
48057	}
48058	req.Header = reqHeaders
48059	googleapi.Expand(req.URL, map[string]string{
48060		"profileId": strconv.FormatInt(c.profileId, 10),
48061		"id":        strconv.FormatInt(c.id, 10),
48062	})
48063	return gensupport.SendRequest(c.ctx_, c.s.client, req)
48064}
48065
48066// Do executes the "dfareporting.subaccounts.get" call.
48067// Exactly one of *Subaccount or error will be non-nil. Any non-2xx
48068// status code is an error. Response headers are in either
48069// *Subaccount.ServerResponse.Header or (if a response was returned at
48070// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
48071// to check whether the returned error was because
48072// http.StatusNotModified was returned.
48073func (c *SubaccountsGetCall) Do(opts ...googleapi.CallOption) (*Subaccount, error) {
48074	gensupport.SetOptions(c.urlParams_, opts...)
48075	res, err := c.doRequest("json")
48076	if res != nil && res.StatusCode == http.StatusNotModified {
48077		if res.Body != nil {
48078			res.Body.Close()
48079		}
48080		return nil, &googleapi.Error{
48081			Code:   res.StatusCode,
48082			Header: res.Header,
48083		}
48084	}
48085	if err != nil {
48086		return nil, err
48087	}
48088	defer googleapi.CloseBody(res)
48089	if err := googleapi.CheckResponse(res); err != nil {
48090		return nil, err
48091	}
48092	ret := &Subaccount{
48093		ServerResponse: googleapi.ServerResponse{
48094			Header:         res.Header,
48095			HTTPStatusCode: res.StatusCode,
48096		},
48097	}
48098	target := &ret
48099	if err := gensupport.DecodeResponse(target, res); err != nil {
48100		return nil, err
48101	}
48102	return ret, nil
48103	// {
48104	//   "description": "Gets one subaccount by ID.",
48105	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts/{id}",
48106	//   "httpMethod": "GET",
48107	//   "id": "dfareporting.subaccounts.get",
48108	//   "parameterOrder": [
48109	//     "profileId",
48110	//     "id"
48111	//   ],
48112	//   "parameters": {
48113	//     "id": {
48114	//       "description": "Subaccount ID.",
48115	//       "format": "int64",
48116	//       "location": "path",
48117	//       "required": true,
48118	//       "type": "string"
48119	//     },
48120	//     "profileId": {
48121	//       "description": "User profile ID associated with this request.",
48122	//       "format": "int64",
48123	//       "location": "path",
48124	//       "required": true,
48125	//       "type": "string"
48126	//     }
48127	//   },
48128	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts/{id}",
48129	//   "response": {
48130	//     "$ref": "Subaccount"
48131	//   },
48132	//   "scopes": [
48133	//     "https://www.googleapis.com/auth/dfatrafficking"
48134	//   ]
48135	// }
48136
48137}
48138
48139// method id "dfareporting.subaccounts.insert":
48140
48141type SubaccountsInsertCall struct {
48142	s          *Service
48143	profileId  int64
48144	subaccount *Subaccount
48145	urlParams_ gensupport.URLParams
48146	ctx_       context.Context
48147	header_    http.Header
48148}
48149
48150// Insert: Inserts a new subaccount.
48151//
48152// - profileId: User profile ID associated with this request.
48153func (r *SubaccountsService) Insert(profileId int64, subaccount *Subaccount) *SubaccountsInsertCall {
48154	c := &SubaccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
48155	c.profileId = profileId
48156	c.subaccount = subaccount
48157	return c
48158}
48159
48160// Fields allows partial responses to be retrieved. See
48161// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
48162// for more information.
48163func (c *SubaccountsInsertCall) Fields(s ...googleapi.Field) *SubaccountsInsertCall {
48164	c.urlParams_.Set("fields", googleapi.CombineFields(s))
48165	return c
48166}
48167
48168// Context sets the context to be used in this call's Do method. Any
48169// pending HTTP request will be aborted if the provided context is
48170// canceled.
48171func (c *SubaccountsInsertCall) Context(ctx context.Context) *SubaccountsInsertCall {
48172	c.ctx_ = ctx
48173	return c
48174}
48175
48176// Header returns an http.Header that can be modified by the caller to
48177// add HTTP headers to the request.
48178func (c *SubaccountsInsertCall) Header() http.Header {
48179	if c.header_ == nil {
48180		c.header_ = make(http.Header)
48181	}
48182	return c.header_
48183}
48184
48185func (c *SubaccountsInsertCall) doRequest(alt string) (*http.Response, error) {
48186	reqHeaders := make(http.Header)
48187	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
48188	for k, v := range c.header_ {
48189		reqHeaders[k] = v
48190	}
48191	reqHeaders.Set("User-Agent", c.s.userAgent())
48192	var body io.Reader = nil
48193	body, err := googleapi.WithoutDataWrapper.JSONReader(c.subaccount)
48194	if err != nil {
48195		return nil, err
48196	}
48197	reqHeaders.Set("Content-Type", "application/json")
48198	c.urlParams_.Set("alt", alt)
48199	c.urlParams_.Set("prettyPrint", "false")
48200	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/subaccounts")
48201	urls += "?" + c.urlParams_.Encode()
48202	req, err := http.NewRequest("POST", urls, body)
48203	if err != nil {
48204		return nil, err
48205	}
48206	req.Header = reqHeaders
48207	googleapi.Expand(req.URL, map[string]string{
48208		"profileId": strconv.FormatInt(c.profileId, 10),
48209	})
48210	return gensupport.SendRequest(c.ctx_, c.s.client, req)
48211}
48212
48213// Do executes the "dfareporting.subaccounts.insert" call.
48214// Exactly one of *Subaccount or error will be non-nil. Any non-2xx
48215// status code is an error. Response headers are in either
48216// *Subaccount.ServerResponse.Header or (if a response was returned at
48217// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
48218// to check whether the returned error was because
48219// http.StatusNotModified was returned.
48220func (c *SubaccountsInsertCall) Do(opts ...googleapi.CallOption) (*Subaccount, error) {
48221	gensupport.SetOptions(c.urlParams_, opts...)
48222	res, err := c.doRequest("json")
48223	if res != nil && res.StatusCode == http.StatusNotModified {
48224		if res.Body != nil {
48225			res.Body.Close()
48226		}
48227		return nil, &googleapi.Error{
48228			Code:   res.StatusCode,
48229			Header: res.Header,
48230		}
48231	}
48232	if err != nil {
48233		return nil, err
48234	}
48235	defer googleapi.CloseBody(res)
48236	if err := googleapi.CheckResponse(res); err != nil {
48237		return nil, err
48238	}
48239	ret := &Subaccount{
48240		ServerResponse: googleapi.ServerResponse{
48241			Header:         res.Header,
48242			HTTPStatusCode: res.StatusCode,
48243		},
48244	}
48245	target := &ret
48246	if err := gensupport.DecodeResponse(target, res); err != nil {
48247		return nil, err
48248	}
48249	return ret, nil
48250	// {
48251	//   "description": "Inserts a new subaccount.",
48252	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts",
48253	//   "httpMethod": "POST",
48254	//   "id": "dfareporting.subaccounts.insert",
48255	//   "parameterOrder": [
48256	//     "profileId"
48257	//   ],
48258	//   "parameters": {
48259	//     "profileId": {
48260	//       "description": "User profile ID associated with this request.",
48261	//       "format": "int64",
48262	//       "location": "path",
48263	//       "required": true,
48264	//       "type": "string"
48265	//     }
48266	//   },
48267	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts",
48268	//   "request": {
48269	//     "$ref": "Subaccount"
48270	//   },
48271	//   "response": {
48272	//     "$ref": "Subaccount"
48273	//   },
48274	//   "scopes": [
48275	//     "https://www.googleapis.com/auth/dfatrafficking"
48276	//   ]
48277	// }
48278
48279}
48280
48281// method id "dfareporting.subaccounts.list":
48282
48283type SubaccountsListCall struct {
48284	s            *Service
48285	profileId    int64
48286	urlParams_   gensupport.URLParams
48287	ifNoneMatch_ string
48288	ctx_         context.Context
48289	header_      http.Header
48290}
48291
48292// List: Gets a list of subaccounts, possibly filtered. This method
48293// supports paging.
48294//
48295// - profileId: User profile ID associated with this request.
48296func (r *SubaccountsService) List(profileId int64) *SubaccountsListCall {
48297	c := &SubaccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
48298	c.profileId = profileId
48299	return c
48300}
48301
48302// Ids sets the optional parameter "ids": Select only subaccounts with
48303// these IDs.
48304func (c *SubaccountsListCall) Ids(ids ...int64) *SubaccountsListCall {
48305	var ids_ []string
48306	for _, v := range ids {
48307		ids_ = append(ids_, fmt.Sprint(v))
48308	}
48309	c.urlParams_.SetMulti("ids", ids_)
48310	return c
48311}
48312
48313// MaxResults sets the optional parameter "maxResults": Maximum number
48314// of results to return.
48315func (c *SubaccountsListCall) MaxResults(maxResults int64) *SubaccountsListCall {
48316	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
48317	return c
48318}
48319
48320// PageToken sets the optional parameter "pageToken": Value of the
48321// nextPageToken from the previous result page.
48322func (c *SubaccountsListCall) PageToken(pageToken string) *SubaccountsListCall {
48323	c.urlParams_.Set("pageToken", pageToken)
48324	return c
48325}
48326
48327// SearchString sets the optional parameter "searchString": Allows
48328// searching for objects by name or ID. Wildcards (*) are allowed. For
48329// example, "subaccount*2015" will return objects with names like
48330// "subaccount June 2015", "subaccount April 2015", or simply
48331// "subaccount 2015". Most of the searches also add wildcards implicitly
48332// at the start and the end of the search string. For example, a search
48333// string of "subaccount" will match objects with name "my subaccount",
48334// "subaccount 2015", or simply "subaccount" .
48335func (c *SubaccountsListCall) SearchString(searchString string) *SubaccountsListCall {
48336	c.urlParams_.Set("searchString", searchString)
48337	return c
48338}
48339
48340// SortField sets the optional parameter "sortField": Field by which to
48341// sort the list.
48342//
48343// Possible values:
48344//   "ID" (default)
48345//   "NAME"
48346func (c *SubaccountsListCall) SortField(sortField string) *SubaccountsListCall {
48347	c.urlParams_.Set("sortField", sortField)
48348	return c
48349}
48350
48351// SortOrder sets the optional parameter "sortOrder": Order of sorted
48352// results.
48353//
48354// Possible values:
48355//   "ASCENDING" (default)
48356//   "DESCENDING"
48357func (c *SubaccountsListCall) SortOrder(sortOrder string) *SubaccountsListCall {
48358	c.urlParams_.Set("sortOrder", sortOrder)
48359	return c
48360}
48361
48362// Fields allows partial responses to be retrieved. See
48363// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
48364// for more information.
48365func (c *SubaccountsListCall) Fields(s ...googleapi.Field) *SubaccountsListCall {
48366	c.urlParams_.Set("fields", googleapi.CombineFields(s))
48367	return c
48368}
48369
48370// IfNoneMatch sets the optional parameter which makes the operation
48371// fail if the object's ETag matches the given value. This is useful for
48372// getting updates only after the object has changed since the last
48373// request. Use googleapi.IsNotModified to check whether the response
48374// error from Do is the result of In-None-Match.
48375func (c *SubaccountsListCall) IfNoneMatch(entityTag string) *SubaccountsListCall {
48376	c.ifNoneMatch_ = entityTag
48377	return c
48378}
48379
48380// Context sets the context to be used in this call's Do method. Any
48381// pending HTTP request will be aborted if the provided context is
48382// canceled.
48383func (c *SubaccountsListCall) Context(ctx context.Context) *SubaccountsListCall {
48384	c.ctx_ = ctx
48385	return c
48386}
48387
48388// Header returns an http.Header that can be modified by the caller to
48389// add HTTP headers to the request.
48390func (c *SubaccountsListCall) Header() http.Header {
48391	if c.header_ == nil {
48392		c.header_ = make(http.Header)
48393	}
48394	return c.header_
48395}
48396
48397func (c *SubaccountsListCall) doRequest(alt string) (*http.Response, error) {
48398	reqHeaders := make(http.Header)
48399	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
48400	for k, v := range c.header_ {
48401		reqHeaders[k] = v
48402	}
48403	reqHeaders.Set("User-Agent", c.s.userAgent())
48404	if c.ifNoneMatch_ != "" {
48405		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
48406	}
48407	var body io.Reader = nil
48408	c.urlParams_.Set("alt", alt)
48409	c.urlParams_.Set("prettyPrint", "false")
48410	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/subaccounts")
48411	urls += "?" + c.urlParams_.Encode()
48412	req, err := http.NewRequest("GET", urls, body)
48413	if err != nil {
48414		return nil, err
48415	}
48416	req.Header = reqHeaders
48417	googleapi.Expand(req.URL, map[string]string{
48418		"profileId": strconv.FormatInt(c.profileId, 10),
48419	})
48420	return gensupport.SendRequest(c.ctx_, c.s.client, req)
48421}
48422
48423// Do executes the "dfareporting.subaccounts.list" call.
48424// Exactly one of *SubaccountsListResponse or error will be non-nil. Any
48425// non-2xx status code is an error. Response headers are in either
48426// *SubaccountsListResponse.ServerResponse.Header or (if a response was
48427// returned at all) in error.(*googleapi.Error).Header. Use
48428// googleapi.IsNotModified to check whether the returned error was
48429// because http.StatusNotModified was returned.
48430func (c *SubaccountsListCall) Do(opts ...googleapi.CallOption) (*SubaccountsListResponse, error) {
48431	gensupport.SetOptions(c.urlParams_, opts...)
48432	res, err := c.doRequest("json")
48433	if res != nil && res.StatusCode == http.StatusNotModified {
48434		if res.Body != nil {
48435			res.Body.Close()
48436		}
48437		return nil, &googleapi.Error{
48438			Code:   res.StatusCode,
48439			Header: res.Header,
48440		}
48441	}
48442	if err != nil {
48443		return nil, err
48444	}
48445	defer googleapi.CloseBody(res)
48446	if err := googleapi.CheckResponse(res); err != nil {
48447		return nil, err
48448	}
48449	ret := &SubaccountsListResponse{
48450		ServerResponse: googleapi.ServerResponse{
48451			Header:         res.Header,
48452			HTTPStatusCode: res.StatusCode,
48453		},
48454	}
48455	target := &ret
48456	if err := gensupport.DecodeResponse(target, res); err != nil {
48457		return nil, err
48458	}
48459	return ret, nil
48460	// {
48461	//   "description": "Gets a list of subaccounts, possibly filtered. This method supports paging.",
48462	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts",
48463	//   "httpMethod": "GET",
48464	//   "id": "dfareporting.subaccounts.list",
48465	//   "parameterOrder": [
48466	//     "profileId"
48467	//   ],
48468	//   "parameters": {
48469	//     "ids": {
48470	//       "description": "Select only subaccounts with these IDs.",
48471	//       "format": "int64",
48472	//       "location": "query",
48473	//       "repeated": true,
48474	//       "type": "string"
48475	//     },
48476	//     "maxResults": {
48477	//       "default": "1000",
48478	//       "description": "Maximum number of results to return.",
48479	//       "format": "int32",
48480	//       "location": "query",
48481	//       "maximum": "1000",
48482	//       "minimum": "0",
48483	//       "type": "integer"
48484	//     },
48485	//     "pageToken": {
48486	//       "description": "Value of the nextPageToken from the previous result page.",
48487	//       "location": "query",
48488	//       "type": "string"
48489	//     },
48490	//     "profileId": {
48491	//       "description": "User profile ID associated with this request.",
48492	//       "format": "int64",
48493	//       "location": "path",
48494	//       "required": true,
48495	//       "type": "string"
48496	//     },
48497	//     "searchString": {
48498	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"subaccount*2015\" will return objects with names like \"subaccount June 2015\", \"subaccount April 2015\", or simply \"subaccount 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"subaccount\" will match objects with name \"my subaccount\", \"subaccount 2015\", or simply \"subaccount\" .",
48499	//       "location": "query",
48500	//       "type": "string"
48501	//     },
48502	//     "sortField": {
48503	//       "default": "ID",
48504	//       "description": "Field by which to sort the list.",
48505	//       "enum": [
48506	//         "ID",
48507	//         "NAME"
48508	//       ],
48509	//       "enumDescriptions": [
48510	//         "",
48511	//         ""
48512	//       ],
48513	//       "location": "query",
48514	//       "type": "string"
48515	//     },
48516	//     "sortOrder": {
48517	//       "default": "ASCENDING",
48518	//       "description": "Order of sorted results.",
48519	//       "enum": [
48520	//         "ASCENDING",
48521	//         "DESCENDING"
48522	//       ],
48523	//       "enumDescriptions": [
48524	//         "",
48525	//         ""
48526	//       ],
48527	//       "location": "query",
48528	//       "type": "string"
48529	//     }
48530	//   },
48531	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts",
48532	//   "response": {
48533	//     "$ref": "SubaccountsListResponse"
48534	//   },
48535	//   "scopes": [
48536	//     "https://www.googleapis.com/auth/dfatrafficking"
48537	//   ]
48538	// }
48539
48540}
48541
48542// Pages invokes f for each page of results.
48543// A non-nil error returned from f will halt the iteration.
48544// The provided context supersedes any context provided to the Context method.
48545func (c *SubaccountsListCall) Pages(ctx context.Context, f func(*SubaccountsListResponse) error) error {
48546	c.ctx_ = ctx
48547	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
48548	for {
48549		x, err := c.Do()
48550		if err != nil {
48551			return err
48552		}
48553		if err := f(x); err != nil {
48554			return err
48555		}
48556		if x.NextPageToken == "" {
48557			return nil
48558		}
48559		c.PageToken(x.NextPageToken)
48560	}
48561}
48562
48563// method id "dfareporting.subaccounts.patch":
48564
48565type SubaccountsPatchCall struct {
48566	s          *Service
48567	profileId  int64
48568	subaccount *Subaccount
48569	urlParams_ gensupport.URLParams
48570	ctx_       context.Context
48571	header_    http.Header
48572}
48573
48574// Patch: Updates an existing subaccount. This method supports patch
48575// semantics.
48576//
48577// - id: Subaccount ID.
48578// - profileId: User profile ID associated with this request.
48579func (r *SubaccountsService) Patch(profileId int64, id int64, subaccount *Subaccount) *SubaccountsPatchCall {
48580	c := &SubaccountsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
48581	c.profileId = profileId
48582	c.urlParams_.Set("id", fmt.Sprint(id))
48583	c.subaccount = subaccount
48584	return c
48585}
48586
48587// Fields allows partial responses to be retrieved. See
48588// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
48589// for more information.
48590func (c *SubaccountsPatchCall) Fields(s ...googleapi.Field) *SubaccountsPatchCall {
48591	c.urlParams_.Set("fields", googleapi.CombineFields(s))
48592	return c
48593}
48594
48595// Context sets the context to be used in this call's Do method. Any
48596// pending HTTP request will be aborted if the provided context is
48597// canceled.
48598func (c *SubaccountsPatchCall) Context(ctx context.Context) *SubaccountsPatchCall {
48599	c.ctx_ = ctx
48600	return c
48601}
48602
48603// Header returns an http.Header that can be modified by the caller to
48604// add HTTP headers to the request.
48605func (c *SubaccountsPatchCall) Header() http.Header {
48606	if c.header_ == nil {
48607		c.header_ = make(http.Header)
48608	}
48609	return c.header_
48610}
48611
48612func (c *SubaccountsPatchCall) doRequest(alt string) (*http.Response, error) {
48613	reqHeaders := make(http.Header)
48614	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
48615	for k, v := range c.header_ {
48616		reqHeaders[k] = v
48617	}
48618	reqHeaders.Set("User-Agent", c.s.userAgent())
48619	var body io.Reader = nil
48620	body, err := googleapi.WithoutDataWrapper.JSONReader(c.subaccount)
48621	if err != nil {
48622		return nil, err
48623	}
48624	reqHeaders.Set("Content-Type", "application/json")
48625	c.urlParams_.Set("alt", alt)
48626	c.urlParams_.Set("prettyPrint", "false")
48627	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/subaccounts")
48628	urls += "?" + c.urlParams_.Encode()
48629	req, err := http.NewRequest("PATCH", urls, body)
48630	if err != nil {
48631		return nil, err
48632	}
48633	req.Header = reqHeaders
48634	googleapi.Expand(req.URL, map[string]string{
48635		"profileId": strconv.FormatInt(c.profileId, 10),
48636	})
48637	return gensupport.SendRequest(c.ctx_, c.s.client, req)
48638}
48639
48640// Do executes the "dfareporting.subaccounts.patch" call.
48641// Exactly one of *Subaccount or error will be non-nil. Any non-2xx
48642// status code is an error. Response headers are in either
48643// *Subaccount.ServerResponse.Header or (if a response was returned at
48644// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
48645// to check whether the returned error was because
48646// http.StatusNotModified was returned.
48647func (c *SubaccountsPatchCall) Do(opts ...googleapi.CallOption) (*Subaccount, error) {
48648	gensupport.SetOptions(c.urlParams_, opts...)
48649	res, err := c.doRequest("json")
48650	if res != nil && res.StatusCode == http.StatusNotModified {
48651		if res.Body != nil {
48652			res.Body.Close()
48653		}
48654		return nil, &googleapi.Error{
48655			Code:   res.StatusCode,
48656			Header: res.Header,
48657		}
48658	}
48659	if err != nil {
48660		return nil, err
48661	}
48662	defer googleapi.CloseBody(res)
48663	if err := googleapi.CheckResponse(res); err != nil {
48664		return nil, err
48665	}
48666	ret := &Subaccount{
48667		ServerResponse: googleapi.ServerResponse{
48668			Header:         res.Header,
48669			HTTPStatusCode: res.StatusCode,
48670		},
48671	}
48672	target := &ret
48673	if err := gensupport.DecodeResponse(target, res); err != nil {
48674		return nil, err
48675	}
48676	return ret, nil
48677	// {
48678	//   "description": "Updates an existing subaccount. This method supports patch semantics.",
48679	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts",
48680	//   "httpMethod": "PATCH",
48681	//   "id": "dfareporting.subaccounts.patch",
48682	//   "parameterOrder": [
48683	//     "profileId",
48684	//     "id"
48685	//   ],
48686	//   "parameters": {
48687	//     "id": {
48688	//       "description": "Subaccount ID.",
48689	//       "format": "int64",
48690	//       "location": "query",
48691	//       "required": true,
48692	//       "type": "string"
48693	//     },
48694	//     "profileId": {
48695	//       "description": "User profile ID associated with this request.",
48696	//       "format": "int64",
48697	//       "location": "path",
48698	//       "required": true,
48699	//       "type": "string"
48700	//     }
48701	//   },
48702	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts",
48703	//   "request": {
48704	//     "$ref": "Subaccount"
48705	//   },
48706	//   "response": {
48707	//     "$ref": "Subaccount"
48708	//   },
48709	//   "scopes": [
48710	//     "https://www.googleapis.com/auth/dfatrafficking"
48711	//   ]
48712	// }
48713
48714}
48715
48716// method id "dfareporting.subaccounts.update":
48717
48718type SubaccountsUpdateCall struct {
48719	s          *Service
48720	profileId  int64
48721	subaccount *Subaccount
48722	urlParams_ gensupport.URLParams
48723	ctx_       context.Context
48724	header_    http.Header
48725}
48726
48727// Update: Updates an existing subaccount.
48728//
48729// - profileId: User profile ID associated with this request.
48730func (r *SubaccountsService) Update(profileId int64, subaccount *Subaccount) *SubaccountsUpdateCall {
48731	c := &SubaccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
48732	c.profileId = profileId
48733	c.subaccount = subaccount
48734	return c
48735}
48736
48737// Fields allows partial responses to be retrieved. See
48738// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
48739// for more information.
48740func (c *SubaccountsUpdateCall) Fields(s ...googleapi.Field) *SubaccountsUpdateCall {
48741	c.urlParams_.Set("fields", googleapi.CombineFields(s))
48742	return c
48743}
48744
48745// Context sets the context to be used in this call's Do method. Any
48746// pending HTTP request will be aborted if the provided context is
48747// canceled.
48748func (c *SubaccountsUpdateCall) Context(ctx context.Context) *SubaccountsUpdateCall {
48749	c.ctx_ = ctx
48750	return c
48751}
48752
48753// Header returns an http.Header that can be modified by the caller to
48754// add HTTP headers to the request.
48755func (c *SubaccountsUpdateCall) Header() http.Header {
48756	if c.header_ == nil {
48757		c.header_ = make(http.Header)
48758	}
48759	return c.header_
48760}
48761
48762func (c *SubaccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
48763	reqHeaders := make(http.Header)
48764	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
48765	for k, v := range c.header_ {
48766		reqHeaders[k] = v
48767	}
48768	reqHeaders.Set("User-Agent", c.s.userAgent())
48769	var body io.Reader = nil
48770	body, err := googleapi.WithoutDataWrapper.JSONReader(c.subaccount)
48771	if err != nil {
48772		return nil, err
48773	}
48774	reqHeaders.Set("Content-Type", "application/json")
48775	c.urlParams_.Set("alt", alt)
48776	c.urlParams_.Set("prettyPrint", "false")
48777	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/subaccounts")
48778	urls += "?" + c.urlParams_.Encode()
48779	req, err := http.NewRequest("PUT", urls, body)
48780	if err != nil {
48781		return nil, err
48782	}
48783	req.Header = reqHeaders
48784	googleapi.Expand(req.URL, map[string]string{
48785		"profileId": strconv.FormatInt(c.profileId, 10),
48786	})
48787	return gensupport.SendRequest(c.ctx_, c.s.client, req)
48788}
48789
48790// Do executes the "dfareporting.subaccounts.update" call.
48791// Exactly one of *Subaccount or error will be non-nil. Any non-2xx
48792// status code is an error. Response headers are in either
48793// *Subaccount.ServerResponse.Header or (if a response was returned at
48794// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
48795// to check whether the returned error was because
48796// http.StatusNotModified was returned.
48797func (c *SubaccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Subaccount, error) {
48798	gensupport.SetOptions(c.urlParams_, opts...)
48799	res, err := c.doRequest("json")
48800	if res != nil && res.StatusCode == http.StatusNotModified {
48801		if res.Body != nil {
48802			res.Body.Close()
48803		}
48804		return nil, &googleapi.Error{
48805			Code:   res.StatusCode,
48806			Header: res.Header,
48807		}
48808	}
48809	if err != nil {
48810		return nil, err
48811	}
48812	defer googleapi.CloseBody(res)
48813	if err := googleapi.CheckResponse(res); err != nil {
48814		return nil, err
48815	}
48816	ret := &Subaccount{
48817		ServerResponse: googleapi.ServerResponse{
48818			Header:         res.Header,
48819			HTTPStatusCode: res.StatusCode,
48820		},
48821	}
48822	target := &ret
48823	if err := gensupport.DecodeResponse(target, res); err != nil {
48824		return nil, err
48825	}
48826	return ret, nil
48827	// {
48828	//   "description": "Updates an existing subaccount.",
48829	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts",
48830	//   "httpMethod": "PUT",
48831	//   "id": "dfareporting.subaccounts.update",
48832	//   "parameterOrder": [
48833	//     "profileId"
48834	//   ],
48835	//   "parameters": {
48836	//     "profileId": {
48837	//       "description": "User profile ID associated with this request.",
48838	//       "format": "int64",
48839	//       "location": "path",
48840	//       "required": true,
48841	//       "type": "string"
48842	//     }
48843	//   },
48844	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/subaccounts",
48845	//   "request": {
48846	//     "$ref": "Subaccount"
48847	//   },
48848	//   "response": {
48849	//     "$ref": "Subaccount"
48850	//   },
48851	//   "scopes": [
48852	//     "https://www.googleapis.com/auth/dfatrafficking"
48853	//   ]
48854	// }
48855
48856}
48857
48858// method id "dfareporting.targetableRemarketingLists.get":
48859
48860type TargetableRemarketingListsGetCall struct {
48861	s            *Service
48862	profileId    int64
48863	id           int64
48864	urlParams_   gensupport.URLParams
48865	ifNoneMatch_ string
48866	ctx_         context.Context
48867	header_      http.Header
48868}
48869
48870// Get: Gets one remarketing list by ID.
48871//
48872// - id: Remarketing list ID.
48873// - profileId: User profile ID associated with this request.
48874func (r *TargetableRemarketingListsService) Get(profileId int64, id int64) *TargetableRemarketingListsGetCall {
48875	c := &TargetableRemarketingListsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
48876	c.profileId = profileId
48877	c.id = id
48878	return c
48879}
48880
48881// Fields allows partial responses to be retrieved. See
48882// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
48883// for more information.
48884func (c *TargetableRemarketingListsGetCall) Fields(s ...googleapi.Field) *TargetableRemarketingListsGetCall {
48885	c.urlParams_.Set("fields", googleapi.CombineFields(s))
48886	return c
48887}
48888
48889// IfNoneMatch sets the optional parameter which makes the operation
48890// fail if the object's ETag matches the given value. This is useful for
48891// getting updates only after the object has changed since the last
48892// request. Use googleapi.IsNotModified to check whether the response
48893// error from Do is the result of In-None-Match.
48894func (c *TargetableRemarketingListsGetCall) IfNoneMatch(entityTag string) *TargetableRemarketingListsGetCall {
48895	c.ifNoneMatch_ = entityTag
48896	return c
48897}
48898
48899// Context sets the context to be used in this call's Do method. Any
48900// pending HTTP request will be aborted if the provided context is
48901// canceled.
48902func (c *TargetableRemarketingListsGetCall) Context(ctx context.Context) *TargetableRemarketingListsGetCall {
48903	c.ctx_ = ctx
48904	return c
48905}
48906
48907// Header returns an http.Header that can be modified by the caller to
48908// add HTTP headers to the request.
48909func (c *TargetableRemarketingListsGetCall) Header() http.Header {
48910	if c.header_ == nil {
48911		c.header_ = make(http.Header)
48912	}
48913	return c.header_
48914}
48915
48916func (c *TargetableRemarketingListsGetCall) doRequest(alt string) (*http.Response, error) {
48917	reqHeaders := make(http.Header)
48918	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
48919	for k, v := range c.header_ {
48920		reqHeaders[k] = v
48921	}
48922	reqHeaders.Set("User-Agent", c.s.userAgent())
48923	if c.ifNoneMatch_ != "" {
48924		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
48925	}
48926	var body io.Reader = nil
48927	c.urlParams_.Set("alt", alt)
48928	c.urlParams_.Set("prettyPrint", "false")
48929	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/targetableRemarketingLists/{id}")
48930	urls += "?" + c.urlParams_.Encode()
48931	req, err := http.NewRequest("GET", urls, body)
48932	if err != nil {
48933		return nil, err
48934	}
48935	req.Header = reqHeaders
48936	googleapi.Expand(req.URL, map[string]string{
48937		"profileId": strconv.FormatInt(c.profileId, 10),
48938		"id":        strconv.FormatInt(c.id, 10),
48939	})
48940	return gensupport.SendRequest(c.ctx_, c.s.client, req)
48941}
48942
48943// Do executes the "dfareporting.targetableRemarketingLists.get" call.
48944// Exactly one of *TargetableRemarketingList or error will be non-nil.
48945// Any non-2xx status code is an error. Response headers are in either
48946// *TargetableRemarketingList.ServerResponse.Header or (if a response
48947// was returned at all) in error.(*googleapi.Error).Header. Use
48948// googleapi.IsNotModified to check whether the returned error was
48949// because http.StatusNotModified was returned.
48950func (c *TargetableRemarketingListsGetCall) Do(opts ...googleapi.CallOption) (*TargetableRemarketingList, error) {
48951	gensupport.SetOptions(c.urlParams_, opts...)
48952	res, err := c.doRequest("json")
48953	if res != nil && res.StatusCode == http.StatusNotModified {
48954		if res.Body != nil {
48955			res.Body.Close()
48956		}
48957		return nil, &googleapi.Error{
48958			Code:   res.StatusCode,
48959			Header: res.Header,
48960		}
48961	}
48962	if err != nil {
48963		return nil, err
48964	}
48965	defer googleapi.CloseBody(res)
48966	if err := googleapi.CheckResponse(res); err != nil {
48967		return nil, err
48968	}
48969	ret := &TargetableRemarketingList{
48970		ServerResponse: googleapi.ServerResponse{
48971			Header:         res.Header,
48972			HTTPStatusCode: res.StatusCode,
48973		},
48974	}
48975	target := &ret
48976	if err := gensupport.DecodeResponse(target, res); err != nil {
48977		return nil, err
48978	}
48979	return ret, nil
48980	// {
48981	//   "description": "Gets one remarketing list by ID.",
48982	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/targetableRemarketingLists/{id}",
48983	//   "httpMethod": "GET",
48984	//   "id": "dfareporting.targetableRemarketingLists.get",
48985	//   "parameterOrder": [
48986	//     "profileId",
48987	//     "id"
48988	//   ],
48989	//   "parameters": {
48990	//     "id": {
48991	//       "description": "Remarketing list ID.",
48992	//       "format": "int64",
48993	//       "location": "path",
48994	//       "required": true,
48995	//       "type": "string"
48996	//     },
48997	//     "profileId": {
48998	//       "description": "User profile ID associated with this request.",
48999	//       "format": "int64",
49000	//       "location": "path",
49001	//       "required": true,
49002	//       "type": "string"
49003	//     }
49004	//   },
49005	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/targetableRemarketingLists/{id}",
49006	//   "response": {
49007	//     "$ref": "TargetableRemarketingList"
49008	//   },
49009	//   "scopes": [
49010	//     "https://www.googleapis.com/auth/dfatrafficking"
49011	//   ]
49012	// }
49013
49014}
49015
49016// method id "dfareporting.targetableRemarketingLists.list":
49017
49018type TargetableRemarketingListsListCall struct {
49019	s            *Service
49020	profileId    int64
49021	urlParams_   gensupport.URLParams
49022	ifNoneMatch_ string
49023	ctx_         context.Context
49024	header_      http.Header
49025}
49026
49027// List: Retrieves a list of targetable remarketing lists, possibly
49028// filtered. This method supports paging.
49029//
49030// - advertiserId: Select only targetable remarketing lists targetable
49031//   by these advertisers.
49032// - profileId: User profile ID associated with this request.
49033func (r *TargetableRemarketingListsService) List(profileId int64, advertiserId int64) *TargetableRemarketingListsListCall {
49034	c := &TargetableRemarketingListsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
49035	c.profileId = profileId
49036	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
49037	return c
49038}
49039
49040// Active sets the optional parameter "active": Select only active or
49041// only inactive targetable remarketing lists.
49042func (c *TargetableRemarketingListsListCall) Active(active bool) *TargetableRemarketingListsListCall {
49043	c.urlParams_.Set("active", fmt.Sprint(active))
49044	return c
49045}
49046
49047// MaxResults sets the optional parameter "maxResults": Maximum number
49048// of results to return.
49049func (c *TargetableRemarketingListsListCall) MaxResults(maxResults int64) *TargetableRemarketingListsListCall {
49050	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
49051	return c
49052}
49053
49054// Name sets the optional parameter "name": Allows searching for objects
49055// by name or ID. Wildcards (*) are allowed. For example, "remarketing
49056// list*2015" will return objects with names like "remarketing list June
49057// 2015", "remarketing list April 2015", or simply "remarketing list
49058// 2015". Most of the searches also add wildcards implicitly at the
49059// start and the end of the search string. For example, a search string
49060// of "remarketing list" will match objects with name "my remarketing
49061// list", "remarketing list 2015", or simply "remarketing list".
49062func (c *TargetableRemarketingListsListCall) Name(name string) *TargetableRemarketingListsListCall {
49063	c.urlParams_.Set("name", name)
49064	return c
49065}
49066
49067// PageToken sets the optional parameter "pageToken": Value of the
49068// nextPageToken from the previous result page.
49069func (c *TargetableRemarketingListsListCall) PageToken(pageToken string) *TargetableRemarketingListsListCall {
49070	c.urlParams_.Set("pageToken", pageToken)
49071	return c
49072}
49073
49074// SortField sets the optional parameter "sortField": Field by which to
49075// sort the list.
49076//
49077// Possible values:
49078//   "ID" (default)
49079//   "NAME"
49080func (c *TargetableRemarketingListsListCall) SortField(sortField string) *TargetableRemarketingListsListCall {
49081	c.urlParams_.Set("sortField", sortField)
49082	return c
49083}
49084
49085// SortOrder sets the optional parameter "sortOrder": Order of sorted
49086// results.
49087//
49088// Possible values:
49089//   "ASCENDING" (default)
49090//   "DESCENDING"
49091func (c *TargetableRemarketingListsListCall) SortOrder(sortOrder string) *TargetableRemarketingListsListCall {
49092	c.urlParams_.Set("sortOrder", sortOrder)
49093	return c
49094}
49095
49096// Fields allows partial responses to be retrieved. See
49097// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
49098// for more information.
49099func (c *TargetableRemarketingListsListCall) Fields(s ...googleapi.Field) *TargetableRemarketingListsListCall {
49100	c.urlParams_.Set("fields", googleapi.CombineFields(s))
49101	return c
49102}
49103
49104// IfNoneMatch sets the optional parameter which makes the operation
49105// fail if the object's ETag matches the given value. This is useful for
49106// getting updates only after the object has changed since the last
49107// request. Use googleapi.IsNotModified to check whether the response
49108// error from Do is the result of In-None-Match.
49109func (c *TargetableRemarketingListsListCall) IfNoneMatch(entityTag string) *TargetableRemarketingListsListCall {
49110	c.ifNoneMatch_ = entityTag
49111	return c
49112}
49113
49114// Context sets the context to be used in this call's Do method. Any
49115// pending HTTP request will be aborted if the provided context is
49116// canceled.
49117func (c *TargetableRemarketingListsListCall) Context(ctx context.Context) *TargetableRemarketingListsListCall {
49118	c.ctx_ = ctx
49119	return c
49120}
49121
49122// Header returns an http.Header that can be modified by the caller to
49123// add HTTP headers to the request.
49124func (c *TargetableRemarketingListsListCall) Header() http.Header {
49125	if c.header_ == nil {
49126		c.header_ = make(http.Header)
49127	}
49128	return c.header_
49129}
49130
49131func (c *TargetableRemarketingListsListCall) doRequest(alt string) (*http.Response, error) {
49132	reqHeaders := make(http.Header)
49133	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
49134	for k, v := range c.header_ {
49135		reqHeaders[k] = v
49136	}
49137	reqHeaders.Set("User-Agent", c.s.userAgent())
49138	if c.ifNoneMatch_ != "" {
49139		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
49140	}
49141	var body io.Reader = nil
49142	c.urlParams_.Set("alt", alt)
49143	c.urlParams_.Set("prettyPrint", "false")
49144	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/targetableRemarketingLists")
49145	urls += "?" + c.urlParams_.Encode()
49146	req, err := http.NewRequest("GET", urls, body)
49147	if err != nil {
49148		return nil, err
49149	}
49150	req.Header = reqHeaders
49151	googleapi.Expand(req.URL, map[string]string{
49152		"profileId": strconv.FormatInt(c.profileId, 10),
49153	})
49154	return gensupport.SendRequest(c.ctx_, c.s.client, req)
49155}
49156
49157// Do executes the "dfareporting.targetableRemarketingLists.list" call.
49158// Exactly one of *TargetableRemarketingListsListResponse or error will
49159// be non-nil. Any non-2xx status code is an error. Response headers are
49160// in either
49161// *TargetableRemarketingListsListResponse.ServerResponse.Header or (if
49162// a response was returned at all) in error.(*googleapi.Error).Header.
49163// Use googleapi.IsNotModified to check whether the returned error was
49164// because http.StatusNotModified was returned.
49165func (c *TargetableRemarketingListsListCall) Do(opts ...googleapi.CallOption) (*TargetableRemarketingListsListResponse, error) {
49166	gensupport.SetOptions(c.urlParams_, opts...)
49167	res, err := c.doRequest("json")
49168	if res != nil && res.StatusCode == http.StatusNotModified {
49169		if res.Body != nil {
49170			res.Body.Close()
49171		}
49172		return nil, &googleapi.Error{
49173			Code:   res.StatusCode,
49174			Header: res.Header,
49175		}
49176	}
49177	if err != nil {
49178		return nil, err
49179	}
49180	defer googleapi.CloseBody(res)
49181	if err := googleapi.CheckResponse(res); err != nil {
49182		return nil, err
49183	}
49184	ret := &TargetableRemarketingListsListResponse{
49185		ServerResponse: googleapi.ServerResponse{
49186			Header:         res.Header,
49187			HTTPStatusCode: res.StatusCode,
49188		},
49189	}
49190	target := &ret
49191	if err := gensupport.DecodeResponse(target, res); err != nil {
49192		return nil, err
49193	}
49194	return ret, nil
49195	// {
49196	//   "description": "Retrieves a list of targetable remarketing lists, possibly filtered. This method supports paging.",
49197	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/targetableRemarketingLists",
49198	//   "httpMethod": "GET",
49199	//   "id": "dfareporting.targetableRemarketingLists.list",
49200	//   "parameterOrder": [
49201	//     "profileId",
49202	//     "advertiserId"
49203	//   ],
49204	//   "parameters": {
49205	//     "active": {
49206	//       "description": "Select only active or only inactive targetable remarketing lists.",
49207	//       "location": "query",
49208	//       "type": "boolean"
49209	//     },
49210	//     "advertiserId": {
49211	//       "description": "Select only targetable remarketing lists targetable by these advertisers.",
49212	//       "format": "int64",
49213	//       "location": "query",
49214	//       "required": true,
49215	//       "type": "string"
49216	//     },
49217	//     "maxResults": {
49218	//       "default": "1000",
49219	//       "description": "Maximum number of results to return.",
49220	//       "format": "int32",
49221	//       "location": "query",
49222	//       "maximum": "1000",
49223	//       "minimum": "0",
49224	//       "type": "integer"
49225	//     },
49226	//     "name": {
49227	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".",
49228	//       "location": "query",
49229	//       "type": "string"
49230	//     },
49231	//     "pageToken": {
49232	//       "description": "Value of the nextPageToken from the previous result page.",
49233	//       "location": "query",
49234	//       "type": "string"
49235	//     },
49236	//     "profileId": {
49237	//       "description": "User profile ID associated with this request.",
49238	//       "format": "int64",
49239	//       "location": "path",
49240	//       "required": true,
49241	//       "type": "string"
49242	//     },
49243	//     "sortField": {
49244	//       "default": "ID",
49245	//       "description": "Field by which to sort the list.",
49246	//       "enum": [
49247	//         "ID",
49248	//         "NAME"
49249	//       ],
49250	//       "enumDescriptions": [
49251	//         "",
49252	//         ""
49253	//       ],
49254	//       "location": "query",
49255	//       "type": "string"
49256	//     },
49257	//     "sortOrder": {
49258	//       "default": "ASCENDING",
49259	//       "description": "Order of sorted results.",
49260	//       "enum": [
49261	//         "ASCENDING",
49262	//         "DESCENDING"
49263	//       ],
49264	//       "enumDescriptions": [
49265	//         "",
49266	//         ""
49267	//       ],
49268	//       "location": "query",
49269	//       "type": "string"
49270	//     }
49271	//   },
49272	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/targetableRemarketingLists",
49273	//   "response": {
49274	//     "$ref": "TargetableRemarketingListsListResponse"
49275	//   },
49276	//   "scopes": [
49277	//     "https://www.googleapis.com/auth/dfatrafficking"
49278	//   ]
49279	// }
49280
49281}
49282
49283// Pages invokes f for each page of results.
49284// A non-nil error returned from f will halt the iteration.
49285// The provided context supersedes any context provided to the Context method.
49286func (c *TargetableRemarketingListsListCall) Pages(ctx context.Context, f func(*TargetableRemarketingListsListResponse) error) error {
49287	c.ctx_ = ctx
49288	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
49289	for {
49290		x, err := c.Do()
49291		if err != nil {
49292			return err
49293		}
49294		if err := f(x); err != nil {
49295			return err
49296		}
49297		if x.NextPageToken == "" {
49298			return nil
49299		}
49300		c.PageToken(x.NextPageToken)
49301	}
49302}
49303
49304// method id "dfareporting.targetingTemplates.get":
49305
49306type TargetingTemplatesGetCall struct {
49307	s            *Service
49308	profileId    int64
49309	id           int64
49310	urlParams_   gensupport.URLParams
49311	ifNoneMatch_ string
49312	ctx_         context.Context
49313	header_      http.Header
49314}
49315
49316// Get: Gets one targeting template by ID.
49317//
49318// - id: Targeting template ID.
49319// - profileId: User profile ID associated with this request.
49320func (r *TargetingTemplatesService) Get(profileId int64, id int64) *TargetingTemplatesGetCall {
49321	c := &TargetingTemplatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
49322	c.profileId = profileId
49323	c.id = id
49324	return c
49325}
49326
49327// Fields allows partial responses to be retrieved. See
49328// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
49329// for more information.
49330func (c *TargetingTemplatesGetCall) Fields(s ...googleapi.Field) *TargetingTemplatesGetCall {
49331	c.urlParams_.Set("fields", googleapi.CombineFields(s))
49332	return c
49333}
49334
49335// IfNoneMatch sets the optional parameter which makes the operation
49336// fail if the object's ETag matches the given value. This is useful for
49337// getting updates only after the object has changed since the last
49338// request. Use googleapi.IsNotModified to check whether the response
49339// error from Do is the result of In-None-Match.
49340func (c *TargetingTemplatesGetCall) IfNoneMatch(entityTag string) *TargetingTemplatesGetCall {
49341	c.ifNoneMatch_ = entityTag
49342	return c
49343}
49344
49345// Context sets the context to be used in this call's Do method. Any
49346// pending HTTP request will be aborted if the provided context is
49347// canceled.
49348func (c *TargetingTemplatesGetCall) Context(ctx context.Context) *TargetingTemplatesGetCall {
49349	c.ctx_ = ctx
49350	return c
49351}
49352
49353// Header returns an http.Header that can be modified by the caller to
49354// add HTTP headers to the request.
49355func (c *TargetingTemplatesGetCall) Header() http.Header {
49356	if c.header_ == nil {
49357		c.header_ = make(http.Header)
49358	}
49359	return c.header_
49360}
49361
49362func (c *TargetingTemplatesGetCall) doRequest(alt string) (*http.Response, error) {
49363	reqHeaders := make(http.Header)
49364	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
49365	for k, v := range c.header_ {
49366		reqHeaders[k] = v
49367	}
49368	reqHeaders.Set("User-Agent", c.s.userAgent())
49369	if c.ifNoneMatch_ != "" {
49370		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
49371	}
49372	var body io.Reader = nil
49373	c.urlParams_.Set("alt", alt)
49374	c.urlParams_.Set("prettyPrint", "false")
49375	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates/{id}")
49376	urls += "?" + c.urlParams_.Encode()
49377	req, err := http.NewRequest("GET", urls, body)
49378	if err != nil {
49379		return nil, err
49380	}
49381	req.Header = reqHeaders
49382	googleapi.Expand(req.URL, map[string]string{
49383		"profileId": strconv.FormatInt(c.profileId, 10),
49384		"id":        strconv.FormatInt(c.id, 10),
49385	})
49386	return gensupport.SendRequest(c.ctx_, c.s.client, req)
49387}
49388
49389// Do executes the "dfareporting.targetingTemplates.get" call.
49390// Exactly one of *TargetingTemplate or error will be non-nil. Any
49391// non-2xx status code is an error. Response headers are in either
49392// *TargetingTemplate.ServerResponse.Header or (if a response was
49393// returned at all) in error.(*googleapi.Error).Header. Use
49394// googleapi.IsNotModified to check whether the returned error was
49395// because http.StatusNotModified was returned.
49396func (c *TargetingTemplatesGetCall) Do(opts ...googleapi.CallOption) (*TargetingTemplate, error) {
49397	gensupport.SetOptions(c.urlParams_, opts...)
49398	res, err := c.doRequest("json")
49399	if res != nil && res.StatusCode == http.StatusNotModified {
49400		if res.Body != nil {
49401			res.Body.Close()
49402		}
49403		return nil, &googleapi.Error{
49404			Code:   res.StatusCode,
49405			Header: res.Header,
49406		}
49407	}
49408	if err != nil {
49409		return nil, err
49410	}
49411	defer googleapi.CloseBody(res)
49412	if err := googleapi.CheckResponse(res); err != nil {
49413		return nil, err
49414	}
49415	ret := &TargetingTemplate{
49416		ServerResponse: googleapi.ServerResponse{
49417			Header:         res.Header,
49418			HTTPStatusCode: res.StatusCode,
49419		},
49420	}
49421	target := &ret
49422	if err := gensupport.DecodeResponse(target, res); err != nil {
49423		return nil, err
49424	}
49425	return ret, nil
49426	// {
49427	//   "description": "Gets one targeting template by ID.",
49428	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates/{id}",
49429	//   "httpMethod": "GET",
49430	//   "id": "dfareporting.targetingTemplates.get",
49431	//   "parameterOrder": [
49432	//     "profileId",
49433	//     "id"
49434	//   ],
49435	//   "parameters": {
49436	//     "id": {
49437	//       "description": "Targeting template ID.",
49438	//       "format": "int64",
49439	//       "location": "path",
49440	//       "required": true,
49441	//       "type": "string"
49442	//     },
49443	//     "profileId": {
49444	//       "description": "User profile ID associated with this request.",
49445	//       "format": "int64",
49446	//       "location": "path",
49447	//       "required": true,
49448	//       "type": "string"
49449	//     }
49450	//   },
49451	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates/{id}",
49452	//   "response": {
49453	//     "$ref": "TargetingTemplate"
49454	//   },
49455	//   "scopes": [
49456	//     "https://www.googleapis.com/auth/dfatrafficking"
49457	//   ]
49458	// }
49459
49460}
49461
49462// method id "dfareporting.targetingTemplates.insert":
49463
49464type TargetingTemplatesInsertCall struct {
49465	s                 *Service
49466	profileId         int64
49467	targetingtemplate *TargetingTemplate
49468	urlParams_        gensupport.URLParams
49469	ctx_              context.Context
49470	header_           http.Header
49471}
49472
49473// Insert: Inserts a new targeting template.
49474//
49475// - profileId: User profile ID associated with this request.
49476func (r *TargetingTemplatesService) Insert(profileId int64, targetingtemplate *TargetingTemplate) *TargetingTemplatesInsertCall {
49477	c := &TargetingTemplatesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
49478	c.profileId = profileId
49479	c.targetingtemplate = targetingtemplate
49480	return c
49481}
49482
49483// Fields allows partial responses to be retrieved. See
49484// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
49485// for more information.
49486func (c *TargetingTemplatesInsertCall) Fields(s ...googleapi.Field) *TargetingTemplatesInsertCall {
49487	c.urlParams_.Set("fields", googleapi.CombineFields(s))
49488	return c
49489}
49490
49491// Context sets the context to be used in this call's Do method. Any
49492// pending HTTP request will be aborted if the provided context is
49493// canceled.
49494func (c *TargetingTemplatesInsertCall) Context(ctx context.Context) *TargetingTemplatesInsertCall {
49495	c.ctx_ = ctx
49496	return c
49497}
49498
49499// Header returns an http.Header that can be modified by the caller to
49500// add HTTP headers to the request.
49501func (c *TargetingTemplatesInsertCall) Header() http.Header {
49502	if c.header_ == nil {
49503		c.header_ = make(http.Header)
49504	}
49505	return c.header_
49506}
49507
49508func (c *TargetingTemplatesInsertCall) doRequest(alt string) (*http.Response, error) {
49509	reqHeaders := make(http.Header)
49510	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
49511	for k, v := range c.header_ {
49512		reqHeaders[k] = v
49513	}
49514	reqHeaders.Set("User-Agent", c.s.userAgent())
49515	var body io.Reader = nil
49516	body, err := googleapi.WithoutDataWrapper.JSONReader(c.targetingtemplate)
49517	if err != nil {
49518		return nil, err
49519	}
49520	reqHeaders.Set("Content-Type", "application/json")
49521	c.urlParams_.Set("alt", alt)
49522	c.urlParams_.Set("prettyPrint", "false")
49523	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates")
49524	urls += "?" + c.urlParams_.Encode()
49525	req, err := http.NewRequest("POST", urls, body)
49526	if err != nil {
49527		return nil, err
49528	}
49529	req.Header = reqHeaders
49530	googleapi.Expand(req.URL, map[string]string{
49531		"profileId": strconv.FormatInt(c.profileId, 10),
49532	})
49533	return gensupport.SendRequest(c.ctx_, c.s.client, req)
49534}
49535
49536// Do executes the "dfareporting.targetingTemplates.insert" call.
49537// Exactly one of *TargetingTemplate or error will be non-nil. Any
49538// non-2xx status code is an error. Response headers are in either
49539// *TargetingTemplate.ServerResponse.Header or (if a response was
49540// returned at all) in error.(*googleapi.Error).Header. Use
49541// googleapi.IsNotModified to check whether the returned error was
49542// because http.StatusNotModified was returned.
49543func (c *TargetingTemplatesInsertCall) Do(opts ...googleapi.CallOption) (*TargetingTemplate, error) {
49544	gensupport.SetOptions(c.urlParams_, opts...)
49545	res, err := c.doRequest("json")
49546	if res != nil && res.StatusCode == http.StatusNotModified {
49547		if res.Body != nil {
49548			res.Body.Close()
49549		}
49550		return nil, &googleapi.Error{
49551			Code:   res.StatusCode,
49552			Header: res.Header,
49553		}
49554	}
49555	if err != nil {
49556		return nil, err
49557	}
49558	defer googleapi.CloseBody(res)
49559	if err := googleapi.CheckResponse(res); err != nil {
49560		return nil, err
49561	}
49562	ret := &TargetingTemplate{
49563		ServerResponse: googleapi.ServerResponse{
49564			Header:         res.Header,
49565			HTTPStatusCode: res.StatusCode,
49566		},
49567	}
49568	target := &ret
49569	if err := gensupport.DecodeResponse(target, res); err != nil {
49570		return nil, err
49571	}
49572	return ret, nil
49573	// {
49574	//   "description": "Inserts a new targeting template.",
49575	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates",
49576	//   "httpMethod": "POST",
49577	//   "id": "dfareporting.targetingTemplates.insert",
49578	//   "parameterOrder": [
49579	//     "profileId"
49580	//   ],
49581	//   "parameters": {
49582	//     "profileId": {
49583	//       "description": "User profile ID associated with this request.",
49584	//       "format": "int64",
49585	//       "location": "path",
49586	//       "required": true,
49587	//       "type": "string"
49588	//     }
49589	//   },
49590	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates",
49591	//   "request": {
49592	//     "$ref": "TargetingTemplate"
49593	//   },
49594	//   "response": {
49595	//     "$ref": "TargetingTemplate"
49596	//   },
49597	//   "scopes": [
49598	//     "https://www.googleapis.com/auth/dfatrafficking"
49599	//   ]
49600	// }
49601
49602}
49603
49604// method id "dfareporting.targetingTemplates.list":
49605
49606type TargetingTemplatesListCall struct {
49607	s            *Service
49608	profileId    int64
49609	urlParams_   gensupport.URLParams
49610	ifNoneMatch_ string
49611	ctx_         context.Context
49612	header_      http.Header
49613}
49614
49615// List: Retrieves a list of targeting templates, optionally filtered.
49616// This method supports paging.
49617//
49618// - profileId: User profile ID associated with this request.
49619func (r *TargetingTemplatesService) List(profileId int64) *TargetingTemplatesListCall {
49620	c := &TargetingTemplatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
49621	c.profileId = profileId
49622	return c
49623}
49624
49625// AdvertiserId sets the optional parameter "advertiserId": Select only
49626// targeting templates with this advertiser ID.
49627func (c *TargetingTemplatesListCall) AdvertiserId(advertiserId int64) *TargetingTemplatesListCall {
49628	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
49629	return c
49630}
49631
49632// Ids sets the optional parameter "ids": Select only targeting
49633// templates with these IDs.
49634func (c *TargetingTemplatesListCall) Ids(ids ...int64) *TargetingTemplatesListCall {
49635	var ids_ []string
49636	for _, v := range ids {
49637		ids_ = append(ids_, fmt.Sprint(v))
49638	}
49639	c.urlParams_.SetMulti("ids", ids_)
49640	return c
49641}
49642
49643// MaxResults sets the optional parameter "maxResults": Maximum number
49644// of results to return.
49645func (c *TargetingTemplatesListCall) MaxResults(maxResults int64) *TargetingTemplatesListCall {
49646	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
49647	return c
49648}
49649
49650// PageToken sets the optional parameter "pageToken": Value of the
49651// nextPageToken from the previous result page.
49652func (c *TargetingTemplatesListCall) PageToken(pageToken string) *TargetingTemplatesListCall {
49653	c.urlParams_.Set("pageToken", pageToken)
49654	return c
49655}
49656
49657// SearchString sets the optional parameter "searchString": Allows
49658// searching for objects by name or ID. Wildcards (*) are allowed. For
49659// example, "template*2015" will return objects with names like
49660// "template June 2015", "template April 2015", or simply "template
49661// 2015". Most of the searches also add wildcards implicitly at the
49662// start and the end of the search string. For example, a search string
49663// of "template" will match objects with name "my template", "template
49664// 2015", or simply "template".
49665func (c *TargetingTemplatesListCall) SearchString(searchString string) *TargetingTemplatesListCall {
49666	c.urlParams_.Set("searchString", searchString)
49667	return c
49668}
49669
49670// SortField sets the optional parameter "sortField": Field by which to
49671// sort the list.
49672//
49673// Possible values:
49674//   "ID" (default)
49675//   "NAME"
49676func (c *TargetingTemplatesListCall) SortField(sortField string) *TargetingTemplatesListCall {
49677	c.urlParams_.Set("sortField", sortField)
49678	return c
49679}
49680
49681// SortOrder sets the optional parameter "sortOrder": Order of sorted
49682// results.
49683//
49684// Possible values:
49685//   "ASCENDING" (default)
49686//   "DESCENDING"
49687func (c *TargetingTemplatesListCall) SortOrder(sortOrder string) *TargetingTemplatesListCall {
49688	c.urlParams_.Set("sortOrder", sortOrder)
49689	return c
49690}
49691
49692// Fields allows partial responses to be retrieved. See
49693// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
49694// for more information.
49695func (c *TargetingTemplatesListCall) Fields(s ...googleapi.Field) *TargetingTemplatesListCall {
49696	c.urlParams_.Set("fields", googleapi.CombineFields(s))
49697	return c
49698}
49699
49700// IfNoneMatch sets the optional parameter which makes the operation
49701// fail if the object's ETag matches the given value. This is useful for
49702// getting updates only after the object has changed since the last
49703// request. Use googleapi.IsNotModified to check whether the response
49704// error from Do is the result of In-None-Match.
49705func (c *TargetingTemplatesListCall) IfNoneMatch(entityTag string) *TargetingTemplatesListCall {
49706	c.ifNoneMatch_ = entityTag
49707	return c
49708}
49709
49710// Context sets the context to be used in this call's Do method. Any
49711// pending HTTP request will be aborted if the provided context is
49712// canceled.
49713func (c *TargetingTemplatesListCall) Context(ctx context.Context) *TargetingTemplatesListCall {
49714	c.ctx_ = ctx
49715	return c
49716}
49717
49718// Header returns an http.Header that can be modified by the caller to
49719// add HTTP headers to the request.
49720func (c *TargetingTemplatesListCall) Header() http.Header {
49721	if c.header_ == nil {
49722		c.header_ = make(http.Header)
49723	}
49724	return c.header_
49725}
49726
49727func (c *TargetingTemplatesListCall) doRequest(alt string) (*http.Response, error) {
49728	reqHeaders := make(http.Header)
49729	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
49730	for k, v := range c.header_ {
49731		reqHeaders[k] = v
49732	}
49733	reqHeaders.Set("User-Agent", c.s.userAgent())
49734	if c.ifNoneMatch_ != "" {
49735		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
49736	}
49737	var body io.Reader = nil
49738	c.urlParams_.Set("alt", alt)
49739	c.urlParams_.Set("prettyPrint", "false")
49740	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates")
49741	urls += "?" + c.urlParams_.Encode()
49742	req, err := http.NewRequest("GET", urls, body)
49743	if err != nil {
49744		return nil, err
49745	}
49746	req.Header = reqHeaders
49747	googleapi.Expand(req.URL, map[string]string{
49748		"profileId": strconv.FormatInt(c.profileId, 10),
49749	})
49750	return gensupport.SendRequest(c.ctx_, c.s.client, req)
49751}
49752
49753// Do executes the "dfareporting.targetingTemplates.list" call.
49754// Exactly one of *TargetingTemplatesListResponse or error will be
49755// non-nil. Any non-2xx status code is an error. Response headers are in
49756// either *TargetingTemplatesListResponse.ServerResponse.Header or (if a
49757// response was returned at all) in error.(*googleapi.Error).Header. Use
49758// googleapi.IsNotModified to check whether the returned error was
49759// because http.StatusNotModified was returned.
49760func (c *TargetingTemplatesListCall) Do(opts ...googleapi.CallOption) (*TargetingTemplatesListResponse, error) {
49761	gensupport.SetOptions(c.urlParams_, opts...)
49762	res, err := c.doRequest("json")
49763	if res != nil && res.StatusCode == http.StatusNotModified {
49764		if res.Body != nil {
49765			res.Body.Close()
49766		}
49767		return nil, &googleapi.Error{
49768			Code:   res.StatusCode,
49769			Header: res.Header,
49770		}
49771	}
49772	if err != nil {
49773		return nil, err
49774	}
49775	defer googleapi.CloseBody(res)
49776	if err := googleapi.CheckResponse(res); err != nil {
49777		return nil, err
49778	}
49779	ret := &TargetingTemplatesListResponse{
49780		ServerResponse: googleapi.ServerResponse{
49781			Header:         res.Header,
49782			HTTPStatusCode: res.StatusCode,
49783		},
49784	}
49785	target := &ret
49786	if err := gensupport.DecodeResponse(target, res); err != nil {
49787		return nil, err
49788	}
49789	return ret, nil
49790	// {
49791	//   "description": "Retrieves a list of targeting templates, optionally filtered. This method supports paging.",
49792	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates",
49793	//   "httpMethod": "GET",
49794	//   "id": "dfareporting.targetingTemplates.list",
49795	//   "parameterOrder": [
49796	//     "profileId"
49797	//   ],
49798	//   "parameters": {
49799	//     "advertiserId": {
49800	//       "description": "Select only targeting templates with this advertiser ID.",
49801	//       "format": "int64",
49802	//       "location": "query",
49803	//       "type": "string"
49804	//     },
49805	//     "ids": {
49806	//       "description": "Select only targeting templates with these IDs.",
49807	//       "format": "int64",
49808	//       "location": "query",
49809	//       "repeated": true,
49810	//       "type": "string"
49811	//     },
49812	//     "maxResults": {
49813	//       "default": "1000",
49814	//       "description": "Maximum number of results to return.",
49815	//       "format": "int32",
49816	//       "location": "query",
49817	//       "maximum": "1000",
49818	//       "minimum": "0",
49819	//       "type": "integer"
49820	//     },
49821	//     "pageToken": {
49822	//       "description": "Value of the nextPageToken from the previous result page.",
49823	//       "location": "query",
49824	//       "type": "string"
49825	//     },
49826	//     "profileId": {
49827	//       "description": "User profile ID associated with this request.",
49828	//       "format": "int64",
49829	//       "location": "path",
49830	//       "required": true,
49831	//       "type": "string"
49832	//     },
49833	//     "searchString": {
49834	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"template*2015\" will return objects with names like \"template June 2015\", \"template April 2015\", or simply \"template 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"template\" will match objects with name \"my template\", \"template 2015\", or simply \"template\".",
49835	//       "location": "query",
49836	//       "type": "string"
49837	//     },
49838	//     "sortField": {
49839	//       "default": "ID",
49840	//       "description": "Field by which to sort the list.",
49841	//       "enum": [
49842	//         "ID",
49843	//         "NAME"
49844	//       ],
49845	//       "enumDescriptions": [
49846	//         "",
49847	//         ""
49848	//       ],
49849	//       "location": "query",
49850	//       "type": "string"
49851	//     },
49852	//     "sortOrder": {
49853	//       "default": "ASCENDING",
49854	//       "description": "Order of sorted results.",
49855	//       "enum": [
49856	//         "ASCENDING",
49857	//         "DESCENDING"
49858	//       ],
49859	//       "enumDescriptions": [
49860	//         "",
49861	//         ""
49862	//       ],
49863	//       "location": "query",
49864	//       "type": "string"
49865	//     }
49866	//   },
49867	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates",
49868	//   "response": {
49869	//     "$ref": "TargetingTemplatesListResponse"
49870	//   },
49871	//   "scopes": [
49872	//     "https://www.googleapis.com/auth/dfatrafficking"
49873	//   ]
49874	// }
49875
49876}
49877
49878// Pages invokes f for each page of results.
49879// A non-nil error returned from f will halt the iteration.
49880// The provided context supersedes any context provided to the Context method.
49881func (c *TargetingTemplatesListCall) Pages(ctx context.Context, f func(*TargetingTemplatesListResponse) error) error {
49882	c.ctx_ = ctx
49883	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
49884	for {
49885		x, err := c.Do()
49886		if err != nil {
49887			return err
49888		}
49889		if err := f(x); err != nil {
49890			return err
49891		}
49892		if x.NextPageToken == "" {
49893			return nil
49894		}
49895		c.PageToken(x.NextPageToken)
49896	}
49897}
49898
49899// method id "dfareporting.targetingTemplates.patch":
49900
49901type TargetingTemplatesPatchCall struct {
49902	s                 *Service
49903	profileId         int64
49904	targetingtemplate *TargetingTemplate
49905	urlParams_        gensupport.URLParams
49906	ctx_              context.Context
49907	header_           http.Header
49908}
49909
49910// Patch: Updates an existing targeting template. This method supports
49911// patch semantics.
49912//
49913// - id: TargetingTemplate ID.
49914// - profileId: User profile ID associated with this request.
49915func (r *TargetingTemplatesService) Patch(profileId int64, id int64, targetingtemplate *TargetingTemplate) *TargetingTemplatesPatchCall {
49916	c := &TargetingTemplatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
49917	c.profileId = profileId
49918	c.urlParams_.Set("id", fmt.Sprint(id))
49919	c.targetingtemplate = targetingtemplate
49920	return c
49921}
49922
49923// Fields allows partial responses to be retrieved. See
49924// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
49925// for more information.
49926func (c *TargetingTemplatesPatchCall) Fields(s ...googleapi.Field) *TargetingTemplatesPatchCall {
49927	c.urlParams_.Set("fields", googleapi.CombineFields(s))
49928	return c
49929}
49930
49931// Context sets the context to be used in this call's Do method. Any
49932// pending HTTP request will be aborted if the provided context is
49933// canceled.
49934func (c *TargetingTemplatesPatchCall) Context(ctx context.Context) *TargetingTemplatesPatchCall {
49935	c.ctx_ = ctx
49936	return c
49937}
49938
49939// Header returns an http.Header that can be modified by the caller to
49940// add HTTP headers to the request.
49941func (c *TargetingTemplatesPatchCall) Header() http.Header {
49942	if c.header_ == nil {
49943		c.header_ = make(http.Header)
49944	}
49945	return c.header_
49946}
49947
49948func (c *TargetingTemplatesPatchCall) doRequest(alt string) (*http.Response, error) {
49949	reqHeaders := make(http.Header)
49950	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
49951	for k, v := range c.header_ {
49952		reqHeaders[k] = v
49953	}
49954	reqHeaders.Set("User-Agent", c.s.userAgent())
49955	var body io.Reader = nil
49956	body, err := googleapi.WithoutDataWrapper.JSONReader(c.targetingtemplate)
49957	if err != nil {
49958		return nil, err
49959	}
49960	reqHeaders.Set("Content-Type", "application/json")
49961	c.urlParams_.Set("alt", alt)
49962	c.urlParams_.Set("prettyPrint", "false")
49963	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates")
49964	urls += "?" + c.urlParams_.Encode()
49965	req, err := http.NewRequest("PATCH", urls, body)
49966	if err != nil {
49967		return nil, err
49968	}
49969	req.Header = reqHeaders
49970	googleapi.Expand(req.URL, map[string]string{
49971		"profileId": strconv.FormatInt(c.profileId, 10),
49972	})
49973	return gensupport.SendRequest(c.ctx_, c.s.client, req)
49974}
49975
49976// Do executes the "dfareporting.targetingTemplates.patch" call.
49977// Exactly one of *TargetingTemplate or error will be non-nil. Any
49978// non-2xx status code is an error. Response headers are in either
49979// *TargetingTemplate.ServerResponse.Header or (if a response was
49980// returned at all) in error.(*googleapi.Error).Header. Use
49981// googleapi.IsNotModified to check whether the returned error was
49982// because http.StatusNotModified was returned.
49983func (c *TargetingTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*TargetingTemplate, error) {
49984	gensupport.SetOptions(c.urlParams_, opts...)
49985	res, err := c.doRequest("json")
49986	if res != nil && res.StatusCode == http.StatusNotModified {
49987		if res.Body != nil {
49988			res.Body.Close()
49989		}
49990		return nil, &googleapi.Error{
49991			Code:   res.StatusCode,
49992			Header: res.Header,
49993		}
49994	}
49995	if err != nil {
49996		return nil, err
49997	}
49998	defer googleapi.CloseBody(res)
49999	if err := googleapi.CheckResponse(res); err != nil {
50000		return nil, err
50001	}
50002	ret := &TargetingTemplate{
50003		ServerResponse: googleapi.ServerResponse{
50004			Header:         res.Header,
50005			HTTPStatusCode: res.StatusCode,
50006		},
50007	}
50008	target := &ret
50009	if err := gensupport.DecodeResponse(target, res); err != nil {
50010		return nil, err
50011	}
50012	return ret, nil
50013	// {
50014	//   "description": "Updates an existing targeting template. This method supports patch semantics.",
50015	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates",
50016	//   "httpMethod": "PATCH",
50017	//   "id": "dfareporting.targetingTemplates.patch",
50018	//   "parameterOrder": [
50019	//     "profileId",
50020	//     "id"
50021	//   ],
50022	//   "parameters": {
50023	//     "id": {
50024	//       "description": "TargetingTemplate ID.",
50025	//       "format": "int64",
50026	//       "location": "query",
50027	//       "required": true,
50028	//       "type": "string"
50029	//     },
50030	//     "profileId": {
50031	//       "description": "User profile ID associated with this request.",
50032	//       "format": "int64",
50033	//       "location": "path",
50034	//       "required": true,
50035	//       "type": "string"
50036	//     }
50037	//   },
50038	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates",
50039	//   "request": {
50040	//     "$ref": "TargetingTemplate"
50041	//   },
50042	//   "response": {
50043	//     "$ref": "TargetingTemplate"
50044	//   },
50045	//   "scopes": [
50046	//     "https://www.googleapis.com/auth/dfatrafficking"
50047	//   ]
50048	// }
50049
50050}
50051
50052// method id "dfareporting.targetingTemplates.update":
50053
50054type TargetingTemplatesUpdateCall struct {
50055	s                 *Service
50056	profileId         int64
50057	targetingtemplate *TargetingTemplate
50058	urlParams_        gensupport.URLParams
50059	ctx_              context.Context
50060	header_           http.Header
50061}
50062
50063// Update: Updates an existing targeting template.
50064//
50065// - profileId: User profile ID associated with this request.
50066func (r *TargetingTemplatesService) Update(profileId int64, targetingtemplate *TargetingTemplate) *TargetingTemplatesUpdateCall {
50067	c := &TargetingTemplatesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
50068	c.profileId = profileId
50069	c.targetingtemplate = targetingtemplate
50070	return c
50071}
50072
50073// Fields allows partial responses to be retrieved. See
50074// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
50075// for more information.
50076func (c *TargetingTemplatesUpdateCall) Fields(s ...googleapi.Field) *TargetingTemplatesUpdateCall {
50077	c.urlParams_.Set("fields", googleapi.CombineFields(s))
50078	return c
50079}
50080
50081// Context sets the context to be used in this call's Do method. Any
50082// pending HTTP request will be aborted if the provided context is
50083// canceled.
50084func (c *TargetingTemplatesUpdateCall) Context(ctx context.Context) *TargetingTemplatesUpdateCall {
50085	c.ctx_ = ctx
50086	return c
50087}
50088
50089// Header returns an http.Header that can be modified by the caller to
50090// add HTTP headers to the request.
50091func (c *TargetingTemplatesUpdateCall) Header() http.Header {
50092	if c.header_ == nil {
50093		c.header_ = make(http.Header)
50094	}
50095	return c.header_
50096}
50097
50098func (c *TargetingTemplatesUpdateCall) doRequest(alt string) (*http.Response, error) {
50099	reqHeaders := make(http.Header)
50100	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
50101	for k, v := range c.header_ {
50102		reqHeaders[k] = v
50103	}
50104	reqHeaders.Set("User-Agent", c.s.userAgent())
50105	var body io.Reader = nil
50106	body, err := googleapi.WithoutDataWrapper.JSONReader(c.targetingtemplate)
50107	if err != nil {
50108		return nil, err
50109	}
50110	reqHeaders.Set("Content-Type", "application/json")
50111	c.urlParams_.Set("alt", alt)
50112	c.urlParams_.Set("prettyPrint", "false")
50113	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates")
50114	urls += "?" + c.urlParams_.Encode()
50115	req, err := http.NewRequest("PUT", urls, body)
50116	if err != nil {
50117		return nil, err
50118	}
50119	req.Header = reqHeaders
50120	googleapi.Expand(req.URL, map[string]string{
50121		"profileId": strconv.FormatInt(c.profileId, 10),
50122	})
50123	return gensupport.SendRequest(c.ctx_, c.s.client, req)
50124}
50125
50126// Do executes the "dfareporting.targetingTemplates.update" call.
50127// Exactly one of *TargetingTemplate or error will be non-nil. Any
50128// non-2xx status code is an error. Response headers are in either
50129// *TargetingTemplate.ServerResponse.Header or (if a response was
50130// returned at all) in error.(*googleapi.Error).Header. Use
50131// googleapi.IsNotModified to check whether the returned error was
50132// because http.StatusNotModified was returned.
50133func (c *TargetingTemplatesUpdateCall) Do(opts ...googleapi.CallOption) (*TargetingTemplate, error) {
50134	gensupport.SetOptions(c.urlParams_, opts...)
50135	res, err := c.doRequest("json")
50136	if res != nil && res.StatusCode == http.StatusNotModified {
50137		if res.Body != nil {
50138			res.Body.Close()
50139		}
50140		return nil, &googleapi.Error{
50141			Code:   res.StatusCode,
50142			Header: res.Header,
50143		}
50144	}
50145	if err != nil {
50146		return nil, err
50147	}
50148	defer googleapi.CloseBody(res)
50149	if err := googleapi.CheckResponse(res); err != nil {
50150		return nil, err
50151	}
50152	ret := &TargetingTemplate{
50153		ServerResponse: googleapi.ServerResponse{
50154			Header:         res.Header,
50155			HTTPStatusCode: res.StatusCode,
50156		},
50157	}
50158	target := &ret
50159	if err := gensupport.DecodeResponse(target, res); err != nil {
50160		return nil, err
50161	}
50162	return ret, nil
50163	// {
50164	//   "description": "Updates an existing targeting template.",
50165	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates",
50166	//   "httpMethod": "PUT",
50167	//   "id": "dfareporting.targetingTemplates.update",
50168	//   "parameterOrder": [
50169	//     "profileId"
50170	//   ],
50171	//   "parameters": {
50172	//     "profileId": {
50173	//       "description": "User profile ID associated with this request.",
50174	//       "format": "int64",
50175	//       "location": "path",
50176	//       "required": true,
50177	//       "type": "string"
50178	//     }
50179	//   },
50180	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/targetingTemplates",
50181	//   "request": {
50182	//     "$ref": "TargetingTemplate"
50183	//   },
50184	//   "response": {
50185	//     "$ref": "TargetingTemplate"
50186	//   },
50187	//   "scopes": [
50188	//     "https://www.googleapis.com/auth/dfatrafficking"
50189	//   ]
50190	// }
50191
50192}
50193
50194// method id "dfareporting.userProfiles.get":
50195
50196type UserProfilesGetCall struct {
50197	s            *Service
50198	profileId    int64
50199	urlParams_   gensupport.URLParams
50200	ifNoneMatch_ string
50201	ctx_         context.Context
50202	header_      http.Header
50203}
50204
50205// Get: Gets one user profile by ID.
50206//
50207// - profileId: The user profile ID.
50208func (r *UserProfilesService) Get(profileId int64) *UserProfilesGetCall {
50209	c := &UserProfilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
50210	c.profileId = profileId
50211	return c
50212}
50213
50214// Fields allows partial responses to be retrieved. See
50215// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
50216// for more information.
50217func (c *UserProfilesGetCall) Fields(s ...googleapi.Field) *UserProfilesGetCall {
50218	c.urlParams_.Set("fields", googleapi.CombineFields(s))
50219	return c
50220}
50221
50222// IfNoneMatch sets the optional parameter which makes the operation
50223// fail if the object's ETag matches the given value. This is useful for
50224// getting updates only after the object has changed since the last
50225// request. Use googleapi.IsNotModified to check whether the response
50226// error from Do is the result of In-None-Match.
50227func (c *UserProfilesGetCall) IfNoneMatch(entityTag string) *UserProfilesGetCall {
50228	c.ifNoneMatch_ = entityTag
50229	return c
50230}
50231
50232// Context sets the context to be used in this call's Do method. Any
50233// pending HTTP request will be aborted if the provided context is
50234// canceled.
50235func (c *UserProfilesGetCall) Context(ctx context.Context) *UserProfilesGetCall {
50236	c.ctx_ = ctx
50237	return c
50238}
50239
50240// Header returns an http.Header that can be modified by the caller to
50241// add HTTP headers to the request.
50242func (c *UserProfilesGetCall) Header() http.Header {
50243	if c.header_ == nil {
50244		c.header_ = make(http.Header)
50245	}
50246	return c.header_
50247}
50248
50249func (c *UserProfilesGetCall) doRequest(alt string) (*http.Response, error) {
50250	reqHeaders := make(http.Header)
50251	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
50252	for k, v := range c.header_ {
50253		reqHeaders[k] = v
50254	}
50255	reqHeaders.Set("User-Agent", c.s.userAgent())
50256	if c.ifNoneMatch_ != "" {
50257		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
50258	}
50259	var body io.Reader = nil
50260	c.urlParams_.Set("alt", alt)
50261	c.urlParams_.Set("prettyPrint", "false")
50262	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}")
50263	urls += "?" + c.urlParams_.Encode()
50264	req, err := http.NewRequest("GET", urls, body)
50265	if err != nil {
50266		return nil, err
50267	}
50268	req.Header = reqHeaders
50269	googleapi.Expand(req.URL, map[string]string{
50270		"profileId": strconv.FormatInt(c.profileId, 10),
50271	})
50272	return gensupport.SendRequest(c.ctx_, c.s.client, req)
50273}
50274
50275// Do executes the "dfareporting.userProfiles.get" call.
50276// Exactly one of *UserProfile or error will be non-nil. Any non-2xx
50277// status code is an error. Response headers are in either
50278// *UserProfile.ServerResponse.Header or (if a response was returned at
50279// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
50280// to check whether the returned error was because
50281// http.StatusNotModified was returned.
50282func (c *UserProfilesGetCall) Do(opts ...googleapi.CallOption) (*UserProfile, error) {
50283	gensupport.SetOptions(c.urlParams_, opts...)
50284	res, err := c.doRequest("json")
50285	if res != nil && res.StatusCode == http.StatusNotModified {
50286		if res.Body != nil {
50287			res.Body.Close()
50288		}
50289		return nil, &googleapi.Error{
50290			Code:   res.StatusCode,
50291			Header: res.Header,
50292		}
50293	}
50294	if err != nil {
50295		return nil, err
50296	}
50297	defer googleapi.CloseBody(res)
50298	if err := googleapi.CheckResponse(res); err != nil {
50299		return nil, err
50300	}
50301	ret := &UserProfile{
50302		ServerResponse: googleapi.ServerResponse{
50303			Header:         res.Header,
50304			HTTPStatusCode: res.StatusCode,
50305		},
50306	}
50307	target := &ret
50308	if err := gensupport.DecodeResponse(target, res); err != nil {
50309		return nil, err
50310	}
50311	return ret, nil
50312	// {
50313	//   "description": "Gets one user profile by ID.",
50314	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}",
50315	//   "httpMethod": "GET",
50316	//   "id": "dfareporting.userProfiles.get",
50317	//   "parameterOrder": [
50318	//     "profileId"
50319	//   ],
50320	//   "parameters": {
50321	//     "profileId": {
50322	//       "description": "The user profile ID.",
50323	//       "format": "int64",
50324	//       "location": "path",
50325	//       "required": true,
50326	//       "type": "string"
50327	//     }
50328	//   },
50329	//   "path": "dfareporting/v3.5/userprofiles/{profileId}",
50330	//   "response": {
50331	//     "$ref": "UserProfile"
50332	//   },
50333	//   "scopes": [
50334	//     "https://www.googleapis.com/auth/ddmconversions",
50335	//     "https://www.googleapis.com/auth/dfareporting",
50336	//     "https://www.googleapis.com/auth/dfatrafficking"
50337	//   ]
50338	// }
50339
50340}
50341
50342// method id "dfareporting.userProfiles.list":
50343
50344type UserProfilesListCall struct {
50345	s            *Service
50346	urlParams_   gensupport.URLParams
50347	ifNoneMatch_ string
50348	ctx_         context.Context
50349	header_      http.Header
50350}
50351
50352// List: Retrieves list of user profiles for a user.
50353func (r *UserProfilesService) List() *UserProfilesListCall {
50354	c := &UserProfilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
50355	return c
50356}
50357
50358// Fields allows partial responses to be retrieved. See
50359// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
50360// for more information.
50361func (c *UserProfilesListCall) Fields(s ...googleapi.Field) *UserProfilesListCall {
50362	c.urlParams_.Set("fields", googleapi.CombineFields(s))
50363	return c
50364}
50365
50366// IfNoneMatch sets the optional parameter which makes the operation
50367// fail if the object's ETag matches the given value. This is useful for
50368// getting updates only after the object has changed since the last
50369// request. Use googleapi.IsNotModified to check whether the response
50370// error from Do is the result of In-None-Match.
50371func (c *UserProfilesListCall) IfNoneMatch(entityTag string) *UserProfilesListCall {
50372	c.ifNoneMatch_ = entityTag
50373	return c
50374}
50375
50376// Context sets the context to be used in this call's Do method. Any
50377// pending HTTP request will be aborted if the provided context is
50378// canceled.
50379func (c *UserProfilesListCall) Context(ctx context.Context) *UserProfilesListCall {
50380	c.ctx_ = ctx
50381	return c
50382}
50383
50384// Header returns an http.Header that can be modified by the caller to
50385// add HTTP headers to the request.
50386func (c *UserProfilesListCall) Header() http.Header {
50387	if c.header_ == nil {
50388		c.header_ = make(http.Header)
50389	}
50390	return c.header_
50391}
50392
50393func (c *UserProfilesListCall) doRequest(alt string) (*http.Response, error) {
50394	reqHeaders := make(http.Header)
50395	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
50396	for k, v := range c.header_ {
50397		reqHeaders[k] = v
50398	}
50399	reqHeaders.Set("User-Agent", c.s.userAgent())
50400	if c.ifNoneMatch_ != "" {
50401		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
50402	}
50403	var body io.Reader = nil
50404	c.urlParams_.Set("alt", alt)
50405	c.urlParams_.Set("prettyPrint", "false")
50406	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles")
50407	urls += "?" + c.urlParams_.Encode()
50408	req, err := http.NewRequest("GET", urls, body)
50409	if err != nil {
50410		return nil, err
50411	}
50412	req.Header = reqHeaders
50413	return gensupport.SendRequest(c.ctx_, c.s.client, req)
50414}
50415
50416// Do executes the "dfareporting.userProfiles.list" call.
50417// Exactly one of *UserProfileList or error will be non-nil. Any non-2xx
50418// status code is an error. Response headers are in either
50419// *UserProfileList.ServerResponse.Header or (if a response was returned
50420// at all) in error.(*googleapi.Error).Header. Use
50421// googleapi.IsNotModified to check whether the returned error was
50422// because http.StatusNotModified was returned.
50423func (c *UserProfilesListCall) Do(opts ...googleapi.CallOption) (*UserProfileList, error) {
50424	gensupport.SetOptions(c.urlParams_, opts...)
50425	res, err := c.doRequest("json")
50426	if res != nil && res.StatusCode == http.StatusNotModified {
50427		if res.Body != nil {
50428			res.Body.Close()
50429		}
50430		return nil, &googleapi.Error{
50431			Code:   res.StatusCode,
50432			Header: res.Header,
50433		}
50434	}
50435	if err != nil {
50436		return nil, err
50437	}
50438	defer googleapi.CloseBody(res)
50439	if err := googleapi.CheckResponse(res); err != nil {
50440		return nil, err
50441	}
50442	ret := &UserProfileList{
50443		ServerResponse: googleapi.ServerResponse{
50444			Header:         res.Header,
50445			HTTPStatusCode: res.StatusCode,
50446		},
50447	}
50448	target := &ret
50449	if err := gensupport.DecodeResponse(target, res); err != nil {
50450		return nil, err
50451	}
50452	return ret, nil
50453	// {
50454	//   "description": "Retrieves list of user profiles for a user.",
50455	//   "flatPath": "dfareporting/v3.5/userprofiles",
50456	//   "httpMethod": "GET",
50457	//   "id": "dfareporting.userProfiles.list",
50458	//   "parameterOrder": [],
50459	//   "parameters": {},
50460	//   "path": "dfareporting/v3.5/userprofiles",
50461	//   "response": {
50462	//     "$ref": "UserProfileList"
50463	//   },
50464	//   "scopes": [
50465	//     "https://www.googleapis.com/auth/ddmconversions",
50466	//     "https://www.googleapis.com/auth/dfareporting",
50467	//     "https://www.googleapis.com/auth/dfatrafficking"
50468	//   ]
50469	// }
50470
50471}
50472
50473// method id "dfareporting.userRolePermissionGroups.get":
50474
50475type UserRolePermissionGroupsGetCall struct {
50476	s            *Service
50477	profileId    int64
50478	id           int64
50479	urlParams_   gensupport.URLParams
50480	ifNoneMatch_ string
50481	ctx_         context.Context
50482	header_      http.Header
50483}
50484
50485// Get: Gets one user role permission group by ID.
50486//
50487// - id: User role permission group ID.
50488// - profileId: User profile ID associated with this request.
50489func (r *UserRolePermissionGroupsService) Get(profileId int64, id int64) *UserRolePermissionGroupsGetCall {
50490	c := &UserRolePermissionGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
50491	c.profileId = profileId
50492	c.id = id
50493	return c
50494}
50495
50496// Fields allows partial responses to be retrieved. See
50497// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
50498// for more information.
50499func (c *UserRolePermissionGroupsGetCall) Fields(s ...googleapi.Field) *UserRolePermissionGroupsGetCall {
50500	c.urlParams_.Set("fields", googleapi.CombineFields(s))
50501	return c
50502}
50503
50504// IfNoneMatch sets the optional parameter which makes the operation
50505// fail if the object's ETag matches the given value. This is useful for
50506// getting updates only after the object has changed since the last
50507// request. Use googleapi.IsNotModified to check whether the response
50508// error from Do is the result of In-None-Match.
50509func (c *UserRolePermissionGroupsGetCall) IfNoneMatch(entityTag string) *UserRolePermissionGroupsGetCall {
50510	c.ifNoneMatch_ = entityTag
50511	return c
50512}
50513
50514// Context sets the context to be used in this call's Do method. Any
50515// pending HTTP request will be aborted if the provided context is
50516// canceled.
50517func (c *UserRolePermissionGroupsGetCall) Context(ctx context.Context) *UserRolePermissionGroupsGetCall {
50518	c.ctx_ = ctx
50519	return c
50520}
50521
50522// Header returns an http.Header that can be modified by the caller to
50523// add HTTP headers to the request.
50524func (c *UserRolePermissionGroupsGetCall) Header() http.Header {
50525	if c.header_ == nil {
50526		c.header_ = make(http.Header)
50527	}
50528	return c.header_
50529}
50530
50531func (c *UserRolePermissionGroupsGetCall) doRequest(alt string) (*http.Response, error) {
50532	reqHeaders := make(http.Header)
50533	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
50534	for k, v := range c.header_ {
50535		reqHeaders[k] = v
50536	}
50537	reqHeaders.Set("User-Agent", c.s.userAgent())
50538	if c.ifNoneMatch_ != "" {
50539		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
50540	}
50541	var body io.Reader = nil
50542	c.urlParams_.Set("alt", alt)
50543	c.urlParams_.Set("prettyPrint", "false")
50544	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissionGroups/{id}")
50545	urls += "?" + c.urlParams_.Encode()
50546	req, err := http.NewRequest("GET", urls, body)
50547	if err != nil {
50548		return nil, err
50549	}
50550	req.Header = reqHeaders
50551	googleapi.Expand(req.URL, map[string]string{
50552		"profileId": strconv.FormatInt(c.profileId, 10),
50553		"id":        strconv.FormatInt(c.id, 10),
50554	})
50555	return gensupport.SendRequest(c.ctx_, c.s.client, req)
50556}
50557
50558// Do executes the "dfareporting.userRolePermissionGroups.get" call.
50559// Exactly one of *UserRolePermissionGroup or error will be non-nil. Any
50560// non-2xx status code is an error. Response headers are in either
50561// *UserRolePermissionGroup.ServerResponse.Header or (if a response was
50562// returned at all) in error.(*googleapi.Error).Header. Use
50563// googleapi.IsNotModified to check whether the returned error was
50564// because http.StatusNotModified was returned.
50565func (c *UserRolePermissionGroupsGetCall) Do(opts ...googleapi.CallOption) (*UserRolePermissionGroup, error) {
50566	gensupport.SetOptions(c.urlParams_, opts...)
50567	res, err := c.doRequest("json")
50568	if res != nil && res.StatusCode == http.StatusNotModified {
50569		if res.Body != nil {
50570			res.Body.Close()
50571		}
50572		return nil, &googleapi.Error{
50573			Code:   res.StatusCode,
50574			Header: res.Header,
50575		}
50576	}
50577	if err != nil {
50578		return nil, err
50579	}
50580	defer googleapi.CloseBody(res)
50581	if err := googleapi.CheckResponse(res); err != nil {
50582		return nil, err
50583	}
50584	ret := &UserRolePermissionGroup{
50585		ServerResponse: googleapi.ServerResponse{
50586			Header:         res.Header,
50587			HTTPStatusCode: res.StatusCode,
50588		},
50589	}
50590	target := &ret
50591	if err := gensupport.DecodeResponse(target, res); err != nil {
50592		return nil, err
50593	}
50594	return ret, nil
50595	// {
50596	//   "description": "Gets one user role permission group by ID.",
50597	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissionGroups/{id}",
50598	//   "httpMethod": "GET",
50599	//   "id": "dfareporting.userRolePermissionGroups.get",
50600	//   "parameterOrder": [
50601	//     "profileId",
50602	//     "id"
50603	//   ],
50604	//   "parameters": {
50605	//     "id": {
50606	//       "description": "User role permission group ID.",
50607	//       "format": "int64",
50608	//       "location": "path",
50609	//       "required": true,
50610	//       "type": "string"
50611	//     },
50612	//     "profileId": {
50613	//       "description": "User profile ID associated with this request.",
50614	//       "format": "int64",
50615	//       "location": "path",
50616	//       "required": true,
50617	//       "type": "string"
50618	//     }
50619	//   },
50620	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissionGroups/{id}",
50621	//   "response": {
50622	//     "$ref": "UserRolePermissionGroup"
50623	//   },
50624	//   "scopes": [
50625	//     "https://www.googleapis.com/auth/dfatrafficking"
50626	//   ]
50627	// }
50628
50629}
50630
50631// method id "dfareporting.userRolePermissionGroups.list":
50632
50633type UserRolePermissionGroupsListCall struct {
50634	s            *Service
50635	profileId    int64
50636	urlParams_   gensupport.URLParams
50637	ifNoneMatch_ string
50638	ctx_         context.Context
50639	header_      http.Header
50640}
50641
50642// List: Gets a list of all supported user role permission groups.
50643//
50644// - profileId: User profile ID associated with this request.
50645func (r *UserRolePermissionGroupsService) List(profileId int64) *UserRolePermissionGroupsListCall {
50646	c := &UserRolePermissionGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
50647	c.profileId = profileId
50648	return c
50649}
50650
50651// Fields allows partial responses to be retrieved. See
50652// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
50653// for more information.
50654func (c *UserRolePermissionGroupsListCall) Fields(s ...googleapi.Field) *UserRolePermissionGroupsListCall {
50655	c.urlParams_.Set("fields", googleapi.CombineFields(s))
50656	return c
50657}
50658
50659// IfNoneMatch sets the optional parameter which makes the operation
50660// fail if the object's ETag matches the given value. This is useful for
50661// getting updates only after the object has changed since the last
50662// request. Use googleapi.IsNotModified to check whether the response
50663// error from Do is the result of In-None-Match.
50664func (c *UserRolePermissionGroupsListCall) IfNoneMatch(entityTag string) *UserRolePermissionGroupsListCall {
50665	c.ifNoneMatch_ = entityTag
50666	return c
50667}
50668
50669// Context sets the context to be used in this call's Do method. Any
50670// pending HTTP request will be aborted if the provided context is
50671// canceled.
50672func (c *UserRolePermissionGroupsListCall) Context(ctx context.Context) *UserRolePermissionGroupsListCall {
50673	c.ctx_ = ctx
50674	return c
50675}
50676
50677// Header returns an http.Header that can be modified by the caller to
50678// add HTTP headers to the request.
50679func (c *UserRolePermissionGroupsListCall) Header() http.Header {
50680	if c.header_ == nil {
50681		c.header_ = make(http.Header)
50682	}
50683	return c.header_
50684}
50685
50686func (c *UserRolePermissionGroupsListCall) doRequest(alt string) (*http.Response, error) {
50687	reqHeaders := make(http.Header)
50688	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
50689	for k, v := range c.header_ {
50690		reqHeaders[k] = v
50691	}
50692	reqHeaders.Set("User-Agent", c.s.userAgent())
50693	if c.ifNoneMatch_ != "" {
50694		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
50695	}
50696	var body io.Reader = nil
50697	c.urlParams_.Set("alt", alt)
50698	c.urlParams_.Set("prettyPrint", "false")
50699	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissionGroups")
50700	urls += "?" + c.urlParams_.Encode()
50701	req, err := http.NewRequest("GET", urls, body)
50702	if err != nil {
50703		return nil, err
50704	}
50705	req.Header = reqHeaders
50706	googleapi.Expand(req.URL, map[string]string{
50707		"profileId": strconv.FormatInt(c.profileId, 10),
50708	})
50709	return gensupport.SendRequest(c.ctx_, c.s.client, req)
50710}
50711
50712// Do executes the "dfareporting.userRolePermissionGroups.list" call.
50713// Exactly one of *UserRolePermissionGroupsListResponse or error will be
50714// non-nil. Any non-2xx status code is an error. Response headers are in
50715// either *UserRolePermissionGroupsListResponse.ServerResponse.Header or
50716// (if a response was returned at all) in
50717// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
50718// whether the returned error was because http.StatusNotModified was
50719// returned.
50720func (c *UserRolePermissionGroupsListCall) Do(opts ...googleapi.CallOption) (*UserRolePermissionGroupsListResponse, error) {
50721	gensupport.SetOptions(c.urlParams_, opts...)
50722	res, err := c.doRequest("json")
50723	if res != nil && res.StatusCode == http.StatusNotModified {
50724		if res.Body != nil {
50725			res.Body.Close()
50726		}
50727		return nil, &googleapi.Error{
50728			Code:   res.StatusCode,
50729			Header: res.Header,
50730		}
50731	}
50732	if err != nil {
50733		return nil, err
50734	}
50735	defer googleapi.CloseBody(res)
50736	if err := googleapi.CheckResponse(res); err != nil {
50737		return nil, err
50738	}
50739	ret := &UserRolePermissionGroupsListResponse{
50740		ServerResponse: googleapi.ServerResponse{
50741			Header:         res.Header,
50742			HTTPStatusCode: res.StatusCode,
50743		},
50744	}
50745	target := &ret
50746	if err := gensupport.DecodeResponse(target, res); err != nil {
50747		return nil, err
50748	}
50749	return ret, nil
50750	// {
50751	//   "description": "Gets a list of all supported user role permission groups.",
50752	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissionGroups",
50753	//   "httpMethod": "GET",
50754	//   "id": "dfareporting.userRolePermissionGroups.list",
50755	//   "parameterOrder": [
50756	//     "profileId"
50757	//   ],
50758	//   "parameters": {
50759	//     "profileId": {
50760	//       "description": "User profile ID associated with this request.",
50761	//       "format": "int64",
50762	//       "location": "path",
50763	//       "required": true,
50764	//       "type": "string"
50765	//     }
50766	//   },
50767	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissionGroups",
50768	//   "response": {
50769	//     "$ref": "UserRolePermissionGroupsListResponse"
50770	//   },
50771	//   "scopes": [
50772	//     "https://www.googleapis.com/auth/dfatrafficking"
50773	//   ]
50774	// }
50775
50776}
50777
50778// method id "dfareporting.userRolePermissions.get":
50779
50780type UserRolePermissionsGetCall struct {
50781	s            *Service
50782	profileId    int64
50783	id           int64
50784	urlParams_   gensupport.URLParams
50785	ifNoneMatch_ string
50786	ctx_         context.Context
50787	header_      http.Header
50788}
50789
50790// Get: Gets one user role permission by ID.
50791//
50792// - id: User role permission ID.
50793// - profileId: User profile ID associated with this request.
50794func (r *UserRolePermissionsService) Get(profileId int64, id int64) *UserRolePermissionsGetCall {
50795	c := &UserRolePermissionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
50796	c.profileId = profileId
50797	c.id = id
50798	return c
50799}
50800
50801// Fields allows partial responses to be retrieved. See
50802// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
50803// for more information.
50804func (c *UserRolePermissionsGetCall) Fields(s ...googleapi.Field) *UserRolePermissionsGetCall {
50805	c.urlParams_.Set("fields", googleapi.CombineFields(s))
50806	return c
50807}
50808
50809// IfNoneMatch sets the optional parameter which makes the operation
50810// fail if the object's ETag matches the given value. This is useful for
50811// getting updates only after the object has changed since the last
50812// request. Use googleapi.IsNotModified to check whether the response
50813// error from Do is the result of In-None-Match.
50814func (c *UserRolePermissionsGetCall) IfNoneMatch(entityTag string) *UserRolePermissionsGetCall {
50815	c.ifNoneMatch_ = entityTag
50816	return c
50817}
50818
50819// Context sets the context to be used in this call's Do method. Any
50820// pending HTTP request will be aborted if the provided context is
50821// canceled.
50822func (c *UserRolePermissionsGetCall) Context(ctx context.Context) *UserRolePermissionsGetCall {
50823	c.ctx_ = ctx
50824	return c
50825}
50826
50827// Header returns an http.Header that can be modified by the caller to
50828// add HTTP headers to the request.
50829func (c *UserRolePermissionsGetCall) Header() http.Header {
50830	if c.header_ == nil {
50831		c.header_ = make(http.Header)
50832	}
50833	return c.header_
50834}
50835
50836func (c *UserRolePermissionsGetCall) doRequest(alt string) (*http.Response, error) {
50837	reqHeaders := make(http.Header)
50838	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
50839	for k, v := range c.header_ {
50840		reqHeaders[k] = v
50841	}
50842	reqHeaders.Set("User-Agent", c.s.userAgent())
50843	if c.ifNoneMatch_ != "" {
50844		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
50845	}
50846	var body io.Reader = nil
50847	c.urlParams_.Set("alt", alt)
50848	c.urlParams_.Set("prettyPrint", "false")
50849	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissions/{id}")
50850	urls += "?" + c.urlParams_.Encode()
50851	req, err := http.NewRequest("GET", urls, body)
50852	if err != nil {
50853		return nil, err
50854	}
50855	req.Header = reqHeaders
50856	googleapi.Expand(req.URL, map[string]string{
50857		"profileId": strconv.FormatInt(c.profileId, 10),
50858		"id":        strconv.FormatInt(c.id, 10),
50859	})
50860	return gensupport.SendRequest(c.ctx_, c.s.client, req)
50861}
50862
50863// Do executes the "dfareporting.userRolePermissions.get" call.
50864// Exactly one of *UserRolePermission or error will be non-nil. Any
50865// non-2xx status code is an error. Response headers are in either
50866// *UserRolePermission.ServerResponse.Header or (if a response was
50867// returned at all) in error.(*googleapi.Error).Header. Use
50868// googleapi.IsNotModified to check whether the returned error was
50869// because http.StatusNotModified was returned.
50870func (c *UserRolePermissionsGetCall) Do(opts ...googleapi.CallOption) (*UserRolePermission, error) {
50871	gensupport.SetOptions(c.urlParams_, opts...)
50872	res, err := c.doRequest("json")
50873	if res != nil && res.StatusCode == http.StatusNotModified {
50874		if res.Body != nil {
50875			res.Body.Close()
50876		}
50877		return nil, &googleapi.Error{
50878			Code:   res.StatusCode,
50879			Header: res.Header,
50880		}
50881	}
50882	if err != nil {
50883		return nil, err
50884	}
50885	defer googleapi.CloseBody(res)
50886	if err := googleapi.CheckResponse(res); err != nil {
50887		return nil, err
50888	}
50889	ret := &UserRolePermission{
50890		ServerResponse: googleapi.ServerResponse{
50891			Header:         res.Header,
50892			HTTPStatusCode: res.StatusCode,
50893		},
50894	}
50895	target := &ret
50896	if err := gensupport.DecodeResponse(target, res); err != nil {
50897		return nil, err
50898	}
50899	return ret, nil
50900	// {
50901	//   "description": "Gets one user role permission by ID.",
50902	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissions/{id}",
50903	//   "httpMethod": "GET",
50904	//   "id": "dfareporting.userRolePermissions.get",
50905	//   "parameterOrder": [
50906	//     "profileId",
50907	//     "id"
50908	//   ],
50909	//   "parameters": {
50910	//     "id": {
50911	//       "description": "User role permission ID.",
50912	//       "format": "int64",
50913	//       "location": "path",
50914	//       "required": true,
50915	//       "type": "string"
50916	//     },
50917	//     "profileId": {
50918	//       "description": "User profile ID associated with this request.",
50919	//       "format": "int64",
50920	//       "location": "path",
50921	//       "required": true,
50922	//       "type": "string"
50923	//     }
50924	//   },
50925	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissions/{id}",
50926	//   "response": {
50927	//     "$ref": "UserRolePermission"
50928	//   },
50929	//   "scopes": [
50930	//     "https://www.googleapis.com/auth/dfatrafficking"
50931	//   ]
50932	// }
50933
50934}
50935
50936// method id "dfareporting.userRolePermissions.list":
50937
50938type UserRolePermissionsListCall struct {
50939	s            *Service
50940	profileId    int64
50941	urlParams_   gensupport.URLParams
50942	ifNoneMatch_ string
50943	ctx_         context.Context
50944	header_      http.Header
50945}
50946
50947// List: Gets a list of user role permissions, possibly filtered.
50948//
50949// - profileId: User profile ID associated with this request.
50950func (r *UserRolePermissionsService) List(profileId int64) *UserRolePermissionsListCall {
50951	c := &UserRolePermissionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
50952	c.profileId = profileId
50953	return c
50954}
50955
50956// Ids sets the optional parameter "ids": Select only user role
50957// permissions with these IDs.
50958func (c *UserRolePermissionsListCall) Ids(ids ...int64) *UserRolePermissionsListCall {
50959	var ids_ []string
50960	for _, v := range ids {
50961		ids_ = append(ids_, fmt.Sprint(v))
50962	}
50963	c.urlParams_.SetMulti("ids", ids_)
50964	return c
50965}
50966
50967// Fields allows partial responses to be retrieved. See
50968// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
50969// for more information.
50970func (c *UserRolePermissionsListCall) Fields(s ...googleapi.Field) *UserRolePermissionsListCall {
50971	c.urlParams_.Set("fields", googleapi.CombineFields(s))
50972	return c
50973}
50974
50975// IfNoneMatch sets the optional parameter which makes the operation
50976// fail if the object's ETag matches the given value. This is useful for
50977// getting updates only after the object has changed since the last
50978// request. Use googleapi.IsNotModified to check whether the response
50979// error from Do is the result of In-None-Match.
50980func (c *UserRolePermissionsListCall) IfNoneMatch(entityTag string) *UserRolePermissionsListCall {
50981	c.ifNoneMatch_ = entityTag
50982	return c
50983}
50984
50985// Context sets the context to be used in this call's Do method. Any
50986// pending HTTP request will be aborted if the provided context is
50987// canceled.
50988func (c *UserRolePermissionsListCall) Context(ctx context.Context) *UserRolePermissionsListCall {
50989	c.ctx_ = ctx
50990	return c
50991}
50992
50993// Header returns an http.Header that can be modified by the caller to
50994// add HTTP headers to the request.
50995func (c *UserRolePermissionsListCall) Header() http.Header {
50996	if c.header_ == nil {
50997		c.header_ = make(http.Header)
50998	}
50999	return c.header_
51000}
51001
51002func (c *UserRolePermissionsListCall) doRequest(alt string) (*http.Response, error) {
51003	reqHeaders := make(http.Header)
51004	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
51005	for k, v := range c.header_ {
51006		reqHeaders[k] = v
51007	}
51008	reqHeaders.Set("User-Agent", c.s.userAgent())
51009	if c.ifNoneMatch_ != "" {
51010		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
51011	}
51012	var body io.Reader = nil
51013	c.urlParams_.Set("alt", alt)
51014	c.urlParams_.Set("prettyPrint", "false")
51015	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissions")
51016	urls += "?" + c.urlParams_.Encode()
51017	req, err := http.NewRequest("GET", urls, body)
51018	if err != nil {
51019		return nil, err
51020	}
51021	req.Header = reqHeaders
51022	googleapi.Expand(req.URL, map[string]string{
51023		"profileId": strconv.FormatInt(c.profileId, 10),
51024	})
51025	return gensupport.SendRequest(c.ctx_, c.s.client, req)
51026}
51027
51028// Do executes the "dfareporting.userRolePermissions.list" call.
51029// Exactly one of *UserRolePermissionsListResponse or error will be
51030// non-nil. Any non-2xx status code is an error. Response headers are in
51031// either *UserRolePermissionsListResponse.ServerResponse.Header or (if
51032// a response was returned at all) in error.(*googleapi.Error).Header.
51033// Use googleapi.IsNotModified to check whether the returned error was
51034// because http.StatusNotModified was returned.
51035func (c *UserRolePermissionsListCall) Do(opts ...googleapi.CallOption) (*UserRolePermissionsListResponse, error) {
51036	gensupport.SetOptions(c.urlParams_, opts...)
51037	res, err := c.doRequest("json")
51038	if res != nil && res.StatusCode == http.StatusNotModified {
51039		if res.Body != nil {
51040			res.Body.Close()
51041		}
51042		return nil, &googleapi.Error{
51043			Code:   res.StatusCode,
51044			Header: res.Header,
51045		}
51046	}
51047	if err != nil {
51048		return nil, err
51049	}
51050	defer googleapi.CloseBody(res)
51051	if err := googleapi.CheckResponse(res); err != nil {
51052		return nil, err
51053	}
51054	ret := &UserRolePermissionsListResponse{
51055		ServerResponse: googleapi.ServerResponse{
51056			Header:         res.Header,
51057			HTTPStatusCode: res.StatusCode,
51058		},
51059	}
51060	target := &ret
51061	if err := gensupport.DecodeResponse(target, res); err != nil {
51062		return nil, err
51063	}
51064	return ret, nil
51065	// {
51066	//   "description": "Gets a list of user role permissions, possibly filtered.",
51067	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissions",
51068	//   "httpMethod": "GET",
51069	//   "id": "dfareporting.userRolePermissions.list",
51070	//   "parameterOrder": [
51071	//     "profileId"
51072	//   ],
51073	//   "parameters": {
51074	//     "ids": {
51075	//       "description": "Select only user role permissions with these IDs.",
51076	//       "format": "int64",
51077	//       "location": "query",
51078	//       "repeated": true,
51079	//       "type": "string"
51080	//     },
51081	//     "profileId": {
51082	//       "description": "User profile ID associated with this request.",
51083	//       "format": "int64",
51084	//       "location": "path",
51085	//       "required": true,
51086	//       "type": "string"
51087	//     }
51088	//   },
51089	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRolePermissions",
51090	//   "response": {
51091	//     "$ref": "UserRolePermissionsListResponse"
51092	//   },
51093	//   "scopes": [
51094	//     "https://www.googleapis.com/auth/dfatrafficking"
51095	//   ]
51096	// }
51097
51098}
51099
51100// method id "dfareporting.userRoles.delete":
51101
51102type UserRolesDeleteCall struct {
51103	s          *Service
51104	profileId  int64
51105	id         int64
51106	urlParams_ gensupport.URLParams
51107	ctx_       context.Context
51108	header_    http.Header
51109}
51110
51111// Delete: Deletes an existing user role.
51112//
51113// - id: User role ID.
51114// - profileId: User profile ID associated with this request.
51115func (r *UserRolesService) Delete(profileId int64, id int64) *UserRolesDeleteCall {
51116	c := &UserRolesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
51117	c.profileId = profileId
51118	c.id = id
51119	return c
51120}
51121
51122// Fields allows partial responses to be retrieved. See
51123// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
51124// for more information.
51125func (c *UserRolesDeleteCall) Fields(s ...googleapi.Field) *UserRolesDeleteCall {
51126	c.urlParams_.Set("fields", googleapi.CombineFields(s))
51127	return c
51128}
51129
51130// Context sets the context to be used in this call's Do method. Any
51131// pending HTTP request will be aborted if the provided context is
51132// canceled.
51133func (c *UserRolesDeleteCall) Context(ctx context.Context) *UserRolesDeleteCall {
51134	c.ctx_ = ctx
51135	return c
51136}
51137
51138// Header returns an http.Header that can be modified by the caller to
51139// add HTTP headers to the request.
51140func (c *UserRolesDeleteCall) Header() http.Header {
51141	if c.header_ == nil {
51142		c.header_ = make(http.Header)
51143	}
51144	return c.header_
51145}
51146
51147func (c *UserRolesDeleteCall) doRequest(alt string) (*http.Response, error) {
51148	reqHeaders := make(http.Header)
51149	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
51150	for k, v := range c.header_ {
51151		reqHeaders[k] = v
51152	}
51153	reqHeaders.Set("User-Agent", c.s.userAgent())
51154	var body io.Reader = nil
51155	c.urlParams_.Set("alt", alt)
51156	c.urlParams_.Set("prettyPrint", "false")
51157	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRoles/{id}")
51158	urls += "?" + c.urlParams_.Encode()
51159	req, err := http.NewRequest("DELETE", urls, body)
51160	if err != nil {
51161		return nil, err
51162	}
51163	req.Header = reqHeaders
51164	googleapi.Expand(req.URL, map[string]string{
51165		"profileId": strconv.FormatInt(c.profileId, 10),
51166		"id":        strconv.FormatInt(c.id, 10),
51167	})
51168	return gensupport.SendRequest(c.ctx_, c.s.client, req)
51169}
51170
51171// Do executes the "dfareporting.userRoles.delete" call.
51172func (c *UserRolesDeleteCall) Do(opts ...googleapi.CallOption) error {
51173	gensupport.SetOptions(c.urlParams_, opts...)
51174	res, err := c.doRequest("json")
51175	if err != nil {
51176		return err
51177	}
51178	defer googleapi.CloseBody(res)
51179	if err := googleapi.CheckResponse(res); err != nil {
51180		return err
51181	}
51182	return nil
51183	// {
51184	//   "description": "Deletes an existing user role.",
51185	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRoles/{id}",
51186	//   "httpMethod": "DELETE",
51187	//   "id": "dfareporting.userRoles.delete",
51188	//   "parameterOrder": [
51189	//     "profileId",
51190	//     "id"
51191	//   ],
51192	//   "parameters": {
51193	//     "id": {
51194	//       "description": "User role ID.",
51195	//       "format": "int64",
51196	//       "location": "path",
51197	//       "required": true,
51198	//       "type": "string"
51199	//     },
51200	//     "profileId": {
51201	//       "description": "User profile ID associated with this request.",
51202	//       "format": "int64",
51203	//       "location": "path",
51204	//       "required": true,
51205	//       "type": "string"
51206	//     }
51207	//   },
51208	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRoles/{id}",
51209	//   "scopes": [
51210	//     "https://www.googleapis.com/auth/dfatrafficking"
51211	//   ]
51212	// }
51213
51214}
51215
51216// method id "dfareporting.userRoles.get":
51217
51218type UserRolesGetCall struct {
51219	s            *Service
51220	profileId    int64
51221	id           int64
51222	urlParams_   gensupport.URLParams
51223	ifNoneMatch_ string
51224	ctx_         context.Context
51225	header_      http.Header
51226}
51227
51228// Get: Gets one user role by ID.
51229//
51230// - id: User role ID.
51231// - profileId: User profile ID associated with this request.
51232func (r *UserRolesService) Get(profileId int64, id int64) *UserRolesGetCall {
51233	c := &UserRolesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
51234	c.profileId = profileId
51235	c.id = id
51236	return c
51237}
51238
51239// Fields allows partial responses to be retrieved. See
51240// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
51241// for more information.
51242func (c *UserRolesGetCall) Fields(s ...googleapi.Field) *UserRolesGetCall {
51243	c.urlParams_.Set("fields", googleapi.CombineFields(s))
51244	return c
51245}
51246
51247// IfNoneMatch sets the optional parameter which makes the operation
51248// fail if the object's ETag matches the given value. This is useful for
51249// getting updates only after the object has changed since the last
51250// request. Use googleapi.IsNotModified to check whether the response
51251// error from Do is the result of In-None-Match.
51252func (c *UserRolesGetCall) IfNoneMatch(entityTag string) *UserRolesGetCall {
51253	c.ifNoneMatch_ = entityTag
51254	return c
51255}
51256
51257// Context sets the context to be used in this call's Do method. Any
51258// pending HTTP request will be aborted if the provided context is
51259// canceled.
51260func (c *UserRolesGetCall) Context(ctx context.Context) *UserRolesGetCall {
51261	c.ctx_ = ctx
51262	return c
51263}
51264
51265// Header returns an http.Header that can be modified by the caller to
51266// add HTTP headers to the request.
51267func (c *UserRolesGetCall) Header() http.Header {
51268	if c.header_ == nil {
51269		c.header_ = make(http.Header)
51270	}
51271	return c.header_
51272}
51273
51274func (c *UserRolesGetCall) doRequest(alt string) (*http.Response, error) {
51275	reqHeaders := make(http.Header)
51276	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
51277	for k, v := range c.header_ {
51278		reqHeaders[k] = v
51279	}
51280	reqHeaders.Set("User-Agent", c.s.userAgent())
51281	if c.ifNoneMatch_ != "" {
51282		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
51283	}
51284	var body io.Reader = nil
51285	c.urlParams_.Set("alt", alt)
51286	c.urlParams_.Set("prettyPrint", "false")
51287	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRoles/{id}")
51288	urls += "?" + c.urlParams_.Encode()
51289	req, err := http.NewRequest("GET", urls, body)
51290	if err != nil {
51291		return nil, err
51292	}
51293	req.Header = reqHeaders
51294	googleapi.Expand(req.URL, map[string]string{
51295		"profileId": strconv.FormatInt(c.profileId, 10),
51296		"id":        strconv.FormatInt(c.id, 10),
51297	})
51298	return gensupport.SendRequest(c.ctx_, c.s.client, req)
51299}
51300
51301// Do executes the "dfareporting.userRoles.get" call.
51302// Exactly one of *UserRole or error will be non-nil. Any non-2xx status
51303// code is an error. Response headers are in either
51304// *UserRole.ServerResponse.Header or (if a response was returned at
51305// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
51306// to check whether the returned error was because
51307// http.StatusNotModified was returned.
51308func (c *UserRolesGetCall) Do(opts ...googleapi.CallOption) (*UserRole, error) {
51309	gensupport.SetOptions(c.urlParams_, opts...)
51310	res, err := c.doRequest("json")
51311	if res != nil && res.StatusCode == http.StatusNotModified {
51312		if res.Body != nil {
51313			res.Body.Close()
51314		}
51315		return nil, &googleapi.Error{
51316			Code:   res.StatusCode,
51317			Header: res.Header,
51318		}
51319	}
51320	if err != nil {
51321		return nil, err
51322	}
51323	defer googleapi.CloseBody(res)
51324	if err := googleapi.CheckResponse(res); err != nil {
51325		return nil, err
51326	}
51327	ret := &UserRole{
51328		ServerResponse: googleapi.ServerResponse{
51329			Header:         res.Header,
51330			HTTPStatusCode: res.StatusCode,
51331		},
51332	}
51333	target := &ret
51334	if err := gensupport.DecodeResponse(target, res); err != nil {
51335		return nil, err
51336	}
51337	return ret, nil
51338	// {
51339	//   "description": "Gets one user role by ID.",
51340	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRoles/{id}",
51341	//   "httpMethod": "GET",
51342	//   "id": "dfareporting.userRoles.get",
51343	//   "parameterOrder": [
51344	//     "profileId",
51345	//     "id"
51346	//   ],
51347	//   "parameters": {
51348	//     "id": {
51349	//       "description": "User role ID.",
51350	//       "format": "int64",
51351	//       "location": "path",
51352	//       "required": true,
51353	//       "type": "string"
51354	//     },
51355	//     "profileId": {
51356	//       "description": "User profile ID associated with this request.",
51357	//       "format": "int64",
51358	//       "location": "path",
51359	//       "required": true,
51360	//       "type": "string"
51361	//     }
51362	//   },
51363	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRoles/{id}",
51364	//   "response": {
51365	//     "$ref": "UserRole"
51366	//   },
51367	//   "scopes": [
51368	//     "https://www.googleapis.com/auth/dfatrafficking"
51369	//   ]
51370	// }
51371
51372}
51373
51374// method id "dfareporting.userRoles.insert":
51375
51376type UserRolesInsertCall struct {
51377	s          *Service
51378	profileId  int64
51379	userrole   *UserRole
51380	urlParams_ gensupport.URLParams
51381	ctx_       context.Context
51382	header_    http.Header
51383}
51384
51385// Insert: Inserts a new user role.
51386//
51387// - profileId: User profile ID associated with this request.
51388func (r *UserRolesService) Insert(profileId int64, userrole *UserRole) *UserRolesInsertCall {
51389	c := &UserRolesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
51390	c.profileId = profileId
51391	c.userrole = userrole
51392	return c
51393}
51394
51395// Fields allows partial responses to be retrieved. See
51396// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
51397// for more information.
51398func (c *UserRolesInsertCall) Fields(s ...googleapi.Field) *UserRolesInsertCall {
51399	c.urlParams_.Set("fields", googleapi.CombineFields(s))
51400	return c
51401}
51402
51403// Context sets the context to be used in this call's Do method. Any
51404// pending HTTP request will be aborted if the provided context is
51405// canceled.
51406func (c *UserRolesInsertCall) Context(ctx context.Context) *UserRolesInsertCall {
51407	c.ctx_ = ctx
51408	return c
51409}
51410
51411// Header returns an http.Header that can be modified by the caller to
51412// add HTTP headers to the request.
51413func (c *UserRolesInsertCall) Header() http.Header {
51414	if c.header_ == nil {
51415		c.header_ = make(http.Header)
51416	}
51417	return c.header_
51418}
51419
51420func (c *UserRolesInsertCall) doRequest(alt string) (*http.Response, error) {
51421	reqHeaders := make(http.Header)
51422	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
51423	for k, v := range c.header_ {
51424		reqHeaders[k] = v
51425	}
51426	reqHeaders.Set("User-Agent", c.s.userAgent())
51427	var body io.Reader = nil
51428	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userrole)
51429	if err != nil {
51430		return nil, err
51431	}
51432	reqHeaders.Set("Content-Type", "application/json")
51433	c.urlParams_.Set("alt", alt)
51434	c.urlParams_.Set("prettyPrint", "false")
51435	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRoles")
51436	urls += "?" + c.urlParams_.Encode()
51437	req, err := http.NewRequest("POST", urls, body)
51438	if err != nil {
51439		return nil, err
51440	}
51441	req.Header = reqHeaders
51442	googleapi.Expand(req.URL, map[string]string{
51443		"profileId": strconv.FormatInt(c.profileId, 10),
51444	})
51445	return gensupport.SendRequest(c.ctx_, c.s.client, req)
51446}
51447
51448// Do executes the "dfareporting.userRoles.insert" call.
51449// Exactly one of *UserRole or error will be non-nil. Any non-2xx status
51450// code is an error. Response headers are in either
51451// *UserRole.ServerResponse.Header or (if a response was returned at
51452// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
51453// to check whether the returned error was because
51454// http.StatusNotModified was returned.
51455func (c *UserRolesInsertCall) Do(opts ...googleapi.CallOption) (*UserRole, error) {
51456	gensupport.SetOptions(c.urlParams_, opts...)
51457	res, err := c.doRequest("json")
51458	if res != nil && res.StatusCode == http.StatusNotModified {
51459		if res.Body != nil {
51460			res.Body.Close()
51461		}
51462		return nil, &googleapi.Error{
51463			Code:   res.StatusCode,
51464			Header: res.Header,
51465		}
51466	}
51467	if err != nil {
51468		return nil, err
51469	}
51470	defer googleapi.CloseBody(res)
51471	if err := googleapi.CheckResponse(res); err != nil {
51472		return nil, err
51473	}
51474	ret := &UserRole{
51475		ServerResponse: googleapi.ServerResponse{
51476			Header:         res.Header,
51477			HTTPStatusCode: res.StatusCode,
51478		},
51479	}
51480	target := &ret
51481	if err := gensupport.DecodeResponse(target, res); err != nil {
51482		return nil, err
51483	}
51484	return ret, nil
51485	// {
51486	//   "description": "Inserts a new user role.",
51487	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRoles",
51488	//   "httpMethod": "POST",
51489	//   "id": "dfareporting.userRoles.insert",
51490	//   "parameterOrder": [
51491	//     "profileId"
51492	//   ],
51493	//   "parameters": {
51494	//     "profileId": {
51495	//       "description": "User profile ID associated with this request.",
51496	//       "format": "int64",
51497	//       "location": "path",
51498	//       "required": true,
51499	//       "type": "string"
51500	//     }
51501	//   },
51502	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRoles",
51503	//   "request": {
51504	//     "$ref": "UserRole"
51505	//   },
51506	//   "response": {
51507	//     "$ref": "UserRole"
51508	//   },
51509	//   "scopes": [
51510	//     "https://www.googleapis.com/auth/dfatrafficking"
51511	//   ]
51512	// }
51513
51514}
51515
51516// method id "dfareporting.userRoles.list":
51517
51518type UserRolesListCall struct {
51519	s            *Service
51520	profileId    int64
51521	urlParams_   gensupport.URLParams
51522	ifNoneMatch_ string
51523	ctx_         context.Context
51524	header_      http.Header
51525}
51526
51527// List: Retrieves a list of user roles, possibly filtered. This method
51528// supports paging.
51529//
51530// - profileId: User profile ID associated with this request.
51531func (r *UserRolesService) List(profileId int64) *UserRolesListCall {
51532	c := &UserRolesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
51533	c.profileId = profileId
51534	return c
51535}
51536
51537// AccountUserRoleOnly sets the optional parameter
51538// "accountUserRoleOnly": Select only account level user roles not
51539// associated with any specific subaccount.
51540func (c *UserRolesListCall) AccountUserRoleOnly(accountUserRoleOnly bool) *UserRolesListCall {
51541	c.urlParams_.Set("accountUserRoleOnly", fmt.Sprint(accountUserRoleOnly))
51542	return c
51543}
51544
51545// Ids sets the optional parameter "ids": Select only user roles with
51546// the specified IDs.
51547func (c *UserRolesListCall) Ids(ids ...int64) *UserRolesListCall {
51548	var ids_ []string
51549	for _, v := range ids {
51550		ids_ = append(ids_, fmt.Sprint(v))
51551	}
51552	c.urlParams_.SetMulti("ids", ids_)
51553	return c
51554}
51555
51556// MaxResults sets the optional parameter "maxResults": Maximum number
51557// of results to return.
51558func (c *UserRolesListCall) MaxResults(maxResults int64) *UserRolesListCall {
51559	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
51560	return c
51561}
51562
51563// PageToken sets the optional parameter "pageToken": Value of the
51564// nextPageToken from the previous result page.
51565func (c *UserRolesListCall) PageToken(pageToken string) *UserRolesListCall {
51566	c.urlParams_.Set("pageToken", pageToken)
51567	return c
51568}
51569
51570// SearchString sets the optional parameter "searchString": Allows
51571// searching for objects by name or ID. Wildcards (*) are allowed. For
51572// example, "userrole*2015" will return objects with names like
51573// "userrole June 2015", "userrole April 2015", or simply "userrole
51574// 2015". Most of the searches also add wildcards implicitly at the
51575// start and the end of the search string. For example, a search string
51576// of "userrole" will match objects with name "my userrole", "userrole
51577// 2015", or simply "userrole".
51578func (c *UserRolesListCall) SearchString(searchString string) *UserRolesListCall {
51579	c.urlParams_.Set("searchString", searchString)
51580	return c
51581}
51582
51583// SortField sets the optional parameter "sortField": Field by which to
51584// sort the list.
51585//
51586// Possible values:
51587//   "ID" (default)
51588//   "NAME"
51589func (c *UserRolesListCall) SortField(sortField string) *UserRolesListCall {
51590	c.urlParams_.Set("sortField", sortField)
51591	return c
51592}
51593
51594// SortOrder sets the optional parameter "sortOrder": Order of sorted
51595// results.
51596//
51597// Possible values:
51598//   "ASCENDING" (default)
51599//   "DESCENDING"
51600func (c *UserRolesListCall) SortOrder(sortOrder string) *UserRolesListCall {
51601	c.urlParams_.Set("sortOrder", sortOrder)
51602	return c
51603}
51604
51605// SubaccountId sets the optional parameter "subaccountId": Select only
51606// user roles that belong to this subaccount.
51607func (c *UserRolesListCall) SubaccountId(subaccountId int64) *UserRolesListCall {
51608	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
51609	return c
51610}
51611
51612// Fields allows partial responses to be retrieved. See
51613// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
51614// for more information.
51615func (c *UserRolesListCall) Fields(s ...googleapi.Field) *UserRolesListCall {
51616	c.urlParams_.Set("fields", googleapi.CombineFields(s))
51617	return c
51618}
51619
51620// IfNoneMatch sets the optional parameter which makes the operation
51621// fail if the object's ETag matches the given value. This is useful for
51622// getting updates only after the object has changed since the last
51623// request. Use googleapi.IsNotModified to check whether the response
51624// error from Do is the result of In-None-Match.
51625func (c *UserRolesListCall) IfNoneMatch(entityTag string) *UserRolesListCall {
51626	c.ifNoneMatch_ = entityTag
51627	return c
51628}
51629
51630// Context sets the context to be used in this call's Do method. Any
51631// pending HTTP request will be aborted if the provided context is
51632// canceled.
51633func (c *UserRolesListCall) Context(ctx context.Context) *UserRolesListCall {
51634	c.ctx_ = ctx
51635	return c
51636}
51637
51638// Header returns an http.Header that can be modified by the caller to
51639// add HTTP headers to the request.
51640func (c *UserRolesListCall) Header() http.Header {
51641	if c.header_ == nil {
51642		c.header_ = make(http.Header)
51643	}
51644	return c.header_
51645}
51646
51647func (c *UserRolesListCall) doRequest(alt string) (*http.Response, error) {
51648	reqHeaders := make(http.Header)
51649	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
51650	for k, v := range c.header_ {
51651		reqHeaders[k] = v
51652	}
51653	reqHeaders.Set("User-Agent", c.s.userAgent())
51654	if c.ifNoneMatch_ != "" {
51655		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
51656	}
51657	var body io.Reader = nil
51658	c.urlParams_.Set("alt", alt)
51659	c.urlParams_.Set("prettyPrint", "false")
51660	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRoles")
51661	urls += "?" + c.urlParams_.Encode()
51662	req, err := http.NewRequest("GET", urls, body)
51663	if err != nil {
51664		return nil, err
51665	}
51666	req.Header = reqHeaders
51667	googleapi.Expand(req.URL, map[string]string{
51668		"profileId": strconv.FormatInt(c.profileId, 10),
51669	})
51670	return gensupport.SendRequest(c.ctx_, c.s.client, req)
51671}
51672
51673// Do executes the "dfareporting.userRoles.list" call.
51674// Exactly one of *UserRolesListResponse or error will be non-nil. Any
51675// non-2xx status code is an error. Response headers are in either
51676// *UserRolesListResponse.ServerResponse.Header or (if a response was
51677// returned at all) in error.(*googleapi.Error).Header. Use
51678// googleapi.IsNotModified to check whether the returned error was
51679// because http.StatusNotModified was returned.
51680func (c *UserRolesListCall) Do(opts ...googleapi.CallOption) (*UserRolesListResponse, error) {
51681	gensupport.SetOptions(c.urlParams_, opts...)
51682	res, err := c.doRequest("json")
51683	if res != nil && res.StatusCode == http.StatusNotModified {
51684		if res.Body != nil {
51685			res.Body.Close()
51686		}
51687		return nil, &googleapi.Error{
51688			Code:   res.StatusCode,
51689			Header: res.Header,
51690		}
51691	}
51692	if err != nil {
51693		return nil, err
51694	}
51695	defer googleapi.CloseBody(res)
51696	if err := googleapi.CheckResponse(res); err != nil {
51697		return nil, err
51698	}
51699	ret := &UserRolesListResponse{
51700		ServerResponse: googleapi.ServerResponse{
51701			Header:         res.Header,
51702			HTTPStatusCode: res.StatusCode,
51703		},
51704	}
51705	target := &ret
51706	if err := gensupport.DecodeResponse(target, res); err != nil {
51707		return nil, err
51708	}
51709	return ret, nil
51710	// {
51711	//   "description": "Retrieves a list of user roles, possibly filtered. This method supports paging.",
51712	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRoles",
51713	//   "httpMethod": "GET",
51714	//   "id": "dfareporting.userRoles.list",
51715	//   "parameterOrder": [
51716	//     "profileId"
51717	//   ],
51718	//   "parameters": {
51719	//     "accountUserRoleOnly": {
51720	//       "description": "Select only account level user roles not associated with any specific subaccount.",
51721	//       "location": "query",
51722	//       "type": "boolean"
51723	//     },
51724	//     "ids": {
51725	//       "description": "Select only user roles with the specified IDs.",
51726	//       "format": "int64",
51727	//       "location": "query",
51728	//       "repeated": true,
51729	//       "type": "string"
51730	//     },
51731	//     "maxResults": {
51732	//       "default": "1000",
51733	//       "description": "Maximum number of results to return.",
51734	//       "format": "int32",
51735	//       "location": "query",
51736	//       "maximum": "1000",
51737	//       "minimum": "0",
51738	//       "type": "integer"
51739	//     },
51740	//     "pageToken": {
51741	//       "description": "Value of the nextPageToken from the previous result page.",
51742	//       "location": "query",
51743	//       "type": "string"
51744	//     },
51745	//     "profileId": {
51746	//       "description": "User profile ID associated with this request.",
51747	//       "format": "int64",
51748	//       "location": "path",
51749	//       "required": true,
51750	//       "type": "string"
51751	//     },
51752	//     "searchString": {
51753	//       "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"userrole*2015\" will return objects with names like \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"userrole\" will match objects with name \"my userrole\", \"userrole 2015\", or simply \"userrole\".",
51754	//       "location": "query",
51755	//       "type": "string"
51756	//     },
51757	//     "sortField": {
51758	//       "default": "ID",
51759	//       "description": "Field by which to sort the list.",
51760	//       "enum": [
51761	//         "ID",
51762	//         "NAME"
51763	//       ],
51764	//       "enumDescriptions": [
51765	//         "",
51766	//         ""
51767	//       ],
51768	//       "location": "query",
51769	//       "type": "string"
51770	//     },
51771	//     "sortOrder": {
51772	//       "default": "ASCENDING",
51773	//       "description": "Order of sorted results.",
51774	//       "enum": [
51775	//         "ASCENDING",
51776	//         "DESCENDING"
51777	//       ],
51778	//       "enumDescriptions": [
51779	//         "",
51780	//         ""
51781	//       ],
51782	//       "location": "query",
51783	//       "type": "string"
51784	//     },
51785	//     "subaccountId": {
51786	//       "description": "Select only user roles that belong to this subaccount.",
51787	//       "format": "int64",
51788	//       "location": "query",
51789	//       "type": "string"
51790	//     }
51791	//   },
51792	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRoles",
51793	//   "response": {
51794	//     "$ref": "UserRolesListResponse"
51795	//   },
51796	//   "scopes": [
51797	//     "https://www.googleapis.com/auth/dfatrafficking"
51798	//   ]
51799	// }
51800
51801}
51802
51803// Pages invokes f for each page of results.
51804// A non-nil error returned from f will halt the iteration.
51805// The provided context supersedes any context provided to the Context method.
51806func (c *UserRolesListCall) Pages(ctx context.Context, f func(*UserRolesListResponse) error) error {
51807	c.ctx_ = ctx
51808	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
51809	for {
51810		x, err := c.Do()
51811		if err != nil {
51812			return err
51813		}
51814		if err := f(x); err != nil {
51815			return err
51816		}
51817		if x.NextPageToken == "" {
51818			return nil
51819		}
51820		c.PageToken(x.NextPageToken)
51821	}
51822}
51823
51824// method id "dfareporting.userRoles.patch":
51825
51826type UserRolesPatchCall struct {
51827	s          *Service
51828	profileId  int64
51829	userrole   *UserRole
51830	urlParams_ gensupport.URLParams
51831	ctx_       context.Context
51832	header_    http.Header
51833}
51834
51835// Patch: Updates an existing user role. This method supports patch
51836// semantics.
51837//
51838// - id: UserRole ID.
51839// - profileId: User profile ID associated with this request.
51840func (r *UserRolesService) Patch(profileId int64, id int64, userrole *UserRole) *UserRolesPatchCall {
51841	c := &UserRolesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
51842	c.profileId = profileId
51843	c.urlParams_.Set("id", fmt.Sprint(id))
51844	c.userrole = userrole
51845	return c
51846}
51847
51848// Fields allows partial responses to be retrieved. See
51849// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
51850// for more information.
51851func (c *UserRolesPatchCall) Fields(s ...googleapi.Field) *UserRolesPatchCall {
51852	c.urlParams_.Set("fields", googleapi.CombineFields(s))
51853	return c
51854}
51855
51856// Context sets the context to be used in this call's Do method. Any
51857// pending HTTP request will be aborted if the provided context is
51858// canceled.
51859func (c *UserRolesPatchCall) Context(ctx context.Context) *UserRolesPatchCall {
51860	c.ctx_ = ctx
51861	return c
51862}
51863
51864// Header returns an http.Header that can be modified by the caller to
51865// add HTTP headers to the request.
51866func (c *UserRolesPatchCall) Header() http.Header {
51867	if c.header_ == nil {
51868		c.header_ = make(http.Header)
51869	}
51870	return c.header_
51871}
51872
51873func (c *UserRolesPatchCall) doRequest(alt string) (*http.Response, error) {
51874	reqHeaders := make(http.Header)
51875	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
51876	for k, v := range c.header_ {
51877		reqHeaders[k] = v
51878	}
51879	reqHeaders.Set("User-Agent", c.s.userAgent())
51880	var body io.Reader = nil
51881	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userrole)
51882	if err != nil {
51883		return nil, err
51884	}
51885	reqHeaders.Set("Content-Type", "application/json")
51886	c.urlParams_.Set("alt", alt)
51887	c.urlParams_.Set("prettyPrint", "false")
51888	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRoles")
51889	urls += "?" + c.urlParams_.Encode()
51890	req, err := http.NewRequest("PATCH", urls, body)
51891	if err != nil {
51892		return nil, err
51893	}
51894	req.Header = reqHeaders
51895	googleapi.Expand(req.URL, map[string]string{
51896		"profileId": strconv.FormatInt(c.profileId, 10),
51897	})
51898	return gensupport.SendRequest(c.ctx_, c.s.client, req)
51899}
51900
51901// Do executes the "dfareporting.userRoles.patch" call.
51902// Exactly one of *UserRole or error will be non-nil. Any non-2xx status
51903// code is an error. Response headers are in either
51904// *UserRole.ServerResponse.Header or (if a response was returned at
51905// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
51906// to check whether the returned error was because
51907// http.StatusNotModified was returned.
51908func (c *UserRolesPatchCall) Do(opts ...googleapi.CallOption) (*UserRole, error) {
51909	gensupport.SetOptions(c.urlParams_, opts...)
51910	res, err := c.doRequest("json")
51911	if res != nil && res.StatusCode == http.StatusNotModified {
51912		if res.Body != nil {
51913			res.Body.Close()
51914		}
51915		return nil, &googleapi.Error{
51916			Code:   res.StatusCode,
51917			Header: res.Header,
51918		}
51919	}
51920	if err != nil {
51921		return nil, err
51922	}
51923	defer googleapi.CloseBody(res)
51924	if err := googleapi.CheckResponse(res); err != nil {
51925		return nil, err
51926	}
51927	ret := &UserRole{
51928		ServerResponse: googleapi.ServerResponse{
51929			Header:         res.Header,
51930			HTTPStatusCode: res.StatusCode,
51931		},
51932	}
51933	target := &ret
51934	if err := gensupport.DecodeResponse(target, res); err != nil {
51935		return nil, err
51936	}
51937	return ret, nil
51938	// {
51939	//   "description": "Updates an existing user role. This method supports patch semantics.",
51940	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRoles",
51941	//   "httpMethod": "PATCH",
51942	//   "id": "dfareporting.userRoles.patch",
51943	//   "parameterOrder": [
51944	//     "profileId",
51945	//     "id"
51946	//   ],
51947	//   "parameters": {
51948	//     "id": {
51949	//       "description": "UserRole ID.",
51950	//       "format": "int64",
51951	//       "location": "query",
51952	//       "required": true,
51953	//       "type": "string"
51954	//     },
51955	//     "profileId": {
51956	//       "description": "User profile ID associated with this request.",
51957	//       "format": "int64",
51958	//       "location": "path",
51959	//       "required": true,
51960	//       "type": "string"
51961	//     }
51962	//   },
51963	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRoles",
51964	//   "request": {
51965	//     "$ref": "UserRole"
51966	//   },
51967	//   "response": {
51968	//     "$ref": "UserRole"
51969	//   },
51970	//   "scopes": [
51971	//     "https://www.googleapis.com/auth/dfatrafficking"
51972	//   ]
51973	// }
51974
51975}
51976
51977// method id "dfareporting.userRoles.update":
51978
51979type UserRolesUpdateCall struct {
51980	s          *Service
51981	profileId  int64
51982	userrole   *UserRole
51983	urlParams_ gensupport.URLParams
51984	ctx_       context.Context
51985	header_    http.Header
51986}
51987
51988// Update: Updates an existing user role.
51989//
51990// - profileId: User profile ID associated with this request.
51991func (r *UserRolesService) Update(profileId int64, userrole *UserRole) *UserRolesUpdateCall {
51992	c := &UserRolesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
51993	c.profileId = profileId
51994	c.userrole = userrole
51995	return c
51996}
51997
51998// Fields allows partial responses to be retrieved. See
51999// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
52000// for more information.
52001func (c *UserRolesUpdateCall) Fields(s ...googleapi.Field) *UserRolesUpdateCall {
52002	c.urlParams_.Set("fields", googleapi.CombineFields(s))
52003	return c
52004}
52005
52006// Context sets the context to be used in this call's Do method. Any
52007// pending HTTP request will be aborted if the provided context is
52008// canceled.
52009func (c *UserRolesUpdateCall) Context(ctx context.Context) *UserRolesUpdateCall {
52010	c.ctx_ = ctx
52011	return c
52012}
52013
52014// Header returns an http.Header that can be modified by the caller to
52015// add HTTP headers to the request.
52016func (c *UserRolesUpdateCall) Header() http.Header {
52017	if c.header_ == nil {
52018		c.header_ = make(http.Header)
52019	}
52020	return c.header_
52021}
52022
52023func (c *UserRolesUpdateCall) doRequest(alt string) (*http.Response, error) {
52024	reqHeaders := make(http.Header)
52025	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
52026	for k, v := range c.header_ {
52027		reqHeaders[k] = v
52028	}
52029	reqHeaders.Set("User-Agent", c.s.userAgent())
52030	var body io.Reader = nil
52031	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userrole)
52032	if err != nil {
52033		return nil, err
52034	}
52035	reqHeaders.Set("Content-Type", "application/json")
52036	c.urlParams_.Set("alt", alt)
52037	c.urlParams_.Set("prettyPrint", "false")
52038	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/userRoles")
52039	urls += "?" + c.urlParams_.Encode()
52040	req, err := http.NewRequest("PUT", urls, body)
52041	if err != nil {
52042		return nil, err
52043	}
52044	req.Header = reqHeaders
52045	googleapi.Expand(req.URL, map[string]string{
52046		"profileId": strconv.FormatInt(c.profileId, 10),
52047	})
52048	return gensupport.SendRequest(c.ctx_, c.s.client, req)
52049}
52050
52051// Do executes the "dfareporting.userRoles.update" call.
52052// Exactly one of *UserRole or error will be non-nil. Any non-2xx status
52053// code is an error. Response headers are in either
52054// *UserRole.ServerResponse.Header or (if a response was returned at
52055// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
52056// to check whether the returned error was because
52057// http.StatusNotModified was returned.
52058func (c *UserRolesUpdateCall) Do(opts ...googleapi.CallOption) (*UserRole, error) {
52059	gensupport.SetOptions(c.urlParams_, opts...)
52060	res, err := c.doRequest("json")
52061	if res != nil && res.StatusCode == http.StatusNotModified {
52062		if res.Body != nil {
52063			res.Body.Close()
52064		}
52065		return nil, &googleapi.Error{
52066			Code:   res.StatusCode,
52067			Header: res.Header,
52068		}
52069	}
52070	if err != nil {
52071		return nil, err
52072	}
52073	defer googleapi.CloseBody(res)
52074	if err := googleapi.CheckResponse(res); err != nil {
52075		return nil, err
52076	}
52077	ret := &UserRole{
52078		ServerResponse: googleapi.ServerResponse{
52079			Header:         res.Header,
52080			HTTPStatusCode: res.StatusCode,
52081		},
52082	}
52083	target := &ret
52084	if err := gensupport.DecodeResponse(target, res); err != nil {
52085		return nil, err
52086	}
52087	return ret, nil
52088	// {
52089	//   "description": "Updates an existing user role.",
52090	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/userRoles",
52091	//   "httpMethod": "PUT",
52092	//   "id": "dfareporting.userRoles.update",
52093	//   "parameterOrder": [
52094	//     "profileId"
52095	//   ],
52096	//   "parameters": {
52097	//     "profileId": {
52098	//       "description": "User profile ID associated with this request.",
52099	//       "format": "int64",
52100	//       "location": "path",
52101	//       "required": true,
52102	//       "type": "string"
52103	//     }
52104	//   },
52105	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/userRoles",
52106	//   "request": {
52107	//     "$ref": "UserRole"
52108	//   },
52109	//   "response": {
52110	//     "$ref": "UserRole"
52111	//   },
52112	//   "scopes": [
52113	//     "https://www.googleapis.com/auth/dfatrafficking"
52114	//   ]
52115	// }
52116
52117}
52118
52119// method id "dfareporting.videoFormats.get":
52120
52121type VideoFormatsGetCall struct {
52122	s            *Service
52123	profileId    int64
52124	id           int64
52125	urlParams_   gensupport.URLParams
52126	ifNoneMatch_ string
52127	ctx_         context.Context
52128	header_      http.Header
52129}
52130
52131// Get: Gets one video format by ID.
52132//
52133// - id: Video format ID.
52134// - profileId: User profile ID associated with this request.
52135func (r *VideoFormatsService) Get(profileId int64, id int64) *VideoFormatsGetCall {
52136	c := &VideoFormatsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
52137	c.profileId = profileId
52138	c.id = id
52139	return c
52140}
52141
52142// Fields allows partial responses to be retrieved. See
52143// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
52144// for more information.
52145func (c *VideoFormatsGetCall) Fields(s ...googleapi.Field) *VideoFormatsGetCall {
52146	c.urlParams_.Set("fields", googleapi.CombineFields(s))
52147	return c
52148}
52149
52150// IfNoneMatch sets the optional parameter which makes the operation
52151// fail if the object's ETag matches the given value. This is useful for
52152// getting updates only after the object has changed since the last
52153// request. Use googleapi.IsNotModified to check whether the response
52154// error from Do is the result of In-None-Match.
52155func (c *VideoFormatsGetCall) IfNoneMatch(entityTag string) *VideoFormatsGetCall {
52156	c.ifNoneMatch_ = entityTag
52157	return c
52158}
52159
52160// Context sets the context to be used in this call's Do method. Any
52161// pending HTTP request will be aborted if the provided context is
52162// canceled.
52163func (c *VideoFormatsGetCall) Context(ctx context.Context) *VideoFormatsGetCall {
52164	c.ctx_ = ctx
52165	return c
52166}
52167
52168// Header returns an http.Header that can be modified by the caller to
52169// add HTTP headers to the request.
52170func (c *VideoFormatsGetCall) Header() http.Header {
52171	if c.header_ == nil {
52172		c.header_ = make(http.Header)
52173	}
52174	return c.header_
52175}
52176
52177func (c *VideoFormatsGetCall) doRequest(alt string) (*http.Response, error) {
52178	reqHeaders := make(http.Header)
52179	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
52180	for k, v := range c.header_ {
52181		reqHeaders[k] = v
52182	}
52183	reqHeaders.Set("User-Agent", c.s.userAgent())
52184	if c.ifNoneMatch_ != "" {
52185		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
52186	}
52187	var body io.Reader = nil
52188	c.urlParams_.Set("alt", alt)
52189	c.urlParams_.Set("prettyPrint", "false")
52190	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/videoFormats/{id}")
52191	urls += "?" + c.urlParams_.Encode()
52192	req, err := http.NewRequest("GET", urls, body)
52193	if err != nil {
52194		return nil, err
52195	}
52196	req.Header = reqHeaders
52197	googleapi.Expand(req.URL, map[string]string{
52198		"profileId": strconv.FormatInt(c.profileId, 10),
52199		"id":        strconv.FormatInt(c.id, 10),
52200	})
52201	return gensupport.SendRequest(c.ctx_, c.s.client, req)
52202}
52203
52204// Do executes the "dfareporting.videoFormats.get" call.
52205// Exactly one of *VideoFormat or error will be non-nil. Any non-2xx
52206// status code is an error. Response headers are in either
52207// *VideoFormat.ServerResponse.Header or (if a response was returned at
52208// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
52209// to check whether the returned error was because
52210// http.StatusNotModified was returned.
52211func (c *VideoFormatsGetCall) Do(opts ...googleapi.CallOption) (*VideoFormat, error) {
52212	gensupport.SetOptions(c.urlParams_, opts...)
52213	res, err := c.doRequest("json")
52214	if res != nil && res.StatusCode == http.StatusNotModified {
52215		if res.Body != nil {
52216			res.Body.Close()
52217		}
52218		return nil, &googleapi.Error{
52219			Code:   res.StatusCode,
52220			Header: res.Header,
52221		}
52222	}
52223	if err != nil {
52224		return nil, err
52225	}
52226	defer googleapi.CloseBody(res)
52227	if err := googleapi.CheckResponse(res); err != nil {
52228		return nil, err
52229	}
52230	ret := &VideoFormat{
52231		ServerResponse: googleapi.ServerResponse{
52232			Header:         res.Header,
52233			HTTPStatusCode: res.StatusCode,
52234		},
52235	}
52236	target := &ret
52237	if err := gensupport.DecodeResponse(target, res); err != nil {
52238		return nil, err
52239	}
52240	return ret, nil
52241	// {
52242	//   "description": "Gets one video format by ID.",
52243	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/videoFormats/{id}",
52244	//   "httpMethod": "GET",
52245	//   "id": "dfareporting.videoFormats.get",
52246	//   "parameterOrder": [
52247	//     "profileId",
52248	//     "id"
52249	//   ],
52250	//   "parameters": {
52251	//     "id": {
52252	//       "description": "Video format ID.",
52253	//       "format": "int32",
52254	//       "location": "path",
52255	//       "required": true,
52256	//       "type": "integer"
52257	//     },
52258	//     "profileId": {
52259	//       "description": "User profile ID associated with this request.",
52260	//       "format": "int64",
52261	//       "location": "path",
52262	//       "required": true,
52263	//       "type": "string"
52264	//     }
52265	//   },
52266	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/videoFormats/{id}",
52267	//   "response": {
52268	//     "$ref": "VideoFormat"
52269	//   },
52270	//   "scopes": [
52271	//     "https://www.googleapis.com/auth/dfatrafficking"
52272	//   ]
52273	// }
52274
52275}
52276
52277// method id "dfareporting.videoFormats.list":
52278
52279type VideoFormatsListCall struct {
52280	s            *Service
52281	profileId    int64
52282	urlParams_   gensupport.URLParams
52283	ifNoneMatch_ string
52284	ctx_         context.Context
52285	header_      http.Header
52286}
52287
52288// List: Lists available video formats.
52289//
52290// - profileId: User profile ID associated with this request.
52291func (r *VideoFormatsService) List(profileId int64) *VideoFormatsListCall {
52292	c := &VideoFormatsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
52293	c.profileId = profileId
52294	return c
52295}
52296
52297// Fields allows partial responses to be retrieved. See
52298// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
52299// for more information.
52300func (c *VideoFormatsListCall) Fields(s ...googleapi.Field) *VideoFormatsListCall {
52301	c.urlParams_.Set("fields", googleapi.CombineFields(s))
52302	return c
52303}
52304
52305// IfNoneMatch sets the optional parameter which makes the operation
52306// fail if the object's ETag matches the given value. This is useful for
52307// getting updates only after the object has changed since the last
52308// request. Use googleapi.IsNotModified to check whether the response
52309// error from Do is the result of In-None-Match.
52310func (c *VideoFormatsListCall) IfNoneMatch(entityTag string) *VideoFormatsListCall {
52311	c.ifNoneMatch_ = entityTag
52312	return c
52313}
52314
52315// Context sets the context to be used in this call's Do method. Any
52316// pending HTTP request will be aborted if the provided context is
52317// canceled.
52318func (c *VideoFormatsListCall) Context(ctx context.Context) *VideoFormatsListCall {
52319	c.ctx_ = ctx
52320	return c
52321}
52322
52323// Header returns an http.Header that can be modified by the caller to
52324// add HTTP headers to the request.
52325func (c *VideoFormatsListCall) Header() http.Header {
52326	if c.header_ == nil {
52327		c.header_ = make(http.Header)
52328	}
52329	return c.header_
52330}
52331
52332func (c *VideoFormatsListCall) doRequest(alt string) (*http.Response, error) {
52333	reqHeaders := make(http.Header)
52334	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
52335	for k, v := range c.header_ {
52336		reqHeaders[k] = v
52337	}
52338	reqHeaders.Set("User-Agent", c.s.userAgent())
52339	if c.ifNoneMatch_ != "" {
52340		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
52341	}
52342	var body io.Reader = nil
52343	c.urlParams_.Set("alt", alt)
52344	c.urlParams_.Set("prettyPrint", "false")
52345	urls := googleapi.ResolveRelative(c.s.BasePath, "dfareporting/v3.5/userprofiles/{profileId}/videoFormats")
52346	urls += "?" + c.urlParams_.Encode()
52347	req, err := http.NewRequest("GET", urls, body)
52348	if err != nil {
52349		return nil, err
52350	}
52351	req.Header = reqHeaders
52352	googleapi.Expand(req.URL, map[string]string{
52353		"profileId": strconv.FormatInt(c.profileId, 10),
52354	})
52355	return gensupport.SendRequest(c.ctx_, c.s.client, req)
52356}
52357
52358// Do executes the "dfareporting.videoFormats.list" call.
52359// Exactly one of *VideoFormatsListResponse or error will be non-nil.
52360// Any non-2xx status code is an error. Response headers are in either
52361// *VideoFormatsListResponse.ServerResponse.Header or (if a response was
52362// returned at all) in error.(*googleapi.Error).Header. Use
52363// googleapi.IsNotModified to check whether the returned error was
52364// because http.StatusNotModified was returned.
52365func (c *VideoFormatsListCall) Do(opts ...googleapi.CallOption) (*VideoFormatsListResponse, error) {
52366	gensupport.SetOptions(c.urlParams_, opts...)
52367	res, err := c.doRequest("json")
52368	if res != nil && res.StatusCode == http.StatusNotModified {
52369		if res.Body != nil {
52370			res.Body.Close()
52371		}
52372		return nil, &googleapi.Error{
52373			Code:   res.StatusCode,
52374			Header: res.Header,
52375		}
52376	}
52377	if err != nil {
52378		return nil, err
52379	}
52380	defer googleapi.CloseBody(res)
52381	if err := googleapi.CheckResponse(res); err != nil {
52382		return nil, err
52383	}
52384	ret := &VideoFormatsListResponse{
52385		ServerResponse: googleapi.ServerResponse{
52386			Header:         res.Header,
52387			HTTPStatusCode: res.StatusCode,
52388		},
52389	}
52390	target := &ret
52391	if err := gensupport.DecodeResponse(target, res); err != nil {
52392		return nil, err
52393	}
52394	return ret, nil
52395	// {
52396	//   "description": "Lists available video formats.",
52397	//   "flatPath": "dfareporting/v3.5/userprofiles/{profileId}/videoFormats",
52398	//   "httpMethod": "GET",
52399	//   "id": "dfareporting.videoFormats.list",
52400	//   "parameterOrder": [
52401	//     "profileId"
52402	//   ],
52403	//   "parameters": {
52404	//     "profileId": {
52405	//       "description": "User profile ID associated with this request.",
52406	//       "format": "int64",
52407	//       "location": "path",
52408	//       "required": true,
52409	//       "type": "string"
52410	//     }
52411	//   },
52412	//   "path": "dfareporting/v3.5/userprofiles/{profileId}/videoFormats",
52413	//   "response": {
52414	//     "$ref": "VideoFormatsListResponse"
52415	//   },
52416	//   "scopes": [
52417	//     "https://www.googleapis.com/auth/dfatrafficking"
52418	//   ]
52419	// }
52420
52421}
52422