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 content provides access to the Content API for Shopping.
8//
9// For product documentation, see: https://developers.google.com/shopping-content/v2/
10//
11// Creating a client
12//
13// Usage example:
14//
15//   import "google.golang.org/api/content/v2.1"
16//   ...
17//   ctx := context.Background()
18//   contentService, err := content.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// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
27//
28//   contentService, err := content.NewService(ctx, option.WithAPIKey("AIza..."))
29//
30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
31//
32//   config := &oauth2.Config{...}
33//   // ...
34//   token, err := config.Exchange(ctx, ...)
35//   contentService, err := content.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
36//
37// See https://godoc.org/google.golang.org/api/option/ for details on options.
38package content // import "google.golang.org/api/content/v2.1"
39
40import (
41	"bytes"
42	"context"
43	"encoding/json"
44	"errors"
45	"fmt"
46	"io"
47	"net/http"
48	"net/url"
49	"strconv"
50	"strings"
51
52	googleapi "google.golang.org/api/googleapi"
53	gensupport "google.golang.org/api/internal/gensupport"
54	option "google.golang.org/api/option"
55	internaloption "google.golang.org/api/option/internaloption"
56	htransport "google.golang.org/api/transport/http"
57)
58
59// Always reference these packages, just in case the auto-generated code
60// below doesn't.
61var _ = bytes.NewBuffer
62var _ = strconv.Itoa
63var _ = fmt.Sprintf
64var _ = json.NewDecoder
65var _ = io.Copy
66var _ = url.Parse
67var _ = gensupport.MarshalJSON
68var _ = googleapi.Version
69var _ = errors.New
70var _ = strings.Replace
71var _ = context.Canceled
72var _ = internaloption.WithDefaultEndpoint
73
74const apiId = "content:v2.1"
75const apiName = "content"
76const apiVersion = "v2.1"
77const basePath = "https://shoppingcontent.googleapis.com/content/v2.1/"
78const mtlsBasePath = "https://shoppingcontent.mtls.googleapis.com/content/v2.1/"
79
80// OAuth2 scopes used by this API.
81const (
82	// Manage your product listings and accounts for Google Shopping
83	ContentScope = "https://www.googleapis.com/auth/content"
84)
85
86// NewService creates a new APIService.
87func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
88	scopesOption := option.WithScopes(
89		"https://www.googleapis.com/auth/content",
90	)
91	// NOTE: prepend, so we don't override user-specified scopes.
92	opts = append([]option.ClientOption{scopesOption}, opts...)
93	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
94	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
95	client, endpoint, err := htransport.NewClient(ctx, opts...)
96	if err != nil {
97		return nil, err
98	}
99	s, err := New(client)
100	if err != nil {
101		return nil, err
102	}
103	if endpoint != "" {
104		s.BasePath = endpoint
105	}
106	return s, nil
107}
108
109// New creates a new APIService. It uses the provided http.Client for requests.
110//
111// Deprecated: please use NewService instead.
112// To provide a custom HTTP client, use option.WithHTTPClient.
113// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
114func New(client *http.Client) (*APIService, error) {
115	if client == nil {
116		return nil, errors.New("client is nil")
117	}
118	s := &APIService{client: client, BasePath: basePath}
119	s.Accounts = NewAccountsService(s)
120	s.Accountstatuses = NewAccountstatusesService(s)
121	s.Accounttax = NewAccounttaxService(s)
122	s.Buyongoogleprograms = NewBuyongoogleprogramsService(s)
123	s.Collections = NewCollectionsService(s)
124	s.Collectionstatuses = NewCollectionstatusesService(s)
125	s.Csses = NewCssesService(s)
126	s.Datafeeds = NewDatafeedsService(s)
127	s.Datafeedstatuses = NewDatafeedstatusesService(s)
128	s.Freelistingsprogram = NewFreelistingsprogramService(s)
129	s.Liasettings = NewLiasettingsService(s)
130	s.Localinventory = NewLocalinventoryService(s)
131	s.Orderinvoices = NewOrderinvoicesService(s)
132	s.Orderreports = NewOrderreportsService(s)
133	s.Orderreturns = NewOrderreturnsService(s)
134	s.Orders = NewOrdersService(s)
135	s.Ordertrackingsignals = NewOrdertrackingsignalsService(s)
136	s.Pos = NewPosService(s)
137	s.Products = NewProductsService(s)
138	s.Productstatuses = NewProductstatusesService(s)
139	s.Promotions = NewPromotionsService(s)
140	s.Pubsubnotificationsettings = NewPubsubnotificationsettingsService(s)
141	s.Regionalinventory = NewRegionalinventoryService(s)
142	s.Regions = NewRegionsService(s)
143	s.Reports = NewReportsService(s)
144	s.Repricingrules = NewRepricingrulesService(s)
145	s.Returnaddress = NewReturnaddressService(s)
146	s.Returnpolicy = NewReturnpolicyService(s)
147	s.Returnpolicyonline = NewReturnpolicyonlineService(s)
148	s.Settlementreports = NewSettlementreportsService(s)
149	s.Settlementtransactions = NewSettlementtransactionsService(s)
150	s.Shippingsettings = NewShippingsettingsService(s)
151	s.Shoppingadsprogram = NewShoppingadsprogramService(s)
152	return s, nil
153}
154
155type APIService struct {
156	client    *http.Client
157	BasePath  string // API endpoint base URL
158	UserAgent string // optional additional User-Agent fragment
159
160	Accounts *AccountsService
161
162	Accountstatuses *AccountstatusesService
163
164	Accounttax *AccounttaxService
165
166	Buyongoogleprograms *BuyongoogleprogramsService
167
168	Collections *CollectionsService
169
170	Collectionstatuses *CollectionstatusesService
171
172	Csses *CssesService
173
174	Datafeeds *DatafeedsService
175
176	Datafeedstatuses *DatafeedstatusesService
177
178	Freelistingsprogram *FreelistingsprogramService
179
180	Liasettings *LiasettingsService
181
182	Localinventory *LocalinventoryService
183
184	Orderinvoices *OrderinvoicesService
185
186	Orderreports *OrderreportsService
187
188	Orderreturns *OrderreturnsService
189
190	Orders *OrdersService
191
192	Ordertrackingsignals *OrdertrackingsignalsService
193
194	Pos *PosService
195
196	Products *ProductsService
197
198	Productstatuses *ProductstatusesService
199
200	Promotions *PromotionsService
201
202	Pubsubnotificationsettings *PubsubnotificationsettingsService
203
204	Regionalinventory *RegionalinventoryService
205
206	Regions *RegionsService
207
208	Reports *ReportsService
209
210	Repricingrules *RepricingrulesService
211
212	Returnaddress *ReturnaddressService
213
214	Returnpolicy *ReturnpolicyService
215
216	Returnpolicyonline *ReturnpolicyonlineService
217
218	Settlementreports *SettlementreportsService
219
220	Settlementtransactions *SettlementtransactionsService
221
222	Shippingsettings *ShippingsettingsService
223
224	Shoppingadsprogram *ShoppingadsprogramService
225}
226
227func (s *APIService) userAgent() string {
228	if s.UserAgent == "" {
229		return googleapi.UserAgent
230	}
231	return googleapi.UserAgent + " " + s.UserAgent
232}
233
234func NewAccountsService(s *APIService) *AccountsService {
235	rs := &AccountsService{s: s}
236	rs.Credentials = NewAccountsCredentialsService(s)
237	rs.Labels = NewAccountsLabelsService(s)
238	rs.Returncarrier = NewAccountsReturncarrierService(s)
239	return rs
240}
241
242type AccountsService struct {
243	s *APIService
244
245	Credentials *AccountsCredentialsService
246
247	Labels *AccountsLabelsService
248
249	Returncarrier *AccountsReturncarrierService
250}
251
252func NewAccountsCredentialsService(s *APIService) *AccountsCredentialsService {
253	rs := &AccountsCredentialsService{s: s}
254	return rs
255}
256
257type AccountsCredentialsService struct {
258	s *APIService
259}
260
261func NewAccountsLabelsService(s *APIService) *AccountsLabelsService {
262	rs := &AccountsLabelsService{s: s}
263	return rs
264}
265
266type AccountsLabelsService struct {
267	s *APIService
268}
269
270func NewAccountsReturncarrierService(s *APIService) *AccountsReturncarrierService {
271	rs := &AccountsReturncarrierService{s: s}
272	return rs
273}
274
275type AccountsReturncarrierService struct {
276	s *APIService
277}
278
279func NewAccountstatusesService(s *APIService) *AccountstatusesService {
280	rs := &AccountstatusesService{s: s}
281	return rs
282}
283
284type AccountstatusesService struct {
285	s *APIService
286}
287
288func NewAccounttaxService(s *APIService) *AccounttaxService {
289	rs := &AccounttaxService{s: s}
290	return rs
291}
292
293type AccounttaxService struct {
294	s *APIService
295}
296
297func NewBuyongoogleprogramsService(s *APIService) *BuyongoogleprogramsService {
298	rs := &BuyongoogleprogramsService{s: s}
299	return rs
300}
301
302type BuyongoogleprogramsService struct {
303	s *APIService
304}
305
306func NewCollectionsService(s *APIService) *CollectionsService {
307	rs := &CollectionsService{s: s}
308	return rs
309}
310
311type CollectionsService struct {
312	s *APIService
313}
314
315func NewCollectionstatusesService(s *APIService) *CollectionstatusesService {
316	rs := &CollectionstatusesService{s: s}
317	return rs
318}
319
320type CollectionstatusesService struct {
321	s *APIService
322}
323
324func NewCssesService(s *APIService) *CssesService {
325	rs := &CssesService{s: s}
326	return rs
327}
328
329type CssesService struct {
330	s *APIService
331}
332
333func NewDatafeedsService(s *APIService) *DatafeedsService {
334	rs := &DatafeedsService{s: s}
335	return rs
336}
337
338type DatafeedsService struct {
339	s *APIService
340}
341
342func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
343	rs := &DatafeedstatusesService{s: s}
344	return rs
345}
346
347type DatafeedstatusesService struct {
348	s *APIService
349}
350
351func NewFreelistingsprogramService(s *APIService) *FreelistingsprogramService {
352	rs := &FreelistingsprogramService{s: s}
353	return rs
354}
355
356type FreelistingsprogramService struct {
357	s *APIService
358}
359
360func NewLiasettingsService(s *APIService) *LiasettingsService {
361	rs := &LiasettingsService{s: s}
362	return rs
363}
364
365type LiasettingsService struct {
366	s *APIService
367}
368
369func NewLocalinventoryService(s *APIService) *LocalinventoryService {
370	rs := &LocalinventoryService{s: s}
371	return rs
372}
373
374type LocalinventoryService struct {
375	s *APIService
376}
377
378func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
379	rs := &OrderinvoicesService{s: s}
380	return rs
381}
382
383type OrderinvoicesService struct {
384	s *APIService
385}
386
387func NewOrderreportsService(s *APIService) *OrderreportsService {
388	rs := &OrderreportsService{s: s}
389	return rs
390}
391
392type OrderreportsService struct {
393	s *APIService
394}
395
396func NewOrderreturnsService(s *APIService) *OrderreturnsService {
397	rs := &OrderreturnsService{s: s}
398	rs.Labels = NewOrderreturnsLabelsService(s)
399	return rs
400}
401
402type OrderreturnsService struct {
403	s *APIService
404
405	Labels *OrderreturnsLabelsService
406}
407
408func NewOrderreturnsLabelsService(s *APIService) *OrderreturnsLabelsService {
409	rs := &OrderreturnsLabelsService{s: s}
410	return rs
411}
412
413type OrderreturnsLabelsService struct {
414	s *APIService
415}
416
417func NewOrdersService(s *APIService) *OrdersService {
418	rs := &OrdersService{s: s}
419	return rs
420}
421
422type OrdersService struct {
423	s *APIService
424}
425
426func NewOrdertrackingsignalsService(s *APIService) *OrdertrackingsignalsService {
427	rs := &OrdertrackingsignalsService{s: s}
428	return rs
429}
430
431type OrdertrackingsignalsService struct {
432	s *APIService
433}
434
435func NewPosService(s *APIService) *PosService {
436	rs := &PosService{s: s}
437	return rs
438}
439
440type PosService struct {
441	s *APIService
442}
443
444func NewProductsService(s *APIService) *ProductsService {
445	rs := &ProductsService{s: s}
446	return rs
447}
448
449type ProductsService struct {
450	s *APIService
451}
452
453func NewProductstatusesService(s *APIService) *ProductstatusesService {
454	rs := &ProductstatusesService{s: s}
455	rs.Repricingreports = NewProductstatusesRepricingreportsService(s)
456	return rs
457}
458
459type ProductstatusesService struct {
460	s *APIService
461
462	Repricingreports *ProductstatusesRepricingreportsService
463}
464
465func NewProductstatusesRepricingreportsService(s *APIService) *ProductstatusesRepricingreportsService {
466	rs := &ProductstatusesRepricingreportsService{s: s}
467	return rs
468}
469
470type ProductstatusesRepricingreportsService struct {
471	s *APIService
472}
473
474func NewPromotionsService(s *APIService) *PromotionsService {
475	rs := &PromotionsService{s: s}
476	return rs
477}
478
479type PromotionsService struct {
480	s *APIService
481}
482
483func NewPubsubnotificationsettingsService(s *APIService) *PubsubnotificationsettingsService {
484	rs := &PubsubnotificationsettingsService{s: s}
485	return rs
486}
487
488type PubsubnotificationsettingsService struct {
489	s *APIService
490}
491
492func NewRegionalinventoryService(s *APIService) *RegionalinventoryService {
493	rs := &RegionalinventoryService{s: s}
494	return rs
495}
496
497type RegionalinventoryService struct {
498	s *APIService
499}
500
501func NewRegionsService(s *APIService) *RegionsService {
502	rs := &RegionsService{s: s}
503	return rs
504}
505
506type RegionsService struct {
507	s *APIService
508}
509
510func NewReportsService(s *APIService) *ReportsService {
511	rs := &ReportsService{s: s}
512	return rs
513}
514
515type ReportsService struct {
516	s *APIService
517}
518
519func NewRepricingrulesService(s *APIService) *RepricingrulesService {
520	rs := &RepricingrulesService{s: s}
521	rs.Repricingreports = NewRepricingrulesRepricingreportsService(s)
522	return rs
523}
524
525type RepricingrulesService struct {
526	s *APIService
527
528	Repricingreports *RepricingrulesRepricingreportsService
529}
530
531func NewRepricingrulesRepricingreportsService(s *APIService) *RepricingrulesRepricingreportsService {
532	rs := &RepricingrulesRepricingreportsService{s: s}
533	return rs
534}
535
536type RepricingrulesRepricingreportsService struct {
537	s *APIService
538}
539
540func NewReturnaddressService(s *APIService) *ReturnaddressService {
541	rs := &ReturnaddressService{s: s}
542	return rs
543}
544
545type ReturnaddressService struct {
546	s *APIService
547}
548
549func NewReturnpolicyService(s *APIService) *ReturnpolicyService {
550	rs := &ReturnpolicyService{s: s}
551	return rs
552}
553
554type ReturnpolicyService struct {
555	s *APIService
556}
557
558func NewReturnpolicyonlineService(s *APIService) *ReturnpolicyonlineService {
559	rs := &ReturnpolicyonlineService{s: s}
560	return rs
561}
562
563type ReturnpolicyonlineService struct {
564	s *APIService
565}
566
567func NewSettlementreportsService(s *APIService) *SettlementreportsService {
568	rs := &SettlementreportsService{s: s}
569	return rs
570}
571
572type SettlementreportsService struct {
573	s *APIService
574}
575
576func NewSettlementtransactionsService(s *APIService) *SettlementtransactionsService {
577	rs := &SettlementtransactionsService{s: s}
578	return rs
579}
580
581type SettlementtransactionsService struct {
582	s *APIService
583}
584
585func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
586	rs := &ShippingsettingsService{s: s}
587	return rs
588}
589
590type ShippingsettingsService struct {
591	s *APIService
592}
593
594func NewShoppingadsprogramService(s *APIService) *ShoppingadsprogramService {
595	rs := &ShoppingadsprogramService{s: s}
596	return rs
597}
598
599type ShoppingadsprogramService struct {
600	s *APIService
601}
602
603// Account: Account data. After the creation of a new account it may
604// take a few minutes before it is fully operational. The methods
605// delete, insert, and update require the admin role.
606type Account struct {
607	// AccountManagement: Output only. How the account is managed.
608	// Acceptable values are: - "manual" - "automatic"
609	AccountManagement string `json:"accountManagement,omitempty"`
610
611	// AdsLinks: Linked Ads accounts that are active or pending approval. To
612	// create a new link request, add a new link with status `active` to the
613	// list. It will remain in a `pending` state until approved or rejected
614	// either in the Ads interface or through the AdWords API. To delete an
615	// active link, or to cancel a link request, remove it from the list.
616	AdsLinks []*AccountAdsLink `json:"adsLinks,omitempty"`
617
618	// AdultContent: Indicates whether the merchant sells adult content.
619	AdultContent bool `json:"adultContent,omitempty"`
620
621	// AutomaticLabelIds: Automatically created label IDs that are assigned
622	// to the account by CSS Center.
623	AutomaticLabelIds googleapi.Uint64s `json:"automaticLabelIds,omitempty"`
624
625	// BusinessInformation: The business information of the account.
626	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
627
628	// CssId: ID of CSS the account belongs to.
629	CssId uint64 `json:"cssId,omitempty,string"`
630
631	// GoogleMyBusinessLink: The GMB account which is linked or in the
632	// process of being linked with the Merchant Center account.
633	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
634
635	// Id: Required for update. Merchant Center account ID.
636	Id uint64 `json:"id,omitempty,string"`
637
638	// Kind: Identifies what kind of resource this is. Value: the fixed
639	// string "content#account".
640	Kind string `json:"kind,omitempty"`
641
642	// LabelIds: Manually created label IDs that are assigned to the account
643	// by CSS.
644	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
645
646	// Name: Required. Display name for the account.
647	Name string `json:"name,omitempty"`
648
649	// SellerId: Client-specific, locally-unique, internal ID for the child
650	// account.
651	SellerId string `json:"sellerId,omitempty"`
652
653	// Users: Users with access to the account. Every account (except for
654	// subaccounts) must have at least one admin user.
655	Users []*AccountUser `json:"users,omitempty"`
656
657	// WebsiteUrl: The merchant's website.
658	WebsiteUrl string `json:"websiteUrl,omitempty"`
659
660	// YoutubeChannelLinks: Linked YouTube channels that are active or
661	// pending approval. To create a new link request, add a new link with
662	// status `active` to the list. It will remain in a `pending` state
663	// until approved or rejected in the YT Creator Studio interface. To
664	// delete an active link, or to cancel a link request, remove it from
665	// the list.
666	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
667
668	// ServerResponse contains the HTTP response code and headers from the
669	// server.
670	googleapi.ServerResponse `json:"-"`
671
672	// ForceSendFields is a list of field names (e.g. "AccountManagement")
673	// to unconditionally include in API requests. By default, fields with
674	// empty or default values are omitted from API requests. However, any
675	// non-pointer, non-interface field appearing in ForceSendFields will be
676	// sent to the server regardless of whether the field is empty or not.
677	// This may be used to include empty fields in Patch requests.
678	ForceSendFields []string `json:"-"`
679
680	// NullFields is a list of field names (e.g. "AccountManagement") to
681	// include in API requests with the JSON null value. By default, fields
682	// with empty values are omitted from API requests. However, any field
683	// with an empty value appearing in NullFields will be sent to the
684	// server as null. It is an error if a field in this list has a
685	// non-empty value. This may be used to include null fields in Patch
686	// requests.
687	NullFields []string `json:"-"`
688}
689
690func (s *Account) MarshalJSON() ([]byte, error) {
691	type NoMethod Account
692	raw := NoMethod(*s)
693	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
694}
695
696type AccountAddress struct {
697	// Country: CLDR country code (e.g. "US"). All MCA sub-accounts inherit
698	// the country of their parent MCA by default, however the country can
699	// be updated for individual sub-accounts.
700	Country string `json:"country,omitempty"`
701
702	// Locality: City, town or commune. May also include dependent
703	// localities or sublocalities (e.g. neighborhoods or suburbs).
704	Locality string `json:"locality,omitempty"`
705
706	// PostalCode: Postal code or ZIP (e.g. "94043").
707	PostalCode string `json:"postalCode,omitempty"`
708
709	// Region: Top-level administrative subdivision of the country. For
710	// example, a state like California ("CA") or a province like Quebec
711	// ("QC").
712	Region string `json:"region,omitempty"`
713
714	// StreetAddress: Street-level part of the address.
715	StreetAddress string `json:"streetAddress,omitempty"`
716
717	// ForceSendFields is a list of field names (e.g. "Country") to
718	// unconditionally include in API requests. By default, fields with
719	// empty or default values are omitted from API requests. However, any
720	// non-pointer, non-interface field appearing in ForceSendFields will be
721	// sent to the server regardless of whether the field is empty or not.
722	// This may be used to include empty fields in Patch requests.
723	ForceSendFields []string `json:"-"`
724
725	// NullFields is a list of field names (e.g. "Country") to include in
726	// API requests with the JSON null value. By default, fields with empty
727	// values are omitted from API requests. However, any field with an
728	// empty value appearing in NullFields will be sent to the server as
729	// null. It is an error if a field in this list has a non-empty value.
730	// This may be used to include null fields in Patch requests.
731	NullFields []string `json:"-"`
732}
733
734func (s *AccountAddress) MarshalJSON() ([]byte, error) {
735	type NoMethod AccountAddress
736	raw := NoMethod(*s)
737	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
738}
739
740type AccountAdsLink struct {
741	// AdsId: Customer ID of the Ads account.
742	AdsId uint64 `json:"adsId,omitempty,string"`
743
744	// Status: Status of the link between this Merchant Center account and
745	// the Ads account. Upon retrieval, it represents the actual status of
746	// the link and can be either `active` if it was approved in Google Ads
747	// or `pending` if it's pending approval. Upon insertion, it represents
748	// the *intended* status of the link. Re-uploading a link with status
749	// `active` when it's still pending or with status `pending` when it's
750	// already active will have no effect: the status will remain unchanged.
751	// Re-uploading a link with deprecated status `inactive` is equivalent
752	// to not submitting the link at all and will delete the link if it was
753	// active or cancel the link request if it was pending. Acceptable
754	// values are: - "active" - "pending"
755	Status string `json:"status,omitempty"`
756
757	// ForceSendFields is a list of field names (e.g. "AdsId") to
758	// unconditionally include in API requests. By default, fields with
759	// empty or default values are omitted from API requests. However, any
760	// non-pointer, non-interface field appearing in ForceSendFields will be
761	// sent to the server regardless of whether the field is empty or not.
762	// This may be used to include empty fields in Patch requests.
763	ForceSendFields []string `json:"-"`
764
765	// NullFields is a list of field names (e.g. "AdsId") to include in API
766	// requests with the JSON null value. By default, fields with empty
767	// values are omitted from API requests. However, any field with an
768	// empty value appearing in NullFields will be sent to the server as
769	// null. It is an error if a field in this list has a non-empty value.
770	// This may be used to include null fields in Patch requests.
771	NullFields []string `json:"-"`
772}
773
774func (s *AccountAdsLink) MarshalJSON() ([]byte, error) {
775	type NoMethod AccountAdsLink
776	raw := NoMethod(*s)
777	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
778}
779
780type AccountBusinessInformation struct {
781	// Address: The address of the business.
782	Address *AccountAddress `json:"address,omitempty"`
783
784	// CustomerService: The customer service information of the business.
785	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
786
787	// KoreanBusinessRegistrationNumber: The 10-digit Korean business
788	// registration number
789	// (https://support.google.com/merchants/answer/9037766) separated with
790	// dashes in the format: XXX-XX-XXXXX. This field will only be updated
791	// if explicitly set.
792	KoreanBusinessRegistrationNumber string `json:"koreanBusinessRegistrationNumber,omitempty"`
793
794	// PhoneNumber: The phone number of the business.
795	PhoneNumber string `json:"phoneNumber,omitempty"`
796
797	// ForceSendFields is a list of field names (e.g. "Address") to
798	// unconditionally include in API requests. By default, fields with
799	// empty or default values are omitted from API requests. However, any
800	// non-pointer, non-interface field appearing in ForceSendFields will be
801	// sent to the server regardless of whether the field is empty or not.
802	// This may be used to include empty fields in Patch requests.
803	ForceSendFields []string `json:"-"`
804
805	// NullFields is a list of field names (e.g. "Address") to include in
806	// API requests with the JSON null value. By default, fields with empty
807	// values are omitted from API requests. However, any field with an
808	// empty value appearing in NullFields will be sent to the server as
809	// null. It is an error if a field in this list has a non-empty value.
810	// This may be used to include null fields in Patch requests.
811	NullFields []string `json:"-"`
812}
813
814func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
815	type NoMethod AccountBusinessInformation
816	raw := NoMethod(*s)
817	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
818}
819
820// AccountCredentials: Credentials allowing Google to call a partner's
821// API on behalf of a merchant.
822type AccountCredentials struct {
823	// AccessToken: An OAuth access token.
824	AccessToken string `json:"accessToken,omitempty"`
825
826	// ExpiresIn: The amount of time, in seconds, after which the access
827	// token is no longer valid.
828	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
829
830	// Purpose: Indicates to Google how Google should use these OAuth
831	// tokens.
832	//
833	// Possible values:
834	//   "ACCOUNT_CREDENTIALS_PURPOSE_UNSPECIFIED" - Unknown purpose.
835	//   "SHOPIFY_ORDER_MANAGEMENT" - The credentials allow Google to manage
836	// Shopify orders on behalf of the merchant (deprecated).
837	//   "SHOPIFY_INTEGRATION" - The credentials allow Google to manage
838	// Shopify integration on behalf of the merchant.
839	Purpose string `json:"purpose,omitempty"`
840
841	// ServerResponse contains the HTTP response code and headers from the
842	// server.
843	googleapi.ServerResponse `json:"-"`
844
845	// ForceSendFields is a list of field names (e.g. "AccessToken") to
846	// unconditionally include in API requests. By default, fields with
847	// empty or default values are omitted from API requests. However, any
848	// non-pointer, non-interface field appearing in ForceSendFields will be
849	// sent to the server regardless of whether the field is empty or not.
850	// This may be used to include empty fields in Patch requests.
851	ForceSendFields []string `json:"-"`
852
853	// NullFields is a list of field names (e.g. "AccessToken") to include
854	// in API requests with the JSON null value. By default, fields with
855	// empty values are omitted from API requests. However, any field with
856	// an empty value appearing in NullFields will be sent to the server as
857	// null. It is an error if a field in this list has a non-empty value.
858	// This may be used to include null fields in Patch requests.
859	NullFields []string `json:"-"`
860}
861
862func (s *AccountCredentials) MarshalJSON() ([]byte, error) {
863	type NoMethod AccountCredentials
864	raw := NoMethod(*s)
865	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
866}
867
868type AccountCustomerService struct {
869	// Email: Customer service email.
870	Email string `json:"email,omitempty"`
871
872	// PhoneNumber: Customer service phone number.
873	PhoneNumber string `json:"phoneNumber,omitempty"`
874
875	// Url: Customer service URL.
876	Url string `json:"url,omitempty"`
877
878	// ForceSendFields is a list of field names (e.g. "Email") to
879	// unconditionally include in API requests. By default, fields with
880	// empty or default values are omitted from API requests. However, any
881	// non-pointer, non-interface field appearing in ForceSendFields will be
882	// sent to the server regardless of whether the field is empty or not.
883	// This may be used to include empty fields in Patch requests.
884	ForceSendFields []string `json:"-"`
885
886	// NullFields is a list of field names (e.g. "Email") to include in API
887	// requests with the JSON null value. By default, fields with empty
888	// values are omitted from API requests. However, any field with an
889	// empty value appearing in NullFields will be sent to the server as
890	// null. It is an error if a field in this list has a non-empty value.
891	// This may be used to include null fields in Patch requests.
892	NullFields []string `json:"-"`
893}
894
895func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
896	type NoMethod AccountCustomerService
897	raw := NoMethod(*s)
898	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
899}
900
901type AccountGoogleMyBusinessLink struct {
902	// GmbAccountId: The ID of the GMB account. If this is provided, then
903	// `gmbEmail` is ignored. The value of this field should match the
904	// `accountId` used by the GMB API.
905	GmbAccountId string `json:"gmbAccountId,omitempty"`
906
907	// GmbEmail: The GMB email address of which a specific account within a
908	// GMB account. A sample account within a GMB account could be a
909	// business account with set of locations, managed under the GMB
910	// account.
911	GmbEmail string `json:"gmbEmail,omitempty"`
912
913	// Status: Status of the link between this Merchant Center account and
914	// the GMB account. Acceptable values are: - "active" - "pending"
915	Status string `json:"status,omitempty"`
916
917	// ForceSendFields is a list of field names (e.g. "GmbAccountId") to
918	// unconditionally include in API requests. By default, fields with
919	// empty or default values are omitted from API requests. However, any
920	// non-pointer, non-interface field appearing in ForceSendFields will be
921	// sent to the server regardless of whether the field is empty or not.
922	// This may be used to include empty fields in Patch requests.
923	ForceSendFields []string `json:"-"`
924
925	// NullFields is a list of field names (e.g. "GmbAccountId") to include
926	// in API requests with the JSON null value. By default, fields with
927	// empty values are omitted from API requests. However, any field with
928	// an empty value appearing in NullFields will be sent to the server as
929	// null. It is an error if a field in this list has a non-empty value.
930	// This may be used to include null fields in Patch requests.
931	NullFields []string `json:"-"`
932}
933
934func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
935	type NoMethod AccountGoogleMyBusinessLink
936	raw := NoMethod(*s)
937	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
938}
939
940type AccountIdentifier struct {
941	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
942	// (in that case, it represents the aggregator of the subaccount).
943	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
944
945	// MerchantId: The merchant account ID, set for individual accounts and
946	// subaccounts.
947	MerchantId uint64 `json:"merchantId,omitempty,string"`
948
949	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
950	// unconditionally include in API requests. By default, fields with
951	// empty or default values are omitted from API requests. However, any
952	// non-pointer, non-interface field appearing in ForceSendFields will be
953	// sent to the server regardless of whether the field is empty or not.
954	// This may be used to include empty fields in Patch requests.
955	ForceSendFields []string `json:"-"`
956
957	// NullFields is a list of field names (e.g. "AggregatorId") to include
958	// in API requests with the JSON null value. By default, fields with
959	// empty values are omitted from API requests. However, any field with
960	// an empty value appearing in NullFields will be sent to the server as
961	// null. It is an error if a field in this list has a non-empty value.
962	// This may be used to include null fields in Patch requests.
963	NullFields []string `json:"-"`
964}
965
966func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
967	type NoMethod AccountIdentifier
968	raw := NoMethod(*s)
969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
970}
971
972// AccountLabel: Label assigned by CSS domain or CSS group to one of its
973// sub-accounts.
974type AccountLabel struct {
975	// AccountId: Immutable. The ID of account this label belongs to.
976	AccountId int64 `json:"accountId,omitempty,string"`
977
978	// Description: The description of this label.
979	Description string `json:"description,omitempty"`
980
981	// LabelId: Output only. The ID of the label.
982	LabelId int64 `json:"labelId,omitempty,string"`
983
984	// LabelType: Output only. The type of this label.
985	//
986	// Possible values:
987	//   "LABEL_TYPE_UNSPECIFIED" - Unknown label type.
988	//   "MANUAL" - Indicates that the label was created manually.
989	//   "AUTOMATIC" - Indicates that the label was created automatically by
990	// CSS Center.
991	LabelType string `json:"labelType,omitempty"`
992
993	// Name: The display name of this label.
994	Name string `json:"name,omitempty"`
995
996	// ServerResponse contains the HTTP response code and headers from the
997	// server.
998	googleapi.ServerResponse `json:"-"`
999
1000	// ForceSendFields is a list of field names (e.g. "AccountId") to
1001	// unconditionally include in API requests. By default, fields with
1002	// empty or default values are omitted from API requests. However, any
1003	// non-pointer, non-interface field appearing in ForceSendFields will be
1004	// sent to the server regardless of whether the field is empty or not.
1005	// This may be used to include empty fields in Patch requests.
1006	ForceSendFields []string `json:"-"`
1007
1008	// NullFields is a list of field names (e.g. "AccountId") to include in
1009	// API requests with the JSON null value. By default, fields with empty
1010	// values are omitted from API requests. However, any field with an
1011	// empty value appearing in NullFields will be sent to the server as
1012	// null. It is an error if a field in this list has a non-empty value.
1013	// This may be used to include null fields in Patch requests.
1014	NullFields []string `json:"-"`
1015}
1016
1017func (s *AccountLabel) MarshalJSON() ([]byte, error) {
1018	type NoMethod AccountLabel
1019	raw := NoMethod(*s)
1020	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1021}
1022
1023// AccountReturnCarrier:  The return carrier information. This service
1024// is designed for merchants enrolled in the Buy on Google program.
1025type AccountReturnCarrier struct {
1026	// CarrierAccountId: Output only. Immutable. The Google-provided unique
1027	// carrier ID, used to update the resource.
1028	CarrierAccountId int64 `json:"carrierAccountId,omitempty,string"`
1029
1030	// CarrierAccountName: Name of the carrier account.
1031	CarrierAccountName string `json:"carrierAccountName,omitempty"`
1032
1033	// CarrierAccountNumber: Number of the carrier account.
1034	CarrierAccountNumber string `json:"carrierAccountNumber,omitempty"`
1035
1036	// CarrierCode: The carrier code enum. Accepts the values FEDEX or UPS.
1037	//
1038	// Possible values:
1039	//   "CARRIER_CODE_UNSPECIFIED" - Carrier not specified
1040	//   "FEDEX" - FedEx carrier
1041	//   "UPS" - UPS carrier
1042	CarrierCode string `json:"carrierCode,omitempty"`
1043
1044	// ServerResponse contains the HTTP response code and headers from the
1045	// server.
1046	googleapi.ServerResponse `json:"-"`
1047
1048	// ForceSendFields is a list of field names (e.g. "CarrierAccountId") to
1049	// unconditionally include in API requests. By default, fields with
1050	// empty or default values are omitted from API requests. However, any
1051	// non-pointer, non-interface field appearing in ForceSendFields will be
1052	// sent to the server regardless of whether the field is empty or not.
1053	// This may be used to include empty fields in Patch requests.
1054	ForceSendFields []string `json:"-"`
1055
1056	// NullFields is a list of field names (e.g. "CarrierAccountId") to
1057	// include in API requests with the JSON null value. By default, fields
1058	// with empty values are omitted from API requests. However, any field
1059	// with an empty value appearing in NullFields will be sent to the
1060	// server as null. It is an error if a field in this list has a
1061	// non-empty value. This may be used to include null fields in Patch
1062	// requests.
1063	NullFields []string `json:"-"`
1064}
1065
1066func (s *AccountReturnCarrier) MarshalJSON() ([]byte, error) {
1067	type NoMethod AccountReturnCarrier
1068	raw := NoMethod(*s)
1069	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1070}
1071
1072// AccountStatus: The status of an account, i.e., information about its
1073// products, which is computed offline and not returned immediately at
1074// insertion time.
1075type AccountStatus struct {
1076	// AccountId: The ID of the account for which the status is reported.
1077	AccountId string `json:"accountId,omitempty"`
1078
1079	// AccountLevelIssues: A list of account level issues.
1080	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
1081
1082	// AccountManagement: How the account is managed. Acceptable values are:
1083	// - "manual" - "automatic"
1084	AccountManagement string `json:"accountManagement,omitempty"`
1085
1086	// Kind: Identifies what kind of resource this is. Value: the fixed
1087	// string "content#accountStatus"
1088	Kind string `json:"kind,omitempty"`
1089
1090	// Products: List of product-related data by channel, destination, and
1091	// country. Data in this field may be delayed by up to 30 minutes.
1092	Products []*AccountStatusProducts `json:"products,omitempty"`
1093
1094	// WebsiteClaimed: Whether the account's website is claimed or not.
1095	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
1096
1097	// ServerResponse contains the HTTP response code and headers from the
1098	// server.
1099	googleapi.ServerResponse `json:"-"`
1100
1101	// ForceSendFields is a list of field names (e.g. "AccountId") to
1102	// unconditionally include in API requests. By default, fields with
1103	// empty or default values are omitted from API requests. However, any
1104	// non-pointer, non-interface field appearing in ForceSendFields will be
1105	// sent to the server regardless of whether the field is empty or not.
1106	// This may be used to include empty fields in Patch requests.
1107	ForceSendFields []string `json:"-"`
1108
1109	// NullFields is a list of field names (e.g. "AccountId") to include in
1110	// API requests with the JSON null value. By default, fields with empty
1111	// values are omitted from API requests. However, any field with an
1112	// empty value appearing in NullFields will be sent to the server as
1113	// null. It is an error if a field in this list has a non-empty value.
1114	// This may be used to include null fields in Patch requests.
1115	NullFields []string `json:"-"`
1116}
1117
1118func (s *AccountStatus) MarshalJSON() ([]byte, error) {
1119	type NoMethod AccountStatus
1120	raw := NoMethod(*s)
1121	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1122}
1123
1124type AccountStatusAccountLevelIssue struct {
1125	// Country: Country for which this issue is reported.
1126	Country string `json:"country,omitempty"`
1127
1128	// Destination: The destination the issue applies to. If this field is
1129	// empty then the issue applies to all available destinations.
1130	Destination string `json:"destination,omitempty"`
1131
1132	// Detail: Additional details about the issue.
1133	Detail string `json:"detail,omitempty"`
1134
1135	// Documentation: The URL of a web page to help resolving this issue.
1136	Documentation string `json:"documentation,omitempty"`
1137
1138	// Id: Issue identifier.
1139	Id string `json:"id,omitempty"`
1140
1141	// Severity: Severity of the issue. Acceptable values are: -
1142	// "critical" - "error" - "suggestion"
1143	Severity string `json:"severity,omitempty"`
1144
1145	// Title: Short description of the issue.
1146	Title string `json:"title,omitempty"`
1147
1148	// ForceSendFields is a list of field names (e.g. "Country") to
1149	// unconditionally include in API requests. By default, fields with
1150	// empty or default values are omitted from API requests. However, any
1151	// non-pointer, non-interface field appearing in ForceSendFields will be
1152	// sent to the server regardless of whether the field is empty or not.
1153	// This may be used to include empty fields in Patch requests.
1154	ForceSendFields []string `json:"-"`
1155
1156	// NullFields is a list of field names (e.g. "Country") to include in
1157	// API requests with the JSON null value. By default, fields with empty
1158	// values are omitted from API requests. However, any field with an
1159	// empty value appearing in NullFields will be sent to the server as
1160	// null. It is an error if a field in this list has a non-empty value.
1161	// This may be used to include null fields in Patch requests.
1162	NullFields []string `json:"-"`
1163}
1164
1165func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
1166	type NoMethod AccountStatusAccountLevelIssue
1167	raw := NoMethod(*s)
1168	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1169}
1170
1171type AccountStatusItemLevelIssue struct {
1172	// AttributeName: The attribute's name, if the issue is caused by a
1173	// single attribute.
1174	AttributeName string `json:"attributeName,omitempty"`
1175
1176	// Code: The error code of the issue.
1177	Code string `json:"code,omitempty"`
1178
1179	// Description: A short issue description in English.
1180	Description string `json:"description,omitempty"`
1181
1182	// Detail: A detailed issue description in English.
1183	Detail string `json:"detail,omitempty"`
1184
1185	// Documentation: The URL of a web page to help with resolving this
1186	// issue.
1187	Documentation string `json:"documentation,omitempty"`
1188
1189	// NumItems: Number of items with this issue.
1190	NumItems int64 `json:"numItems,omitempty,string"`
1191
1192	// Resolution: Whether the issue can be resolved by the merchant.
1193	Resolution string `json:"resolution,omitempty"`
1194
1195	// Servability: How this issue affects serving of the offer.
1196	Servability string `json:"servability,omitempty"`
1197
1198	// ForceSendFields is a list of field names (e.g. "AttributeName") to
1199	// unconditionally include in API requests. By default, fields with
1200	// empty or default values are omitted from API requests. However, any
1201	// non-pointer, non-interface field appearing in ForceSendFields will be
1202	// sent to the server regardless of whether the field is empty or not.
1203	// This may be used to include empty fields in Patch requests.
1204	ForceSendFields []string `json:"-"`
1205
1206	// NullFields is a list of field names (e.g. "AttributeName") to include
1207	// in API requests with the JSON null value. By default, fields with
1208	// empty values are omitted from API requests. However, any field with
1209	// an empty value appearing in NullFields will be sent to the server as
1210	// null. It is an error if a field in this list has a non-empty value.
1211	// This may be used to include null fields in Patch requests.
1212	NullFields []string `json:"-"`
1213}
1214
1215func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
1216	type NoMethod AccountStatusItemLevelIssue
1217	raw := NoMethod(*s)
1218	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1219}
1220
1221type AccountStatusProducts struct {
1222	// Channel: The channel the data applies to. Acceptable values are: -
1223	// "local" - "online"
1224	Channel string `json:"channel,omitempty"`
1225
1226	// Country: The country the data applies to.
1227	Country string `json:"country,omitempty"`
1228
1229	// Destination: The destination the data applies to.
1230	Destination string `json:"destination,omitempty"`
1231
1232	// ItemLevelIssues: List of item-level issues.
1233	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
1234
1235	// Statistics: Aggregated product statistics.
1236	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
1237
1238	// ForceSendFields is a list of field names (e.g. "Channel") to
1239	// unconditionally include in API requests. By default, fields with
1240	// empty or default values are omitted from API requests. However, any
1241	// non-pointer, non-interface field appearing in ForceSendFields will be
1242	// sent to the server regardless of whether the field is empty or not.
1243	// This may be used to include empty fields in Patch requests.
1244	ForceSendFields []string `json:"-"`
1245
1246	// NullFields is a list of field names (e.g. "Channel") to include in
1247	// API requests with the JSON null value. By default, fields with empty
1248	// values are omitted from API requests. However, any field with an
1249	// empty value appearing in NullFields will be sent to the server as
1250	// null. It is an error if a field in this list has a non-empty value.
1251	// This may be used to include null fields in Patch requests.
1252	NullFields []string `json:"-"`
1253}
1254
1255func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
1256	type NoMethod AccountStatusProducts
1257	raw := NoMethod(*s)
1258	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1259}
1260
1261type AccountStatusStatistics struct {
1262	// Active: Number of active offers.
1263	Active int64 `json:"active,omitempty,string"`
1264
1265	// Disapproved: Number of disapproved offers.
1266	Disapproved int64 `json:"disapproved,omitempty,string"`
1267
1268	// Expiring: Number of expiring offers.
1269	Expiring int64 `json:"expiring,omitempty,string"`
1270
1271	// Pending: Number of pending offers.
1272	Pending int64 `json:"pending,omitempty,string"`
1273
1274	// ForceSendFields is a list of field names (e.g. "Active") to
1275	// unconditionally include in API requests. By default, fields with
1276	// empty or default values are omitted from API requests. However, any
1277	// non-pointer, non-interface field appearing in ForceSendFields will be
1278	// sent to the server regardless of whether the field is empty or not.
1279	// This may be used to include empty fields in Patch requests.
1280	ForceSendFields []string `json:"-"`
1281
1282	// NullFields is a list of field names (e.g. "Active") to include in API
1283	// requests with the JSON null value. By default, fields with empty
1284	// values are omitted from API requests. However, any field with an
1285	// empty value appearing in NullFields will be sent to the server as
1286	// null. It is an error if a field in this list has a non-empty value.
1287	// This may be used to include null fields in Patch requests.
1288	NullFields []string `json:"-"`
1289}
1290
1291func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
1292	type NoMethod AccountStatusStatistics
1293	raw := NoMethod(*s)
1294	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1295}
1296
1297// AccountTax: The tax settings of a merchant account. All methods
1298// require the admin role.
1299type AccountTax struct {
1300	// AccountId: Required. The ID of the account to which these account tax
1301	// settings belong.
1302	AccountId uint64 `json:"accountId,omitempty,string"`
1303
1304	// Kind: Identifies what kind of resource this is. Value: the fixed
1305	// string "content#accountTax".
1306	Kind string `json:"kind,omitempty"`
1307
1308	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
1309	// reversible). Defining no rules is equivalent to not charging tax at
1310	// all.
1311	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
1312
1313	// ServerResponse contains the HTTP response code and headers from the
1314	// server.
1315	googleapi.ServerResponse `json:"-"`
1316
1317	// ForceSendFields is a list of field names (e.g. "AccountId") to
1318	// unconditionally include in API requests. By default, fields with
1319	// empty or default values are omitted from API requests. However, any
1320	// non-pointer, non-interface field appearing in ForceSendFields will be
1321	// sent to the server regardless of whether the field is empty or not.
1322	// This may be used to include empty fields in Patch requests.
1323	ForceSendFields []string `json:"-"`
1324
1325	// NullFields is a list of field names (e.g. "AccountId") to include in
1326	// API requests with the JSON null value. By default, fields with empty
1327	// values are omitted from API requests. However, any field with an
1328	// empty value appearing in NullFields will be sent to the server as
1329	// null. It is an error if a field in this list has a non-empty value.
1330	// This may be used to include null fields in Patch requests.
1331	NullFields []string `json:"-"`
1332}
1333
1334func (s *AccountTax) MarshalJSON() ([]byte, error) {
1335	type NoMethod AccountTax
1336	raw := NoMethod(*s)
1337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1338}
1339
1340// AccountTaxTaxRule: Tax calculation rule to apply in a state or
1341// province (USA only).
1342type AccountTaxTaxRule struct {
1343	// Country: Country code in which tax is applicable.
1344	Country string `json:"country,omitempty"`
1345
1346	// LocationId: Required. State (or province) is which the tax is
1347	// applicable, described by its location ID (also called criteria ID).
1348	LocationId uint64 `json:"locationId,omitempty,string"`
1349
1350	// RatePercent: Explicit tax rate in percent, represented as a floating
1351	// point number without the percentage character. Must not be negative.
1352	RatePercent string `json:"ratePercent,omitempty"`
1353
1354	// ShippingTaxed: If true, shipping charges are also taxed.
1355	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
1356
1357	// UseGlobalRate: Whether the tax rate is taken from a global tax table
1358	// or specified explicitly.
1359	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
1360
1361	// ForceSendFields is a list of field names (e.g. "Country") to
1362	// unconditionally include in API requests. By default, fields with
1363	// empty or default values are omitted from API requests. However, any
1364	// non-pointer, non-interface field appearing in ForceSendFields will be
1365	// sent to the server regardless of whether the field is empty or not.
1366	// This may be used to include empty fields in Patch requests.
1367	ForceSendFields []string `json:"-"`
1368
1369	// NullFields is a list of field names (e.g. "Country") to include in
1370	// API requests with the JSON null value. By default, fields with empty
1371	// values are omitted from API requests. However, any field with an
1372	// empty value appearing in NullFields will be sent to the server as
1373	// null. It is an error if a field in this list has a non-empty value.
1374	// This may be used to include null fields in Patch requests.
1375	NullFields []string `json:"-"`
1376}
1377
1378func (s *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
1379	type NoMethod AccountTaxTaxRule
1380	raw := NoMethod(*s)
1381	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1382}
1383
1384type AccountUser struct {
1385	// Admin: Whether user is an admin.
1386	Admin bool `json:"admin,omitempty"`
1387
1388	// EmailAddress: User's email address.
1389	EmailAddress string `json:"emailAddress,omitempty"`
1390
1391	// OrderManager: Whether user is an order manager.
1392	OrderManager bool `json:"orderManager,omitempty"`
1393
1394	// PaymentsAnalyst: Whether user can access payment statements.
1395	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
1396
1397	// PaymentsManager: Whether user can manage payment settings.
1398	PaymentsManager bool `json:"paymentsManager,omitempty"`
1399
1400	// ForceSendFields is a list of field names (e.g. "Admin") to
1401	// unconditionally include in API requests. By default, fields with
1402	// empty or default values are omitted from API requests. However, any
1403	// non-pointer, non-interface field appearing in ForceSendFields will be
1404	// sent to the server regardless of whether the field is empty or not.
1405	// This may be used to include empty fields in Patch requests.
1406	ForceSendFields []string `json:"-"`
1407
1408	// NullFields is a list of field names (e.g. "Admin") to include in API
1409	// requests with the JSON null value. By default, fields with empty
1410	// values are omitted from API requests. However, any field with an
1411	// empty value appearing in NullFields will be sent to the server as
1412	// null. It is an error if a field in this list has a non-empty value.
1413	// This may be used to include null fields in Patch requests.
1414	NullFields []string `json:"-"`
1415}
1416
1417func (s *AccountUser) MarshalJSON() ([]byte, error) {
1418	type NoMethod AccountUser
1419	raw := NoMethod(*s)
1420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1421}
1422
1423type AccountYouTubeChannelLink struct {
1424	// ChannelId: Channel ID.
1425	ChannelId string `json:"channelId,omitempty"`
1426
1427	// Status: Status of the link between this Merchant Center account and
1428	// the YouTube channel. Upon retrieval, it represents the actual status
1429	// of the link and can be either `active` if it was approved in YT
1430	// Creator Studio or `pending` if it's pending approval. Upon insertion,
1431	// it represents the *intended* status of the link. Re-uploading a link
1432	// with status `active` when it's still pending or with status `pending`
1433	// when it's already active will have no effect: the status will remain
1434	// unchanged. Re-uploading a link with deprecated status `inactive` is
1435	// equivalent to not submitting the link at all and will delete the link
1436	// if it was active or cancel the link request if it was pending.
1437	Status string `json:"status,omitempty"`
1438
1439	// ForceSendFields is a list of field names (e.g. "ChannelId") to
1440	// unconditionally include in API requests. By default, fields with
1441	// empty or default values are omitted from API requests. However, any
1442	// non-pointer, non-interface field appearing in ForceSendFields will be
1443	// sent to the server regardless of whether the field is empty or not.
1444	// This may be used to include empty fields in Patch requests.
1445	ForceSendFields []string `json:"-"`
1446
1447	// NullFields is a list of field names (e.g. "ChannelId") to include in
1448	// API requests with the JSON null value. By default, fields with empty
1449	// values are omitted from API requests. However, any field with an
1450	// empty value appearing in NullFields will be sent to the server as
1451	// null. It is an error if a field in this list has a non-empty value.
1452	// This may be used to include null fields in Patch requests.
1453	NullFields []string `json:"-"`
1454}
1455
1456func (s *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
1457	type NoMethod AccountYouTubeChannelLink
1458	raw := NoMethod(*s)
1459	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1460}
1461
1462type AccountsAuthInfoResponse struct {
1463	// AccountIdentifiers: The account identifiers corresponding to the
1464	// authenticated user. - For an individual account: only the merchant ID
1465	// is defined - For an aggregator: only the aggregator ID is defined -
1466	// For a subaccount of an MCA: both the merchant ID and the aggregator
1467	// ID are defined.
1468	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
1469
1470	// Kind: Identifies what kind of resource this is. Value: the fixed
1471	// string "content#accountsAuthInfoResponse".
1472	Kind string `json:"kind,omitempty"`
1473
1474	// ServerResponse contains the HTTP response code and headers from the
1475	// server.
1476	googleapi.ServerResponse `json:"-"`
1477
1478	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
1479	// to unconditionally include in API requests. By default, fields with
1480	// empty or default values are omitted from API requests. However, any
1481	// non-pointer, non-interface field appearing in ForceSendFields will be
1482	// sent to the server regardless of whether the field is empty or not.
1483	// This may be used to include empty fields in Patch requests.
1484	ForceSendFields []string `json:"-"`
1485
1486	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
1487	// include in API requests with the JSON null value. By default, fields
1488	// with empty values are omitted from API requests. However, any field
1489	// with an empty value appearing in NullFields will be sent to the
1490	// server as null. It is an error if a field in this list has a
1491	// non-empty value. This may be used to include null fields in Patch
1492	// requests.
1493	NullFields []string `json:"-"`
1494}
1495
1496func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
1497	type NoMethod AccountsAuthInfoResponse
1498	raw := NoMethod(*s)
1499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1500}
1501
1502type AccountsClaimWebsiteResponse struct {
1503	// Kind: Identifies what kind of resource this is. Value: the fixed
1504	// string "content#accountsClaimWebsiteResponse".
1505	Kind string `json:"kind,omitempty"`
1506
1507	// ServerResponse contains the HTTP response code and headers from the
1508	// server.
1509	googleapi.ServerResponse `json:"-"`
1510
1511	// ForceSendFields is a list of field names (e.g. "Kind") to
1512	// unconditionally include in API requests. By default, fields with
1513	// empty or default values are omitted from API requests. However, any
1514	// non-pointer, non-interface field appearing in ForceSendFields will be
1515	// sent to the server regardless of whether the field is empty or not.
1516	// This may be used to include empty fields in Patch requests.
1517	ForceSendFields []string `json:"-"`
1518
1519	// NullFields is a list of field names (e.g. "Kind") to include in API
1520	// requests with the JSON null value. By default, fields with empty
1521	// values are omitted from API requests. However, any field with an
1522	// empty value appearing in NullFields will be sent to the server as
1523	// null. It is an error if a field in this list has a non-empty value.
1524	// This may be used to include null fields in Patch requests.
1525	NullFields []string `json:"-"`
1526}
1527
1528func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
1529	type NoMethod AccountsClaimWebsiteResponse
1530	raw := NoMethod(*s)
1531	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1532}
1533
1534type AccountsCustomBatchRequest struct {
1535	// Entries: The request entries to be processed in the batch.
1536	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
1537
1538	// ForceSendFields is a list of field names (e.g. "Entries") to
1539	// unconditionally include in API requests. By default, fields with
1540	// empty or default values are omitted from API requests. However, any
1541	// non-pointer, non-interface field appearing in ForceSendFields will be
1542	// sent to the server regardless of whether the field is empty or not.
1543	// This may be used to include empty fields in Patch requests.
1544	ForceSendFields []string `json:"-"`
1545
1546	// NullFields is a list of field names (e.g. "Entries") to include in
1547	// API requests with the JSON null value. By default, fields with empty
1548	// values are omitted from API requests. However, any field with an
1549	// empty value appearing in NullFields will be sent to the server as
1550	// null. It is an error if a field in this list has a non-empty value.
1551	// This may be used to include null fields in Patch requests.
1552	NullFields []string `json:"-"`
1553}
1554
1555func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
1556	type NoMethod AccountsCustomBatchRequest
1557	raw := NoMethod(*s)
1558	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1559}
1560
1561// AccountsCustomBatchRequestEntry: A batch entry encoding a single
1562// non-batch accounts request.
1563type AccountsCustomBatchRequestEntry struct {
1564	// Account: The account to create or update. Only defined if the method
1565	// is `insert` or `update`.
1566	Account *Account `json:"account,omitempty"`
1567
1568	// AccountId: The ID of the targeted account. Only defined if the method
1569	// is not `insert`.
1570	AccountId uint64 `json:"accountId,omitempty,string"`
1571
1572	// BatchId: An entry ID, unique within the batch request.
1573	BatchId int64 `json:"batchId,omitempty"`
1574
1575	// Force: Whether the account should be deleted if the account has
1576	// offers. Only applicable if the method is `delete`.
1577	Force bool `json:"force,omitempty"`
1578
1579	// LabelIds: Label IDs for the 'updatelabels' request.
1580	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1581
1582	// LinkRequest: Details about the `link` request.
1583	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
1584
1585	// MerchantId: The ID of the managing account.
1586	MerchantId uint64 `json:"merchantId,omitempty,string"`
1587
1588	// Method: The method of the batch entry. Acceptable values are: -
1589	// "claimWebsite" - "delete" - "get" - "insert" - "link" -
1590	// "update"
1591	Method string `json:"method,omitempty"`
1592
1593	// Overwrite: Only applicable if the method is `claimwebsite`. Indicates
1594	// whether or not to take the claim from another account in case there
1595	// is a conflict.
1596	Overwrite bool `json:"overwrite,omitempty"`
1597
1598	// View: Controls which fields are visible. Only applicable if the
1599	// method is 'get'.
1600	View string `json:"view,omitempty"`
1601
1602	// ForceSendFields is a list of field names (e.g. "Account") to
1603	// unconditionally include in API requests. By default, fields with
1604	// empty or default values are omitted from API requests. However, any
1605	// non-pointer, non-interface field appearing in ForceSendFields will be
1606	// sent to the server regardless of whether the field is empty or not.
1607	// This may be used to include empty fields in Patch requests.
1608	ForceSendFields []string `json:"-"`
1609
1610	// NullFields is a list of field names (e.g. "Account") to include in
1611	// API requests with the JSON null value. By default, fields with empty
1612	// values are omitted from API requests. However, any field with an
1613	// empty value appearing in NullFields will be sent to the server as
1614	// null. It is an error if a field in this list has a non-empty value.
1615	// This may be used to include null fields in Patch requests.
1616	NullFields []string `json:"-"`
1617}
1618
1619func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1620	type NoMethod AccountsCustomBatchRequestEntry
1621	raw := NoMethod(*s)
1622	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1623}
1624
1625type AccountsCustomBatchRequestEntryLinkRequest struct {
1626	// Action: Action to perform for this link. The "request" action is
1627	// only available to select merchants. Acceptable values are: -
1628	// "approve" - "remove" - "request"
1629	Action string `json:"action,omitempty"`
1630
1631	// LinkType: Type of the link between the two accounts. Acceptable
1632	// values are: - "channelPartner" - "eCommercePlatform" -
1633	// "paymentServiceProvider"
1634	LinkType string `json:"linkType,omitempty"`
1635
1636	// LinkedAccountId: The ID of the linked account.
1637	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1638
1639	// Services: Provided services. Acceptable values are: -
1640	// "shoppingAdsProductManagement" -
1641	// "shoppingActionsProductManagement" -
1642	// "shoppingActionsOrderManagement" - "paymentProcessing"
1643	Services []string `json:"services,omitempty"`
1644
1645	// ForceSendFields is a list of field names (e.g. "Action") to
1646	// unconditionally include in API requests. By default, fields with
1647	// empty or default values are omitted from API requests. However, any
1648	// non-pointer, non-interface field appearing in ForceSendFields will be
1649	// sent to the server regardless of whether the field is empty or not.
1650	// This may be used to include empty fields in Patch requests.
1651	ForceSendFields []string `json:"-"`
1652
1653	// NullFields is a list of field names (e.g. "Action") to include in API
1654	// requests with the JSON null value. By default, fields with empty
1655	// values are omitted from API requests. However, any field with an
1656	// empty value appearing in NullFields will be sent to the server as
1657	// null. It is an error if a field in this list has a non-empty value.
1658	// This may be used to include null fields in Patch requests.
1659	NullFields []string `json:"-"`
1660}
1661
1662func (s *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
1663	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
1664	raw := NoMethod(*s)
1665	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1666}
1667
1668type AccountsCustomBatchResponse struct {
1669	// Entries: The result of the execution of the batch requests.
1670	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
1671
1672	// Kind: Identifies what kind of resource this is. Value: the fixed
1673	// string "content#accountsCustomBatchResponse".
1674	Kind string `json:"kind,omitempty"`
1675
1676	// ServerResponse contains the HTTP response code and headers from the
1677	// server.
1678	googleapi.ServerResponse `json:"-"`
1679
1680	// ForceSendFields is a list of field names (e.g. "Entries") to
1681	// unconditionally include in API requests. By default, fields with
1682	// empty or default values are omitted from API requests. However, any
1683	// non-pointer, non-interface field appearing in ForceSendFields will be
1684	// sent to the server regardless of whether the field is empty or not.
1685	// This may be used to include empty fields in Patch requests.
1686	ForceSendFields []string `json:"-"`
1687
1688	// NullFields is a list of field names (e.g. "Entries") to include in
1689	// API requests with the JSON null value. By default, fields with empty
1690	// values are omitted from API requests. However, any field with an
1691	// empty value appearing in NullFields will be sent to the server as
1692	// null. It is an error if a field in this list has a non-empty value.
1693	// This may be used to include null fields in Patch requests.
1694	NullFields []string `json:"-"`
1695}
1696
1697func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
1698	type NoMethod AccountsCustomBatchResponse
1699	raw := NoMethod(*s)
1700	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1701}
1702
1703// AccountsCustomBatchResponseEntry: A batch entry encoding a single
1704// non-batch accounts response.
1705type AccountsCustomBatchResponseEntry struct {
1706	// Account: The retrieved, created, or updated account. Not defined if
1707	// the method was `delete`, `claimwebsite` or `link`.
1708	Account *Account `json:"account,omitempty"`
1709
1710	// BatchId: The ID of the request entry this entry responds to.
1711	BatchId int64 `json:"batchId,omitempty"`
1712
1713	// Errors: A list of errors defined if and only if the request failed.
1714	Errors *Errors `json:"errors,omitempty"`
1715
1716	// Kind: Identifies what kind of resource this is. Value: the fixed
1717	// string "content#accountsCustomBatchResponseEntry"
1718	Kind string `json:"kind,omitempty"`
1719
1720	// ForceSendFields is a list of field names (e.g. "Account") to
1721	// unconditionally include in API requests. By default, fields with
1722	// empty or default values are omitted from API requests. However, any
1723	// non-pointer, non-interface field appearing in ForceSendFields will be
1724	// sent to the server regardless of whether the field is empty or not.
1725	// This may be used to include empty fields in Patch requests.
1726	ForceSendFields []string `json:"-"`
1727
1728	// NullFields is a list of field names (e.g. "Account") to include in
1729	// API requests with the JSON null value. By default, fields with empty
1730	// values are omitted from API requests. However, any field with an
1731	// empty value appearing in NullFields will be sent to the server as
1732	// null. It is an error if a field in this list has a non-empty value.
1733	// This may be used to include null fields in Patch requests.
1734	NullFields []string `json:"-"`
1735}
1736
1737func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1738	type NoMethod AccountsCustomBatchResponseEntry
1739	raw := NoMethod(*s)
1740	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1741}
1742
1743type AccountsLinkRequest struct {
1744	// Action: Action to perform for this link. The "request" action is
1745	// only available to select merchants. Acceptable values are: -
1746	// "approve" - "remove" - "request"
1747	Action string `json:"action,omitempty"`
1748
1749	// LinkType: Type of the link between the two accounts. Acceptable
1750	// values are: - "channelPartner" - "eCommercePlatform" -
1751	// "paymentServiceProvider"
1752	LinkType string `json:"linkType,omitempty"`
1753
1754	// LinkedAccountId: The ID of the linked account.
1755	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1756
1757	// PaymentServiceProviderLinkInfo: Additional information required for
1758	// `paymentServiceProvider` link type.
1759	PaymentServiceProviderLinkInfo *PaymentServiceProviderLinkInfo `json:"paymentServiceProviderLinkInfo,omitempty"`
1760
1761	// Services:  Acceptable values are: - "shoppingAdsProductManagement"
1762	// - "shoppingActionsProductManagement" -
1763	// "shoppingActionsOrderManagement" - "paymentProcessing"
1764	Services []string `json:"services,omitempty"`
1765
1766	// ForceSendFields is a list of field names (e.g. "Action") to
1767	// unconditionally include in API requests. By default, fields with
1768	// empty or default values are omitted from API requests. However, any
1769	// non-pointer, non-interface field appearing in ForceSendFields will be
1770	// sent to the server regardless of whether the field is empty or not.
1771	// This may be used to include empty fields in Patch requests.
1772	ForceSendFields []string `json:"-"`
1773
1774	// NullFields is a list of field names (e.g. "Action") to include in API
1775	// requests with the JSON null value. By default, fields with empty
1776	// values are omitted from API requests. However, any field with an
1777	// empty value appearing in NullFields will be sent to the server as
1778	// null. It is an error if a field in this list has a non-empty value.
1779	// This may be used to include null fields in Patch requests.
1780	NullFields []string `json:"-"`
1781}
1782
1783func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
1784	type NoMethod AccountsLinkRequest
1785	raw := NoMethod(*s)
1786	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1787}
1788
1789type AccountsLinkResponse struct {
1790	// Kind: Identifies what kind of resource this is. Value: the fixed
1791	// string "content#accountsLinkResponse".
1792	Kind string `json:"kind,omitempty"`
1793
1794	// ServerResponse contains the HTTP response code and headers from the
1795	// server.
1796	googleapi.ServerResponse `json:"-"`
1797
1798	// ForceSendFields is a list of field names (e.g. "Kind") to
1799	// unconditionally include in API requests. By default, fields with
1800	// empty or default values are omitted from API requests. However, any
1801	// non-pointer, non-interface field appearing in ForceSendFields will be
1802	// sent to the server regardless of whether the field is empty or not.
1803	// This may be used to include empty fields in Patch requests.
1804	ForceSendFields []string `json:"-"`
1805
1806	// NullFields is a list of field names (e.g. "Kind") to include in API
1807	// requests with the JSON null value. By default, fields with empty
1808	// values are omitted from API requests. However, any field with an
1809	// empty value appearing in NullFields will be sent to the server as
1810	// null. It is an error if a field in this list has a non-empty value.
1811	// This may be used to include null fields in Patch requests.
1812	NullFields []string `json:"-"`
1813}
1814
1815func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
1816	type NoMethod AccountsLinkResponse
1817	raw := NoMethod(*s)
1818	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1819}
1820
1821type AccountsListLinksResponse struct {
1822	// Kind: Identifies what kind of resource this is. Value: the fixed
1823	// string "content#accountsListLinksResponse".
1824	Kind string `json:"kind,omitempty"`
1825
1826	// Links: The list of available links.
1827	Links []*LinkedAccount `json:"links,omitempty"`
1828
1829	// NextPageToken: The token for the retrieval of the next page of links.
1830	NextPageToken string `json:"nextPageToken,omitempty"`
1831
1832	// ServerResponse contains the HTTP response code and headers from the
1833	// server.
1834	googleapi.ServerResponse `json:"-"`
1835
1836	// ForceSendFields is a list of field names (e.g. "Kind") to
1837	// unconditionally include in API requests. By default, fields with
1838	// empty or default values are omitted from API requests. However, any
1839	// non-pointer, non-interface field appearing in ForceSendFields will be
1840	// sent to the server regardless of whether the field is empty or not.
1841	// This may be used to include empty fields in Patch requests.
1842	ForceSendFields []string `json:"-"`
1843
1844	// NullFields is a list of field names (e.g. "Kind") to include in API
1845	// requests with the JSON null value. By default, fields with empty
1846	// values are omitted from API requests. However, any field with an
1847	// empty value appearing in NullFields will be sent to the server as
1848	// null. It is an error if a field in this list has a non-empty value.
1849	// This may be used to include null fields in Patch requests.
1850	NullFields []string `json:"-"`
1851}
1852
1853func (s *AccountsListLinksResponse) MarshalJSON() ([]byte, error) {
1854	type NoMethod AccountsListLinksResponse
1855	raw := NoMethod(*s)
1856	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1857}
1858
1859type AccountsListResponse struct {
1860	// Kind: Identifies what kind of resource this is. Value: the fixed
1861	// string "content#accountsListResponse".
1862	Kind string `json:"kind,omitempty"`
1863
1864	// NextPageToken: The token for the retrieval of the next page of
1865	// accounts.
1866	NextPageToken string `json:"nextPageToken,omitempty"`
1867
1868	Resources []*Account `json:"resources,omitempty"`
1869
1870	// ServerResponse contains the HTTP response code and headers from the
1871	// server.
1872	googleapi.ServerResponse `json:"-"`
1873
1874	// ForceSendFields is a list of field names (e.g. "Kind") to
1875	// unconditionally include in API requests. By default, fields with
1876	// empty or default values are omitted from API requests. However, any
1877	// non-pointer, non-interface field appearing in ForceSendFields will be
1878	// sent to the server regardless of whether the field is empty or not.
1879	// This may be used to include empty fields in Patch requests.
1880	ForceSendFields []string `json:"-"`
1881
1882	// NullFields is a list of field names (e.g. "Kind") to include in API
1883	// requests with the JSON null value. By default, fields with empty
1884	// values are omitted from API requests. However, any field with an
1885	// empty value appearing in NullFields will be sent to the server as
1886	// null. It is an error if a field in this list has a non-empty value.
1887	// This may be used to include null fields in Patch requests.
1888	NullFields []string `json:"-"`
1889}
1890
1891func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1892	type NoMethod AccountsListResponse
1893	raw := NoMethod(*s)
1894	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1895}
1896
1897type AccountsUpdateLabelsRequest struct {
1898	// LabelIds: The IDs of labels that should be assigned to the account.
1899	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1900
1901	// ForceSendFields is a list of field names (e.g. "LabelIds") to
1902	// unconditionally include in API requests. By default, fields with
1903	// empty or default values are omitted from API requests. However, any
1904	// non-pointer, non-interface field appearing in ForceSendFields will be
1905	// sent to the server regardless of whether the field is empty or not.
1906	// This may be used to include empty fields in Patch requests.
1907	ForceSendFields []string `json:"-"`
1908
1909	// NullFields is a list of field names (e.g. "LabelIds") to include in
1910	// API requests with the JSON null value. By default, fields with empty
1911	// values are omitted from API requests. However, any field with an
1912	// empty value appearing in NullFields will be sent to the server as
1913	// null. It is an error if a field in this list has a non-empty value.
1914	// This may be used to include null fields in Patch requests.
1915	NullFields []string `json:"-"`
1916}
1917
1918func (s *AccountsUpdateLabelsRequest) MarshalJSON() ([]byte, error) {
1919	type NoMethod AccountsUpdateLabelsRequest
1920	raw := NoMethod(*s)
1921	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1922}
1923
1924type AccountsUpdateLabelsResponse struct {
1925	// Kind: Identifies what kind of resource this is. Value: the fixed
1926	// string "content#accountsUpdateLabelsResponse".
1927	Kind string `json:"kind,omitempty"`
1928
1929	// ServerResponse contains the HTTP response code and headers from the
1930	// server.
1931	googleapi.ServerResponse `json:"-"`
1932
1933	// ForceSendFields is a list of field names (e.g. "Kind") to
1934	// unconditionally include in API requests. By default, fields with
1935	// empty or default values are omitted from API requests. However, any
1936	// non-pointer, non-interface field appearing in ForceSendFields will be
1937	// sent to the server regardless of whether the field is empty or not.
1938	// This may be used to include empty fields in Patch requests.
1939	ForceSendFields []string `json:"-"`
1940
1941	// NullFields is a list of field names (e.g. "Kind") to include in API
1942	// requests with the JSON null value. By default, fields with empty
1943	// values are omitted from API requests. However, any field with an
1944	// empty value appearing in NullFields will be sent to the server as
1945	// null. It is an error if a field in this list has a non-empty value.
1946	// This may be used to include null fields in Patch requests.
1947	NullFields []string `json:"-"`
1948}
1949
1950func (s *AccountsUpdateLabelsResponse) MarshalJSON() ([]byte, error) {
1951	type NoMethod AccountsUpdateLabelsResponse
1952	raw := NoMethod(*s)
1953	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1954}
1955
1956type AccountstatusesCustomBatchRequest struct {
1957	// Entries: The request entries to be processed in the batch.
1958	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
1959
1960	// ForceSendFields is a list of field names (e.g. "Entries") to
1961	// unconditionally include in API requests. By default, fields with
1962	// empty or default values are omitted from API requests. However, any
1963	// non-pointer, non-interface field appearing in ForceSendFields will be
1964	// sent to the server regardless of whether the field is empty or not.
1965	// This may be used to include empty fields in Patch requests.
1966	ForceSendFields []string `json:"-"`
1967
1968	// NullFields is a list of field names (e.g. "Entries") to include in
1969	// API requests with the JSON null value. By default, fields with empty
1970	// values are omitted from API requests. However, any field with an
1971	// empty value appearing in NullFields will be sent to the server as
1972	// null. It is an error if a field in this list has a non-empty value.
1973	// This may be used to include null fields in Patch requests.
1974	NullFields []string `json:"-"`
1975}
1976
1977func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
1978	type NoMethod AccountstatusesCustomBatchRequest
1979	raw := NoMethod(*s)
1980	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1981}
1982
1983// AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
1984// single non-batch accountstatuses request.
1985type AccountstatusesCustomBatchRequestEntry struct {
1986	// AccountId: The ID of the (sub-)account whose status to get.
1987	AccountId uint64 `json:"accountId,omitempty,string"`
1988
1989	// BatchId: An entry ID, unique within the batch request.
1990	BatchId int64 `json:"batchId,omitempty"`
1991
1992	// Destinations: If set, only issues for the specified destinations are
1993	// returned, otherwise only issues for the Shopping destination.
1994	Destinations []string `json:"destinations,omitempty"`
1995
1996	// MerchantId: The ID of the managing account.
1997	MerchantId uint64 `json:"merchantId,omitempty,string"`
1998
1999	// Method: The method of the batch entry. Acceptable values are: -
2000	// "get"
2001	Method string `json:"method,omitempty"`
2002
2003	// ForceSendFields is a list of field names (e.g. "AccountId") to
2004	// unconditionally include in API requests. By default, fields with
2005	// empty or default values are omitted from API requests. However, any
2006	// non-pointer, non-interface field appearing in ForceSendFields will be
2007	// sent to the server regardless of whether the field is empty or not.
2008	// This may be used to include empty fields in Patch requests.
2009	ForceSendFields []string `json:"-"`
2010
2011	// NullFields is a list of field names (e.g. "AccountId") to include in
2012	// API requests with the JSON null value. By default, fields with empty
2013	// values are omitted from API requests. However, any field with an
2014	// empty value appearing in NullFields will be sent to the server as
2015	// null. It is an error if a field in this list has a non-empty value.
2016	// This may be used to include null fields in Patch requests.
2017	NullFields []string `json:"-"`
2018}
2019
2020func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2021	type NoMethod AccountstatusesCustomBatchRequestEntry
2022	raw := NoMethod(*s)
2023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2024}
2025
2026type AccountstatusesCustomBatchResponse struct {
2027	// Entries: The result of the execution of the batch requests.
2028	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
2029
2030	// Kind: Identifies what kind of resource this is. Value: the fixed
2031	// string "content#accountstatusesCustomBatchResponse".
2032	Kind string `json:"kind,omitempty"`
2033
2034	// ServerResponse contains the HTTP response code and headers from the
2035	// server.
2036	googleapi.ServerResponse `json:"-"`
2037
2038	// ForceSendFields is a list of field names (e.g. "Entries") to
2039	// unconditionally include in API requests. By default, fields with
2040	// empty or default values are omitted from API requests. However, any
2041	// non-pointer, non-interface field appearing in ForceSendFields will be
2042	// sent to the server regardless of whether the field is empty or not.
2043	// This may be used to include empty fields in Patch requests.
2044	ForceSendFields []string `json:"-"`
2045
2046	// NullFields is a list of field names (e.g. "Entries") to include in
2047	// API requests with the JSON null value. By default, fields with empty
2048	// values are omitted from API requests. However, any field with an
2049	// empty value appearing in NullFields will be sent to the server as
2050	// null. It is an error if a field in this list has a non-empty value.
2051	// This may be used to include null fields in Patch requests.
2052	NullFields []string `json:"-"`
2053}
2054
2055func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
2056	type NoMethod AccountstatusesCustomBatchResponse
2057	raw := NoMethod(*s)
2058	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2059}
2060
2061// AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
2062// single non-batch accountstatuses response.
2063type AccountstatusesCustomBatchResponseEntry struct {
2064	// AccountStatus: The requested account status. Defined if and only if
2065	// the request was successful.
2066	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
2067
2068	// BatchId: The ID of the request entry this entry responds to.
2069	BatchId int64 `json:"batchId,omitempty"`
2070
2071	// Errors: A list of errors defined if and only if the request failed.
2072	Errors *Errors `json:"errors,omitempty"`
2073
2074	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
2075	// unconditionally include in API requests. By default, fields with
2076	// empty or default values are omitted from API requests. However, any
2077	// non-pointer, non-interface field appearing in ForceSendFields will be
2078	// sent to the server regardless of whether the field is empty or not.
2079	// This may be used to include empty fields in Patch requests.
2080	ForceSendFields []string `json:"-"`
2081
2082	// NullFields is a list of field names (e.g. "AccountStatus") to include
2083	// in API requests with the JSON null value. By default, fields with
2084	// empty values are omitted from API requests. However, any field with
2085	// an empty value appearing in NullFields will be sent to the server as
2086	// null. It is an error if a field in this list has a non-empty value.
2087	// This may be used to include null fields in Patch requests.
2088	NullFields []string `json:"-"`
2089}
2090
2091func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2092	type NoMethod AccountstatusesCustomBatchResponseEntry
2093	raw := NoMethod(*s)
2094	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2095}
2096
2097type AccountstatusesListResponse struct {
2098	// Kind: Identifies what kind of resource this is. Value: the fixed
2099	// string "content#accountstatusesListResponse".
2100	Kind string `json:"kind,omitempty"`
2101
2102	// NextPageToken: The token for the retrieval of the next page of
2103	// account statuses.
2104	NextPageToken string `json:"nextPageToken,omitempty"`
2105
2106	Resources []*AccountStatus `json:"resources,omitempty"`
2107
2108	// ServerResponse contains the HTTP response code and headers from the
2109	// server.
2110	googleapi.ServerResponse `json:"-"`
2111
2112	// ForceSendFields is a list of field names (e.g. "Kind") to
2113	// unconditionally include in API requests. By default, fields with
2114	// empty or default values are omitted from API requests. However, any
2115	// non-pointer, non-interface field appearing in ForceSendFields will be
2116	// sent to the server regardless of whether the field is empty or not.
2117	// This may be used to include empty fields in Patch requests.
2118	ForceSendFields []string `json:"-"`
2119
2120	// NullFields is a list of field names (e.g. "Kind") to include in API
2121	// requests with the JSON null value. By default, fields with empty
2122	// values are omitted from API requests. However, any field with an
2123	// empty value appearing in NullFields will be sent to the server as
2124	// null. It is an error if a field in this list has a non-empty value.
2125	// This may be used to include null fields in Patch requests.
2126	NullFields []string `json:"-"`
2127}
2128
2129func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
2130	type NoMethod AccountstatusesListResponse
2131	raw := NoMethod(*s)
2132	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2133}
2134
2135type AccounttaxCustomBatchRequest struct {
2136	// Entries: The request entries to be processed in the batch.
2137	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
2138
2139	// ForceSendFields is a list of field names (e.g. "Entries") to
2140	// unconditionally include in API requests. By default, fields with
2141	// empty or default values are omitted from API requests. However, any
2142	// non-pointer, non-interface field appearing in ForceSendFields will be
2143	// sent to the server regardless of whether the field is empty or not.
2144	// This may be used to include empty fields in Patch requests.
2145	ForceSendFields []string `json:"-"`
2146
2147	// NullFields is a list of field names (e.g. "Entries") to include in
2148	// API requests with the JSON null value. By default, fields with empty
2149	// values are omitted from API requests. However, any field with an
2150	// empty value appearing in NullFields will be sent to the server as
2151	// null. It is an error if a field in this list has a non-empty value.
2152	// This may be used to include null fields in Patch requests.
2153	NullFields []string `json:"-"`
2154}
2155
2156func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
2157	type NoMethod AccounttaxCustomBatchRequest
2158	raw := NoMethod(*s)
2159	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2160}
2161
2162// AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
2163// non-batch accounttax request.
2164type AccounttaxCustomBatchRequestEntry struct {
2165	// AccountId: The ID of the account for which to get/update account tax
2166	// settings.
2167	AccountId uint64 `json:"accountId,omitempty,string"`
2168
2169	// AccountTax: The account tax settings to update. Only defined if the
2170	// method is `update`.
2171	AccountTax *AccountTax `json:"accountTax,omitempty"`
2172
2173	// BatchId: An entry ID, unique within the batch request.
2174	BatchId int64 `json:"batchId,omitempty"`
2175
2176	// MerchantId: The ID of the managing account.
2177	MerchantId uint64 `json:"merchantId,omitempty,string"`
2178
2179	// Method: The method of the batch entry. Acceptable values are: -
2180	// "get" - "update"
2181	Method string `json:"method,omitempty"`
2182
2183	// ForceSendFields is a list of field names (e.g. "AccountId") to
2184	// unconditionally include in API requests. By default, fields with
2185	// empty or default values are omitted from API requests. However, any
2186	// non-pointer, non-interface field appearing in ForceSendFields will be
2187	// sent to the server regardless of whether the field is empty or not.
2188	// This may be used to include empty fields in Patch requests.
2189	ForceSendFields []string `json:"-"`
2190
2191	// NullFields is a list of field names (e.g. "AccountId") to include in
2192	// API requests with the JSON null value. By default, fields with empty
2193	// values are omitted from API requests. However, any field with an
2194	// empty value appearing in NullFields will be sent to the server as
2195	// null. It is an error if a field in this list has a non-empty value.
2196	// This may be used to include null fields in Patch requests.
2197	NullFields []string `json:"-"`
2198}
2199
2200func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2201	type NoMethod AccounttaxCustomBatchRequestEntry
2202	raw := NoMethod(*s)
2203	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2204}
2205
2206type AccounttaxCustomBatchResponse struct {
2207	// Entries: The result of the execution of the batch requests.
2208	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
2209
2210	// Kind: Identifies what kind of resource this is. Value: the fixed
2211	// string "content#accounttaxCustomBatchResponse".
2212	Kind string `json:"kind,omitempty"`
2213
2214	// ServerResponse contains the HTTP response code and headers from the
2215	// server.
2216	googleapi.ServerResponse `json:"-"`
2217
2218	// ForceSendFields is a list of field names (e.g. "Entries") to
2219	// unconditionally include in API requests. By default, fields with
2220	// empty or default values are omitted from API requests. However, any
2221	// non-pointer, non-interface field appearing in ForceSendFields will be
2222	// sent to the server regardless of whether the field is empty or not.
2223	// This may be used to include empty fields in Patch requests.
2224	ForceSendFields []string `json:"-"`
2225
2226	// NullFields is a list of field names (e.g. "Entries") to include in
2227	// API requests with the JSON null value. By default, fields with empty
2228	// values are omitted from API requests. However, any field with an
2229	// empty value appearing in NullFields will be sent to the server as
2230	// null. It is an error if a field in this list has a non-empty value.
2231	// This may be used to include null fields in Patch requests.
2232	NullFields []string `json:"-"`
2233}
2234
2235func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
2236	type NoMethod AccounttaxCustomBatchResponse
2237	raw := NoMethod(*s)
2238	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2239}
2240
2241// AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
2242// non-batch accounttax response.
2243type AccounttaxCustomBatchResponseEntry struct {
2244	// AccountTax: The retrieved or updated account tax settings.
2245	AccountTax *AccountTax `json:"accountTax,omitempty"`
2246
2247	// BatchId: The ID of the request entry this entry responds to.
2248	BatchId int64 `json:"batchId,omitempty"`
2249
2250	// Errors: A list of errors defined if and only if the request failed.
2251	Errors *Errors `json:"errors,omitempty"`
2252
2253	// Kind: Identifies what kind of resource this is. Value: the fixed
2254	// string "content#accounttaxCustomBatchResponseEntry"
2255	Kind string `json:"kind,omitempty"`
2256
2257	// ForceSendFields is a list of field names (e.g. "AccountTax") to
2258	// unconditionally include in API requests. By default, fields with
2259	// empty or default values are omitted from API requests. However, any
2260	// non-pointer, non-interface field appearing in ForceSendFields will be
2261	// sent to the server regardless of whether the field is empty or not.
2262	// This may be used to include empty fields in Patch requests.
2263	ForceSendFields []string `json:"-"`
2264
2265	// NullFields is a list of field names (e.g. "AccountTax") to include in
2266	// API requests with the JSON null value. By default, fields with empty
2267	// values are omitted from API requests. However, any field with an
2268	// empty value appearing in NullFields will be sent to the server as
2269	// null. It is an error if a field in this list has a non-empty value.
2270	// This may be used to include null fields in Patch requests.
2271	NullFields []string `json:"-"`
2272}
2273
2274func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2275	type NoMethod AccounttaxCustomBatchResponseEntry
2276	raw := NoMethod(*s)
2277	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2278}
2279
2280type AccounttaxListResponse struct {
2281	// Kind: Identifies what kind of resource this is. Value: the fixed
2282	// string "content#accounttaxListResponse".
2283	Kind string `json:"kind,omitempty"`
2284
2285	// NextPageToken: The token for the retrieval of the next page of
2286	// account tax settings.
2287	NextPageToken string `json:"nextPageToken,omitempty"`
2288
2289	Resources []*AccountTax `json:"resources,omitempty"`
2290
2291	// ServerResponse contains the HTTP response code and headers from the
2292	// server.
2293	googleapi.ServerResponse `json:"-"`
2294
2295	// ForceSendFields is a list of field names (e.g. "Kind") to
2296	// unconditionally include in API requests. By default, fields with
2297	// empty or default values are omitted from API requests. However, any
2298	// non-pointer, non-interface field appearing in ForceSendFields will be
2299	// sent to the server regardless of whether the field is empty or not.
2300	// This may be used to include empty fields in Patch requests.
2301	ForceSendFields []string `json:"-"`
2302
2303	// NullFields is a list of field names (e.g. "Kind") to include in API
2304	// requests with the JSON null value. By default, fields with empty
2305	// values are omitted from API requests. However, any field with an
2306	// empty value appearing in NullFields will be sent to the server as
2307	// null. It is an error if a field in this list has a non-empty value.
2308	// This may be used to include null fields in Patch requests.
2309	NullFields []string `json:"-"`
2310}
2311
2312func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
2313	type NoMethod AccounttaxListResponse
2314	raw := NoMethod(*s)
2315	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2316}
2317
2318// ActivateBuyOnGoogleProgramRequest: Request message for the
2319// ActivateProgram method.
2320type ActivateBuyOnGoogleProgramRequest struct {
2321}
2322
2323type Amount struct {
2324	// PriceAmount: [required] The pre-tax or post-tax price depending on
2325	// the location of the order.
2326	PriceAmount *Price `json:"priceAmount,omitempty"`
2327
2328	// TaxAmount: [required] Tax value.
2329	TaxAmount *Price `json:"taxAmount,omitempty"`
2330
2331	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
2332	// unconditionally include in API requests. By default, fields with
2333	// empty or default values are omitted from API requests. However, any
2334	// non-pointer, non-interface field appearing in ForceSendFields will be
2335	// sent to the server regardless of whether the field is empty or not.
2336	// This may be used to include empty fields in Patch requests.
2337	ForceSendFields []string `json:"-"`
2338
2339	// NullFields is a list of field names (e.g. "PriceAmount") to include
2340	// in API requests with the JSON null value. By default, fields with
2341	// empty values are omitted from API requests. However, any field with
2342	// an empty value appearing in NullFields will be sent to the server as
2343	// null. It is an error if a field in this list has a non-empty value.
2344	// This may be used to include null fields in Patch requests.
2345	NullFields []string `json:"-"`
2346}
2347
2348func (s *Amount) MarshalJSON() ([]byte, error) {
2349	type NoMethod Amount
2350	raw := NoMethod(*s)
2351	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2352}
2353
2354type BusinessDayConfig struct {
2355	// BusinessDays: Regular business days, such as '"monday"'. May not be
2356	// empty.
2357	BusinessDays []string `json:"businessDays,omitempty"`
2358
2359	// ForceSendFields is a list of field names (e.g. "BusinessDays") to
2360	// unconditionally include in API requests. By default, fields with
2361	// empty or default values are omitted from API requests. However, any
2362	// non-pointer, non-interface field appearing in ForceSendFields will be
2363	// sent to the server regardless of whether the field is empty or not.
2364	// This may be used to include empty fields in Patch requests.
2365	ForceSendFields []string `json:"-"`
2366
2367	// NullFields is a list of field names (e.g. "BusinessDays") to include
2368	// in API requests with the JSON null value. By default, fields with
2369	// empty values are omitted from API requests. However, any field with
2370	// an empty value appearing in NullFields will be sent to the server as
2371	// null. It is an error if a field in this list has a non-empty value.
2372	// This may be used to include null fields in Patch requests.
2373	NullFields []string `json:"-"`
2374}
2375
2376func (s *BusinessDayConfig) MarshalJSON() ([]byte, error) {
2377	type NoMethod BusinessDayConfig
2378	raw := NoMethod(*s)
2379	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2380}
2381
2382// BuyOnGoogleProgramStatus: Response message for the GetProgramStatus
2383// method.
2384type BuyOnGoogleProgramStatus struct {
2385	// BusinessModel: The business models in which merchant participates.
2386	//
2387	// Possible values:
2388	//   "BUSINESS_MODEL_UNSPECIFIED" - Default value when business model is
2389	// not set.
2390	//   "MANUFACTURER" - Merchant is a manufacturer.
2391	//   "IMPORTER" - Merchant is an importer.
2392	//   "RESELLER" - Merchant is a reseller.
2393	//   "OTHER" - Merchant has a different business model.
2394	BusinessModel []string `json:"businessModel,omitempty"`
2395
2396	// CustomerServicePendingEmail: The customer service pending email.
2397	// After verification this field becomes empty.
2398	CustomerServicePendingEmail string `json:"customerServicePendingEmail,omitempty"`
2399
2400	// CustomerServicePendingPhoneNumber: The pending phone number specified
2401	// for BuyOnGoogle program. It might be different than account level
2402	// phone number. In order to update this field the
2403	// customer_service_pending_phone_region_code must also be set. After
2404	// verification this field becomes empty.
2405	CustomerServicePendingPhoneNumber string `json:"customerServicePendingPhoneNumber,omitempty"`
2406
2407	// CustomerServicePendingPhoneRegionCode: Two letter country code for
2408	// the pending phone number, for example `CA` for Canadian numbers. See
2409	// the ISO 3166-1 alpha-2
2410	// (https://wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)
2411	// officially assigned codes. In order to update this field the
2412	// customer_service_pending_phone_number must also be set. After
2413	// verification this field becomes empty.
2414	CustomerServicePendingPhoneRegionCode string `json:"customerServicePendingPhoneRegionCode,omitempty"`
2415
2416	// CustomerServiceVerifiedEmail: Output only. The customer service
2417	// verified email.
2418	CustomerServiceVerifiedEmail string `json:"customerServiceVerifiedEmail,omitempty"`
2419
2420	// CustomerServiceVerifiedPhoneNumber: Output only. The verified phone
2421	// number specified for BuyOnGoogle program. It might be different than
2422	// account level phone number.
2423	CustomerServiceVerifiedPhoneNumber string `json:"customerServiceVerifiedPhoneNumber,omitempty"`
2424
2425	// CustomerServiceVerifiedPhoneRegionCode: Output only. Two letter
2426	// country code for the verified phone number, for example `CA` for
2427	// Canadian numbers. See the ISO 3166-1 alpha-2
2428	// (https://wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)
2429	// officially assigned codes.
2430	CustomerServiceVerifiedPhoneRegionCode string `json:"customerServiceVerifiedPhoneRegionCode,omitempty"`
2431
2432	// OnlineSalesChannel: The channels through which the merchant is
2433	// selling.
2434	//
2435	// Possible values:
2436	//   "ONLINE_SALES_CHANNEL_UNSPECIFIED" - Default value when online
2437	// sales channel is not set.
2438	//   "GOOGLE_EXCLUSIVE" - Merchant is selling exclusively on Google.
2439	//   "GOOGLE_AND_OTHER_WEBSITES" - Merchant is selling on Google and
2440	// other websites.
2441	OnlineSalesChannel string `json:"onlineSalesChannel,omitempty"`
2442
2443	// ParticipationStage: Output only. The current participation stage for
2444	// the program.
2445	//
2446	// Possible values:
2447	//   "PROGRAM_PARTICIPATION_STAGE_UNSPECIFIED" - Default value when
2448	// participation stage is not set.
2449	//   "NOT_ELIGIBLE" - Merchant is not eligible for onboarding to a given
2450	// program in a specific region code.
2451	//   "ELIGIBLE" - Merchant is eligible for onboarding to a given program
2452	// in a specific region code.
2453	//   "ONBOARDING" - Merchant is onboarding to a given program in a
2454	// specific region code.
2455	//   "ELIGIBLE_FOR_REVIEW" - Merchant fulfilled all the requirements and
2456	// is ready to request review in a specific region code.
2457	//   "PENDING_REVIEW" - Merchant is waiting for the review to be
2458	// completed in a specific region code.
2459	//   "REVIEW_DISAPPROVED" - The review for a merchant has been rejected
2460	// in a specific region code.
2461	//   "ACTIVE" - Merchant's program participation is active for a
2462	// specific region code.
2463	//   "PAUSED" - Participation has been paused.
2464	ParticipationStage string `json:"participationStage,omitempty"`
2465
2466	// ServerResponse contains the HTTP response code and headers from the
2467	// server.
2468	googleapi.ServerResponse `json:"-"`
2469
2470	// ForceSendFields is a list of field names (e.g. "BusinessModel") to
2471	// unconditionally include in API requests. By default, fields with
2472	// empty or default values are omitted from API requests. However, any
2473	// non-pointer, non-interface field appearing in ForceSendFields will be
2474	// sent to the server regardless of whether the field is empty or not.
2475	// This may be used to include empty fields in Patch requests.
2476	ForceSendFields []string `json:"-"`
2477
2478	// NullFields is a list of field names (e.g. "BusinessModel") to include
2479	// in API requests with the JSON null value. By default, fields with
2480	// empty values are omitted from API requests. However, any field with
2481	// an empty value appearing in NullFields will be sent to the server as
2482	// null. It is an error if a field in this list has a non-empty value.
2483	// This may be used to include null fields in Patch requests.
2484	NullFields []string `json:"-"`
2485}
2486
2487func (s *BuyOnGoogleProgramStatus) MarshalJSON() ([]byte, error) {
2488	type NoMethod BuyOnGoogleProgramStatus
2489	raw := NoMethod(*s)
2490	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2491}
2492
2493// CaptureOrderRequest: Request message for the CaptureOrder method.
2494type CaptureOrderRequest struct {
2495}
2496
2497// CaptureOrderResponse: Response message for the CaptureOrder method.
2498type CaptureOrderResponse struct {
2499	// ExecutionStatus: The status of the execution. Only defined if the
2500	// request was successful. Acceptable values are: * "duplicate" *
2501	// "executed"
2502	//
2503	// Possible values:
2504	//   "EXECUTION_STATUS_UNSPECIFIED" - Default value. This value is
2505	// unused.
2506	//   "EXECUTED" - The request was completed successfully.
2507	//   "DUPLICATE" - The request was not performed because it already
2508	// executed once successfully.
2509	ExecutionStatus string `json:"executionStatus,omitempty"`
2510
2511	// ServerResponse contains the HTTP response code and headers from the
2512	// server.
2513	googleapi.ServerResponse `json:"-"`
2514
2515	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
2516	// unconditionally include in API requests. By default, fields with
2517	// empty or default values are omitted from API requests. However, any
2518	// non-pointer, non-interface field appearing in ForceSendFields will be
2519	// sent to the server regardless of whether the field is empty or not.
2520	// This may be used to include empty fields in Patch requests.
2521	ForceSendFields []string `json:"-"`
2522
2523	// NullFields is a list of field names (e.g. "ExecutionStatus") to
2524	// include in API requests with the JSON null value. By default, fields
2525	// with empty values are omitted from API requests. However, any field
2526	// with an empty value appearing in NullFields will be sent to the
2527	// server as null. It is an error if a field in this list has a
2528	// non-empty value. This may be used to include null fields in Patch
2529	// requests.
2530	NullFields []string `json:"-"`
2531}
2532
2533func (s *CaptureOrderResponse) MarshalJSON() ([]byte, error) {
2534	type NoMethod CaptureOrderResponse
2535	raw := NoMethod(*s)
2536	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2537}
2538
2539type CarrierRate struct {
2540	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list
2541	// of supported carriers can be retrieved via the `getSupportedCarriers`
2542	// method. Required.
2543	CarrierName string `json:"carrierName,omitempty"`
2544
2545	// CarrierService: Carrier service, such as "ground" or "2 days".
2546	// The list of supported services for a carrier can be retrieved via the
2547	// `getSupportedCarriers` method. Required.
2548	CarrierService string `json:"carrierService,omitempty"`
2549
2550	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
2551	// example `{ "value": "1", "currency" : "USD" }` adds $1 to the rate,
2552	// `{ "value": "-3", "currency" : "USD" }` removes $3 from the rate.
2553	// Optional.
2554	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
2555
2556	// Name: Name of the carrier rate. Must be unique per rate group.
2557	// Required.
2558	Name string `json:"name,omitempty"`
2559
2560	// OriginPostalCode: Shipping origin for this carrier rate. Required.
2561	OriginPostalCode string `json:"originPostalCode,omitempty"`
2562
2563	// PercentageAdjustment: Multiplicative shipping rate modifier as a
2564	// number in decimal notation. Can be negative. For example "5.4"
2565	// increases the rate by 5.4%, "-3" decreases the rate by 3%.
2566	// Optional.
2567	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
2568
2569	// ForceSendFields is a list of field names (e.g. "CarrierName") to
2570	// unconditionally include in API requests. By default, fields with
2571	// empty or default values are omitted from API requests. However, any
2572	// non-pointer, non-interface field appearing in ForceSendFields will be
2573	// sent to the server regardless of whether the field is empty or not.
2574	// This may be used to include empty fields in Patch requests.
2575	ForceSendFields []string `json:"-"`
2576
2577	// NullFields is a list of field names (e.g. "CarrierName") to include
2578	// in API requests with the JSON null value. By default, fields with
2579	// empty values are omitted from API requests. However, any field with
2580	// an empty value appearing in NullFields will be sent to the server as
2581	// null. It is an error if a field in this list has a non-empty value.
2582	// This may be used to include null fields in Patch requests.
2583	NullFields []string `json:"-"`
2584}
2585
2586func (s *CarrierRate) MarshalJSON() ([]byte, error) {
2587	type NoMethod CarrierRate
2588	raw := NoMethod(*s)
2589	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2590}
2591
2592type CarriersCarrier struct {
2593	// Country: The CLDR country code of the carrier (e.g., "US"). Always
2594	// present.
2595	Country string `json:"country,omitempty"`
2596
2597	// EddServices: A list of services supported for EDD (Estimated Delivery
2598	// Date) calculation. This is the list of valid values for
2599	// WarehouseBasedDeliveryTime.carrierService.
2600	EddServices []string `json:"eddServices,omitempty"`
2601
2602	// Name: The name of the carrier (e.g., "UPS"). Always present.
2603	Name string `json:"name,omitempty"`
2604
2605	// Services: A list of supported services (e.g., "ground") for that
2606	// carrier. Contains at least one service. This is the list of valid
2607	// values for CarrierRate.carrierService.
2608	Services []string `json:"services,omitempty"`
2609
2610	// ForceSendFields is a list of field names (e.g. "Country") to
2611	// unconditionally include in API requests. By default, fields with
2612	// empty or default values are omitted from API requests. However, any
2613	// non-pointer, non-interface field appearing in ForceSendFields will be
2614	// sent to the server regardless of whether the field is empty or not.
2615	// This may be used to include empty fields in Patch requests.
2616	ForceSendFields []string `json:"-"`
2617
2618	// NullFields is a list of field names (e.g. "Country") to include in
2619	// API requests with the JSON null value. By default, fields with empty
2620	// values are omitted from API requests. However, any field with an
2621	// empty value appearing in NullFields will be sent to the server as
2622	// null. It is an error if a field in this list has a non-empty value.
2623	// This may be used to include null fields in Patch requests.
2624	NullFields []string `json:"-"`
2625}
2626
2627func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
2628	type NoMethod CarriersCarrier
2629	raw := NoMethod(*s)
2630	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2631}
2632
2633// Collection: The collection message.
2634type Collection struct {
2635	// CustomLabel0: Label that you assign to a collection to help organize
2636	// bidding and reporting in Shopping campaigns. Custom label
2637	// (https://support.google.com/merchants/answer/9674217)
2638	CustomLabel0 string `json:"customLabel0,omitempty"`
2639
2640	// CustomLabel1: Label that you assign to a collection to help organize
2641	// bidding and reporting in Shopping campaigns.
2642	CustomLabel1 string `json:"customLabel1,omitempty"`
2643
2644	// CustomLabel2: Label that you assign to a collection to help organize
2645	// bidding and reporting in Shopping campaigns.
2646	CustomLabel2 string `json:"customLabel2,omitempty"`
2647
2648	// CustomLabel3: Label that you assign to a collection to help organize
2649	// bidding and reporting in Shopping campaigns.
2650	CustomLabel3 string `json:"customLabel3,omitempty"`
2651
2652	// CustomLabel4: Label that you assign to a collection to help organize
2653	// bidding and reporting in Shopping campaigns.
2654	CustomLabel4 string `json:"customLabel4,omitempty"`
2655
2656	// FeaturedProduct: This identifies one or more products associated with
2657	// the collection. Used as a lookup to the corresponding product ID in
2658	// your product feeds. Provide a maximum of 100 featuredProduct (for
2659	// collections). Provide up to 10 featuredProduct (for Shoppable Images
2660	// only) with ID and X and Y coordinates. featured_product attribute
2661	// (https://support.google.com/merchants/answer/9703736)
2662	FeaturedProduct []*CollectionFeaturedProduct `json:"featuredProduct,omitempty"`
2663
2664	// Headline: Your collection's name. headline attribute
2665	// (https://support.google.com/merchants/answer/9673580)
2666	Headline []string `json:"headline,omitempty"`
2667
2668	// Id: Required. The REST ID of the collection. Content API methods that
2669	// operate on collections take this as their collectionId parameter. The
2670	// REST ID for a collection is of the form collectionId. id attribute
2671	// (https://support.google.com/merchants/answer/9649290)
2672	Id string `json:"id,omitempty"`
2673
2674	// ImageLink: The URL of a collection’s image. image_link attribute
2675	// (https://support.google.com/merchants/answer/9703236)
2676	ImageLink []string `json:"imageLink,omitempty"`
2677
2678	// Language: The language of a collection and the language of any
2679	// featured products linked to the collection. language attribute
2680	// (https://support.google.com/merchants/answer/9673781)
2681	Language string `json:"language,omitempty"`
2682
2683	// Link: A collection’s landing page. URL directly linking to your
2684	// collection's page on your website. link attribute
2685	// (https://support.google.com/merchants/answer/9673983)
2686	Link string `json:"link,omitempty"`
2687
2688	// MobileLink: A collection’s mobile-optimized landing page when you
2689	// have a different URL for mobile and desktop traffic. mobile_link
2690	// attribute (https://support.google.com/merchants/answer/9646123)
2691	MobileLink string `json:"mobileLink,omitempty"`
2692
2693	// ProductCountry: product_country attribute
2694	// (https://support.google.com/merchants/answer/9674155)
2695	ProductCountry string `json:"productCountry,omitempty"`
2696
2697	// ServerResponse contains the HTTP response code and headers from the
2698	// server.
2699	googleapi.ServerResponse `json:"-"`
2700
2701	// ForceSendFields is a list of field names (e.g. "CustomLabel0") to
2702	// unconditionally include in API requests. By default, fields with
2703	// empty or default values are omitted from API requests. However, any
2704	// non-pointer, non-interface field appearing in ForceSendFields will be
2705	// sent to the server regardless of whether the field is empty or not.
2706	// This may be used to include empty fields in Patch requests.
2707	ForceSendFields []string `json:"-"`
2708
2709	// NullFields is a list of field names (e.g. "CustomLabel0") to include
2710	// in API requests with the JSON null value. By default, fields with
2711	// empty values are omitted from API requests. However, any field with
2712	// an empty value appearing in NullFields will be sent to the server as
2713	// null. It is an error if a field in this list has a non-empty value.
2714	// This may be used to include null fields in Patch requests.
2715	NullFields []string `json:"-"`
2716}
2717
2718func (s *Collection) MarshalJSON() ([]byte, error) {
2719	type NoMethod Collection
2720	raw := NoMethod(*s)
2721	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2722}
2723
2724// CollectionFeaturedProduct: The message for FeaturedProduct.
2725// FeaturedProduct (https://support.google.com/merchants/answer/9703736)
2726type CollectionFeaturedProduct struct {
2727	// OfferId: The unique identifier for the product item.
2728	OfferId string `json:"offerId,omitempty"`
2729
2730	// X: Required. X-coordinate of the product callout on the Shoppable
2731	// Image.
2732	X float64 `json:"x,omitempty"`
2733
2734	// Y: Required. Y-coordinate of the product callout on the Shoppable
2735	// Image.
2736	Y float64 `json:"y,omitempty"`
2737
2738	// ForceSendFields is a list of field names (e.g. "OfferId") to
2739	// unconditionally include in API requests. By default, fields with
2740	// empty or default values are omitted from API requests. However, any
2741	// non-pointer, non-interface field appearing in ForceSendFields will be
2742	// sent to the server regardless of whether the field is empty or not.
2743	// This may be used to include empty fields in Patch requests.
2744	ForceSendFields []string `json:"-"`
2745
2746	// NullFields is a list of field names (e.g. "OfferId") to include in
2747	// API requests with the JSON null value. By default, fields with empty
2748	// values are omitted from API requests. However, any field with an
2749	// empty value appearing in NullFields will be sent to the server as
2750	// null. It is an error if a field in this list has a non-empty value.
2751	// This may be used to include null fields in Patch requests.
2752	NullFields []string `json:"-"`
2753}
2754
2755func (s *CollectionFeaturedProduct) MarshalJSON() ([]byte, error) {
2756	type NoMethod CollectionFeaturedProduct
2757	raw := NoMethod(*s)
2758	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2759}
2760
2761func (s *CollectionFeaturedProduct) UnmarshalJSON(data []byte) error {
2762	type NoMethod CollectionFeaturedProduct
2763	var s1 struct {
2764		X gensupport.JSONFloat64 `json:"x"`
2765		Y gensupport.JSONFloat64 `json:"y"`
2766		*NoMethod
2767	}
2768	s1.NoMethod = (*NoMethod)(s)
2769	if err := json.Unmarshal(data, &s1); err != nil {
2770		return err
2771	}
2772	s.X = float64(s1.X)
2773	s.Y = float64(s1.Y)
2774	return nil
2775}
2776
2777// CollectionStatus: The collectionstatus message.
2778type CollectionStatus struct {
2779	// CollectionLevelIssuses: A list of all issues associated with the
2780	// collection.
2781	CollectionLevelIssuses []*CollectionStatusItemLevelIssue `json:"collectionLevelIssuses,omitempty"`
2782
2783	// CreationDate: Date on which the collection has been created in ISO
2784	// 8601 (http://en.wikipedia.org/wiki/ISO_8601) format: Date, time, and
2785	// offset, e.g. "2020-01-02T09:00:00+01:00" or "2020-01-02T09:00:00Z"
2786	CreationDate string `json:"creationDate,omitempty"`
2787
2788	// DestinationStatuses: The intended destinations for the collection.
2789	DestinationStatuses []*CollectionStatusDestinationStatus `json:"destinationStatuses,omitempty"`
2790
2791	// Id: Required. The ID of the collection for which status is reported.
2792	Id string `json:"id,omitempty"`
2793
2794	// LastUpdateDate: Date on which the collection has been last updated in
2795	// ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601) format: Date, time,
2796	// and offset, e.g. "2020-01-02T09:00:00+01:00" or
2797	// "2020-01-02T09:00:00Z"
2798	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
2799
2800	// ServerResponse contains the HTTP response code and headers from the
2801	// server.
2802	googleapi.ServerResponse `json:"-"`
2803
2804	// ForceSendFields is a list of field names (e.g.
2805	// "CollectionLevelIssuses") to unconditionally include in API requests.
2806	// By default, fields with empty or default values are omitted from API
2807	// requests. However, any non-pointer, non-interface field appearing in
2808	// ForceSendFields will be sent to the server regardless of whether the
2809	// field is empty or not. This may be used to include empty fields in
2810	// Patch requests.
2811	ForceSendFields []string `json:"-"`
2812
2813	// NullFields is a list of field names (e.g. "CollectionLevelIssuses")
2814	// to include in API requests with the JSON null value. By default,
2815	// fields with empty values are omitted from API requests. However, any
2816	// field with an empty value appearing in NullFields will be sent to the
2817	// server as null. It is an error if a field in this list has a
2818	// non-empty value. This may be used to include null fields in Patch
2819	// requests.
2820	NullFields []string `json:"-"`
2821}
2822
2823func (s *CollectionStatus) MarshalJSON() ([]byte, error) {
2824	type NoMethod CollectionStatus
2825	raw := NoMethod(*s)
2826	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2827}
2828
2829// CollectionStatusDestinationStatus: Destination status message.
2830type CollectionStatusDestinationStatus struct {
2831	// Destination: The name of the destination
2832	Destination string `json:"destination,omitempty"`
2833
2834	// Status: The status for the specified destination.
2835	Status string `json:"status,omitempty"`
2836
2837	// ForceSendFields is a list of field names (e.g. "Destination") to
2838	// unconditionally include in API requests. By default, fields with
2839	// empty or default values are omitted from API requests. However, any
2840	// non-pointer, non-interface field appearing in ForceSendFields will be
2841	// sent to the server regardless of whether the field is empty or not.
2842	// This may be used to include empty fields in Patch requests.
2843	ForceSendFields []string `json:"-"`
2844
2845	// NullFields is a list of field names (e.g. "Destination") to include
2846	// in API requests with the JSON null value. By default, fields with
2847	// empty values are omitted from API requests. However, any field with
2848	// an empty value appearing in NullFields will be sent to the server as
2849	// null. It is an error if a field in this list has a non-empty value.
2850	// This may be used to include null fields in Patch requests.
2851	NullFields []string `json:"-"`
2852}
2853
2854func (s *CollectionStatusDestinationStatus) MarshalJSON() ([]byte, error) {
2855	type NoMethod CollectionStatusDestinationStatus
2856	raw := NoMethod(*s)
2857	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2858}
2859
2860// CollectionStatusItemLevelIssue: Issue associated with the collection.
2861type CollectionStatusItemLevelIssue struct {
2862	// AttributeName: The attribute's name, if the issue is caused by a
2863	// single attribute.
2864	AttributeName string `json:"attributeName,omitempty"`
2865
2866	// Code: The error code of the issue.
2867	Code string `json:"code,omitempty"`
2868
2869	// Description: A short issue description in English.
2870	Description string `json:"description,omitempty"`
2871
2872	// Destination: The destination the issue applies to.
2873	Destination string `json:"destination,omitempty"`
2874
2875	// Detail: A detailed issue description in English.
2876	Detail string `json:"detail,omitempty"`
2877
2878	// Documentation: The URL of a web page to help with resolving this
2879	// issue.
2880	Documentation string `json:"documentation,omitempty"`
2881
2882	// Resolution: Whether the issue can be resolved by the merchant.
2883	Resolution string `json:"resolution,omitempty"`
2884
2885	// Servability: How this issue affects the serving of the collection.
2886	Servability string `json:"servability,omitempty"`
2887
2888	// ForceSendFields is a list of field names (e.g. "AttributeName") to
2889	// unconditionally include in API requests. By default, fields with
2890	// empty or default values are omitted from API requests. However, any
2891	// non-pointer, non-interface field appearing in ForceSendFields will be
2892	// sent to the server regardless of whether the field is empty or not.
2893	// This may be used to include empty fields in Patch requests.
2894	ForceSendFields []string `json:"-"`
2895
2896	// NullFields is a list of field names (e.g. "AttributeName") to include
2897	// in API requests with the JSON null value. By default, fields with
2898	// empty values are omitted from API requests. However, any field with
2899	// an empty value appearing in NullFields will be sent to the server as
2900	// null. It is an error if a field in this list has a non-empty value.
2901	// This may be used to include null fields in Patch requests.
2902	NullFields []string `json:"-"`
2903}
2904
2905func (s *CollectionStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
2906	type NoMethod CollectionStatusItemLevelIssue
2907	raw := NoMethod(*s)
2908	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2909}
2910
2911// Css: Information about CSS domain.
2912type Css struct {
2913	// CssDomainId: Output only. Immutable. The CSS domain ID.
2914	CssDomainId int64 `json:"cssDomainId,omitempty,string"`
2915
2916	// CssGroupId: Output only. Immutable. The ID of the CSS group this CSS
2917	// domain is affiliated with. Only populated for CSS group users.
2918	CssGroupId int64 `json:"cssGroupId,omitempty,string"`
2919
2920	// DisplayName: Output only. Immutable. The CSS domain's display name,
2921	// used when space is constrained.
2922	DisplayName string `json:"displayName,omitempty"`
2923
2924	// FullName: Output only. Immutable. The CSS domain's full name.
2925	FullName string `json:"fullName,omitempty"`
2926
2927	// HomepageUri: Output only. Immutable. The CSS domain's homepage.
2928	HomepageUri string `json:"homepageUri,omitempty"`
2929
2930	// LabelIds: A list of label IDs that are assigned to this CSS domain by
2931	// its CSS group. Only populated for CSS group users.
2932	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
2933
2934	// ServerResponse contains the HTTP response code and headers from the
2935	// server.
2936	googleapi.ServerResponse `json:"-"`
2937
2938	// ForceSendFields is a list of field names (e.g. "CssDomainId") to
2939	// unconditionally include in API requests. By default, fields with
2940	// empty or default values are omitted from API requests. However, any
2941	// non-pointer, non-interface field appearing in ForceSendFields will be
2942	// sent to the server regardless of whether the field is empty or not.
2943	// This may be used to include empty fields in Patch requests.
2944	ForceSendFields []string `json:"-"`
2945
2946	// NullFields is a list of field names (e.g. "CssDomainId") to include
2947	// in API requests with the JSON null value. By default, fields with
2948	// empty values are omitted from API requests. However, any field with
2949	// an empty value appearing in NullFields will be sent to the server as
2950	// null. It is an error if a field in this list has a non-empty value.
2951	// This may be used to include null fields in Patch requests.
2952	NullFields []string `json:"-"`
2953}
2954
2955func (s *Css) MarshalJSON() ([]byte, error) {
2956	type NoMethod Css
2957	raw := NoMethod(*s)
2958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2959}
2960
2961type CustomAttribute struct {
2962	// GroupValues: Subattributes within this attribute group. Exactly one
2963	// of value or groupValues must be provided.
2964	GroupValues []*CustomAttribute `json:"groupValues,omitempty"`
2965
2966	// Name: The name of the attribute. Underscores will be replaced by
2967	// spaces upon insertion.
2968	Name string `json:"name,omitempty"`
2969
2970	// Value: The value of the attribute.
2971	Value string `json:"value,omitempty"`
2972
2973	// ForceSendFields is a list of field names (e.g. "GroupValues") to
2974	// unconditionally include in API requests. By default, fields with
2975	// empty or default values are omitted from API requests. However, any
2976	// non-pointer, non-interface field appearing in ForceSendFields will be
2977	// sent to the server regardless of whether the field is empty or not.
2978	// This may be used to include empty fields in Patch requests.
2979	ForceSendFields []string `json:"-"`
2980
2981	// NullFields is a list of field names (e.g. "GroupValues") to include
2982	// in API requests with the JSON null value. By default, fields with
2983	// empty values are omitted from API requests. However, any field with
2984	// an empty value appearing in NullFields will be sent to the server as
2985	// null. It is an error if a field in this list has a non-empty value.
2986	// This may be used to include null fields in Patch requests.
2987	NullFields []string `json:"-"`
2988}
2989
2990func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
2991	type NoMethod CustomAttribute
2992	raw := NoMethod(*s)
2993	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2994}
2995
2996type CustomerReturnReason struct {
2997	// Description: Description of the reason.
2998	Description string `json:"description,omitempty"`
2999
3000	// ReasonCode: Code of the return reason. Acceptable values are: -
3001	// "betterPriceFound" - "changedMind" - "damagedOrDefectiveItem" -
3002	// "didNotMatchDescription" - "doesNotFit" - "expiredItem" -
3003	// "incorrectItemReceived" - "noLongerNeeded" - "notSpecified" -
3004	// "orderedWrongItem" - "other" - "qualityNotExpected" -
3005	// "receivedTooLate" - "undeliverable"
3006	ReasonCode string `json:"reasonCode,omitempty"`
3007
3008	// ForceSendFields is a list of field names (e.g. "Description") to
3009	// unconditionally include in API requests. By default, fields with
3010	// empty or default values are omitted from API requests. However, any
3011	// non-pointer, non-interface field appearing in ForceSendFields will be
3012	// sent to the server regardless of whether the field is empty or not.
3013	// This may be used to include empty fields in Patch requests.
3014	ForceSendFields []string `json:"-"`
3015
3016	// NullFields is a list of field names (e.g. "Description") to include
3017	// in API requests with the JSON null value. By default, fields with
3018	// empty values are omitted from API requests. However, any field with
3019	// an empty value appearing in NullFields will be sent to the server as
3020	// null. It is an error if a field in this list has a non-empty value.
3021	// This may be used to include null fields in Patch requests.
3022	NullFields []string `json:"-"`
3023}
3024
3025func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
3026	type NoMethod CustomerReturnReason
3027	raw := NoMethod(*s)
3028	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3029}
3030
3031type CutoffTime struct {
3032	// Hour: Hour of the cutoff time until which an order has to be placed
3033	// to be processed in the same day. Required.
3034	Hour int64 `json:"hour,omitempty"`
3035
3036	// Minute: Minute of the cutoff time until which an order has to be
3037	// placed to be processed in the same day. Required.
3038	Minute int64 `json:"minute,omitempty"`
3039
3040	// Timezone: Timezone identifier for the cutoff time. A list of
3041	// identifiers can be found in the AdWords API documentation. E.g.
3042	// "Europe/Zurich". Required.
3043	Timezone string `json:"timezone,omitempty"`
3044
3045	// ForceSendFields is a list of field names (e.g. "Hour") to
3046	// unconditionally include in API requests. By default, fields with
3047	// empty or default values are omitted from API requests. However, any
3048	// non-pointer, non-interface field appearing in ForceSendFields will be
3049	// sent to the server regardless of whether the field is empty or not.
3050	// This may be used to include empty fields in Patch requests.
3051	ForceSendFields []string `json:"-"`
3052
3053	// NullFields is a list of field names (e.g. "Hour") to include in API
3054	// requests with the JSON null value. By default, fields with empty
3055	// values are omitted from API requests. However, any field with an
3056	// empty value appearing in NullFields will be sent to the server as
3057	// null. It is an error if a field in this list has a non-empty value.
3058	// This may be used to include null fields in Patch requests.
3059	NullFields []string `json:"-"`
3060}
3061
3062func (s *CutoffTime) MarshalJSON() ([]byte, error) {
3063	type NoMethod CutoffTime
3064	raw := NoMethod(*s)
3065	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3066}
3067
3068// Datafeed: Datafeed configuration data.
3069type Datafeed struct {
3070	// AttributeLanguage: The two-letter ISO 639-1 language in which the
3071	// attributes are defined in the data feed.
3072	AttributeLanguage string `json:"attributeLanguage,omitempty"`
3073
3074	// ContentType: Required. The type of data feed. For product inventory
3075	// feeds, only feeds for local stores, not online stores, are supported.
3076	// Acceptable values are: - "local products" - "product inventory" -
3077	// "products"
3078	ContentType string `json:"contentType,omitempty"`
3079
3080	// FetchSchedule: Fetch schedule for the feed file.
3081	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
3082
3083	// FileName: Required. The filename of the feed. All feeds must have a
3084	// unique file name.
3085	FileName string `json:"fileName,omitempty"`
3086
3087	// Format: Format of the feed file.
3088	Format *DatafeedFormat `json:"format,omitempty"`
3089
3090	// Id: Required for update. The ID of the data feed.
3091	Id int64 `json:"id,omitempty,string"`
3092
3093	// Kind: Identifies what kind of resource this is. Value: the fixed
3094	// string "content#datafeed"
3095	Kind string `json:"kind,omitempty"`
3096
3097	// Name: Required for insert. A descriptive name of the data feed.
3098	Name string `json:"name,omitempty"`
3099
3100	// Targets: The targets this feed should apply to (country, language,
3101	// destinations).
3102	Targets []*DatafeedTarget `json:"targets,omitempty"`
3103
3104	// ServerResponse contains the HTTP response code and headers from the
3105	// server.
3106	googleapi.ServerResponse `json:"-"`
3107
3108	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
3109	// to unconditionally include in API requests. By default, fields with
3110	// empty or default values are omitted from API requests. However, any
3111	// non-pointer, non-interface field appearing in ForceSendFields will be
3112	// sent to the server regardless of whether the field is empty or not.
3113	// This may be used to include empty fields in Patch requests.
3114	ForceSendFields []string `json:"-"`
3115
3116	// NullFields is a list of field names (e.g. "AttributeLanguage") to
3117	// include in API requests with the JSON null value. By default, fields
3118	// with empty values are omitted from API requests. However, any field
3119	// with an empty value appearing in NullFields will be sent to the
3120	// server as null. It is an error if a field in this list has a
3121	// non-empty value. This may be used to include null fields in Patch
3122	// requests.
3123	NullFields []string `json:"-"`
3124}
3125
3126func (s *Datafeed) MarshalJSON() ([]byte, error) {
3127	type NoMethod Datafeed
3128	raw := NoMethod(*s)
3129	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3130}
3131
3132// DatafeedFetchSchedule: The required fields vary based on the
3133// frequency of fetching. For a monthly fetch schedule, day_of_month and
3134// hour are required. For a weekly fetch schedule, weekday and hour are
3135// required. For a daily fetch schedule, only hour is required.
3136type DatafeedFetchSchedule struct {
3137	// DayOfMonth: The day of the month the feed file should be fetched
3138	// (1-31).
3139	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
3140
3141	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
3142	// Center will support automatic scheduled uploads using the HTTP,
3143	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
3144	// link using one of those four protocols.
3145	FetchUrl string `json:"fetchUrl,omitempty"`
3146
3147	// Hour: The hour of the day the feed file should be fetched (0-23).
3148	Hour int64 `json:"hour,omitempty"`
3149
3150	// MinuteOfHour: The minute of the hour the feed file should be fetched
3151	// (0-59). Read-only.
3152	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
3153
3154	// Password: An optional password for fetch_url.
3155	Password string `json:"password,omitempty"`
3156
3157	// Paused: Whether the scheduled fetch is paused or not.
3158	Paused bool `json:"paused,omitempty"`
3159
3160	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
3161	// "America/Los_Angeles".
3162	TimeZone string `json:"timeZone,omitempty"`
3163
3164	// Username: An optional user name for fetch_url.
3165	Username string `json:"username,omitempty"`
3166
3167	// Weekday: The day of the week the feed file should be fetched.
3168	// Acceptable values are: - "monday" - "tuesday" - "wednesday" -
3169	// "thursday" - "friday" - "saturday" - "sunday"
3170	Weekday string `json:"weekday,omitempty"`
3171
3172	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
3173	// unconditionally include in API requests. By default, fields with
3174	// empty or default values are omitted from API requests. However, any
3175	// non-pointer, non-interface field appearing in ForceSendFields will be
3176	// sent to the server regardless of whether the field is empty or not.
3177	// This may be used to include empty fields in Patch requests.
3178	ForceSendFields []string `json:"-"`
3179
3180	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
3181	// API requests with the JSON null value. By default, fields with empty
3182	// values are omitted from API requests. However, any field with an
3183	// empty value appearing in NullFields will be sent to the server as
3184	// null. It is an error if a field in this list has a non-empty value.
3185	// This may be used to include null fields in Patch requests.
3186	NullFields []string `json:"-"`
3187}
3188
3189func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
3190	type NoMethod DatafeedFetchSchedule
3191	raw := NoMethod(*s)
3192	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3193}
3194
3195type DatafeedFormat struct {
3196	// ColumnDelimiter: Delimiter for the separation of values in a
3197	// delimiter-separated values feed. If not specified, the delimiter will
3198	// be auto-detected. Ignored for non-DSV data feeds. Acceptable values
3199	// are: - "pipe" - "tab" - "tilde"
3200	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
3201
3202	// FileEncoding: Character encoding scheme of the data feed. If not
3203	// specified, the encoding will be auto-detected. Acceptable values are:
3204	// - "latin-1" - "utf-16be" - "utf-16le" - "utf-8" -
3205	// "windows-1252"
3206	FileEncoding string `json:"fileEncoding,omitempty"`
3207
3208	// QuotingMode: Specifies how double quotes are interpreted. If not
3209	// specified, the mode will be auto-detected. Ignored for non-DSV data
3210	// feeds. Acceptable values are: - "normal character" - "value
3211	// quoting"
3212	QuotingMode string `json:"quotingMode,omitempty"`
3213
3214	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
3215	// unconditionally include in API requests. By default, fields with
3216	// empty or default values are omitted from API requests. However, any
3217	// non-pointer, non-interface field appearing in ForceSendFields will be
3218	// sent to the server regardless of whether the field is empty or not.
3219	// This may be used to include empty fields in Patch requests.
3220	ForceSendFields []string `json:"-"`
3221
3222	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
3223	// include in API requests with the JSON null value. By default, fields
3224	// with empty values are omitted from API requests. However, any field
3225	// with an empty value appearing in NullFields will be sent to the
3226	// server as null. It is an error if a field in this list has a
3227	// non-empty value. This may be used to include null fields in Patch
3228	// requests.
3229	NullFields []string `json:"-"`
3230}
3231
3232func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
3233	type NoMethod DatafeedFormat
3234	raw := NoMethod(*s)
3235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3236}
3237
3238// DatafeedStatus: The status of a datafeed, i.e., the result of the
3239// last retrieval of the datafeed computed asynchronously when the feed
3240// processing is finished.
3241type DatafeedStatus struct {
3242	// Country: The country for which the status is reported, represented as
3243	// a CLDR territory code.
3244	Country string `json:"country,omitempty"`
3245
3246	// DatafeedId: The ID of the feed for which the status is reported.
3247	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3248
3249	// Errors: The list of errors occurring in the feed.
3250	Errors []*DatafeedStatusError `json:"errors,omitempty"`
3251
3252	// ItemsTotal: The number of items in the feed that were processed.
3253	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
3254
3255	// ItemsValid: The number of items in the feed that were valid.
3256	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
3257
3258	// Kind: Identifies what kind of resource this is. Value: the fixed
3259	// string "content#datafeedStatus"
3260	Kind string `json:"kind,omitempty"`
3261
3262	// Language: The two-letter ISO 639-1 language for which the status is
3263	// reported.
3264	Language string `json:"language,omitempty"`
3265
3266	// LastUploadDate: The last date at which the feed was uploaded.
3267	LastUploadDate string `json:"lastUploadDate,omitempty"`
3268
3269	// ProcessingStatus: The processing status of the feed. Acceptable
3270	// values are: - ""failure": The feed could not be processed or all
3271	// items had errors." - "in progress": The feed is being processed. -
3272	// "none": The feed has not yet been processed. For example, a feed
3273	// that has never been uploaded will have this processing status. -
3274	// "success": The feed was processed successfully, though some items
3275	// might have had errors.
3276	ProcessingStatus string `json:"processingStatus,omitempty"`
3277
3278	// Warnings: The list of errors occurring in the feed.
3279	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
3280
3281	// ServerResponse contains the HTTP response code and headers from the
3282	// server.
3283	googleapi.ServerResponse `json:"-"`
3284
3285	// ForceSendFields is a list of field names (e.g. "Country") to
3286	// unconditionally include in API requests. By default, fields with
3287	// empty or default values are omitted from API requests. However, any
3288	// non-pointer, non-interface field appearing in ForceSendFields will be
3289	// sent to the server regardless of whether the field is empty or not.
3290	// This may be used to include empty fields in Patch requests.
3291	ForceSendFields []string `json:"-"`
3292
3293	// NullFields is a list of field names (e.g. "Country") to include in
3294	// API requests with the JSON null value. By default, fields with empty
3295	// values are omitted from API requests. However, any field with an
3296	// empty value appearing in NullFields will be sent to the server as
3297	// null. It is an error if a field in this list has a non-empty value.
3298	// This may be used to include null fields in Patch requests.
3299	NullFields []string `json:"-"`
3300}
3301
3302func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
3303	type NoMethod DatafeedStatus
3304	raw := NoMethod(*s)
3305	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3306}
3307
3308// DatafeedStatusError: An error occurring in the feed, like "invalid
3309// price".
3310type DatafeedStatusError struct {
3311	// Code: The code of the error, e.g., "validation/invalid_value".
3312	Code string `json:"code,omitempty"`
3313
3314	// Count: The number of occurrences of the error in the feed.
3315	Count uint64 `json:"count,omitempty,string"`
3316
3317	// Examples: A list of example occurrences of the error, grouped by
3318	// product.
3319	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
3320
3321	// Message: The error message, e.g., "Invalid price".
3322	Message string `json:"message,omitempty"`
3323
3324	// ForceSendFields is a list of field names (e.g. "Code") to
3325	// unconditionally include in API requests. By default, fields with
3326	// empty or default values are omitted from API requests. However, any
3327	// non-pointer, non-interface field appearing in ForceSendFields will be
3328	// sent to the server regardless of whether the field is empty or not.
3329	// This may be used to include empty fields in Patch requests.
3330	ForceSendFields []string `json:"-"`
3331
3332	// NullFields is a list of field names (e.g. "Code") to include in API
3333	// requests with the JSON null value. By default, fields with empty
3334	// values are omitted from API requests. However, any field with an
3335	// empty value appearing in NullFields will be sent to the server as
3336	// null. It is an error if a field in this list has a non-empty value.
3337	// This may be used to include null fields in Patch requests.
3338	NullFields []string `json:"-"`
3339}
3340
3341func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
3342	type NoMethod DatafeedStatusError
3343	raw := NoMethod(*s)
3344	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3345}
3346
3347// DatafeedStatusExample: An example occurrence for a particular error.
3348type DatafeedStatusExample struct {
3349	// ItemId: The ID of the example item.
3350	ItemId string `json:"itemId,omitempty"`
3351
3352	// LineNumber: Line number in the data feed where the example is found.
3353	LineNumber uint64 `json:"lineNumber,omitempty,string"`
3354
3355	// Value: The problematic value.
3356	Value string `json:"value,omitempty"`
3357
3358	// ForceSendFields is a list of field names (e.g. "ItemId") to
3359	// unconditionally include in API requests. By default, fields with
3360	// empty or default values are omitted from API requests. However, any
3361	// non-pointer, non-interface field appearing in ForceSendFields will be
3362	// sent to the server regardless of whether the field is empty or not.
3363	// This may be used to include empty fields in Patch requests.
3364	ForceSendFields []string `json:"-"`
3365
3366	// NullFields is a list of field names (e.g. "ItemId") to include in API
3367	// requests with the JSON null value. By default, fields with empty
3368	// values are omitted from API requests. However, any field with an
3369	// empty value appearing in NullFields will be sent to the server as
3370	// null. It is an error if a field in this list has a non-empty value.
3371	// This may be used to include null fields in Patch requests.
3372	NullFields []string `json:"-"`
3373}
3374
3375func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
3376	type NoMethod DatafeedStatusExample
3377	raw := NoMethod(*s)
3378	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3379}
3380
3381type DatafeedTarget struct {
3382	// Country: The country where the items in the feed will be included in
3383	// the search index, represented as a CLDR territory code.
3384	Country string `json:"country,omitempty"`
3385
3386	// ExcludedDestinations: The list of destinations to exclude for this
3387	// target (corresponds to unchecked check boxes in Merchant Center).
3388	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
3389
3390	// IncludedDestinations: The list of destinations to include for this
3391	// target (corresponds to checked check boxes in Merchant Center).
3392	// Default destinations are always included unless provided in
3393	// `excludedDestinations`. List of supported destinations (if available
3394	// to the account): - DisplayAds - Shopping - ShoppingActions -
3395	// SurfacesAcrossGoogle
3396	IncludedDestinations []string `json:"includedDestinations,omitempty"`
3397
3398	// Language: The two-letter ISO 639-1 language of the items in the feed.
3399	// Must be a valid language for `targets[].country`.
3400	Language string `json:"language,omitempty"`
3401
3402	// ForceSendFields is a list of field names (e.g. "Country") to
3403	// unconditionally include in API requests. By default, fields with
3404	// empty or default values are omitted from API requests. However, any
3405	// non-pointer, non-interface field appearing in ForceSendFields will be
3406	// sent to the server regardless of whether the field is empty or not.
3407	// This may be used to include empty fields in Patch requests.
3408	ForceSendFields []string `json:"-"`
3409
3410	// NullFields is a list of field names (e.g. "Country") to include in
3411	// API requests with the JSON null value. By default, fields with empty
3412	// values are omitted from API requests. However, any field with an
3413	// empty value appearing in NullFields will be sent to the server as
3414	// null. It is an error if a field in this list has a non-empty value.
3415	// This may be used to include null fields in Patch requests.
3416	NullFields []string `json:"-"`
3417}
3418
3419func (s *DatafeedTarget) MarshalJSON() ([]byte, error) {
3420	type NoMethod DatafeedTarget
3421	raw := NoMethod(*s)
3422	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3423}
3424
3425type DatafeedsCustomBatchRequest struct {
3426	// Entries: The request entries to be processed in the batch.
3427	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
3428
3429	// ForceSendFields is a list of field names (e.g. "Entries") to
3430	// unconditionally include in API requests. By default, fields with
3431	// empty or default values are omitted from API requests. However, any
3432	// non-pointer, non-interface field appearing in ForceSendFields will be
3433	// sent to the server regardless of whether the field is empty or not.
3434	// This may be used to include empty fields in Patch requests.
3435	ForceSendFields []string `json:"-"`
3436
3437	// NullFields is a list of field names (e.g. "Entries") to include in
3438	// API requests with the JSON null value. By default, fields with empty
3439	// values are omitted from API requests. However, any field with an
3440	// empty value appearing in NullFields will be sent to the server as
3441	// null. It is an error if a field in this list has a non-empty value.
3442	// This may be used to include null fields in Patch requests.
3443	NullFields []string `json:"-"`
3444}
3445
3446func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
3447	type NoMethod DatafeedsCustomBatchRequest
3448	raw := NoMethod(*s)
3449	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3450}
3451
3452// DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
3453// non-batch datafeeds request.
3454type DatafeedsCustomBatchRequestEntry struct {
3455	// BatchId: An entry ID, unique within the batch request.
3456	BatchId int64 `json:"batchId,omitempty"`
3457
3458	// Datafeed: The data feed to insert.
3459	Datafeed *Datafeed `json:"datafeed,omitempty"`
3460
3461	// DatafeedId: The ID of the data feed to get, delete or fetch.
3462	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3463
3464	// MerchantId: The ID of the managing account.
3465	MerchantId uint64 `json:"merchantId,omitempty,string"`
3466
3467	// Method: The method of the batch entry. Acceptable values are: -
3468	// "delete" - "fetchNow" - "get" - "insert" - "update"
3469	Method string `json:"method,omitempty"`
3470
3471	// ForceSendFields is a list of field names (e.g. "BatchId") to
3472	// unconditionally include in API requests. By default, fields with
3473	// empty or default values are omitted from API requests. However, any
3474	// non-pointer, non-interface field appearing in ForceSendFields will be
3475	// sent to the server regardless of whether the field is empty or not.
3476	// This may be used to include empty fields in Patch requests.
3477	ForceSendFields []string `json:"-"`
3478
3479	// NullFields is a list of field names (e.g. "BatchId") to include in
3480	// API requests with the JSON null value. By default, fields with empty
3481	// values are omitted from API requests. However, any field with an
3482	// empty value appearing in NullFields will be sent to the server as
3483	// null. It is an error if a field in this list has a non-empty value.
3484	// This may be used to include null fields in Patch requests.
3485	NullFields []string `json:"-"`
3486}
3487
3488func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3489	type NoMethod DatafeedsCustomBatchRequestEntry
3490	raw := NoMethod(*s)
3491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3492}
3493
3494type DatafeedsCustomBatchResponse struct {
3495	// Entries: The result of the execution of the batch requests.
3496	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
3497
3498	// Kind: Identifies what kind of resource this is. Value: the fixed
3499	// string "content#datafeedsCustomBatchResponse".
3500	Kind string `json:"kind,omitempty"`
3501
3502	// ServerResponse contains the HTTP response code and headers from the
3503	// server.
3504	googleapi.ServerResponse `json:"-"`
3505
3506	// ForceSendFields is a list of field names (e.g. "Entries") to
3507	// unconditionally include in API requests. By default, fields with
3508	// empty or default values are omitted from API requests. However, any
3509	// non-pointer, non-interface field appearing in ForceSendFields will be
3510	// sent to the server regardless of whether the field is empty or not.
3511	// This may be used to include empty fields in Patch requests.
3512	ForceSendFields []string `json:"-"`
3513
3514	// NullFields is a list of field names (e.g. "Entries") to include in
3515	// API requests with the JSON null value. By default, fields with empty
3516	// values are omitted from API requests. However, any field with an
3517	// empty value appearing in NullFields will be sent to the server as
3518	// null. It is an error if a field in this list has a non-empty value.
3519	// This may be used to include null fields in Patch requests.
3520	NullFields []string `json:"-"`
3521}
3522
3523func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
3524	type NoMethod DatafeedsCustomBatchResponse
3525	raw := NoMethod(*s)
3526	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3527}
3528
3529// DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
3530// non-batch datafeeds response.
3531type DatafeedsCustomBatchResponseEntry struct {
3532	// BatchId: The ID of the request entry this entry responds to.
3533	BatchId int64 `json:"batchId,omitempty"`
3534
3535	// Datafeed: The requested data feed. Defined if and only if the request
3536	// was successful.
3537	Datafeed *Datafeed `json:"datafeed,omitempty"`
3538
3539	// Errors: A list of errors defined if and only if the request failed.
3540	Errors *Errors `json:"errors,omitempty"`
3541
3542	// ForceSendFields is a list of field names (e.g. "BatchId") to
3543	// unconditionally include in API requests. By default, fields with
3544	// empty or default values are omitted from API requests. However, any
3545	// non-pointer, non-interface field appearing in ForceSendFields will be
3546	// sent to the server regardless of whether the field is empty or not.
3547	// This may be used to include empty fields in Patch requests.
3548	ForceSendFields []string `json:"-"`
3549
3550	// NullFields is a list of field names (e.g. "BatchId") to include in
3551	// API requests with the JSON null value. By default, fields with empty
3552	// values are omitted from API requests. However, any field with an
3553	// empty value appearing in NullFields will be sent to the server as
3554	// null. It is an error if a field in this list has a non-empty value.
3555	// This may be used to include null fields in Patch requests.
3556	NullFields []string `json:"-"`
3557}
3558
3559func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3560	type NoMethod DatafeedsCustomBatchResponseEntry
3561	raw := NoMethod(*s)
3562	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3563}
3564
3565type DatafeedsFetchNowResponse struct {
3566	// Kind: Identifies what kind of resource this is. Value: the fixed
3567	// string "content#datafeedsFetchNowResponse".
3568	Kind string `json:"kind,omitempty"`
3569
3570	// ServerResponse contains the HTTP response code and headers from the
3571	// server.
3572	googleapi.ServerResponse `json:"-"`
3573
3574	// ForceSendFields is a list of field names (e.g. "Kind") to
3575	// unconditionally include in API requests. By default, fields with
3576	// empty or default values are omitted from API requests. However, any
3577	// non-pointer, non-interface field appearing in ForceSendFields will be
3578	// sent to the server regardless of whether the field is empty or not.
3579	// This may be used to include empty fields in Patch requests.
3580	ForceSendFields []string `json:"-"`
3581
3582	// NullFields is a list of field names (e.g. "Kind") to include in API
3583	// requests with the JSON null value. By default, fields with empty
3584	// values are omitted from API requests. However, any field with an
3585	// empty value appearing in NullFields will be sent to the server as
3586	// null. It is an error if a field in this list has a non-empty value.
3587	// This may be used to include null fields in Patch requests.
3588	NullFields []string `json:"-"`
3589}
3590
3591func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
3592	type NoMethod DatafeedsFetchNowResponse
3593	raw := NoMethod(*s)
3594	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3595}
3596
3597type DatafeedsListResponse struct {
3598	// Kind: Identifies what kind of resource this is. Value: the fixed
3599	// string "content#datafeedsListResponse".
3600	Kind string `json:"kind,omitempty"`
3601
3602	// NextPageToken: The token for the retrieval of the next page of
3603	// datafeeds.
3604	NextPageToken string `json:"nextPageToken,omitempty"`
3605
3606	Resources []*Datafeed `json:"resources,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. "Kind") 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. "Kind") to include in API
3621	// requests with the JSON null value. By default, fields with empty
3622	// values are omitted from API requests. However, any field with an
3623	// 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 *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
3630	type NoMethod DatafeedsListResponse
3631	raw := NoMethod(*s)
3632	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3633}
3634
3635type DatafeedstatusesCustomBatchRequest struct {
3636	// Entries: The request entries to be processed in the batch.
3637	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
3638
3639	// ForceSendFields is a list of field names (e.g. "Entries") to
3640	// unconditionally include in API requests. By default, fields with
3641	// empty or default values are omitted from API requests. However, any
3642	// non-pointer, non-interface field appearing in ForceSendFields will be
3643	// sent to the server regardless of whether the field is empty or not.
3644	// This may be used to include empty fields in Patch requests.
3645	ForceSendFields []string `json:"-"`
3646
3647	// NullFields is a list of field names (e.g. "Entries") to include in
3648	// API requests with the JSON null value. By default, fields with empty
3649	// values are omitted from API requests. However, any field with an
3650	// empty value appearing in NullFields will be sent to the server as
3651	// null. It is an error if a field in this list has a non-empty value.
3652	// This may be used to include null fields in Patch requests.
3653	NullFields []string `json:"-"`
3654}
3655
3656func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
3657	type NoMethod DatafeedstatusesCustomBatchRequest
3658	raw := NoMethod(*s)
3659	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3660}
3661
3662// DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
3663// single non-batch datafeedstatuses request.
3664type DatafeedstatusesCustomBatchRequestEntry struct {
3665	// BatchId: An entry ID, unique within the batch request.
3666	BatchId int64 `json:"batchId,omitempty"`
3667
3668	// Country: The country for which to get the datafeed status. If this
3669	// parameter is provided then language must also be provided. Note that
3670	// for multi-target datafeeds this parameter is required.
3671	Country string `json:"country,omitempty"`
3672
3673	// DatafeedId: The ID of the data feed to get.
3674	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3675
3676	// Language: The language for which to get the datafeed status. If this
3677	// parameter is provided then country must also be provided. Note that
3678	// for multi-target datafeeds this parameter is required.
3679	Language string `json:"language,omitempty"`
3680
3681	// MerchantId: The ID of the managing account.
3682	MerchantId uint64 `json:"merchantId,omitempty,string"`
3683
3684	// Method: The method of the batch entry. Acceptable values are: -
3685	// "get"
3686	Method string `json:"method,omitempty"`
3687
3688	// ForceSendFields is a list of field names (e.g. "BatchId") to
3689	// unconditionally include in API requests. By default, fields with
3690	// empty or default values are omitted from API requests. However, any
3691	// non-pointer, non-interface field appearing in ForceSendFields will be
3692	// sent to the server regardless of whether the field is empty or not.
3693	// This may be used to include empty fields in Patch requests.
3694	ForceSendFields []string `json:"-"`
3695
3696	// NullFields is a list of field names (e.g. "BatchId") to include in
3697	// API requests with the JSON null value. By default, fields with empty
3698	// values are omitted from API requests. However, any field with an
3699	// empty value appearing in NullFields will be sent to the server as
3700	// null. It is an error if a field in this list has a non-empty value.
3701	// This may be used to include null fields in Patch requests.
3702	NullFields []string `json:"-"`
3703}
3704
3705func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3706	type NoMethod DatafeedstatusesCustomBatchRequestEntry
3707	raw := NoMethod(*s)
3708	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3709}
3710
3711type DatafeedstatusesCustomBatchResponse struct {
3712	// Entries: The result of the execution of the batch requests.
3713	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
3714
3715	// Kind: Identifies what kind of resource this is. Value: the fixed
3716	// string "content#datafeedstatusesCustomBatchResponse".
3717	Kind string `json:"kind,omitempty"`
3718
3719	// ServerResponse contains the HTTP response code and headers from the
3720	// server.
3721	googleapi.ServerResponse `json:"-"`
3722
3723	// ForceSendFields is a list of field names (e.g. "Entries") to
3724	// unconditionally include in API requests. By default, fields with
3725	// empty or default values are omitted from API requests. However, any
3726	// non-pointer, non-interface field appearing in ForceSendFields will be
3727	// sent to the server regardless of whether the field is empty or not.
3728	// This may be used to include empty fields in Patch requests.
3729	ForceSendFields []string `json:"-"`
3730
3731	// NullFields is a list of field names (e.g. "Entries") to include in
3732	// API requests with the JSON null value. By default, fields with empty
3733	// values are omitted from API requests. However, any field with an
3734	// empty value appearing in NullFields will be sent to the server as
3735	// null. It is an error if a field in this list has a non-empty value.
3736	// This may be used to include null fields in Patch requests.
3737	NullFields []string `json:"-"`
3738}
3739
3740func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
3741	type NoMethod DatafeedstatusesCustomBatchResponse
3742	raw := NoMethod(*s)
3743	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3744}
3745
3746// DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
3747// single non-batch datafeedstatuses response.
3748type DatafeedstatusesCustomBatchResponseEntry struct {
3749	// BatchId: The ID of the request entry this entry responds to.
3750	BatchId int64 `json:"batchId,omitempty"`
3751
3752	// DatafeedStatus: The requested data feed status. Defined if and only
3753	// if the request was successful.
3754	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
3755
3756	// Errors: A list of errors defined if and only if the request failed.
3757	Errors *Errors `json:"errors,omitempty"`
3758
3759	// ForceSendFields is a list of field names (e.g. "BatchId") to
3760	// unconditionally include in API requests. By default, fields with
3761	// empty or default values are omitted from API requests. However, any
3762	// non-pointer, non-interface field appearing in ForceSendFields will be
3763	// sent to the server regardless of whether the field is empty or not.
3764	// This may be used to include empty fields in Patch requests.
3765	ForceSendFields []string `json:"-"`
3766
3767	// NullFields is a list of field names (e.g. "BatchId") to include in
3768	// API requests with the JSON null value. By default, fields with empty
3769	// values are omitted from API requests. However, any field with an
3770	// empty value appearing in NullFields will be sent to the server as
3771	// null. It is an error if a field in this list has a non-empty value.
3772	// This may be used to include null fields in Patch requests.
3773	NullFields []string `json:"-"`
3774}
3775
3776func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3777	type NoMethod DatafeedstatusesCustomBatchResponseEntry
3778	raw := NoMethod(*s)
3779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3780}
3781
3782type DatafeedstatusesListResponse struct {
3783	// Kind: Identifies what kind of resource this is. Value: the fixed
3784	// string "content#datafeedstatusesListResponse".
3785	Kind string `json:"kind,omitempty"`
3786
3787	// NextPageToken: The token for the retrieval of the next page of
3788	// datafeed statuses.
3789	NextPageToken string `json:"nextPageToken,omitempty"`
3790
3791	Resources []*DatafeedStatus `json:"resources,omitempty"`
3792
3793	// ServerResponse contains the HTTP response code and headers from the
3794	// server.
3795	googleapi.ServerResponse `json:"-"`
3796
3797	// ForceSendFields is a list of field names (e.g. "Kind") to
3798	// unconditionally include in API requests. By default, fields with
3799	// empty or default values are omitted from API requests. However, any
3800	// non-pointer, non-interface field appearing in ForceSendFields will be
3801	// sent to the server regardless of whether the field is empty or not.
3802	// This may be used to include empty fields in Patch requests.
3803	ForceSendFields []string `json:"-"`
3804
3805	// NullFields is a list of field names (e.g. "Kind") to include in API
3806	// requests with the JSON null value. By default, fields with empty
3807	// values are omitted from API requests. However, any field with an
3808	// empty value appearing in NullFields will be sent to the server as
3809	// null. It is an error if a field in this list has a non-empty value.
3810	// This may be used to include null fields in Patch requests.
3811	NullFields []string `json:"-"`
3812}
3813
3814func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
3815	type NoMethod DatafeedstatusesListResponse
3816	raw := NoMethod(*s)
3817	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3818}
3819
3820// Date: Represents a whole or partial calendar date, such as a
3821// birthday. The time of day and time zone are either specified
3822// elsewhere or are insignificant. The date is relative to the Gregorian
3823// Calendar. This can represent one of the following: * A full date,
3824// with non-zero year, month, and day values * A month and day value,
3825// with a zero year, such as an anniversary * A year on its own, with
3826// zero month and day values * A year and month value, with a zero day,
3827// such as a credit card expiration date Related types are
3828// google.type.TimeOfDay and `google.protobuf.Timestamp`.
3829type Date struct {
3830	// Day: Day of a month. Must be from 1 to 31 and valid for the year and
3831	// month, or 0 to specify a year by itself or a year and month where the
3832	// day isn't significant.
3833	Day int64 `json:"day,omitempty"`
3834
3835	// Month: Month of a year. Must be from 1 to 12, or 0 to specify a year
3836	// without a month and day.
3837	Month int64 `json:"month,omitempty"`
3838
3839	// Year: Year of the date. Must be from 1 to 9999, or 0 to specify a
3840	// date without a year.
3841	Year int64 `json:"year,omitempty"`
3842
3843	// ForceSendFields is a list of field names (e.g. "Day") to
3844	// unconditionally include in API requests. By default, fields with
3845	// empty or default values are omitted from API requests. However, any
3846	// non-pointer, non-interface field appearing in ForceSendFields will be
3847	// sent to the server regardless of whether the field is empty or not.
3848	// This may be used to include empty fields in Patch requests.
3849	ForceSendFields []string `json:"-"`
3850
3851	// NullFields is a list of field names (e.g. "Day") to include in API
3852	// requests with the JSON null value. By default, fields with empty
3853	// values are omitted from API requests. However, any field with an
3854	// empty value appearing in NullFields will be sent to the server as
3855	// null. It is an error if a field in this list has a non-empty value.
3856	// This may be used to include null fields in Patch requests.
3857	NullFields []string `json:"-"`
3858}
3859
3860func (s *Date) MarshalJSON() ([]byte, error) {
3861	type NoMethod Date
3862	raw := NoMethod(*s)
3863	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3864}
3865
3866// DateTime: Represents civil time (or occasionally physical time). This
3867// type can represent a civil time in one of a few possible ways: * When
3868// utc_offset is set and time_zone is unset: a civil time on a calendar
3869// day with a particular offset from UTC. * When time_zone is set and
3870// utc_offset is unset: a civil time on a calendar day in a particular
3871// time zone. * When neither time_zone nor utc_offset is set: a civil
3872// time on a calendar day in local time. The date is relative to the
3873// Proleptic Gregorian Calendar. If year is 0, the DateTime is
3874// considered not to have a specific year. month and day must have
3875// valid, non-zero values. This type may also be used to represent a
3876// physical time if all the date and time fields are set and either case
3877// of the `time_offset` oneof is set. Consider using `Timestamp` message
3878// for physical time instead. If your use case also would like to store
3879// the user's timezone, that can be done in another field. This type is
3880// more flexible than some applications may want. Make sure to document
3881// and validate your application's limitations.
3882type DateTime struct {
3883	// Day: Required. Day of month. Must be from 1 to 31 and valid for the
3884	// year and month.
3885	Day int64 `json:"day,omitempty"`
3886
3887	// Hours: Required. Hours of day in 24 hour format. Should be from 0 to
3888	// 23. An API may choose to allow the value "24:00:00" for scenarios
3889	// like business closing time.
3890	Hours int64 `json:"hours,omitempty"`
3891
3892	// Minutes: Required. Minutes of hour of day. Must be from 0 to 59.
3893	Minutes int64 `json:"minutes,omitempty"`
3894
3895	// Month: Required. Month of year. Must be from 1 to 12.
3896	Month int64 `json:"month,omitempty"`
3897
3898	// Nanos: Required. Fractions of seconds in nanoseconds. Must be from 0
3899	// to 999,999,999.
3900	Nanos int64 `json:"nanos,omitempty"`
3901
3902	// Seconds: Required. Seconds of minutes of the time. Must normally be
3903	// from 0 to 59. An API may allow the value 60 if it allows
3904	// leap-seconds.
3905	Seconds int64 `json:"seconds,omitempty"`
3906
3907	// TimeZone: Time zone.
3908	TimeZone *TimeZone `json:"timeZone,omitempty"`
3909
3910	// UtcOffset: UTC offset. Must be whole seconds, between -18 hours and
3911	// +18 hours. For example, a UTC offset of -4:00 would be represented as
3912	// { seconds: -14400 }.
3913	UtcOffset string `json:"utcOffset,omitempty"`
3914
3915	// Year: Optional. Year of date. Must be from 1 to 9999, or 0 if
3916	// specifying a datetime without a year.
3917	Year int64 `json:"year,omitempty"`
3918
3919	// ForceSendFields is a list of field names (e.g. "Day") to
3920	// unconditionally include in API requests. By default, fields with
3921	// empty or default values are omitted from API requests. However, any
3922	// non-pointer, non-interface field appearing in ForceSendFields will be
3923	// sent to the server regardless of whether the field is empty or not.
3924	// This may be used to include empty fields in Patch requests.
3925	ForceSendFields []string `json:"-"`
3926
3927	// NullFields is a list of field names (e.g. "Day") to include in API
3928	// requests with the JSON null value. By default, fields with empty
3929	// values are omitted from API requests. However, any field with an
3930	// empty value appearing in NullFields will be sent to the server as
3931	// null. It is an error if a field in this list has a non-empty value.
3932	// This may be used to include null fields in Patch requests.
3933	NullFields []string `json:"-"`
3934}
3935
3936func (s *DateTime) MarshalJSON() ([]byte, error) {
3937	type NoMethod DateTime
3938	raw := NoMethod(*s)
3939	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3940}
3941
3942type DeliveryTime struct {
3943	// CutoffTime: Business days cutoff time definition. If not configured
3944	// the cutoff time will be defaulted to 8AM PST.
3945	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
3946
3947	// HandlingBusinessDayConfig: The business days during which orders can
3948	// be handled. If not provided, Monday to Friday business days will be
3949	// assumed.
3950	HandlingBusinessDayConfig *BusinessDayConfig `json:"handlingBusinessDayConfig,omitempty"`
3951
3952	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
3953	// specify order cutoff times for holiday-specific shipping.
3954	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
3955
3956	// MaxHandlingTimeInDays: Maximum number of business days spent before
3957	// an order is shipped. 0 means same day shipped, 1 means next day
3958	// shipped. Must be greater than or equal to `minHandlingTimeInDays`.
3959	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
3960
3961	// MaxTransitTimeInDays: Maximum number of business days that is spent
3962	// in transit. 0 means same day delivery, 1 means next day delivery.
3963	// Must be greater than or equal to `minTransitTimeInDays`.
3964	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
3965
3966	// MinHandlingTimeInDays: Minimum number of business days spent before
3967	// an order is shipped. 0 means same day shipped, 1 means next day
3968	// shipped.
3969	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
3970
3971	// MinTransitTimeInDays: Minimum number of business days that is spent
3972	// in transit. 0 means same day delivery, 1 means next day delivery.
3973	// Either `{min,max}TransitTimeInDays` or `transitTimeTable` must be
3974	// set, but not both.
3975	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
3976
3977	// TransitBusinessDayConfig: The business days during which orders can
3978	// be in-transit. If not provided, Monday to Friday business days will
3979	// be assumed.
3980	TransitBusinessDayConfig *BusinessDayConfig `json:"transitBusinessDayConfig,omitempty"`
3981
3982	// TransitTimeTable: Transit time table, number of business days spent
3983	// in transit based on row and column dimensions. Either
3984	// `{min,max}TransitTimeInDays` or `transitTimeTable` can be set, but
3985	// not both.
3986	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
3987
3988	// WarehouseBasedDeliveryTimes: Indicates that the delivery time should
3989	// be calculated per warehouse (shipping origin location) based on the
3990	// settings of the selected carrier. When set, no other transit time
3991	// related field in DeliveryTime should be set.
3992	WarehouseBasedDeliveryTimes []*WarehouseBasedDeliveryTime `json:"warehouseBasedDeliveryTimes,omitempty"`
3993
3994	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
3995	// unconditionally include in API requests. By default, fields with
3996	// empty or default values are omitted from API requests. However, any
3997	// non-pointer, non-interface field appearing in ForceSendFields will be
3998	// sent to the server regardless of whether the field is empty or not.
3999	// This may be used to include empty fields in Patch requests.
4000	ForceSendFields []string `json:"-"`
4001
4002	// NullFields is a list of field names (e.g. "CutoffTime") to include in
4003	// API requests with the JSON null value. By default, fields with empty
4004	// values are omitted from API requests. However, any field with an
4005	// empty value appearing in NullFields will be sent to the server as
4006	// null. It is an error if a field in this list has a non-empty value.
4007	// This may be used to include null fields in Patch requests.
4008	NullFields []string `json:"-"`
4009}
4010
4011func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
4012	type NoMethod DeliveryTime
4013	raw := NoMethod(*s)
4014	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4015}
4016
4017// Error: An error returned by the API.
4018type Error struct {
4019	// Domain: The domain of the error.
4020	Domain string `json:"domain,omitempty"`
4021
4022	// Message: A description of the error.
4023	Message string `json:"message,omitempty"`
4024
4025	// Reason: The error code.
4026	Reason string `json:"reason,omitempty"`
4027
4028	// ForceSendFields is a list of field names (e.g. "Domain") to
4029	// unconditionally include in API requests. By default, fields with
4030	// empty or default values are omitted from API requests. However, any
4031	// non-pointer, non-interface field appearing in ForceSendFields will be
4032	// sent to the server regardless of whether the field is empty or not.
4033	// This may be used to include empty fields in Patch requests.
4034	ForceSendFields []string `json:"-"`
4035
4036	// NullFields is a list of field names (e.g. "Domain") to include in API
4037	// requests with the JSON null value. By default, fields with empty
4038	// values are omitted from API requests. However, any field with an
4039	// empty value appearing in NullFields will be sent to the server as
4040	// null. It is an error if a field in this list has a non-empty value.
4041	// This may be used to include null fields in Patch requests.
4042	NullFields []string `json:"-"`
4043}
4044
4045func (s *Error) MarshalJSON() ([]byte, error) {
4046	type NoMethod Error
4047	raw := NoMethod(*s)
4048	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4049}
4050
4051// Errors: A list of errors returned by a failed batch entry.
4052type Errors struct {
4053	// Code: The HTTP status of the first error in `errors`.
4054	Code int64 `json:"code,omitempty"`
4055
4056	// Errors: A list of errors.
4057	Errors []*Error `json:"errors,omitempty"`
4058
4059	// Message: The message of the first error in `errors`.
4060	Message string `json:"message,omitempty"`
4061
4062	// ForceSendFields is a list of field names (e.g. "Code") to
4063	// unconditionally include in API requests. By default, fields with
4064	// empty or default values are omitted from API requests. However, any
4065	// non-pointer, non-interface field appearing in ForceSendFields will be
4066	// sent to the server regardless of whether the field is empty or not.
4067	// This may be used to include empty fields in Patch requests.
4068	ForceSendFields []string `json:"-"`
4069
4070	// NullFields is a list of field names (e.g. "Code") to include in API
4071	// requests with the JSON null value. By default, fields with empty
4072	// values are omitted from API requests. However, any field with an
4073	// empty value appearing in NullFields will be sent to the server as
4074	// null. It is an error if a field in this list has a non-empty value.
4075	// This may be used to include null fields in Patch requests.
4076	NullFields []string `json:"-"`
4077}
4078
4079func (s *Errors) MarshalJSON() ([]byte, error) {
4080	type NoMethod Errors
4081	raw := NoMethod(*s)
4082	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4083}
4084
4085// FreeListingsProgramStatus: Response message for
4086// GetFreeListingsProgramStatus.
4087type FreeListingsProgramStatus struct {
4088	// RegionStatuses: Status of the program in each region. Regions with
4089	// the same status and review eligibility are grouped together in
4090	// `regionCodes`.
4091	RegionStatuses []*FreeListingsProgramStatusRegionStatus `json:"regionStatuses,omitempty"`
4092
4093	// State: If program is successfully onboarded for at least one region.
4094	//
4095	// Possible values:
4096	//   "PROGRAM_STATE_UNSPECIFIED" - State is not known.
4097	//   "ONBOARDED" - Program is onboarded for at least one country.
4098	//   "NOT_ONBOARDED" - Program is not onboarded for any country.
4099	State string `json:"state,omitempty"`
4100
4101	// ServerResponse contains the HTTP response code and headers from the
4102	// server.
4103	googleapi.ServerResponse `json:"-"`
4104
4105	// ForceSendFields is a list of field names (e.g. "RegionStatuses") to
4106	// unconditionally include in API requests. By default, fields with
4107	// empty or default values are omitted from API requests. However, any
4108	// non-pointer, non-interface field appearing in ForceSendFields will be
4109	// sent to the server regardless of whether the field is empty or not.
4110	// This may be used to include empty fields in Patch requests.
4111	ForceSendFields []string `json:"-"`
4112
4113	// NullFields is a list of field names (e.g. "RegionStatuses") to
4114	// include in API requests with the JSON null value. By default, fields
4115	// with empty values are omitted from API requests. However, any field
4116	// with an empty value appearing in NullFields will be sent to the
4117	// server as null. It is an error if a field in this list has a
4118	// non-empty value. This may be used to include null fields in Patch
4119	// requests.
4120	NullFields []string `json:"-"`
4121}
4122
4123func (s *FreeListingsProgramStatus) MarshalJSON() ([]byte, error) {
4124	type NoMethod FreeListingsProgramStatus
4125	raw := NoMethod(*s)
4126	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4127}
4128
4129// FreeListingsProgramStatusRegionStatus: Status of program and region.
4130type FreeListingsProgramStatusRegionStatus struct {
4131	// DisapprovalDate: Date by which `eligibility_status` will go from
4132	// `WARNING` to `DISAPPROVED`. It will be present when
4133	// `eligibility_status` is `WARNING`. Date will be provided in ISO 8601
4134	// format i.e. YYYY-MM-DD
4135	DisapprovalDate string `json:"disapprovalDate,omitempty"`
4136
4137	// EligibilityStatus: Eligibility status of the standard free listing
4138	// program.
4139	//
4140	// Possible values:
4141	//   "STATE_UNSPECIFIED" - State is not known.
4142	//   "APPROVED" - If the account has no issues and review is completed
4143	// successfully.
4144	//   "DISAPPROVED" - There are one or more issues that needs to be
4145	// resolved for account to be active for the program. Detailed list of
4146	// account issues are available in
4147	// [accountstatuses](https://developers.google.com/shopping-content/refer
4148	// ence/rest/v2.1/accountstatuses) API.
4149	//   "WARNING" - If account has issues but offers are servable. Some of
4150	// the issue can make account DISAPPROVED after a certain deadline.
4151	//   "UNDER_REVIEW" - Account is under review.
4152	//   "PENDING_REVIEW" - Account is waiting for review to start.
4153	//   "ONBOARDING" - Program is currently onboarding.
4154	EligibilityStatus string `json:"eligibilityStatus,omitempty"`
4155
4156	// EnhancedEligibilityStatus: Eligibility status of the enhanced free
4157	// listing program.
4158	//
4159	// Possible values:
4160	//   "STATE_UNSPECIFIED" - State is not known.
4161	//   "APPROVED" - If the account has no issues and review is completed
4162	// successfully.
4163	//   "DISAPPROVED" - There are one or more issues that needs to be
4164	// resolved for account to be active for the program. Detailed list of
4165	// account issues are available in
4166	// [accountstatuses](https://developers.google.com/shopping-content/refer
4167	// ence/rest/v2.1/accountstatuses) API.
4168	//   "WARNING" - If account has issues but offers are servable. Some of
4169	// the issue can make account DISAPPROVED after a certain deadline.
4170	//   "UNDER_REVIEW" - Account is under review.
4171	//   "PENDING_REVIEW" - Account is waiting for review to start.
4172	//   "ONBOARDING" - Program is currently onboarding.
4173	EnhancedEligibilityStatus string `json:"enhancedEligibilityStatus,omitempty"`
4174
4175	// IneligibilityReason: Reason if a program in a given country is not
4176	// eligible for review. Populated only if `review_eligibility_status` is
4177	// `INELIGIBLE`.
4178	IneligibilityReason string `json:"ineligibilityReason,omitempty"`
4179
4180	// RegionCodes: The two-letter ISO 3166-1 alpha-2
4181	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) codes for all the
4182	// regions with the same `eligibilityStatus` and `reviewEligibility`.
4183	RegionCodes []string `json:"regionCodes,omitempty"`
4184
4185	// ReviewEligibilityStatus: If a program in a given country is eligible
4186	// for review. It will be present only if eligibility status is
4187	// `DISAPPROVED`.
4188	//
4189	// Possible values:
4190	//   "REVIEW_ELIGIBILITY_UNSPECIFIED" - Review eligibility state is
4191	// unknown.
4192	//   "ELIGIBLE" - Account for a region code is eligible for review.
4193	//   "INELIGIBLE" - Account for a region code is not eligible for
4194	// review.
4195	ReviewEligibilityStatus string `json:"reviewEligibilityStatus,omitempty"`
4196
4197	// ReviewIssues: These issues will be evaluated in review process. Fix
4198	// all the issues before requesting the review.
4199	ReviewIssues []string `json:"reviewIssues,omitempty"`
4200
4201	// ForceSendFields is a list of field names (e.g. "DisapprovalDate") to
4202	// unconditionally include in API requests. By default, fields with
4203	// empty or default values are omitted from API requests. However, any
4204	// non-pointer, non-interface field appearing in ForceSendFields will be
4205	// sent to the server regardless of whether the field is empty or not.
4206	// This may be used to include empty fields in Patch requests.
4207	ForceSendFields []string `json:"-"`
4208
4209	// NullFields is a list of field names (e.g. "DisapprovalDate") to
4210	// include in API requests with the JSON null value. By default, fields
4211	// with empty values are omitted from API requests. However, any field
4212	// with an empty value appearing in NullFields will be sent to the
4213	// server as null. It is an error if a field in this list has a
4214	// non-empty value. This may be used to include null fields in Patch
4215	// requests.
4216	NullFields []string `json:"-"`
4217}
4218
4219func (s *FreeListingsProgramStatusRegionStatus) MarshalJSON() ([]byte, error) {
4220	type NoMethod FreeListingsProgramStatusRegionStatus
4221	raw := NoMethod(*s)
4222	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4223}
4224
4225type GmbAccounts struct {
4226	// AccountId: The ID of the Merchant Center account.
4227	AccountId uint64 `json:"accountId,omitempty,string"`
4228
4229	// GmbAccounts: A list of GMB accounts which are available to the
4230	// merchant.
4231	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
4232
4233	// ForceSendFields is a list of field names (e.g. "AccountId") to
4234	// unconditionally include in API requests. By default, fields with
4235	// empty or default values are omitted from API requests. However, any
4236	// non-pointer, non-interface field appearing in ForceSendFields will be
4237	// sent to the server regardless of whether the field is empty or not.
4238	// This may be used to include empty fields in Patch requests.
4239	ForceSendFields []string `json:"-"`
4240
4241	// NullFields is a list of field names (e.g. "AccountId") to include in
4242	// API requests with the JSON null value. By default, fields with empty
4243	// values are omitted from API requests. However, any field with an
4244	// empty value appearing in NullFields will be sent to the server as
4245	// null. It is an error if a field in this list has a non-empty value.
4246	// This may be used to include null fields in Patch requests.
4247	NullFields []string `json:"-"`
4248}
4249
4250func (s *GmbAccounts) MarshalJSON() ([]byte, error) {
4251	type NoMethod GmbAccounts
4252	raw := NoMethod(*s)
4253	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4254}
4255
4256type GmbAccountsGmbAccount struct {
4257	// Email: The email which identifies the GMB account.
4258	Email string `json:"email,omitempty"`
4259
4260	// ListingCount: Number of listings under this account.
4261	ListingCount uint64 `json:"listingCount,omitempty,string"`
4262
4263	// Name: The name of the GMB account.
4264	Name string `json:"name,omitempty"`
4265
4266	// Type: The type of the GMB account (User or Business).
4267	Type string `json:"type,omitempty"`
4268
4269	// ForceSendFields is a list of field names (e.g. "Email") to
4270	// unconditionally include in API requests. By default, fields with
4271	// empty or default values are omitted from API requests. However, any
4272	// non-pointer, non-interface field appearing in ForceSendFields will be
4273	// sent to the server regardless of whether the field is empty or not.
4274	// This may be used to include empty fields in Patch requests.
4275	ForceSendFields []string `json:"-"`
4276
4277	// NullFields is a list of field names (e.g. "Email") to include in API
4278	// requests with the JSON null value. By default, fields with empty
4279	// values are omitted from API requests. However, any field with an
4280	// empty value appearing in NullFields will be sent to the server as
4281	// null. It is an error if a field in this list has a non-empty value.
4282	// This may be used to include null fields in Patch requests.
4283	NullFields []string `json:"-"`
4284}
4285
4286func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
4287	type NoMethod GmbAccountsGmbAccount
4288	raw := NoMethod(*s)
4289	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4290}
4291
4292// Headers: A non-empty list of row or column headers for a table.
4293// Exactly one of `prices`, `weights`, `numItems`,
4294// `postalCodeGroupNames`, or `location` must be set.
4295type Headers struct {
4296	// Locations: A list of location ID sets. Must be non-empty. Can only be
4297	// set if all other fields are not set.
4298	Locations []*LocationIdSet `json:"locations,omitempty"`
4299
4300	// NumberOfItems: A list of inclusive number of items upper bounds. The
4301	// last value can be "infinity". For example `["10", "50",
4302	// "infinity"]` represents the headers "<= 10 items", "<= 50 items", and
4303	// "> 50 items". Must be non-empty. Can only be set if all other fields
4304	// are not set.
4305	NumberOfItems []string `json:"numberOfItems,omitempty"`
4306
4307	// PostalCodeGroupNames: A list of postal group names. The last value
4308	// can be "all other locations". Example: `["zone 1", "zone 2", "all
4309	// other locations"]`. The referred postal code groups must match the
4310	// delivery country of the service. Must be non-empty. Can only be set
4311	// if all other fields are not set.
4312	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
4313
4314	// Prices: A list of inclusive order price upper bounds. The last
4315	// price's value can be "infinity". For example `[{"value": "10",
4316	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
4317	// "infinity", "currency": "USD"}]` represents the headers "<= $10", "<=
4318	// $500", and "> $500". All prices within a service must have the same
4319	// currency. Must be non-empty. Can only be set if all other fields are
4320	// not set.
4321	Prices []*Price `json:"prices,omitempty"`
4322
4323	// Weights: A list of inclusive order weight upper bounds. The last
4324	// weight's value can be "infinity". For example `[{"value": "10",
4325	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
4326	// "unit": "kg"}]` represents the headers "<= 10kg", "<= 50kg", and ">
4327	// 50kg". All weights within a service must have the same unit. Must be
4328	// non-empty. Can only be set if all other fields are not set.
4329	Weights []*Weight `json:"weights,omitempty"`
4330
4331	// ForceSendFields is a list of field names (e.g. "Locations") to
4332	// unconditionally include in API requests. By default, fields with
4333	// empty or default values are omitted from API requests. However, any
4334	// non-pointer, non-interface field appearing in ForceSendFields will be
4335	// sent to the server regardless of whether the field is empty or not.
4336	// This may be used to include empty fields in Patch requests.
4337	ForceSendFields []string `json:"-"`
4338
4339	// NullFields is a list of field names (e.g. "Locations") to include in
4340	// API requests with the JSON null value. By default, fields with empty
4341	// values are omitted from API requests. However, any field with an
4342	// empty value appearing in NullFields will be sent to the server as
4343	// null. It is an error if a field in this list has a non-empty value.
4344	// This may be used to include null fields in Patch requests.
4345	NullFields []string `json:"-"`
4346}
4347
4348func (s *Headers) MarshalJSON() ([]byte, error) {
4349	type NoMethod Headers
4350	raw := NoMethod(*s)
4351	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4352}
4353
4354type HolidayCutoff struct {
4355	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
4356	// "2016-11-29" for 29th November 2016. Required.
4357	DeadlineDate string `json:"deadlineDate,omitempty"`
4358
4359	// DeadlineHour: Hour of the day on the deadline date until which the
4360	// order has to be placed to qualify for the delivery guarantee.
4361	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
4362	// Required.
4363	DeadlineHour int64 `json:"deadlineHour,omitempty"`
4364
4365	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
4366	// of identifiers can be found in the AdWords API documentation. E.g.
4367	// "Europe/Zurich". Required.
4368	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
4369
4370	// HolidayId: Unique identifier for the holiday. Required.
4371	HolidayId string `json:"holidayId,omitempty"`
4372
4373	// VisibleFromDate: Date on which the deadline will become visible to
4374	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
4375	// 2016. Required.
4376	VisibleFromDate string `json:"visibleFromDate,omitempty"`
4377
4378	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
4379	// unconditionally include in API requests. By default, fields with
4380	// empty or default values are omitted from API requests. However, any
4381	// non-pointer, non-interface field appearing in ForceSendFields will be
4382	// sent to the server regardless of whether the field is empty or not.
4383	// This may be used to include empty fields in Patch requests.
4384	ForceSendFields []string `json:"-"`
4385
4386	// NullFields is a list of field names (e.g. "DeadlineDate") to include
4387	// in API requests with the JSON null value. By default, fields with
4388	// empty values are omitted from API requests. However, any field with
4389	// an empty value appearing in NullFields will be sent to the server as
4390	// null. It is an error if a field in this list has a non-empty value.
4391	// This may be used to include null fields in Patch requests.
4392	NullFields []string `json:"-"`
4393}
4394
4395func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
4396	type NoMethod HolidayCutoff
4397	raw := NoMethod(*s)
4398	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4399}
4400
4401type HolidaysHoliday struct {
4402	// CountryCode: The CLDR territory code of the country in which the
4403	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
4404	// only be configured in a shipping settings service with matching
4405	// delivery country. Always present.
4406	CountryCode string `json:"countryCode,omitempty"`
4407
4408	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
4409	// Christmas 2016. Always present.
4410	Date string `json:"date,omitempty"`
4411
4412	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
4413	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
4414	// 2016. Always present.
4415	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
4416
4417	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
4418	// timezone on the guaranteed delivery date by which the order has to
4419	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
4420	// 12 (noon), 13, ..., 23. Always present.
4421	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
4422
4423	// Id: Unique identifier for the holiday to be used when configuring
4424	// holiday cutoffs. Always present.
4425	Id string `json:"id,omitempty"`
4426
4427	// Type: The holiday type. Always present. Acceptable values are: -
4428	// "Christmas" - "Easter" - "Father's Day" - "Halloween" -
4429	// "Independence Day (USA)" - "Mother's Day" - "Thanksgiving" -
4430	// "Valentine's Day"
4431	Type string `json:"type,omitempty"`
4432
4433	// ForceSendFields is a list of field names (e.g. "CountryCode") to
4434	// unconditionally include in API requests. By default, fields with
4435	// empty or default values are omitted from API requests. However, any
4436	// non-pointer, non-interface field appearing in ForceSendFields will be
4437	// sent to the server regardless of whether the field is empty or not.
4438	// This may be used to include empty fields in Patch requests.
4439	ForceSendFields []string `json:"-"`
4440
4441	// NullFields is a list of field names (e.g. "CountryCode") to include
4442	// in API requests with the JSON null value. By default, fields with
4443	// empty values are omitted from API requests. However, any field with
4444	// an empty value appearing in NullFields will be sent to the server as
4445	// null. It is an error if a field in this list has a non-empty value.
4446	// This may be used to include null fields in Patch requests.
4447	NullFields []string `json:"-"`
4448}
4449
4450func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
4451	type NoMethod HolidaysHoliday
4452	raw := NoMethod(*s)
4453	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4454}
4455
4456// InapplicabilityDetails: Map of inapplicability details.
4457type InapplicabilityDetails struct {
4458	// InapplicableCount: Count of this inapplicable reason code.
4459	InapplicableCount int64 `json:"inapplicableCount,omitempty,string"`
4460
4461	// InapplicableReason: Reason code this rule was not applicable.
4462	//
4463	// Possible values:
4464	//   "INAPPLICABLE_REASON_UNSPECIFIED" - Default value. Should not be
4465	// used.
4466	//   "CANNOT_BEAT_BUYBOX_WINNER" - The rule set for this product cannot
4467	// beat the buybox winner.
4468	//   "ALREADY_WINNING_BUYBOX" - This product can already win the buybox
4469	// without rule.
4470	//   "TRIUMPHED_OVER_BY_SAME_TYPE_RULE" - Another rule of the same type
4471	// takes precedence over this one.
4472	//   "TRIUMPHED_OVER_BY_OTHER_RULE_ON_OFFER" - Another rule of a
4473	// different type takes precedence over this one.
4474	//   "RESTRICTIONS_NOT_MET" - The rule restrictions are not met. For
4475	// example, this may be the case if the calculated rule price is lower
4476	// than floor price in the restriction.
4477	//   "UNCATEGORIZED" - The reason is not categorized to any known
4478	// reason.
4479	//   "INVALID_AUTO_PRICE_MIN" - The auto_pricing_min_price is invalid.
4480	// For example, it is missing or < 0.
4481	//   "INVALID_FLOOR_CONFIG" - The floor defined in the rule is invalid.
4482	// For example, it has the wrong sign which results in a floor < 0.
4483	InapplicableReason string `json:"inapplicableReason,omitempty"`
4484
4485	// ForceSendFields is a list of field names (e.g. "InapplicableCount")
4486	// to unconditionally include in API requests. By default, fields with
4487	// empty or default values are omitted from API requests. However, any
4488	// non-pointer, non-interface field appearing in ForceSendFields will be
4489	// sent to the server regardless of whether the field is empty or not.
4490	// This may be used to include empty fields in Patch requests.
4491	ForceSendFields []string `json:"-"`
4492
4493	// NullFields is a list of field names (e.g. "InapplicableCount") to
4494	// include in API requests with the JSON null value. By default, fields
4495	// with empty values are omitted from API requests. However, any field
4496	// with an empty value appearing in NullFields will be sent to the
4497	// server as null. It is an error if a field in this list has a
4498	// non-empty value. This may be used to include null fields in Patch
4499	// requests.
4500	NullFields []string `json:"-"`
4501}
4502
4503func (s *InapplicabilityDetails) MarshalJSON() ([]byte, error) {
4504	type NoMethod InapplicabilityDetails
4505	raw := NoMethod(*s)
4506	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4507}
4508
4509type Installment struct {
4510	// Amount: The amount the buyer has to pay per month.
4511	Amount *Price `json:"amount,omitempty"`
4512
4513	// Months: The number of installments the buyer has to pay.
4514	Months int64 `json:"months,omitempty,string"`
4515
4516	// ForceSendFields is a list of field names (e.g. "Amount") to
4517	// unconditionally include in API requests. By default, fields with
4518	// empty or default values are omitted from API requests. However, any
4519	// non-pointer, non-interface field appearing in ForceSendFields will be
4520	// sent to the server regardless of whether the field is empty or not.
4521	// This may be used to include empty fields in Patch requests.
4522	ForceSendFields []string `json:"-"`
4523
4524	// NullFields is a list of field names (e.g. "Amount") to include in API
4525	// requests with the JSON null value. By default, fields with empty
4526	// values are omitted from API requests. However, any field with an
4527	// empty value appearing in NullFields will be sent to the server as
4528	// null. It is an error if a field in this list has a non-empty value.
4529	// This may be used to include null fields in Patch requests.
4530	NullFields []string `json:"-"`
4531}
4532
4533func (s *Installment) MarshalJSON() ([]byte, error) {
4534	type NoMethod Installment
4535	raw := NoMethod(*s)
4536	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4537}
4538
4539type InvoiceSummary struct {
4540	// AdditionalChargeSummaries: Summary of the total amounts of the
4541	// additional charges.
4542	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
4543
4544	// ProductTotal: [required] Total price for the product.
4545	ProductTotal *Amount `json:"productTotal,omitempty"`
4546
4547	// ForceSendFields is a list of field names (e.g.
4548	// "AdditionalChargeSummaries") to unconditionally include in API
4549	// requests. By default, fields with empty or default values are omitted
4550	// from API requests. However, any non-pointer, non-interface field
4551	// appearing in ForceSendFields will be sent to the server regardless of
4552	// whether the field is empty or not. This may be used to include empty
4553	// fields in Patch requests.
4554	ForceSendFields []string `json:"-"`
4555
4556	// NullFields is a list of field names (e.g.
4557	// "AdditionalChargeSummaries") to include in API requests with the JSON
4558	// null value. By default, fields with empty values are omitted from API
4559	// requests. However, any field with an empty value appearing in
4560	// NullFields will be sent to the server as null. It is an error if a
4561	// field in this list has a non-empty value. This may be used to include
4562	// null fields in Patch requests.
4563	NullFields []string `json:"-"`
4564}
4565
4566func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
4567	type NoMethod InvoiceSummary
4568	raw := NoMethod(*s)
4569	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4570}
4571
4572type InvoiceSummaryAdditionalChargeSummary struct {
4573	// TotalAmount: [required] Total additional charge for this type.
4574	TotalAmount *Amount `json:"totalAmount,omitempty"`
4575
4576	// Type: [required] Type of the additional charge. Acceptable values
4577	// are: - "shipping"
4578	Type string `json:"type,omitempty"`
4579
4580	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
4581	// unconditionally include in API requests. By default, fields with
4582	// empty or default values are omitted from API requests. However, any
4583	// non-pointer, non-interface field appearing in ForceSendFields will be
4584	// sent to the server regardless of whether the field is empty or not.
4585	// This may be used to include empty fields in Patch requests.
4586	ForceSendFields []string `json:"-"`
4587
4588	// NullFields is a list of field names (e.g. "TotalAmount") to include
4589	// in API requests with the JSON null value. By default, fields with
4590	// empty values are omitted from API requests. However, any field with
4591	// an empty value appearing in NullFields will be sent to the server as
4592	// null. It is an error if a field in this list has a non-empty value.
4593	// This may be used to include null fields in Patch requests.
4594	NullFields []string `json:"-"`
4595}
4596
4597func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
4598	type NoMethod InvoiceSummaryAdditionalChargeSummary
4599	raw := NoMethod(*s)
4600	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4601}
4602
4603// LabelIds: The IDs of labels that should be assigned to the CSS
4604// domain.
4605type LabelIds struct {
4606	// LabelIds: The list of label IDs.
4607	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
4608
4609	// ForceSendFields is a list of field names (e.g. "LabelIds") to
4610	// unconditionally include in API requests. By default, fields with
4611	// empty or default values are omitted from API requests. However, any
4612	// non-pointer, non-interface field appearing in ForceSendFields will be
4613	// sent to the server regardless of whether the field is empty or not.
4614	// This may be used to include empty fields in Patch requests.
4615	ForceSendFields []string `json:"-"`
4616
4617	// NullFields is a list of field names (e.g. "LabelIds") to include in
4618	// API requests with the JSON null value. By default, fields with empty
4619	// values are omitted from API requests. However, any field with an
4620	// empty value appearing in NullFields will be sent to the server as
4621	// null. It is an error if a field in this list has a non-empty value.
4622	// This may be used to include null fields in Patch requests.
4623	NullFields []string `json:"-"`
4624}
4625
4626func (s *LabelIds) MarshalJSON() ([]byte, error) {
4627	type NoMethod LabelIds
4628	raw := NoMethod(*s)
4629	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4630}
4631
4632type LiaAboutPageSettings struct {
4633	// Status: The status of the verification process for the About page.
4634	// Acceptable values are: - "active" - "inactive" - "pending"
4635	Status string `json:"status,omitempty"`
4636
4637	// Url: The URL for the About page.
4638	Url string `json:"url,omitempty"`
4639
4640	// ForceSendFields is a list of field names (e.g. "Status") to
4641	// unconditionally include in API requests. By default, fields with
4642	// empty or default values are omitted from API requests. However, any
4643	// non-pointer, non-interface field appearing in ForceSendFields will be
4644	// sent to the server regardless of whether the field is empty or not.
4645	// This may be used to include empty fields in Patch requests.
4646	ForceSendFields []string `json:"-"`
4647
4648	// NullFields is a list of field names (e.g. "Status") to include in API
4649	// requests with the JSON null value. By default, fields with empty
4650	// values are omitted from API requests. However, any field with an
4651	// empty value appearing in NullFields will be sent to the server as
4652	// null. It is an error if a field in this list has a non-empty value.
4653	// This may be used to include null fields in Patch requests.
4654	NullFields []string `json:"-"`
4655}
4656
4657func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
4658	type NoMethod LiaAboutPageSettings
4659	raw := NoMethod(*s)
4660	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4661}
4662
4663type LiaCountrySettings struct {
4664	// About: The settings for the About page.
4665	About *LiaAboutPageSettings `json:"about,omitempty"`
4666
4667	// Country: Required. CLDR country code (e.g. "US").
4668	Country string `json:"country,omitempty"`
4669
4670	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
4671	// storefront" feature.
4672	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
4673
4674	// Inventory: LIA inventory verification settings.
4675	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
4676
4677	// OnDisplayToOrder: LIA "On Display To Order" settings.
4678	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
4679
4680	// PosDataProvider: The POS data provider linked with this country.
4681	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
4682
4683	// StorePickupActive: The status of the "Store pickup" feature.
4684	StorePickupActive bool `json:"storePickupActive,omitempty"`
4685
4686	// ForceSendFields is a list of field names (e.g. "About") to
4687	// unconditionally include in API requests. By default, fields with
4688	// empty or default values are omitted from API requests. However, any
4689	// non-pointer, non-interface field appearing in ForceSendFields will be
4690	// sent to the server regardless of whether the field is empty or not.
4691	// This may be used to include empty fields in Patch requests.
4692	ForceSendFields []string `json:"-"`
4693
4694	// NullFields is a list of field names (e.g. "About") to include in API
4695	// requests with the JSON null value. By default, fields with empty
4696	// values are omitted from API requests. However, any field with an
4697	// empty value appearing in NullFields will be sent to the server as
4698	// null. It is an error if a field in this list has a non-empty value.
4699	// This may be used to include null fields in Patch requests.
4700	NullFields []string `json:"-"`
4701}
4702
4703func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
4704	type NoMethod LiaCountrySettings
4705	raw := NoMethod(*s)
4706	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4707}
4708
4709type LiaInventorySettings struct {
4710	// InventoryVerificationContactEmail: The email of the contact for the
4711	// inventory verification process.
4712	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
4713
4714	// InventoryVerificationContactName: The name of the contact for the
4715	// inventory verification process.
4716	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
4717
4718	// InventoryVerificationContactStatus: The status of the verification
4719	// contact. Acceptable values are: - "active" - "inactive" -
4720	// "pending"
4721	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
4722
4723	// Status: The status of the inventory verification process. Acceptable
4724	// values are: - "active" - "inactive" - "pending"
4725	Status string `json:"status,omitempty"`
4726
4727	// ForceSendFields is a list of field names (e.g.
4728	// "InventoryVerificationContactEmail") to unconditionally include in
4729	// API requests. By default, fields with empty or default values are
4730	// omitted from API requests. However, any non-pointer, non-interface
4731	// field appearing in ForceSendFields will be sent to the server
4732	// regardless of whether the field is empty or not. This may be used to
4733	// include empty fields in Patch requests.
4734	ForceSendFields []string `json:"-"`
4735
4736	// NullFields is a list of field names (e.g.
4737	// "InventoryVerificationContactEmail") to include in API requests with
4738	// the JSON null value. By default, fields with empty values are omitted
4739	// from API requests. However, any field with an empty value appearing
4740	// in NullFields will be sent to the server as null. It is an error if a
4741	// field in this list has a non-empty value. This may be used to include
4742	// null fields in Patch requests.
4743	NullFields []string `json:"-"`
4744}
4745
4746func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
4747	type NoMethod LiaInventorySettings
4748	raw := NoMethod(*s)
4749	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4750}
4751
4752type LiaOnDisplayToOrderSettings struct {
4753	// ShippingCostPolicyUrl: Shipping cost and policy URL.
4754	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
4755
4756	// Status: The status of the ?On display to order? feature. Acceptable
4757	// values are: - "active" - "inactive" - "pending"
4758	Status string `json:"status,omitempty"`
4759
4760	// ForceSendFields is a list of field names (e.g.
4761	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
4762	// By default, fields with empty or default values are omitted from API
4763	// requests. However, any non-pointer, non-interface field appearing in
4764	// ForceSendFields will be sent to the server regardless of whether the
4765	// field is empty or not. This may be used to include empty fields in
4766	// Patch requests.
4767	ForceSendFields []string `json:"-"`
4768
4769	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
4770	// include in API requests with the JSON null value. By default, fields
4771	// with empty values are omitted from API requests. However, any field
4772	// with an empty value appearing in NullFields will be sent to the
4773	// server as null. It is an error if a field in this list has a
4774	// non-empty value. This may be used to include null fields in Patch
4775	// requests.
4776	NullFields []string `json:"-"`
4777}
4778
4779func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
4780	type NoMethod LiaOnDisplayToOrderSettings
4781	raw := NoMethod(*s)
4782	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4783}
4784
4785type LiaPosDataProvider struct {
4786	// PosDataProviderId: The ID of the POS data provider.
4787	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
4788
4789	// PosExternalAccountId: The account ID by which this merchant is known
4790	// to the POS data provider.
4791	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
4792
4793	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
4794	// to unconditionally include in API requests. By default, fields with
4795	// empty or default values are omitted from API requests. However, any
4796	// non-pointer, non-interface field appearing in ForceSendFields will be
4797	// sent to the server regardless of whether the field is empty or not.
4798	// This may be used to include empty fields in Patch requests.
4799	ForceSendFields []string `json:"-"`
4800
4801	// NullFields is a list of field names (e.g. "PosDataProviderId") to
4802	// include in API requests with the JSON null value. By default, fields
4803	// with empty values are omitted from API requests. However, any field
4804	// with an empty value appearing in NullFields will be sent to the
4805	// server as null. It is an error if a field in this list has a
4806	// non-empty value. This may be used to include null fields in Patch
4807	// requests.
4808	NullFields []string `json:"-"`
4809}
4810
4811func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
4812	type NoMethod LiaPosDataProvider
4813	raw := NoMethod(*s)
4814	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4815}
4816
4817// LiaSettings: Local Inventory ads (LIA) settings. All methods except
4818// listposdataproviders require the admin role.
4819type LiaSettings struct {
4820	// AccountId: The ID of the account to which these LIA settings belong.
4821	// Ignored upon update, always present in get request responses.
4822	AccountId uint64 `json:"accountId,omitempty,string"`
4823
4824	// CountrySettings: The LIA settings for each country.
4825	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
4826
4827	// Kind: Identifies what kind of resource this is. Value: the fixed
4828	// string "content#liaSettings"
4829	Kind string `json:"kind,omitempty"`
4830
4831	// ServerResponse contains the HTTP response code and headers from the
4832	// server.
4833	googleapi.ServerResponse `json:"-"`
4834
4835	// ForceSendFields is a list of field names (e.g. "AccountId") to
4836	// unconditionally include in API requests. By default, fields with
4837	// empty or default values are omitted from API requests. However, any
4838	// non-pointer, non-interface field appearing in ForceSendFields will be
4839	// sent to the server regardless of whether the field is empty or not.
4840	// This may be used to include empty fields in Patch requests.
4841	ForceSendFields []string `json:"-"`
4842
4843	// NullFields is a list of field names (e.g. "AccountId") to include in
4844	// API requests with the JSON null value. By default, fields with empty
4845	// values are omitted from API requests. However, any field with an
4846	// empty value appearing in NullFields will be sent to the server as
4847	// null. It is an error if a field in this list has a non-empty value.
4848	// This may be used to include null fields in Patch requests.
4849	NullFields []string `json:"-"`
4850}
4851
4852func (s *LiaSettings) MarshalJSON() ([]byte, error) {
4853	type NoMethod LiaSettings
4854	raw := NoMethod(*s)
4855	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4856}
4857
4858type LiasettingsCustomBatchRequest struct {
4859	// Entries: The request entries to be processed in the batch.
4860	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
4861
4862	// ForceSendFields is a list of field names (e.g. "Entries") to
4863	// unconditionally include in API requests. By default, fields with
4864	// empty or default values are omitted from API requests. However, any
4865	// non-pointer, non-interface field appearing in ForceSendFields will be
4866	// sent to the server regardless of whether the field is empty or not.
4867	// This may be used to include empty fields in Patch requests.
4868	ForceSendFields []string `json:"-"`
4869
4870	// NullFields is a list of field names (e.g. "Entries") to include in
4871	// API requests with the JSON null value. By default, fields with empty
4872	// values are omitted from API requests. However, any field with an
4873	// empty value appearing in NullFields will be sent to the server as
4874	// null. It is an error if a field in this list has a non-empty value.
4875	// This may be used to include null fields in Patch requests.
4876	NullFields []string `json:"-"`
4877}
4878
4879func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
4880	type NoMethod LiasettingsCustomBatchRequest
4881	raw := NoMethod(*s)
4882	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4883}
4884
4885type LiasettingsCustomBatchRequestEntry struct {
4886	// AccountId: The ID of the account for which to get/update account LIA
4887	// settings.
4888	AccountId uint64 `json:"accountId,omitempty,string"`
4889
4890	// BatchId: An entry ID, unique within the batch request.
4891	BatchId int64 `json:"batchId,omitempty"`
4892
4893	// ContactEmail: Inventory validation contact email. Required only for
4894	// SetInventoryValidationContact.
4895	ContactEmail string `json:"contactEmail,omitempty"`
4896
4897	// ContactName: Inventory validation contact name. Required only for
4898	// SetInventoryValidationContact.
4899	ContactName string `json:"contactName,omitempty"`
4900
4901	// Country: The country code. Required only for
4902	// RequestInventoryVerification.
4903	Country string `json:"country,omitempty"`
4904
4905	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
4906	GmbEmail string `json:"gmbEmail,omitempty"`
4907
4908	// LiaSettings: The account Lia settings to update. Only defined if the
4909	// method is `update`.
4910	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4911
4912	// MerchantId: The ID of the managing account.
4913	MerchantId uint64 `json:"merchantId,omitempty,string"`
4914
4915	// Method: The method of the batch entry. Acceptable values are: -
4916	// "get" - "getAccessibleGmbAccounts" - "requestGmbAccess" -
4917	// "requestInventoryVerification" -
4918	// "setInventoryVerificationContact" - "update"
4919	Method string `json:"method,omitempty"`
4920
4921	// PosDataProviderId: The ID of POS data provider. Required only for
4922	// SetPosProvider.
4923	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
4924
4925	// PosExternalAccountId: The account ID by which this merchant is known
4926	// to the POS provider.
4927	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
4928
4929	// ForceSendFields is a list of field names (e.g. "AccountId") to
4930	// unconditionally include in API requests. By default, fields with
4931	// empty or default values are omitted from API requests. However, any
4932	// non-pointer, non-interface field appearing in ForceSendFields will be
4933	// sent to the server regardless of whether the field is empty or not.
4934	// This may be used to include empty fields in Patch requests.
4935	ForceSendFields []string `json:"-"`
4936
4937	// NullFields is a list of field names (e.g. "AccountId") to include in
4938	// API requests with the JSON null value. By default, fields with empty
4939	// values are omitted from API requests. However, any field with an
4940	// empty value appearing in NullFields will be sent to the server as
4941	// null. It is an error if a field in this list has a non-empty value.
4942	// This may be used to include null fields in Patch requests.
4943	NullFields []string `json:"-"`
4944}
4945
4946func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
4947	type NoMethod LiasettingsCustomBatchRequestEntry
4948	raw := NoMethod(*s)
4949	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4950}
4951
4952type LiasettingsCustomBatchResponse struct {
4953	// Entries: The result of the execution of the batch requests.
4954	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
4955
4956	// Kind: Identifies what kind of resource this is. Value: the fixed
4957	// string "content#liasettingsCustomBatchResponse".
4958	Kind string `json:"kind,omitempty"`
4959
4960	// ServerResponse contains the HTTP response code and headers from the
4961	// server.
4962	googleapi.ServerResponse `json:"-"`
4963
4964	// ForceSendFields is a list of field names (e.g. "Entries") to
4965	// unconditionally include in API requests. By default, fields with
4966	// empty or default values are omitted from API requests. However, any
4967	// non-pointer, non-interface field appearing in ForceSendFields will be
4968	// sent to the server regardless of whether the field is empty or not.
4969	// This may be used to include empty fields in Patch requests.
4970	ForceSendFields []string `json:"-"`
4971
4972	// NullFields is a list of field names (e.g. "Entries") to include in
4973	// API requests with the JSON null value. By default, fields with empty
4974	// values are omitted from API requests. However, any field with an
4975	// empty value appearing in NullFields will be sent to the server as
4976	// null. It is an error if a field in this list has a non-empty value.
4977	// This may be used to include null fields in Patch requests.
4978	NullFields []string `json:"-"`
4979}
4980
4981func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
4982	type NoMethod LiasettingsCustomBatchResponse
4983	raw := NoMethod(*s)
4984	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4985}
4986
4987type LiasettingsCustomBatchResponseEntry struct {
4988	// BatchId: The ID of the request entry to which this entry responds.
4989	BatchId int64 `json:"batchId,omitempty"`
4990
4991	// Errors: A list of errors defined if, and only if, the request failed.
4992	Errors *Errors `json:"errors,omitempty"`
4993
4994	// GmbAccounts: The list of accessible GMB accounts.
4995	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
4996
4997	// Kind: Identifies what kind of resource this is. Value: the fixed
4998	// string "content#liasettingsCustomBatchResponseEntry"
4999	Kind string `json:"kind,omitempty"`
5000
5001	// LiaSettings: The retrieved or updated Lia settings.
5002	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
5003
5004	// PosDataProviders: The list of POS data providers.
5005	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
5006
5007	// ForceSendFields is a list of field names (e.g. "BatchId") to
5008	// unconditionally include in API requests. By default, fields with
5009	// empty or default values are omitted from API requests. However, any
5010	// non-pointer, non-interface field appearing in ForceSendFields will be
5011	// sent to the server regardless of whether the field is empty or not.
5012	// This may be used to include empty fields in Patch requests.
5013	ForceSendFields []string `json:"-"`
5014
5015	// NullFields is a list of field names (e.g. "BatchId") to include in
5016	// API requests with the JSON null value. By default, fields with empty
5017	// values are omitted from API requests. However, any field with an
5018	// empty value appearing in NullFields will be sent to the server as
5019	// null. It is an error if a field in this list has a non-empty value.
5020	// This may be used to include null fields in Patch requests.
5021	NullFields []string `json:"-"`
5022}
5023
5024func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
5025	type NoMethod LiasettingsCustomBatchResponseEntry
5026	raw := NoMethod(*s)
5027	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5028}
5029
5030type LiasettingsGetAccessibleGmbAccountsResponse struct {
5031	// AccountId: The ID of the Merchant Center account.
5032	AccountId uint64 `json:"accountId,omitempty,string"`
5033
5034	// GmbAccounts: A list of GMB accounts which are available to the
5035	// merchant.
5036	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
5037
5038	// Kind: Identifies what kind of resource this is. Value: the fixed
5039	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
5040	Kind string `json:"kind,omitempty"`
5041
5042	// ServerResponse contains the HTTP response code and headers from the
5043	// server.
5044	googleapi.ServerResponse `json:"-"`
5045
5046	// ForceSendFields is a list of field names (e.g. "AccountId") to
5047	// unconditionally include in API requests. By default, fields with
5048	// empty or default values are omitted from API requests. However, any
5049	// non-pointer, non-interface field appearing in ForceSendFields will be
5050	// sent to the server regardless of whether the field is empty or not.
5051	// This may be used to include empty fields in Patch requests.
5052	ForceSendFields []string `json:"-"`
5053
5054	// NullFields is a list of field names (e.g. "AccountId") to include in
5055	// API requests with the JSON null value. By default, fields with empty
5056	// values are omitted from API requests. However, any field with an
5057	// empty value appearing in NullFields will be sent to the server as
5058	// null. It is an error if a field in this list has a non-empty value.
5059	// This may be used to include null fields in Patch requests.
5060	NullFields []string `json:"-"`
5061}
5062
5063func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
5064	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
5065	raw := NoMethod(*s)
5066	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5067}
5068
5069type LiasettingsListPosDataProvidersResponse struct {
5070	// Kind: Identifies what kind of resource this is. Value: the fixed
5071	// string "content#liasettingsListPosDataProvidersResponse".
5072	Kind string `json:"kind,omitempty"`
5073
5074	// PosDataProviders: The list of POS data providers for each eligible
5075	// country
5076	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
5077
5078	// ServerResponse contains the HTTP response code and headers from the
5079	// server.
5080	googleapi.ServerResponse `json:"-"`
5081
5082	// ForceSendFields is a list of field names (e.g. "Kind") to
5083	// unconditionally include in API requests. By default, fields with
5084	// empty or default values are omitted from API requests. However, any
5085	// non-pointer, non-interface field appearing in ForceSendFields will be
5086	// sent to the server regardless of whether the field is empty or not.
5087	// This may be used to include empty fields in Patch requests.
5088	ForceSendFields []string `json:"-"`
5089
5090	// NullFields is a list of field names (e.g. "Kind") to include in API
5091	// requests with the JSON null value. By default, fields with empty
5092	// values are omitted from API requests. However, any field with an
5093	// empty value appearing in NullFields will be sent to the server as
5094	// null. It is an error if a field in this list has a non-empty value.
5095	// This may be used to include null fields in Patch requests.
5096	NullFields []string `json:"-"`
5097}
5098
5099func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
5100	type NoMethod LiasettingsListPosDataProvidersResponse
5101	raw := NoMethod(*s)
5102	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5103}
5104
5105type LiasettingsListResponse struct {
5106	// Kind: Identifies what kind of resource this is. Value: the fixed
5107	// string "content#liasettingsListResponse".
5108	Kind string `json:"kind,omitempty"`
5109
5110	// NextPageToken: The token for the retrieval of the next page of LIA
5111	// settings.
5112	NextPageToken string `json:"nextPageToken,omitempty"`
5113
5114	Resources []*LiaSettings `json:"resources,omitempty"`
5115
5116	// ServerResponse contains the HTTP response code and headers from the
5117	// server.
5118	googleapi.ServerResponse `json:"-"`
5119
5120	// ForceSendFields is a list of field names (e.g. "Kind") to
5121	// unconditionally include in API requests. By default, fields with
5122	// empty or default values are omitted from API requests. However, any
5123	// non-pointer, non-interface field appearing in ForceSendFields will be
5124	// sent to the server regardless of whether the field is empty or not.
5125	// This may be used to include empty fields in Patch requests.
5126	ForceSendFields []string `json:"-"`
5127
5128	// NullFields is a list of field names (e.g. "Kind") to include in API
5129	// requests with the JSON null value. By default, fields with empty
5130	// values are omitted from API requests. However, any field with an
5131	// empty value appearing in NullFields will be sent to the server as
5132	// null. It is an error if a field in this list has a non-empty value.
5133	// This may be used to include null fields in Patch requests.
5134	NullFields []string `json:"-"`
5135}
5136
5137func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
5138	type NoMethod LiasettingsListResponse
5139	raw := NoMethod(*s)
5140	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5141}
5142
5143type LiasettingsRequestGmbAccessResponse struct {
5144	// Kind: Identifies what kind of resource this is. Value: the fixed
5145	// string "content#liasettingsRequestGmbAccessResponse".
5146	Kind string `json:"kind,omitempty"`
5147
5148	// ServerResponse contains the HTTP response code and headers from the
5149	// server.
5150	googleapi.ServerResponse `json:"-"`
5151
5152	// ForceSendFields is a list of field names (e.g. "Kind") to
5153	// unconditionally include in API requests. By default, fields with
5154	// empty or default values are omitted from API requests. However, any
5155	// non-pointer, non-interface field appearing in ForceSendFields will be
5156	// sent to the server regardless of whether the field is empty or not.
5157	// This may be used to include empty fields in Patch requests.
5158	ForceSendFields []string `json:"-"`
5159
5160	// NullFields is a list of field names (e.g. "Kind") to include in API
5161	// requests with the JSON null value. By default, fields with empty
5162	// values are omitted from API requests. However, any field with an
5163	// empty value appearing in NullFields will be sent to the server as
5164	// null. It is an error if a field in this list has a non-empty value.
5165	// This may be used to include null fields in Patch requests.
5166	NullFields []string `json:"-"`
5167}
5168
5169func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
5170	type NoMethod LiasettingsRequestGmbAccessResponse
5171	raw := NoMethod(*s)
5172	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5173}
5174
5175type LiasettingsRequestInventoryVerificationResponse struct {
5176	// Kind: Identifies what kind of resource this is. Value: the fixed
5177	// string "content#liasettingsRequestInventoryVerificationResponse".
5178	Kind string `json:"kind,omitempty"`
5179
5180	// ServerResponse contains the HTTP response code and headers from the
5181	// server.
5182	googleapi.ServerResponse `json:"-"`
5183
5184	// ForceSendFields is a list of field names (e.g. "Kind") to
5185	// unconditionally include in API requests. By default, fields with
5186	// empty or default values are omitted from API requests. However, any
5187	// non-pointer, non-interface field appearing in ForceSendFields will be
5188	// sent to the server regardless of whether the field is empty or not.
5189	// This may be used to include empty fields in Patch requests.
5190	ForceSendFields []string `json:"-"`
5191
5192	// NullFields is a list of field names (e.g. "Kind") to include in API
5193	// requests with the JSON null value. By default, fields with empty
5194	// values are omitted from API requests. However, any field with an
5195	// empty value appearing in NullFields will be sent to the server as
5196	// null. It is an error if a field in this list has a non-empty value.
5197	// This may be used to include null fields in Patch requests.
5198	NullFields []string `json:"-"`
5199}
5200
5201func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
5202	type NoMethod LiasettingsRequestInventoryVerificationResponse
5203	raw := NoMethod(*s)
5204	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5205}
5206
5207type LiasettingsSetInventoryVerificationContactResponse struct {
5208	// Kind: Identifies what kind of resource this is. Value: the fixed
5209	// string
5210	// "content#liasettingsSetInventoryVerificationContactResponse".
5211	Kind string `json:"kind,omitempty"`
5212
5213	// ServerResponse contains the HTTP response code and headers from the
5214	// server.
5215	googleapi.ServerResponse `json:"-"`
5216
5217	// ForceSendFields is a list of field names (e.g. "Kind") to
5218	// unconditionally include in API requests. By default, fields with
5219	// empty or default values are omitted from API requests. However, any
5220	// non-pointer, non-interface field appearing in ForceSendFields will be
5221	// sent to the server regardless of whether the field is empty or not.
5222	// This may be used to include empty fields in Patch requests.
5223	ForceSendFields []string `json:"-"`
5224
5225	// NullFields is a list of field names (e.g. "Kind") to include in API
5226	// requests with the JSON null value. By default, fields with empty
5227	// values are omitted from API requests. However, any field with an
5228	// empty value appearing in NullFields will be sent to the server as
5229	// null. It is an error if a field in this list has a non-empty value.
5230	// This may be used to include null fields in Patch requests.
5231	NullFields []string `json:"-"`
5232}
5233
5234func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
5235	type NoMethod LiasettingsSetInventoryVerificationContactResponse
5236	raw := NoMethod(*s)
5237	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5238}
5239
5240type LiasettingsSetPosDataProviderResponse struct {
5241	// Kind: Identifies what kind of resource this is. Value: the fixed
5242	// string "content#liasettingsSetPosDataProviderResponse".
5243	Kind string `json:"kind,omitempty"`
5244
5245	// ServerResponse contains the HTTP response code and headers from the
5246	// server.
5247	googleapi.ServerResponse `json:"-"`
5248
5249	// ForceSendFields is a list of field names (e.g. "Kind") to
5250	// unconditionally include in API requests. By default, fields with
5251	// empty or default values are omitted from API requests. However, any
5252	// non-pointer, non-interface field appearing in ForceSendFields will be
5253	// sent to the server regardless of whether the field is empty or not.
5254	// This may be used to include empty fields in Patch requests.
5255	ForceSendFields []string `json:"-"`
5256
5257	// NullFields is a list of field names (e.g. "Kind") to include in API
5258	// requests with the JSON null value. By default, fields with empty
5259	// values are omitted from API requests. However, any field with an
5260	// empty value appearing in NullFields will be sent to the server as
5261	// null. It is an error if a field in this list has a non-empty value.
5262	// This may be used to include null fields in Patch requests.
5263	NullFields []string `json:"-"`
5264}
5265
5266func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
5267	type NoMethod LiasettingsSetPosDataProviderResponse
5268	raw := NoMethod(*s)
5269	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5270}
5271
5272type LinkService struct {
5273	// Service: Service provided to or by the linked account. Acceptable
5274	// values are: - "shoppingActionsOrderManagement" -
5275	// "shoppingActionsProductManagement" -
5276	// "shoppingAdsProductManagement" - "paymentProcessing"
5277	Service string `json:"service,omitempty"`
5278
5279	// Status: Status of the link Acceptable values are: - "active" -
5280	// "inactive" - "pending"
5281	Status string `json:"status,omitempty"`
5282
5283	// ForceSendFields is a list of field names (e.g. "Service") to
5284	// unconditionally include in API requests. By default, fields with
5285	// empty or default values are omitted from API requests. However, any
5286	// non-pointer, non-interface field appearing in ForceSendFields will be
5287	// sent to the server regardless of whether the field is empty or not.
5288	// This may be used to include empty fields in Patch requests.
5289	ForceSendFields []string `json:"-"`
5290
5291	// NullFields is a list of field names (e.g. "Service") to include in
5292	// API requests with the JSON null value. By default, fields with empty
5293	// values are omitted from API requests. However, any field with an
5294	// empty value appearing in NullFields will be sent to the server as
5295	// null. It is an error if a field in this list has a non-empty value.
5296	// This may be used to include null fields in Patch requests.
5297	NullFields []string `json:"-"`
5298}
5299
5300func (s *LinkService) MarshalJSON() ([]byte, error) {
5301	type NoMethod LinkService
5302	raw := NoMethod(*s)
5303	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5304}
5305
5306type LinkedAccount struct {
5307	// LinkedAccountId: The ID of the linked account.
5308	LinkedAccountId string `json:"linkedAccountId,omitempty"`
5309
5310	// Services: List of provided services.
5311	Services []*LinkService `json:"services,omitempty"`
5312
5313	// ForceSendFields is a list of field names (e.g. "LinkedAccountId") to
5314	// unconditionally include in API requests. By default, fields with
5315	// empty or default values are omitted from API requests. However, any
5316	// non-pointer, non-interface field appearing in ForceSendFields will be
5317	// sent to the server regardless of whether the field is empty or not.
5318	// This may be used to include empty fields in Patch requests.
5319	ForceSendFields []string `json:"-"`
5320
5321	// NullFields is a list of field names (e.g. "LinkedAccountId") to
5322	// include in API requests with the JSON null value. By default, fields
5323	// with empty values are omitted from API requests. However, any field
5324	// with an empty value appearing in NullFields will be sent to the
5325	// server as null. It is an error if a field in this list has a
5326	// non-empty value. This may be used to include null fields in Patch
5327	// requests.
5328	NullFields []string `json:"-"`
5329}
5330
5331func (s *LinkedAccount) MarshalJSON() ([]byte, error) {
5332	type NoMethod LinkedAccount
5333	raw := NoMethod(*s)
5334	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5335}
5336
5337// ListAccountLabelsResponse: Response message for the
5338// `ListAccountLabels` method.
5339type ListAccountLabelsResponse struct {
5340	// AccountLabels: The labels from the specified account.
5341	AccountLabels []*AccountLabel `json:"accountLabels,omitempty"`
5342
5343	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5344	// the next page. If this field is omitted, there are no subsequent
5345	// pages.
5346	NextPageToken string `json:"nextPageToken,omitempty"`
5347
5348	// ServerResponse contains the HTTP response code and headers from the
5349	// server.
5350	googleapi.ServerResponse `json:"-"`
5351
5352	// ForceSendFields is a list of field names (e.g. "AccountLabels") to
5353	// unconditionally include in API requests. By default, fields with
5354	// empty or default values are omitted from API requests. However, any
5355	// non-pointer, non-interface field appearing in ForceSendFields will be
5356	// sent to the server regardless of whether the field is empty or not.
5357	// This may be used to include empty fields in Patch requests.
5358	ForceSendFields []string `json:"-"`
5359
5360	// NullFields is a list of field names (e.g. "AccountLabels") to include
5361	// in API requests with the JSON null value. By default, fields with
5362	// empty values are omitted from API requests. However, any field with
5363	// an empty value appearing in NullFields will be sent to the server as
5364	// null. It is an error if a field in this list has a non-empty value.
5365	// This may be used to include null fields in Patch requests.
5366	NullFields []string `json:"-"`
5367}
5368
5369func (s *ListAccountLabelsResponse) MarshalJSON() ([]byte, error) {
5370	type NoMethod ListAccountLabelsResponse
5371	raw := NoMethod(*s)
5372	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5373}
5374
5375// ListAccountReturnCarrierResponse: Response for listing account return
5376// carriers.
5377type ListAccountReturnCarrierResponse struct {
5378	// AccountReturnCarriers: List of all available account return carriers
5379	// for the merchant.
5380	AccountReturnCarriers []*AccountReturnCarrier `json:"accountReturnCarriers,omitempty"`
5381
5382	// ServerResponse contains the HTTP response code and headers from the
5383	// server.
5384	googleapi.ServerResponse `json:"-"`
5385
5386	// ForceSendFields is a list of field names (e.g.
5387	// "AccountReturnCarriers") to unconditionally include in API requests.
5388	// By default, fields with empty or default values are omitted from API
5389	// requests. However, any non-pointer, non-interface field appearing in
5390	// ForceSendFields will be sent to the server regardless of whether the
5391	// field is empty or not. This may be used to include empty fields in
5392	// Patch requests.
5393	ForceSendFields []string `json:"-"`
5394
5395	// NullFields is a list of field names (e.g. "AccountReturnCarriers") to
5396	// include in API requests with the JSON null value. By default, fields
5397	// with empty values are omitted from API requests. However, any field
5398	// with an empty value appearing in NullFields will be sent to the
5399	// server as null. It is an error if a field in this list has a
5400	// non-empty value. This may be used to include null fields in Patch
5401	// requests.
5402	NullFields []string `json:"-"`
5403}
5404
5405func (s *ListAccountReturnCarrierResponse) MarshalJSON() ([]byte, error) {
5406	type NoMethod ListAccountReturnCarrierResponse
5407	raw := NoMethod(*s)
5408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5409}
5410
5411// ListCollectionStatusesResponse: Response message for the
5412// ListCollectionStatuses method.
5413type ListCollectionStatusesResponse struct {
5414	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5415	// the next page. If this field is omitted, there are no subsequent
5416	// pages.
5417	NextPageToken string `json:"nextPageToken,omitempty"`
5418
5419	// Resources: The collectionstatuses listed.
5420	Resources []*CollectionStatus `json:"resources,omitempty"`
5421
5422	// ServerResponse contains the HTTP response code and headers from the
5423	// server.
5424	googleapi.ServerResponse `json:"-"`
5425
5426	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5427	// unconditionally include in API requests. By default, fields with
5428	// empty or default values are omitted from API requests. However, any
5429	// non-pointer, non-interface field appearing in ForceSendFields will be
5430	// sent to the server regardless of whether the field is empty or not.
5431	// This may be used to include empty fields in Patch requests.
5432	ForceSendFields []string `json:"-"`
5433
5434	// NullFields is a list of field names (e.g. "NextPageToken") to include
5435	// in API requests with the JSON null value. By default, fields with
5436	// empty values are omitted from API requests. However, any field with
5437	// an empty value appearing in NullFields will be sent to the server as
5438	// null. It is an error if a field in this list has a non-empty value.
5439	// This may be used to include null fields in Patch requests.
5440	NullFields []string `json:"-"`
5441}
5442
5443func (s *ListCollectionStatusesResponse) MarshalJSON() ([]byte, error) {
5444	type NoMethod ListCollectionStatusesResponse
5445	raw := NoMethod(*s)
5446	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5447}
5448
5449// ListCollectionsResponse: Response message for the ListCollections
5450// method.
5451type ListCollectionsResponse struct {
5452	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5453	// the next page. If this field is omitted, there are no subsequent
5454	// pages.
5455	NextPageToken string `json:"nextPageToken,omitempty"`
5456
5457	// Resources: The collections listed.
5458	Resources []*Collection `json:"resources,omitempty"`
5459
5460	// ServerResponse contains the HTTP response code and headers from the
5461	// server.
5462	googleapi.ServerResponse `json:"-"`
5463
5464	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5465	// unconditionally include in API requests. By default, fields with
5466	// empty or default values are omitted from API requests. However, any
5467	// non-pointer, non-interface field appearing in ForceSendFields will be
5468	// sent to the server regardless of whether the field is empty or not.
5469	// This may be used to include empty fields in Patch requests.
5470	ForceSendFields []string `json:"-"`
5471
5472	// NullFields is a list of field names (e.g. "NextPageToken") to include
5473	// in API requests with the JSON null value. By default, fields with
5474	// empty values are omitted from API requests. However, any field with
5475	// an empty value appearing in NullFields will be sent to the server as
5476	// null. It is an error if a field in this list has a non-empty value.
5477	// This may be used to include null fields in Patch requests.
5478	NullFields []string `json:"-"`
5479}
5480
5481func (s *ListCollectionsResponse) MarshalJSON() ([]byte, error) {
5482	type NoMethod ListCollectionsResponse
5483	raw := NoMethod(*s)
5484	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5485}
5486
5487// ListCssesResponse: The response message for the `ListCsses` method
5488type ListCssesResponse struct {
5489	// Csses: The CSS domains affiliated with the specified CSS group.
5490	Csses []*Css `json:"csses,omitempty"`
5491
5492	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5493	// the next page. If this field is omitted, there are no subsequent
5494	// pages.
5495	NextPageToken string `json:"nextPageToken,omitempty"`
5496
5497	// ServerResponse contains the HTTP response code and headers from the
5498	// server.
5499	googleapi.ServerResponse `json:"-"`
5500
5501	// ForceSendFields is a list of field names (e.g. "Csses") to
5502	// unconditionally include in API requests. By default, fields with
5503	// empty or default values are omitted from API requests. However, any
5504	// non-pointer, non-interface field appearing in ForceSendFields will be
5505	// sent to the server regardless of whether the field is empty or not.
5506	// This may be used to include empty fields in Patch requests.
5507	ForceSendFields []string `json:"-"`
5508
5509	// NullFields is a list of field names (e.g. "Csses") to include in API
5510	// requests with the JSON null value. By default, fields with empty
5511	// values are omitted from API requests. However, any field with an
5512	// empty value appearing in NullFields will be sent to the server as
5513	// null. It is an error if a field in this list has a non-empty value.
5514	// This may be used to include null fields in Patch requests.
5515	NullFields []string `json:"-"`
5516}
5517
5518func (s *ListCssesResponse) MarshalJSON() ([]byte, error) {
5519	type NoMethod ListCssesResponse
5520	raw := NoMethod(*s)
5521	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5522}
5523
5524// ListRegionsResponse: Response message for the `ListRegions` method.
5525type ListRegionsResponse struct {
5526	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5527	// the next page. If this field is omitted, there are no subsequent
5528	// pages.
5529	NextPageToken string `json:"nextPageToken,omitempty"`
5530
5531	// Regions: The regions from the specified merchant.
5532	Regions []*Region `json:"regions,omitempty"`
5533
5534	// ServerResponse contains the HTTP response code and headers from the
5535	// server.
5536	googleapi.ServerResponse `json:"-"`
5537
5538	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5539	// unconditionally include in API requests. By default, fields with
5540	// empty or default values are omitted from API requests. However, any
5541	// non-pointer, non-interface field appearing in ForceSendFields will be
5542	// sent to the server regardless of whether the field is empty or not.
5543	// This may be used to include empty fields in Patch requests.
5544	ForceSendFields []string `json:"-"`
5545
5546	// NullFields is a list of field names (e.g. "NextPageToken") to include
5547	// in API requests with the JSON null value. By default, fields with
5548	// empty values are omitted from API requests. However, any field with
5549	// an empty value appearing in NullFields will be sent to the server as
5550	// null. It is an error if a field in this list has a non-empty value.
5551	// This may be used to include null fields in Patch requests.
5552	NullFields []string `json:"-"`
5553}
5554
5555func (s *ListRegionsResponse) MarshalJSON() ([]byte, error) {
5556	type NoMethod ListRegionsResponse
5557	raw := NoMethod(*s)
5558	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5559}
5560
5561// ListRepricingProductReportsResponse: Response message for the
5562// ListRepricingProductReports method.
5563type ListRepricingProductReportsResponse struct {
5564	// NextPageToken: A token for retrieving the next page. Its absence
5565	// means there is no subsequent page.
5566	NextPageToken string `json:"nextPageToken,omitempty"`
5567
5568	// RepricingProductReports: Periodic reports for the given Repricing
5569	// product.
5570	RepricingProductReports []*RepricingProductReport `json:"repricingProductReports,omitempty"`
5571
5572	// ServerResponse contains the HTTP response code and headers from the
5573	// server.
5574	googleapi.ServerResponse `json:"-"`
5575
5576	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5577	// unconditionally include in API requests. By default, fields with
5578	// empty or default values are omitted from API requests. However, any
5579	// non-pointer, non-interface field appearing in ForceSendFields will be
5580	// sent to the server regardless of whether the field is empty or not.
5581	// This may be used to include empty fields in Patch requests.
5582	ForceSendFields []string `json:"-"`
5583
5584	// NullFields is a list of field names (e.g. "NextPageToken") to include
5585	// in API requests with the JSON null value. By default, fields with
5586	// empty values are omitted from API requests. However, any field with
5587	// an empty value appearing in NullFields will be sent to the server as
5588	// null. It is an error if a field in this list has a non-empty value.
5589	// This may be used to include null fields in Patch requests.
5590	NullFields []string `json:"-"`
5591}
5592
5593func (s *ListRepricingProductReportsResponse) MarshalJSON() ([]byte, error) {
5594	type NoMethod ListRepricingProductReportsResponse
5595	raw := NoMethod(*s)
5596	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5597}
5598
5599// ListRepricingRuleReportsResponse: Response message for the
5600// ListRepricingRuleReports method.
5601type ListRepricingRuleReportsResponse struct {
5602	// NextPageToken: A token for retrieving the next page. Its absence
5603	// means there is no subsequent page.
5604	NextPageToken string `json:"nextPageToken,omitempty"`
5605
5606	// RepricingRuleReports: Daily reports for the given Repricing rule.
5607	RepricingRuleReports []*RepricingRuleReport `json:"repricingRuleReports,omitempty"`
5608
5609	// ServerResponse contains the HTTP response code and headers from the
5610	// server.
5611	googleapi.ServerResponse `json:"-"`
5612
5613	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5614	// unconditionally include in API requests. By default, fields with
5615	// empty or default values are omitted from API requests. However, any
5616	// non-pointer, non-interface field appearing in ForceSendFields will be
5617	// sent to the server regardless of whether the field is empty or not.
5618	// This may be used to include empty fields in Patch requests.
5619	ForceSendFields []string `json:"-"`
5620
5621	// NullFields is a list of field names (e.g. "NextPageToken") to include
5622	// in API requests with the JSON null value. By default, fields with
5623	// empty values are omitted from API requests. However, any field with
5624	// an empty value appearing in NullFields will be sent to the server as
5625	// null. It is an error if a field in this list has a non-empty value.
5626	// This may be used to include null fields in Patch requests.
5627	NullFields []string `json:"-"`
5628}
5629
5630func (s *ListRepricingRuleReportsResponse) MarshalJSON() ([]byte, error) {
5631	type NoMethod ListRepricingRuleReportsResponse
5632	raw := NoMethod(*s)
5633	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5634}
5635
5636// ListRepricingRulesResponse: Response message for the
5637// `ListRepricingRules` method.
5638type ListRepricingRulesResponse struct {
5639	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5640	// the next page. If this field is omitted, there are no subsequent
5641	// pages.
5642	NextPageToken string `json:"nextPageToken,omitempty"`
5643
5644	// RepricingRules: The rules from the specified merchant.
5645	RepricingRules []*RepricingRule `json:"repricingRules,omitempty"`
5646
5647	// ServerResponse contains the HTTP response code and headers from the
5648	// server.
5649	googleapi.ServerResponse `json:"-"`
5650
5651	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5652	// unconditionally include in API requests. By default, fields with
5653	// empty or default values are omitted from API requests. However, any
5654	// non-pointer, non-interface field appearing in ForceSendFields will be
5655	// sent to the server regardless of whether the field is empty or not.
5656	// This may be used to include empty fields in Patch requests.
5657	ForceSendFields []string `json:"-"`
5658
5659	// NullFields is a list of field names (e.g. "NextPageToken") to include
5660	// in API requests with the JSON null value. By default, fields with
5661	// empty values are omitted from API requests. However, any field with
5662	// an empty value appearing in NullFields will be sent to the server as
5663	// null. It is an error if a field in this list has a non-empty value.
5664	// This may be used to include null fields in Patch requests.
5665	NullFields []string `json:"-"`
5666}
5667
5668func (s *ListRepricingRulesResponse) MarshalJSON() ([]byte, error) {
5669	type NoMethod ListRepricingRulesResponse
5670	raw := NoMethod(*s)
5671	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5672}
5673
5674// ListReturnPolicyOnlineResponse: Response message for the
5675// `ListReturnPolicyOnline` method.
5676type ListReturnPolicyOnlineResponse struct {
5677	// ReturnPolicies: The retrieved return policies.
5678	ReturnPolicies []*ReturnPolicyOnline `json:"returnPolicies,omitempty"`
5679
5680	// ServerResponse contains the HTTP response code and headers from the
5681	// server.
5682	googleapi.ServerResponse `json:"-"`
5683
5684	// ForceSendFields is a list of field names (e.g. "ReturnPolicies") to
5685	// unconditionally include in API requests. By default, fields with
5686	// empty or default values are omitted from API requests. However, any
5687	// non-pointer, non-interface field appearing in ForceSendFields will be
5688	// sent to the server regardless of whether the field is empty or not.
5689	// This may be used to include empty fields in Patch requests.
5690	ForceSendFields []string `json:"-"`
5691
5692	// NullFields is a list of field names (e.g. "ReturnPolicies") to
5693	// include in API requests with the JSON null value. By default, fields
5694	// with empty values are omitted from API requests. However, any field
5695	// with an empty value appearing in NullFields will be sent to the
5696	// server as null. It is an error if a field in this list has a
5697	// non-empty value. This may be used to include null fields in Patch
5698	// requests.
5699	NullFields []string `json:"-"`
5700}
5701
5702func (s *ListReturnPolicyOnlineResponse) MarshalJSON() ([]byte, error) {
5703	type NoMethod ListReturnPolicyOnlineResponse
5704	raw := NoMethod(*s)
5705	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5706}
5707
5708// LocalInventory: Local inventory resource. For accepted attribute
5709// values, see the local product inventory feed specification.
5710type LocalInventory struct {
5711	// Availability: Availability of the product. For accepted attribute
5712	// values, see the local product inventory feed specification.
5713	Availability string `json:"availability,omitempty"`
5714
5715	// InstoreProductLocation: In-store product location.
5716	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
5717
5718	// Kind: Identifies what kind of resource this is. Value: the fixed
5719	// string "content#localInventory"
5720	Kind string `json:"kind,omitempty"`
5721
5722	// PickupMethod: Supported pickup method for this offer. Unless the
5723	// value is "not supported", this field must be submitted together with
5724	// `pickupSla`. For accepted attribute values, see the local product
5725	// inventory feed // specification.
5726	PickupMethod string `json:"pickupMethod,omitempty"`
5727
5728	// PickupSla: Expected date that an order will be ready for pickup
5729	// relative to the order date. Must be submitted together with
5730	// `pickupMethod`. For accepted attribute values, see the local product
5731	// inventory feed specification.
5732	PickupSla string `json:"pickupSla,omitempty"`
5733
5734	// Price: Price of the product.
5735	Price *Price `json:"price,omitempty"`
5736
5737	// Quantity: Quantity of the product. Must be nonnegative.
5738	Quantity int64 `json:"quantity,omitempty"`
5739
5740	// SalePrice: Sale price of the product. Mandatory if
5741	// `sale_price_effective_date` is defined.
5742	SalePrice *Price `json:"salePrice,omitempty"`
5743
5744	// SalePriceEffectiveDate: A date range represented by a pair of ISO
5745	// 8601 dates separated by a space, comma, or slash. Both dates may be
5746	// specified as 'null' if undecided.
5747	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
5748
5749	// StoreCode: Required. Store code of this local inventory resource.
5750	StoreCode string `json:"storeCode,omitempty"`
5751
5752	// ServerResponse contains the HTTP response code and headers from the
5753	// server.
5754	googleapi.ServerResponse `json:"-"`
5755
5756	// ForceSendFields is a list of field names (e.g. "Availability") to
5757	// unconditionally include in API requests. By default, fields with
5758	// empty or default values are omitted from API requests. However, any
5759	// non-pointer, non-interface field appearing in ForceSendFields will be
5760	// sent to the server regardless of whether the field is empty or not.
5761	// This may be used to include empty fields in Patch requests.
5762	ForceSendFields []string `json:"-"`
5763
5764	// NullFields is a list of field names (e.g. "Availability") to include
5765	// in API requests with the JSON null value. By default, fields with
5766	// empty values are omitted from API requests. However, any field with
5767	// an empty value appearing in NullFields will be sent to the server as
5768	// null. It is an error if a field in this list has a non-empty value.
5769	// This may be used to include null fields in Patch requests.
5770	NullFields []string `json:"-"`
5771}
5772
5773func (s *LocalInventory) MarshalJSON() ([]byte, error) {
5774	type NoMethod LocalInventory
5775	raw := NoMethod(*s)
5776	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5777}
5778
5779type LocalinventoryCustomBatchRequest struct {
5780	// Entries: The request entries to be processed in the batch.
5781	Entries []*LocalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
5782
5783	// ForceSendFields is a list of field names (e.g. "Entries") to
5784	// unconditionally include in API requests. By default, fields with
5785	// empty or default values are omitted from API requests. However, any
5786	// non-pointer, non-interface field appearing in ForceSendFields will be
5787	// sent to the server regardless of whether the field is empty or not.
5788	// This may be used to include empty fields in Patch requests.
5789	ForceSendFields []string `json:"-"`
5790
5791	// NullFields is a list of field names (e.g. "Entries") to include in
5792	// API requests with the JSON null value. By default, fields with empty
5793	// values are omitted from API requests. However, any field with an
5794	// empty value appearing in NullFields will be sent to the server as
5795	// null. It is an error if a field in this list has a non-empty value.
5796	// This may be used to include null fields in Patch requests.
5797	NullFields []string `json:"-"`
5798}
5799
5800func (s *LocalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
5801	type NoMethod LocalinventoryCustomBatchRequest
5802	raw := NoMethod(*s)
5803	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5804}
5805
5806// LocalinventoryCustomBatchRequestEntry: Batch entry encoding a single
5807// local inventory update request.
5808type LocalinventoryCustomBatchRequestEntry struct {
5809	// BatchId: An entry ID, unique within the batch request.
5810	BatchId int64 `json:"batchId,omitempty"`
5811
5812	// LocalInventory: Local inventory of the product.
5813	LocalInventory *LocalInventory `json:"localInventory,omitempty"`
5814
5815	// MerchantId: The ID of the managing account.
5816	MerchantId uint64 `json:"merchantId,omitempty,string"`
5817
5818	// Method: Method of the batch request entry. Acceptable values are: -
5819	// "insert"
5820	Method string `json:"method,omitempty"`
5821
5822	// ProductId: The ID of the product for which to update local inventory.
5823	ProductId string `json:"productId,omitempty"`
5824
5825	// ForceSendFields is a list of field names (e.g. "BatchId") to
5826	// unconditionally include in API requests. By default, fields with
5827	// empty or default values are omitted from API requests. However, any
5828	// non-pointer, non-interface field appearing in ForceSendFields will be
5829	// sent to the server regardless of whether the field is empty or not.
5830	// This may be used to include empty fields in Patch requests.
5831	ForceSendFields []string `json:"-"`
5832
5833	// NullFields is a list of field names (e.g. "BatchId") to include in
5834	// API requests with the JSON null value. By default, fields with empty
5835	// values are omitted from API requests. However, any field with an
5836	// empty value appearing in NullFields will be sent to the server as
5837	// null. It is an error if a field in this list has a non-empty value.
5838	// This may be used to include null fields in Patch requests.
5839	NullFields []string `json:"-"`
5840}
5841
5842func (s *LocalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
5843	type NoMethod LocalinventoryCustomBatchRequestEntry
5844	raw := NoMethod(*s)
5845	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5846}
5847
5848type LocalinventoryCustomBatchResponse struct {
5849	// Entries: The result of the execution of the batch requests.
5850	Entries []*LocalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
5851
5852	// Kind: Identifies what kind of resource this is. Value: the fixed
5853	// string "content#localinventoryCustomBatchResponse".
5854	Kind string `json:"kind,omitempty"`
5855
5856	// ServerResponse contains the HTTP response code and headers from the
5857	// server.
5858	googleapi.ServerResponse `json:"-"`
5859
5860	// ForceSendFields is a list of field names (e.g. "Entries") to
5861	// unconditionally include in API requests. By default, fields with
5862	// empty or default values are omitted from API requests. However, any
5863	// non-pointer, non-interface field appearing in ForceSendFields will be
5864	// sent to the server regardless of whether the field is empty or not.
5865	// This may be used to include empty fields in Patch requests.
5866	ForceSendFields []string `json:"-"`
5867
5868	// NullFields is a list of field names (e.g. "Entries") to include in
5869	// API requests with the JSON null value. By default, fields with empty
5870	// values are omitted from API requests. However, any field with an
5871	// empty value appearing in NullFields will be sent to the server as
5872	// null. It is an error if a field in this list has a non-empty value.
5873	// This may be used to include null fields in Patch requests.
5874	NullFields []string `json:"-"`
5875}
5876
5877func (s *LocalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
5878	type NoMethod LocalinventoryCustomBatchResponse
5879	raw := NoMethod(*s)
5880	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5881}
5882
5883// LocalinventoryCustomBatchResponseEntry: Batch entry encoding a single
5884// local inventory update response.
5885type LocalinventoryCustomBatchResponseEntry struct {
5886	// BatchId: The ID of the request entry this entry responds to.
5887	BatchId int64 `json:"batchId,omitempty"`
5888
5889	// Errors: A list of errors defined if and only if the request failed.
5890	Errors *Errors `json:"errors,omitempty"`
5891
5892	// Kind: Identifies what kind of resource this is. Value: the fixed
5893	// string "content#localinventoryCustomBatchResponseEntry"
5894	Kind string `json:"kind,omitempty"`
5895
5896	// ForceSendFields is a list of field names (e.g. "BatchId") to
5897	// unconditionally include in API requests. By default, fields with
5898	// empty or default values are omitted from API requests. However, any
5899	// non-pointer, non-interface field appearing in ForceSendFields will be
5900	// sent to the server regardless of whether the field is empty or not.
5901	// This may be used to include empty fields in Patch requests.
5902	ForceSendFields []string `json:"-"`
5903
5904	// NullFields is a list of field names (e.g. "BatchId") to include in
5905	// API requests with the JSON null value. By default, fields with empty
5906	// values are omitted from API requests. However, any field with an
5907	// empty value appearing in NullFields will be sent to the server as
5908	// null. It is an error if a field in this list has a non-empty value.
5909	// This may be used to include null fields in Patch requests.
5910	NullFields []string `json:"-"`
5911}
5912
5913func (s *LocalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
5914	type NoMethod LocalinventoryCustomBatchResponseEntry
5915	raw := NoMethod(*s)
5916	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5917}
5918
5919type LocationIdSet struct {
5920	// LocationIds: A non-empty list of location IDs. They must all be of
5921	// the same location type (e.g., state).
5922	LocationIds []string `json:"locationIds,omitempty"`
5923
5924	// ForceSendFields is a list of field names (e.g. "LocationIds") to
5925	// unconditionally include in API requests. By default, fields with
5926	// empty or default values are omitted from API requests. However, any
5927	// non-pointer, non-interface field appearing in ForceSendFields will be
5928	// sent to the server regardless of whether the field is empty or not.
5929	// This may be used to include empty fields in Patch requests.
5930	ForceSendFields []string `json:"-"`
5931
5932	// NullFields is a list of field names (e.g. "LocationIds") to include
5933	// in API requests with the JSON null value. By default, fields with
5934	// empty values are omitted from API requests. However, any field with
5935	// an empty value appearing in NullFields will be sent to the server as
5936	// null. It is an error if a field in this list has a non-empty value.
5937	// This may be used to include null fields in Patch requests.
5938	NullFields []string `json:"-"`
5939}
5940
5941func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
5942	type NoMethod LocationIdSet
5943	raw := NoMethod(*s)
5944	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5945}
5946
5947type LoyaltyPoints struct {
5948	// Name: Name of loyalty points program. It is recommended to limit the
5949	// name to 12 full-width characters or 24 Roman characters.
5950	Name string `json:"name,omitempty"`
5951
5952	// PointsValue: The retailer's loyalty points in absolute value.
5953	PointsValue int64 `json:"pointsValue,omitempty,string"`
5954
5955	// Ratio: The ratio of a point when converted to currency. Google
5956	// assumes currency based on Merchant Center settings. If ratio is left
5957	// out, it defaults to 1.0.
5958	Ratio float64 `json:"ratio,omitempty"`
5959
5960	// ForceSendFields is a list of field names (e.g. "Name") to
5961	// unconditionally include in API requests. By default, fields with
5962	// empty or default values are omitted from API requests. However, any
5963	// non-pointer, non-interface field appearing in ForceSendFields will be
5964	// sent to the server regardless of whether the field is empty or not.
5965	// This may be used to include empty fields in Patch requests.
5966	ForceSendFields []string `json:"-"`
5967
5968	// NullFields is a list of field names (e.g. "Name") to include in API
5969	// requests with the JSON null value. By default, fields with empty
5970	// values are omitted from API requests. However, any field with an
5971	// empty value appearing in NullFields will be sent to the server as
5972	// null. It is an error if a field in this list has a non-empty value.
5973	// This may be used to include null fields in Patch requests.
5974	NullFields []string `json:"-"`
5975}
5976
5977func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
5978	type NoMethod LoyaltyPoints
5979	raw := NoMethod(*s)
5980	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5981}
5982
5983func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
5984	type NoMethod LoyaltyPoints
5985	var s1 struct {
5986		Ratio gensupport.JSONFloat64 `json:"ratio"`
5987		*NoMethod
5988	}
5989	s1.NoMethod = (*NoMethod)(s)
5990	if err := json.Unmarshal(data, &s1); err != nil {
5991		return err
5992	}
5993	s.Ratio = float64(s1.Ratio)
5994	return nil
5995}
5996
5997// MerchantOrderReturn: Order return. Production access (all methods)
5998// requires the order manager role. Sandbox access does not.
5999type MerchantOrderReturn struct {
6000	// CreationDate: The date of creation of the return, in ISO 8601 format.
6001	CreationDate string `json:"creationDate,omitempty"`
6002
6003	// MerchantOrderId: Merchant defined order ID.
6004	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6005
6006	// OrderId: Google order ID.
6007	OrderId string `json:"orderId,omitempty"`
6008
6009	// OrderReturnId: Order return ID generated by Google.
6010	OrderReturnId string `json:"orderReturnId,omitempty"`
6011
6012	// ReturnItems: Items of the return.
6013	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
6014
6015	// ReturnPricingInfo: Information about shipping costs.
6016	ReturnPricingInfo *ReturnPricingInfo `json:"returnPricingInfo,omitempty"`
6017
6018	// ReturnShipments: Shipments of the return.
6019	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
6020
6021	// ServerResponse contains the HTTP response code and headers from the
6022	// server.
6023	googleapi.ServerResponse `json:"-"`
6024
6025	// ForceSendFields is a list of field names (e.g. "CreationDate") to
6026	// unconditionally include in API requests. By default, fields with
6027	// empty or default values are omitted from API requests. However, any
6028	// non-pointer, non-interface field appearing in ForceSendFields will be
6029	// sent to the server regardless of whether the field is empty or not.
6030	// This may be used to include empty fields in Patch requests.
6031	ForceSendFields []string `json:"-"`
6032
6033	// NullFields is a list of field names (e.g. "CreationDate") to include
6034	// in API requests with the JSON null value. By default, fields with
6035	// empty values are omitted from API requests. However, any field with
6036	// an empty value appearing in NullFields will be sent to the server as
6037	// null. It is an error if a field in this list has a non-empty value.
6038	// This may be used to include null fields in Patch requests.
6039	NullFields []string `json:"-"`
6040}
6041
6042func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
6043	type NoMethod MerchantOrderReturn
6044	raw := NoMethod(*s)
6045	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6046}
6047
6048type MerchantOrderReturnItem struct {
6049	// CustomerReturnReason: The reason that the customer chooses to return
6050	// an item.
6051	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
6052
6053	// ItemId: Product level item ID. If the returned items are of the same
6054	// product, they will have the same ID.
6055	ItemId string `json:"itemId,omitempty"`
6056
6057	// MerchantRejectionReason: The reason that the merchant chose to reject
6058	// an item return.
6059	MerchantRejectionReason *MerchantRejectionReason `json:"merchantRejectionReason,omitempty"`
6060
6061	// MerchantReturnReason: The reason that merchant chooses to accept a
6062	// return item.
6063	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
6064
6065	// Product: Product data from the time of the order placement.
6066	Product *OrderLineItemProduct `json:"product,omitempty"`
6067
6068	// RefundableAmount: Maximum amount that can be refunded for this return
6069	// item.
6070	RefundableAmount *MonetaryAmount `json:"refundableAmount,omitempty"`
6071
6072	// ReturnItemId: Unit level ID for the return item. Different units of
6073	// the same product will have different IDs.
6074	ReturnItemId string `json:"returnItemId,omitempty"`
6075
6076	// ReturnShipmentIds: IDs of the return shipments that this return item
6077	// belongs to.
6078	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
6079
6080	// ShipmentGroupId: ID of the original shipment group. Provided for
6081	// shipments with invoice support.
6082	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
6083
6084	// ShipmentUnitId: ID of the shipment unit assigned by the merchant.
6085	// Provided for shipments with invoice support.
6086	ShipmentUnitId string `json:"shipmentUnitId,omitempty"`
6087
6088	// State: State of the item. Acceptable values are: - "canceled" -
6089	// "new" - "received" - "refunded" - "rejected"
6090	State string `json:"state,omitempty"`
6091
6092	// ForceSendFields is a list of field names (e.g.
6093	// "CustomerReturnReason") to unconditionally include in API requests.
6094	// By default, fields with empty or default values are omitted from API
6095	// requests. However, any non-pointer, non-interface field appearing in
6096	// ForceSendFields will be sent to the server regardless of whether the
6097	// field is empty or not. This may be used to include empty fields in
6098	// Patch requests.
6099	ForceSendFields []string `json:"-"`
6100
6101	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
6102	// include in API requests with the JSON null value. By default, fields
6103	// with empty values are omitted from API requests. However, any field
6104	// with an empty value appearing in NullFields will be sent to the
6105	// server as null. It is an error if a field in this list has a
6106	// non-empty value. This may be used to include null fields in Patch
6107	// requests.
6108	NullFields []string `json:"-"`
6109}
6110
6111func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
6112	type NoMethod MerchantOrderReturnItem
6113	raw := NoMethod(*s)
6114	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6115}
6116
6117type MerchantRejectionReason struct {
6118	// Description: Description of the reason.
6119	Description string `json:"description,omitempty"`
6120
6121	// ReasonCode: Code of the rejection reason.
6122	ReasonCode string `json:"reasonCode,omitempty"`
6123
6124	// ForceSendFields is a list of field names (e.g. "Description") to
6125	// unconditionally include in API requests. By default, fields with
6126	// empty or default values are omitted from API requests. However, any
6127	// non-pointer, non-interface field appearing in ForceSendFields will be
6128	// sent to the server regardless of whether the field is empty or not.
6129	// This may be used to include empty fields in Patch requests.
6130	ForceSendFields []string `json:"-"`
6131
6132	// NullFields is a list of field names (e.g. "Description") to include
6133	// in API requests with the JSON null value. By default, fields with
6134	// empty values are omitted from API requests. However, any field with
6135	// an empty value appearing in NullFields will be sent to the server as
6136	// null. It is an error if a field in this list has a non-empty value.
6137	// This may be used to include null fields in Patch requests.
6138	NullFields []string `json:"-"`
6139}
6140
6141func (s *MerchantRejectionReason) MarshalJSON() ([]byte, error) {
6142	type NoMethod MerchantRejectionReason
6143	raw := NoMethod(*s)
6144	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6145}
6146
6147// Metrics: Performance metrics. Values are only set for metrics
6148// requested explicitly in the request's search query.
6149type Metrics struct {
6150	// Aos: Average order size - the average number of items in an order.
6151	// **This metric cannot be segmented by product dimensions.**
6152	Aos float64 `json:"aos,omitempty"`
6153
6154	// AovMicros: Average order value - the average value (total price of
6155	// items) of all placed orders. The currency of the returned value is
6156	// stored in the currency_code segment. If this metric is selected,
6157	// 'segments.currency_code' is automatically added to the SELECT clause
6158	// in the search query (unless it is explicitly selected by the user)
6159	// and the currency_code segment is populated in the response. **This
6160	// metric cannot be segmented by product dimensions.**
6161	AovMicros float64 `json:"aovMicros,omitempty"`
6162
6163	// Clicks: Number of clicks.
6164	Clicks int64 `json:"clicks,omitempty,string"`
6165
6166	// Ctr: Click-through rate - the number of clicks merchant's products
6167	// receive (clicks) divided by the number of times the products are
6168	// shown (impressions).
6169	Ctr float64 `json:"ctr,omitempty"`
6170
6171	// DaysToShip: Average number of days between an order being placed and
6172	// the order being fully shipped, reported on the last shipment date.
6173	// **This metric cannot be segmented by product dimensions.**
6174	DaysToShip float64 `json:"daysToShip,omitempty"`
6175
6176	// Impressions: Number of times merchant's products are shown.
6177	Impressions int64 `json:"impressions,omitempty,string"`
6178
6179	// ItemDaysToShip: Average number of days between an item being ordered
6180	// and the item being
6181	ItemDaysToShip float64 `json:"itemDaysToShip,omitempty"`
6182
6183	// ItemFillRate: Percentage of shipped items in relation to all
6184	// finalized items (shipped or rejected by the merchant; unshipped items
6185	// are not taken into account), reported on the order date. Item fill
6186	// rate is lowered by merchant rejections.
6187	ItemFillRate float64 `json:"itemFillRate,omitempty"`
6188
6189	// OrderedItemSalesMicros: Total price of ordered items. Excludes
6190	// shipping, taxes (US only), and customer cancellations that happened
6191	// within 30 minutes of placing the order. The currency of the returned
6192	// value is stored in the currency_code segment. If this metric is
6193	// selected, 'segments.currency_code' is automatically added to the
6194	// SELECT clause in the search query (unless it is explicitly selected
6195	// by the user) and the currency_code segment is populated in the
6196	// response.
6197	OrderedItemSalesMicros int64 `json:"orderedItemSalesMicros,omitempty,string"`
6198
6199	// OrderedItems: Number of ordered items. Excludes customer
6200	// cancellations that happened within 30 minutes of placing the order.
6201	OrderedItems int64 `json:"orderedItems,omitempty,string"`
6202
6203	// Orders: Number of placed orders. Excludes customer cancellations that
6204	// happened within 30 minutes of placing the order. **This metric cannot
6205	// be segmented by product dimensions.**
6206	Orders int64 `json:"orders,omitempty,string"`
6207
6208	// RejectedItems: Number of ordered items canceled by the merchant,
6209	// reported on the order date.
6210	RejectedItems int64 `json:"rejectedItems,omitempty,string"`
6211
6212	// ReturnRate: Total price of returned items divided by the total price
6213	// of shipped items, reported on the order date. If this metric is
6214	// selected, 'segments.currency_code' is automatically added to the
6215	// SELECT clause in the search query (unless it is explicitly selected
6216	// by the user) and the currency_code segment is populated in the
6217	// response.
6218	ReturnRate float64 `json:"returnRate,omitempty"`
6219
6220	// ReturnedItems: Number of ordered items sent back for return, reported
6221	// on the date when the merchant accepted the return.
6222	ReturnedItems int64 `json:"returnedItems,omitempty,string"`
6223
6224	// ReturnsMicros: Total price of ordered items sent back for return,
6225	// reported on the date when the merchant accepted the return. The
6226	// currency of the returned value is stored in the currency_code
6227	// segment. If this metric is selected, 'segments.currency_code' is
6228	// automatically added to the SELECT clause in the search query (unless
6229	// it is explicitly selected by the user) and the currency_code segment
6230	// is populated in the response.
6231	ReturnsMicros int64 `json:"returnsMicros,omitempty,string"`
6232
6233	// ShippedItemSalesMicros: Total price of shipped items, reported on the
6234	// order date. Excludes shipping and taxes (US only). The currency of
6235	// the returned value is stored in the currency_code segment. If this
6236	// metric is selected, 'segments.currency_code' is automatically added
6237	// to the SELECT clause in the search query (unless it is explicitly
6238	// selected by the user) and the currency_code segment is populated in
6239	// the response.
6240	ShippedItemSalesMicros int64 `json:"shippedItemSalesMicros,omitempty,string"`
6241
6242	// ShippedItems: Number of shipped items, reported on the shipment date.
6243	ShippedItems int64 `json:"shippedItems,omitempty,string"`
6244
6245	// ShippedOrders: Number of fully shipped orders, reported on the last
6246	// shipment date. **This metric cannot be segmented by product
6247	// dimensions.**
6248	ShippedOrders int64 `json:"shippedOrders,omitempty,string"`
6249
6250	// UnshippedItems: Number of ordered items not shipped up until the end
6251	// of the queried day. If a multi-day period is specified in the search
6252	// query, the returned value is the average number of unshipped items
6253	// over the days in the queried period.
6254	UnshippedItems float64 `json:"unshippedItems,omitempty"`
6255
6256	// UnshippedOrders: Number of orders not shipped or partially shipped up
6257	// until the end of the queried day. If a multi-day period is specified
6258	// in the search query, the returned value is the average number of
6259	// unshipped orders over the days in the queried period. **This metric
6260	// cannot be segmented by product dimensions.**
6261	UnshippedOrders float64 `json:"unshippedOrders,omitempty"`
6262
6263	// ForceSendFields is a list of field names (e.g. "Aos") to
6264	// unconditionally include in API requests. By default, fields with
6265	// empty or default values are omitted from API requests. However, any
6266	// non-pointer, non-interface field appearing in ForceSendFields will be
6267	// sent to the server regardless of whether the field is empty or not.
6268	// This may be used to include empty fields in Patch requests.
6269	ForceSendFields []string `json:"-"`
6270
6271	// NullFields is a list of field names (e.g. "Aos") to include in API
6272	// requests with the JSON null value. By default, fields with empty
6273	// values are omitted from API requests. However, any field with an
6274	// empty value appearing in NullFields will be sent to the server as
6275	// null. It is an error if a field in this list has a non-empty value.
6276	// This may be used to include null fields in Patch requests.
6277	NullFields []string `json:"-"`
6278}
6279
6280func (s *Metrics) MarshalJSON() ([]byte, error) {
6281	type NoMethod Metrics
6282	raw := NoMethod(*s)
6283	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6284}
6285
6286func (s *Metrics) UnmarshalJSON(data []byte) error {
6287	type NoMethod Metrics
6288	var s1 struct {
6289		Aos             gensupport.JSONFloat64 `json:"aos"`
6290		AovMicros       gensupport.JSONFloat64 `json:"aovMicros"`
6291		Ctr             gensupport.JSONFloat64 `json:"ctr"`
6292		DaysToShip      gensupport.JSONFloat64 `json:"daysToShip"`
6293		ItemDaysToShip  gensupport.JSONFloat64 `json:"itemDaysToShip"`
6294		ItemFillRate    gensupport.JSONFloat64 `json:"itemFillRate"`
6295		ReturnRate      gensupport.JSONFloat64 `json:"returnRate"`
6296		UnshippedItems  gensupport.JSONFloat64 `json:"unshippedItems"`
6297		UnshippedOrders gensupport.JSONFloat64 `json:"unshippedOrders"`
6298		*NoMethod
6299	}
6300	s1.NoMethod = (*NoMethod)(s)
6301	if err := json.Unmarshal(data, &s1); err != nil {
6302		return err
6303	}
6304	s.Aos = float64(s1.Aos)
6305	s.AovMicros = float64(s1.AovMicros)
6306	s.Ctr = float64(s1.Ctr)
6307	s.DaysToShip = float64(s1.DaysToShip)
6308	s.ItemDaysToShip = float64(s1.ItemDaysToShip)
6309	s.ItemFillRate = float64(s1.ItemFillRate)
6310	s.ReturnRate = float64(s1.ReturnRate)
6311	s.UnshippedItems = float64(s1.UnshippedItems)
6312	s.UnshippedOrders = float64(s1.UnshippedOrders)
6313	return nil
6314}
6315
6316type MinimumOrderValueTable struct {
6317	StoreCodeSetWithMovs []*MinimumOrderValueTableStoreCodeSetWithMov `json:"storeCodeSetWithMovs,omitempty"`
6318
6319	// ForceSendFields is a list of field names (e.g.
6320	// "StoreCodeSetWithMovs") to unconditionally include in API requests.
6321	// By default, fields with empty or default values are omitted from API
6322	// requests. However, any non-pointer, non-interface field appearing in
6323	// ForceSendFields will be sent to the server regardless of whether the
6324	// field is empty or not. This may be used to include empty fields in
6325	// Patch requests.
6326	ForceSendFields []string `json:"-"`
6327
6328	// NullFields is a list of field names (e.g. "StoreCodeSetWithMovs") to
6329	// include in API requests with the JSON null value. By default, fields
6330	// with empty values are omitted from API requests. However, any field
6331	// with an empty value appearing in NullFields will be sent to the
6332	// server as null. It is an error if a field in this list has a
6333	// non-empty value. This may be used to include null fields in Patch
6334	// requests.
6335	NullFields []string `json:"-"`
6336}
6337
6338func (s *MinimumOrderValueTable) MarshalJSON() ([]byte, error) {
6339	type NoMethod MinimumOrderValueTable
6340	raw := NoMethod(*s)
6341	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6342}
6343
6344// MinimumOrderValueTableStoreCodeSetWithMov: A list of store code sets
6345// sharing the same minimum order value. At least two sets are required
6346// and the last one must be empty, which signifies 'MOV for all other
6347// stores'. Each store code can only appear once across all the sets.
6348// All prices within a service must have the same currency.
6349type MinimumOrderValueTableStoreCodeSetWithMov struct {
6350	// StoreCodes: A list of unique store codes or empty for the catch all.
6351	StoreCodes []string `json:"storeCodes,omitempty"`
6352
6353	// Value: The minimum order value for the given stores.
6354	Value *Price `json:"value,omitempty"`
6355
6356	// ForceSendFields is a list of field names (e.g. "StoreCodes") to
6357	// unconditionally include in API requests. By default, fields with
6358	// empty or default values are omitted from API requests. However, any
6359	// non-pointer, non-interface field appearing in ForceSendFields will be
6360	// sent to the server regardless of whether the field is empty or not.
6361	// This may be used to include empty fields in Patch requests.
6362	ForceSendFields []string `json:"-"`
6363
6364	// NullFields is a list of field names (e.g. "StoreCodes") to include in
6365	// API requests with the JSON null value. By default, fields with empty
6366	// values are omitted from API requests. However, any field with an
6367	// empty value appearing in NullFields will be sent to the server as
6368	// null. It is an error if a field in this list has a non-empty value.
6369	// This may be used to include null fields in Patch requests.
6370	NullFields []string `json:"-"`
6371}
6372
6373func (s *MinimumOrderValueTableStoreCodeSetWithMov) MarshalJSON() ([]byte, error) {
6374	type NoMethod MinimumOrderValueTableStoreCodeSetWithMov
6375	raw := NoMethod(*s)
6376	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6377}
6378
6379type MonetaryAmount struct {
6380	// PriceAmount: The pre-tax or post-tax price depends on the location of
6381	// the order. - For countries (e.g. US) where price attribute excludes
6382	// tax, this field corresponds to the pre-tax value. - For coutries
6383	// (e.g. France) where price attribute includes tax, this field
6384	// corresponds to the post-tax value .
6385	PriceAmount *Price `json:"priceAmount,omitempty"`
6386
6387	// TaxAmount: Tax value, present only for countries where price
6388	// attribute excludes tax (e.g. US). No tax is referenced as 0 value
6389	// with the corresponding `currency`.
6390	TaxAmount *Price `json:"taxAmount,omitempty"`
6391
6392	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
6393	// unconditionally include in API requests. By default, fields with
6394	// empty or default values are omitted from API requests. However, any
6395	// non-pointer, non-interface field appearing in ForceSendFields will be
6396	// sent to the server regardless of whether the field is empty or not.
6397	// This may be used to include empty fields in Patch requests.
6398	ForceSendFields []string `json:"-"`
6399
6400	// NullFields is a list of field names (e.g. "PriceAmount") to include
6401	// in API requests with the JSON null value. By default, fields with
6402	// empty values are omitted from API requests. However, any field with
6403	// an empty value appearing in NullFields will be sent to the server as
6404	// null. It is an error if a field in this list has a non-empty value.
6405	// This may be used to include null fields in Patch requests.
6406	NullFields []string `json:"-"`
6407}
6408
6409func (s *MonetaryAmount) MarshalJSON() ([]byte, error) {
6410	type NoMethod MonetaryAmount
6411	raw := NoMethod(*s)
6412	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6413}
6414
6415// OnboardBuyOnGoogleProgramRequest: Request message for the
6416// OnboardProgram method.
6417type OnboardBuyOnGoogleProgramRequest struct {
6418	// CustomerServiceEmail: The customer service email.
6419	CustomerServiceEmail string `json:"customerServiceEmail,omitempty"`
6420
6421	// ForceSendFields is a list of field names (e.g.
6422	// "CustomerServiceEmail") to unconditionally include in API requests.
6423	// By default, fields with empty or default values are omitted from API
6424	// requests. However, any non-pointer, non-interface field appearing in
6425	// ForceSendFields will be sent to the server regardless of whether the
6426	// field is empty or not. This may be used to include empty fields in
6427	// Patch requests.
6428	ForceSendFields []string `json:"-"`
6429
6430	// NullFields is a list of field names (e.g. "CustomerServiceEmail") to
6431	// include in API requests with the JSON null value. By default, fields
6432	// with empty values are omitted from API requests. However, any field
6433	// with an empty value appearing in NullFields will be sent to the
6434	// server as null. It is an error if a field in this list has a
6435	// non-empty value. This may be used to include null fields in Patch
6436	// requests.
6437	NullFields []string `json:"-"`
6438}
6439
6440func (s *OnboardBuyOnGoogleProgramRequest) MarshalJSON() ([]byte, error) {
6441	type NoMethod OnboardBuyOnGoogleProgramRequest
6442	raw := NoMethod(*s)
6443	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6444}
6445
6446// Order: Order. Production access (all methods) requires the order
6447// manager role. Sandbox access does not.
6448type Order struct {
6449	// Acknowledged: Whether the order was acknowledged.
6450	Acknowledged bool `json:"acknowledged,omitempty"`
6451
6452	// Annotations: List of key-value pairs that are attached to a given
6453	// order.
6454	Annotations []*OrderOrderAnnotation `json:"annotations,omitempty"`
6455
6456	// BillingAddress: The billing address.
6457	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
6458
6459	// Customer: The details of the customer who placed the order.
6460	Customer *OrderCustomer `json:"customer,omitempty"`
6461
6462	// DeliveryDetails: Delivery details for shipments of type `delivery`.
6463	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
6464
6465	// Id: The REST ID of the order. Globally unique.
6466	Id string `json:"id,omitempty"`
6467
6468	// Kind: Identifies what kind of resource this is. Value: the fixed
6469	// string "content#order"
6470	Kind string `json:"kind,omitempty"`
6471
6472	// LineItems: Line items that are ordered.
6473	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
6474
6475	MerchantId uint64 `json:"merchantId,omitempty,string"`
6476
6477	// MerchantOrderId: Merchant-provided ID of the order.
6478	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6479
6480	// NetPriceAmount: The net amount for the order (price part). For
6481	// example, if an order was originally for $100 and a refund was issued
6482	// for $20, the net amount will be $80.
6483	NetPriceAmount *Price `json:"netPriceAmount,omitempty"`
6484
6485	// NetTaxAmount: The net amount for the order (tax part). Note that in
6486	// certain cases due to taxable base adjustment `netTaxAmount` might not
6487	// match to a sum of tax field across all lineItems and refunds.
6488	NetTaxAmount *Price `json:"netTaxAmount,omitempty"`
6489
6490	// PaymentStatus: The status of the payment. Acceptable values are: -
6491	// "paymentCaptured" - "paymentRejected" - "paymentSecured" -
6492	// "pendingAuthorization"
6493	PaymentStatus string `json:"paymentStatus,omitempty"`
6494
6495	// PickupDetails: Pickup details for shipments of type `pickup`.
6496	PickupDetails *OrderPickupDetails `json:"pickupDetails,omitempty"`
6497
6498	// PlacedDate: The date when the order was placed, in ISO 8601 format.
6499	PlacedDate string `json:"placedDate,omitempty"`
6500
6501	// Promotions: Promotions associated with the order. To determine which
6502	// promotions apply to which products, check the
6503	// `Promotions[].appliedItems[].lineItemId` field against the
6504	// `LineItems[].id` field for each promotion. If a promotion is applied
6505	// to more than 1 offerId, divide the discount value by the number of
6506	// affected offers to determine how much discount to apply to each
6507	// offerId. Examples: 1. To calculate price paid by the customer for a
6508	// single line item including the discount: For each promotion, subtract
6509	// the `LineItems[].adjustments[].priceAdjustment.value` amount from the
6510	// `LineItems[].Price.value`. 2. To calculate price paid by the customer
6511	// for a single line item including the discount in case of multiple
6512	// quantity: For each promotion, divide the
6513	// `LineItems[].adjustments[].priceAdjustment.value` by the quantity of
6514	// products then subtract the resulting value from the
6515	// `LineItems[].Product.Price.value` for each quantity item. Only 1
6516	// promotion can be applied to an offerId in a given order. To refund an
6517	// item which had a promotion applied to it, make sure to refund the
6518	// amount after first subtracting the promotion discount from the item
6519	// price. More details about the program are here.
6520	Promotions []*OrderPromotion `json:"promotions,omitempty"`
6521
6522	// Refunds: Refunds for the order.
6523	Refunds []*OrderRefund `json:"refunds,omitempty"`
6524
6525	// Shipments: Shipments of the order.
6526	Shipments []*OrderShipment `json:"shipments,omitempty"`
6527
6528	// ShippingCost: The total cost of shipping for all items.
6529	ShippingCost *Price `json:"shippingCost,omitempty"`
6530
6531	// ShippingCostTax: The tax for the total shipping cost.
6532	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
6533
6534	// Status: The status of the order. Acceptable values are: -
6535	// "canceled" - "delivered" - "inProgress" -
6536	// "partiallyDelivered" - "partiallyReturned" - "partiallyShipped"
6537	// - "pendingShipment" - "returned" - "shipped"
6538	Status string `json:"status,omitempty"`
6539
6540	// TaxCollector: The party responsible for collecting and remitting
6541	// taxes. Acceptable values are: - "marketplaceFacilitator" -
6542	// "merchant"
6543	TaxCollector string `json:"taxCollector,omitempty"`
6544
6545	// ServerResponse contains the HTTP response code and headers from the
6546	// server.
6547	googleapi.ServerResponse `json:"-"`
6548
6549	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
6550	// unconditionally include in API requests. By default, fields with
6551	// empty or default values are omitted from API requests. However, any
6552	// non-pointer, non-interface field appearing in ForceSendFields will be
6553	// sent to the server regardless of whether the field is empty or not.
6554	// This may be used to include empty fields in Patch requests.
6555	ForceSendFields []string `json:"-"`
6556
6557	// NullFields is a list of field names (e.g. "Acknowledged") to include
6558	// in API requests with the JSON null value. By default, fields with
6559	// empty values are omitted from API requests. However, any field with
6560	// an empty value appearing in NullFields will be sent to the server as
6561	// null. It is an error if a field in this list has a non-empty value.
6562	// This may be used to include null fields in Patch requests.
6563	NullFields []string `json:"-"`
6564}
6565
6566func (s *Order) MarshalJSON() ([]byte, error) {
6567	type NoMethod Order
6568	raw := NoMethod(*s)
6569	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6570}
6571
6572type OrderAddress struct {
6573	// Country: CLDR country code (e.g. "US").
6574	Country string `json:"country,omitempty"`
6575
6576	// FullAddress: Strings representing the lines of the printed label for
6577	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
6578	// Mountain View, CA, 94043 United States
6579	FullAddress []string `json:"fullAddress,omitempty"`
6580
6581	// IsPostOfficeBox: Whether the address is a post office box.
6582	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
6583
6584	// Locality: City, town or commune. May also include dependent
6585	// localities or sublocalities (e.g. neighborhoods or suburbs).
6586	Locality string `json:"locality,omitempty"`
6587
6588	// PostalCode: Postal Code or ZIP (e.g. "94043").
6589	PostalCode string `json:"postalCode,omitempty"`
6590
6591	// RecipientName: Name of the recipient.
6592	RecipientName string `json:"recipientName,omitempty"`
6593
6594	// Region: Top-level administrative subdivision of the country. For
6595	// example, a state like California ("CA") or a province like Quebec
6596	// ("QC").
6597	Region string `json:"region,omitempty"`
6598
6599	// StreetAddress: Street-level part of the address.
6600	StreetAddress []string `json:"streetAddress,omitempty"`
6601
6602	// ForceSendFields is a list of field names (e.g. "Country") to
6603	// unconditionally include in API requests. By default, fields with
6604	// empty or default values are omitted from API requests. However, any
6605	// non-pointer, non-interface field appearing in ForceSendFields will be
6606	// sent to the server regardless of whether the field is empty or not.
6607	// This may be used to include empty fields in Patch requests.
6608	ForceSendFields []string `json:"-"`
6609
6610	// NullFields is a list of field names (e.g. "Country") to include in
6611	// API requests with the JSON null value. By default, fields with empty
6612	// values are omitted from API requests. However, any field with an
6613	// empty value appearing in NullFields will be sent to the server as
6614	// null. It is an error if a field in this list has a non-empty value.
6615	// This may be used to include null fields in Patch requests.
6616	NullFields []string `json:"-"`
6617}
6618
6619func (s *OrderAddress) MarshalJSON() ([]byte, error) {
6620	type NoMethod OrderAddress
6621	raw := NoMethod(*s)
6622	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6623}
6624
6625type OrderCancellation struct {
6626	// Actor: The actor that created the cancellation. Acceptable values
6627	// are: - "customer" - "googleBot" - "googleCustomerService" -
6628	// "googlePayments" - "googleSabre" - "merchant"
6629	Actor string `json:"actor,omitempty"`
6630
6631	// CreationDate: Date on which the cancellation has been created, in ISO
6632	// 8601 format.
6633	CreationDate string `json:"creationDate,omitempty"`
6634
6635	// Quantity: The quantity that was canceled.
6636	Quantity int64 `json:"quantity,omitempty"`
6637
6638	// Reason: The reason for the cancellation. Orders that are canceled
6639	// with a noInventory reason will lead to the removal of the product
6640	// from Buy on Google until you make an update to that product. This
6641	// will not affect your Shopping ads. Acceptable values are: -
6642	// "autoPostInternal" - "autoPostInvalidBillingAddress" -
6643	// "autoPostNoInventory" - "autoPostPriceError" -
6644	// "autoPostUndeliverableShippingAddress" - "couponAbuse" -
6645	// "customerCanceled" - "customerInitiatedCancel" -
6646	// "customerSupportRequested" - "failToPushOrderGoogleError" -
6647	// "failToPushOrderMerchantError" -
6648	// "failToPushOrderMerchantFulfillmentError" -
6649	// "failToPushOrderToMerchant" -
6650	// "failToPushOrderToMerchantOutOfStock" - "invalidCoupon" -
6651	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
6652	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
6653	// "paymentDeclined" - "priceError" - "returnRefundAbuse" -
6654	// "shippingPriceError" - "taxError" -
6655	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
6656	Reason string `json:"reason,omitempty"`
6657
6658	// ReasonText: The explanation of the reason.
6659	ReasonText string `json:"reasonText,omitempty"`
6660
6661	// ForceSendFields is a list of field names (e.g. "Actor") to
6662	// unconditionally include in API requests. By default, fields with
6663	// empty or default values are omitted from API requests. However, any
6664	// non-pointer, non-interface field appearing in ForceSendFields will be
6665	// sent to the server regardless of whether the field is empty or not.
6666	// This may be used to include empty fields in Patch requests.
6667	ForceSendFields []string `json:"-"`
6668
6669	// NullFields is a list of field names (e.g. "Actor") to include in API
6670	// requests with the JSON null value. By default, fields with empty
6671	// values are omitted from API requests. However, any field with an
6672	// empty value appearing in NullFields will be sent to the server as
6673	// null. It is an error if a field in this list has a non-empty value.
6674	// This may be used to include null fields in Patch requests.
6675	NullFields []string `json:"-"`
6676}
6677
6678func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
6679	type NoMethod OrderCancellation
6680	raw := NoMethod(*s)
6681	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6682}
6683
6684type OrderCustomer struct {
6685	// FullName: Full name of the customer.
6686	FullName string `json:"fullName,omitempty"`
6687
6688	// InvoiceReceivingEmail: Email address for the merchant to send
6689	// value-added tax or invoice documentation of the order. Only the last
6690	// document sent is made available to the customer. For more
6691	// information, see About automated VAT invoicing for Buy on Google.
6692	InvoiceReceivingEmail string `json:"invoiceReceivingEmail,omitempty"`
6693
6694	// LoyaltyInfo: Loyalty program information.
6695	LoyaltyInfo *OrderCustomerLoyaltyInfo `json:"loyaltyInfo,omitempty"`
6696
6697	// MarketingRightsInfo: Customer's marketing preferences. Contains the
6698	// marketing opt-in information that is current at the time that the
6699	// merchant call. User preference selections can change from one order
6700	// to the next so preferences must be checked with every order.
6701	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
6702
6703	// ForceSendFields is a list of field names (e.g. "FullName") to
6704	// unconditionally include in API requests. By default, fields with
6705	// empty or default values are omitted from API requests. However, any
6706	// non-pointer, non-interface field appearing in ForceSendFields will be
6707	// sent to the server regardless of whether the field is empty or not.
6708	// This may be used to include empty fields in Patch requests.
6709	ForceSendFields []string `json:"-"`
6710
6711	// NullFields is a list of field names (e.g. "FullName") to include in
6712	// API requests with the JSON null value. By default, fields with empty
6713	// values are omitted from API requests. However, any field with an
6714	// empty value appearing in NullFields will be sent to the server as
6715	// null. It is an error if a field in this list has a non-empty value.
6716	// This may be used to include null fields in Patch requests.
6717	NullFields []string `json:"-"`
6718}
6719
6720func (s *OrderCustomer) MarshalJSON() ([]byte, error) {
6721	type NoMethod OrderCustomer
6722	raw := NoMethod(*s)
6723	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6724}
6725
6726type OrderCustomerLoyaltyInfo struct {
6727	// LoyaltyNumber: The loyalty card/membership number.
6728	LoyaltyNumber string `json:"loyaltyNumber,omitempty"`
6729
6730	// Name: Name of card/membership holder, this field will be populated
6731	// when
6732	Name string `json:"name,omitempty"`
6733
6734	// ForceSendFields is a list of field names (e.g. "LoyaltyNumber") to
6735	// unconditionally include in API requests. By default, fields with
6736	// empty or default values are omitted from API requests. However, any
6737	// non-pointer, non-interface field appearing in ForceSendFields will be
6738	// sent to the server regardless of whether the field is empty or not.
6739	// This may be used to include empty fields in Patch requests.
6740	ForceSendFields []string `json:"-"`
6741
6742	// NullFields is a list of field names (e.g. "LoyaltyNumber") to include
6743	// in API requests with the JSON null value. By default, fields with
6744	// empty values are omitted from API requests. However, any field with
6745	// an empty value appearing in NullFields will be sent to the server as
6746	// null. It is an error if a field in this list has a non-empty value.
6747	// This may be used to include null fields in Patch requests.
6748	NullFields []string `json:"-"`
6749}
6750
6751func (s *OrderCustomerLoyaltyInfo) MarshalJSON() ([]byte, error) {
6752	type NoMethod OrderCustomerLoyaltyInfo
6753	raw := NoMethod(*s)
6754	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6755}
6756
6757type OrderCustomerMarketingRightsInfo struct {
6758	// ExplicitMarketingPreference: Last known customer selection regarding
6759	// marketing preferences. In certain cases this selection might not be
6760	// known, so this field would be empty. If a customer selected `granted`
6761	// in their most recent order, they can be subscribed to marketing
6762	// emails. Customers who have chosen `denied` must not be subscribed, or
6763	// must be unsubscribed if already opted-in. Acceptable values are: -
6764	// "denied" - "granted"
6765	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
6766
6767	// LastUpdatedTimestamp: Timestamp when last time marketing preference
6768	// was updated. Could be empty, if user wasn't offered a selection yet.
6769	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
6770
6771	// MarketingEmailAddress: Email address that can be used for marketing
6772	// purposes. The field may be empty even if
6773	// `explicitMarketingPreference` is 'granted'. This happens when
6774	// retrieving an old order from the customer who deleted their account.
6775	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
6776
6777	// ForceSendFields is a list of field names (e.g.
6778	// "ExplicitMarketingPreference") to unconditionally include in API
6779	// requests. By default, fields with empty or default values are omitted
6780	// from API requests. However, any non-pointer, non-interface field
6781	// appearing in ForceSendFields will be sent to the server regardless of
6782	// whether the field is empty or not. This may be used to include empty
6783	// fields in Patch requests.
6784	ForceSendFields []string `json:"-"`
6785
6786	// NullFields is a list of field names (e.g.
6787	// "ExplicitMarketingPreference") to include in API requests with the
6788	// JSON null value. By default, fields with empty values are omitted
6789	// from API requests. However, any field with an empty value appearing
6790	// in NullFields will be sent to the server as null. It is an error if a
6791	// field in this list has a non-empty value. This may be used to include
6792	// null fields in Patch requests.
6793	NullFields []string `json:"-"`
6794}
6795
6796func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
6797	type NoMethod OrderCustomerMarketingRightsInfo
6798	raw := NoMethod(*s)
6799	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6800}
6801
6802type OrderDeliveryDetails struct {
6803	// Address: The delivery address
6804	Address *OrderAddress `json:"address,omitempty"`
6805
6806	// PhoneNumber: The phone number of the person receiving the delivery.
6807	PhoneNumber string `json:"phoneNumber,omitempty"`
6808
6809	// ForceSendFields is a list of field names (e.g. "Address") to
6810	// unconditionally include in API requests. By default, fields with
6811	// empty or default values are omitted from API requests. However, any
6812	// non-pointer, non-interface field appearing in ForceSendFields will be
6813	// sent to the server regardless of whether the field is empty or not.
6814	// This may be used to include empty fields in Patch requests.
6815	ForceSendFields []string `json:"-"`
6816
6817	// NullFields is a list of field names (e.g. "Address") to include in
6818	// API requests with the JSON null value. By default, fields with empty
6819	// values are omitted from API requests. However, any field with an
6820	// empty value appearing in NullFields will be sent to the server as
6821	// null. It is an error if a field in this list has a non-empty value.
6822	// This may be used to include null fields in Patch requests.
6823	NullFields []string `json:"-"`
6824}
6825
6826func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
6827	type NoMethod OrderDeliveryDetails
6828	raw := NoMethod(*s)
6829	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6830}
6831
6832type OrderLineItem struct {
6833	// Adjustments: Price and tax adjustments applied on the line item.
6834	Adjustments []*OrderLineItemAdjustment `json:"adjustments,omitempty"`
6835
6836	// Annotations: Annotations that are attached to the line item.
6837	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
6838
6839	// Cancellations: Cancellations of the line item.
6840	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
6841
6842	// Id: The ID of the line item.
6843	Id string `json:"id,omitempty"`
6844
6845	// Price: Total price for the line item. For example, if two items for
6846	// $10 are purchased, the total price will be $20.
6847	Price *Price `json:"price,omitempty"`
6848
6849	// Product: Product data as seen by customer from the time of the order
6850	// placement. Note that certain attributes values (e.g. title or gtin)
6851	// might be reformatted and no longer match values submitted via product
6852	// feed.
6853	Product *OrderLineItemProduct `json:"product,omitempty"`
6854
6855	// QuantityCanceled: Number of items canceled.
6856	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
6857
6858	// QuantityDelivered: Number of items delivered.
6859	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
6860
6861	// QuantityOrdered: Number of items ordered.
6862	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
6863
6864	// QuantityPending: Number of items pending.
6865	QuantityPending int64 `json:"quantityPending,omitempty"`
6866
6867	// QuantityReadyForPickup: Number of items ready for pickup.
6868	QuantityReadyForPickup int64 `json:"quantityReadyForPickup,omitempty"`
6869
6870	// QuantityReturned: Number of items returned.
6871	QuantityReturned int64 `json:"quantityReturned,omitempty"`
6872
6873	// QuantityShipped: Number of items shipped.
6874	QuantityShipped int64 `json:"quantityShipped,omitempty"`
6875
6876	// QuantityUndeliverable: Number of items undeliverable.
6877	QuantityUndeliverable int64 `json:"quantityUndeliverable,omitempty"`
6878
6879	// ReturnInfo: Details of the return policy for the line item.
6880	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
6881
6882	// Returns: Returns of the line item.
6883	Returns []*OrderReturn `json:"returns,omitempty"`
6884
6885	// ShippingDetails: Details of the requested shipping for the line item.
6886	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
6887
6888	// Tax: Total tax amount for the line item. For example, if two items
6889	// are purchased, and each have a cost tax of $2, the total tax amount
6890	// will be $4.
6891	Tax *Price `json:"tax,omitempty"`
6892
6893	// ForceSendFields is a list of field names (e.g. "Adjustments") to
6894	// unconditionally include in API requests. By default, fields with
6895	// empty or default values are omitted from API requests. However, any
6896	// non-pointer, non-interface field appearing in ForceSendFields will be
6897	// sent to the server regardless of whether the field is empty or not.
6898	// This may be used to include empty fields in Patch requests.
6899	ForceSendFields []string `json:"-"`
6900
6901	// NullFields is a list of field names (e.g. "Adjustments") to include
6902	// in API requests with the JSON null value. By default, fields with
6903	// empty values are omitted from API requests. However, any field with
6904	// an empty value appearing in NullFields will be sent to the server as
6905	// null. It is an error if a field in this list has a non-empty value.
6906	// This may be used to include null fields in Patch requests.
6907	NullFields []string `json:"-"`
6908}
6909
6910func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
6911	type NoMethod OrderLineItem
6912	raw := NoMethod(*s)
6913	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6914}
6915
6916type OrderLineItemAdjustment struct {
6917	// PriceAdjustment: Adjustment for total price of the line item.
6918	PriceAdjustment *Price `json:"priceAdjustment,omitempty"`
6919
6920	// TaxAdjustment: Adjustment for total tax of the line item.
6921	TaxAdjustment *Price `json:"taxAdjustment,omitempty"`
6922
6923	// Type: Type of this adjustment. Acceptable values are: - "promotion"
6924	Type string `json:"type,omitempty"`
6925
6926	// ForceSendFields is a list of field names (e.g. "PriceAdjustment") to
6927	// unconditionally include in API requests. By default, fields with
6928	// empty or default values are omitted from API requests. However, any
6929	// non-pointer, non-interface field appearing in ForceSendFields will be
6930	// sent to the server regardless of whether the field is empty or not.
6931	// This may be used to include empty fields in Patch requests.
6932	ForceSendFields []string `json:"-"`
6933
6934	// NullFields is a list of field names (e.g. "PriceAdjustment") to
6935	// include in API requests with the JSON null value. By default, fields
6936	// with empty values are omitted from API requests. However, any field
6937	// with an empty value appearing in NullFields will be sent to the
6938	// server as null. It is an error if a field in this list has a
6939	// non-empty value. This may be used to include null fields in Patch
6940	// requests.
6941	NullFields []string `json:"-"`
6942}
6943
6944func (s *OrderLineItemAdjustment) MarshalJSON() ([]byte, error) {
6945	type NoMethod OrderLineItemAdjustment
6946	raw := NoMethod(*s)
6947	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6948}
6949
6950type OrderLineItemProduct struct {
6951	// Brand: Brand of the item.
6952	Brand string `json:"brand,omitempty"`
6953
6954	// Condition: Condition or state of the item. Acceptable values are: -
6955	// "new" - "refurbished" - "used"
6956	Condition string `json:"condition,omitempty"`
6957
6958	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
6959	ContentLanguage string `json:"contentLanguage,omitempty"`
6960
6961	// Fees: Associated fees at order creation time.
6962	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
6963
6964	// Gtin: Global Trade Item Number (GTIN) of the item.
6965	Gtin string `json:"gtin,omitempty"`
6966
6967	// Id: The REST ID of the product.
6968	Id string `json:"id,omitempty"`
6969
6970	// ImageLink: URL of an image of the item.
6971	ImageLink string `json:"imageLink,omitempty"`
6972
6973	// ItemGroupId: Shared identifier for all variants of the same product.
6974	ItemGroupId string `json:"itemGroupId,omitempty"`
6975
6976	// Mpn: Manufacturer Part Number (MPN) of the item.
6977	Mpn string `json:"mpn,omitempty"`
6978
6979	// OfferId: An identifier of the item.
6980	OfferId string `json:"offerId,omitempty"`
6981
6982	// Price: Price of the item.
6983	Price *Price `json:"price,omitempty"`
6984
6985	// ShownImage: URL to the cached image shown to the user when order was
6986	// placed.
6987	ShownImage string `json:"shownImage,omitempty"`
6988
6989	// TargetCountry: The CLDR territory // code of the target country of
6990	// the product.
6991	TargetCountry string `json:"targetCountry,omitempty"`
6992
6993	// Title: The title of the product.
6994	Title string `json:"title,omitempty"`
6995
6996	// VariantAttributes: Variant attributes for the item. These are
6997	// dimensions of the product, such as color, gender, material, pattern,
6998	// and size. You can find a comprehensive list of variant attributes
6999	// here.
7000	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
7001
7002	// ForceSendFields is a list of field names (e.g. "Brand") to
7003	// unconditionally include in API requests. By default, fields with
7004	// empty or default values are omitted from API requests. However, any
7005	// non-pointer, non-interface field appearing in ForceSendFields will be
7006	// sent to the server regardless of whether the field is empty or not.
7007	// This may be used to include empty fields in Patch requests.
7008	ForceSendFields []string `json:"-"`
7009
7010	// NullFields is a list of field names (e.g. "Brand") to include in API
7011	// requests with the JSON null value. By default, fields with empty
7012	// values are omitted from API requests. However, any field with an
7013	// empty value appearing in NullFields will be sent to the server as
7014	// null. It is an error if a field in this list has a non-empty value.
7015	// This may be used to include null fields in Patch requests.
7016	NullFields []string `json:"-"`
7017}
7018
7019func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
7020	type NoMethod OrderLineItemProduct
7021	raw := NoMethod(*s)
7022	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7023}
7024
7025type OrderLineItemProductFee struct {
7026	// Amount: Amount of the fee.
7027	Amount *Price `json:"amount,omitempty"`
7028
7029	// Name: Name of the fee.
7030	Name string `json:"name,omitempty"`
7031
7032	// ForceSendFields is a list of field names (e.g. "Amount") to
7033	// unconditionally include in API requests. By default, fields with
7034	// empty or default values are omitted from API requests. However, any
7035	// non-pointer, non-interface field appearing in ForceSendFields will be
7036	// sent to the server regardless of whether the field is empty or not.
7037	// This may be used to include empty fields in Patch requests.
7038	ForceSendFields []string `json:"-"`
7039
7040	// NullFields is a list of field names (e.g. "Amount") to include in API
7041	// requests with the JSON null value. By default, fields with empty
7042	// values are omitted from API requests. However, any field with an
7043	// empty value appearing in NullFields will be sent to the server as
7044	// null. It is an error if a field in this list has a non-empty value.
7045	// This may be used to include null fields in Patch requests.
7046	NullFields []string `json:"-"`
7047}
7048
7049func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
7050	type NoMethod OrderLineItemProductFee
7051	raw := NoMethod(*s)
7052	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7053}
7054
7055type OrderLineItemProductVariantAttribute struct {
7056	// Dimension: The dimension of the variant.
7057	Dimension string `json:"dimension,omitempty"`
7058
7059	// Value: The value for the dimension.
7060	Value string `json:"value,omitempty"`
7061
7062	// ForceSendFields is a list of field names (e.g. "Dimension") to
7063	// unconditionally include in API requests. By default, fields with
7064	// empty or default values are omitted from API requests. However, any
7065	// non-pointer, non-interface field appearing in ForceSendFields will be
7066	// sent to the server regardless of whether the field is empty or not.
7067	// This may be used to include empty fields in Patch requests.
7068	ForceSendFields []string `json:"-"`
7069
7070	// NullFields is a list of field names (e.g. "Dimension") to include in
7071	// API requests with the JSON null value. By default, fields with empty
7072	// values are omitted from API requests. However, any field with an
7073	// empty value appearing in NullFields will be sent to the server as
7074	// null. It is an error if a field in this list has a non-empty value.
7075	// This may be used to include null fields in Patch requests.
7076	NullFields []string `json:"-"`
7077}
7078
7079func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
7080	type NoMethod OrderLineItemProductVariantAttribute
7081	raw := NoMethod(*s)
7082	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7083}
7084
7085type OrderLineItemReturnInfo struct {
7086	// DaysToReturn: Required. How many days later the item can be returned.
7087	DaysToReturn int64 `json:"daysToReturn,omitempty"`
7088
7089	// IsReturnable: Required. Whether the item is returnable.
7090	IsReturnable bool `json:"isReturnable,omitempty"`
7091
7092	// PolicyUrl: Required. URL of the item return policy.
7093	PolicyUrl string `json:"policyUrl,omitempty"`
7094
7095	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
7096	// unconditionally include in API requests. By default, fields with
7097	// empty or default values are omitted from API requests. However, any
7098	// non-pointer, non-interface field appearing in ForceSendFields will be
7099	// sent to the server regardless of whether the field is empty or not.
7100	// This may be used to include empty fields in Patch requests.
7101	ForceSendFields []string `json:"-"`
7102
7103	// NullFields is a list of field names (e.g. "DaysToReturn") to include
7104	// in API requests with the JSON null value. By default, fields with
7105	// empty values are omitted from API requests. However, any field with
7106	// an empty value appearing in NullFields will be sent to the server as
7107	// null. It is an error if a field in this list has a non-empty value.
7108	// This may be used to include null fields in Patch requests.
7109	NullFields []string `json:"-"`
7110}
7111
7112func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
7113	type NoMethod OrderLineItemReturnInfo
7114	raw := NoMethod(*s)
7115	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7116}
7117
7118type OrderLineItemShippingDetails struct {
7119	// DeliverByDate: Required. The delivery by date, in ISO 8601 format.
7120	DeliverByDate string `json:"deliverByDate,omitempty"`
7121
7122	// Method: Required. Details of the shipping method.
7123	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
7124
7125	// PickupPromiseInMinutes: The promised time in minutes in which the
7126	// order will be ready for pickup. This only applies to
7127	// buy-online-pickup-in-store same-day order.
7128	PickupPromiseInMinutes int64 `json:"pickupPromiseInMinutes,omitempty"`
7129
7130	// ShipByDate: Required. The ship by date, in ISO 8601 format.
7131	ShipByDate string `json:"shipByDate,omitempty"`
7132
7133	// Type: Type of shipment. Indicates whether `deliveryDetails` or
7134	// `pickupDetails` is applicable for this shipment. Acceptable values
7135	// are: - "delivery" - "pickup"
7136	Type string `json:"type,omitempty"`
7137
7138	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
7139	// unconditionally include in API requests. By default, fields with
7140	// empty or default values are omitted from API requests. However, any
7141	// non-pointer, non-interface field appearing in ForceSendFields will be
7142	// sent to the server regardless of whether the field is empty or not.
7143	// This may be used to include empty fields in Patch requests.
7144	ForceSendFields []string `json:"-"`
7145
7146	// NullFields is a list of field names (e.g. "DeliverByDate") to include
7147	// in API requests with the JSON null value. By default, fields with
7148	// empty values are omitted from API requests. However, any field with
7149	// an empty value appearing in NullFields will be sent to the server as
7150	// null. It is an error if a field in this list has a non-empty value.
7151	// This may be used to include null fields in Patch requests.
7152	NullFields []string `json:"-"`
7153}
7154
7155func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
7156	type NoMethod OrderLineItemShippingDetails
7157	raw := NoMethod(*s)
7158	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7159}
7160
7161type OrderLineItemShippingDetailsMethod struct {
7162	// Carrier: The carrier for the shipping. Optional. See
7163	// `shipments[].carrier` for a list of acceptable values.
7164	Carrier string `json:"carrier,omitempty"`
7165
7166	// MaxDaysInTransit: Required. Maximum transit time.
7167	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
7168
7169	// MethodName: Required. The name of the shipping method.
7170	MethodName string `json:"methodName,omitempty"`
7171
7172	// MinDaysInTransit: Required. Minimum transit time.
7173	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
7174
7175	// ForceSendFields is a list of field names (e.g. "Carrier") to
7176	// unconditionally include in API requests. By default, fields with
7177	// empty or default values are omitted from API requests. However, any
7178	// non-pointer, non-interface field appearing in ForceSendFields will be
7179	// sent to the server regardless of whether the field is empty or not.
7180	// This may be used to include empty fields in Patch requests.
7181	ForceSendFields []string `json:"-"`
7182
7183	// NullFields is a list of field names (e.g. "Carrier") to include in
7184	// API requests with the JSON null value. By default, fields with empty
7185	// values are omitted from API requests. However, any field with an
7186	// empty value appearing in NullFields will be sent to the server as
7187	// null. It is an error if a field in this list has a non-empty value.
7188	// This may be used to include null fields in Patch requests.
7189	NullFields []string `json:"-"`
7190}
7191
7192func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
7193	type NoMethod OrderLineItemShippingDetailsMethod
7194	raw := NoMethod(*s)
7195	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7196}
7197
7198type OrderMerchantProvidedAnnotation struct {
7199	// Key: Key for additional merchant provided (as key-value pairs)
7200	// annotation about the line item.
7201	Key string `json:"key,omitempty"`
7202
7203	// Value: Value for additional merchant provided (as key-value pairs)
7204	// annotation about the line item.
7205	Value string `json:"value,omitempty"`
7206
7207	// ForceSendFields is a list of field names (e.g. "Key") to
7208	// unconditionally include in API requests. By default, fields with
7209	// empty or default values are omitted from API requests. However, any
7210	// non-pointer, non-interface field appearing in ForceSendFields will be
7211	// sent to the server regardless of whether the field is empty or not.
7212	// This may be used to include empty fields in Patch requests.
7213	ForceSendFields []string `json:"-"`
7214
7215	// NullFields is a list of field names (e.g. "Key") to include in API
7216	// requests with the JSON null value. By default, fields with empty
7217	// values are omitted from API requests. However, any field with an
7218	// empty value appearing in NullFields will be sent to the server as
7219	// null. It is an error if a field in this list has a non-empty value.
7220	// This may be used to include null fields in Patch requests.
7221	NullFields []string `json:"-"`
7222}
7223
7224func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
7225	type NoMethod OrderMerchantProvidedAnnotation
7226	raw := NoMethod(*s)
7227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7228}
7229
7230type OrderOrderAnnotation struct {
7231	// Key: Key for additional google provided (as key-value pairs)
7232	// annotation.
7233	Key string `json:"key,omitempty"`
7234
7235	// Value: Value for additional google provided (as key-value pairs)
7236	// annotation.
7237	Value string `json:"value,omitempty"`
7238
7239	// ForceSendFields is a list of field names (e.g. "Key") to
7240	// unconditionally include in API requests. By default, fields with
7241	// empty or default values are omitted from API requests. However, any
7242	// non-pointer, non-interface field appearing in ForceSendFields will be
7243	// sent to the server regardless of whether the field is empty or not.
7244	// This may be used to include empty fields in Patch requests.
7245	ForceSendFields []string `json:"-"`
7246
7247	// NullFields is a list of field names (e.g. "Key") to include in API
7248	// requests with the JSON null value. By default, fields with empty
7249	// values are omitted from API requests. However, any field with an
7250	// empty value appearing in NullFields will be sent to the server as
7251	// null. It is an error if a field in this list has a non-empty value.
7252	// This may be used to include null fields in Patch requests.
7253	NullFields []string `json:"-"`
7254}
7255
7256func (s *OrderOrderAnnotation) MarshalJSON() ([]byte, error) {
7257	type NoMethod OrderOrderAnnotation
7258	raw := NoMethod(*s)
7259	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7260}
7261
7262type OrderPickupDetails struct {
7263	// Address: Address of the pickup location where the shipment should be
7264	// sent. Note that `recipientName` in the address is the name of the
7265	// business at the pickup location.
7266	Address *OrderAddress `json:"address,omitempty"`
7267
7268	// Collectors: Collectors authorized to pick up shipment from the pickup
7269	// location.
7270	Collectors []*OrderPickupDetailsCollector `json:"collectors,omitempty"`
7271
7272	// LocationId: ID of the pickup location.
7273	LocationId string `json:"locationId,omitempty"`
7274
7275	// PickupType: The pickup type of this order. Acceptable values are: -
7276	// "merchantStore" - "merchantStoreCurbside" -
7277	// "merchantStoreLocker" - "thirdPartyPickupPoint" -
7278	// "thirdPartyLocker"
7279	PickupType string `json:"pickupType,omitempty"`
7280
7281	// ForceSendFields is a list of field names (e.g. "Address") to
7282	// unconditionally include in API requests. By default, fields with
7283	// empty or default values are omitted from API requests. However, any
7284	// non-pointer, non-interface field appearing in ForceSendFields will be
7285	// sent to the server regardless of whether the field is empty or not.
7286	// This may be used to include empty fields in Patch requests.
7287	ForceSendFields []string `json:"-"`
7288
7289	// NullFields is a list of field names (e.g. "Address") to include in
7290	// API requests with the JSON null value. By default, fields with empty
7291	// values are omitted from API requests. However, any field with an
7292	// empty value appearing in NullFields will be sent to the server as
7293	// null. It is an error if a field in this list has a non-empty value.
7294	// This may be used to include null fields in Patch requests.
7295	NullFields []string `json:"-"`
7296}
7297
7298func (s *OrderPickupDetails) MarshalJSON() ([]byte, error) {
7299	type NoMethod OrderPickupDetails
7300	raw := NoMethod(*s)
7301	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7302}
7303
7304type OrderPickupDetailsCollector struct {
7305	// Name: Name of the person picking up the shipment.
7306	Name string `json:"name,omitempty"`
7307
7308	// PhoneNumber: Phone number of the person picking up the shipment.
7309	PhoneNumber string `json:"phoneNumber,omitempty"`
7310
7311	// ForceSendFields is a list of field names (e.g. "Name") to
7312	// unconditionally include in API requests. By default, fields with
7313	// empty or default values are omitted from API requests. However, any
7314	// non-pointer, non-interface field appearing in ForceSendFields will be
7315	// sent to the server regardless of whether the field is empty or not.
7316	// This may be used to include empty fields in Patch requests.
7317	ForceSendFields []string `json:"-"`
7318
7319	// NullFields is a list of field names (e.g. "Name") to include in API
7320	// requests with the JSON null value. By default, fields with empty
7321	// values are omitted from API requests. However, any field with an
7322	// empty value appearing in NullFields will be sent to the server as
7323	// null. It is an error if a field in this list has a non-empty value.
7324	// This may be used to include null fields in Patch requests.
7325	NullFields []string `json:"-"`
7326}
7327
7328func (s *OrderPickupDetailsCollector) MarshalJSON() ([]byte, error) {
7329	type NoMethod OrderPickupDetailsCollector
7330	raw := NoMethod(*s)
7331	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7332}
7333
7334type OrderPromotion struct {
7335	// ApplicableItems: Items that this promotion may be applied to. If
7336	// empty, there are no restrictions on applicable items and quantity.
7337	// This field will also be empty for shipping promotions because
7338	// shipping is not tied to any specific item.
7339	ApplicableItems []*OrderPromotionItem `json:"applicableItems,omitempty"`
7340
7341	// AppliedItems: Items that this promotion have been applied to. Do not
7342	// provide for `orders.createtestorder`. This field will be empty for
7343	// shipping promotions because shipping is not tied to any specific
7344	// item.
7345	AppliedItems []*OrderPromotionItem `json:"appliedItems,omitempty"`
7346
7347	// EndTime: Promotion end time in ISO 8601 format. Date, time, and
7348	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
7349	// "2020-01-02T09:00:00Z".
7350	EndTime string `json:"endTime,omitempty"`
7351
7352	// Funder: Required. The party funding the promotion. Only `merchant` is
7353	// supported for `orders.createtestorder`. Acceptable values are: -
7354	// "google" - "merchant"
7355	Funder string `json:"funder,omitempty"`
7356
7357	// MerchantPromotionId: Required. This field is used to identify
7358	// promotions within merchants' own systems.
7359	MerchantPromotionId string `json:"merchantPromotionId,omitempty"`
7360
7361	// PriceValue: Estimated discount applied to price. Amount is pre-tax or
7362	// post-tax depending on location of order.
7363	PriceValue *Price `json:"priceValue,omitempty"`
7364
7365	// ShortTitle: A short title of the promotion to be shown on the
7366	// checkout page. Do not provide for `orders.createtestorder`.
7367	ShortTitle string `json:"shortTitle,omitempty"`
7368
7369	// StartTime: Promotion start time in ISO 8601 format. Date, time, and
7370	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
7371	// "2020-01-02T09:00:00Z".
7372	StartTime string `json:"startTime,omitempty"`
7373
7374	// Subtype: Required. The category of the promotion. Only `moneyOff` is
7375	// supported for `orders.createtestorder`. Acceptable values are: -
7376	// "buyMGetMoneyOff" - "buyMGetNMoneyOff" - "buyMGetNPercentOff" -
7377	// "buyMGetPercentOff" - "freeGift" - "freeGiftWithItemId" -
7378	// "freeGiftWithValue" - "freeShippingOvernight" -
7379	// "freeShippingStandard" - "freeShippingTwoDay" - "moneyOff" -
7380	// "percentOff" - "rewardPoints" - "salePrice"
7381	Subtype string `json:"subtype,omitempty"`
7382
7383	// TaxValue: Estimated discount applied to tax (if allowed by law). Do
7384	// not provide for `orders.createtestorder`.
7385	TaxValue *Price `json:"taxValue,omitempty"`
7386
7387	// Title: Required. The title of the promotion.
7388	Title string `json:"title,omitempty"`
7389
7390	// Type: Required. The scope of the promotion. Only `product` is
7391	// supported for `orders.createtestorder`. Acceptable values are: -
7392	// "product" - "shipping"
7393	Type string `json:"type,omitempty"`
7394
7395	// ForceSendFields is a list of field names (e.g. "ApplicableItems") to
7396	// unconditionally include in API requests. By default, fields with
7397	// empty or default values are omitted from API requests. However, any
7398	// non-pointer, non-interface field appearing in ForceSendFields will be
7399	// sent to the server regardless of whether the field is empty or not.
7400	// This may be used to include empty fields in Patch requests.
7401	ForceSendFields []string `json:"-"`
7402
7403	// NullFields is a list of field names (e.g. "ApplicableItems") to
7404	// include in API requests with the JSON null value. By default, fields
7405	// with empty values are omitted from API requests. However, any field
7406	// with an empty value appearing in NullFields will be sent to the
7407	// server as null. It is an error if a field in this list has a
7408	// non-empty value. This may be used to include null fields in Patch
7409	// requests.
7410	NullFields []string `json:"-"`
7411}
7412
7413func (s *OrderPromotion) MarshalJSON() ([]byte, error) {
7414	type NoMethod OrderPromotion
7415	raw := NoMethod(*s)
7416	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7417}
7418
7419type OrderPromotionItem struct {
7420	// LineItemId: The line item ID of a product. Do not provide for
7421	// `orders.createtestorder`.
7422	LineItemId string `json:"lineItemId,omitempty"`
7423
7424	// OfferId: Required. Offer ID of a product. Only for
7425	// `orders.createtestorder`.
7426	OfferId string `json:"offerId,omitempty"`
7427
7428	// ProductId: `orders.createtestorder`.
7429	ProductId string `json:"productId,omitempty"`
7430
7431	// Quantity: The quantity of the associated product. Do not provide for
7432	// `orders.createtestorder`.
7433	Quantity int64 `json:"quantity,omitempty"`
7434
7435	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7436	// unconditionally include in API requests. By default, fields with
7437	// empty or default values are omitted from API requests. However, any
7438	// non-pointer, non-interface field appearing in ForceSendFields will be
7439	// sent to the server regardless of whether the field is empty or not.
7440	// This may be used to include empty fields in Patch requests.
7441	ForceSendFields []string `json:"-"`
7442
7443	// NullFields is a list of field names (e.g. "LineItemId") to include in
7444	// API requests with the JSON null value. By default, fields with empty
7445	// values are omitted from API requests. However, any field with an
7446	// empty value appearing in NullFields will be sent to the server as
7447	// null. It is an error if a field in this list has a non-empty value.
7448	// This may be used to include null fields in Patch requests.
7449	NullFields []string `json:"-"`
7450}
7451
7452func (s *OrderPromotionItem) MarshalJSON() ([]byte, error) {
7453	type NoMethod OrderPromotionItem
7454	raw := NoMethod(*s)
7455	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7456}
7457
7458type OrderRefund struct {
7459	// Actor: The actor that created the refund. Acceptable values are: -
7460	// "customer" - "googleBot" - "googleCustomerService" -
7461	// "googlePayments" - "googleSabre" - "merchant"
7462	Actor string `json:"actor,omitempty"`
7463
7464	// Amount: The amount that is refunded.
7465	Amount *Price `json:"amount,omitempty"`
7466
7467	// CreationDate: Date on which the item has been created, in ISO 8601
7468	// format.
7469	CreationDate string `json:"creationDate,omitempty"`
7470
7471	// Reason: The reason for the refund. Acceptable values are: -
7472	// "adjustment" - "autoPostInternal" -
7473	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
7474	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
7475	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
7476	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7477	// - "customerSupportRequested" - "deliveredLateByCarrier" -
7478	// "deliveredTooLate" - "expiredItem" -
7479	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
7480	// "failToPushOrderMerchantFulfillmentError" -
7481	// "failToPushOrderToMerchant" -
7482	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
7483	// "invalidCoupon" - "lateShipmentCredit" -
7484	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
7485	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
7486	// "paymentDeclined" - "priceAdjustment" - "priceError" -
7487	// "productArrivedDamaged" - "productNotAsDescribed" -
7488	// "promoReallocation" - "qualityNotAsExpected" -
7489	// "returnRefundAbuse" - "shippingCostAdjustment" -
7490	// "shippingPriceError" - "taxAdjustment" - "taxError" -
7491	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7492	// "wrongProductShipped"
7493	Reason string `json:"reason,omitempty"`
7494
7495	// ReasonText: The explanation of the reason.
7496	ReasonText string `json:"reasonText,omitempty"`
7497
7498	// ForceSendFields is a list of field names (e.g. "Actor") to
7499	// unconditionally include in API requests. By default, fields with
7500	// empty or default values are omitted from API requests. However, any
7501	// non-pointer, non-interface field appearing in ForceSendFields will be
7502	// sent to the server regardless of whether the field is empty or not.
7503	// This may be used to include empty fields in Patch requests.
7504	ForceSendFields []string `json:"-"`
7505
7506	// NullFields is a list of field names (e.g. "Actor") to include in API
7507	// requests with the JSON null value. By default, fields with empty
7508	// values are omitted from API requests. However, any field with an
7509	// empty value appearing in NullFields will be sent to the server as
7510	// null. It is an error if a field in this list has a non-empty value.
7511	// This may be used to include null fields in Patch requests.
7512	NullFields []string `json:"-"`
7513}
7514
7515func (s *OrderRefund) MarshalJSON() ([]byte, error) {
7516	type NoMethod OrderRefund
7517	raw := NoMethod(*s)
7518	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7519}
7520
7521// OrderReportDisbursement: Order disbursement. All methods require the
7522// payment analyst role.
7523type OrderReportDisbursement struct {
7524	// DisbursementAmount: The disbursement amount.
7525	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
7526
7527	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
7528	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
7529
7530	// DisbursementDate: The date the disbursement was initiated, in ISO
7531	// 8601 format.
7532	DisbursementDate string `json:"disbursementDate,omitempty"`
7533
7534	// DisbursementId: The ID of the disbursement.
7535	DisbursementId string `json:"disbursementId,omitempty"`
7536
7537	// MerchantId: The ID of the managing account.
7538	MerchantId uint64 `json:"merchantId,omitempty,string"`
7539
7540	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
7541	// to unconditionally include in API requests. By default, fields with
7542	// empty or default values are omitted from API requests. However, any
7543	// non-pointer, non-interface field appearing in ForceSendFields will be
7544	// sent to the server regardless of whether the field is empty or not.
7545	// This may be used to include empty fields in Patch requests.
7546	ForceSendFields []string `json:"-"`
7547
7548	// NullFields is a list of field names (e.g. "DisbursementAmount") to
7549	// include in API requests with the JSON null value. By default, fields
7550	// with empty values are omitted from API requests. However, any field
7551	// with an empty value appearing in NullFields will be sent to the
7552	// server as null. It is an error if a field in this list has a
7553	// non-empty value. This may be used to include null fields in Patch
7554	// requests.
7555	NullFields []string `json:"-"`
7556}
7557
7558func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
7559	type NoMethod OrderReportDisbursement
7560	raw := NoMethod(*s)
7561	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7562}
7563
7564type OrderReportTransaction struct {
7565	// DisbursementAmount: The disbursement amount.
7566	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
7567
7568	// DisbursementCreationDate: The date the disbursement was created, in
7569	// ISO 8601 format.
7570	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
7571
7572	// DisbursementDate: The date the disbursement was initiated, in ISO
7573	// 8601 format.
7574	DisbursementDate string `json:"disbursementDate,omitempty"`
7575
7576	// DisbursementId: The ID of the disbursement.
7577	DisbursementId string `json:"disbursementId,omitempty"`
7578
7579	// MerchantId: The ID of the managing account.
7580	MerchantId uint64 `json:"merchantId,omitempty,string"`
7581
7582	// MerchantOrderId: Merchant-provided ID of the order.
7583	MerchantOrderId string `json:"merchantOrderId,omitempty"`
7584
7585	// OrderId: The ID of the order.
7586	OrderId string `json:"orderId,omitempty"`
7587
7588	// ProductAmount: Total amount for the items.
7589	ProductAmount *ProductAmount `json:"productAmount,omitempty"`
7590
7591	// TransactionDate: The date of the transaction, in ISO 8601 format.
7592	TransactionDate string `json:"transactionDate,omitempty"`
7593
7594	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
7595	// to unconditionally include in API requests. By default, fields with
7596	// empty or default values are omitted from API requests. However, any
7597	// non-pointer, non-interface field appearing in ForceSendFields will be
7598	// sent to the server regardless of whether the field is empty or not.
7599	// This may be used to include empty fields in Patch requests.
7600	ForceSendFields []string `json:"-"`
7601
7602	// NullFields is a list of field names (e.g. "DisbursementAmount") to
7603	// include in API requests with the JSON null value. By default, fields
7604	// with empty values are omitted from API requests. However, any field
7605	// with an empty value appearing in NullFields will be sent to the
7606	// server as null. It is an error if a field in this list has a
7607	// non-empty value. This may be used to include null fields in Patch
7608	// requests.
7609	NullFields []string `json:"-"`
7610}
7611
7612func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
7613	type NoMethod OrderReportTransaction
7614	raw := NoMethod(*s)
7615	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7616}
7617
7618type OrderReturn struct {
7619	// Actor: The actor that created the refund. Acceptable values are: -
7620	// "customer" - "googleBot" - "googleCustomerService" -
7621	// "googlePayments" - "googleSabre" - "merchant"
7622	Actor string `json:"actor,omitempty"`
7623
7624	// CreationDate: Date on which the item has been created, in ISO 8601
7625	// format.
7626	CreationDate string `json:"creationDate,omitempty"`
7627
7628	// Quantity: Quantity that is returned.
7629	Quantity int64 `json:"quantity,omitempty"`
7630
7631	// Reason: The reason for the return. Acceptable values are: -
7632	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7633	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7634	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7635	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7636	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7637	// "wrongProductShipped"
7638	Reason string `json:"reason,omitempty"`
7639
7640	// ReasonText: The explanation of the reason.
7641	ReasonText string `json:"reasonText,omitempty"`
7642
7643	// ForceSendFields is a list of field names (e.g. "Actor") to
7644	// unconditionally include in API requests. By default, fields with
7645	// empty or default values are omitted from API requests. However, any
7646	// non-pointer, non-interface field appearing in ForceSendFields will be
7647	// sent to the server regardless of whether the field is empty or not.
7648	// This may be used to include empty fields in Patch requests.
7649	ForceSendFields []string `json:"-"`
7650
7651	// NullFields is a list of field names (e.g. "Actor") to include in API
7652	// requests with the JSON null value. By default, fields with empty
7653	// values are omitted from API requests. However, any field with an
7654	// empty value appearing in NullFields will be sent to the server as
7655	// null. It is an error if a field in this list has a non-empty value.
7656	// This may be used to include null fields in Patch requests.
7657	NullFields []string `json:"-"`
7658}
7659
7660func (s *OrderReturn) MarshalJSON() ([]byte, error) {
7661	type NoMethod OrderReturn
7662	raw := NoMethod(*s)
7663	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7664}
7665
7666type OrderShipment struct {
7667	// Carrier: The carrier handling the shipment. For supported carriers,
7668	// Google includes the carrier name and tracking URL in emails to
7669	// customers. For select supported carriers, Google also automatically
7670	// updates the shipment status based on the provided shipment ID.
7671	// *Note:* You can also use unsupported carriers, but emails to
7672	// customers will not include the carrier name or tracking URL, and
7673	// there will be no automatic order status updates. Supported carriers
7674	// for US are: - "ups" (United Parcel Service) *automatic status
7675	// updates* - "usps" (United States Postal Service) *automatic status
7676	// updates* - "fedex" (FedEx) *automatic status updates * - "dhl"
7677	// (DHL eCommerce) *automatic status updates* (US only) - "ontrac"
7678	// (OnTrac) *automatic status updates * - "dhl express" (DHL Express)
7679	// - "deliv" (Deliv) - "dynamex" (TForce) - "lasership"
7680	// (LaserShip) - "mpx" (Military Parcel Xpress) - "uds" (United
7681	// Delivery Service) - "efw" (Estes Forwarding Worldwide) - "jd
7682	// logistics" (JD Logistics) - "yunexpress" (YunExpress) - "china
7683	// post" (China Post) - "china ems" (China Post Express Mail Service)
7684	// - "singapore post" (Singapore Post) - "pos malaysia" (Pos
7685	// Malaysia) - "postnl" (PostNL) - "ptt" (PTT Turkish Post) -
7686	// "eub" (ePacket) - "chukou1" (Chukou1 Logistics) - "bestex"
7687	// (Best Express) - "canada post" (Canada Post) - "purolator"
7688	// (Purolator) - "canpar" (Canpar) - "india post" (India Post) -
7689	// "blue dart" (Blue Dart) - "delhivery" (Delhivery) - "dtdc"
7690	// (DTDC) - "tpc india" (TPC India) - "lso" (Lone Star Overnight) -
7691	// "tww" (Team Worldwide) Supported carriers for FR are: - "la
7692	// poste" (La Poste) *automatic status updates * - "colissimo"
7693	// (Colissimo by La Poste) *automatic status updates* - "ups" (United
7694	// Parcel Service) *automatic status updates * - "chronopost"
7695	// (Chronopost by La Poste) - "gls" (General Logistics Systems France)
7696	// - "dpd" (DPD Group by GeoPost) - "bpost" (Belgian Post Group) -
7697	// "colis prive" (Colis Privé) - "boxtal" (Boxtal) - "geodis"
7698	// (GEODIS) - "tnt" (TNT) - "db schenker" (DB Schenker) - "aramex"
7699	// (Aramex)
7700	Carrier string `json:"carrier,omitempty"`
7701
7702	// CreationDate: Date on which the shipment has been created, in ISO
7703	// 8601 format.
7704	CreationDate string `json:"creationDate,omitempty"`
7705
7706	// DeliveryDate: Date on which the shipment has been delivered, in ISO
7707	// 8601 format. Present only if `status` is `delivered`
7708	DeliveryDate string `json:"deliveryDate,omitempty"`
7709
7710	// Id: The ID of the shipment.
7711	Id string `json:"id,omitempty"`
7712
7713	// LineItems: The line items that are shipped.
7714	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
7715
7716	// ScheduledDeliveryDetails: Delivery details of the shipment if
7717	// scheduling is needed.
7718	ScheduledDeliveryDetails *OrderShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
7719
7720	// ShipmentGroupId: The shipment group ID of the shipment. This is set
7721	// in shiplineitems request.
7722	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7723
7724	// Status: The status of the shipment. Acceptable values are: -
7725	// "delivered" - "readyForPickup" - "shipped" - "undeliverable"
7726	Status string `json:"status,omitempty"`
7727
7728	// TrackingId: The tracking ID for the shipment.
7729	TrackingId string `json:"trackingId,omitempty"`
7730
7731	// ForceSendFields is a list of field names (e.g. "Carrier") to
7732	// unconditionally include in API requests. By default, fields with
7733	// empty or default values are omitted from API requests. However, any
7734	// non-pointer, non-interface field appearing in ForceSendFields will be
7735	// sent to the server regardless of whether the field is empty or not.
7736	// This may be used to include empty fields in Patch requests.
7737	ForceSendFields []string `json:"-"`
7738
7739	// NullFields is a list of field names (e.g. "Carrier") to include in
7740	// API requests with the JSON null value. By default, fields with empty
7741	// values are omitted from API requests. However, any field with an
7742	// empty value appearing in NullFields will be sent to the server as
7743	// null. It is an error if a field in this list has a non-empty value.
7744	// This may be used to include null fields in Patch requests.
7745	NullFields []string `json:"-"`
7746}
7747
7748func (s *OrderShipment) MarshalJSON() ([]byte, error) {
7749	type NoMethod OrderShipment
7750	raw := NoMethod(*s)
7751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7752}
7753
7754type OrderShipmentLineItemShipment struct {
7755	// LineItemId: The ID of the line item that is shipped. This value is
7756	// assigned by Google when an order is created. Either lineItemId or
7757	// productId is required.
7758	LineItemId string `json:"lineItemId,omitempty"`
7759
7760	// ProductId: The ID of the product to ship. This is the REST ID used in
7761	// the products service. Either lineItemId or productId is required.
7762	ProductId string `json:"productId,omitempty"`
7763
7764	// Quantity: The quantity that is shipped.
7765	Quantity int64 `json:"quantity,omitempty"`
7766
7767	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7768	// unconditionally include in API requests. By default, fields with
7769	// empty or default values are omitted from API requests. However, any
7770	// non-pointer, non-interface field appearing in ForceSendFields will be
7771	// sent to the server regardless of whether the field is empty or not.
7772	// This may be used to include empty fields in Patch requests.
7773	ForceSendFields []string `json:"-"`
7774
7775	// NullFields is a list of field names (e.g. "LineItemId") to include in
7776	// API requests with the JSON null value. By default, fields with empty
7777	// values are omitted from API requests. However, any field with an
7778	// empty value appearing in NullFields will be sent to the server as
7779	// null. It is an error if a field in this list has a non-empty value.
7780	// This may be used to include null fields in Patch requests.
7781	NullFields []string `json:"-"`
7782}
7783
7784func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
7785	type NoMethod OrderShipmentLineItemShipment
7786	raw := NoMethod(*s)
7787	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7788}
7789
7790type OrderShipmentScheduledDeliveryDetails struct {
7791	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
7792	// delivery. The phone number is formatted as the international notation
7793	// in ITU-T Recommendation E.123 (e.g., "+41 44 668 1800").
7794	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
7795
7796	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
7797	// 8601 format.
7798	ScheduledDate string `json:"scheduledDate,omitempty"`
7799
7800	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
7801	// to unconditionally include in API requests. By default, fields with
7802	// empty or default values are omitted from API requests. However, any
7803	// non-pointer, non-interface field appearing in ForceSendFields will be
7804	// sent to the server regardless of whether the field is empty or not.
7805	// This may be used to include empty fields in Patch requests.
7806	ForceSendFields []string `json:"-"`
7807
7808	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
7809	// include in API requests with the JSON null value. By default, fields
7810	// with empty values are omitted from API requests. However, any field
7811	// with an empty value appearing in NullFields will be sent to the
7812	// server as null. It is an error if a field in this list has a
7813	// non-empty value. This may be used to include null fields in Patch
7814	// requests.
7815	NullFields []string `json:"-"`
7816}
7817
7818func (s *OrderShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
7819	type NoMethod OrderShipmentScheduledDeliveryDetails
7820	raw := NoMethod(*s)
7821	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7822}
7823
7824// OrderTrackingSignal: Represents a merchant trade from which signals
7825// are extracted, e.g. shipping.
7826type OrderTrackingSignal struct {
7827	// CustomerShippingFee: The shipping fee of the order; this value should
7828	// be set to zero in the case of free shipping.
7829	CustomerShippingFee *PriceAmount `json:"customerShippingFee,omitempty"`
7830
7831	// DeliveryPostalCode: Required. The delivery postal code, as a
7832	// continuous string without spaces or dashes, e.g. "95016". This field
7833	// will be anonymized in returned OrderTrackingSignal creation response.
7834	DeliveryPostalCode string `json:"deliveryPostalCode,omitempty"`
7835
7836	// DeliveryRegionCode: Required. The [CLDR territory code]
7837	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
7838	// for the shipping destination.
7839	DeliveryRegionCode string `json:"deliveryRegionCode,omitempty"`
7840
7841	// LineItems: Information about line items in the order.
7842	LineItems []*OrderTrackingSignalLineItemDetails `json:"lineItems,omitempty"`
7843
7844	// MerchantId: The Google merchant ID of this order tracking signal.
7845	// This value is optional. If left unset, the caller's merchant ID is
7846	// used. You must request access in order to provide data on behalf of
7847	// another merchant. For more information, see Submitting Order Tracking
7848	// Signals (/shopping-content/guides/order-tracking-signals).
7849	MerchantId int64 `json:"merchantId,omitempty,string"`
7850
7851	// OrderCreatedTime: Required. The time when the order was created on
7852	// the merchant side. Include the year and timezone string, if
7853	// available.
7854	OrderCreatedTime *DateTime `json:"orderCreatedTime,omitempty"`
7855
7856	// OrderId: Required. The ID of the order on the merchant side. This
7857	// field will be hashed in returned OrderTrackingSignal creation
7858	// response.
7859	OrderId string `json:"orderId,omitempty"`
7860
7861	// OrderTrackingSignalId: Output only. The ID that uniquely identifies
7862	// this order tracking signal.
7863	OrderTrackingSignalId int64 `json:"orderTrackingSignalId,omitempty,string"`
7864
7865	// ShipmentLineItemMapping: The mapping of the line items to the
7866	// shipment information.
7867	ShipmentLineItemMapping []*OrderTrackingSignalShipmentLineItemMapping `json:"shipmentLineItemMapping,omitempty"`
7868
7869	// ShippingInfo: The shipping information for the order.
7870	ShippingInfo []*OrderTrackingSignalShippingInfo `json:"shippingInfo,omitempty"`
7871
7872	// ServerResponse contains the HTTP response code and headers from the
7873	// server.
7874	googleapi.ServerResponse `json:"-"`
7875
7876	// ForceSendFields is a list of field names (e.g. "CustomerShippingFee")
7877	// to unconditionally include in API requests. By default, fields with
7878	// empty or default values are omitted from API requests. However, any
7879	// non-pointer, non-interface field appearing in ForceSendFields will be
7880	// sent to the server regardless of whether the field is empty or not.
7881	// This may be used to include empty fields in Patch requests.
7882	ForceSendFields []string `json:"-"`
7883
7884	// NullFields is a list of field names (e.g. "CustomerShippingFee") to
7885	// include in API requests with the JSON null value. By default, fields
7886	// with empty values are omitted from API requests. However, any field
7887	// with an empty value appearing in NullFields will be sent to the
7888	// server as null. It is an error if a field in this list has a
7889	// non-empty value. This may be used to include null fields in Patch
7890	// requests.
7891	NullFields []string `json:"-"`
7892}
7893
7894func (s *OrderTrackingSignal) MarshalJSON() ([]byte, error) {
7895	type NoMethod OrderTrackingSignal
7896	raw := NoMethod(*s)
7897	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7898}
7899
7900// OrderTrackingSignalLineItemDetails: The line items of the order.
7901type OrderTrackingSignalLineItemDetails struct {
7902	// Gtin: The Global Trade Item Number.
7903	Gtin string `json:"gtin,omitempty"`
7904
7905	// LineItemId: Required. The ID for this line item.
7906	LineItemId string `json:"lineItemId,omitempty"`
7907
7908	// Mpn: The manufacturer part number.
7909	Mpn string `json:"mpn,omitempty"`
7910
7911	// ProductId: Required. The Content API REST ID of the product, in the
7912	// form channel:contentLanguage:targetCountry:offerId.
7913	ProductId string `json:"productId,omitempty"`
7914
7915	// Quantity: Required. The quantity of the line item in the order.
7916	Quantity int64 `json:"quantity,omitempty,string"`
7917
7918	// ForceSendFields is a list of field names (e.g. "Gtin") to
7919	// unconditionally include in API requests. By default, fields with
7920	// empty or default values are omitted from API requests. However, any
7921	// non-pointer, non-interface field appearing in ForceSendFields will be
7922	// sent to the server regardless of whether the field is empty or not.
7923	// This may be used to include empty fields in Patch requests.
7924	ForceSendFields []string `json:"-"`
7925
7926	// NullFields is a list of field names (e.g. "Gtin") to include in API
7927	// requests with the JSON null value. By default, fields with empty
7928	// values are omitted from API requests. However, any field with an
7929	// empty value appearing in NullFields will be sent to the server as
7930	// null. It is an error if a field in this list has a non-empty value.
7931	// This may be used to include null fields in Patch requests.
7932	NullFields []string `json:"-"`
7933}
7934
7935func (s *OrderTrackingSignalLineItemDetails) MarshalJSON() ([]byte, error) {
7936	type NoMethod OrderTrackingSignalLineItemDetails
7937	raw := NoMethod(*s)
7938	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7939}
7940
7941// OrderTrackingSignalShipmentLineItemMapping: Represents how many items
7942// are in the shipment for the given shipment_id and line_item_id.
7943type OrderTrackingSignalShipmentLineItemMapping struct {
7944	// LineItemId: Required. The line item ID.
7945	LineItemId string `json:"lineItemId,omitempty"`
7946
7947	// Quantity: Required. The line item quantity in the shipment.
7948	Quantity int64 `json:"quantity,omitempty,string"`
7949
7950	// ShipmentId: Required. The shipment ID. This field will be hashed in
7951	// returned OrderTrackingSignal creation response.
7952	ShipmentId string `json:"shipmentId,omitempty"`
7953
7954	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7955	// unconditionally include in API requests. By default, fields with
7956	// empty or default values are omitted from API requests. However, any
7957	// non-pointer, non-interface field appearing in ForceSendFields will be
7958	// sent to the server regardless of whether the field is empty or not.
7959	// This may be used to include empty fields in Patch requests.
7960	ForceSendFields []string `json:"-"`
7961
7962	// NullFields is a list of field names (e.g. "LineItemId") to include in
7963	// API requests with the JSON null value. By default, fields with empty
7964	// values are omitted from API requests. However, any field with an
7965	// empty value appearing in NullFields will be sent to the server as
7966	// null. It is an error if a field in this list has a non-empty value.
7967	// This may be used to include null fields in Patch requests.
7968	NullFields []string `json:"-"`
7969}
7970
7971func (s *OrderTrackingSignalShipmentLineItemMapping) MarshalJSON() ([]byte, error) {
7972	type NoMethod OrderTrackingSignalShipmentLineItemMapping
7973	raw := NoMethod(*s)
7974	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7975}
7976
7977// OrderTrackingSignalShippingInfo: The shipping information for the
7978// order.
7979type OrderTrackingSignalShippingInfo struct {
7980	// ActualDeliveryTime: The time when the shipment was actually
7981	// delivered. Include the year and timezone string, if available. This
7982	// field is required, if one of the following fields is absent:
7983	// tracking_id or carrier_name.
7984	ActualDeliveryTime *DateTime `json:"actualDeliveryTime,omitempty"`
7985
7986	// CarrierName: The name of the shipping carrier for the delivery. This
7987	// field is required if one of the following fields is absent:
7988	// earliest_delivery_promise_time, latest_delivery_promise_time, and
7989	// actual_delivery_time.
7990	CarrierName string `json:"carrierName,omitempty"`
7991
7992	// CarrierServiceName: The service type for fulfillment, e.g., GROUND,
7993	// FIRST_CLASS, etc.
7994	CarrierServiceName string `json:"carrierServiceName,omitempty"`
7995
7996	// EarliestDeliveryPromiseTime: The earliest delivery promised time.
7997	// Include the year and timezone string, if available. This field is
7998	// required, if one of the following fields is absent: tracking_id or
7999	// carrier_name.
8000	EarliestDeliveryPromiseTime *DateTime `json:"earliestDeliveryPromiseTime,omitempty"`
8001
8002	// LatestDeliveryPromiseTime: The latest delivery promised time. Include
8003	// the year and timezone string, if available. This field is required,
8004	// if one of the following fields is absent: tracking_id or
8005	// carrier_name.
8006	LatestDeliveryPromiseTime *DateTime `json:"latestDeliveryPromiseTime,omitempty"`
8007
8008	// OriginPostalCode: The origin postal code, as a continuous string
8009	// without spaces or dashes, e.g. "95016". This field will be anonymized
8010	// in returned OrderTrackingSignal creation response.
8011	OriginPostalCode string `json:"originPostalCode,omitempty"`
8012
8013	// OriginRegionCode: The [CLDR territory code]
8014	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
8015	// for the shipping origin.
8016	OriginRegionCode string `json:"originRegionCode,omitempty"`
8017
8018	// ShipmentId: Required. The shipment ID. This field will be hashed in
8019	// returned OrderTrackingSignal creation response.
8020	ShipmentId string `json:"shipmentId,omitempty"`
8021
8022	// ShippedTime: The time when the shipment was shipped. Include the year
8023	// and timezone string, if available.
8024	ShippedTime *DateTime `json:"shippedTime,omitempty"`
8025
8026	// ShippingStatus: The status of the shipment.
8027	//
8028	// Possible values:
8029	//   "SHIPPING_STATE_UNSPECIFIED" - The shipping status is not known to
8030	// merchant.
8031	//   "SHIPPED" - All items are shipped.
8032	//   "DELIVERED" - The shipment is already delivered.
8033	ShippingStatus string `json:"shippingStatus,omitempty"`
8034
8035	// TrackingId: The tracking ID of the shipment. This field is required
8036	// if one of the following fields is absent:
8037	// earliest_delivery_promise_time, latest_delivery_promise_time, and
8038	// actual_delivery_time.
8039	TrackingId string `json:"trackingId,omitempty"`
8040
8041	// ForceSendFields is a list of field names (e.g. "ActualDeliveryTime")
8042	// to unconditionally include in API requests. By default, fields with
8043	// empty or default values are omitted from API requests. However, any
8044	// non-pointer, non-interface field appearing in ForceSendFields will be
8045	// sent to the server regardless of whether the field is empty or not.
8046	// This may be used to include empty fields in Patch requests.
8047	ForceSendFields []string `json:"-"`
8048
8049	// NullFields is a list of field names (e.g. "ActualDeliveryTime") to
8050	// include in API requests with the JSON null value. By default, fields
8051	// with empty values are omitted from API requests. However, any field
8052	// with an empty value appearing in NullFields will be sent to the
8053	// server as null. It is an error if a field in this list has a
8054	// non-empty value. This may be used to include null fields in Patch
8055	// requests.
8056	NullFields []string `json:"-"`
8057}
8058
8059func (s *OrderTrackingSignalShippingInfo) MarshalJSON() ([]byte, error) {
8060	type NoMethod OrderTrackingSignalShippingInfo
8061	raw := NoMethod(*s)
8062	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8063}
8064
8065type OrderinvoicesCreateChargeInvoiceRequest struct {
8066	// InvoiceId: [required] The ID of the invoice.
8067	InvoiceId string `json:"invoiceId,omitempty"`
8068
8069	// InvoiceSummary: [required] Invoice summary.
8070	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
8071
8072	// LineItemInvoices: [required] Invoice details per line item.
8073	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
8074
8075	// OperationId: [required] The ID of the operation, unique across all
8076	// operations for a given order.
8077	OperationId string `json:"operationId,omitempty"`
8078
8079	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
8080	// by the merchant in the `shipLineItems` method and is used to group
8081	// multiple line items that have the same kind of shipping charges.
8082	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
8083
8084	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
8085	// unconditionally include in API requests. By default, fields with
8086	// empty or default values are omitted from API requests. However, any
8087	// non-pointer, non-interface field appearing in ForceSendFields will be
8088	// sent to the server regardless of whether the field is empty or not.
8089	// This may be used to include empty fields in Patch requests.
8090	ForceSendFields []string `json:"-"`
8091
8092	// NullFields is a list of field names (e.g. "InvoiceId") to include in
8093	// API requests with the JSON null value. By default, fields with empty
8094	// values are omitted from API requests. However, any field with an
8095	// empty value appearing in NullFields will be sent to the server as
8096	// null. It is an error if a field in this list has a non-empty value.
8097	// This may be used to include null fields in Patch requests.
8098	NullFields []string `json:"-"`
8099}
8100
8101func (s *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
8102	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
8103	raw := NoMethod(*s)
8104	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8105}
8106
8107type OrderinvoicesCreateChargeInvoiceResponse struct {
8108	// ExecutionStatus: The status of the execution. Acceptable values are:
8109	// - "duplicate" - "executed"
8110	ExecutionStatus string `json:"executionStatus,omitempty"`
8111
8112	// Kind: Identifies what kind of resource this is. Value: the fixed
8113	// string "content#orderinvoicesCreateChargeInvoiceResponse".
8114	Kind string `json:"kind,omitempty"`
8115
8116	// ServerResponse contains the HTTP response code and headers from the
8117	// server.
8118	googleapi.ServerResponse `json:"-"`
8119
8120	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8121	// unconditionally include in API requests. By default, fields with
8122	// empty or default values are omitted from API requests. However, any
8123	// non-pointer, non-interface field appearing in ForceSendFields will be
8124	// sent to the server regardless of whether the field is empty or not.
8125	// This may be used to include empty fields in Patch requests.
8126	ForceSendFields []string `json:"-"`
8127
8128	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8129	// include in API requests with the JSON null value. By default, fields
8130	// with empty values are omitted from API requests. However, any field
8131	// with an empty value appearing in NullFields will be sent to the
8132	// server as null. It is an error if a field in this list has a
8133	// non-empty value. This may be used to include null fields in Patch
8134	// requests.
8135	NullFields []string `json:"-"`
8136}
8137
8138func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
8139	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
8140	raw := NoMethod(*s)
8141	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8142}
8143
8144type OrderinvoicesCreateRefundInvoiceRequest struct {
8145	// InvoiceId: [required] The ID of the invoice.
8146	InvoiceId string `json:"invoiceId,omitempty"`
8147
8148	// OperationId: [required] The ID of the operation, unique across all
8149	// operations for a given order.
8150	OperationId string `json:"operationId,omitempty"`
8151
8152	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
8153	// of `refundOnlyOption` or `returnOption` must be provided.
8154	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
8155
8156	// ReturnOption: Option to create an invoice for a refund and mark all
8157	// items within the invoice as returned. Exactly one of
8158	// `refundOnlyOption` or `returnOption` must be provided.
8159	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
8160
8161	// ShipmentInvoices: Invoice details for different shipment groups.
8162	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
8163
8164	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
8165	// unconditionally include in API requests. By default, fields with
8166	// empty or default values are omitted from API requests. However, any
8167	// non-pointer, non-interface field appearing in ForceSendFields will be
8168	// sent to the server regardless of whether the field is empty or not.
8169	// This may be used to include empty fields in Patch requests.
8170	ForceSendFields []string `json:"-"`
8171
8172	// NullFields is a list of field names (e.g. "InvoiceId") to include in
8173	// API requests with the JSON null value. By default, fields with empty
8174	// values are omitted from API requests. However, any field with an
8175	// empty value appearing in NullFields will be sent to the server as
8176	// null. It is an error if a field in this list has a non-empty value.
8177	// This may be used to include null fields in Patch requests.
8178	NullFields []string `json:"-"`
8179}
8180
8181func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
8182	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
8183	raw := NoMethod(*s)
8184	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8185}
8186
8187type OrderinvoicesCreateRefundInvoiceResponse struct {
8188	// ExecutionStatus: The status of the execution. Acceptable values are:
8189	// - "duplicate" - "executed"
8190	ExecutionStatus string `json:"executionStatus,omitempty"`
8191
8192	// Kind: Identifies what kind of resource this is. Value: the fixed
8193	// string "content#orderinvoicesCreateRefundInvoiceResponse".
8194	Kind string `json:"kind,omitempty"`
8195
8196	// ServerResponse contains the HTTP response code and headers from the
8197	// server.
8198	googleapi.ServerResponse `json:"-"`
8199
8200	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8201	// unconditionally include in API requests. By default, fields with
8202	// empty or default values are omitted from API requests. However, any
8203	// non-pointer, non-interface field appearing in ForceSendFields will be
8204	// sent to the server regardless of whether the field is empty or not.
8205	// This may be used to include empty fields in Patch requests.
8206	ForceSendFields []string `json:"-"`
8207
8208	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8209	// include in API requests with the JSON null value. By default, fields
8210	// with empty values are omitted from API requests. However, any field
8211	// with an empty value appearing in NullFields will be sent to the
8212	// server as null. It is an error if a field in this list has a
8213	// non-empty value. This may be used to include null fields in Patch
8214	// requests.
8215	NullFields []string `json:"-"`
8216}
8217
8218func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
8219	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
8220	raw := NoMethod(*s)
8221	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8222}
8223
8224type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
8225	// Description: Optional description of the refund reason.
8226	Description string `json:"description,omitempty"`
8227
8228	// Reason: [required] Reason for the refund. Acceptable values are: -
8229	// "adjustment" - "autoPostInternal" -
8230	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
8231	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
8232	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
8233	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8234	// - "customerSupportRequested" - "deliveredLateByCarrier" -
8235	// "deliveredTooLate" - "expiredItem" -
8236	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
8237	// "failToPushOrderMerchantFulfillmentError" -
8238	// "failToPushOrderToMerchant" -
8239	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
8240	// "invalidCoupon" - "lateShipmentCredit" -
8241	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
8242	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
8243	// "paymentDeclined" - "priceAdjustment" - "priceError" -
8244	// "productArrivedDamaged" - "productNotAsDescribed" -
8245	// "promoReallocation" - "qualityNotAsExpected" -
8246	// "returnRefundAbuse" - "shippingCostAdjustment" -
8247	// "shippingPriceError" - "taxAdjustment" - "taxError" -
8248	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8249	// "wrongProductShipped"
8250	Reason string `json:"reason,omitempty"`
8251
8252	// ForceSendFields is a list of field names (e.g. "Description") to
8253	// unconditionally include in API requests. By default, fields with
8254	// empty or default values are omitted from API requests. However, any
8255	// non-pointer, non-interface field appearing in ForceSendFields will be
8256	// sent to the server regardless of whether the field is empty or not.
8257	// This may be used to include empty fields in Patch requests.
8258	ForceSendFields []string `json:"-"`
8259
8260	// NullFields is a list of field names (e.g. "Description") to include
8261	// in API requests with the JSON null value. By default, fields with
8262	// empty values are omitted from API requests. However, any field with
8263	// an empty value appearing in NullFields will be sent to the server as
8264	// null. It is an error if a field in this list has a non-empty value.
8265	// This may be used to include null fields in Patch requests.
8266	NullFields []string `json:"-"`
8267}
8268
8269func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
8270	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
8271	raw := NoMethod(*s)
8272	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8273}
8274
8275type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
8276	// Description: Optional description of the return reason.
8277	Description string `json:"description,omitempty"`
8278
8279	// Reason: [required] Reason for the return. Acceptable values are: -
8280	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8281	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
8282	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
8283	// - "productNotAsDescribed" - "qualityNotAsExpected" -
8284	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8285	// "wrongProductShipped"
8286	Reason string `json:"reason,omitempty"`
8287
8288	// ForceSendFields is a list of field names (e.g. "Description") to
8289	// unconditionally include in API requests. By default, fields with
8290	// empty or default values are omitted from API requests. However, any
8291	// non-pointer, non-interface field appearing in ForceSendFields will be
8292	// sent to the server regardless of whether the field is empty or not.
8293	// This may be used to include empty fields in Patch requests.
8294	ForceSendFields []string `json:"-"`
8295
8296	// NullFields is a list of field names (e.g. "Description") to include
8297	// in API requests with the JSON null value. By default, fields with
8298	// empty values are omitted from API requests. However, any field with
8299	// an empty value appearing in NullFields will be sent to the server as
8300	// null. It is an error if a field in this list has a non-empty value.
8301	// This may be used to include null fields in Patch requests.
8302	NullFields []string `json:"-"`
8303}
8304
8305func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
8306	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
8307	raw := NoMethod(*s)
8308	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8309}
8310
8311type OrderreportsListDisbursementsResponse struct {
8312	// Disbursements: The list of disbursements.
8313	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
8314
8315	// Kind: Identifies what kind of resource this is. Value: the fixed
8316	// string "content#orderreportsListDisbursementsResponse".
8317	Kind string `json:"kind,omitempty"`
8318
8319	// NextPageToken: The token for the retrieval of the next page of
8320	// disbursements.
8321	NextPageToken string `json:"nextPageToken,omitempty"`
8322
8323	// ServerResponse contains the HTTP response code and headers from the
8324	// server.
8325	googleapi.ServerResponse `json:"-"`
8326
8327	// ForceSendFields is a list of field names (e.g. "Disbursements") to
8328	// unconditionally include in API requests. By default, fields with
8329	// empty or default values are omitted from API requests. However, any
8330	// non-pointer, non-interface field appearing in ForceSendFields will be
8331	// sent to the server regardless of whether the field is empty or not.
8332	// This may be used to include empty fields in Patch requests.
8333	ForceSendFields []string `json:"-"`
8334
8335	// NullFields is a list of field names (e.g. "Disbursements") to include
8336	// in API requests with the JSON null value. By default, fields with
8337	// empty values are omitted from API requests. However, any field with
8338	// an empty value appearing in NullFields will be sent to the server as
8339	// null. It is an error if a field in this list has a non-empty value.
8340	// This may be used to include null fields in Patch requests.
8341	NullFields []string `json:"-"`
8342}
8343
8344func (s *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
8345	type NoMethod OrderreportsListDisbursementsResponse
8346	raw := NoMethod(*s)
8347	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8348}
8349
8350type OrderreportsListTransactionsResponse struct {
8351	// Kind: Identifies what kind of resource this is. Value: the fixed
8352	// string "content#orderreportsListTransactionsResponse".
8353	Kind string `json:"kind,omitempty"`
8354
8355	// NextPageToken: The token for the retrieval of the next page of
8356	// transactions.
8357	NextPageToken string `json:"nextPageToken,omitempty"`
8358
8359	// Transactions: The list of transactions.
8360	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
8361
8362	// ServerResponse contains the HTTP response code and headers from the
8363	// server.
8364	googleapi.ServerResponse `json:"-"`
8365
8366	// ForceSendFields is a list of field names (e.g. "Kind") to
8367	// unconditionally include in API requests. By default, fields with
8368	// empty or default values are omitted from API requests. However, any
8369	// non-pointer, non-interface field appearing in ForceSendFields will be
8370	// sent to the server regardless of whether the field is empty or not.
8371	// This may be used to include empty fields in Patch requests.
8372	ForceSendFields []string `json:"-"`
8373
8374	// NullFields is a list of field names (e.g. "Kind") to include in API
8375	// requests with the JSON null value. By default, fields with empty
8376	// values are omitted from API requests. However, any field with an
8377	// empty value appearing in NullFields will be sent to the server as
8378	// null. It is an error if a field in this list has a non-empty value.
8379	// This may be used to include null fields in Patch requests.
8380	NullFields []string `json:"-"`
8381}
8382
8383func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
8384	type NoMethod OrderreportsListTransactionsResponse
8385	raw := NoMethod(*s)
8386	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8387}
8388
8389type OrderreturnsAcknowledgeRequest struct {
8390	// OperationId: [required] The ID of the operation, unique across all
8391	// operations for a given order return.
8392	OperationId string `json:"operationId,omitempty"`
8393
8394	// ForceSendFields is a list of field names (e.g. "OperationId") to
8395	// unconditionally include in API requests. By default, fields with
8396	// empty or default values are omitted from API requests. However, any
8397	// non-pointer, non-interface field appearing in ForceSendFields will be
8398	// sent to the server regardless of whether the field is empty or not.
8399	// This may be used to include empty fields in Patch requests.
8400	ForceSendFields []string `json:"-"`
8401
8402	// NullFields is a list of field names (e.g. "OperationId") to include
8403	// in API requests with the JSON null value. By default, fields with
8404	// empty values are omitted from API requests. However, any field with
8405	// an empty value appearing in NullFields will be sent to the server as
8406	// null. It is an error if a field in this list has a non-empty value.
8407	// This may be used to include null fields in Patch requests.
8408	NullFields []string `json:"-"`
8409}
8410
8411func (s *OrderreturnsAcknowledgeRequest) MarshalJSON() ([]byte, error) {
8412	type NoMethod OrderreturnsAcknowledgeRequest
8413	raw := NoMethod(*s)
8414	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8415}
8416
8417type OrderreturnsAcknowledgeResponse struct {
8418	// ExecutionStatus: The status of the execution. Acceptable values are:
8419	// - "duplicate" - "executed"
8420	ExecutionStatus string `json:"executionStatus,omitempty"`
8421
8422	// Kind: Identifies what kind of resource this is. Value: the fixed
8423	// string "content#orderreturnsAcknowledgeResponse".
8424	Kind string `json:"kind,omitempty"`
8425
8426	// ServerResponse contains the HTTP response code and headers from the
8427	// server.
8428	googleapi.ServerResponse `json:"-"`
8429
8430	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8431	// unconditionally include in API requests. By default, fields with
8432	// empty or default values are omitted from API requests. However, any
8433	// non-pointer, non-interface field appearing in ForceSendFields will be
8434	// sent to the server regardless of whether the field is empty or not.
8435	// This may be used to include empty fields in Patch requests.
8436	ForceSendFields []string `json:"-"`
8437
8438	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8439	// include in API requests with the JSON null value. By default, fields
8440	// with empty values are omitted from API requests. However, any field
8441	// with an empty value appearing in NullFields will be sent to the
8442	// server as null. It is an error if a field in this list has a
8443	// non-empty value. This may be used to include null fields in Patch
8444	// requests.
8445	NullFields []string `json:"-"`
8446}
8447
8448func (s *OrderreturnsAcknowledgeResponse) MarshalJSON() ([]byte, error) {
8449	type NoMethod OrderreturnsAcknowledgeResponse
8450	raw := NoMethod(*s)
8451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8452}
8453
8454type OrderreturnsCreateOrderReturnRequest struct {
8455	// LineItems: The list of line items to return.
8456	LineItems []*OrderreturnsLineItem `json:"lineItems,omitempty"`
8457
8458	// OperationId: The ID of the operation. Unique across all operations
8459	// for a given order.
8460	OperationId string `json:"operationId,omitempty"`
8461
8462	// OrderId: The ID of the order.
8463	OrderId string `json:"orderId,omitempty"`
8464
8465	// ReturnMethodType: The way of the package being returned.
8466	ReturnMethodType string `json:"returnMethodType,omitempty"`
8467
8468	// ForceSendFields is a list of field names (e.g. "LineItems") to
8469	// unconditionally include in API requests. By default, fields with
8470	// empty or default values are omitted from API requests. However, any
8471	// non-pointer, non-interface field appearing in ForceSendFields will be
8472	// sent to the server regardless of whether the field is empty or not.
8473	// This may be used to include empty fields in Patch requests.
8474	ForceSendFields []string `json:"-"`
8475
8476	// NullFields is a list of field names (e.g. "LineItems") to include in
8477	// API requests with the JSON null value. By default, fields with empty
8478	// values are omitted from API requests. However, any field with an
8479	// empty value appearing in NullFields will be sent to the server as
8480	// null. It is an error if a field in this list has a non-empty value.
8481	// This may be used to include null fields in Patch requests.
8482	NullFields []string `json:"-"`
8483}
8484
8485func (s *OrderreturnsCreateOrderReturnRequest) MarshalJSON() ([]byte, error) {
8486	type NoMethod OrderreturnsCreateOrderReturnRequest
8487	raw := NoMethod(*s)
8488	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8489}
8490
8491type OrderreturnsCreateOrderReturnResponse struct {
8492	// ExecutionStatus: The status of the execution. Acceptable values are:
8493	// - "duplicate" - "executed"
8494	ExecutionStatus string `json:"executionStatus,omitempty"`
8495
8496	// Kind: Identifies what kind of resource this is. Value: the fixed
8497	// string "content#orderreturnsCreateOrderReturnResponse".
8498	Kind string `json:"kind,omitempty"`
8499
8500	// OrderReturn: Created order return.
8501	OrderReturn *MerchantOrderReturn `json:"orderReturn,omitempty"`
8502
8503	// ServerResponse contains the HTTP response code and headers from the
8504	// server.
8505	googleapi.ServerResponse `json:"-"`
8506
8507	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8508	// unconditionally include in API requests. By default, fields with
8509	// empty or default values are omitted from API requests. However, any
8510	// non-pointer, non-interface field appearing in ForceSendFields will be
8511	// sent to the server regardless of whether the field is empty or not.
8512	// This may be used to include empty fields in Patch requests.
8513	ForceSendFields []string `json:"-"`
8514
8515	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8516	// include in API requests with the JSON null value. By default, fields
8517	// with empty values are omitted from API requests. However, any field
8518	// with an empty value appearing in NullFields will be sent to the
8519	// server as null. It is an error if a field in this list has a
8520	// non-empty value. This may be used to include null fields in Patch
8521	// requests.
8522	NullFields []string `json:"-"`
8523}
8524
8525func (s *OrderreturnsCreateOrderReturnResponse) MarshalJSON() ([]byte, error) {
8526	type NoMethod OrderreturnsCreateOrderReturnResponse
8527	raw := NoMethod(*s)
8528	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8529}
8530
8531type OrderreturnsLineItem struct {
8532	// LineItemId: The ID of the line item. This value is assigned by Google
8533	// when an order is created. Either lineItemId or productId is required.
8534	LineItemId string `json:"lineItemId,omitempty"`
8535
8536	// ProductId: The ID of the product to cancel. This is the REST ID used
8537	// in the products service. Either lineItemId or productId is required.
8538	ProductId string `json:"productId,omitempty"`
8539
8540	// Quantity: The quantity of this line item.
8541	Quantity int64 `json:"quantity,omitempty"`
8542
8543	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8544	// unconditionally include in API requests. By default, fields with
8545	// empty or default values are omitted from API requests. However, any
8546	// non-pointer, non-interface field appearing in ForceSendFields will be
8547	// sent to the server regardless of whether the field is empty or not.
8548	// This may be used to include empty fields in Patch requests.
8549	ForceSendFields []string `json:"-"`
8550
8551	// NullFields is a list of field names (e.g. "LineItemId") to include in
8552	// API requests with the JSON null value. By default, fields with empty
8553	// values are omitted from API requests. However, any field with an
8554	// empty value appearing in NullFields will be sent to the server as
8555	// null. It is an error if a field in this list has a non-empty value.
8556	// This may be used to include null fields in Patch requests.
8557	NullFields []string `json:"-"`
8558}
8559
8560func (s *OrderreturnsLineItem) MarshalJSON() ([]byte, error) {
8561	type NoMethod OrderreturnsLineItem
8562	raw := NoMethod(*s)
8563	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8564}
8565
8566type OrderreturnsListResponse struct {
8567	// Kind: Identifies what kind of resource this is. Value: the fixed
8568	// string "content#orderreturnsListResponse".
8569	Kind string `json:"kind,omitempty"`
8570
8571	// NextPageToken: The token for the retrieval of the next page of
8572	// returns.
8573	NextPageToken string `json:"nextPageToken,omitempty"`
8574
8575	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
8576
8577	// ServerResponse contains the HTTP response code and headers from the
8578	// server.
8579	googleapi.ServerResponse `json:"-"`
8580
8581	// ForceSendFields is a list of field names (e.g. "Kind") to
8582	// unconditionally include in API requests. By default, fields with
8583	// empty or default values are omitted from API requests. However, any
8584	// non-pointer, non-interface field appearing in ForceSendFields will be
8585	// sent to the server regardless of whether the field is empty or not.
8586	// This may be used to include empty fields in Patch requests.
8587	ForceSendFields []string `json:"-"`
8588
8589	// NullFields is a list of field names (e.g. "Kind") to include in API
8590	// requests with the JSON null value. By default, fields with empty
8591	// values are omitted from API requests. However, any field with an
8592	// empty value appearing in NullFields will be sent to the server as
8593	// null. It is an error if a field in this list has a non-empty value.
8594	// This may be used to include null fields in Patch requests.
8595	NullFields []string `json:"-"`
8596}
8597
8598func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
8599	type NoMethod OrderreturnsListResponse
8600	raw := NoMethod(*s)
8601	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8602}
8603
8604type OrderreturnsPartialRefund struct {
8605	// PriceAmount: The pre-tax or post-tax amount to be refunded, depending
8606	// on the location of the order.
8607	PriceAmount *Price `json:"priceAmount,omitempty"`
8608
8609	// TaxAmount: Tax amount to be refunded. Note: This has different
8610	// meaning depending on the location of the order.
8611	TaxAmount *Price `json:"taxAmount,omitempty"`
8612
8613	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
8614	// unconditionally include in API requests. By default, fields with
8615	// empty or default values are omitted from API requests. However, any
8616	// non-pointer, non-interface field appearing in ForceSendFields will be
8617	// sent to the server regardless of whether the field is empty or not.
8618	// This may be used to include empty fields in Patch requests.
8619	ForceSendFields []string `json:"-"`
8620
8621	// NullFields is a list of field names (e.g. "PriceAmount") to include
8622	// in API requests with the JSON null value. By default, fields with
8623	// empty values are omitted from API requests. However, any field with
8624	// an empty value appearing in NullFields will be sent to the server as
8625	// null. It is an error if a field in this list has a non-empty value.
8626	// This may be used to include null fields in Patch requests.
8627	NullFields []string `json:"-"`
8628}
8629
8630func (s *OrderreturnsPartialRefund) MarshalJSON() ([]byte, error) {
8631	type NoMethod OrderreturnsPartialRefund
8632	raw := NoMethod(*s)
8633	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8634}
8635
8636type OrderreturnsProcessRequest struct {
8637	// FullChargeReturnShippingCost: Option to charge the customer return
8638	// shipping cost.
8639	FullChargeReturnShippingCost bool `json:"fullChargeReturnShippingCost,omitempty"`
8640
8641	// OperationId: [required] The ID of the operation, unique across all
8642	// operations for a given order return.
8643	OperationId string `json:"operationId,omitempty"`
8644
8645	// RefundShippingFee: Refunds for original shipping fee.
8646	RefundShippingFee *OrderreturnsRefundOperation `json:"refundShippingFee,omitempty"`
8647
8648	// ReturnItems: The list of items to return.
8649	ReturnItems []*OrderreturnsReturnItem `json:"returnItems,omitempty"`
8650
8651	// ForceSendFields is a list of field names (e.g.
8652	// "FullChargeReturnShippingCost") to unconditionally include in API
8653	// requests. By default, fields with empty or default values are omitted
8654	// from API requests. However, any non-pointer, non-interface field
8655	// appearing in ForceSendFields will be sent to the server regardless of
8656	// whether the field is empty or not. This may be used to include empty
8657	// fields in Patch requests.
8658	ForceSendFields []string `json:"-"`
8659
8660	// NullFields is a list of field names (e.g.
8661	// "FullChargeReturnShippingCost") to include in API requests with the
8662	// JSON null value. By default, fields with empty values are omitted
8663	// from API requests. However, any field with an empty value appearing
8664	// in NullFields will be sent to the server as null. It is an error if a
8665	// field in this list has a non-empty value. This may be used to include
8666	// null fields in Patch requests.
8667	NullFields []string `json:"-"`
8668}
8669
8670func (s *OrderreturnsProcessRequest) MarshalJSON() ([]byte, error) {
8671	type NoMethod OrderreturnsProcessRequest
8672	raw := NoMethod(*s)
8673	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8674}
8675
8676type OrderreturnsProcessResponse struct {
8677	// ExecutionStatus: The status of the execution. Acceptable values are:
8678	// - "duplicate" - "executed"
8679	ExecutionStatus string `json:"executionStatus,omitempty"`
8680
8681	// Kind: Identifies what kind of resource this is. Value: the fixed
8682	// string "content#orderreturnsProcessResponse".
8683	Kind string `json:"kind,omitempty"`
8684
8685	// ServerResponse contains the HTTP response code and headers from the
8686	// server.
8687	googleapi.ServerResponse `json:"-"`
8688
8689	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") 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. "ExecutionStatus") to
8698	// include in API requests with the JSON null value. By default, fields
8699	// with empty values are omitted from API requests. However, any field
8700	// with an empty value appearing in NullFields will be sent to the
8701	// server as null. It is an error if a field in this list has a
8702	// non-empty value. This may be used to include null fields in Patch
8703	// requests.
8704	NullFields []string `json:"-"`
8705}
8706
8707func (s *OrderreturnsProcessResponse) MarshalJSON() ([]byte, error) {
8708	type NoMethod OrderreturnsProcessResponse
8709	raw := NoMethod(*s)
8710	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8711}
8712
8713type OrderreturnsRefundOperation struct {
8714	// FullRefund: If true, the item will be fully refunded. Allowed only
8715	// when payment_type is FOP. Merchant can choose this refund option to
8716	// indicate the full remaining amount of corresponding object to be
8717	// refunded to the customer via FOP.
8718	FullRefund bool `json:"fullRefund,omitempty"`
8719
8720	// PartialRefund: If this is set, the item will be partially refunded.
8721	// Merchant can choose this refund option to specify the customized
8722	// amount that to be refunded to the customer.
8723	PartialRefund *OrderreturnsPartialRefund `json:"partialRefund,omitempty"`
8724
8725	// PaymentType: The payment way of issuing refund. Default value is
8726	// ORIGINAL_FOP if not set.
8727	PaymentType string `json:"paymentType,omitempty"`
8728
8729	// ReasonText: The explanation of the reason.
8730	ReasonText string `json:"reasonText,omitempty"`
8731
8732	// ReturnRefundReason: Code of the refund reason.
8733	ReturnRefundReason string `json:"returnRefundReason,omitempty"`
8734
8735	// ForceSendFields is a list of field names (e.g. "FullRefund") to
8736	// unconditionally include in API requests. By default, fields with
8737	// empty or default values are omitted from API requests. However, any
8738	// non-pointer, non-interface field appearing in ForceSendFields will be
8739	// sent to the server regardless of whether the field is empty or not.
8740	// This may be used to include empty fields in Patch requests.
8741	ForceSendFields []string `json:"-"`
8742
8743	// NullFields is a list of field names (e.g. "FullRefund") to include in
8744	// API requests with the JSON null value. By default, fields with empty
8745	// values are omitted from API requests. However, any field with an
8746	// empty value appearing in NullFields will be sent to the server as
8747	// null. It is an error if a field in this list has a non-empty value.
8748	// This may be used to include null fields in Patch requests.
8749	NullFields []string `json:"-"`
8750}
8751
8752func (s *OrderreturnsRefundOperation) MarshalJSON() ([]byte, error) {
8753	type NoMethod OrderreturnsRefundOperation
8754	raw := NoMethod(*s)
8755	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8756}
8757
8758type OrderreturnsRejectOperation struct {
8759	// Reason: The reason for the return.
8760	Reason string `json:"reason,omitempty"`
8761
8762	// ReasonText: The explanation of the reason.
8763	ReasonText string `json:"reasonText,omitempty"`
8764
8765	// ForceSendFields is a list of field names (e.g. "Reason") to
8766	// unconditionally include in API requests. By default, fields with
8767	// empty or default values are omitted from API requests. However, any
8768	// non-pointer, non-interface field appearing in ForceSendFields will be
8769	// sent to the server regardless of whether the field is empty or not.
8770	// This may be used to include empty fields in Patch requests.
8771	ForceSendFields []string `json:"-"`
8772
8773	// NullFields is a list of field names (e.g. "Reason") to include in API
8774	// requests with the JSON null value. By default, fields with empty
8775	// values are omitted from API requests. However, any field with an
8776	// empty value appearing in NullFields will be sent to the server as
8777	// null. It is an error if a field in this list has a non-empty value.
8778	// This may be used to include null fields in Patch requests.
8779	NullFields []string `json:"-"`
8780}
8781
8782func (s *OrderreturnsRejectOperation) MarshalJSON() ([]byte, error) {
8783	type NoMethod OrderreturnsRejectOperation
8784	raw := NoMethod(*s)
8785	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8786}
8787
8788type OrderreturnsReturnItem struct {
8789	// Refund: Refunds the item.
8790	Refund *OrderreturnsRefundOperation `json:"refund,omitempty"`
8791
8792	// Reject: Rejects the item.
8793	Reject *OrderreturnsRejectOperation `json:"reject,omitempty"`
8794
8795	// ReturnItemId: Unit level ID for the return item. Different units of
8796	// the same product will have different IDs.
8797	ReturnItemId string `json:"returnItemId,omitempty"`
8798
8799	// ForceSendFields is a list of field names (e.g. "Refund") to
8800	// unconditionally include in API requests. By default, fields with
8801	// empty or default values are omitted from API requests. However, any
8802	// non-pointer, non-interface field appearing in ForceSendFields will be
8803	// sent to the server regardless of whether the field is empty or not.
8804	// This may be used to include empty fields in Patch requests.
8805	ForceSendFields []string `json:"-"`
8806
8807	// NullFields is a list of field names (e.g. "Refund") to include in API
8808	// requests with the JSON null value. By default, fields with empty
8809	// values are omitted from API requests. However, any field with an
8810	// empty value appearing in NullFields will be sent to the server as
8811	// null. It is an error if a field in this list has a non-empty value.
8812	// This may be used to include null fields in Patch requests.
8813	NullFields []string `json:"-"`
8814}
8815
8816func (s *OrderreturnsReturnItem) MarshalJSON() ([]byte, error) {
8817	type NoMethod OrderreturnsReturnItem
8818	raw := NoMethod(*s)
8819	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8820}
8821
8822type OrdersAcknowledgeRequest struct {
8823	// OperationId: The ID of the operation. Unique across all operations
8824	// for a given order.
8825	OperationId string `json:"operationId,omitempty"`
8826
8827	// ForceSendFields is a list of field names (e.g. "OperationId") to
8828	// unconditionally include in API requests. By default, fields with
8829	// empty or default values are omitted from API requests. However, any
8830	// non-pointer, non-interface field appearing in ForceSendFields will be
8831	// sent to the server regardless of whether the field is empty or not.
8832	// This may be used to include empty fields in Patch requests.
8833	ForceSendFields []string `json:"-"`
8834
8835	// NullFields is a list of field names (e.g. "OperationId") to include
8836	// in API requests with the JSON null value. By default, fields with
8837	// empty values are omitted from API requests. However, any field with
8838	// an empty value appearing in NullFields will be sent to the server as
8839	// null. It is an error if a field in this list has a non-empty value.
8840	// This may be used to include null fields in Patch requests.
8841	NullFields []string `json:"-"`
8842}
8843
8844func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
8845	type NoMethod OrdersAcknowledgeRequest
8846	raw := NoMethod(*s)
8847	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8848}
8849
8850type OrdersAcknowledgeResponse struct {
8851	// ExecutionStatus: The status of the execution. Acceptable values are:
8852	// - "duplicate" - "executed"
8853	ExecutionStatus string `json:"executionStatus,omitempty"`
8854
8855	// Kind: Identifies what kind of resource this is. Value: the fixed
8856	// string "content#ordersAcknowledgeResponse".
8857	Kind string `json:"kind,omitempty"`
8858
8859	// ServerResponse contains the HTTP response code and headers from the
8860	// server.
8861	googleapi.ServerResponse `json:"-"`
8862
8863	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8864	// unconditionally include in API requests. By default, fields with
8865	// empty or default values are omitted from API requests. However, any
8866	// non-pointer, non-interface field appearing in ForceSendFields will be
8867	// sent to the server regardless of whether the field is empty or not.
8868	// This may be used to include empty fields in Patch requests.
8869	ForceSendFields []string `json:"-"`
8870
8871	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8872	// include in API requests with the JSON null value. By default, fields
8873	// with empty values are omitted from API requests. However, any field
8874	// with an empty value appearing in NullFields will be sent to the
8875	// server as null. It is an error if a field in this list has a
8876	// non-empty value. This may be used to include null fields in Patch
8877	// requests.
8878	NullFields []string `json:"-"`
8879}
8880
8881func (s *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
8882	type NoMethod OrdersAcknowledgeResponse
8883	raw := NoMethod(*s)
8884	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8885}
8886
8887type OrdersAdvanceTestOrderResponse struct {
8888	// Kind: Identifies what kind of resource this is. Value: the fixed
8889	// string "content#ordersAdvanceTestOrderResponse".
8890	Kind string `json:"kind,omitempty"`
8891
8892	// ServerResponse contains the HTTP response code and headers from the
8893	// server.
8894	googleapi.ServerResponse `json:"-"`
8895
8896	// ForceSendFields is a list of field names (e.g. "Kind") to
8897	// unconditionally include in API requests. By default, fields with
8898	// empty or default values are omitted from API requests. However, any
8899	// non-pointer, non-interface field appearing in ForceSendFields will be
8900	// sent to the server regardless of whether the field is empty or not.
8901	// This may be used to include empty fields in Patch requests.
8902	ForceSendFields []string `json:"-"`
8903
8904	// NullFields is a list of field names (e.g. "Kind") to include in API
8905	// requests with the JSON null value. By default, fields with empty
8906	// values are omitted from API requests. However, any field with an
8907	// empty value appearing in NullFields will be sent to the server as
8908	// null. It is an error if a field in this list has a non-empty value.
8909	// This may be used to include null fields in Patch requests.
8910	NullFields []string `json:"-"`
8911}
8912
8913func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
8914	type NoMethod OrdersAdvanceTestOrderResponse
8915	raw := NoMethod(*s)
8916	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8917}
8918
8919type OrdersCancelLineItemRequest struct {
8920	// LineItemId: The ID of the line item to cancel. Either lineItemId or
8921	// productId is required.
8922	LineItemId string `json:"lineItemId,omitempty"`
8923
8924	// OperationId: The ID of the operation. Unique across all operations
8925	// for a given order.
8926	OperationId string `json:"operationId,omitempty"`
8927
8928	// ProductId: The ID of the product to cancel. This is the REST ID used
8929	// in the products service. Either lineItemId or productId is required.
8930	ProductId string `json:"productId,omitempty"`
8931
8932	// Quantity: The quantity to cancel.
8933	Quantity int64 `json:"quantity,omitempty"`
8934
8935	// Reason: The reason for the cancellation. Acceptable values are: -
8936	// "customerInitiatedCancel" - "invalidCoupon" -
8937	// "malformedShippingAddress" - "noInventory" - "other" -
8938	// "priceError" - "shippingPriceError" - "taxError" -
8939	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
8940	Reason string `json:"reason,omitempty"`
8941
8942	// ReasonText: The explanation of the reason.
8943	ReasonText string `json:"reasonText,omitempty"`
8944
8945	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8946	// unconditionally include in API requests. By default, fields with
8947	// empty or default values are omitted from API requests. However, any
8948	// non-pointer, non-interface field appearing in ForceSendFields will be
8949	// sent to the server regardless of whether the field is empty or not.
8950	// This may be used to include empty fields in Patch requests.
8951	ForceSendFields []string `json:"-"`
8952
8953	// NullFields is a list of field names (e.g. "LineItemId") to include in
8954	// API requests with the JSON null value. By default, fields with empty
8955	// values are omitted from API requests. However, any field with an
8956	// empty value appearing in NullFields will be sent to the server as
8957	// null. It is an error if a field in this list has a non-empty value.
8958	// This may be used to include null fields in Patch requests.
8959	NullFields []string `json:"-"`
8960}
8961
8962func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
8963	type NoMethod OrdersCancelLineItemRequest
8964	raw := NoMethod(*s)
8965	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8966}
8967
8968type OrdersCancelLineItemResponse struct {
8969	// ExecutionStatus: The status of the execution. Acceptable values are:
8970	// - "duplicate" - "executed"
8971	ExecutionStatus string `json:"executionStatus,omitempty"`
8972
8973	// Kind: Identifies what kind of resource this is. Value: the fixed
8974	// string "content#ordersCancelLineItemResponse".
8975	Kind string `json:"kind,omitempty"`
8976
8977	// ServerResponse contains the HTTP response code and headers from the
8978	// server.
8979	googleapi.ServerResponse `json:"-"`
8980
8981	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8982	// unconditionally include in API requests. By default, fields with
8983	// empty or default values are omitted from API requests. However, any
8984	// non-pointer, non-interface field appearing in ForceSendFields will be
8985	// sent to the server regardless of whether the field is empty or not.
8986	// This may be used to include empty fields in Patch requests.
8987	ForceSendFields []string `json:"-"`
8988
8989	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8990	// include in API requests with the JSON null value. By default, fields
8991	// with empty values are omitted from API requests. However, any field
8992	// with an empty value appearing in NullFields will be sent to the
8993	// server as null. It is an error if a field in this list has a
8994	// non-empty value. This may be used to include null fields in Patch
8995	// requests.
8996	NullFields []string `json:"-"`
8997}
8998
8999func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
9000	type NoMethod OrdersCancelLineItemResponse
9001	raw := NoMethod(*s)
9002	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9003}
9004
9005type OrdersCancelRequest struct {
9006	// OperationId: The ID of the operation. Unique across all operations
9007	// for a given order.
9008	OperationId string `json:"operationId,omitempty"`
9009
9010	// Reason: The reason for the cancellation. Acceptable values are: -
9011	// "customerInitiatedCancel" - "invalidCoupon" -
9012	// "malformedShippingAddress" - "noInventory" - "other" -
9013	// "priceError" - "shippingPriceError" - "taxError" -
9014	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
9015	Reason string `json:"reason,omitempty"`
9016
9017	// ReasonText: The explanation of the reason.
9018	ReasonText string `json:"reasonText,omitempty"`
9019
9020	// ForceSendFields is a list of field names (e.g. "OperationId") to
9021	// unconditionally include in API requests. By default, fields with
9022	// empty or default values are omitted from API requests. However, any
9023	// non-pointer, non-interface field appearing in ForceSendFields will be
9024	// sent to the server regardless of whether the field is empty or not.
9025	// This may be used to include empty fields in Patch requests.
9026	ForceSendFields []string `json:"-"`
9027
9028	// NullFields is a list of field names (e.g. "OperationId") to include
9029	// in API requests with the JSON null value. By default, fields with
9030	// empty values are omitted from API requests. However, any field with
9031	// an empty value appearing in NullFields will be sent to the server as
9032	// null. It is an error if a field in this list has a non-empty value.
9033	// This may be used to include null fields in Patch requests.
9034	NullFields []string `json:"-"`
9035}
9036
9037func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
9038	type NoMethod OrdersCancelRequest
9039	raw := NoMethod(*s)
9040	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9041}
9042
9043type OrdersCancelResponse struct {
9044	// ExecutionStatus: The status of the execution. Acceptable values are:
9045	// - "duplicate" - "executed"
9046	ExecutionStatus string `json:"executionStatus,omitempty"`
9047
9048	// Kind: Identifies what kind of resource this is. Value: the fixed
9049	// string "content#ordersCancelResponse".
9050	Kind string `json:"kind,omitempty"`
9051
9052	// ServerResponse contains the HTTP response code and headers from the
9053	// server.
9054	googleapi.ServerResponse `json:"-"`
9055
9056	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9057	// unconditionally include in API requests. By default, fields with
9058	// empty or default values are omitted from API requests. However, any
9059	// non-pointer, non-interface field appearing in ForceSendFields will be
9060	// sent to the server regardless of whether the field is empty or not.
9061	// This may be used to include empty fields in Patch requests.
9062	ForceSendFields []string `json:"-"`
9063
9064	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9065	// include in API requests with the JSON null value. By default, fields
9066	// with empty values are omitted from API requests. However, any field
9067	// with an empty value appearing in NullFields will be sent to the
9068	// server as null. It is an error if a field in this list has a
9069	// non-empty value. This may be used to include null fields in Patch
9070	// requests.
9071	NullFields []string `json:"-"`
9072}
9073
9074func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
9075	type NoMethod OrdersCancelResponse
9076	raw := NoMethod(*s)
9077	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9078}
9079
9080type OrdersCancelTestOrderByCustomerRequest struct {
9081	// Reason: The reason for the cancellation. Acceptable values are: -
9082	// "changedMind" - "orderedWrongItem" - "other"
9083	Reason string `json:"reason,omitempty"`
9084
9085	// ForceSendFields is a list of field names (e.g. "Reason") to
9086	// unconditionally include in API requests. By default, fields with
9087	// empty or default values are omitted from API requests. However, any
9088	// non-pointer, non-interface field appearing in ForceSendFields will be
9089	// sent to the server regardless of whether the field is empty or not.
9090	// This may be used to include empty fields in Patch requests.
9091	ForceSendFields []string `json:"-"`
9092
9093	// NullFields is a list of field names (e.g. "Reason") to include in API
9094	// requests with the JSON null value. By default, fields with empty
9095	// values are omitted from API requests. However, any field with an
9096	// empty value appearing in NullFields will be sent to the server as
9097	// null. It is an error if a field in this list has a non-empty value.
9098	// This may be used to include null fields in Patch requests.
9099	NullFields []string `json:"-"`
9100}
9101
9102func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
9103	type NoMethod OrdersCancelTestOrderByCustomerRequest
9104	raw := NoMethod(*s)
9105	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9106}
9107
9108type OrdersCancelTestOrderByCustomerResponse struct {
9109	// Kind: Identifies what kind of resource this is. Value: the fixed
9110	// string "content#ordersCancelTestOrderByCustomerResponse".
9111	Kind string `json:"kind,omitempty"`
9112
9113	// ServerResponse contains the HTTP response code and headers from the
9114	// server.
9115	googleapi.ServerResponse `json:"-"`
9116
9117	// ForceSendFields is a list of field names (e.g. "Kind") to
9118	// unconditionally include in API requests. By default, fields with
9119	// empty or default values are omitted from API requests. However, any
9120	// non-pointer, non-interface field appearing in ForceSendFields will be
9121	// sent to the server regardless of whether the field is empty or not.
9122	// This may be used to include empty fields in Patch requests.
9123	ForceSendFields []string `json:"-"`
9124
9125	// NullFields is a list of field names (e.g. "Kind") to include in API
9126	// requests with the JSON null value. By default, fields with empty
9127	// values are omitted from API requests. However, any field with an
9128	// empty value appearing in NullFields will be sent to the server as
9129	// null. It is an error if a field in this list has a non-empty value.
9130	// This may be used to include null fields in Patch requests.
9131	NullFields []string `json:"-"`
9132}
9133
9134func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
9135	type NoMethod OrdersCancelTestOrderByCustomerResponse
9136	raw := NoMethod(*s)
9137	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9138}
9139
9140type OrdersCreateTestOrderRequest struct {
9141	// Country: The CLDR territory code of the country of the test order to
9142	// create. Affects the currency and addresses of orders created via
9143	// `template_name`, or the addresses of orders created via `test_order`.
9144	// Acceptable values are: - "US" - "FR" Defaults to `US`.
9145	Country string `json:"country,omitempty"`
9146
9147	// TemplateName: The test order template to use. Specify as an
9148	// alternative to `testOrder` as a shortcut for retrieving a template
9149	// and then creating an order using that template. Acceptable values
9150	// are: - "template1" - "template1a" - "template1b" -
9151	// "template2" - "template3"
9152	TemplateName string `json:"templateName,omitempty"`
9153
9154	// TestOrder: The test order to create.
9155	TestOrder *TestOrder `json:"testOrder,omitempty"`
9156
9157	// ForceSendFields is a list of field names (e.g. "Country") to
9158	// unconditionally include in API requests. By default, fields with
9159	// empty or default values are omitted from API requests. However, any
9160	// non-pointer, non-interface field appearing in ForceSendFields will be
9161	// sent to the server regardless of whether the field is empty or not.
9162	// This may be used to include empty fields in Patch requests.
9163	ForceSendFields []string `json:"-"`
9164
9165	// NullFields is a list of field names (e.g. "Country") to include in
9166	// API requests with the JSON null value. By default, fields with empty
9167	// values are omitted from API requests. However, any field with an
9168	// empty value appearing in NullFields will be sent to the server as
9169	// null. It is an error if a field in this list has a non-empty value.
9170	// This may be used to include null fields in Patch requests.
9171	NullFields []string `json:"-"`
9172}
9173
9174func (s *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
9175	type NoMethod OrdersCreateTestOrderRequest
9176	raw := NoMethod(*s)
9177	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9178}
9179
9180type OrdersCreateTestOrderResponse struct {
9181	// Kind: Identifies what kind of resource this is. Value: the fixed
9182	// string "content#ordersCreateTestOrderResponse".
9183	Kind string `json:"kind,omitempty"`
9184
9185	// OrderId: The ID of the newly created test order.
9186	OrderId string `json:"orderId,omitempty"`
9187
9188	// ServerResponse contains the HTTP response code and headers from the
9189	// server.
9190	googleapi.ServerResponse `json:"-"`
9191
9192	// ForceSendFields is a list of field names (e.g. "Kind") to
9193	// unconditionally include in API requests. By default, fields with
9194	// empty or default values are omitted from API requests. However, any
9195	// non-pointer, non-interface field appearing in ForceSendFields will be
9196	// sent to the server regardless of whether the field is empty or not.
9197	// This may be used to include empty fields in Patch requests.
9198	ForceSendFields []string `json:"-"`
9199
9200	// NullFields is a list of field names (e.g. "Kind") to include in API
9201	// requests with the JSON null value. By default, fields with empty
9202	// values are omitted from API requests. However, any field with an
9203	// empty value appearing in NullFields will be sent to the server as
9204	// null. It is an error if a field in this list has a non-empty value.
9205	// This may be used to include null fields in Patch requests.
9206	NullFields []string `json:"-"`
9207}
9208
9209func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
9210	type NoMethod OrdersCreateTestOrderResponse
9211	raw := NoMethod(*s)
9212	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9213}
9214
9215type OrdersCreateTestReturnRequest struct {
9216	// Items: Returned items.
9217	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
9218
9219	// ForceSendFields is a list of field names (e.g. "Items") to
9220	// unconditionally include in API requests. By default, fields with
9221	// empty or default values are omitted from API requests. However, any
9222	// non-pointer, non-interface field appearing in ForceSendFields will be
9223	// sent to the server regardless of whether the field is empty or not.
9224	// This may be used to include empty fields in Patch requests.
9225	ForceSendFields []string `json:"-"`
9226
9227	// NullFields is a list of field names (e.g. "Items") to include in API
9228	// requests with the JSON null value. By default, fields with empty
9229	// values are omitted from API requests. However, any field with an
9230	// empty value appearing in NullFields will be sent to the server as
9231	// null. It is an error if a field in this list has a non-empty value.
9232	// This may be used to include null fields in Patch requests.
9233	NullFields []string `json:"-"`
9234}
9235
9236func (s *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
9237	type NoMethod OrdersCreateTestReturnRequest
9238	raw := NoMethod(*s)
9239	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9240}
9241
9242type OrdersCreateTestReturnResponse struct {
9243	// Kind: Identifies what kind of resource this is. Value: the fixed
9244	// string "content#ordersCreateTestReturnResponse".
9245	Kind string `json:"kind,omitempty"`
9246
9247	// ReturnId: The ID of the newly created test order return.
9248	ReturnId string `json:"returnId,omitempty"`
9249
9250	// ServerResponse contains the HTTP response code and headers from the
9251	// server.
9252	googleapi.ServerResponse `json:"-"`
9253
9254	// ForceSendFields is a list of field names (e.g. "Kind") to
9255	// unconditionally include in API requests. By default, fields with
9256	// empty or default values are omitted from API requests. However, any
9257	// non-pointer, non-interface field appearing in ForceSendFields will be
9258	// sent to the server regardless of whether the field is empty or not.
9259	// This may be used to include empty fields in Patch requests.
9260	ForceSendFields []string `json:"-"`
9261
9262	// NullFields is a list of field names (e.g. "Kind") to include in API
9263	// requests with the JSON null value. By default, fields with empty
9264	// values are omitted from API requests. However, any field with an
9265	// empty value appearing in NullFields will be sent to the server as
9266	// null. It is an error if a field in this list has a non-empty value.
9267	// This may be used to include null fields in Patch requests.
9268	NullFields []string `json:"-"`
9269}
9270
9271func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
9272	type NoMethod OrdersCreateTestReturnResponse
9273	raw := NoMethod(*s)
9274	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9275}
9276
9277type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
9278	// LineItemId: The ID of the line item to return.
9279	LineItemId string `json:"lineItemId,omitempty"`
9280
9281	// Quantity: Quantity that is returned.
9282	Quantity int64 `json:"quantity,omitempty"`
9283
9284	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9285	// unconditionally include in API requests. By default, fields with
9286	// empty or default values are omitted from API requests. However, any
9287	// non-pointer, non-interface field appearing in ForceSendFields will be
9288	// sent to the server regardless of whether the field is empty or not.
9289	// This may be used to include empty fields in Patch requests.
9290	ForceSendFields []string `json:"-"`
9291
9292	// NullFields is a list of field names (e.g. "LineItemId") to include in
9293	// API requests with the JSON null value. By default, fields with empty
9294	// values are omitted from API requests. However, any field with an
9295	// empty value appearing in NullFields will be sent to the server as
9296	// null. It is an error if a field in this list has a non-empty value.
9297	// This may be used to include null fields in Patch requests.
9298	NullFields []string `json:"-"`
9299}
9300
9301func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
9302	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
9303	raw := NoMethod(*s)
9304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9305}
9306
9307type OrdersCustomBatchRequestEntryRefundItemItem struct {
9308	// Amount: The total amount that is refunded. (e.g. refunding $5 each
9309	// for 2 products should be done by setting quantity to 2 and amount to
9310	// 10$) In case of multiple refunds, this should be the amount you
9311	// currently want to refund to the customer.
9312	Amount *MonetaryAmount `json:"amount,omitempty"`
9313
9314	// FullRefund: If true, the full item will be refunded. If this is true,
9315	// amount should not be provided and will be ignored.
9316	FullRefund bool `json:"fullRefund,omitempty"`
9317
9318	// LineItemId: The ID of the line item. Either lineItemId or productId
9319	// is required.
9320	LineItemId string `json:"lineItemId,omitempty"`
9321
9322	// ProductId: The ID of the product. This is the REST ID used in the
9323	// products service. Either lineItemId or productId is required.
9324	ProductId string `json:"productId,omitempty"`
9325
9326	// Quantity: The number of products that are refunded.
9327	Quantity int64 `json:"quantity,omitempty"`
9328
9329	// ForceSendFields is a list of field names (e.g. "Amount") to
9330	// unconditionally include in API requests. By default, fields with
9331	// empty or default values are omitted from API requests. However, any
9332	// non-pointer, non-interface field appearing in ForceSendFields will be
9333	// sent to the server regardless of whether the field is empty or not.
9334	// This may be used to include empty fields in Patch requests.
9335	ForceSendFields []string `json:"-"`
9336
9337	// NullFields is a list of field names (e.g. "Amount") to include in API
9338	// requests with the JSON null value. By default, fields with empty
9339	// values are omitted from API requests. However, any field with an
9340	// empty value appearing in NullFields will be sent to the server as
9341	// null. It is an error if a field in this list has a non-empty value.
9342	// This may be used to include null fields in Patch requests.
9343	NullFields []string `json:"-"`
9344}
9345
9346func (s *OrdersCustomBatchRequestEntryRefundItemItem) MarshalJSON() ([]byte, error) {
9347	type NoMethod OrdersCustomBatchRequestEntryRefundItemItem
9348	raw := NoMethod(*s)
9349	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9350}
9351
9352type OrdersCustomBatchRequestEntryRefundItemShipping struct {
9353	// Amount: The amount that is refunded. If this is not the first refund
9354	// for the shipment, this should be the newly refunded amount.
9355	Amount *Price `json:"amount,omitempty"`
9356
9357	// FullRefund: If set to true, all shipping costs for the order will be
9358	// refunded. If this is true, amount should not be provided and will be
9359	// ignored. If set to false, submit the amount of the partial shipping
9360	// refund, excluding the shipping tax. The shipping tax is calculated
9361	// and handled on Google's side.
9362	FullRefund bool `json:"fullRefund,omitempty"`
9363
9364	// ForceSendFields is a list of field names (e.g. "Amount") to
9365	// unconditionally include in API requests. By default, fields with
9366	// empty or default values are omitted from API requests. However, any
9367	// non-pointer, non-interface field appearing in ForceSendFields will be
9368	// sent to the server regardless of whether the field is empty or not.
9369	// This may be used to include empty fields in Patch requests.
9370	ForceSendFields []string `json:"-"`
9371
9372	// NullFields is a list of field names (e.g. "Amount") to include in API
9373	// requests with the JSON null value. By default, fields with empty
9374	// values are omitted from API requests. However, any field with an
9375	// empty value appearing in NullFields will be sent to the server as
9376	// null. It is an error if a field in this list has a non-empty value.
9377	// This may be used to include null fields in Patch requests.
9378	NullFields []string `json:"-"`
9379}
9380
9381func (s *OrdersCustomBatchRequestEntryRefundItemShipping) MarshalJSON() ([]byte, error) {
9382	type NoMethod OrdersCustomBatchRequestEntryRefundItemShipping
9383	raw := NoMethod(*s)
9384	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9385}
9386
9387type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
9388	// Carrier: The carrier handling the shipment. See `shipments[].carrier`
9389	// in the Orders resource representation for a list of acceptable
9390	// values.
9391	Carrier string `json:"carrier,omitempty"`
9392
9393	// ShipmentId: Required. The ID of the shipment. This is assigned by the
9394	// merchant and is unique to each shipment.
9395	ShipmentId string `json:"shipmentId,omitempty"`
9396
9397	// TrackingId: The tracking ID for the shipment.
9398	TrackingId string `json:"trackingId,omitempty"`
9399
9400	// ForceSendFields is a list of field names (e.g. "Carrier") to
9401	// unconditionally include in API requests. By default, fields with
9402	// empty or default values are omitted from API requests. However, any
9403	// non-pointer, non-interface field appearing in ForceSendFields will be
9404	// sent to the server regardless of whether the field is empty or not.
9405	// This may be used to include empty fields in Patch requests.
9406	ForceSendFields []string `json:"-"`
9407
9408	// NullFields is a list of field names (e.g. "Carrier") to include in
9409	// API requests with the JSON null value. By default, fields with empty
9410	// values are omitted from API requests. However, any field with an
9411	// empty value appearing in NullFields will be sent to the server as
9412	// null. It is an error if a field in this list has a non-empty value.
9413	// This may be used to include null fields in Patch requests.
9414	NullFields []string `json:"-"`
9415}
9416
9417func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
9418	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
9419	raw := NoMethod(*s)
9420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9421}
9422
9423// OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails:
9424// ScheduledDeliveryDetails used to update the scheduled delivery order.
9425type OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails struct {
9426	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
9427	// delivery. The phone number should be formatted as the international
9428	// notation in
9429	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
9430
9431	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
9432	// 8601 format.
9433	ScheduledDate string `json:"scheduledDate,omitempty"`
9434
9435	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
9436	// to unconditionally include in API requests. By default, fields with
9437	// empty or default values are omitted from API requests. However, any
9438	// non-pointer, non-interface field appearing in ForceSendFields will be
9439	// sent to the server regardless of whether the field is empty or not.
9440	// This may be used to include empty fields in Patch requests.
9441	ForceSendFields []string `json:"-"`
9442
9443	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
9444	// include in API requests with the JSON null value. By default, fields
9445	// with empty values are omitted from API requests. However, any field
9446	// with an empty value appearing in NullFields will be sent to the
9447	// server as null. It is an error if a field in this list has a
9448	// non-empty value. This may be used to include null fields in Patch
9449	// requests.
9450	NullFields []string `json:"-"`
9451}
9452
9453func (s *OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
9454	type NoMethod OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails
9455	raw := NoMethod(*s)
9456	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9457}
9458
9459type OrdersGetByMerchantOrderIdResponse struct {
9460	// Kind: Identifies what kind of resource this is. Value: the fixed
9461	// string "content#ordersGetByMerchantOrderIdResponse".
9462	Kind string `json:"kind,omitempty"`
9463
9464	// Order: The requested order.
9465	Order *Order `json:"order,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. "Kind") 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. "Kind") 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 *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
9489	type NoMethod OrdersGetByMerchantOrderIdResponse
9490	raw := NoMethod(*s)
9491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9492}
9493
9494type OrdersGetTestOrderTemplateResponse struct {
9495	// Kind: Identifies what kind of resource this is. Value: the fixed
9496	// string "content#ordersGetTestOrderTemplateResponse".
9497	Kind string `json:"kind,omitempty"`
9498
9499	// Template: The requested test order template.
9500	Template *TestOrder `json:"template,omitempty"`
9501
9502	// ServerResponse contains the HTTP response code and headers from the
9503	// server.
9504	googleapi.ServerResponse `json:"-"`
9505
9506	// ForceSendFields is a list of field names (e.g. "Kind") to
9507	// unconditionally include in API requests. By default, fields with
9508	// empty or default values are omitted from API requests. However, any
9509	// non-pointer, non-interface field appearing in ForceSendFields will be
9510	// sent to the server regardless of whether the field is empty or not.
9511	// This may be used to include empty fields in Patch requests.
9512	ForceSendFields []string `json:"-"`
9513
9514	// NullFields is a list of field names (e.g. "Kind") to include in API
9515	// requests with the JSON null value. By default, fields with empty
9516	// values are omitted from API requests. However, any field with an
9517	// empty value appearing in NullFields will be sent to the server as
9518	// null. It is an error if a field in this list has a non-empty value.
9519	// This may be used to include null fields in Patch requests.
9520	NullFields []string `json:"-"`
9521}
9522
9523func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
9524	type NoMethod OrdersGetTestOrderTemplateResponse
9525	raw := NoMethod(*s)
9526	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9527}
9528
9529type OrdersInStoreRefundLineItemRequest struct {
9530	// LineItemId: The ID of the line item to return. Either lineItemId or
9531	// productId is required.
9532	LineItemId string `json:"lineItemId,omitempty"`
9533
9534	// OperationId: The ID of the operation. Unique across all operations
9535	// for a given order.
9536	OperationId string `json:"operationId,omitempty"`
9537
9538	// PriceAmount: The amount to be refunded. This may be pre-tax or
9539	// post-tax depending on the location of the order. Required.
9540	PriceAmount *Price `json:"priceAmount,omitempty"`
9541
9542	// ProductId: The ID of the product to return. This is the REST ID used
9543	// in the products service. Either lineItemId or productId is required.
9544	ProductId string `json:"productId,omitempty"`
9545
9546	// Quantity: The quantity to return and refund.
9547	Quantity int64 `json:"quantity,omitempty"`
9548
9549	// Reason: The reason for the return. Acceptable values are: -
9550	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
9551	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
9552	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
9553	// - "productNotAsDescribed" - "qualityNotAsExpected" -
9554	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9555	// "wrongProductShipped"
9556	Reason string `json:"reason,omitempty"`
9557
9558	// ReasonText: The explanation of the reason.
9559	ReasonText string `json:"reasonText,omitempty"`
9560
9561	// TaxAmount: The amount of tax to be refunded. Required.
9562	TaxAmount *Price `json:"taxAmount,omitempty"`
9563
9564	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9565	// unconditionally include in API requests. By default, fields with
9566	// empty or default values are omitted from API requests. However, any
9567	// non-pointer, non-interface field appearing in ForceSendFields will be
9568	// sent to the server regardless of whether the field is empty or not.
9569	// This may be used to include empty fields in Patch requests.
9570	ForceSendFields []string `json:"-"`
9571
9572	// NullFields is a list of field names (e.g. "LineItemId") to include in
9573	// API requests with the JSON null value. By default, fields with empty
9574	// values are omitted from API requests. However, any field with an
9575	// empty value appearing in NullFields will be sent to the server as
9576	// null. It is an error if a field in this list has a non-empty value.
9577	// This may be used to include null fields in Patch requests.
9578	NullFields []string `json:"-"`
9579}
9580
9581func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
9582	type NoMethod OrdersInStoreRefundLineItemRequest
9583	raw := NoMethod(*s)
9584	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9585}
9586
9587type OrdersInStoreRefundLineItemResponse struct {
9588	// ExecutionStatus: The status of the execution. Acceptable values are:
9589	// - "duplicate" - "executed"
9590	ExecutionStatus string `json:"executionStatus,omitempty"`
9591
9592	// Kind: Identifies what kind of resource this is. Value: the fixed
9593	// string "content#ordersInStoreRefundLineItemResponse".
9594	Kind string `json:"kind,omitempty"`
9595
9596	// ServerResponse contains the HTTP response code and headers from the
9597	// server.
9598	googleapi.ServerResponse `json:"-"`
9599
9600	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9601	// unconditionally include in API requests. By default, fields with
9602	// empty or default values are omitted from API requests. However, any
9603	// non-pointer, non-interface field appearing in ForceSendFields will be
9604	// sent to the server regardless of whether the field is empty or not.
9605	// This may be used to include empty fields in Patch requests.
9606	ForceSendFields []string `json:"-"`
9607
9608	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9609	// include in API requests with the JSON null value. By default, fields
9610	// with empty values are omitted from API requests. However, any field
9611	// with an empty value appearing in NullFields will be sent to the
9612	// server as null. It is an error if a field in this list has a
9613	// non-empty value. This may be used to include null fields in Patch
9614	// requests.
9615	NullFields []string `json:"-"`
9616}
9617
9618func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
9619	type NoMethod OrdersInStoreRefundLineItemResponse
9620	raw := NoMethod(*s)
9621	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9622}
9623
9624type OrdersListResponse struct {
9625	// Kind: Identifies what kind of resource this is. Value: the fixed
9626	// string "content#ordersListResponse".
9627	Kind string `json:"kind,omitempty"`
9628
9629	// NextPageToken: The token for the retrieval of the next page of
9630	// orders.
9631	NextPageToken string `json:"nextPageToken,omitempty"`
9632
9633	Resources []*Order `json:"resources,omitempty"`
9634
9635	// ServerResponse contains the HTTP response code and headers from the
9636	// server.
9637	googleapi.ServerResponse `json:"-"`
9638
9639	// ForceSendFields is a list of field names (e.g. "Kind") to
9640	// unconditionally include in API requests. By default, fields with
9641	// empty or default values are omitted from API requests. However, any
9642	// non-pointer, non-interface field appearing in ForceSendFields will be
9643	// sent to the server regardless of whether the field is empty or not.
9644	// This may be used to include empty fields in Patch requests.
9645	ForceSendFields []string `json:"-"`
9646
9647	// NullFields is a list of field names (e.g. "Kind") to include in API
9648	// requests with the JSON null value. By default, fields with empty
9649	// values are omitted from API requests. However, any field with an
9650	// empty value appearing in NullFields will be sent to the server as
9651	// null. It is an error if a field in this list has a non-empty value.
9652	// This may be used to include null fields in Patch requests.
9653	NullFields []string `json:"-"`
9654}
9655
9656func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
9657	type NoMethod OrdersListResponse
9658	raw := NoMethod(*s)
9659	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9660}
9661
9662type OrdersRefundItemRequest struct {
9663	// Items: The items that are refunded. Either Item or Shipping must be
9664	// provided in the request.
9665	Items []*OrdersCustomBatchRequestEntryRefundItemItem `json:"items,omitempty"`
9666
9667	// OperationId: The ID of the operation. Unique across all operations
9668	// for a given order.
9669	OperationId string `json:"operationId,omitempty"`
9670
9671	// Reason: The reason for the refund. Acceptable values are: -
9672	// "shippingCostAdjustment" - "priceAdjustment" - "taxAdjustment"
9673	// - "feeAdjustment" - "courtesyAdjustment" - "adjustment" -
9674	// "customerCancelled" - "noInventory" - "productNotAsDescribed" -
9675	// "undeliverableShippingAddress" - "wrongProductShipped" -
9676	// "lateShipmentCredit" - "deliveredLateByCarrier" -
9677	// "productArrivedDamaged"
9678	Reason string `json:"reason,omitempty"`
9679
9680	// ReasonText: The explanation of the reason.
9681	ReasonText string `json:"reasonText,omitempty"`
9682
9683	// Shipping: The refund on shipping. Optional, but either Item or
9684	// Shipping must be provided in the request.
9685	Shipping *OrdersCustomBatchRequestEntryRefundItemShipping `json:"shipping,omitempty"`
9686
9687	// ForceSendFields is a list of field names (e.g. "Items") to
9688	// unconditionally include in API requests. By default, fields with
9689	// empty or default values are omitted from API requests. However, any
9690	// non-pointer, non-interface field appearing in ForceSendFields will be
9691	// sent to the server regardless of whether the field is empty or not.
9692	// This may be used to include empty fields in Patch requests.
9693	ForceSendFields []string `json:"-"`
9694
9695	// NullFields is a list of field names (e.g. "Items") to include in API
9696	// requests with the JSON null value. By default, fields with empty
9697	// values are omitted from API requests. However, any field with an
9698	// empty value appearing in NullFields will be sent to the server as
9699	// null. It is an error if a field in this list has a non-empty value.
9700	// This may be used to include null fields in Patch requests.
9701	NullFields []string `json:"-"`
9702}
9703
9704func (s *OrdersRefundItemRequest) MarshalJSON() ([]byte, error) {
9705	type NoMethod OrdersRefundItemRequest
9706	raw := NoMethod(*s)
9707	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9708}
9709
9710type OrdersRefundItemResponse struct {
9711	// ExecutionStatus: The status of the execution. Acceptable values are:
9712	// - "duplicate" - "executed"
9713	ExecutionStatus string `json:"executionStatus,omitempty"`
9714
9715	// Kind: Identifies what kind of resource this is. Value: the fixed
9716	// string "content#ordersRefundItemResponse".
9717	Kind string `json:"kind,omitempty"`
9718
9719	// ServerResponse contains the HTTP response code and headers from the
9720	// server.
9721	googleapi.ServerResponse `json:"-"`
9722
9723	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9724	// unconditionally include in API requests. By default, fields with
9725	// empty or default values are omitted from API requests. However, any
9726	// non-pointer, non-interface field appearing in ForceSendFields will be
9727	// sent to the server regardless of whether the field is empty or not.
9728	// This may be used to include empty fields in Patch requests.
9729	ForceSendFields []string `json:"-"`
9730
9731	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9732	// include in API requests with the JSON null value. By default, fields
9733	// with empty values are omitted from API requests. However, any field
9734	// with an empty value appearing in NullFields will be sent to the
9735	// server as null. It is an error if a field in this list has a
9736	// non-empty value. This may be used to include null fields in Patch
9737	// requests.
9738	NullFields []string `json:"-"`
9739}
9740
9741func (s *OrdersRefundItemResponse) MarshalJSON() ([]byte, error) {
9742	type NoMethod OrdersRefundItemResponse
9743	raw := NoMethod(*s)
9744	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9745}
9746
9747type OrdersRefundOrderRequest struct {
9748	// Amount: The amount that is refunded. If this is not the first refund
9749	// for the order, this should be the newly refunded amount.
9750	Amount *MonetaryAmount `json:"amount,omitempty"`
9751
9752	// FullRefund: If true, the full order will be refunded, including
9753	// shipping. If this is true, amount should not be provided and will be
9754	// ignored.
9755	FullRefund bool `json:"fullRefund,omitempty"`
9756
9757	// OperationId: The ID of the operation. Unique across all operations
9758	// for a given order.
9759	OperationId string `json:"operationId,omitempty"`
9760
9761	// Reason: The reason for the refund. Acceptable values are: -
9762	// "courtesyAdjustment" - "other"
9763	Reason string `json:"reason,omitempty"`
9764
9765	// ReasonText: The explanation of the reason.
9766	ReasonText string `json:"reasonText,omitempty"`
9767
9768	// ForceSendFields is a list of field names (e.g. "Amount") to
9769	// unconditionally include in API requests. By default, fields with
9770	// empty or default values are omitted from API requests. However, any
9771	// non-pointer, non-interface field appearing in ForceSendFields will be
9772	// sent to the server regardless of whether the field is empty or not.
9773	// This may be used to include empty fields in Patch requests.
9774	ForceSendFields []string `json:"-"`
9775
9776	// NullFields is a list of field names (e.g. "Amount") to include in API
9777	// requests with the JSON null value. By default, fields with empty
9778	// values are omitted from API requests. However, any field with an
9779	// empty value appearing in NullFields will be sent to the server as
9780	// null. It is an error if a field in this list has a non-empty value.
9781	// This may be used to include null fields in Patch requests.
9782	NullFields []string `json:"-"`
9783}
9784
9785func (s *OrdersRefundOrderRequest) MarshalJSON() ([]byte, error) {
9786	type NoMethod OrdersRefundOrderRequest
9787	raw := NoMethod(*s)
9788	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9789}
9790
9791type OrdersRefundOrderResponse struct {
9792	// ExecutionStatus: The status of the execution. Acceptable values are:
9793	// - "duplicate" - "executed"
9794	ExecutionStatus string `json:"executionStatus,omitempty"`
9795
9796	// Kind: Identifies what kind of resource this is. Value: the fixed
9797	// string "content#ordersRefundOrderResponse".
9798	Kind string `json:"kind,omitempty"`
9799
9800	// ServerResponse contains the HTTP response code and headers from the
9801	// server.
9802	googleapi.ServerResponse `json:"-"`
9803
9804	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9805	// unconditionally include in API requests. By default, fields with
9806	// empty or default values are omitted from API requests. However, any
9807	// non-pointer, non-interface field appearing in ForceSendFields will be
9808	// sent to the server regardless of whether the field is empty or not.
9809	// This may be used to include empty fields in Patch requests.
9810	ForceSendFields []string `json:"-"`
9811
9812	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9813	// include in API requests with the JSON null value. By default, fields
9814	// with empty values are omitted from API requests. However, any field
9815	// with an empty value appearing in NullFields will be sent to the
9816	// server as null. It is an error if a field in this list has a
9817	// non-empty value. This may be used to include null fields in Patch
9818	// requests.
9819	NullFields []string `json:"-"`
9820}
9821
9822func (s *OrdersRefundOrderResponse) MarshalJSON() ([]byte, error) {
9823	type NoMethod OrdersRefundOrderResponse
9824	raw := NoMethod(*s)
9825	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9826}
9827
9828type OrdersRejectReturnLineItemRequest struct {
9829	// LineItemId: The ID of the line item to return. Either lineItemId or
9830	// productId is required.
9831	LineItemId string `json:"lineItemId,omitempty"`
9832
9833	// OperationId: The ID of the operation. Unique across all operations
9834	// for a given order.
9835	OperationId string `json:"operationId,omitempty"`
9836
9837	// ProductId: The ID of the product to return. This is the REST ID used
9838	// in the products service. Either lineItemId or productId is required.
9839	ProductId string `json:"productId,omitempty"`
9840
9841	// Quantity: The quantity to return and refund.
9842	Quantity int64 `json:"quantity,omitempty"`
9843
9844	// Reason: The reason for the return. Acceptable values are: -
9845	// "damagedOrUsed" - "missingComponent" - "notEligible" -
9846	// "other" - "outOfReturnWindow"
9847	Reason string `json:"reason,omitempty"`
9848
9849	// ReasonText: The explanation of the reason.
9850	ReasonText string `json:"reasonText,omitempty"`
9851
9852	// ForceSendFields is a list of field names (e.g. "LineItemId") 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. "LineItemId") to include in
9861	// API 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 *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
9870	type NoMethod OrdersRejectReturnLineItemRequest
9871	raw := NoMethod(*s)
9872	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9873}
9874
9875type OrdersRejectReturnLineItemResponse struct {
9876	// ExecutionStatus: The status of the execution. Acceptable values are:
9877	// - "duplicate" - "executed"
9878	ExecutionStatus string `json:"executionStatus,omitempty"`
9879
9880	// Kind: Identifies what kind of resource this is. Value: the fixed
9881	// string "content#ordersRejectReturnLineItemResponse".
9882	Kind string `json:"kind,omitempty"`
9883
9884	// ServerResponse contains the HTTP response code and headers from the
9885	// server.
9886	googleapi.ServerResponse `json:"-"`
9887
9888	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9889	// unconditionally include in API requests. By default, fields with
9890	// empty or default values are omitted from API requests. However, any
9891	// non-pointer, non-interface field appearing in ForceSendFields will be
9892	// sent to the server regardless of whether the field is empty or not.
9893	// This may be used to include empty fields in Patch requests.
9894	ForceSendFields []string `json:"-"`
9895
9896	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9897	// include in API requests with the JSON null value. By default, fields
9898	// with empty values are omitted from API requests. However, any field
9899	// with an empty value appearing in NullFields will be sent to the
9900	// server as null. It is an error if a field in this list has a
9901	// non-empty value. This may be used to include null fields in Patch
9902	// requests.
9903	NullFields []string `json:"-"`
9904}
9905
9906func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
9907	type NoMethod OrdersRejectReturnLineItemResponse
9908	raw := NoMethod(*s)
9909	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9910}
9911
9912type OrdersReturnRefundLineItemRequest struct {
9913	// LineItemId: The ID of the line item to return. Either lineItemId or
9914	// productId is required.
9915	LineItemId string `json:"lineItemId,omitempty"`
9916
9917	// OperationId: The ID of the operation. Unique across all operations
9918	// for a given order.
9919	OperationId string `json:"operationId,omitempty"`
9920
9921	// PriceAmount: The amount to be refunded. This may be pre-tax or
9922	// post-tax depending on the location of the order. If omitted,
9923	// refundless return is assumed.
9924	PriceAmount *Price `json:"priceAmount,omitempty"`
9925
9926	// ProductId: The ID of the product to return. This is the REST ID used
9927	// in the products service. Either lineItemId or productId is required.
9928	ProductId string `json:"productId,omitempty"`
9929
9930	// Quantity: The quantity to return and refund. Quantity is required.
9931	Quantity int64 `json:"quantity,omitempty"`
9932
9933	// Reason: The reason for the return. Acceptable values are: -
9934	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
9935	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
9936	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
9937	// - "productNotAsDescribed" - "qualityNotAsExpected" -
9938	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9939	// "wrongProductShipped"
9940	Reason string `json:"reason,omitempty"`
9941
9942	// ReasonText: The explanation of the reason.
9943	ReasonText string `json:"reasonText,omitempty"`
9944
9945	// TaxAmount: The amount of tax to be refunded. Optional, but if filled,
9946	// then priceAmount must be set. Calculated automatically if not
9947	// provided.
9948	TaxAmount *Price `json:"taxAmount,omitempty"`
9949
9950	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9951	// unconditionally include in API requests. By default, fields with
9952	// empty or default values are omitted from API requests. However, any
9953	// non-pointer, non-interface field appearing in ForceSendFields will be
9954	// sent to the server regardless of whether the field is empty or not.
9955	// This may be used to include empty fields in Patch requests.
9956	ForceSendFields []string `json:"-"`
9957
9958	// NullFields is a list of field names (e.g. "LineItemId") to include in
9959	// API requests with the JSON null value. By default, fields with empty
9960	// values are omitted from API requests. However, any field with an
9961	// empty value appearing in NullFields will be sent to the server as
9962	// null. It is an error if a field in this list has a non-empty value.
9963	// This may be used to include null fields in Patch requests.
9964	NullFields []string `json:"-"`
9965}
9966
9967func (s *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
9968	type NoMethod OrdersReturnRefundLineItemRequest
9969	raw := NoMethod(*s)
9970	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9971}
9972
9973type OrdersReturnRefundLineItemResponse struct {
9974	// ExecutionStatus: The status of the execution. Acceptable values are:
9975	// - "duplicate" - "executed"
9976	ExecutionStatus string `json:"executionStatus,omitempty"`
9977
9978	// Kind: Identifies what kind of resource this is. Value: the fixed
9979	// string "content#ordersReturnRefundLineItemResponse".
9980	Kind string `json:"kind,omitempty"`
9981
9982	// ServerResponse contains the HTTP response code and headers from the
9983	// server.
9984	googleapi.ServerResponse `json:"-"`
9985
9986	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9987	// unconditionally include in API requests. By default, fields with
9988	// empty or default values are omitted from API requests. However, any
9989	// non-pointer, non-interface field appearing in ForceSendFields will be
9990	// sent to the server regardless of whether the field is empty or not.
9991	// This may be used to include empty fields in Patch requests.
9992	ForceSendFields []string `json:"-"`
9993
9994	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9995	// include in API requests with the JSON null value. By default, fields
9996	// with empty values are omitted from API requests. However, any field
9997	// with an empty value appearing in NullFields will be sent to the
9998	// server as null. It is an error if a field in this list has a
9999	// non-empty value. This may be used to include null fields in Patch
10000	// requests.
10001	NullFields []string `json:"-"`
10002}
10003
10004func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
10005	type NoMethod OrdersReturnRefundLineItemResponse
10006	raw := NoMethod(*s)
10007	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10008}
10009
10010type OrdersSetLineItemMetadataRequest struct {
10011	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
10012
10013	// LineItemId: The ID of the line item to set metadata. Either
10014	// lineItemId or productId is required.
10015	LineItemId string `json:"lineItemId,omitempty"`
10016
10017	// OperationId: The ID of the operation. Unique across all operations
10018	// for a given order.
10019	OperationId string `json:"operationId,omitempty"`
10020
10021	// ProductId: The ID of the product to set metadata. This is the REST ID
10022	// used in the products service. Either lineItemId or productId is
10023	// required.
10024	ProductId string `json:"productId,omitempty"`
10025
10026	// ForceSendFields is a list of field names (e.g. "Annotations") to
10027	// unconditionally include in API requests. By default, fields with
10028	// empty or default values are omitted from API requests. However, any
10029	// non-pointer, non-interface field appearing in ForceSendFields will be
10030	// sent to the server regardless of whether the field is empty or not.
10031	// This may be used to include empty fields in Patch requests.
10032	ForceSendFields []string `json:"-"`
10033
10034	// NullFields is a list of field names (e.g. "Annotations") to include
10035	// in API requests with the JSON null value. By default, fields with
10036	// empty values are omitted from API requests. However, any field with
10037	// an empty value appearing in NullFields will be sent to the server as
10038	// null. It is an error if a field in this list has a non-empty value.
10039	// This may be used to include null fields in Patch requests.
10040	NullFields []string `json:"-"`
10041}
10042
10043func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
10044	type NoMethod OrdersSetLineItemMetadataRequest
10045	raw := NoMethod(*s)
10046	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10047}
10048
10049type OrdersSetLineItemMetadataResponse struct {
10050	// ExecutionStatus: The status of the execution. Acceptable values are:
10051	// - "duplicate" - "executed"
10052	ExecutionStatus string `json:"executionStatus,omitempty"`
10053
10054	// Kind: Identifies what kind of resource this is. Value: the fixed
10055	// string "content#ordersSetLineItemMetadataResponse".
10056	Kind string `json:"kind,omitempty"`
10057
10058	// ServerResponse contains the HTTP response code and headers from the
10059	// server.
10060	googleapi.ServerResponse `json:"-"`
10061
10062	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10063	// unconditionally include in API requests. By default, fields with
10064	// empty or default values are omitted from API requests. However, any
10065	// non-pointer, non-interface field appearing in ForceSendFields will be
10066	// sent to the server regardless of whether the field is empty or not.
10067	// This may be used to include empty fields in Patch requests.
10068	ForceSendFields []string `json:"-"`
10069
10070	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10071	// include in API requests with the JSON null value. By default, fields
10072	// with empty values are omitted from API requests. However, any field
10073	// with an empty value appearing in NullFields will be sent to the
10074	// server as null. It is an error if a field in this list has a
10075	// non-empty value. This may be used to include null fields in Patch
10076	// requests.
10077	NullFields []string `json:"-"`
10078}
10079
10080func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
10081	type NoMethod OrdersSetLineItemMetadataResponse
10082	raw := NoMethod(*s)
10083	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10084}
10085
10086type OrdersShipLineItemsRequest struct {
10087	// LineItems: Line items to ship.
10088	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
10089
10090	// OperationId: The ID of the operation. Unique across all operations
10091	// for a given order.
10092	OperationId string `json:"operationId,omitempty"`
10093
10094	// ShipmentGroupId: ID of the shipment group. Required for orders that
10095	// use the orderinvoices service.
10096	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
10097
10098	// ShipmentInfos: Shipment information. This field is repeated because a
10099	// single line item can be shipped in several packages (and have several
10100	// tracking IDs).
10101	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
10102
10103	// ForceSendFields is a list of field names (e.g. "LineItems") to
10104	// unconditionally include in API requests. By default, fields with
10105	// empty or default values are omitted from API requests. However, any
10106	// non-pointer, non-interface field appearing in ForceSendFields will be
10107	// sent to the server regardless of whether the field is empty or not.
10108	// This may be used to include empty fields in Patch requests.
10109	ForceSendFields []string `json:"-"`
10110
10111	// NullFields is a list of field names (e.g. "LineItems") to include in
10112	// API requests with the JSON null value. By default, fields with empty
10113	// values are omitted from API requests. However, any field with an
10114	// empty value appearing in NullFields will be sent to the server as
10115	// null. It is an error if a field in this list has a non-empty value.
10116	// This may be used to include null fields in Patch requests.
10117	NullFields []string `json:"-"`
10118}
10119
10120func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
10121	type NoMethod OrdersShipLineItemsRequest
10122	raw := NoMethod(*s)
10123	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10124}
10125
10126type OrdersShipLineItemsResponse struct {
10127	// ExecutionStatus: The status of the execution. Acceptable values are:
10128	// - "duplicate" - "executed"
10129	ExecutionStatus string `json:"executionStatus,omitempty"`
10130
10131	// Kind: Identifies what kind of resource this is. Value: the fixed
10132	// string "content#ordersShipLineItemsResponse".
10133	Kind string `json:"kind,omitempty"`
10134
10135	// ServerResponse contains the HTTP response code and headers from the
10136	// server.
10137	googleapi.ServerResponse `json:"-"`
10138
10139	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10140	// unconditionally include in API requests. By default, fields with
10141	// empty or default values are omitted from API requests. However, any
10142	// non-pointer, non-interface field appearing in ForceSendFields will be
10143	// sent to the server regardless of whether the field is empty or not.
10144	// This may be used to include empty fields in Patch requests.
10145	ForceSendFields []string `json:"-"`
10146
10147	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10148	// include in API requests with the JSON null value. By default, fields
10149	// with empty values are omitted from API requests. However, any field
10150	// with an empty value appearing in NullFields will be sent to the
10151	// server as null. It is an error if a field in this list has a
10152	// non-empty value. This may be used to include null fields in Patch
10153	// requests.
10154	NullFields []string `json:"-"`
10155}
10156
10157func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
10158	type NoMethod OrdersShipLineItemsResponse
10159	raw := NoMethod(*s)
10160	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10161}
10162
10163type OrdersUpdateLineItemShippingDetailsRequest struct {
10164	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
10165	// specified only ship by date is updated. Provided date should be
10166	// within 1 year timeframe and can not be a date in the past.
10167	DeliverByDate string `json:"deliverByDate,omitempty"`
10168
10169	// LineItemId: The ID of the line item to set metadata. Either
10170	// lineItemId or productId is required.
10171	LineItemId string `json:"lineItemId,omitempty"`
10172
10173	// OperationId: The ID of the operation. Unique across all operations
10174	// for a given order.
10175	OperationId string `json:"operationId,omitempty"`
10176
10177	// ProductId: The ID of the product to set metadata. This is the REST ID
10178	// used in the products service. Either lineItemId or productId is
10179	// required.
10180	ProductId string `json:"productId,omitempty"`
10181
10182	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
10183	// specified only deliver by date is updated. Provided date should be
10184	// within 1 year timeframe and can not be a date in the past.
10185	ShipByDate string `json:"shipByDate,omitempty"`
10186
10187	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
10188	// unconditionally include in API requests. By default, fields with
10189	// empty or default values are omitted from API requests. However, any
10190	// non-pointer, non-interface field appearing in ForceSendFields will be
10191	// sent to the server regardless of whether the field is empty or not.
10192	// This may be used to include empty fields in Patch requests.
10193	ForceSendFields []string `json:"-"`
10194
10195	// NullFields is a list of field names (e.g. "DeliverByDate") to include
10196	// in API requests with the JSON null value. By default, fields with
10197	// empty values are omitted from API requests. However, any field with
10198	// an empty value appearing in NullFields will be sent to the server as
10199	// null. It is an error if a field in this list has a non-empty value.
10200	// This may be used to include null fields in Patch requests.
10201	NullFields []string `json:"-"`
10202}
10203
10204func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
10205	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
10206	raw := NoMethod(*s)
10207	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10208}
10209
10210type OrdersUpdateLineItemShippingDetailsResponse struct {
10211	// ExecutionStatus: The status of the execution. Acceptable values are:
10212	// - "duplicate" - "executed"
10213	ExecutionStatus string `json:"executionStatus,omitempty"`
10214
10215	// Kind: Identifies what kind of resource this is. Value: the fixed
10216	// string "content#ordersUpdateLineItemShippingDetailsResponse".
10217	Kind string `json:"kind,omitempty"`
10218
10219	// ServerResponse contains the HTTP response code and headers from the
10220	// server.
10221	googleapi.ServerResponse `json:"-"`
10222
10223	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10224	// unconditionally include in API requests. By default, fields with
10225	// empty or default values are omitted from API requests. However, any
10226	// non-pointer, non-interface field appearing in ForceSendFields will be
10227	// sent to the server regardless of whether the field is empty or not.
10228	// This may be used to include empty fields in Patch requests.
10229	ForceSendFields []string `json:"-"`
10230
10231	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10232	// include in API requests with the JSON null value. By default, fields
10233	// with empty values are omitted from API requests. However, any field
10234	// with an empty value appearing in NullFields will be sent to the
10235	// server as null. It is an error if a field in this list has a
10236	// non-empty value. This may be used to include null fields in Patch
10237	// requests.
10238	NullFields []string `json:"-"`
10239}
10240
10241func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
10242	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
10243	raw := NoMethod(*s)
10244	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10245}
10246
10247type OrdersUpdateMerchantOrderIdRequest struct {
10248	// MerchantOrderId: The merchant order id to be assigned to the order.
10249	// Must be unique per merchant.
10250	MerchantOrderId string `json:"merchantOrderId,omitempty"`
10251
10252	// OperationId: The ID of the operation. Unique across all operations
10253	// for a given order.
10254	OperationId string `json:"operationId,omitempty"`
10255
10256	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
10257	// unconditionally include in API requests. By default, fields with
10258	// empty or default values are omitted from API requests. However, any
10259	// non-pointer, non-interface field appearing in ForceSendFields will be
10260	// sent to the server regardless of whether the field is empty or not.
10261	// This may be used to include empty fields in Patch requests.
10262	ForceSendFields []string `json:"-"`
10263
10264	// NullFields is a list of field names (e.g. "MerchantOrderId") to
10265	// include in API requests with the JSON null value. By default, fields
10266	// with empty values are omitted from API requests. However, any field
10267	// with an empty value appearing in NullFields will be sent to the
10268	// server as null. It is an error if a field in this list has a
10269	// non-empty value. This may be used to include null fields in Patch
10270	// requests.
10271	NullFields []string `json:"-"`
10272}
10273
10274func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
10275	type NoMethod OrdersUpdateMerchantOrderIdRequest
10276	raw := NoMethod(*s)
10277	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10278}
10279
10280type OrdersUpdateMerchantOrderIdResponse struct {
10281	// ExecutionStatus: The status of the execution. Acceptable values are:
10282	// - "duplicate" - "executed"
10283	ExecutionStatus string `json:"executionStatus,omitempty"`
10284
10285	// Kind: Identifies what kind of resource this is. Value: the fixed
10286	// string "content#ordersUpdateMerchantOrderIdResponse".
10287	Kind string `json:"kind,omitempty"`
10288
10289	// ServerResponse contains the HTTP response code and headers from the
10290	// server.
10291	googleapi.ServerResponse `json:"-"`
10292
10293	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10294	// unconditionally include in API requests. By default, fields with
10295	// empty or default values are omitted from API requests. However, any
10296	// non-pointer, non-interface field appearing in ForceSendFields will be
10297	// sent to the server regardless of whether the field is empty or not.
10298	// This may be used to include empty fields in Patch requests.
10299	ForceSendFields []string `json:"-"`
10300
10301	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10302	// include in API requests with the JSON null value. By default, fields
10303	// with empty values are omitted from API requests. However, any field
10304	// with an empty value appearing in NullFields will be sent to the
10305	// server as null. It is an error if a field in this list has a
10306	// non-empty value. This may be used to include null fields in Patch
10307	// requests.
10308	NullFields []string `json:"-"`
10309}
10310
10311func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
10312	type NoMethod OrdersUpdateMerchantOrderIdResponse
10313	raw := NoMethod(*s)
10314	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10315}
10316
10317type OrdersUpdateShipmentRequest struct {
10318	// Carrier: The carrier handling the shipment. Not updated if missing.
10319	// See `shipments[].carrier` in the Orders resource representation for a
10320	// list of acceptable values.
10321	Carrier string `json:"carrier,omitempty"`
10322
10323	// DeliveryDate: Date on which the shipment has been delivered, in ISO
10324	// 8601 format. Optional and can be provided only if `status` is
10325	// `delivered`.
10326	DeliveryDate string `json:"deliveryDate,omitempty"`
10327
10328	// LastPickupDate: Date after which the pickup will expire, in ISO 8601
10329	// format. Required only when order is buy-online-pickup-in-store(BOPIS)
10330	// and `status` is `ready for pickup`.
10331	LastPickupDate string `json:"lastPickupDate,omitempty"`
10332
10333	// OperationId: The ID of the operation. Unique across all operations
10334	// for a given order.
10335	OperationId string `json:"operationId,omitempty"`
10336
10337	// ReadyPickupDate: Date on which the shipment has been ready for
10338	// pickup, in ISO 8601 format. Optional and can be provided only if
10339	// `status` is `ready for pickup`.
10340	ReadyPickupDate string `json:"readyPickupDate,omitempty"`
10341
10342	// ScheduledDeliveryDetails: Delivery details of the shipment if
10343	// scheduling is needed.
10344	ScheduledDeliveryDetails *OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
10345
10346	// ShipmentId: The ID of the shipment.
10347	ShipmentId string `json:"shipmentId,omitempty"`
10348
10349	// Status: New status for the shipment. Not updated if missing.
10350	// Acceptable values are: - "delivered" - "undeliverable" -
10351	// "readyForPickup"
10352	Status string `json:"status,omitempty"`
10353
10354	// TrackingId: The tracking ID for the shipment. Not updated if missing.
10355	TrackingId string `json:"trackingId,omitempty"`
10356
10357	// UndeliveredDate: Date on which the shipment has been undeliverable,
10358	// in ISO 8601 format. Optional and can be provided only if `status` is
10359	// `undeliverable`.
10360	UndeliveredDate string `json:"undeliveredDate,omitempty"`
10361
10362	// ForceSendFields is a list of field names (e.g. "Carrier") to
10363	// unconditionally include in API requests. By default, fields with
10364	// empty or default values are omitted from API requests. However, any
10365	// non-pointer, non-interface field appearing in ForceSendFields will be
10366	// sent to the server regardless of whether the field is empty or not.
10367	// This may be used to include empty fields in Patch requests.
10368	ForceSendFields []string `json:"-"`
10369
10370	// NullFields is a list of field names (e.g. "Carrier") to include in
10371	// API requests with the JSON null value. By default, fields with empty
10372	// values are omitted from API requests. However, any field with an
10373	// empty value appearing in NullFields will be sent to the server as
10374	// null. It is an error if a field in this list has a non-empty value.
10375	// This may be used to include null fields in Patch requests.
10376	NullFields []string `json:"-"`
10377}
10378
10379func (s *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
10380	type NoMethod OrdersUpdateShipmentRequest
10381	raw := NoMethod(*s)
10382	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10383}
10384
10385type OrdersUpdateShipmentResponse struct {
10386	// ExecutionStatus: The status of the execution. Acceptable values are:
10387	// - "duplicate" - "executed"
10388	ExecutionStatus string `json:"executionStatus,omitempty"`
10389
10390	// Kind: Identifies what kind of resource this is. Value: the fixed
10391	// string "content#ordersUpdateShipmentResponse".
10392	Kind string `json:"kind,omitempty"`
10393
10394	// ServerResponse contains the HTTP response code and headers from the
10395	// server.
10396	googleapi.ServerResponse `json:"-"`
10397
10398	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10399	// unconditionally include in API requests. By default, fields with
10400	// empty or default values are omitted from API requests. However, any
10401	// non-pointer, non-interface field appearing in ForceSendFields will be
10402	// sent to the server regardless of whether the field is empty or not.
10403	// This may be used to include empty fields in Patch requests.
10404	ForceSendFields []string `json:"-"`
10405
10406	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10407	// include in API requests with the JSON null value. By default, fields
10408	// with empty values are omitted from API requests. However, any field
10409	// with an empty value appearing in NullFields will be sent to the
10410	// server as null. It is an error if a field in this list has a
10411	// non-empty value. This may be used to include null fields in Patch
10412	// requests.
10413	NullFields []string `json:"-"`
10414}
10415
10416func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
10417	type NoMethod OrdersUpdateShipmentResponse
10418	raw := NoMethod(*s)
10419	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10420}
10421
10422// PauseBuyOnGoogleProgramRequest: Request message for the PauseProgram
10423// method.
10424type PauseBuyOnGoogleProgramRequest struct {
10425}
10426
10427// PaymentServiceProviderLinkInfo: Additional information required for
10428// PAYMENT_SERVICE_PROVIDER link type.
10429type PaymentServiceProviderLinkInfo struct {
10430	// ExternalAccountBusinessCountry: The business country of the merchant
10431	// account as identified by the third party service provider.
10432	ExternalAccountBusinessCountry string `json:"externalAccountBusinessCountry,omitempty"`
10433
10434	// ExternalAccountId: The id used by the third party service provider to
10435	// identify the merchant.
10436	ExternalAccountId string `json:"externalAccountId,omitempty"`
10437
10438	// ForceSendFields is a list of field names (e.g.
10439	// "ExternalAccountBusinessCountry") to unconditionally include in API
10440	// requests. By default, fields with empty or default values are omitted
10441	// from API requests. However, any non-pointer, non-interface field
10442	// appearing in ForceSendFields will be sent to the server regardless of
10443	// whether the field is empty or not. This may be used to include empty
10444	// fields in Patch requests.
10445	ForceSendFields []string `json:"-"`
10446
10447	// NullFields is a list of field names (e.g.
10448	// "ExternalAccountBusinessCountry") to include in API requests with the
10449	// JSON null value. By default, fields with empty values are omitted
10450	// from API requests. However, any field with an empty value appearing
10451	// in NullFields will be sent to the server as null. It is an error if a
10452	// field in this list has a non-empty value. This may be used to include
10453	// null fields in Patch requests.
10454	NullFields []string `json:"-"`
10455}
10456
10457func (s *PaymentServiceProviderLinkInfo) MarshalJSON() ([]byte, error) {
10458	type NoMethod PaymentServiceProviderLinkInfo
10459	raw := NoMethod(*s)
10460	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10461}
10462
10463type PickupCarrierService struct {
10464	// CarrierName: The name of the pickup carrier (e.g., "UPS").
10465	// Required.
10466	CarrierName string `json:"carrierName,omitempty"`
10467
10468	// ServiceName: The name of the pickup service (e.g., "Access point").
10469	// Required.
10470	ServiceName string `json:"serviceName,omitempty"`
10471
10472	// ForceSendFields is a list of field names (e.g. "CarrierName") to
10473	// unconditionally include in API requests. By default, fields with
10474	// empty or default values are omitted from API requests. However, any
10475	// non-pointer, non-interface field appearing in ForceSendFields will be
10476	// sent to the server regardless of whether the field is empty or not.
10477	// This may be used to include empty fields in Patch requests.
10478	ForceSendFields []string `json:"-"`
10479
10480	// NullFields is a list of field names (e.g. "CarrierName") to include
10481	// in API requests with the JSON null value. By default, fields with
10482	// empty values are omitted from API requests. However, any field with
10483	// an empty value appearing in NullFields will be sent to the server as
10484	// null. It is an error if a field in this list has a non-empty value.
10485	// This may be used to include null fields in Patch requests.
10486	NullFields []string `json:"-"`
10487}
10488
10489func (s *PickupCarrierService) MarshalJSON() ([]byte, error) {
10490	type NoMethod PickupCarrierService
10491	raw := NoMethod(*s)
10492	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10493}
10494
10495type PickupServicesPickupService struct {
10496	// CarrierName: The name of the carrier (e.g., "UPS"). Always present.
10497	CarrierName string `json:"carrierName,omitempty"`
10498
10499	// Country: The CLDR country code of the carrier (e.g., "US"). Always
10500	// present.
10501	Country string `json:"country,omitempty"`
10502
10503	// ServiceName: The name of the pickup service (e.g., "Access point").
10504	// Always present.
10505	ServiceName string `json:"serviceName,omitempty"`
10506
10507	// ForceSendFields is a list of field names (e.g. "CarrierName") to
10508	// unconditionally include in API requests. By default, fields with
10509	// empty or default values are omitted from API requests. However, any
10510	// non-pointer, non-interface field appearing in ForceSendFields will be
10511	// sent to the server regardless of whether the field is empty or not.
10512	// This may be used to include empty fields in Patch requests.
10513	ForceSendFields []string `json:"-"`
10514
10515	// NullFields is a list of field names (e.g. "CarrierName") to include
10516	// in API requests with the JSON null value. By default, fields with
10517	// empty values are omitted from API requests. However, any field with
10518	// an empty value appearing in NullFields will be sent to the server as
10519	// null. It is an error if a field in this list has a non-empty value.
10520	// This may be used to include null fields in Patch requests.
10521	NullFields []string `json:"-"`
10522}
10523
10524func (s *PickupServicesPickupService) MarshalJSON() ([]byte, error) {
10525	type NoMethod PickupServicesPickupService
10526	raw := NoMethod(*s)
10527	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10528}
10529
10530type PosCustomBatchRequest struct {
10531	// Entries: The request entries to be processed in the batch.
10532	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
10533
10534	// ForceSendFields is a list of field names (e.g. "Entries") to
10535	// unconditionally include in API requests. By default, fields with
10536	// empty or default values are omitted from API requests. However, any
10537	// non-pointer, non-interface field appearing in ForceSendFields will be
10538	// sent to the server regardless of whether the field is empty or not.
10539	// This may be used to include empty fields in Patch requests.
10540	ForceSendFields []string `json:"-"`
10541
10542	// NullFields is a list of field names (e.g. "Entries") to include in
10543	// API requests with the JSON null value. By default, fields with empty
10544	// values are omitted from API requests. However, any field with an
10545	// empty value appearing in NullFields will be sent to the server as
10546	// null. It is an error if a field in this list has a non-empty value.
10547	// This may be used to include null fields in Patch requests.
10548	NullFields []string `json:"-"`
10549}
10550
10551func (s *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
10552	type NoMethod PosCustomBatchRequest
10553	raw := NoMethod(*s)
10554	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10555}
10556
10557type PosCustomBatchRequestEntry struct {
10558	// BatchId: An entry ID, unique within the batch request.
10559	BatchId int64 `json:"batchId,omitempty"`
10560
10561	// Inventory: The inventory to submit. This should be set only if the
10562	// method is `inventory`.
10563	Inventory *PosInventory `json:"inventory,omitempty"`
10564
10565	// MerchantId: The ID of the POS data provider.
10566	MerchantId uint64 `json:"merchantId,omitempty,string"`
10567
10568	// Method: The method of the batch entry. Acceptable values are: -
10569	// "delete" - "get" - "insert" - "inventory" - "sale"
10570	Method string `json:"method,omitempty"`
10571
10572	// Sale: The sale information to submit. This should be set only if the
10573	// method is `sale`.
10574	Sale *PosSale `json:"sale,omitempty"`
10575
10576	// Store: The store information to submit. This should be set only if
10577	// the method is `insert`.
10578	Store *PosStore `json:"store,omitempty"`
10579
10580	// StoreCode: The store code. This should be set only if the method is
10581	// `delete` or `get`.
10582	StoreCode string `json:"storeCode,omitempty"`
10583
10584	// TargetMerchantId: The ID of the account for which to get/submit data.
10585	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
10586
10587	// ForceSendFields is a list of field names (e.g. "BatchId") to
10588	// unconditionally include in API requests. By default, fields with
10589	// empty or default values are omitted from API requests. However, any
10590	// non-pointer, non-interface field appearing in ForceSendFields will be
10591	// sent to the server regardless of whether the field is empty or not.
10592	// This may be used to include empty fields in Patch requests.
10593	ForceSendFields []string `json:"-"`
10594
10595	// NullFields is a list of field names (e.g. "BatchId") to include in
10596	// API requests with the JSON null value. By default, fields with empty
10597	// values are omitted from API requests. However, any field with an
10598	// empty value appearing in NullFields will be sent to the server as
10599	// null. It is an error if a field in this list has a non-empty value.
10600	// This may be used to include null fields in Patch requests.
10601	NullFields []string `json:"-"`
10602}
10603
10604func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10605	type NoMethod PosCustomBatchRequestEntry
10606	raw := NoMethod(*s)
10607	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10608}
10609
10610type PosCustomBatchResponse struct {
10611	// Entries: The result of the execution of the batch requests.
10612	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
10613
10614	// Kind: Identifies what kind of resource this is. Value: the fixed
10615	// string "content#posCustomBatchResponse".
10616	Kind string `json:"kind,omitempty"`
10617
10618	// ServerResponse contains the HTTP response code and headers from the
10619	// server.
10620	googleapi.ServerResponse `json:"-"`
10621
10622	// ForceSendFields is a list of field names (e.g. "Entries") to
10623	// unconditionally include in API requests. By default, fields with
10624	// empty or default values are omitted from API requests. However, any
10625	// non-pointer, non-interface field appearing in ForceSendFields will be
10626	// sent to the server regardless of whether the field is empty or not.
10627	// This may be used to include empty fields in Patch requests.
10628	ForceSendFields []string `json:"-"`
10629
10630	// NullFields is a list of field names (e.g. "Entries") to include in
10631	// API requests with the JSON null value. By default, fields with empty
10632	// values are omitted from API requests. However, any field with an
10633	// empty value appearing in NullFields will be sent to the server as
10634	// null. It is an error if a field in this list has a non-empty value.
10635	// This may be used to include null fields in Patch requests.
10636	NullFields []string `json:"-"`
10637}
10638
10639func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
10640	type NoMethod PosCustomBatchResponse
10641	raw := NoMethod(*s)
10642	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10643}
10644
10645type PosCustomBatchResponseEntry struct {
10646	// BatchId: The ID of the request entry to which this entry responds.
10647	BatchId int64 `json:"batchId,omitempty"`
10648
10649	// Errors: A list of errors defined if, and only if, the request failed.
10650	Errors *Errors `json:"errors,omitempty"`
10651
10652	// Inventory: The updated inventory information.
10653	Inventory *PosInventory `json:"inventory,omitempty"`
10654
10655	// Kind: Identifies what kind of resource this is. Value: the fixed
10656	// string "content#posCustomBatchResponseEntry"
10657	Kind string `json:"kind,omitempty"`
10658
10659	// Sale: The updated sale information.
10660	Sale *PosSale `json:"sale,omitempty"`
10661
10662	// Store: The retrieved or updated store information.
10663	Store *PosStore `json:"store,omitempty"`
10664
10665	// ForceSendFields is a list of field names (e.g. "BatchId") to
10666	// unconditionally include in API requests. By default, fields with
10667	// empty or default values are omitted from API requests. However, any
10668	// non-pointer, non-interface field appearing in ForceSendFields will be
10669	// sent to the server regardless of whether the field is empty or not.
10670	// This may be used to include empty fields in Patch requests.
10671	ForceSendFields []string `json:"-"`
10672
10673	// NullFields is a list of field names (e.g. "BatchId") to include in
10674	// API requests with the JSON null value. By default, fields with empty
10675	// values are omitted from API requests. However, any field with an
10676	// empty value appearing in NullFields will be sent to the server as
10677	// null. It is an error if a field in this list has a non-empty value.
10678	// This may be used to include null fields in Patch requests.
10679	NullFields []string `json:"-"`
10680}
10681
10682func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10683	type NoMethod PosCustomBatchResponseEntry
10684	raw := NoMethod(*s)
10685	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10686}
10687
10688type PosDataProviders struct {
10689	// Country: Country code.
10690	Country string `json:"country,omitempty"`
10691
10692	// PosDataProviders: A list of POS data providers.
10693	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
10694
10695	// ForceSendFields is a list of field names (e.g. "Country") to
10696	// unconditionally include in API requests. By default, fields with
10697	// empty or default values are omitted from API requests. However, any
10698	// non-pointer, non-interface field appearing in ForceSendFields will be
10699	// sent to the server regardless of whether the field is empty or not.
10700	// This may be used to include empty fields in Patch requests.
10701	ForceSendFields []string `json:"-"`
10702
10703	// NullFields is a list of field names (e.g. "Country") to include in
10704	// API requests with the JSON null value. By default, fields with empty
10705	// values are omitted from API requests. However, any field with an
10706	// empty value appearing in NullFields will be sent to the server as
10707	// null. It is an error if a field in this list has a non-empty value.
10708	// This may be used to include null fields in Patch requests.
10709	NullFields []string `json:"-"`
10710}
10711
10712func (s *PosDataProviders) MarshalJSON() ([]byte, error) {
10713	type NoMethod PosDataProviders
10714	raw := NoMethod(*s)
10715	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10716}
10717
10718type PosDataProvidersPosDataProvider struct {
10719	// DisplayName: The display name of Pos data Provider.
10720	DisplayName string `json:"displayName,omitempty"`
10721
10722	// FullName: The full name of this POS data Provider.
10723	FullName string `json:"fullName,omitempty"`
10724
10725	// ProviderId: The ID of the account.
10726	ProviderId uint64 `json:"providerId,omitempty,string"`
10727
10728	// ForceSendFields is a list of field names (e.g. "DisplayName") to
10729	// unconditionally include in API requests. By default, fields with
10730	// empty or default values are omitted from API requests. However, any
10731	// non-pointer, non-interface field appearing in ForceSendFields will be
10732	// sent to the server regardless of whether the field is empty or not.
10733	// This may be used to include empty fields in Patch requests.
10734	ForceSendFields []string `json:"-"`
10735
10736	// NullFields is a list of field names (e.g. "DisplayName") to include
10737	// in API requests with the JSON null value. By default, fields with
10738	// empty values are omitted from API requests. However, any field with
10739	// an empty value appearing in NullFields will be sent to the server as
10740	// null. It is an error if a field in this list has a non-empty value.
10741	// This may be used to include null fields in Patch requests.
10742	NullFields []string `json:"-"`
10743}
10744
10745func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
10746	type NoMethod PosDataProvidersPosDataProvider
10747	raw := NoMethod(*s)
10748	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10749}
10750
10751// PosInventory: The absolute quantity of an item available at the given
10752// store.
10753type PosInventory struct {
10754	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10755	// the item.
10756	ContentLanguage string `json:"contentLanguage,omitempty"`
10757
10758	// Gtin: Global Trade Item Number.
10759	Gtin string `json:"gtin,omitempty"`
10760
10761	// ItemId: Required. A unique identifier for the item.
10762	ItemId string `json:"itemId,omitempty"`
10763
10764	// Kind: Identifies what kind of resource this is. Value: the fixed
10765	// string "content#posInventory"
10766	Kind string `json:"kind,omitempty"`
10767
10768	// Price: Required. The current price of the item.
10769	Price *Price `json:"price,omitempty"`
10770
10771	// Quantity: Required. The available quantity of the item.
10772	Quantity int64 `json:"quantity,omitempty,string"`
10773
10774	// StoreCode: Required. The identifier of the merchant's store. Either a
10775	// `storeCode` inserted via the API or the code of the store in Google
10776	// My Business.
10777	StoreCode string `json:"storeCode,omitempty"`
10778
10779	// TargetCountry: Required. The CLDR territory code for the item.
10780	TargetCountry string `json:"targetCountry,omitempty"`
10781
10782	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10783	Timestamp string `json:"timestamp,omitempty"`
10784
10785	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10786	// unconditionally include in API requests. By default, fields with
10787	// empty or default values are omitted from API requests. However, any
10788	// non-pointer, non-interface field appearing in ForceSendFields will be
10789	// sent to the server regardless of whether the field is empty or not.
10790	// This may be used to include empty fields in Patch requests.
10791	ForceSendFields []string `json:"-"`
10792
10793	// NullFields is a list of field names (e.g. "ContentLanguage") to
10794	// include in API requests with the JSON null value. By default, fields
10795	// with empty values are omitted from API requests. However, any field
10796	// with an empty value appearing in NullFields will be sent to the
10797	// server as null. It is an error if a field in this list has a
10798	// non-empty value. This may be used to include null fields in Patch
10799	// requests.
10800	NullFields []string `json:"-"`
10801}
10802
10803func (s *PosInventory) MarshalJSON() ([]byte, error) {
10804	type NoMethod PosInventory
10805	raw := NoMethod(*s)
10806	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10807}
10808
10809type PosInventoryRequest struct {
10810	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10811	// the item.
10812	ContentLanguage string `json:"contentLanguage,omitempty"`
10813
10814	// Gtin: Global Trade Item Number.
10815	Gtin string `json:"gtin,omitempty"`
10816
10817	// ItemId: Required. A unique identifier for the item.
10818	ItemId string `json:"itemId,omitempty"`
10819
10820	// Price: Required. The current price of the item.
10821	Price *Price `json:"price,omitempty"`
10822
10823	// Quantity: Required. The available quantity of the item.
10824	Quantity int64 `json:"quantity,omitempty,string"`
10825
10826	// StoreCode: Required. The identifier of the merchant's store. Either a
10827	// `storeCode` inserted via the API or the code of the store in Google
10828	// My Business.
10829	StoreCode string `json:"storeCode,omitempty"`
10830
10831	// TargetCountry: Required. The CLDR territory code for the item.
10832	TargetCountry string `json:"targetCountry,omitempty"`
10833
10834	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10835	Timestamp string `json:"timestamp,omitempty"`
10836
10837	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10838	// unconditionally include in API requests. By default, fields with
10839	// empty or default values are omitted from API requests. However, any
10840	// non-pointer, non-interface field appearing in ForceSendFields will be
10841	// sent to the server regardless of whether the field is empty or not.
10842	// This may be used to include empty fields in Patch requests.
10843	ForceSendFields []string `json:"-"`
10844
10845	// NullFields is a list of field names (e.g. "ContentLanguage") to
10846	// include in API requests with the JSON null value. By default, fields
10847	// with empty values are omitted from API requests. However, any field
10848	// with an empty value appearing in NullFields will be sent to the
10849	// server as null. It is an error if a field in this list has a
10850	// non-empty value. This may be used to include null fields in Patch
10851	// requests.
10852	NullFields []string `json:"-"`
10853}
10854
10855func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
10856	type NoMethod PosInventoryRequest
10857	raw := NoMethod(*s)
10858	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10859}
10860
10861type PosInventoryResponse struct {
10862	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10863	// the item.
10864	ContentLanguage string `json:"contentLanguage,omitempty"`
10865
10866	// Gtin: Global Trade Item Number.
10867	Gtin string `json:"gtin,omitempty"`
10868
10869	// ItemId: Required. A unique identifier for the item.
10870	ItemId string `json:"itemId,omitempty"`
10871
10872	// Kind: Identifies what kind of resource this is. Value: the fixed
10873	// string "content#posInventoryResponse".
10874	Kind string `json:"kind,omitempty"`
10875
10876	// Price: Required. The current price of the item.
10877	Price *Price `json:"price,omitempty"`
10878
10879	// Quantity: Required. The available quantity of the item.
10880	Quantity int64 `json:"quantity,omitempty,string"`
10881
10882	// StoreCode: Required. The identifier of the merchant's store. Either a
10883	// `storeCode` inserted via the API or the code of the store in Google
10884	// My Business.
10885	StoreCode string `json:"storeCode,omitempty"`
10886
10887	// TargetCountry: Required. The CLDR territory code for the item.
10888	TargetCountry string `json:"targetCountry,omitempty"`
10889
10890	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10891	Timestamp string `json:"timestamp,omitempty"`
10892
10893	// ServerResponse contains the HTTP response code and headers from the
10894	// server.
10895	googleapi.ServerResponse `json:"-"`
10896
10897	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10898	// unconditionally include in API requests. By default, fields with
10899	// empty or default values are omitted from API requests. However, any
10900	// non-pointer, non-interface field appearing in ForceSendFields will be
10901	// sent to the server regardless of whether the field is empty or not.
10902	// This may be used to include empty fields in Patch requests.
10903	ForceSendFields []string `json:"-"`
10904
10905	// NullFields is a list of field names (e.g. "ContentLanguage") to
10906	// include in API requests with the JSON null value. By default, fields
10907	// with empty values are omitted from API requests. However, any field
10908	// with an empty value appearing in NullFields will be sent to the
10909	// server as null. It is an error if a field in this list has a
10910	// non-empty value. This may be used to include null fields in Patch
10911	// requests.
10912	NullFields []string `json:"-"`
10913}
10914
10915func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
10916	type NoMethod PosInventoryResponse
10917	raw := NoMethod(*s)
10918	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10919}
10920
10921type PosListResponse struct {
10922	// Kind: Identifies what kind of resource this is. Value: the fixed
10923	// string "content#posListResponse".
10924	Kind string `json:"kind,omitempty"`
10925
10926	Resources []*PosStore `json:"resources,omitempty"`
10927
10928	// ServerResponse contains the HTTP response code and headers from the
10929	// server.
10930	googleapi.ServerResponse `json:"-"`
10931
10932	// ForceSendFields is a list of field names (e.g. "Kind") to
10933	// unconditionally include in API requests. By default, fields with
10934	// empty or default values are omitted from API requests. However, any
10935	// non-pointer, non-interface field appearing in ForceSendFields will be
10936	// sent to the server regardless of whether the field is empty or not.
10937	// This may be used to include empty fields in Patch requests.
10938	ForceSendFields []string `json:"-"`
10939
10940	// NullFields is a list of field names (e.g. "Kind") to include in API
10941	// requests with the JSON null value. By default, fields with empty
10942	// values are omitted from API requests. However, any field with an
10943	// empty value appearing in NullFields will be sent to the server as
10944	// null. It is an error if a field in this list has a non-empty value.
10945	// This may be used to include null fields in Patch requests.
10946	NullFields []string `json:"-"`
10947}
10948
10949func (s *PosListResponse) MarshalJSON() ([]byte, error) {
10950	type NoMethod PosListResponse
10951	raw := NoMethod(*s)
10952	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10953}
10954
10955// PosSale: The change of the available quantity of an item at the given
10956// store.
10957type PosSale struct {
10958	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10959	// the item.
10960	ContentLanguage string `json:"contentLanguage,omitempty"`
10961
10962	// Gtin: Global Trade Item Number.
10963	Gtin string `json:"gtin,omitempty"`
10964
10965	// ItemId: Required. A unique identifier for the item.
10966	ItemId string `json:"itemId,omitempty"`
10967
10968	// Kind: Identifies what kind of resource this is. Value: the fixed
10969	// string "content#posSale"
10970	Kind string `json:"kind,omitempty"`
10971
10972	// Price: Required. The price of the item.
10973	Price *Price `json:"price,omitempty"`
10974
10975	// Quantity: Required. The relative change of the available quantity.
10976	// Negative for items returned.
10977	Quantity int64 `json:"quantity,omitempty,string"`
10978
10979	// SaleId: A unique ID to group items from the same sale event.
10980	SaleId string `json:"saleId,omitempty"`
10981
10982	// StoreCode: Required. The identifier of the merchant's store. Either a
10983	// `storeCode` inserted via the API or the code of the store in Google
10984	// My Business.
10985	StoreCode string `json:"storeCode,omitempty"`
10986
10987	// TargetCountry: Required. The CLDR territory code for the item.
10988	TargetCountry string `json:"targetCountry,omitempty"`
10989
10990	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10991	Timestamp string `json:"timestamp,omitempty"`
10992
10993	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10994	// unconditionally include in API requests. By default, fields with
10995	// empty or default values are omitted from API requests. However, any
10996	// non-pointer, non-interface field appearing in ForceSendFields will be
10997	// sent to the server regardless of whether the field is empty or not.
10998	// This may be used to include empty fields in Patch requests.
10999	ForceSendFields []string `json:"-"`
11000
11001	// NullFields is a list of field names (e.g. "ContentLanguage") to
11002	// include in API requests with the JSON null value. By default, fields
11003	// with empty values are omitted from API requests. However, any field
11004	// with an empty value appearing in NullFields will be sent to the
11005	// server as null. It is an error if a field in this list has a
11006	// non-empty value. This may be used to include null fields in Patch
11007	// requests.
11008	NullFields []string `json:"-"`
11009}
11010
11011func (s *PosSale) MarshalJSON() ([]byte, error) {
11012	type NoMethod PosSale
11013	raw := NoMethod(*s)
11014	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11015}
11016
11017type PosSaleRequest struct {
11018	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11019	// the item.
11020	ContentLanguage string `json:"contentLanguage,omitempty"`
11021
11022	// Gtin: Global Trade Item Number.
11023	Gtin string `json:"gtin,omitempty"`
11024
11025	// ItemId: Required. A unique identifier for the item.
11026	ItemId string `json:"itemId,omitempty"`
11027
11028	// Price: Required. The price of the item.
11029	Price *Price `json:"price,omitempty"`
11030
11031	// Quantity: Required. The relative change of the available quantity.
11032	// Negative for items returned.
11033	Quantity int64 `json:"quantity,omitempty,string"`
11034
11035	// SaleId: A unique ID to group items from the same sale event.
11036	SaleId string `json:"saleId,omitempty"`
11037
11038	// StoreCode: Required. The identifier of the merchant's store. Either a
11039	// `storeCode` inserted via the API or the code of the store in Google
11040	// My Business.
11041	StoreCode string `json:"storeCode,omitempty"`
11042
11043	// TargetCountry: Required. The CLDR territory code for the item.
11044	TargetCountry string `json:"targetCountry,omitempty"`
11045
11046	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
11047	Timestamp string `json:"timestamp,omitempty"`
11048
11049	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
11050	// unconditionally include in API requests. By default, fields with
11051	// empty or default values are omitted from API requests. However, any
11052	// non-pointer, non-interface field appearing in ForceSendFields will be
11053	// sent to the server regardless of whether the field is empty or not.
11054	// This may be used to include empty fields in Patch requests.
11055	ForceSendFields []string `json:"-"`
11056
11057	// NullFields is a list of field names (e.g. "ContentLanguage") to
11058	// include in API requests with the JSON null value. By default, fields
11059	// with empty values are omitted from API requests. However, any field
11060	// with an empty value appearing in NullFields will be sent to the
11061	// server as null. It is an error if a field in this list has a
11062	// non-empty value. This may be used to include null fields in Patch
11063	// requests.
11064	NullFields []string `json:"-"`
11065}
11066
11067func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
11068	type NoMethod PosSaleRequest
11069	raw := NoMethod(*s)
11070	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11071}
11072
11073type PosSaleResponse struct {
11074	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11075	// the item.
11076	ContentLanguage string `json:"contentLanguage,omitempty"`
11077
11078	// Gtin: Global Trade Item Number.
11079	Gtin string `json:"gtin,omitempty"`
11080
11081	// ItemId: Required. A unique identifier for the item.
11082	ItemId string `json:"itemId,omitempty"`
11083
11084	// Kind: Identifies what kind of resource this is. Value: the fixed
11085	// string "content#posSaleResponse".
11086	Kind string `json:"kind,omitempty"`
11087
11088	// Price: Required. The price of the item.
11089	Price *Price `json:"price,omitempty"`
11090
11091	// Quantity: Required. The relative change of the available quantity.
11092	// Negative for items returned.
11093	Quantity int64 `json:"quantity,omitempty,string"`
11094
11095	// SaleId: A unique ID to group items from the same sale event.
11096	SaleId string `json:"saleId,omitempty"`
11097
11098	// StoreCode: Required. The identifier of the merchant's store. Either a
11099	// `storeCode` inserted via the API or the code of the store in Google
11100	// My Business.
11101	StoreCode string `json:"storeCode,omitempty"`
11102
11103	// TargetCountry: Required. The CLDR territory code for the item.
11104	TargetCountry string `json:"targetCountry,omitempty"`
11105
11106	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
11107	Timestamp string `json:"timestamp,omitempty"`
11108
11109	// ServerResponse contains the HTTP response code and headers from the
11110	// server.
11111	googleapi.ServerResponse `json:"-"`
11112
11113	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
11114	// unconditionally include in API requests. By default, fields with
11115	// empty or default values are omitted from API requests. However, any
11116	// non-pointer, non-interface field appearing in ForceSendFields will be
11117	// sent to the server regardless of whether the field is empty or not.
11118	// This may be used to include empty fields in Patch requests.
11119	ForceSendFields []string `json:"-"`
11120
11121	// NullFields is a list of field names (e.g. "ContentLanguage") to
11122	// include in API requests with the JSON null value. By default, fields
11123	// with empty values are omitted from API requests. However, any field
11124	// with an empty value appearing in NullFields will be sent to the
11125	// server as null. It is an error if a field in this list has a
11126	// non-empty value. This may be used to include null fields in Patch
11127	// requests.
11128	NullFields []string `json:"-"`
11129}
11130
11131func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
11132	type NoMethod PosSaleResponse
11133	raw := NoMethod(*s)
11134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11135}
11136
11137// PosStore: Store resource.
11138type PosStore struct {
11139	// Kind: Identifies what kind of resource this is. Value: the fixed
11140	// string "content#posStore"
11141	Kind string `json:"kind,omitempty"`
11142
11143	// StoreAddress: Required. The street address of the store.
11144	StoreAddress string `json:"storeAddress,omitempty"`
11145
11146	// StoreCode: Required. A store identifier that is unique for the given
11147	// merchant.
11148	StoreCode string `json:"storeCode,omitempty"`
11149
11150	// ServerResponse contains the HTTP response code and headers from the
11151	// server.
11152	googleapi.ServerResponse `json:"-"`
11153
11154	// ForceSendFields is a list of field names (e.g. "Kind") to
11155	// unconditionally include in API requests. By default, fields with
11156	// empty or default values are omitted from API requests. However, any
11157	// non-pointer, non-interface field appearing in ForceSendFields will be
11158	// sent to the server regardless of whether the field is empty or not.
11159	// This may be used to include empty fields in Patch requests.
11160	ForceSendFields []string `json:"-"`
11161
11162	// NullFields is a list of field names (e.g. "Kind") to include in API
11163	// requests with the JSON null value. By default, fields with empty
11164	// values are omitted from API requests. However, any field with an
11165	// empty value appearing in NullFields will be sent to the server as
11166	// null. It is an error if a field in this list has a non-empty value.
11167	// This may be used to include null fields in Patch requests.
11168	NullFields []string `json:"-"`
11169}
11170
11171func (s *PosStore) MarshalJSON() ([]byte, error) {
11172	type NoMethod PosStore
11173	raw := NoMethod(*s)
11174	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11175}
11176
11177type PostalCodeGroup struct {
11178	// Country: The CLDR territory code of the country the postal code group
11179	// applies to. Required.
11180	Country string `json:"country,omitempty"`
11181
11182	// Name: The name of the postal code group, referred to in headers.
11183	// Required.
11184	Name string `json:"name,omitempty"`
11185
11186	// PostalCodeRanges: A range of postal codes. Required.
11187	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
11188
11189	// ForceSendFields is a list of field names (e.g. "Country") to
11190	// unconditionally include in API requests. By default, fields with
11191	// empty or default values are omitted from API requests. However, any
11192	// non-pointer, non-interface field appearing in ForceSendFields will be
11193	// sent to the server regardless of whether the field is empty or not.
11194	// This may be used to include empty fields in Patch requests.
11195	ForceSendFields []string `json:"-"`
11196
11197	// NullFields is a list of field names (e.g. "Country") to include in
11198	// API requests with the JSON null value. By default, fields with empty
11199	// values are omitted from API requests. However, any field with an
11200	// empty value appearing in NullFields will be sent to the server as
11201	// null. It is an error if a field in this list has a non-empty value.
11202	// This may be used to include null fields in Patch requests.
11203	NullFields []string `json:"-"`
11204}
11205
11206func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
11207	type NoMethod PostalCodeGroup
11208	raw := NoMethod(*s)
11209	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11210}
11211
11212type PostalCodeRange struct {
11213	// PostalCodeRangeBegin: A postal code or a pattern of the form
11214	// `prefix*` denoting the inclusive lower bound of the range defining
11215	// the area. Examples values: "94108", "9410*", "9*". Required.
11216	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
11217
11218	// PostalCodeRangeEnd: A postal code or a pattern of the form `prefix*`
11219	// denoting the inclusive upper bound of the range defining the area. It
11220	// must have the same length as `postalCodeRangeBegin`: if
11221	// `postalCodeRangeBegin` is a postal code then `postalCodeRangeEnd`
11222	// must be a postal code too; if `postalCodeRangeBegin` is a pattern
11223	// then `postalCodeRangeEnd` must be a pattern with the same prefix
11224	// length. Optional: if not set, then the area is defined as being all
11225	// the postal codes matching `postalCodeRangeBegin`.
11226	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
11227
11228	// ForceSendFields is a list of field names (e.g.
11229	// "PostalCodeRangeBegin") to unconditionally include in API requests.
11230	// By default, fields with empty or default values are omitted from API
11231	// requests. However, any non-pointer, non-interface field appearing in
11232	// ForceSendFields will be sent to the server regardless of whether the
11233	// field is empty or not. This may be used to include empty fields in
11234	// Patch requests.
11235	ForceSendFields []string `json:"-"`
11236
11237	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
11238	// include in API requests with the JSON null value. By default, fields
11239	// with empty values are omitted from API requests. However, any field
11240	// with an empty value appearing in NullFields will be sent to the
11241	// server as null. It is an error if a field in this list has a
11242	// non-empty value. This may be used to include null fields in Patch
11243	// requests.
11244	NullFields []string `json:"-"`
11245}
11246
11247func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
11248	type NoMethod PostalCodeRange
11249	raw := NoMethod(*s)
11250	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11251}
11252
11253type Price struct {
11254	// Currency: The currency of the price.
11255	Currency string `json:"currency,omitempty"`
11256
11257	// Value: The price represented as a number.
11258	Value string `json:"value,omitempty"`
11259
11260	// ForceSendFields is a list of field names (e.g. "Currency") to
11261	// unconditionally include in API requests. By default, fields with
11262	// empty or default values are omitted from API requests. However, any
11263	// non-pointer, non-interface field appearing in ForceSendFields will be
11264	// sent to the server regardless of whether the field is empty or not.
11265	// This may be used to include empty fields in Patch requests.
11266	ForceSendFields []string `json:"-"`
11267
11268	// NullFields is a list of field names (e.g. "Currency") to include in
11269	// API requests with the JSON null value. By default, fields with empty
11270	// values are omitted from API requests. However, any field with an
11271	// empty value appearing in NullFields will be sent to the server as
11272	// null. It is an error if a field in this list has a non-empty value.
11273	// This may be used to include null fields in Patch requests.
11274	NullFields []string `json:"-"`
11275}
11276
11277func (s *Price) MarshalJSON() ([]byte, error) {
11278	type NoMethod Price
11279	raw := NoMethod(*s)
11280	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11281}
11282
11283// PriceAmount: The price represented as a number and currency.
11284type PriceAmount struct {
11285	// Currency: The currency of the price.
11286	Currency string `json:"currency,omitempty"`
11287
11288	// Value: The price represented as a number.
11289	Value string `json:"value,omitempty"`
11290
11291	// ForceSendFields is a list of field names (e.g. "Currency") to
11292	// unconditionally include in API requests. By default, fields with
11293	// empty or default values are omitted from API requests. However, any
11294	// non-pointer, non-interface field appearing in ForceSendFields will be
11295	// sent to the server regardless of whether the field is empty or not.
11296	// This may be used to include empty fields in Patch requests.
11297	ForceSendFields []string `json:"-"`
11298
11299	// NullFields is a list of field names (e.g. "Currency") to include in
11300	// API requests with the JSON null value. By default, fields with empty
11301	// values are omitted from API requests. However, any field with an
11302	// empty value appearing in NullFields will be sent to the server as
11303	// null. It is an error if a field in this list has a non-empty value.
11304	// This may be used to include null fields in Patch requests.
11305	NullFields []string `json:"-"`
11306}
11307
11308func (s *PriceAmount) MarshalJSON() ([]byte, error) {
11309	type NoMethod PriceAmount
11310	raw := NoMethod(*s)
11311	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11312}
11313
11314// Product:  Required product attributes are primarily defined by the
11315// products data specification. See the Products Data Specification Help
11316// Center article for information. Product data. After inserting,
11317// updating, or deleting a product, it may take several minutes before
11318// changes take effect.
11319type Product struct {
11320	// AdditionalImageLinks: Additional URLs of images of the item.
11321	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
11322
11323	// AdditionalSizeType: Additional cut of the item. Used together with
11324	// size_type to represent combined size types for apparel items.
11325	AdditionalSizeType string `json:"additionalSizeType,omitempty"`
11326
11327	// AdsGrouping: Used to group items in an arbitrary way. Only for CPA%,
11328	// discouraged otherwise.
11329	AdsGrouping string `json:"adsGrouping,omitempty"`
11330
11331	// AdsLabels: Similar to ads_grouping, but only works on CPC.
11332	AdsLabels []string `json:"adsLabels,omitempty"`
11333
11334	// AdsRedirect: Allows advertisers to override the item URL when the
11335	// product is shown within the context of Product Ads.
11336	AdsRedirect string `json:"adsRedirect,omitempty"`
11337
11338	// Adult: Should be set to true if the item is targeted towards adults.
11339	Adult bool `json:"adult,omitempty"`
11340
11341	// AgeGroup: Target age group of the item.
11342	AgeGroup string `json:"ageGroup,omitempty"`
11343
11344	// Availability: Availability status of the item.
11345	Availability string `json:"availability,omitempty"`
11346
11347	// AvailabilityDate: The day a pre-ordered product becomes available for
11348	// delivery, in ISO 8601 format.
11349	AvailabilityDate string `json:"availabilityDate,omitempty"`
11350
11351	// Brand: Brand of the item.
11352	Brand string `json:"brand,omitempty"`
11353
11354	// CanonicalLink: URL for the canonical version of your item's landing
11355	// page.
11356	CanonicalLink string `json:"canonicalLink,omitempty"`
11357
11358	// Channel: Required. The item's channel (online or local). Acceptable
11359	// values are: - "local" - "online"
11360	Channel string `json:"channel,omitempty"`
11361
11362	// Color: Color of the item.
11363	Color string `json:"color,omitempty"`
11364
11365	// Condition: Condition or state of the item.
11366	Condition string `json:"condition,omitempty"`
11367
11368	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11369	// the item.
11370	ContentLanguage string `json:"contentLanguage,omitempty"`
11371
11372	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
11373	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
11374
11375	// CustomAttributes: A list of custom (merchant-provided) attributes. It
11376	// can also be used for submitting any attribute of the feed
11377	// specification in its generic form (e.g., `{ "name": "size type",
11378	// "value": "regular" }`). This is useful for submitting attributes not
11379	// explicitly exposed by the API, such as additional attributes used for
11380	// Buy on Google (formerly known as Shopping Actions).
11381	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
11382
11383	// CustomLabel0: Custom label 0 for custom grouping of items in a
11384	// Shopping campaign.
11385	CustomLabel0 string `json:"customLabel0,omitempty"`
11386
11387	// CustomLabel1: Custom label 1 for custom grouping of items in a
11388	// Shopping campaign.
11389	CustomLabel1 string `json:"customLabel1,omitempty"`
11390
11391	// CustomLabel2: Custom label 2 for custom grouping of items in a
11392	// Shopping campaign.
11393	CustomLabel2 string `json:"customLabel2,omitempty"`
11394
11395	// CustomLabel3: Custom label 3 for custom grouping of items in a
11396	// Shopping campaign.
11397	CustomLabel3 string `json:"customLabel3,omitempty"`
11398
11399	// CustomLabel4: Custom label 4 for custom grouping of items in a
11400	// Shopping campaign.
11401	CustomLabel4 string `json:"customLabel4,omitempty"`
11402
11403	// Description: Description of the item.
11404	Description string `json:"description,omitempty"`
11405
11406	// DisplayAdsId: An identifier for an item for dynamic remarketing
11407	// campaigns.
11408	DisplayAdsId string `json:"displayAdsId,omitempty"`
11409
11410	// DisplayAdsLink: URL directly to your item's landing page for dynamic
11411	// remarketing campaigns.
11412	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
11413
11414	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
11415	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
11416
11417	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
11418	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
11419
11420	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
11421	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
11422
11423	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
11424	// directive 2010/30/EU.
11425	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
11426
11427	// ExcludedDestinations: The list of destinations to exclude for this
11428	// target (corresponds to unchecked check boxes in Merchant Center).
11429	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
11430
11431	// ExpirationDate: Date on which the item should expire, as specified
11432	// upon insertion, in ISO 8601 format. The actual expiration date in
11433	// Google Shopping is exposed in `productstatuses` as
11434	// `googleExpirationDate` and might be earlier if `expirationDate` is
11435	// too far in the future.
11436	ExpirationDate string `json:"expirationDate,omitempty"`
11437
11438	// Gender: Target gender of the item.
11439	Gender string `json:"gender,omitempty"`
11440
11441	// GoogleProductCategory: Google's category of the item (see Google
11442	// product taxonomy
11443	// (https://support.google.com/merchants/answer/1705911)). When querying
11444	// products, this field will contain the user provided value. There is
11445	// currently no way to get back the auto assigned google product
11446	// categories through the API.
11447	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
11448
11449	// Gtin: Global Trade Item Number (GTIN) of the item.
11450	Gtin string `json:"gtin,omitempty"`
11451
11452	// Id: The REST ID of the product. Content API methods that operate on
11453	// products take this as their `productId` parameter. The REST ID for a
11454	// product is of the form channel:contentLanguage: targetCountry:
11455	// offerId.
11456	Id string `json:"id,omitempty"`
11457
11458	// IdentifierExists: False when the item does not have unique product
11459	// identifiers appropriate to its category, such as GTIN, MPN, and
11460	// brand. Required according to the Unique Product Identifier Rules for
11461	// all target countries except for Canada.
11462	IdentifierExists bool `json:"identifierExists,omitempty"`
11463
11464	// ImageLink: URL of an image of the item.
11465	ImageLink string `json:"imageLink,omitempty"`
11466
11467	// IncludedDestinations: The list of destinations to include for this
11468	// target (corresponds to checked check boxes in Merchant Center).
11469	// Default destinations are always included unless provided in
11470	// `excludedDestinations`.
11471	IncludedDestinations []string `json:"includedDestinations,omitempty"`
11472
11473	// Installment: Number and amount of installments to pay for an item.
11474	Installment *Installment `json:"installment,omitempty"`
11475
11476	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
11477	// a custom grouping of different products sold by a merchant for a
11478	// single price.
11479	IsBundle bool `json:"isBundle,omitempty"`
11480
11481	// ItemGroupId: Shared identifier for all variants of the same product.
11482	ItemGroupId string `json:"itemGroupId,omitempty"`
11483
11484	// Kind: Identifies what kind of resource this is. Value: the fixed
11485	// string "content#product"
11486	Kind string `json:"kind,omitempty"`
11487
11488	// Link: URL directly linking to your item's page on your website.
11489	Link string `json:"link,omitempty"`
11490
11491	// LinkTemplate: URL template for merchant hosted local storefront.
11492	LinkTemplate string `json:"linkTemplate,omitempty"`
11493
11494	// LoyaltyPoints: Loyalty points that users receive after purchasing the
11495	// item. Japan only.
11496	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
11497
11498	// Material: The material of which the item is made.
11499	Material string `json:"material,omitempty"`
11500
11501	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
11502	// EU directive 2010/30/EU.
11503	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
11504
11505	// MaxHandlingTime: Maximal product handling time (in business days).
11506	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
11507
11508	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
11509	// EU directive 2010/30/EU.
11510	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
11511
11512	// MinHandlingTime: Minimal product handling time (in business days).
11513	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
11514
11515	// MobileLink: URL for the mobile-optimized version of your item's
11516	// landing page.
11517	MobileLink string `json:"mobileLink,omitempty"`
11518
11519	// MobileLinkTemplate: URL template for merchant hosted local storefront
11520	// optimized for mobile devices.
11521	MobileLinkTemplate string `json:"mobileLinkTemplate,omitempty"`
11522
11523	// Mpn: Manufacturer Part Number (MPN) of the item.
11524	Mpn string `json:"mpn,omitempty"`
11525
11526	// Multipack: The number of identical products in a merchant-defined
11527	// multipack.
11528	Multipack int64 `json:"multipack,omitempty,string"`
11529
11530	// OfferId: Required. A unique identifier for the item. Leading and
11531	// trailing whitespaces are stripped and multiple whitespaces are
11532	// replaced by a single whitespace upon submission. Only valid unicode
11533	// characters are accepted. See the products feed specification for
11534	// details. *Note:* Content API methods that operate on products take
11535	// the REST ID of the product, *not* this identifier.
11536	OfferId string `json:"offerId,omitempty"`
11537
11538	// Pattern: The item's pattern (e.g. polka dots).
11539	Pattern string `json:"pattern,omitempty"`
11540
11541	// PickupMethod: The pick up option for the item. Acceptable values are:
11542	// - "buy" - "reserve" - "ship to store" - "not supported"
11543	PickupMethod string `json:"pickupMethod,omitempty"`
11544
11545	// PickupSla: Item store pickup timeline. Acceptable values are: -
11546	// "same day" - "next day" - "2-day" - "3-day" - "4-day" -
11547	// "5-day" - "6-day" - "7-day" - "multi-week"
11548	PickupSla string `json:"pickupSla,omitempty"`
11549
11550	// Price: Price of the item.
11551	Price *Price `json:"price,omitempty"`
11552
11553	// ProductDetails: Technical specification or additional product
11554	// details.
11555	ProductDetails []*ProductProductDetail `json:"productDetails,omitempty"`
11556
11557	// ProductHeight: The height of the product in the units provided. The
11558	// value must be between 0 (exclusive) and 3000 (inclusive).
11559	ProductHeight *ProductDimension `json:"productHeight,omitempty"`
11560
11561	// ProductHighlights: Bullet points describing the most relevant
11562	// highlights of a product.
11563	ProductHighlights []string `json:"productHighlights,omitempty"`
11564
11565	// ProductLength: The length of the product in the units provided. The
11566	// value must be between 0 (exclusive) and 3000 (inclusive).
11567	ProductLength *ProductDimension `json:"productLength,omitempty"`
11568
11569	// ProductTypes: Categories of the item (formatted as in products data
11570	// specification).
11571	ProductTypes []string `json:"productTypes,omitempty"`
11572
11573	// ProductWeight: The weight of the product in the units provided. The
11574	// value must be between 0 (exclusive) and 2000 (inclusive).
11575	ProductWeight *ProductWeight `json:"productWeight,omitempty"`
11576
11577	// ProductWidth: The width of the product in the units provided. The
11578	// value must be between 0 (exclusive) and 3000 (inclusive).
11579	ProductWidth *ProductDimension `json:"productWidth,omitempty"`
11580
11581	// PromotionIds: The unique ID of a promotion.
11582	PromotionIds []string `json:"promotionIds,omitempty"`
11583
11584	// SalePrice: Advertised sale price of the item.
11585	SalePrice *Price `json:"salePrice,omitempty"`
11586
11587	// SalePriceEffectiveDate: Date range during which the item is on sale
11588	// (see products data specification ).
11589	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
11590
11591	// SellOnGoogleQuantity: The quantity of the product that is available
11592	// for selling on Google. Supported only for online products.
11593	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
11594
11595	// Shipping: Shipping rules.
11596	Shipping []*ProductShipping `json:"shipping,omitempty"`
11597
11598	// ShippingHeight: Height of the item for shipping.
11599	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
11600
11601	// ShippingLabel: The shipping label of the product, used to group
11602	// product in account-level shipping rules.
11603	ShippingLabel string `json:"shippingLabel,omitempty"`
11604
11605	// ShippingLength: Length of the item for shipping.
11606	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
11607
11608	// ShippingWeight: Weight of the item for shipping.
11609	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
11610
11611	// ShippingWidth: Width of the item for shipping.
11612	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
11613
11614	// ShoppingAdsExcludedCountries: List of country codes (ISO 3166-1
11615	// alpha-2) to exclude the offer from Shopping Ads destination.
11616	// Countries from this list are removed from countries configured in MC
11617	// feed settings.
11618	ShoppingAdsExcludedCountries []string `json:"shoppingAdsExcludedCountries,omitempty"`
11619
11620	// SizeSystem: System in which the size is specified. Recommended for
11621	// apparel items.
11622	SizeSystem string `json:"sizeSystem,omitempty"`
11623
11624	// SizeType: The cut of the item. Recommended for apparel items.
11625	SizeType string `json:"sizeType,omitempty"`
11626
11627	// Sizes: Size of the item. Only one value is allowed. For variants with
11628	// different sizes, insert a separate product for each size with the
11629	// same `itemGroupId` value (see size definition).
11630	Sizes []string `json:"sizes,omitempty"`
11631
11632	// Source: The source of the offer, i.e., how the offer was created.
11633	// Acceptable values are: - "api" - "crawl" - "feed"
11634	Source string `json:"source,omitempty"`
11635
11636	// SubscriptionCost: Number of periods (months or years) and amount of
11637	// payment per period for an item with an associated subscription
11638	// contract.
11639	SubscriptionCost *ProductSubscriptionCost `json:"subscriptionCost,omitempty"`
11640
11641	// TargetCountry: Required. The CLDR territory code for the item.
11642	TargetCountry string `json:"targetCountry,omitempty"`
11643
11644	// TaxCategory: The tax category of the product, used to configure
11645	// detailed tax nexus in account-level tax settings.
11646	TaxCategory string `json:"taxCategory,omitempty"`
11647
11648	// Taxes: Tax information.
11649	Taxes []*ProductTax `json:"taxes,omitempty"`
11650
11651	// Title: Title of the item.
11652	Title string `json:"title,omitempty"`
11653
11654	// TransitTimeLabel: The transit time label of the product, used to
11655	// group product in account-level transit time tables.
11656	TransitTimeLabel string `json:"transitTimeLabel,omitempty"`
11657
11658	// UnitPricingBaseMeasure: The preference of the denominator of the unit
11659	// price.
11660	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
11661
11662	// UnitPricingMeasure: The measure and dimension of an item.
11663	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
11664
11665	// ServerResponse contains the HTTP response code and headers from the
11666	// server.
11667	googleapi.ServerResponse `json:"-"`
11668
11669	// ForceSendFields is a list of field names (e.g.
11670	// "AdditionalImageLinks") to unconditionally include in API requests.
11671	// By default, fields with empty or default values are omitted from API
11672	// requests. However, any non-pointer, non-interface field appearing in
11673	// ForceSendFields will be sent to the server regardless of whether the
11674	// field is empty or not. This may be used to include empty fields in
11675	// Patch requests.
11676	ForceSendFields []string `json:"-"`
11677
11678	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
11679	// include in API requests with the JSON null value. By default, fields
11680	// with empty values are omitted from API requests. However, any field
11681	// with an empty value appearing in NullFields will be sent to the
11682	// server as null. It is an error if a field in this list has a
11683	// non-empty value. This may be used to include null fields in Patch
11684	// requests.
11685	NullFields []string `json:"-"`
11686}
11687
11688func (s *Product) MarshalJSON() ([]byte, error) {
11689	type NoMethod Product
11690	raw := NoMethod(*s)
11691	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11692}
11693
11694func (s *Product) UnmarshalJSON(data []byte) error {
11695	type NoMethod Product
11696	var s1 struct {
11697		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
11698		*NoMethod
11699	}
11700	s1.NoMethod = (*NoMethod)(s)
11701	if err := json.Unmarshal(data, &s1); err != nil {
11702		return err
11703	}
11704	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
11705	return nil
11706}
11707
11708type ProductAmount struct {
11709	// PriceAmount: The pre-tax or post-tax price depending on the location
11710	// of the order.
11711	PriceAmount *Price `json:"priceAmount,omitempty"`
11712
11713	// RemittedTaxAmount: Remitted tax value.
11714	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
11715
11716	// TaxAmount: Tax value.
11717	TaxAmount *Price `json:"taxAmount,omitempty"`
11718
11719	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
11720	// unconditionally include in API requests. By default, fields with
11721	// empty or default values are omitted from API requests. However, any
11722	// non-pointer, non-interface field appearing in ForceSendFields will be
11723	// sent to the server regardless of whether the field is empty or not.
11724	// This may be used to include empty fields in Patch requests.
11725	ForceSendFields []string `json:"-"`
11726
11727	// NullFields is a list of field names (e.g. "PriceAmount") to include
11728	// in API requests with the JSON null value. By default, fields with
11729	// empty values are omitted from API requests. However, any field with
11730	// an empty value appearing in NullFields will be sent to the server as
11731	// null. It is an error if a field in this list has a non-empty value.
11732	// This may be used to include null fields in Patch requests.
11733	NullFields []string `json:"-"`
11734}
11735
11736func (s *ProductAmount) MarshalJSON() ([]byte, error) {
11737	type NoMethod ProductAmount
11738	raw := NoMethod(*s)
11739	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11740}
11741
11742type ProductDimension struct {
11743	// Unit: Required. The length units. Acceptable values are: - "in" -
11744	// "cm"
11745	Unit string `json:"unit,omitempty"`
11746
11747	// Value: Required. The length value represented as a number. The value
11748	// can have a maximum precision of four decimal places.
11749	Value float64 `json:"value,omitempty"`
11750
11751	// ForceSendFields is a list of field names (e.g. "Unit") to
11752	// unconditionally include in API requests. By default, fields with
11753	// empty or default values are omitted from API requests. However, any
11754	// non-pointer, non-interface field appearing in ForceSendFields will be
11755	// sent to the server regardless of whether the field is empty or not.
11756	// This may be used to include empty fields in Patch requests.
11757	ForceSendFields []string `json:"-"`
11758
11759	// NullFields is a list of field names (e.g. "Unit") to include in API
11760	// requests with the JSON null value. By default, fields with empty
11761	// values are omitted from API requests. However, any field with an
11762	// empty value appearing in NullFields will be sent to the server as
11763	// null. It is an error if a field in this list has a non-empty value.
11764	// This may be used to include null fields in Patch requests.
11765	NullFields []string `json:"-"`
11766}
11767
11768func (s *ProductDimension) MarshalJSON() ([]byte, error) {
11769	type NoMethod ProductDimension
11770	raw := NoMethod(*s)
11771	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11772}
11773
11774func (s *ProductDimension) UnmarshalJSON(data []byte) error {
11775	type NoMethod ProductDimension
11776	var s1 struct {
11777		Value gensupport.JSONFloat64 `json:"value"`
11778		*NoMethod
11779	}
11780	s1.NoMethod = (*NoMethod)(s)
11781	if err := json.Unmarshal(data, &s1); err != nil {
11782		return err
11783	}
11784	s.Value = float64(s1.Value)
11785	return nil
11786}
11787
11788type ProductProductDetail struct {
11789	// AttributeName: The name of the product detail.
11790	AttributeName string `json:"attributeName,omitempty"`
11791
11792	// AttributeValue: The value of the product detail.
11793	AttributeValue string `json:"attributeValue,omitempty"`
11794
11795	// SectionName: The section header used to group a set of product
11796	// details.
11797	SectionName string `json:"sectionName,omitempty"`
11798
11799	// ForceSendFields is a list of field names (e.g. "AttributeName") to
11800	// unconditionally include in API requests. By default, fields with
11801	// empty or default values are omitted from API requests. However, any
11802	// non-pointer, non-interface field appearing in ForceSendFields will be
11803	// sent to the server regardless of whether the field is empty or not.
11804	// This may be used to include empty fields in Patch requests.
11805	ForceSendFields []string `json:"-"`
11806
11807	// NullFields is a list of field names (e.g. "AttributeName") to include
11808	// in API requests with the JSON null value. By default, fields with
11809	// empty values are omitted from API requests. However, any field with
11810	// an empty value appearing in NullFields will be sent to the server as
11811	// null. It is an error if a field in this list has a non-empty value.
11812	// This may be used to include null fields in Patch requests.
11813	NullFields []string `json:"-"`
11814}
11815
11816func (s *ProductProductDetail) MarshalJSON() ([]byte, error) {
11817	type NoMethod ProductProductDetail
11818	raw := NoMethod(*s)
11819	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11820}
11821
11822type ProductShipping struct {
11823	// Country: The CLDR territory code of the country to which an item will
11824	// ship.
11825	Country string `json:"country,omitempty"`
11826
11827	// LocationGroupName: The location where the shipping is applicable,
11828	// represented by a location group name.
11829	LocationGroupName string `json:"locationGroupName,omitempty"`
11830
11831	// LocationId: The numeric ID of a location that the shipping rate
11832	// applies to as defined in the AdWords API.
11833	LocationId int64 `json:"locationId,omitempty,string"`
11834
11835	// MaxHandlingTime: Maximum handling time (inclusive) between when the
11836	// order is received and shipped in business days. 0 means that the
11837	// order is shipped on the same day as it is received if it happens
11838	// before the cut-off time. Both maxHandlingTime and maxTransitTime are
11839	// required if providing shipping speeds.
11840	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
11841
11842	// MaxTransitTime: Maximum transit time (inclusive) between when the
11843	// order has shipped and when it is delivered in business days. 0 means
11844	// that the order is delivered on the same day as it ships. Both
11845	// maxHandlingTime and maxTransitTime are required if providing shipping
11846	// speeds.
11847	MaxTransitTime int64 `json:"maxTransitTime,omitempty,string"`
11848
11849	// MinHandlingTime: Minimum handling time (inclusive) between when the
11850	// order is received and shipped in business days. 0 means that the
11851	// order is shipped on the same day as it is received if it happens
11852	// before the cut-off time. minHandlingTime can only be present together
11853	// with maxHandlingTime; but it is not required if maxHandlingTime is
11854	// present.
11855	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
11856
11857	// MinTransitTime: Minimum transit time (inclusive) between when the
11858	// order has shipped and when it is delivered in business days. 0 means
11859	// that the order is delivered on the same day as it ships.
11860	// minTransitTime can only be present together with maxTransitTime; but
11861	// it is not required if maxTransitTime is present.
11862	MinTransitTime int64 `json:"minTransitTime,omitempty,string"`
11863
11864	// PostalCode: The postal code range that the shipping rate applies to,
11865	// represented by a postal code, a postal code prefix followed by a *
11866	// wildcard, a range between two postal codes or two postal code
11867	// prefixes of equal length.
11868	PostalCode string `json:"postalCode,omitempty"`
11869
11870	// Price: Fixed shipping price, represented as a number.
11871	Price *Price `json:"price,omitempty"`
11872
11873	// Region: The geographic region to which a shipping rate applies.
11874	Region string `json:"region,omitempty"`
11875
11876	// Service: A free-form description of the service class or delivery
11877	// speed.
11878	Service string `json:"service,omitempty"`
11879
11880	// ForceSendFields is a list of field names (e.g. "Country") to
11881	// unconditionally include in API requests. By default, fields with
11882	// empty or default values are omitted from API requests. However, any
11883	// non-pointer, non-interface field appearing in ForceSendFields will be
11884	// sent to the server regardless of whether the field is empty or not.
11885	// This may be used to include empty fields in Patch requests.
11886	ForceSendFields []string `json:"-"`
11887
11888	// NullFields is a list of field names (e.g. "Country") to include in
11889	// API requests with the JSON null value. By default, fields with empty
11890	// values are omitted from API requests. However, any field with an
11891	// empty value appearing in NullFields will be sent to the server as
11892	// null. It is an error if a field in this list has a non-empty value.
11893	// This may be used to include null fields in Patch requests.
11894	NullFields []string `json:"-"`
11895}
11896
11897func (s *ProductShipping) MarshalJSON() ([]byte, error) {
11898	type NoMethod ProductShipping
11899	raw := NoMethod(*s)
11900	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11901}
11902
11903type ProductShippingDimension struct {
11904	// Unit: The unit of value.
11905	Unit string `json:"unit,omitempty"`
11906
11907	// Value: The dimension of the product used to calculate the shipping
11908	// cost of the item.
11909	Value float64 `json:"value,omitempty"`
11910
11911	// ForceSendFields is a list of field names (e.g. "Unit") to
11912	// unconditionally include in API requests. By default, fields with
11913	// empty or default values are omitted from API requests. However, any
11914	// non-pointer, non-interface field appearing in ForceSendFields will be
11915	// sent to the server regardless of whether the field is empty or not.
11916	// This may be used to include empty fields in Patch requests.
11917	ForceSendFields []string `json:"-"`
11918
11919	// NullFields is a list of field names (e.g. "Unit") to include in API
11920	// requests with the JSON null value. By default, fields with empty
11921	// values are omitted from API requests. However, any field with an
11922	// empty value appearing in NullFields will be sent to the server as
11923	// null. It is an error if a field in this list has a non-empty value.
11924	// This may be used to include null fields in Patch requests.
11925	NullFields []string `json:"-"`
11926}
11927
11928func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
11929	type NoMethod ProductShippingDimension
11930	raw := NoMethod(*s)
11931	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11932}
11933
11934func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
11935	type NoMethod ProductShippingDimension
11936	var s1 struct {
11937		Value gensupport.JSONFloat64 `json:"value"`
11938		*NoMethod
11939	}
11940	s1.NoMethod = (*NoMethod)(s)
11941	if err := json.Unmarshal(data, &s1); err != nil {
11942		return err
11943	}
11944	s.Value = float64(s1.Value)
11945	return nil
11946}
11947
11948type ProductShippingWeight struct {
11949	// Unit: The unit of value.
11950	Unit string `json:"unit,omitempty"`
11951
11952	// Value: The weight of the product used to calculate the shipping cost
11953	// of the item.
11954	Value float64 `json:"value,omitempty"`
11955
11956	// ForceSendFields is a list of field names (e.g. "Unit") to
11957	// unconditionally include in API requests. By default, fields with
11958	// empty or default values are omitted from API requests. However, any
11959	// non-pointer, non-interface field appearing in ForceSendFields will be
11960	// sent to the server regardless of whether the field is empty or not.
11961	// This may be used to include empty fields in Patch requests.
11962	ForceSendFields []string `json:"-"`
11963
11964	// NullFields is a list of field names (e.g. "Unit") to include in API
11965	// requests with the JSON null value. By default, fields with empty
11966	// values are omitted from API requests. However, any field with an
11967	// empty value appearing in NullFields will be sent to the server as
11968	// null. It is an error if a field in this list has a non-empty value.
11969	// This may be used to include null fields in Patch requests.
11970	NullFields []string `json:"-"`
11971}
11972
11973func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
11974	type NoMethod ProductShippingWeight
11975	raw := NoMethod(*s)
11976	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11977}
11978
11979func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
11980	type NoMethod ProductShippingWeight
11981	var s1 struct {
11982		Value gensupport.JSONFloat64 `json:"value"`
11983		*NoMethod
11984	}
11985	s1.NoMethod = (*NoMethod)(s)
11986	if err := json.Unmarshal(data, &s1); err != nil {
11987		return err
11988	}
11989	s.Value = float64(s1.Value)
11990	return nil
11991}
11992
11993// ProductStatus: The status of a product, i.e., information about a
11994// product computed asynchronously.
11995type ProductStatus struct {
11996	// CreationDate: Date on which the item has been created, in ISO 8601
11997	// format.
11998	CreationDate string `json:"creationDate,omitempty"`
11999
12000	// DestinationStatuses: The intended destinations for the product.
12001	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
12002
12003	// GoogleExpirationDate: Date on which the item expires in Google
12004	// Shopping, in ISO 8601 format.
12005	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
12006
12007	// ItemLevelIssues: A list of all issues associated with the product.
12008	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
12009
12010	// Kind: Identifies what kind of resource this is. Value: the fixed
12011	// string "content#productStatus"
12012	Kind string `json:"kind,omitempty"`
12013
12014	// LastUpdateDate: Date on which the item has been last updated, in ISO
12015	// 8601 format.
12016	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
12017
12018	// Link: The link to the product.
12019	Link string `json:"link,omitempty"`
12020
12021	// ProductId: The ID of the product for which status is reported.
12022	ProductId string `json:"productId,omitempty"`
12023
12024	// Title: The title of the product.
12025	Title string `json:"title,omitempty"`
12026
12027	// ServerResponse contains the HTTP response code and headers from the
12028	// server.
12029	googleapi.ServerResponse `json:"-"`
12030
12031	// ForceSendFields is a list of field names (e.g. "CreationDate") to
12032	// unconditionally include in API requests. By default, fields with
12033	// empty or default values are omitted from API requests. However, any
12034	// non-pointer, non-interface field appearing in ForceSendFields will be
12035	// sent to the server regardless of whether the field is empty or not.
12036	// This may be used to include empty fields in Patch requests.
12037	ForceSendFields []string `json:"-"`
12038
12039	// NullFields is a list of field names (e.g. "CreationDate") to include
12040	// in API requests with the JSON null value. By default, fields with
12041	// empty values are omitted from API requests. However, any field with
12042	// an empty value appearing in NullFields will be sent to the server as
12043	// null. It is an error if a field in this list has a non-empty value.
12044	// This may be used to include null fields in Patch requests.
12045	NullFields []string `json:"-"`
12046}
12047
12048func (s *ProductStatus) MarshalJSON() ([]byte, error) {
12049	type NoMethod ProductStatus
12050	raw := NoMethod(*s)
12051	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12052}
12053
12054type ProductStatusDestinationStatus struct {
12055	// ApprovedCountries: List of country codes (ISO 3166-1 alpha-2) where
12056	// the offer is approved.
12057	ApprovedCountries []string `json:"approvedCountries,omitempty"`
12058
12059	// Destination: The name of the destination
12060	Destination string `json:"destination,omitempty"`
12061
12062	// DisapprovedCountries: List of country codes (ISO 3166-1 alpha-2)
12063	// where the offer is disapproved.
12064	DisapprovedCountries []string `json:"disapprovedCountries,omitempty"`
12065
12066	// PendingCountries: List of country codes (ISO 3166-1 alpha-2) where
12067	// the offer is pending approval.
12068	PendingCountries []string `json:"pendingCountries,omitempty"`
12069
12070	// Status: Destination approval status in `targetCountry` of the offer.
12071	Status string `json:"status,omitempty"`
12072
12073	// ForceSendFields is a list of field names (e.g. "ApprovedCountries")
12074	// to unconditionally include in API requests. By default, fields with
12075	// empty or default values are omitted from API requests. However, any
12076	// non-pointer, non-interface field appearing in ForceSendFields will be
12077	// sent to the server regardless of whether the field is empty or not.
12078	// This may be used to include empty fields in Patch requests.
12079	ForceSendFields []string `json:"-"`
12080
12081	// NullFields is a list of field names (e.g. "ApprovedCountries") to
12082	// include in API requests with the JSON null value. By default, fields
12083	// with empty values are omitted from API requests. However, any field
12084	// with an empty value appearing in NullFields will be sent to the
12085	// server as null. It is an error if a field in this list has a
12086	// non-empty value. This may be used to include null fields in Patch
12087	// requests.
12088	NullFields []string `json:"-"`
12089}
12090
12091func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
12092	type NoMethod ProductStatusDestinationStatus
12093	raw := NoMethod(*s)
12094	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12095}
12096
12097type ProductStatusItemLevelIssue struct {
12098	// ApplicableCountries: List of country codes (ISO 3166-1 alpha-2) where
12099	// issue applies to the offer.
12100	ApplicableCountries []string `json:"applicableCountries,omitempty"`
12101
12102	// AttributeName: The attribute's name, if the issue is caused by a
12103	// single attribute.
12104	AttributeName string `json:"attributeName,omitempty"`
12105
12106	// Code: The error code of the issue.
12107	Code string `json:"code,omitempty"`
12108
12109	// Description: A short issue description in English.
12110	Description string `json:"description,omitempty"`
12111
12112	// Destination: The destination the issue applies to.
12113	Destination string `json:"destination,omitempty"`
12114
12115	// Detail: A detailed issue description in English.
12116	Detail string `json:"detail,omitempty"`
12117
12118	// Documentation: The URL of a web page to help with resolving this
12119	// issue.
12120	Documentation string `json:"documentation,omitempty"`
12121
12122	// Resolution: Whether the issue can be resolved by the merchant.
12123	Resolution string `json:"resolution,omitempty"`
12124
12125	// Servability: How this issue affects serving of the offer.
12126	Servability string `json:"servability,omitempty"`
12127
12128	// ForceSendFields is a list of field names (e.g. "ApplicableCountries")
12129	// to unconditionally include in API requests. By default, fields with
12130	// empty or default values are omitted from API requests. However, any
12131	// non-pointer, non-interface field appearing in ForceSendFields will be
12132	// sent to the server regardless of whether the field is empty or not.
12133	// This may be used to include empty fields in Patch requests.
12134	ForceSendFields []string `json:"-"`
12135
12136	// NullFields is a list of field names (e.g. "ApplicableCountries") to
12137	// include in API requests with the JSON null value. By default, fields
12138	// with empty values are omitted from API requests. However, any field
12139	// with an empty value appearing in NullFields will be sent to the
12140	// server as null. It is an error if a field in this list has a
12141	// non-empty value. This may be used to include null fields in Patch
12142	// requests.
12143	NullFields []string `json:"-"`
12144}
12145
12146func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
12147	type NoMethod ProductStatusItemLevelIssue
12148	raw := NoMethod(*s)
12149	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12150}
12151
12152type ProductSubscriptionCost struct {
12153	// Amount: The amount the buyer has to pay per subscription period.
12154	Amount *Price `json:"amount,omitempty"`
12155
12156	// Period: The type of subscription period.
12157	Period string `json:"period,omitempty"`
12158
12159	// PeriodLength: The number of subscription periods the buyer has to
12160	// pay.
12161	PeriodLength int64 `json:"periodLength,omitempty,string"`
12162
12163	// ForceSendFields is a list of field names (e.g. "Amount") to
12164	// unconditionally include in API requests. By default, fields with
12165	// empty or default values are omitted from API requests. However, any
12166	// non-pointer, non-interface field appearing in ForceSendFields will be
12167	// sent to the server regardless of whether the field is empty or not.
12168	// This may be used to include empty fields in Patch requests.
12169	ForceSendFields []string `json:"-"`
12170
12171	// NullFields is a list of field names (e.g. "Amount") to include in API
12172	// requests with the JSON null value. By default, fields with empty
12173	// values are omitted from API requests. However, any field with an
12174	// empty value appearing in NullFields will be sent to the server as
12175	// null. It is an error if a field in this list has a non-empty value.
12176	// This may be used to include null fields in Patch requests.
12177	NullFields []string `json:"-"`
12178}
12179
12180func (s *ProductSubscriptionCost) MarshalJSON() ([]byte, error) {
12181	type NoMethod ProductSubscriptionCost
12182	raw := NoMethod(*s)
12183	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12184}
12185
12186type ProductTax struct {
12187	// Country: The country within which the item is taxed, specified as a
12188	// CLDR territory code.
12189	Country string `json:"country,omitempty"`
12190
12191	// LocationId: The numeric ID of a location that the tax rate applies to
12192	// as defined in the AdWords API.
12193	LocationId int64 `json:"locationId,omitempty,string"`
12194
12195	// PostalCode: The postal code range that the tax rate applies to,
12196	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
12197	// range between two ZIP codes or two ZIP code prefixes of equal length.
12198	// Examples: 94114, 94*, 94002-95460, 94*-95*.
12199	PostalCode string `json:"postalCode,omitempty"`
12200
12201	// Rate: The percentage of tax rate that applies to the item price.
12202	Rate float64 `json:"rate,omitempty"`
12203
12204	// Region: The geographic region to which the tax rate applies.
12205	Region string `json:"region,omitempty"`
12206
12207	// TaxShip: Should be set to true if tax is charged on shipping.
12208	TaxShip bool `json:"taxShip,omitempty"`
12209
12210	// ForceSendFields is a list of field names (e.g. "Country") to
12211	// unconditionally include in API requests. By default, fields with
12212	// empty or default values are omitted from API requests. However, any
12213	// non-pointer, non-interface field appearing in ForceSendFields will be
12214	// sent to the server regardless of whether the field is empty or not.
12215	// This may be used to include empty fields in Patch requests.
12216	ForceSendFields []string `json:"-"`
12217
12218	// NullFields is a list of field names (e.g. "Country") to include in
12219	// API requests with the JSON null value. By default, fields with empty
12220	// values are omitted from API requests. However, any field with an
12221	// empty value appearing in NullFields will be sent to the server as
12222	// null. It is an error if a field in this list has a non-empty value.
12223	// This may be used to include null fields in Patch requests.
12224	NullFields []string `json:"-"`
12225}
12226
12227func (s *ProductTax) MarshalJSON() ([]byte, error) {
12228	type NoMethod ProductTax
12229	raw := NoMethod(*s)
12230	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12231}
12232
12233func (s *ProductTax) UnmarshalJSON(data []byte) error {
12234	type NoMethod ProductTax
12235	var s1 struct {
12236		Rate gensupport.JSONFloat64 `json:"rate"`
12237		*NoMethod
12238	}
12239	s1.NoMethod = (*NoMethod)(s)
12240	if err := json.Unmarshal(data, &s1); err != nil {
12241		return err
12242	}
12243	s.Rate = float64(s1.Rate)
12244	return nil
12245}
12246
12247type ProductUnitPricingBaseMeasure struct {
12248	// Unit: The unit of the denominator.
12249	Unit string `json:"unit,omitempty"`
12250
12251	// Value: The denominator of the unit price.
12252	Value int64 `json:"value,omitempty,string"`
12253
12254	// ForceSendFields is a list of field names (e.g. "Unit") to
12255	// unconditionally include in API requests. By default, fields with
12256	// empty or default values are omitted from API requests. However, any
12257	// non-pointer, non-interface field appearing in ForceSendFields will be
12258	// sent to the server regardless of whether the field is empty or not.
12259	// This may be used to include empty fields in Patch requests.
12260	ForceSendFields []string `json:"-"`
12261
12262	// NullFields is a list of field names (e.g. "Unit") to include in API
12263	// requests with the JSON null value. By default, fields with empty
12264	// values are omitted from API requests. However, any field with an
12265	// empty value appearing in NullFields will be sent to the server as
12266	// null. It is an error if a field in this list has a non-empty value.
12267	// This may be used to include null fields in Patch requests.
12268	NullFields []string `json:"-"`
12269}
12270
12271func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
12272	type NoMethod ProductUnitPricingBaseMeasure
12273	raw := NoMethod(*s)
12274	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12275}
12276
12277type ProductUnitPricingMeasure struct {
12278	// Unit: The unit of the measure.
12279	Unit string `json:"unit,omitempty"`
12280
12281	// Value: The measure of an item.
12282	Value float64 `json:"value,omitempty"`
12283
12284	// ForceSendFields is a list of field names (e.g. "Unit") to
12285	// unconditionally include in API requests. By default, fields with
12286	// empty or default values are omitted from API requests. However, any
12287	// non-pointer, non-interface field appearing in ForceSendFields will be
12288	// sent to the server regardless of whether the field is empty or not.
12289	// This may be used to include empty fields in Patch requests.
12290	ForceSendFields []string `json:"-"`
12291
12292	// NullFields is a list of field names (e.g. "Unit") to include in API
12293	// requests with the JSON null value. By default, fields with empty
12294	// values are omitted from API requests. However, any field with an
12295	// empty value appearing in NullFields will be sent to the server as
12296	// null. It is an error if a field in this list has a non-empty value.
12297	// This may be used to include null fields in Patch requests.
12298	NullFields []string `json:"-"`
12299}
12300
12301func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
12302	type NoMethod ProductUnitPricingMeasure
12303	raw := NoMethod(*s)
12304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12305}
12306
12307func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
12308	type NoMethod ProductUnitPricingMeasure
12309	var s1 struct {
12310		Value gensupport.JSONFloat64 `json:"value"`
12311		*NoMethod
12312	}
12313	s1.NoMethod = (*NoMethod)(s)
12314	if err := json.Unmarshal(data, &s1); err != nil {
12315		return err
12316	}
12317	s.Value = float64(s1.Value)
12318	return nil
12319}
12320
12321type ProductWeight struct {
12322	// Unit: Required. The weight unit. Acceptable values are: - "g" -
12323	// "kg" - "oz" - "lb"
12324	Unit string `json:"unit,omitempty"`
12325
12326	// Value: Required. The weight represented as a number. The weight can
12327	// have a maximum precision of four decimal places.
12328	Value float64 `json:"value,omitempty"`
12329
12330	// ForceSendFields is a list of field names (e.g. "Unit") to
12331	// unconditionally include in API requests. By default, fields with
12332	// empty or default values are omitted from API requests. However, any
12333	// non-pointer, non-interface field appearing in ForceSendFields will be
12334	// sent to the server regardless of whether the field is empty or not.
12335	// This may be used to include empty fields in Patch requests.
12336	ForceSendFields []string `json:"-"`
12337
12338	// NullFields is a list of field names (e.g. "Unit") to include in API
12339	// requests with the JSON null value. By default, fields with empty
12340	// values are omitted from API requests. However, any field with an
12341	// empty value appearing in NullFields will be sent to the server as
12342	// null. It is an error if a field in this list has a non-empty value.
12343	// This may be used to include null fields in Patch requests.
12344	NullFields []string `json:"-"`
12345}
12346
12347func (s *ProductWeight) MarshalJSON() ([]byte, error) {
12348	type NoMethod ProductWeight
12349	raw := NoMethod(*s)
12350	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12351}
12352
12353func (s *ProductWeight) UnmarshalJSON(data []byte) error {
12354	type NoMethod ProductWeight
12355	var s1 struct {
12356		Value gensupport.JSONFloat64 `json:"value"`
12357		*NoMethod
12358	}
12359	s1.NoMethod = (*NoMethod)(s)
12360	if err := json.Unmarshal(data, &s1); err != nil {
12361		return err
12362	}
12363	s.Value = float64(s1.Value)
12364	return nil
12365}
12366
12367type ProductsCustomBatchRequest struct {
12368	// Entries: The request entries to be processed in the batch.
12369	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
12370
12371	// ForceSendFields is a list of field names (e.g. "Entries") to
12372	// unconditionally include in API requests. By default, fields with
12373	// empty or default values are omitted from API requests. However, any
12374	// non-pointer, non-interface field appearing in ForceSendFields will be
12375	// sent to the server regardless of whether the field is empty or not.
12376	// This may be used to include empty fields in Patch requests.
12377	ForceSendFields []string `json:"-"`
12378
12379	// NullFields is a list of field names (e.g. "Entries") to include in
12380	// API requests with the JSON null value. By default, fields with empty
12381	// values are omitted from API requests. However, any field with an
12382	// empty value appearing in NullFields will be sent to the server as
12383	// null. It is an error if a field in this list has a non-empty value.
12384	// This may be used to include null fields in Patch requests.
12385	NullFields []string `json:"-"`
12386}
12387
12388func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
12389	type NoMethod ProductsCustomBatchRequest
12390	raw := NoMethod(*s)
12391	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12392}
12393
12394// ProductsCustomBatchRequestEntry: A batch entry encoding a single
12395// non-batch products request.
12396type ProductsCustomBatchRequestEntry struct {
12397	// BatchId: An entry ID, unique within the batch request.
12398	BatchId int64 `json:"batchId,omitempty"`
12399
12400	// FeedId: The Content API Supplemental Feed ID. If present then product
12401	// insertion or deletion applies to a supplemental feed instead of
12402	// primary Content API feed.
12403	FeedId uint64 `json:"feedId,omitempty,string"`
12404
12405	// MerchantId: The ID of the managing account.
12406	MerchantId uint64 `json:"merchantId,omitempty,string"`
12407
12408	// Method: The method of the batch entry. Acceptable values are: -
12409	// "delete" - "get" - "insert" - "update"
12410	Method string `json:"method,omitempty"`
12411
12412	// Product: The product to insert or update. Only required if the method
12413	// is `insert` or `update`. If the `update` method is used with
12414	// `updateMask` only to delete a field, then this isn't required. For
12415	// example, setting `salePrice` on the `updateMask` and not providing a
12416	// `product` will result in an existing sale price on the product
12417	// specified by `productId` being deleted.
12418	Product *Product `json:"product,omitempty"`
12419
12420	// ProductId: The ID of the product to get or mutate. Only defined if
12421	// the method is `get`, `delete`, or `update`.
12422	ProductId string `json:"productId,omitempty"`
12423
12424	// UpdateMask: The comma-separated list of product attributes to be
12425	// updated. Example: "title,salePrice". Attributes specified in the
12426	// update mask without a value specified in the body will be deleted
12427	// from the product. Only top-level product attributes can be updated.
12428	// If not defined, product attributes with set values will be updated
12429	// and other attributes will stay unchanged. Only defined if the method
12430	// is `update`.
12431	UpdateMask string `json:"updateMask,omitempty"`
12432
12433	// ForceSendFields is a list of field names (e.g. "BatchId") to
12434	// unconditionally include in API requests. By default, fields with
12435	// empty or default values are omitted from API requests. However, any
12436	// non-pointer, non-interface field appearing in ForceSendFields will be
12437	// sent to the server regardless of whether the field is empty or not.
12438	// This may be used to include empty fields in Patch requests.
12439	ForceSendFields []string `json:"-"`
12440
12441	// NullFields is a list of field names (e.g. "BatchId") to include in
12442	// API requests with the JSON null value. By default, fields with empty
12443	// values are omitted from API requests. However, any field with an
12444	// empty value appearing in NullFields will be sent to the server as
12445	// null. It is an error if a field in this list has a non-empty value.
12446	// This may be used to include null fields in Patch requests.
12447	NullFields []string `json:"-"`
12448}
12449
12450func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12451	type NoMethod ProductsCustomBatchRequestEntry
12452	raw := NoMethod(*s)
12453	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12454}
12455
12456type ProductsCustomBatchResponse struct {
12457	// Entries: The result of the execution of the batch requests.
12458	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
12459
12460	// Kind: Identifies what kind of resource this is. Value: the fixed
12461	// string "content#productsCustomBatchResponse".
12462	Kind string `json:"kind,omitempty"`
12463
12464	// ServerResponse contains the HTTP response code and headers from the
12465	// server.
12466	googleapi.ServerResponse `json:"-"`
12467
12468	// ForceSendFields is a list of field names (e.g. "Entries") to
12469	// unconditionally include in API requests. By default, fields with
12470	// empty or default values are omitted from API requests. However, any
12471	// non-pointer, non-interface field appearing in ForceSendFields will be
12472	// sent to the server regardless of whether the field is empty or not.
12473	// This may be used to include empty fields in Patch requests.
12474	ForceSendFields []string `json:"-"`
12475
12476	// NullFields is a list of field names (e.g. "Entries") to include in
12477	// API requests with the JSON null value. By default, fields with empty
12478	// values are omitted from API requests. However, any field with an
12479	// empty value appearing in NullFields will be sent to the server as
12480	// null. It is an error if a field in this list has a non-empty value.
12481	// This may be used to include null fields in Patch requests.
12482	NullFields []string `json:"-"`
12483}
12484
12485func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
12486	type NoMethod ProductsCustomBatchResponse
12487	raw := NoMethod(*s)
12488	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12489}
12490
12491// ProductsCustomBatchResponseEntry: A batch entry encoding a single
12492// non-batch products response.
12493type ProductsCustomBatchResponseEntry struct {
12494	// BatchId: The ID of the request entry this entry responds to.
12495	BatchId int64 `json:"batchId,omitempty"`
12496
12497	// Errors: A list of errors defined if and only if the request failed.
12498	Errors *Errors `json:"errors,omitempty"`
12499
12500	// Kind: Identifies what kind of resource this is. Value: the fixed
12501	// string "content#productsCustomBatchResponseEntry"
12502	Kind string `json:"kind,omitempty"`
12503
12504	// Product: The inserted product. Only defined if the method is `insert`
12505	// and if the request was successful.
12506	Product *Product `json:"product,omitempty"`
12507
12508	// ForceSendFields is a list of field names (e.g. "BatchId") 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. "BatchId") to include in
12517	// API 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 *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12526	type NoMethod ProductsCustomBatchResponseEntry
12527	raw := NoMethod(*s)
12528	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12529}
12530
12531type ProductsListResponse struct {
12532	// Kind: Identifies what kind of resource this is. Value: the fixed
12533	// string "content#productsListResponse".
12534	Kind string `json:"kind,omitempty"`
12535
12536	// NextPageToken: The token for the retrieval of the next page of
12537	// products.
12538	NextPageToken string `json:"nextPageToken,omitempty"`
12539
12540	Resources []*Product `json:"resources,omitempty"`
12541
12542	// ServerResponse contains the HTTP response code and headers from the
12543	// server.
12544	googleapi.ServerResponse `json:"-"`
12545
12546	// ForceSendFields is a list of field names (e.g. "Kind") to
12547	// unconditionally include in API requests. By default, fields with
12548	// empty or default values are omitted from API requests. However, any
12549	// non-pointer, non-interface field appearing in ForceSendFields will be
12550	// sent to the server regardless of whether the field is empty or not.
12551	// This may be used to include empty fields in Patch requests.
12552	ForceSendFields []string `json:"-"`
12553
12554	// NullFields is a list of field names (e.g. "Kind") to include in API
12555	// requests with the JSON null value. By default, fields with empty
12556	// values are omitted from API requests. However, any field with an
12557	// empty value appearing in NullFields will be sent to the server as
12558	// null. It is an error if a field in this list has a non-empty value.
12559	// This may be used to include null fields in Patch requests.
12560	NullFields []string `json:"-"`
12561}
12562
12563func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
12564	type NoMethod ProductsListResponse
12565	raw := NoMethod(*s)
12566	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12567}
12568
12569type ProductstatusesCustomBatchRequest struct {
12570	// Entries: The request entries to be processed in the batch.
12571	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
12572
12573	// ForceSendFields is a list of field names (e.g. "Entries") to
12574	// unconditionally include in API requests. By default, fields with
12575	// empty or default values are omitted from API requests. However, any
12576	// non-pointer, non-interface field appearing in ForceSendFields will be
12577	// sent to the server regardless of whether the field is empty or not.
12578	// This may be used to include empty fields in Patch requests.
12579	ForceSendFields []string `json:"-"`
12580
12581	// NullFields is a list of field names (e.g. "Entries") to include in
12582	// API requests with the JSON null value. By default, fields with empty
12583	// values are omitted from API requests. However, any field with an
12584	// empty value appearing in NullFields will be sent to the server as
12585	// null. It is an error if a field in this list has a non-empty value.
12586	// This may be used to include null fields in Patch requests.
12587	NullFields []string `json:"-"`
12588}
12589
12590func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
12591	type NoMethod ProductstatusesCustomBatchRequest
12592	raw := NoMethod(*s)
12593	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12594}
12595
12596// ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
12597// single non-batch productstatuses request.
12598type ProductstatusesCustomBatchRequestEntry struct {
12599	// BatchId: An entry ID, unique within the batch request.
12600	BatchId int64 `json:"batchId,omitempty"`
12601
12602	// Destinations: If set, only issues for the specified destinations are
12603	// returned, otherwise only issues for the Shopping destination.
12604	Destinations []string `json:"destinations,omitempty"`
12605
12606	IncludeAttributes bool `json:"includeAttributes,omitempty"`
12607
12608	// MerchantId: The ID of the managing account.
12609	MerchantId uint64 `json:"merchantId,omitempty,string"`
12610
12611	// Method: The method of the batch entry. Acceptable values are: -
12612	// "get"
12613	Method string `json:"method,omitempty"`
12614
12615	// ProductId: The ID of the product whose status to get.
12616	ProductId string `json:"productId,omitempty"`
12617
12618	// ForceSendFields is a list of field names (e.g. "BatchId") to
12619	// unconditionally include in API requests. By default, fields with
12620	// empty or default values are omitted from API requests. However, any
12621	// non-pointer, non-interface field appearing in ForceSendFields will be
12622	// sent to the server regardless of whether the field is empty or not.
12623	// This may be used to include empty fields in Patch requests.
12624	ForceSendFields []string `json:"-"`
12625
12626	// NullFields is a list of field names (e.g. "BatchId") to include in
12627	// API requests with the JSON null value. By default, fields with empty
12628	// values are omitted from API requests. However, any field with an
12629	// empty value appearing in NullFields will be sent to the server as
12630	// null. It is an error if a field in this list has a non-empty value.
12631	// This may be used to include null fields in Patch requests.
12632	NullFields []string `json:"-"`
12633}
12634
12635func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12636	type NoMethod ProductstatusesCustomBatchRequestEntry
12637	raw := NoMethod(*s)
12638	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12639}
12640
12641type ProductstatusesCustomBatchResponse struct {
12642	// Entries: The result of the execution of the batch requests.
12643	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
12644
12645	// Kind: Identifies what kind of resource this is. Value: the fixed
12646	// string "content#productstatusesCustomBatchResponse".
12647	Kind string `json:"kind,omitempty"`
12648
12649	// ServerResponse contains the HTTP response code and headers from the
12650	// server.
12651	googleapi.ServerResponse `json:"-"`
12652
12653	// ForceSendFields is a list of field names (e.g. "Entries") to
12654	// unconditionally include in API requests. By default, fields with
12655	// empty or default values are omitted from API requests. However, any
12656	// non-pointer, non-interface field appearing in ForceSendFields will be
12657	// sent to the server regardless of whether the field is empty or not.
12658	// This may be used to include empty fields in Patch requests.
12659	ForceSendFields []string `json:"-"`
12660
12661	// NullFields is a list of field names (e.g. "Entries") to include in
12662	// API requests with the JSON null value. By default, fields with empty
12663	// values are omitted from API requests. However, any field with an
12664	// empty value appearing in NullFields will be sent to the server as
12665	// null. It is an error if a field in this list has a non-empty value.
12666	// This may be used to include null fields in Patch requests.
12667	NullFields []string `json:"-"`
12668}
12669
12670func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
12671	type NoMethod ProductstatusesCustomBatchResponse
12672	raw := NoMethod(*s)
12673	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12674}
12675
12676// ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
12677// single non-batch productstatuses response.
12678type ProductstatusesCustomBatchResponseEntry struct {
12679	// BatchId: The ID of the request entry this entry responds to.
12680	BatchId int64 `json:"batchId,omitempty"`
12681
12682	// Errors: A list of errors, if the request failed.
12683	Errors *Errors `json:"errors,omitempty"`
12684
12685	// Kind: Identifies what kind of resource this is. Value: the fixed
12686	// string "content#productstatusesCustomBatchResponseEntry"
12687	Kind string `json:"kind,omitempty"`
12688
12689	// ProductStatus: The requested product status. Only defined if the
12690	// request was successful.
12691	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
12692
12693	// ForceSendFields is a list of field names (e.g. "BatchId") to
12694	// unconditionally include in API requests. By default, fields with
12695	// empty or default values are omitted from API requests. However, any
12696	// non-pointer, non-interface field appearing in ForceSendFields will be
12697	// sent to the server regardless of whether the field is empty or not.
12698	// This may be used to include empty fields in Patch requests.
12699	ForceSendFields []string `json:"-"`
12700
12701	// NullFields is a list of field names (e.g. "BatchId") to include in
12702	// API requests with the JSON null value. By default, fields with empty
12703	// values are omitted from API requests. However, any field with an
12704	// empty value appearing in NullFields will be sent to the server as
12705	// null. It is an error if a field in this list has a non-empty value.
12706	// This may be used to include null fields in Patch requests.
12707	NullFields []string `json:"-"`
12708}
12709
12710func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12711	type NoMethod ProductstatusesCustomBatchResponseEntry
12712	raw := NoMethod(*s)
12713	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12714}
12715
12716type ProductstatusesListResponse struct {
12717	// Kind: Identifies what kind of resource this is. Value: the fixed
12718	// string "content#productstatusesListResponse".
12719	Kind string `json:"kind,omitempty"`
12720
12721	// NextPageToken: The token for the retrieval of the next page of
12722	// products statuses.
12723	NextPageToken string `json:"nextPageToken,omitempty"`
12724
12725	Resources []*ProductStatus `json:"resources,omitempty"`
12726
12727	// ServerResponse contains the HTTP response code and headers from the
12728	// server.
12729	googleapi.ServerResponse `json:"-"`
12730
12731	// ForceSendFields is a list of field names (e.g. "Kind") to
12732	// unconditionally include in API requests. By default, fields with
12733	// empty or default values are omitted from API requests. However, any
12734	// non-pointer, non-interface field appearing in ForceSendFields will be
12735	// sent to the server regardless of whether the field is empty or not.
12736	// This may be used to include empty fields in Patch requests.
12737	ForceSendFields []string `json:"-"`
12738
12739	// NullFields is a list of field names (e.g. "Kind") to include in API
12740	// requests with the JSON null value. By default, fields with empty
12741	// values are omitted from API requests. However, any field with an
12742	// empty value appearing in NullFields will be sent to the server as
12743	// null. It is an error if a field in this list has a non-empty value.
12744	// This may be used to include null fields in Patch requests.
12745	NullFields []string `json:"-"`
12746}
12747
12748func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
12749	type NoMethod ProductstatusesListResponse
12750	raw := NoMethod(*s)
12751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12752}
12753
12754// Promotion: Represents a promotion. (1)
12755// https://support.google.com/merchants/answer/2906014 (2)
12756// https://support.google.com/merchants/answer/10146130 (3)
12757// https://support.google.com/merchants/answer/9173673
12758type Promotion struct {
12759	// Brand: Product filter by brand for the promotion.
12760	Brand []string `json:"brand,omitempty"`
12761
12762	// BrandExclusion: Product filter by brand exclusion for the promotion.
12763	BrandExclusion []string `json:"brandExclusion,omitempty"`
12764
12765	// ContentLanguage: Required. The content language used as part of the
12766	// unique identifier.
12767	ContentLanguage string `json:"contentLanguage,omitempty"`
12768
12769	// CouponValueType: Required. Coupon value type for the promotion.
12770	//
12771	// Possible values:
12772	//   "COUPON_VALUE_TYPE_UNSPECIFIED" - Indicates that the coupon value
12773	// type is unspecified.
12774	//   "MONEY_OFF" - Money off coupon value type.
12775	//   "PERCENT_OFF" - Percent off coupon value type.
12776	//   "BUY_M_GET_N_MONEY_OFF" - Buy M quantity, get N money off coupon
12777	// value type. buy_this_quantity and get_this_quantity must be present.
12778	// money_off_amount must also be present.
12779	//   "BUY_M_GET_N_PERCENT_OFF" - Buy M quantity, get N percent off
12780	// coupon value type. buy_this_quantity and get_this_quantity must be
12781	// present. percent_off_percentage must also be present.
12782	//   "BUY_M_GET_MONEY_OFF" - Buy M quantity, get money off.
12783	// buy_this_quantity and money_off_amount must be present.
12784	//   "BUY_M_GET_PERCENT_OFF" - Buy M quantity, get money off.
12785	// buy_this_quantity and percent_off_percentage must be present.
12786	//   "FREE_GIFT" - Free gift with description only
12787	//   "FREE_GIFT_WITH_VALUE" - Free gift with value (description is
12788	// optional).
12789	//   "FREE_GIFT_WITH_ITEM_ID" - Free gift with item id (description is
12790	// optional).
12791	//   "FREE_SHIPPING_STANDARD" - Standard free shipping coupon value
12792	// type.
12793	//   "FREE_SHIPPING_OVERNIGHT" - Overnight free shipping coupon value
12794	// type.
12795	//   "FREE_SHIPPING_TWO_DAY" - Two day free shipping coupon value type.
12796	CouponValueType string `json:"couponValueType,omitempty"`
12797
12798	// FreeGiftDescription: Free gift description for the promotion.
12799	FreeGiftDescription string `json:"freeGiftDescription,omitempty"`
12800
12801	// FreeGiftItemId: Free gift item id for the promotion.
12802	FreeGiftItemId string `json:"freeGiftItemId,omitempty"`
12803
12804	// FreeGiftValue: Free gift value for the promotion.
12805	FreeGiftValue *PriceAmount `json:"freeGiftValue,omitempty"`
12806
12807	// GenericRedemptionCode: Generic redemption code for the promotion. To
12808	// be used with the above field.
12809	GenericRedemptionCode string `json:"genericRedemptionCode,omitempty"`
12810
12811	// GetThisQuantityDiscounted: The number of items discounted in the
12812	// promotion.
12813	GetThisQuantityDiscounted int64 `json:"getThisQuantityDiscounted,omitempty"`
12814
12815	// Id: Required. Output only. The REST promotion id to uniquely identify
12816	// the promotion. Content API methods that operate on promotions take
12817	// this as their promotionId parameter.
12818	Id string `json:"id,omitempty"`
12819
12820	// ItemGroupId: Product filter by item group id for the promotion.
12821	ItemGroupId []string `json:"itemGroupId,omitempty"`
12822
12823	// ItemGroupIdExclusion: Product filter by item group id exclusion for
12824	// the promotion.
12825	ItemGroupIdExclusion []string `json:"itemGroupIdExclusion,omitempty"`
12826
12827	// ItemId: Product filter by item id for the promotion.
12828	ItemId []string `json:"itemId,omitempty"`
12829
12830	// ItemIdExclusion: Product filter by item id exclusion for the
12831	// promotion.
12832	ItemIdExclusion []string `json:"itemIdExclusion,omitempty"`
12833
12834	// LimitQuantity: Maximum purchase quantity for the promotion.
12835	LimitQuantity int64 `json:"limitQuantity,omitempty"`
12836
12837	// LimitValue: Maximum purchase value for the promotion.
12838	LimitValue *PriceAmount `json:"limitValue,omitempty"`
12839
12840	// LongTitle: Long title for the promotion.
12841	LongTitle string `json:"longTitle,omitempty"`
12842
12843	// MinimumPurchaseAmount: Minimum purchase amount for the promotion.
12844	MinimumPurchaseAmount *PriceAmount `json:"minimumPurchaseAmount,omitempty"`
12845
12846	// MinimumPurchaseQuantity: Minimum purchase quantity for the promotion.
12847	MinimumPurchaseQuantity int64 `json:"minimumPurchaseQuantity,omitempty"`
12848
12849	// MoneyBudget: Promotion cost cap of the promotion.
12850	MoneyBudget *PriceAmount `json:"moneyBudget,omitempty"`
12851
12852	// MoneyOffAmount: The money off amount offered in the promotion.
12853	MoneyOffAmount *PriceAmount `json:"moneyOffAmount,omitempty"`
12854
12855	// OfferType: Required. Type of the promotion.
12856	//
12857	// Possible values:
12858	//   "OFFER_TYPE_UNSPECIFIED" - Unknown offer type.
12859	//   "NO_CODE" - Offer type without a code.
12860	//   "GENERIC_CODE" - Offer type with a code.
12861	OfferType string `json:"offerType,omitempty"`
12862
12863	// OrderLimit: Order limit for the promotion.
12864	OrderLimit int64 `json:"orderLimit,omitempty"`
12865
12866	// PercentOff: The percentage discount offered in the promotion.
12867	PercentOff int64 `json:"percentOff,omitempty"`
12868
12869	// ProductApplicability: Required. Applicability of the promotion to
12870	// either all products or only specific products.
12871	//
12872	// Possible values:
12873	//   "PRODUCT_APPLICABILITY_UNSPECIFIED" - Unknown product
12874	// applicability.
12875	//   "ALL_PRODUCTS" - Applicable to all products.
12876	//   "PRODUCT_SPECIFIC" - Applicable to only a single product or list of
12877	// products.
12878	ProductApplicability string `json:"productApplicability,omitempty"`
12879
12880	// PromotionDestinationIds: Destination ID for the promotion.
12881	PromotionDestinationIds []string `json:"promotionDestinationIds,omitempty"`
12882
12883	// PromotionDisplayDates: String representation of the promotion display
12884	// dates.
12885	PromotionDisplayDates string `json:"promotionDisplayDates,omitempty"`
12886
12887	// PromotionEffectiveDates: Required. String representation of the
12888	// promotion effective dates.
12889	PromotionEffectiveDates string `json:"promotionEffectiveDates,omitempty"`
12890
12891	// PromotionId: Required. The user provided promotion id to uniquely
12892	// identify the promotion.
12893	PromotionId string `json:"promotionId,omitempty"`
12894
12895	// RedemptionChannel: Required. Redemption channel for the promotion. At
12896	// least one channel is required.
12897	//
12898	// Possible values:
12899	//   "REDEMPTION_CHANNEL_UNSPECIFIED" - Indicates that the channel is
12900	// unspecified.
12901	//   "LOCAL" - Indicates that the channel is local.
12902	//   "ONLINE" - Indicates that the channel is online.
12903	RedemptionChannel []string `json:"redemptionChannel,omitempty"`
12904
12905	// ShippingServiceNames: Shipping service names for thse promotion.
12906	ShippingServiceNames []string `json:"shippingServiceNames,omitempty"`
12907
12908	// TargetCountry: Required. The target country used as part of the
12909	// unique identifier.
12910	TargetCountry string `json:"targetCountry,omitempty"`
12911
12912	// ServerResponse contains the HTTP response code and headers from the
12913	// server.
12914	googleapi.ServerResponse `json:"-"`
12915
12916	// ForceSendFields is a list of field names (e.g. "Brand") to
12917	// unconditionally include in API requests. By default, fields with
12918	// empty or default values are omitted from API requests. However, any
12919	// non-pointer, non-interface field appearing in ForceSendFields will be
12920	// sent to the server regardless of whether the field is empty or not.
12921	// This may be used to include empty fields in Patch requests.
12922	ForceSendFields []string `json:"-"`
12923
12924	// NullFields is a list of field names (e.g. "Brand") to include in API
12925	// requests with the JSON null value. By default, fields with empty
12926	// values are omitted from API requests. However, any field with an
12927	// empty value appearing in NullFields will be sent to the server as
12928	// null. It is an error if a field in this list has a non-empty value.
12929	// This may be used to include null fields in Patch requests.
12930	NullFields []string `json:"-"`
12931}
12932
12933func (s *Promotion) MarshalJSON() ([]byte, error) {
12934	type NoMethod Promotion
12935	raw := NoMethod(*s)
12936	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12937}
12938
12939// PubsubNotificationSettings: Settings for Pub/Sub notifications, all
12940// methods require that the caller is a direct user of the merchant
12941// center account.
12942type PubsubNotificationSettings struct {
12943	// CloudTopicName: Cloud pub/sub topic to which notifications are sent
12944	// (read-only).
12945	CloudTopicName string `json:"cloudTopicName,omitempty"`
12946
12947	// Kind: Identifies what kind of resource this is. Value: the fixed
12948	// string "content#pubsubNotificationSettings"
12949	Kind string `json:"kind,omitempty"`
12950
12951	// RegisteredEvents: List of event types. Acceptable values are: -
12952	// "orderPendingShipment"
12953	RegisteredEvents []string `json:"registeredEvents,omitempty"`
12954
12955	// ServerResponse contains the HTTP response code and headers from the
12956	// server.
12957	googleapi.ServerResponse `json:"-"`
12958
12959	// ForceSendFields is a list of field names (e.g. "CloudTopicName") to
12960	// unconditionally include in API requests. By default, fields with
12961	// empty or default values are omitted from API requests. However, any
12962	// non-pointer, non-interface field appearing in ForceSendFields will be
12963	// sent to the server regardless of whether the field is empty or not.
12964	// This may be used to include empty fields in Patch requests.
12965	ForceSendFields []string `json:"-"`
12966
12967	// NullFields is a list of field names (e.g. "CloudTopicName") to
12968	// include in API requests with the JSON null value. By default, fields
12969	// with empty values are omitted from API requests. However, any field
12970	// with an empty value appearing in NullFields will be sent to the
12971	// server as null. It is an error if a field in this list has a
12972	// non-empty value. This may be used to include null fields in Patch
12973	// requests.
12974	NullFields []string `json:"-"`
12975}
12976
12977func (s *PubsubNotificationSettings) MarshalJSON() ([]byte, error) {
12978	type NoMethod PubsubNotificationSettings
12979	raw := NoMethod(*s)
12980	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12981}
12982
12983type RateGroup struct {
12984	// ApplicableShippingLabels: A list of shipping labels defining the
12985	// products to which this rate group applies to. This is a disjunction:
12986	// only one of the labels has to match for the rate group to apply. May
12987	// only be empty for the last rate group of a service. Required.
12988	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
12989
12990	// CarrierRates: A list of carrier rates that can be referred to by
12991	// `mainTable` or `singleValue`.
12992	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
12993
12994	// MainTable: A table defining the rate group, when `singleValue` is not
12995	// expressive enough. Can only be set if `singleValue` is not set.
12996	MainTable *Table `json:"mainTable,omitempty"`
12997
12998	// Name: Name of the rate group. Optional. If set has to be unique
12999	// within shipping service.
13000	Name string `json:"name,omitempty"`
13001
13002	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
13003	// only be set if `mainTable` and `subtables` are not set.
13004	SingleValue *Value `json:"singleValue,omitempty"`
13005
13006	// Subtables: A list of subtables referred to by `mainTable`. Can only
13007	// be set if `mainTable` is set.
13008	Subtables []*Table `json:"subtables,omitempty"`
13009
13010	// ForceSendFields is a list of field names (e.g.
13011	// "ApplicableShippingLabels") to unconditionally include in API
13012	// requests. By default, fields with empty or default values are omitted
13013	// from API requests. However, any non-pointer, non-interface field
13014	// appearing in ForceSendFields will be sent to the server regardless of
13015	// whether the field is empty or not. This may be used to include empty
13016	// fields in Patch requests.
13017	ForceSendFields []string `json:"-"`
13018
13019	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
13020	// to include in API requests with the JSON null value. By default,
13021	// fields with empty values are omitted from API requests. However, any
13022	// field with an empty value appearing in NullFields will be sent to the
13023	// server as null. It is an error if a field in this list has a
13024	// non-empty value. This may be used to include null fields in Patch
13025	// requests.
13026	NullFields []string `json:"-"`
13027}
13028
13029func (s *RateGroup) MarshalJSON() ([]byte, error) {
13030	type NoMethod RateGroup
13031	raw := NoMethod(*s)
13032	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13033}
13034
13035type RefundReason struct {
13036	// Description: Description of the reason.
13037	Description string `json:"description,omitempty"`
13038
13039	// ReasonCode: Code of the refund reason. Acceptable values are: -
13040	// "adjustment" - "autoPostInternal" -
13041	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
13042	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
13043	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
13044	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
13045	// - "customerSupportRequested" - "deliveredLateByCarrier" -
13046	// "deliveredTooLate" - "expiredItem" -
13047	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
13048	// "failToPushOrderMerchantFulfillmentError" -
13049	// "failToPushOrderToMerchant" -
13050	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
13051	// "invalidCoupon" - "lateShipmentCredit" -
13052	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
13053	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
13054	// "paymentDeclined" - "priceAdjustment" - "priceError" -
13055	// "productArrivedDamaged" - "productNotAsDescribed" -
13056	// "promoReallocation" - "qualityNotAsExpected" -
13057	// "returnRefundAbuse" - "shippingCostAdjustment" -
13058	// "shippingPriceError" - "taxAdjustment" - "taxError" -
13059	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
13060	// "wrongProductShipped"
13061	ReasonCode string `json:"reasonCode,omitempty"`
13062
13063	// ForceSendFields is a list of field names (e.g. "Description") 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. "Description") to include
13072	// in API requests with the JSON null value. By default, fields with
13073	// empty values are omitted from API requests. However, any field with
13074	// an 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 *RefundReason) MarshalJSON() ([]byte, error) {
13081	type NoMethod RefundReason
13082	raw := NoMethod(*s)
13083	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13084}
13085
13086// Region: Represents a geographic region that you can use as a target
13087// with both the `RegionalInventory` and `ShippingSettings` services.
13088// You can define regions as collections of either postal codes or, in
13089// some countries, using predefined geotargets.
13090type Region struct {
13091	// DisplayName: The display name of the region.
13092	DisplayName string `json:"displayName,omitempty"`
13093
13094	// GeotargetArea: A list of geotargets that defines the region area.
13095	GeotargetArea *RegionGeoTargetArea `json:"geotargetArea,omitempty"`
13096
13097	// MerchantId: Output only. Immutable. Merchant that owns the region.
13098	MerchantId int64 `json:"merchantId,omitempty,string"`
13099
13100	// PostalCodeArea: A list of postal codes that defines the region area.
13101	PostalCodeArea *RegionPostalCodeArea `json:"postalCodeArea,omitempty"`
13102
13103	// RegionId: Output only. Immutable. The ID uniquely identifying each
13104	// region.
13105	RegionId string `json:"regionId,omitempty"`
13106
13107	// RegionalInventoryEligible: Output only. Indicates if the region is
13108	// eligible to use in the Regional Inventory configuration.
13109	RegionalInventoryEligible bool `json:"regionalInventoryEligible,omitempty"`
13110
13111	// ShippingEligible: Output only. Indicates if the region is eligible to
13112	// use in the Shipping Services configuration.
13113	ShippingEligible bool `json:"shippingEligible,omitempty"`
13114
13115	// ServerResponse contains the HTTP response code and headers from the
13116	// server.
13117	googleapi.ServerResponse `json:"-"`
13118
13119	// ForceSendFields is a list of field names (e.g. "DisplayName") to
13120	// unconditionally include in API requests. By default, fields with
13121	// empty or default values are omitted from API requests. However, any
13122	// non-pointer, non-interface field appearing in ForceSendFields will be
13123	// sent to the server regardless of whether the field is empty or not.
13124	// This may be used to include empty fields in Patch requests.
13125	ForceSendFields []string `json:"-"`
13126
13127	// NullFields is a list of field names (e.g. "DisplayName") to include
13128	// in API requests with the JSON null value. By default, fields with
13129	// empty values are omitted from API requests. However, any field with
13130	// an empty value appearing in NullFields will be sent to the server as
13131	// null. It is an error if a field in this list has a non-empty value.
13132	// This may be used to include null fields in Patch requests.
13133	NullFields []string `json:"-"`
13134}
13135
13136func (s *Region) MarshalJSON() ([]byte, error) {
13137	type NoMethod Region
13138	raw := NoMethod(*s)
13139	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13140}
13141
13142// RegionGeoTargetArea: A list of geotargets that defines the region
13143// area.
13144type RegionGeoTargetArea struct {
13145	// GeotargetCriteriaIds: Required. A non-empty list of location IDs
13146	// (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
13147	// They must all be of the same location type (e.g., state).
13148	GeotargetCriteriaIds googleapi.Int64s `json:"geotargetCriteriaIds,omitempty"`
13149
13150	// ForceSendFields is a list of field names (e.g.
13151	// "GeotargetCriteriaIds") to unconditionally include in API requests.
13152	// By default, fields with empty or default values are omitted from API
13153	// requests. However, any non-pointer, non-interface field appearing in
13154	// ForceSendFields will be sent to the server regardless of whether the
13155	// field is empty or not. This may be used to include empty fields in
13156	// Patch requests.
13157	ForceSendFields []string `json:"-"`
13158
13159	// NullFields is a list of field names (e.g. "GeotargetCriteriaIds") to
13160	// include in API requests with the JSON null value. By default, fields
13161	// with empty values are omitted from API requests. However, any field
13162	// with an empty value appearing in NullFields will be sent to the
13163	// server as null. It is an error if a field in this list has a
13164	// non-empty value. This may be used to include null fields in Patch
13165	// requests.
13166	NullFields []string `json:"-"`
13167}
13168
13169func (s *RegionGeoTargetArea) MarshalJSON() ([]byte, error) {
13170	type NoMethod RegionGeoTargetArea
13171	raw := NoMethod(*s)
13172	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13173}
13174
13175// RegionPostalCodeArea: A list of postal codes that defines the region
13176// area. Note: All regions defined using postal codes are accessible via
13177// the account's `ShippingSettings.postalCodeGroups` resource.
13178type RegionPostalCodeArea struct {
13179	// PostalCodes: Required. A range of postal codes.
13180	PostalCodes []*RegionPostalCodeAreaPostalCodeRange `json:"postalCodes,omitempty"`
13181
13182	// RegionCode: Required. CLDR territory code or the country the postal
13183	// code group applies to.
13184	RegionCode string `json:"regionCode,omitempty"`
13185
13186	// ForceSendFields is a list of field names (e.g. "PostalCodes") to
13187	// unconditionally include in API requests. By default, fields with
13188	// empty or default values are omitted from API requests. However, any
13189	// non-pointer, non-interface field appearing in ForceSendFields will be
13190	// sent to the server regardless of whether the field is empty or not.
13191	// This may be used to include empty fields in Patch requests.
13192	ForceSendFields []string `json:"-"`
13193
13194	// NullFields is a list of field names (e.g. "PostalCodes") to include
13195	// in API requests with the JSON null value. By default, fields with
13196	// empty values are omitted from API requests. However, any field with
13197	// an empty value appearing in NullFields will be sent to the server as
13198	// null. It is an error if a field in this list has a non-empty value.
13199	// This may be used to include null fields in Patch requests.
13200	NullFields []string `json:"-"`
13201}
13202
13203func (s *RegionPostalCodeArea) MarshalJSON() ([]byte, error) {
13204	type NoMethod RegionPostalCodeArea
13205	raw := NoMethod(*s)
13206	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13207}
13208
13209// RegionPostalCodeAreaPostalCodeRange: A range of postal codes that
13210// defines the region area.
13211type RegionPostalCodeAreaPostalCodeRange struct {
13212	// Begin: Required. A postal code or a pattern of the form prefix*
13213	// denoting the inclusive lower bound of the range defining the area.
13214	// Examples values: "94108", "9410*", "9*".
13215	Begin string `json:"begin,omitempty"`
13216
13217	// End: Optional. A postal code or a pattern of the form prefix*
13218	// denoting the inclusive upper bound of the range defining the area. It
13219	// must have the same length as postalCodeRangeBegin: if
13220	// postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be
13221	// a postal code too; if postalCodeRangeBegin is a pattern then
13222	// postalCodeRangeEnd must be a pattern with the same prefix length.
13223	// Optional: if not set, then the area is defined as being all the
13224	// postal codes matching postalCodeRangeBegin.
13225	End string `json:"end,omitempty"`
13226
13227	// ForceSendFields is a list of field names (e.g. "Begin") to
13228	// unconditionally include in API requests. By default, fields with
13229	// empty or default values are omitted from API requests. However, any
13230	// non-pointer, non-interface field appearing in ForceSendFields will be
13231	// sent to the server regardless of whether the field is empty or not.
13232	// This may be used to include empty fields in Patch requests.
13233	ForceSendFields []string `json:"-"`
13234
13235	// NullFields is a list of field names (e.g. "Begin") to include in API
13236	// requests with the JSON null value. By default, fields with empty
13237	// values are omitted from API requests. However, any field with an
13238	// empty value appearing in NullFields will be sent to the server as
13239	// null. It is an error if a field in this list has a non-empty value.
13240	// This may be used to include null fields in Patch requests.
13241	NullFields []string `json:"-"`
13242}
13243
13244func (s *RegionPostalCodeAreaPostalCodeRange) MarshalJSON() ([]byte, error) {
13245	type NoMethod RegionPostalCodeAreaPostalCodeRange
13246	raw := NoMethod(*s)
13247	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13248}
13249
13250// RegionalInventory: Regional inventory resource. contains the regional
13251// name and all attributes which are overridden for the specified
13252// region.
13253type RegionalInventory struct {
13254	// Availability: The availability of the product.
13255	Availability string `json:"availability,omitempty"`
13256
13257	// CustomAttributes: A list of custom (merchant-provided) attributes. It
13258	// can also be used for submitting any attribute of the feed
13259	// specification in its generic form.
13260	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
13261
13262	// Kind: Identifies what kind of resource this is. Value: the fixed
13263	// string "content#regionalInventory".
13264	Kind string `json:"kind,omitempty"`
13265
13266	// Price: The price of the product.
13267	Price *Price `json:"price,omitempty"`
13268
13269	// RegionId: The ID uniquely identifying each region.
13270	RegionId string `json:"regionId,omitempty"`
13271
13272	// SalePrice: The sale price of the product. Mandatory if
13273	// `sale_price_effective_date` is defined.
13274	SalePrice *Price `json:"salePrice,omitempty"`
13275
13276	// SalePriceEffectiveDate: A date range represented by a pair of ISO
13277	// 8601 dates separated by a space, comma, or slash. Both dates might be
13278	// specified as 'null' if undecided.
13279	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
13280
13281	// ServerResponse contains the HTTP response code and headers from the
13282	// server.
13283	googleapi.ServerResponse `json:"-"`
13284
13285	// ForceSendFields is a list of field names (e.g. "Availability") to
13286	// unconditionally include in API requests. By default, fields with
13287	// empty or default values are omitted from API requests. However, any
13288	// non-pointer, non-interface field appearing in ForceSendFields will be
13289	// sent to the server regardless of whether the field is empty or not.
13290	// This may be used to include empty fields in Patch requests.
13291	ForceSendFields []string `json:"-"`
13292
13293	// NullFields is a list of field names (e.g. "Availability") to include
13294	// in API requests with the JSON null value. By default, fields with
13295	// empty values are omitted from API requests. However, any field with
13296	// an empty value appearing in NullFields will be sent to the server as
13297	// null. It is an error if a field in this list has a non-empty value.
13298	// This may be used to include null fields in Patch requests.
13299	NullFields []string `json:"-"`
13300}
13301
13302func (s *RegionalInventory) MarshalJSON() ([]byte, error) {
13303	type NoMethod RegionalInventory
13304	raw := NoMethod(*s)
13305	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13306}
13307
13308type RegionalinventoryCustomBatchRequest struct {
13309	// Entries: The request entries to be processed in the batch.
13310	Entries []*RegionalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
13311
13312	// ForceSendFields is a list of field names (e.g. "Entries") to
13313	// unconditionally include in API requests. By default, fields with
13314	// empty or default values are omitted from API requests. However, any
13315	// non-pointer, non-interface field appearing in ForceSendFields will be
13316	// sent to the server regardless of whether the field is empty or not.
13317	// This may be used to include empty fields in Patch requests.
13318	ForceSendFields []string `json:"-"`
13319
13320	// NullFields is a list of field names (e.g. "Entries") to include in
13321	// API requests with the JSON null value. By default, fields with empty
13322	// values are omitted from API requests. However, any field with an
13323	// empty value appearing in NullFields will be sent to the server as
13324	// null. It is an error if a field in this list has a non-empty value.
13325	// This may be used to include null fields in Patch requests.
13326	NullFields []string `json:"-"`
13327}
13328
13329func (s *RegionalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
13330	type NoMethod RegionalinventoryCustomBatchRequest
13331	raw := NoMethod(*s)
13332	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13333}
13334
13335// RegionalinventoryCustomBatchRequestEntry: A batch entry encoding a
13336// single non-batch regional inventory request.
13337type RegionalinventoryCustomBatchRequestEntry struct {
13338	// BatchId: An entry ID, unique within the batch request.
13339	BatchId int64 `json:"batchId,omitempty"`
13340
13341	// MerchantId: The ID of the managing account.
13342	MerchantId uint64 `json:"merchantId,omitempty,string"`
13343
13344	// Method: Method of the batch request entry. Acceptable values are: -
13345	// "insert"
13346	Method string `json:"method,omitempty"`
13347
13348	// ProductId: The ID of the product for which to update price and
13349	// availability.
13350	ProductId string `json:"productId,omitempty"`
13351
13352	// RegionalInventory: Price and availability of the product.
13353	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
13354
13355	// ForceSendFields is a list of field names (e.g. "BatchId") to
13356	// unconditionally include in API requests. By default, fields with
13357	// empty or default values are omitted from API requests. However, any
13358	// non-pointer, non-interface field appearing in ForceSendFields will be
13359	// sent to the server regardless of whether the field is empty or not.
13360	// This may be used to include empty fields in Patch requests.
13361	ForceSendFields []string `json:"-"`
13362
13363	// NullFields is a list of field names (e.g. "BatchId") to include in
13364	// API requests with the JSON null value. By default, fields with empty
13365	// values are omitted from API requests. However, any field with an
13366	// empty value appearing in NullFields will be sent to the server as
13367	// null. It is an error if a field in this list has a non-empty value.
13368	// This may be used to include null fields in Patch requests.
13369	NullFields []string `json:"-"`
13370}
13371
13372func (s *RegionalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
13373	type NoMethod RegionalinventoryCustomBatchRequestEntry
13374	raw := NoMethod(*s)
13375	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13376}
13377
13378type RegionalinventoryCustomBatchResponse struct {
13379	// Entries: The result of the execution of the batch requests.
13380	Entries []*RegionalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
13381
13382	// Kind: Identifies what kind of resource this is. Value: the fixed
13383	// string "content#regionalinventoryCustomBatchResponse".
13384	Kind string `json:"kind,omitempty"`
13385
13386	// ServerResponse contains the HTTP response code and headers from the
13387	// server.
13388	googleapi.ServerResponse `json:"-"`
13389
13390	// ForceSendFields is a list of field names (e.g. "Entries") to
13391	// unconditionally include in API requests. By default, fields with
13392	// empty or default values are omitted from API requests. However, any
13393	// non-pointer, non-interface field appearing in ForceSendFields will be
13394	// sent to the server regardless of whether the field is empty or not.
13395	// This may be used to include empty fields in Patch requests.
13396	ForceSendFields []string `json:"-"`
13397
13398	// NullFields is a list of field names (e.g. "Entries") to include in
13399	// API requests with the JSON null value. By default, fields with empty
13400	// values are omitted from API requests. However, any field with an
13401	// empty value appearing in NullFields will be sent to the server as
13402	// null. It is an error if a field in this list has a non-empty value.
13403	// This may be used to include null fields in Patch requests.
13404	NullFields []string `json:"-"`
13405}
13406
13407func (s *RegionalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
13408	type NoMethod RegionalinventoryCustomBatchResponse
13409	raw := NoMethod(*s)
13410	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13411}
13412
13413// RegionalinventoryCustomBatchResponseEntry: A batch entry encoding a
13414// single non-batch regional inventory response.
13415type RegionalinventoryCustomBatchResponseEntry struct {
13416	// BatchId: The ID of the request entry this entry responds to.
13417	BatchId int64 `json:"batchId,omitempty"`
13418
13419	// Errors: A list of errors defined if and only if the request failed.
13420	Errors *Errors `json:"errors,omitempty"`
13421
13422	// Kind: Identifies what kind of resource this is. Value: the fixed
13423	// string "content#regionalinventoryCustomBatchResponseEntry".
13424	Kind string `json:"kind,omitempty"`
13425
13426	// RegionalInventory: Price and availability of the product.
13427	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
13428
13429	// ForceSendFields is a list of field names (e.g. "BatchId") to
13430	// unconditionally include in API requests. By default, fields with
13431	// empty or default values are omitted from API requests. However, any
13432	// non-pointer, non-interface field appearing in ForceSendFields will be
13433	// sent to the server regardless of whether the field is empty or not.
13434	// This may be used to include empty fields in Patch requests.
13435	ForceSendFields []string `json:"-"`
13436
13437	// NullFields is a list of field names (e.g. "BatchId") to include in
13438	// API requests with the JSON null value. By default, fields with empty
13439	// values are omitted from API requests. However, any field with an
13440	// empty value appearing in NullFields will be sent to the server as
13441	// null. It is an error if a field in this list has a non-empty value.
13442	// This may be used to include null fields in Patch requests.
13443	NullFields []string `json:"-"`
13444}
13445
13446func (s *RegionalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
13447	type NoMethod RegionalinventoryCustomBatchResponseEntry
13448	raw := NoMethod(*s)
13449	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13450}
13451
13452// ReportRow: Result row returned from the search query.
13453type ReportRow struct {
13454	// Metrics: Metrics requested by the merchant in the query. Metric
13455	// values are only set for metrics requested explicitly in the query.
13456	Metrics *Metrics `json:"metrics,omitempty"`
13457
13458	// Segments: Segmentation dimensions requested by the merchant in the
13459	// query. Dimension values are only set for dimensions requested
13460	// explicitly in the query.
13461	Segments *Segments `json:"segments,omitempty"`
13462
13463	// ForceSendFields is a list of field names (e.g. "Metrics") to
13464	// unconditionally include in API requests. By default, fields with
13465	// empty or default values are omitted from API requests. However, any
13466	// non-pointer, non-interface field appearing in ForceSendFields will be
13467	// sent to the server regardless of whether the field is empty or not.
13468	// This may be used to include empty fields in Patch requests.
13469	ForceSendFields []string `json:"-"`
13470
13471	// NullFields is a list of field names (e.g. "Metrics") to include in
13472	// API requests with the JSON null value. By default, fields with empty
13473	// values are omitted from API requests. However, any field with an
13474	// empty value appearing in NullFields will be sent to the server as
13475	// null. It is an error if a field in this list has a non-empty value.
13476	// This may be used to include null fields in Patch requests.
13477	NullFields []string `json:"-"`
13478}
13479
13480func (s *ReportRow) MarshalJSON() ([]byte, error) {
13481	type NoMethod ReportRow
13482	raw := NoMethod(*s)
13483	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13484}
13485
13486// RepricingProductReport: Resource that represents a daily Repricing
13487// product report. Each report contains stats for a single type of
13488// Repricing rule for a single product on a given day. If there are
13489// multiple rules of the same type for the product on that day, the
13490// report lists all the rules by rule ids, combines the stats, and
13491// paginates the results by date. To retrieve the stats of a particular
13492// rule, provide the rule_id in the request.
13493type RepricingProductReport struct {
13494	// ApplicationCount: Total count of Repricer applications. This value
13495	// captures how many times the rule of this type was applied to this
13496	// product during this reporting period.
13497	ApplicationCount int64 `json:"applicationCount,omitempty,string"`
13498
13499	// BuyboxWinningProductStats: Stats specific to buybox winning rules for
13500	// product report (deprecated).
13501	BuyboxWinningProductStats *RepricingProductReportBuyboxWinningProductStats `json:"buyboxWinningProductStats,omitempty"`
13502
13503	// Date: Date of the stats in this report. The report starts and ends
13504	// according to the merchant's timezone.
13505	Date *Date `json:"date,omitempty"`
13506
13507	// HighWatermark: Maximum displayed price after repriced during this
13508	// reporting period.
13509	HighWatermark *PriceAmount `json:"highWatermark,omitempty"`
13510
13511	// InapplicabilityDetails: List of all reasons the rule did not apply to
13512	// the product during the specified reporting period.
13513	InapplicabilityDetails []*InapplicabilityDetails `json:"inapplicabilityDetails,omitempty"`
13514
13515	// LowWatermark: Minimum displayed price after repriced during this
13516	// reporting period.
13517	LowWatermark *PriceAmount `json:"lowWatermark,omitempty"`
13518
13519	// OrderItemCount: Total unit count of impacted products ordered while
13520	// the rule was active on the date of the report. This count includes
13521	// all orders that were started while the rule was active, even if the
13522	// rule was no longer active when the order was completed.
13523	OrderItemCount int64 `json:"orderItemCount,omitempty"`
13524
13525	// RuleIds: Ids of the Repricing rule for this report.
13526	RuleIds []string `json:"ruleIds,omitempty"`
13527
13528	// TotalGmv: Total GMV generated by impacted products while the rule was
13529	// active on the date of the report. This value includes all orders that
13530	// were started while the rule was active, even if the rule was no
13531	// longer active when the order was completed.
13532	TotalGmv *PriceAmount `json:"totalGmv,omitempty"`
13533
13534	// Type: Type of the rule.
13535	//
13536	// Possible values:
13537	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13538	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13539	// Google SA merchants. If this rule is chosen, repricer will adjust the
13540	// offer price based on statistical metrics (currently only min is
13541	// available) among other merchants who sell the same product. Details
13542	// need to be provdided in the RuleDefinition.
13543	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13544	// adjust the offer price based on the offer's sale cost which is
13545	// provided by the merchant.
13546	//   "TYPE_SALES_VOLUME_BASED" - Sales volume based rule. Repricer will
13547	// adjust the offer price based on the offer's sales volume in the past
13548	// period of time defined within the rule.
13549	//   "TYPE_COMPETITIVE_PRICE" - Competitive price rule. Repricer will
13550	// adjust the offer price based on the min price from a list of unnamed
13551	// big competitors.
13552	Type string `json:"type,omitempty"`
13553
13554	// ForceSendFields is a list of field names (e.g. "ApplicationCount") to
13555	// unconditionally include in API requests. By default, fields with
13556	// empty or default values are omitted from API requests. However, any
13557	// non-pointer, non-interface field appearing in ForceSendFields will be
13558	// sent to the server regardless of whether the field is empty or not.
13559	// This may be used to include empty fields in Patch requests.
13560	ForceSendFields []string `json:"-"`
13561
13562	// NullFields is a list of field names (e.g. "ApplicationCount") to
13563	// include in API requests with the JSON null value. By default, fields
13564	// with empty values are omitted from API requests. However, any field
13565	// with an empty value appearing in NullFields will be sent to the
13566	// server as null. It is an error if a field in this list has a
13567	// non-empty value. This may be used to include null fields in Patch
13568	// requests.
13569	NullFields []string `json:"-"`
13570}
13571
13572func (s *RepricingProductReport) MarshalJSON() ([]byte, error) {
13573	type NoMethod RepricingProductReport
13574	raw := NoMethod(*s)
13575	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13576}
13577
13578// RepricingProductReportBuyboxWinningProductStats: Stats specific to
13579// buybox winning rules for product report.
13580type RepricingProductReportBuyboxWinningProductStats struct {
13581	// BuyboxWinsCount: Number of times this product won the buybox with
13582	// these rules during this time period.
13583	BuyboxWinsCount int64 `json:"buyboxWinsCount,omitempty"`
13584
13585	// ForceSendFields is a list of field names (e.g. "BuyboxWinsCount") to
13586	// unconditionally include in API requests. By default, fields with
13587	// empty or default values are omitted from API requests. However, any
13588	// non-pointer, non-interface field appearing in ForceSendFields will be
13589	// sent to the server regardless of whether the field is empty or not.
13590	// This may be used to include empty fields in Patch requests.
13591	ForceSendFields []string `json:"-"`
13592
13593	// NullFields is a list of field names (e.g. "BuyboxWinsCount") to
13594	// include in API requests with the JSON null value. By default, fields
13595	// with empty values are omitted from API requests. However, any field
13596	// with an empty value appearing in NullFields will be sent to the
13597	// server as null. It is an error if a field in this list has a
13598	// non-empty value. This may be used to include null fields in Patch
13599	// requests.
13600	NullFields []string `json:"-"`
13601}
13602
13603func (s *RepricingProductReportBuyboxWinningProductStats) MarshalJSON() ([]byte, error) {
13604	type NoMethod RepricingProductReportBuyboxWinningProductStats
13605	raw := NoMethod(*s)
13606	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13607}
13608
13609// RepricingRule: Represents a repricing rule. A repricing rule is used
13610// by shopping serving to adjust transactable offer prices if conditions
13611// are met. Next ID: 24
13612type RepricingRule struct {
13613	// CogsBasedRule: The rule definition for TYPE_COGS_BASED. Required when
13614	// the rule type is TYPE_COGS_BASED.
13615	CogsBasedRule *RepricingRuleCostOfGoodsSaleRule `json:"cogsBasedRule,omitempty"`
13616
13617	// CountryCode: Required. Immutable. CLDR country code
13618	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
13619	// (e.g. "US").
13620	CountryCode string `json:"countryCode,omitempty"`
13621
13622	// EffectiveTimePeriod: Required. Time period when the rule should take
13623	// effect.
13624	EffectiveTimePeriod *RepricingRuleEffectiveTime `json:"effectiveTimePeriod,omitempty"`
13625
13626	// EligibleOfferMatcher: Required. Match criteria for the eligible
13627	// offers.
13628	EligibleOfferMatcher *RepricingRuleEligibleOfferMatcher `json:"eligibleOfferMatcher,omitempty"`
13629
13630	// LanguageCode: Required. Immutable. The two-letter ISO 639-1 language
13631	// code associated with the repricing rule.
13632	LanguageCode string `json:"languageCode,omitempty"`
13633
13634	// MerchantId: Output only. Immutable. Merchant that owns the repricing
13635	// rule.
13636	MerchantId int64 `json:"merchantId,omitempty,string"`
13637
13638	// Paused: Represents whether a rule is paused. A paused rule will
13639	// behave like a non-paused rule within CRUD operations, with the major
13640	// difference that a paused rule will not be evaluated and will have no
13641	// effect on offers.
13642	Paused bool `json:"paused,omitempty"`
13643
13644	// Restriction: Required. Restriction of the rule appliance.
13645	Restriction *RepricingRuleRestriction `json:"restriction,omitempty"`
13646
13647	// RuleId: Output only. Immutable. The ID to uniquely identify each
13648	// repricing rule.
13649	RuleId string `json:"ruleId,omitempty"`
13650
13651	// StatsBasedRule: The rule definition for TYPE_STATS_BASED. Required
13652	// when the rule type is TYPE_STATS_BASED.
13653	StatsBasedRule *RepricingRuleStatsBasedRule `json:"statsBasedRule,omitempty"`
13654
13655	// Title: The title for the rule.
13656	Title string `json:"title,omitempty"`
13657
13658	// Type: Required. Immutable. The type of the rule.
13659	//
13660	// Possible values:
13661	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13662	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13663	// Google SA merchants. If this rule is chosen, repricer will adjust the
13664	// offer price based on statistical metrics (currently only min is
13665	// available) among other merchants who sell the same product. Details
13666	// need to be provdided in the RuleDefinition.
13667	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13668	// adjust the offer price based on the offer's sale cost which is
13669	// provided by the merchant.
13670	//   "TYPE_SALES_VOLUME_BASED" - Sales volume based rule. Repricer will
13671	// adjust the offer price based on the offer's sales volume in the past
13672	// period of time defined within the rule.
13673	//   "TYPE_COMPETITIVE_PRICE" - Competitive price rule. Repricer will
13674	// adjust the offer price based on the min price from a list of unnamed
13675	// big competitors.
13676	Type string `json:"type,omitempty"`
13677
13678	// ServerResponse contains the HTTP response code and headers from the
13679	// server.
13680	googleapi.ServerResponse `json:"-"`
13681
13682	// ForceSendFields is a list of field names (e.g. "CogsBasedRule") to
13683	// unconditionally include in API requests. By default, fields with
13684	// empty or default values are omitted from API requests. However, any
13685	// non-pointer, non-interface field appearing in ForceSendFields will be
13686	// sent to the server regardless of whether the field is empty or not.
13687	// This may be used to include empty fields in Patch requests.
13688	ForceSendFields []string `json:"-"`
13689
13690	// NullFields is a list of field names (e.g. "CogsBasedRule") to include
13691	// in API requests with the JSON null value. By default, fields with
13692	// empty values are omitted from API requests. However, any field with
13693	// an empty value appearing in NullFields will be sent to the server as
13694	// null. It is an error if a field in this list has a non-empty value.
13695	// This may be used to include null fields in Patch requests.
13696	NullFields []string `json:"-"`
13697}
13698
13699func (s *RepricingRule) MarshalJSON() ([]byte, error) {
13700	type NoMethod RepricingRule
13701	raw := NoMethod(*s)
13702	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13703}
13704
13705// RepricingRuleCostOfGoodsSaleRule: A repricing rule that changes the
13706// sale price based on cost of goods sale.
13707type RepricingRuleCostOfGoodsSaleRule struct {
13708	// PercentageDelta: The percent change against the COGS. Ex: 20 would
13709	// mean to set the adjusted price 1.2X of the COGS data.
13710	PercentageDelta int64 `json:"percentageDelta,omitempty"`
13711
13712	// PriceDelta: The price delta against the COGS. E.g. 2 means $2 more of
13713	// the COGS.
13714	PriceDelta string `json:"priceDelta,omitempty"`
13715
13716	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
13717	// unconditionally include in API requests. By default, fields with
13718	// empty or default values are omitted from API requests. However, any
13719	// non-pointer, non-interface field appearing in ForceSendFields will be
13720	// sent to the server regardless of whether the field is empty or not.
13721	// This may be used to include empty fields in Patch requests.
13722	ForceSendFields []string `json:"-"`
13723
13724	// NullFields is a list of field names (e.g. "PercentageDelta") to
13725	// include in API requests with the JSON null value. By default, fields
13726	// with empty values are omitted from API requests. However, any field
13727	// with an empty value appearing in NullFields will be sent to the
13728	// server as null. It is an error if a field in this list has a
13729	// non-empty value. This may be used to include null fields in Patch
13730	// requests.
13731	NullFields []string `json:"-"`
13732}
13733
13734func (s *RepricingRuleCostOfGoodsSaleRule) MarshalJSON() ([]byte, error) {
13735	type NoMethod RepricingRuleCostOfGoodsSaleRule
13736	raw := NoMethod(*s)
13737	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13738}
13739
13740type RepricingRuleEffectiveTime struct {
13741	// FixedTimePeriods: A list of fixed time periods combined with OR. The
13742	// maximum number of entries is limited to 5.
13743	FixedTimePeriods []*RepricingRuleEffectiveTimeFixedTimePeriod `json:"fixedTimePeriods,omitempty"`
13744
13745	// ForceSendFields is a list of field names (e.g. "FixedTimePeriods") to
13746	// unconditionally include in API requests. By default, fields with
13747	// empty or default values are omitted from API requests. However, any
13748	// non-pointer, non-interface field appearing in ForceSendFields will be
13749	// sent to the server regardless of whether the field is empty or not.
13750	// This may be used to include empty fields in Patch requests.
13751	ForceSendFields []string `json:"-"`
13752
13753	// NullFields is a list of field names (e.g. "FixedTimePeriods") to
13754	// include in API requests with the JSON null value. By default, fields
13755	// with empty values are omitted from API requests. However, any field
13756	// with an empty value appearing in NullFields will be sent to the
13757	// server as null. It is an error if a field in this list has a
13758	// non-empty value. This may be used to include null fields in Patch
13759	// requests.
13760	NullFields []string `json:"-"`
13761}
13762
13763func (s *RepricingRuleEffectiveTime) MarshalJSON() ([]byte, error) {
13764	type NoMethod RepricingRuleEffectiveTime
13765	raw := NoMethod(*s)
13766	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13767}
13768
13769// RepricingRuleEffectiveTimeFixedTimePeriod: Definition of a fixed time
13770// period.
13771type RepricingRuleEffectiveTimeFixedTimePeriod struct {
13772	// EndTime: The end time (exclusive) of the period. It can only be hour
13773	// granularity.
13774	EndTime string `json:"endTime,omitempty"`
13775
13776	// StartTime: The start time (inclusive) of the period. It can only be
13777	// hour granularity.
13778	StartTime string `json:"startTime,omitempty"`
13779
13780	// ForceSendFields is a list of field names (e.g. "EndTime") to
13781	// unconditionally include in API requests. By default, fields with
13782	// empty or default values are omitted from API requests. However, any
13783	// non-pointer, non-interface field appearing in ForceSendFields will be
13784	// sent to the server regardless of whether the field is empty or not.
13785	// This may be used to include empty fields in Patch requests.
13786	ForceSendFields []string `json:"-"`
13787
13788	// NullFields is a list of field names (e.g. "EndTime") to include in
13789	// API requests with the JSON null value. By default, fields with empty
13790	// values are omitted from API requests. However, any field with an
13791	// empty value appearing in NullFields will be sent to the server as
13792	// null. It is an error if a field in this list has a non-empty value.
13793	// This may be used to include null fields in Patch requests.
13794	NullFields []string `json:"-"`
13795}
13796
13797func (s *RepricingRuleEffectiveTimeFixedTimePeriod) MarshalJSON() ([]byte, error) {
13798	type NoMethod RepricingRuleEffectiveTimeFixedTimePeriod
13799	raw := NoMethod(*s)
13800	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13801}
13802
13803// RepricingRuleEligibleOfferMatcher: Matcher that specifies eligible
13804// offers. When the USE_FEED_ATTRIBUTE option is selected, only the
13805// repricing_rule_id attribute on the product feed is used to specify
13806// offer-rule mapping. When the CUSTOM_FILTER option is selected, only
13807// the *_matcher fields are used to filter the offers for offer-rule
13808// mapping. If the CUSTOM_FILTER option is selected, an offer needs to
13809// satisfy each custom filter matcher to be eligible for a rule. Size
13810// limit: the sum of the number of entries in all the matchers should
13811// not exceed 20. For example, there can be 15 product ids and 5 brands,
13812// but not 10 product ids and 11 brands.
13813type RepricingRuleEligibleOfferMatcher struct {
13814	// BrandMatcher: Filter by the brand.
13815	BrandMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"brandMatcher,omitempty"`
13816
13817	// ItemGroupIdMatcher: Filter by the item group id.
13818	ItemGroupIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"itemGroupIdMatcher,omitempty"`
13819
13820	// MatcherOption: Determines whether to use the custom matchers or the
13821	// product feed attribute "repricing_rule_id" to specify offer-rule
13822	// mapping.
13823	//
13824	// Possible values:
13825	//   "MATCHER_OPTION_UNSPECIFIED" - Unused.
13826	//   "MATCHER_OPTION_CUSTOM_FILTER" - Use custom filters.
13827	//   "MATCHER_OPTION_USE_FEED_ATTRIBUTE" - Use repricing_rule_id feed
13828	// attribute on the product resource to specify offer-rule mapping.
13829	//   "MATCHER_OPTION_ALL_PRODUCTS" - Matching all products.
13830	MatcherOption string `json:"matcherOption,omitempty"`
13831
13832	// OfferIdMatcher: Filter by the offer id.
13833	OfferIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"offerIdMatcher,omitempty"`
13834
13835	// SkipWhenOnPromotion: When true, the rule won't be applied to offers
13836	// with active promotions.
13837	SkipWhenOnPromotion bool `json:"skipWhenOnPromotion,omitempty"`
13838
13839	// ForceSendFields is a list of field names (e.g. "BrandMatcher") to
13840	// unconditionally include in API requests. By default, fields with
13841	// empty or default values are omitted from API requests. However, any
13842	// non-pointer, non-interface field appearing in ForceSendFields will be
13843	// sent to the server regardless of whether the field is empty or not.
13844	// This may be used to include empty fields in Patch requests.
13845	ForceSendFields []string `json:"-"`
13846
13847	// NullFields is a list of field names (e.g. "BrandMatcher") to include
13848	// in API requests with the JSON null value. By default, fields with
13849	// empty values are omitted from API requests. However, any field with
13850	// an empty value appearing in NullFields will be sent to the server as
13851	// null. It is an error if a field in this list has a non-empty value.
13852	// This may be used to include null fields in Patch requests.
13853	NullFields []string `json:"-"`
13854}
13855
13856func (s *RepricingRuleEligibleOfferMatcher) MarshalJSON() ([]byte, error) {
13857	type NoMethod RepricingRuleEligibleOfferMatcher
13858	raw := NoMethod(*s)
13859	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13860}
13861
13862// RepricingRuleEligibleOfferMatcherStringMatcher: Matcher by string
13863// attributes.
13864type RepricingRuleEligibleOfferMatcherStringMatcher struct {
13865	// StrAttributes: String attributes, as long as such attribute of an
13866	// offer is one of the string attribute values, the offer is considered
13867	// as passing the matcher. The string matcher checks an offer for
13868	// inclusivity in the string attributes, not equality. Only literal
13869	// string matching is supported, no regex.
13870	StrAttributes []string `json:"strAttributes,omitempty"`
13871
13872	// ForceSendFields is a list of field names (e.g. "StrAttributes") to
13873	// unconditionally include in API requests. By default, fields with
13874	// empty or default values are omitted from API requests. However, any
13875	// non-pointer, non-interface field appearing in ForceSendFields will be
13876	// sent to the server regardless of whether the field is empty or not.
13877	// This may be used to include empty fields in Patch requests.
13878	ForceSendFields []string `json:"-"`
13879
13880	// NullFields is a list of field names (e.g. "StrAttributes") to include
13881	// in API requests with the JSON null value. By default, fields with
13882	// empty values are omitted from API requests. However, any field with
13883	// an empty value appearing in NullFields will be sent to the server as
13884	// null. It is an error if a field in this list has a non-empty value.
13885	// This may be used to include null fields in Patch requests.
13886	NullFields []string `json:"-"`
13887}
13888
13889func (s *RepricingRuleEligibleOfferMatcherStringMatcher) MarshalJSON() ([]byte, error) {
13890	type NoMethod RepricingRuleEligibleOfferMatcherStringMatcher
13891	raw := NoMethod(*s)
13892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13893}
13894
13895// RepricingRuleReport: Resource that represents a daily Repricing rule
13896// report. Next ID: 11
13897type RepricingRuleReport struct {
13898	// BuyboxWinningRuleStats: Stats specific to buybox winning rules for
13899	// rule report (deprecated).
13900	BuyboxWinningRuleStats *RepricingRuleReportBuyboxWinningRuleStats `json:"buyboxWinningRuleStats,omitempty"`
13901
13902	// Date: Date of the stats in this report. The report starts and ends
13903	// according to the merchant's timezone.
13904	Date *Date `json:"date,omitempty"`
13905
13906	// ImpactedProducts: List of product ids that are impacted by this rule
13907	// during this reporting period. Out of stock products and products not
13908	// searched for by customers are examples of non-impacted products.
13909	ImpactedProducts []string `json:"impactedProducts,omitempty"`
13910
13911	// InapplicabilityDetails: List of all reasons the rule did not apply to
13912	// the inapplicable products during the specified reporting period.
13913	InapplicabilityDetails []*InapplicabilityDetails `json:"inapplicabilityDetails,omitempty"`
13914
13915	// InapplicableProducts: List of product ids that are inapplicable to
13916	// this rule during this reporting period. To get the inapplicable
13917	// reason for a specific product, see RepricingProductReport.
13918	InapplicableProducts []string `json:"inapplicableProducts,omitempty"`
13919
13920	// OrderItemCount: Total unit count of impacted products ordered while
13921	// the rule was active on the date of the report. This count includes
13922	// all orders that were started while the rule was active, even if the
13923	// rule was no longer active when the order was completed.
13924	OrderItemCount int64 `json:"orderItemCount,omitempty"`
13925
13926	// RuleId: Id of the Repricing rule for this report.
13927	RuleId string `json:"ruleId,omitempty"`
13928
13929	// TotalGmv: Total GMV generated by impacted products while the rule was
13930	// active on the date of the report. This value includes all orders that
13931	// were started while the rule was active, even if the rule was no
13932	// longer active when the order was completed.
13933	TotalGmv *PriceAmount `json:"totalGmv,omitempty"`
13934
13935	// Type: Type of the rule.
13936	//
13937	// Possible values:
13938	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13939	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13940	// Google SA merchants. If this rule is chosen, repricer will adjust the
13941	// offer price based on statistical metrics (currently only min is
13942	// available) among other merchants who sell the same product. Details
13943	// need to be provdided in the RuleDefinition.
13944	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13945	// adjust the offer price based on the offer's sale cost which is
13946	// provided by the merchant.
13947	//   "TYPE_SALES_VOLUME_BASED" - Sales volume based rule. Repricer will
13948	// adjust the offer price based on the offer's sales volume in the past
13949	// period of time defined within the rule.
13950	//   "TYPE_COMPETITIVE_PRICE" - Competitive price rule. Repricer will
13951	// adjust the offer price based on the min price from a list of unnamed
13952	// big competitors.
13953	Type string `json:"type,omitempty"`
13954
13955	// ForceSendFields is a list of field names (e.g.
13956	// "BuyboxWinningRuleStats") to unconditionally include in API requests.
13957	// By default, fields with empty or default values are omitted from API
13958	// requests. However, any non-pointer, non-interface field appearing in
13959	// ForceSendFields will be sent to the server regardless of whether the
13960	// field is empty or not. This may be used to include empty fields in
13961	// Patch requests.
13962	ForceSendFields []string `json:"-"`
13963
13964	// NullFields is a list of field names (e.g. "BuyboxWinningRuleStats")
13965	// to include in API requests with the JSON null value. By default,
13966	// fields with empty values are omitted from API requests. However, any
13967	// field with an empty value appearing in NullFields will be sent to the
13968	// server as null. It is an error if a field in this list has a
13969	// non-empty value. This may be used to include null fields in Patch
13970	// requests.
13971	NullFields []string `json:"-"`
13972}
13973
13974func (s *RepricingRuleReport) MarshalJSON() ([]byte, error) {
13975	type NoMethod RepricingRuleReport
13976	raw := NoMethod(*s)
13977	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13978}
13979
13980// RepricingRuleReportBuyboxWinningRuleStats: Stats specific to buybox
13981// winning rules for rule report.
13982type RepricingRuleReportBuyboxWinningRuleStats struct {
13983	// BuyboxWonProductCount: Number of unique products that won the buybox
13984	// with this rule during this period of time.
13985	BuyboxWonProductCount int64 `json:"buyboxWonProductCount,omitempty"`
13986
13987	// ForceSendFields is a list of field names (e.g.
13988	// "BuyboxWonProductCount") to unconditionally include in API requests.
13989	// By default, fields with empty or default values are omitted from API
13990	// requests. However, any non-pointer, non-interface field appearing in
13991	// ForceSendFields will be sent to the server regardless of whether the
13992	// field is empty or not. This may be used to include empty fields in
13993	// Patch requests.
13994	ForceSendFields []string `json:"-"`
13995
13996	// NullFields is a list of field names (e.g. "BuyboxWonProductCount") to
13997	// include in API requests with the JSON null value. By default, fields
13998	// with empty values are omitted from API requests. However, any field
13999	// with an empty value appearing in NullFields will be sent to the
14000	// server as null. It is an error if a field in this list has a
14001	// non-empty value. This may be used to include null fields in Patch
14002	// requests.
14003	NullFields []string `json:"-"`
14004}
14005
14006func (s *RepricingRuleReportBuyboxWinningRuleStats) MarshalJSON() ([]byte, error) {
14007	type NoMethod RepricingRuleReportBuyboxWinningRuleStats
14008	raw := NoMethod(*s)
14009	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14010}
14011
14012// RepricingRuleRestriction: Definition of a rule restriction. At least
14013// one of the following needs to be true: (1) use_auto_pricing_min_price
14014// is true (2) floor.price_delta exists (3) floor.percentage_delta
14015// exists If floor.price_delta and floor.percentage_delta are both set
14016// on a rule, the highest value will be chosen by the Repricer. In other
14017// words, for a product with a price of $50, if the
14018// `floor.percentage_delta` is "-10" and the floor.price_delta is "-12",
14019// the offer price will only be lowered $5 (10% lower than the original
14020// offer price).
14021type RepricingRuleRestriction struct {
14022	// Floor: The inclusive floor lower bound. The repricing rule only
14023	// applies when new price >= floor.
14024	Floor *RepricingRuleRestrictionBoundary `json:"floor,omitempty"`
14025
14026	// UseAutoPricingMinPrice: If true, use the AUTO_PRICING_MIN_PRICE offer
14027	// attribute as the lower bound of the rule. If
14028	// use_auto_pricing_min_price is true, then only offers with
14029	// `AUTO_PRICING_MIN_PRICE` existing on the offer will get Repricer
14030	// treatment, even if a floor value is set on the rule. Also, if
14031	// use_auto_pricing_min_price is true, the floor restriction will be
14032	// ignored.
14033	UseAutoPricingMinPrice bool `json:"useAutoPricingMinPrice,omitempty"`
14034
14035	// ForceSendFields is a list of field names (e.g. "Floor") to
14036	// unconditionally include in API requests. By default, fields with
14037	// empty or default values are omitted from API requests. However, any
14038	// non-pointer, non-interface field appearing in ForceSendFields will be
14039	// sent to the server regardless of whether the field is empty or not.
14040	// This may be used to include empty fields in Patch requests.
14041	ForceSendFields []string `json:"-"`
14042
14043	// NullFields is a list of field names (e.g. "Floor") to include in API
14044	// requests with the JSON null value. By default, fields with empty
14045	// values are omitted from API requests. However, any field with an
14046	// empty value appearing in NullFields will be sent to the server as
14047	// null. It is an error if a field in this list has a non-empty value.
14048	// This may be used to include null fields in Patch requests.
14049	NullFields []string `json:"-"`
14050}
14051
14052func (s *RepricingRuleRestriction) MarshalJSON() ([]byte, error) {
14053	type NoMethod RepricingRuleRestriction
14054	raw := NoMethod(*s)
14055	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14056}
14057
14058// RepricingRuleRestrictionBoundary: Definition of a boundary.
14059type RepricingRuleRestrictionBoundary struct {
14060	// PercentageDelta: The percentage delta relative to the offer selling
14061	// price. This field is signed. It must be negative in floor. When it is
14062	// used in floor, it should be > -100. For example, if an offer is
14063	// selling at $10 and this field is -30 in floor, the repricing rule
14064	// only applies if the calculated new price is >= $7.
14065	PercentageDelta int64 `json:"percentageDelta,omitempty"`
14066
14067	// PriceDelta: The price micros relative to the offer selling price.
14068	// This field is signed. It must be negative in floor. For example, if
14069	// an offer is selling at $10 and this field is -$2 in floor, the
14070	// repricing rule only applies if the calculated new price is >= $8.
14071	PriceDelta string `json:"priceDelta,omitempty"`
14072
14073	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
14074	// unconditionally include in API requests. By default, fields with
14075	// empty or default values are omitted from API requests. However, any
14076	// non-pointer, non-interface field appearing in ForceSendFields will be
14077	// sent to the server regardless of whether the field is empty or not.
14078	// This may be used to include empty fields in Patch requests.
14079	ForceSendFields []string `json:"-"`
14080
14081	// NullFields is a list of field names (e.g. "PercentageDelta") to
14082	// include in API requests with the JSON null value. By default, fields
14083	// with empty values are omitted from API requests. However, any field
14084	// with an empty value appearing in NullFields will be sent to the
14085	// server as null. It is an error if a field in this list has a
14086	// non-empty value. This may be used to include null fields in Patch
14087	// requests.
14088	NullFields []string `json:"-"`
14089}
14090
14091func (s *RepricingRuleRestrictionBoundary) MarshalJSON() ([]byte, error) {
14092	type NoMethod RepricingRuleRestrictionBoundary
14093	raw := NoMethod(*s)
14094	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14095}
14096
14097// RepricingRuleStatsBasedRule: Definition of stats based rule.
14098type RepricingRuleStatsBasedRule struct {
14099	// PercentageDelta: The percent change against the price target. Valid
14100	// from 0 to 100 inclusively.
14101	PercentageDelta int64 `json:"percentageDelta,omitempty"`
14102
14103	// PriceDelta: The price delta against the above price target. A
14104	// positive value means the price should be adjusted to be above
14105	// statistical measure, and a negative value means below. Currency code
14106	// must not be included.
14107	PriceDelta string `json:"priceDelta,omitempty"`
14108
14109	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
14110	// unconditionally include in API requests. By default, fields with
14111	// empty or default values are omitted from API requests. However, any
14112	// non-pointer, non-interface field appearing in ForceSendFields will be
14113	// sent to the server regardless of whether the field is empty or not.
14114	// This may be used to include empty fields in Patch requests.
14115	ForceSendFields []string `json:"-"`
14116
14117	// NullFields is a list of field names (e.g. "PercentageDelta") to
14118	// include in API requests with the JSON null value. By default, fields
14119	// with empty values are omitted from API requests. However, any field
14120	// with an empty value appearing in NullFields will be sent to the
14121	// server as null. It is an error if a field in this list has a
14122	// non-empty value. This may be used to include null fields in Patch
14123	// requests.
14124	NullFields []string `json:"-"`
14125}
14126
14127func (s *RepricingRuleStatsBasedRule) MarshalJSON() ([]byte, error) {
14128	type NoMethod RepricingRuleStatsBasedRule
14129	raw := NoMethod(*s)
14130	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14131}
14132
14133// RequestPhoneVerificationRequest: Request message for the
14134// RequestPhoneVerification method.
14135type RequestPhoneVerificationRequest struct {
14136	// LanguageCode: Language code IETF BCP 47 syntax
14137	// (https://tools.ietf.org/html/bcp47) (for example, en-US). Language
14138	// code is used to provide localized `SMS` and `PHONE_CALL`. Default
14139	// language used is en-US if not provided.
14140	LanguageCode string `json:"languageCode,omitempty"`
14141
14142	// PhoneNumber: Phone number to be verified.
14143	PhoneNumber string `json:"phoneNumber,omitempty"`
14144
14145	// PhoneRegionCode: Required. Two letter country code for the phone
14146	// number, for example `CA` for Canadian numbers. See the ISO 3166-1
14147	// alpha-2
14148	// (https://wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)
14149	// officially assigned codes.
14150	PhoneRegionCode string `json:"phoneRegionCode,omitempty"`
14151
14152	// PhoneVerificationMethod: Verification method to receive verification
14153	// code.
14154	//
14155	// Possible values:
14156	//   "PHONE_VERIFICATION_METHOD_UNSPECIFIED" - Unknown method.
14157	//   "SMS" - Receive verification code by SMS.
14158	//   "PHONE_CALL" - Receive verification code by phone call.
14159	PhoneVerificationMethod string `json:"phoneVerificationMethod,omitempty"`
14160
14161	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
14162	// unconditionally include in API requests. By default, fields with
14163	// empty or default values are omitted from API requests. However, any
14164	// non-pointer, non-interface field appearing in ForceSendFields will be
14165	// sent to the server regardless of whether the field is empty or not.
14166	// This may be used to include empty fields in Patch requests.
14167	ForceSendFields []string `json:"-"`
14168
14169	// NullFields is a list of field names (e.g. "LanguageCode") to include
14170	// in API requests with the JSON null value. By default, fields with
14171	// empty values are omitted from API requests. However, any field with
14172	// an empty value appearing in NullFields will be sent to the server as
14173	// null. It is an error if a field in this list has a non-empty value.
14174	// This may be used to include null fields in Patch requests.
14175	NullFields []string `json:"-"`
14176}
14177
14178func (s *RequestPhoneVerificationRequest) MarshalJSON() ([]byte, error) {
14179	type NoMethod RequestPhoneVerificationRequest
14180	raw := NoMethod(*s)
14181	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14182}
14183
14184// RequestPhoneVerificationResponse: Response message for the
14185// RequestPhoneVerification method.
14186type RequestPhoneVerificationResponse struct {
14187	// VerificationId: The verification ID to use in subsequent calls to
14188	// `verifyphonenumber`.
14189	VerificationId string `json:"verificationId,omitempty"`
14190
14191	// ServerResponse contains the HTTP response code and headers from the
14192	// server.
14193	googleapi.ServerResponse `json:"-"`
14194
14195	// ForceSendFields is a list of field names (e.g. "VerificationId") to
14196	// unconditionally include in API requests. By default, fields with
14197	// empty or default values are omitted from API requests. However, any
14198	// non-pointer, non-interface field appearing in ForceSendFields will be
14199	// sent to the server regardless of whether the field is empty or not.
14200	// This may be used to include empty fields in Patch requests.
14201	ForceSendFields []string `json:"-"`
14202
14203	// NullFields is a list of field names (e.g. "VerificationId") to
14204	// include in API requests with the JSON null value. By default, fields
14205	// with empty values are omitted from API requests. However, any field
14206	// with an empty value appearing in NullFields will be sent to the
14207	// server as null. It is an error if a field in this list has a
14208	// non-empty value. This may be used to include null fields in Patch
14209	// requests.
14210	NullFields []string `json:"-"`
14211}
14212
14213func (s *RequestPhoneVerificationResponse) MarshalJSON() ([]byte, error) {
14214	type NoMethod RequestPhoneVerificationResponse
14215	raw := NoMethod(*s)
14216	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14217}
14218
14219// RequestReviewBuyOnGoogleProgramRequest: Request message for the
14220// RequestReviewProgram method.
14221type RequestReviewBuyOnGoogleProgramRequest struct {
14222}
14223
14224// RequestReviewFreeListingsRequest: Request message for the
14225// RequestReviewFreeListings Program method.
14226type RequestReviewFreeListingsRequest struct {
14227	// RegionCode: The code ISO 3166-1 alpha-2
14228	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the country for
14229	// which review is to be requested.
14230	RegionCode string `json:"regionCode,omitempty"`
14231
14232	// ForceSendFields is a list of field names (e.g. "RegionCode") to
14233	// unconditionally include in API requests. By default, fields with
14234	// empty or default values are omitted from API requests. However, any
14235	// non-pointer, non-interface field appearing in ForceSendFields will be
14236	// sent to the server regardless of whether the field is empty or not.
14237	// This may be used to include empty fields in Patch requests.
14238	ForceSendFields []string `json:"-"`
14239
14240	// NullFields is a list of field names (e.g. "RegionCode") to include in
14241	// API requests with the JSON null value. By default, fields with empty
14242	// values are omitted from API requests. However, any field with an
14243	// empty value appearing in NullFields will be sent to the server as
14244	// null. It is an error if a field in this list has a non-empty value.
14245	// This may be used to include null fields in Patch requests.
14246	NullFields []string `json:"-"`
14247}
14248
14249func (s *RequestReviewFreeListingsRequest) MarshalJSON() ([]byte, error) {
14250	type NoMethod RequestReviewFreeListingsRequest
14251	raw := NoMethod(*s)
14252	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14253}
14254
14255// RequestReviewShoppingAdsRequest: Request message for the
14256// RequestReviewShoppingAds program method.
14257type RequestReviewShoppingAdsRequest struct {
14258	// RegionCode: The code ISO 3166-1 alpha-2
14259	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the country for
14260	// which review is to be requested.
14261	RegionCode string `json:"regionCode,omitempty"`
14262
14263	// ForceSendFields is a list of field names (e.g. "RegionCode") to
14264	// unconditionally include in API requests. By default, fields with
14265	// empty or default values are omitted from API requests. However, any
14266	// non-pointer, non-interface field appearing in ForceSendFields will be
14267	// sent to the server regardless of whether the field is empty or not.
14268	// This may be used to include empty fields in Patch requests.
14269	ForceSendFields []string `json:"-"`
14270
14271	// NullFields is a list of field names (e.g. "RegionCode") to include in
14272	// API requests with the JSON null value. By default, fields with empty
14273	// values are omitted from API requests. However, any field with an
14274	// empty value appearing in NullFields will be sent to the server as
14275	// null. It is an error if a field in this list has a non-empty value.
14276	// This may be used to include null fields in Patch requests.
14277	NullFields []string `json:"-"`
14278}
14279
14280func (s *RequestReviewShoppingAdsRequest) MarshalJSON() ([]byte, error) {
14281	type NoMethod RequestReviewShoppingAdsRequest
14282	raw := NoMethod(*s)
14283	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14284}
14285
14286// ReturnAddress: Return address resource.
14287type ReturnAddress struct {
14288	// Address: Required. The address.
14289	Address *ReturnAddressAddress `json:"address,omitempty"`
14290
14291	// Country: Required. The country of sale where the return address is
14292	// applicable.
14293	Country string `json:"country,omitempty"`
14294
14295	// Kind: Identifies what kind of resource this is. Value: the fixed
14296	// string "content#returnAddress"
14297	Kind string `json:"kind,omitempty"`
14298
14299	// Label: Required. The user-defined label of the return address. For
14300	// the default address, use the label "default".
14301	Label string `json:"label,omitempty"`
14302
14303	// PhoneNumber: Required. The merchant's contact phone number regarding
14304	// the return.
14305	PhoneNumber string `json:"phoneNumber,omitempty"`
14306
14307	// ReturnAddressId: Return address ID generated by Google.
14308	ReturnAddressId string `json:"returnAddressId,omitempty"`
14309
14310	// ServerResponse contains the HTTP response code and headers from the
14311	// server.
14312	googleapi.ServerResponse `json:"-"`
14313
14314	// ForceSendFields is a list of field names (e.g. "Address") to
14315	// unconditionally include in API requests. By default, fields with
14316	// empty or default values are omitted from API requests. However, any
14317	// non-pointer, non-interface field appearing in ForceSendFields will be
14318	// sent to the server regardless of whether the field is empty or not.
14319	// This may be used to include empty fields in Patch requests.
14320	ForceSendFields []string `json:"-"`
14321
14322	// NullFields is a list of field names (e.g. "Address") to include in
14323	// API requests with the JSON null value. By default, fields with empty
14324	// values are omitted from API requests. However, any field with an
14325	// empty value appearing in NullFields will be sent to the server as
14326	// null. It is an error if a field in this list has a non-empty value.
14327	// This may be used to include null fields in Patch requests.
14328	NullFields []string `json:"-"`
14329}
14330
14331func (s *ReturnAddress) MarshalJSON() ([]byte, error) {
14332	type NoMethod ReturnAddress
14333	raw := NoMethod(*s)
14334	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14335}
14336
14337type ReturnAddressAddress struct {
14338	// Country: CLDR country code (e.g. "US").
14339	Country string `json:"country,omitempty"`
14340
14341	// Locality: City, town or commune. May also include dependent
14342	// localities or sublocalities (e.g. neighborhoods or suburbs).
14343	Locality string `json:"locality,omitempty"`
14344
14345	// PostalCode: Postal code or ZIP (e.g. "94043").
14346	PostalCode string `json:"postalCode,omitempty"`
14347
14348	// RecipientName: Name of the recipient to address returns to.
14349	RecipientName string `json:"recipientName,omitempty"`
14350
14351	// Region: Top-level administrative subdivision of the country. For
14352	// example, a state like California ("CA") or a province like Quebec
14353	// ("QC").
14354	Region string `json:"region,omitempty"`
14355
14356	// StreetAddress: Street-level part of the address. May be up to two
14357	// lines, each line specified as an array element.
14358	StreetAddress []string `json:"streetAddress,omitempty"`
14359
14360	// ForceSendFields is a list of field names (e.g. "Country") to
14361	// unconditionally include in API requests. By default, fields with
14362	// empty or default values are omitted from API requests. However, any
14363	// non-pointer, non-interface field appearing in ForceSendFields will be
14364	// sent to the server regardless of whether the field is empty or not.
14365	// This may be used to include empty fields in Patch requests.
14366	ForceSendFields []string `json:"-"`
14367
14368	// NullFields is a list of field names (e.g. "Country") to include in
14369	// API requests with the JSON null value. By default, fields with empty
14370	// values are omitted from API requests. However, any field with an
14371	// empty value appearing in NullFields will be sent to the server as
14372	// null. It is an error if a field in this list has a non-empty value.
14373	// This may be used to include null fields in Patch requests.
14374	NullFields []string `json:"-"`
14375}
14376
14377func (s *ReturnAddressAddress) MarshalJSON() ([]byte, error) {
14378	type NoMethod ReturnAddressAddress
14379	raw := NoMethod(*s)
14380	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14381}
14382
14383// ReturnPolicy: Return policy resource.
14384type ReturnPolicy struct {
14385	// Country: Required. The country of sale where the return policy is
14386	// applicable.
14387	Country string `json:"country,omitempty"`
14388
14389	// Kind: Identifies what kind of resource this is. Value: the fixed
14390	// string "content#returnPolicy"
14391	Kind string `json:"kind,omitempty"`
14392
14393	// Label: Required. The user-defined label of the return policy. For the
14394	// default policy, use the label "default".
14395	Label string `json:"label,omitempty"`
14396
14397	// Name: Required. The name of the policy as shown in Merchant Center.
14398	Name string `json:"name,omitempty"`
14399
14400	// NonFreeReturnReasons: Return reasons that will incur return fees.
14401	NonFreeReturnReasons []string `json:"nonFreeReturnReasons,omitempty"`
14402
14403	// Policy: Required. The policy.
14404	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
14405
14406	// ReturnPolicyId: Return policy ID generated by Google.
14407	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
14408
14409	// ReturnShippingFee: The return shipping fee that will apply to non
14410	// free return reasons.
14411	ReturnShippingFee *Price `json:"returnShippingFee,omitempty"`
14412
14413	// SeasonalOverrides: An optional list of seasonal overrides.
14414	SeasonalOverrides []*ReturnPolicySeasonalOverride `json:"seasonalOverrides,omitempty"`
14415
14416	// ServerResponse contains the HTTP response code and headers from the
14417	// server.
14418	googleapi.ServerResponse `json:"-"`
14419
14420	// ForceSendFields is a list of field names (e.g. "Country") to
14421	// unconditionally include in API requests. By default, fields with
14422	// empty or default values are omitted from API requests. However, any
14423	// non-pointer, non-interface field appearing in ForceSendFields will be
14424	// sent to the server regardless of whether the field is empty or not.
14425	// This may be used to include empty fields in Patch requests.
14426	ForceSendFields []string `json:"-"`
14427
14428	// NullFields is a list of field names (e.g. "Country") to include in
14429	// API requests with the JSON null value. By default, fields with empty
14430	// values are omitted from API requests. However, any field with an
14431	// empty value appearing in NullFields will be sent to the server as
14432	// null. It is an error if a field in this list has a non-empty value.
14433	// This may be used to include null fields in Patch requests.
14434	NullFields []string `json:"-"`
14435}
14436
14437func (s *ReturnPolicy) MarshalJSON() ([]byte, error) {
14438	type NoMethod ReturnPolicy
14439	raw := NoMethod(*s)
14440	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14441}
14442
14443// ReturnPolicyOnline: Return policy online object. This is currently
14444// used to represent return policies for ads and free listings programs.
14445type ReturnPolicyOnline struct {
14446	// Countries: The countries of sale where the return policy is
14447	// applicable. The values must be a valid 2 letter ISO 3166 code, e.g.
14448	// "US".
14449	Countries []string `json:"countries,omitempty"`
14450
14451	// ItemConditions: The item conditions that are accepted for returns.
14452	// This is required to not be empty unless the type of return policy is
14453	// noReturns.
14454	//
14455	// Possible values:
14456	//   "ITEM_CONDITION_UNSPECIFIED" - Default value. This value is unused.
14457	//   "NEW" - New.
14458	//   "USED" - Used.
14459	ItemConditions []string `json:"itemConditions,omitempty"`
14460
14461	// Label: The unique user-defined label of the return policy. The same
14462	// label cannot be used in different return policies for the same
14463	// country. Policies with the label 'default' will apply to all
14464	// products, unless a product specifies a return_policy_label attribute.
14465	Label string `json:"label,omitempty"`
14466
14467	// Name: The name of the policy as shown in Merchant Center.
14468	Name string `json:"name,omitempty"`
14469
14470	// Policy: The return policy.
14471	Policy *ReturnPolicyOnlinePolicy `json:"policy,omitempty"`
14472
14473	// RestockingFee: The restocking fee that applies to all return reason
14474	// categories. This would be treated as a free restocking fee if the
14475	// value is not set.
14476	RestockingFee *ReturnPolicyOnlineRestockingFee `json:"restockingFee,omitempty"`
14477
14478	// ReturnMethods: The return methods of how customers can return an
14479	// item. This value is required to not be empty unless the type of
14480	// return policy is noReturns.
14481	//
14482	// Possible values:
14483	//   "RETURN_METHOD_UNSPECIFIED" - Default value. This value is unused.
14484	//   "BY_MAIL" - By mail.
14485	//   "IN_STORE" - In store.
14486	//   "AT_A_KIOSK" - At a kiosk.
14487	ReturnMethods []string `json:"returnMethods,omitempty"`
14488
14489	// ReturnPolicyId: Output only. Return policy ID generated by Google.
14490	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
14491
14492	// ReturnPolicyUri: The return policy uri. This can used by Google to do
14493	// a sanity check for the policy.
14494	ReturnPolicyUri string `json:"returnPolicyUri,omitempty"`
14495
14496	// ReturnReasonCategoryInfo: The return reason category information.
14497	// This required to not be empty unless the type of return policy is
14498	// noReturns.
14499	ReturnReasonCategoryInfo []*ReturnPolicyOnlineReturnReasonCategoryInfo `json:"returnReasonCategoryInfo,omitempty"`
14500
14501	// ServerResponse contains the HTTP response code and headers from the
14502	// server.
14503	googleapi.ServerResponse `json:"-"`
14504
14505	// ForceSendFields is a list of field names (e.g. "Countries") to
14506	// unconditionally include in API requests. By default, fields with
14507	// empty or default values are omitted from API requests. However, any
14508	// non-pointer, non-interface field appearing in ForceSendFields will be
14509	// sent to the server regardless of whether the field is empty or not.
14510	// This may be used to include empty fields in Patch requests.
14511	ForceSendFields []string `json:"-"`
14512
14513	// NullFields is a list of field names (e.g. "Countries") to include in
14514	// API requests with the JSON null value. By default, fields with empty
14515	// values are omitted from API requests. However, any field with an
14516	// empty value appearing in NullFields will be sent to the server as
14517	// null. It is an error if a field in this list has a non-empty value.
14518	// This may be used to include null fields in Patch requests.
14519	NullFields []string `json:"-"`
14520}
14521
14522func (s *ReturnPolicyOnline) MarshalJSON() ([]byte, error) {
14523	type NoMethod ReturnPolicyOnline
14524	raw := NoMethod(*s)
14525	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14526}
14527
14528// ReturnPolicyOnlinePolicy: The available policies.
14529type ReturnPolicyOnlinePolicy struct {
14530	// Days: The number of days items can be returned after delivery, where
14531	// one day is defined to be 24 hours after the delivery timestamp.
14532	// Required for `numberOfDaysAfterDelivery` returns.
14533	Days int64 `json:"days,omitempty,string"`
14534
14535	// Type: Policy type.
14536	//
14537	// Possible values:
14538	//   "TYPE_UNSPECIFIED" - Default value. This value is unused.
14539	//   "NUMBER_OF_DAYS_AFTER_DELIVERY" - Number of days after a return is
14540	// delivered.
14541	//   "NO_RETURNS" - No returns.
14542	//   "LIFETIME_RETURNS" - Life time returns.
14543	Type string `json:"type,omitempty"`
14544
14545	// ForceSendFields is a list of field names (e.g. "Days") to
14546	// unconditionally include in API requests. By default, fields with
14547	// empty or default values are omitted from API requests. However, any
14548	// non-pointer, non-interface field appearing in ForceSendFields will be
14549	// sent to the server regardless of whether the field is empty or not.
14550	// This may be used to include empty fields in Patch requests.
14551	ForceSendFields []string `json:"-"`
14552
14553	// NullFields is a list of field names (e.g. "Days") to include in API
14554	// requests with the JSON null value. By default, fields with empty
14555	// values are omitted from API requests. However, any field with an
14556	// empty value appearing in NullFields will be sent to the server as
14557	// null. It is an error if a field in this list has a non-empty value.
14558	// This may be used to include null fields in Patch requests.
14559	NullFields []string `json:"-"`
14560}
14561
14562func (s *ReturnPolicyOnlinePolicy) MarshalJSON() ([]byte, error) {
14563	type NoMethod ReturnPolicyOnlinePolicy
14564	raw := NoMethod(*s)
14565	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14566}
14567
14568// ReturnPolicyOnlineRestockingFee: The restocking fee. This can either
14569// be a fixed fee or a micro percent.
14570type ReturnPolicyOnlineRestockingFee struct {
14571	// FixedFee: Fixed restocking fee.
14572	FixedFee *PriceAmount `json:"fixedFee,omitempty"`
14573
14574	// MicroPercent: Percent of total price in micros. 15,000,000 means 15%
14575	// of the total price would be charged.
14576	MicroPercent int64 `json:"microPercent,omitempty"`
14577
14578	// ForceSendFields is a list of field names (e.g. "FixedFee") to
14579	// unconditionally include in API requests. By default, fields with
14580	// empty or default values are omitted from API requests. However, any
14581	// non-pointer, non-interface field appearing in ForceSendFields will be
14582	// sent to the server regardless of whether the field is empty or not.
14583	// This may be used to include empty fields in Patch requests.
14584	ForceSendFields []string `json:"-"`
14585
14586	// NullFields is a list of field names (e.g. "FixedFee") to include in
14587	// API requests with the JSON null value. By default, fields with empty
14588	// values are omitted from API requests. However, any field with an
14589	// empty value appearing in NullFields will be sent to the server as
14590	// null. It is an error if a field in this list has a non-empty value.
14591	// This may be used to include null fields in Patch requests.
14592	NullFields []string `json:"-"`
14593}
14594
14595func (s *ReturnPolicyOnlineRestockingFee) MarshalJSON() ([]byte, error) {
14596	type NoMethod ReturnPolicyOnlineRestockingFee
14597	raw := NoMethod(*s)
14598	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14599}
14600
14601// ReturnPolicyOnlineReturnReasonCategoryInfo: The return reason
14602// category info wrapper.
14603type ReturnPolicyOnlineReturnReasonCategoryInfo struct {
14604	// ReturnLabelSource: The corresponding return label source.
14605	//
14606	// Possible values:
14607	//   "RETURN_LABEL_SOURCE_UNSPECIFIED" - Default value. This value is
14608	// unused.
14609	//   "DOWNLOAD_AND_PRINT" - Download and print the label.
14610	//   "IN_THE_BOX" - Label in the box.
14611	//   "CUSTOMER_RESPONSIBILITY" - Customers' responsibility to get the
14612	// label.
14613	ReturnLabelSource string `json:"returnLabelSource,omitempty"`
14614
14615	// ReturnReasonCategory: The return reason category.
14616	//
14617	// Possible values:
14618	//   "RETURN_REASON_CATEGORY_UNSPECIFIED" - Default value. This value is
14619	// unused.
14620	//   "BUYER_REMORSE" - Buyer remorse.
14621	//   "ITEM_DEFECT" - Item defect.
14622	ReturnReasonCategory string `json:"returnReasonCategory,omitempty"`
14623
14624	// ReturnShippingFee: The corresponding return shipping fee. This is
14625	// only applicable when returnLabelSource is not the customer's
14626	// responsibility.
14627	ReturnShippingFee *ReturnPolicyOnlineReturnShippingFee `json:"returnShippingFee,omitempty"`
14628
14629	// ForceSendFields is a list of field names (e.g. "ReturnLabelSource")
14630	// to unconditionally include in API requests. By default, fields with
14631	// empty or default values are omitted from API requests. However, any
14632	// non-pointer, non-interface field appearing in ForceSendFields will be
14633	// sent to the server regardless of whether the field is empty or not.
14634	// This may be used to include empty fields in Patch requests.
14635	ForceSendFields []string `json:"-"`
14636
14637	// NullFields is a list of field names (e.g. "ReturnLabelSource") to
14638	// include in API requests with the JSON null value. By default, fields
14639	// with empty values are omitted from API requests. However, any field
14640	// with an empty value appearing in NullFields will be sent to the
14641	// server as null. It is an error if a field in this list has a
14642	// non-empty value. This may be used to include null fields in Patch
14643	// requests.
14644	NullFields []string `json:"-"`
14645}
14646
14647func (s *ReturnPolicyOnlineReturnReasonCategoryInfo) MarshalJSON() ([]byte, error) {
14648	type NoMethod ReturnPolicyOnlineReturnReasonCategoryInfo
14649	raw := NoMethod(*s)
14650	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14651}
14652
14653// ReturnPolicyOnlineReturnShippingFee: The return shipping fee. This
14654// can either be a fixed fee or a boolean to indicate that the customer
14655// pays the actual shipping cost.
14656type ReturnPolicyOnlineReturnShippingFee struct {
14657	// FixedFee: Fixed return shipping fee amount. This value is only
14658	// applicable when type is FIXED. We will treat the return shipping fee
14659	// as free if type is FIXED and this value is not set.
14660	FixedFee *PriceAmount `json:"fixedFee,omitempty"`
14661
14662	// Type: Type of return shipping fee.
14663	//
14664	// Possible values:
14665	//   "TYPE_UNSPECIFIED" - Default value. This value is unused.
14666	//   "FIXED" - The return shipping fee is a fixed value.
14667	//   "CUSTOMER_PAYING_ACTUAL_FEE" - Customer will pay the actual return
14668	// shipping fee.
14669	Type string `json:"type,omitempty"`
14670
14671	// ForceSendFields is a list of field names (e.g. "FixedFee") to
14672	// unconditionally include in API requests. By default, fields with
14673	// empty or default values are omitted from API requests. However, any
14674	// non-pointer, non-interface field appearing in ForceSendFields will be
14675	// sent to the server regardless of whether the field is empty or not.
14676	// This may be used to include empty fields in Patch requests.
14677	ForceSendFields []string `json:"-"`
14678
14679	// NullFields is a list of field names (e.g. "FixedFee") to include in
14680	// API requests with the JSON null value. By default, fields with empty
14681	// values are omitted from API requests. However, any field with an
14682	// empty value appearing in NullFields will be sent to the server as
14683	// null. It is an error if a field in this list has a non-empty value.
14684	// This may be used to include null fields in Patch requests.
14685	NullFields []string `json:"-"`
14686}
14687
14688func (s *ReturnPolicyOnlineReturnShippingFee) MarshalJSON() ([]byte, error) {
14689	type NoMethod ReturnPolicyOnlineReturnShippingFee
14690	raw := NoMethod(*s)
14691	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14692}
14693
14694type ReturnPolicyPolicy struct {
14695	// LastReturnDate: Required. Last day for returning the items. In ISO
14696	// 8601 format. When specifying the return window like this, set the
14697	// policy type to "lastReturnDate". Use this for seasonal overrides
14698	// only.
14699	LastReturnDate string `json:"lastReturnDate,omitempty"`
14700
14701	// NumberOfDays: The number of days items can be returned after
14702	// delivery, where one day is defined to be 24 hours after the delivery
14703	// timestamp. When specifying the return window like this, set the
14704	// policy type to "numberOfDaysAfterDelivery". Acceptable values are 30,
14705	// 45, 60, 90, 100, 180, 270 and 365 for the default policy. Additional
14706	// policies further allow 14, 15, 21 and 28 days, but note that for most
14707	// items a minimum of 30 days is required for returns. Exceptions may be
14708	// made for electronics. A policy of less than 30 days can only be
14709	// applied to those items.
14710	NumberOfDays int64 `json:"numberOfDays,omitempty,string"`
14711
14712	// Type: Policy type. Use "lastReturnDate" for seasonal overrides only.
14713	// Note that for most items a minimum of 30 days is required for
14714	// returns. Exceptions may be made for electronics or non-returnable
14715	// items such as food, perishables, and living things. A policy of less
14716	// than 30 days can only be applied to those items. Acceptable values
14717	// are: - "lastReturnDate" - "lifetimeReturns" - "noReturns" -
14718	// "numberOfDaysAfterDelivery"
14719	Type string `json:"type,omitempty"`
14720
14721	// ForceSendFields is a list of field names (e.g. "LastReturnDate") to
14722	// unconditionally include in API requests. By default, fields with
14723	// empty or default values are omitted from API requests. However, any
14724	// non-pointer, non-interface field appearing in ForceSendFields will be
14725	// sent to the server regardless of whether the field is empty or not.
14726	// This may be used to include empty fields in Patch requests.
14727	ForceSendFields []string `json:"-"`
14728
14729	// NullFields is a list of field names (e.g. "LastReturnDate") to
14730	// include in API requests with the JSON null value. By default, fields
14731	// with empty values are omitted from API requests. However, any field
14732	// with an empty value appearing in NullFields will be sent to the
14733	// server as null. It is an error if a field in this list has a
14734	// non-empty value. This may be used to include null fields in Patch
14735	// requests.
14736	NullFields []string `json:"-"`
14737}
14738
14739func (s *ReturnPolicyPolicy) MarshalJSON() ([]byte, error) {
14740	type NoMethod ReturnPolicyPolicy
14741	raw := NoMethod(*s)
14742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14743}
14744
14745type ReturnPolicySeasonalOverride struct {
14746	// EndDate: Required. Last day on which the override applies. In ISO
14747	// 8601 format.
14748	EndDate string `json:"endDate,omitempty"`
14749
14750	// Name: Required. The name of the seasonal override as shown in
14751	// Merchant Center.
14752	Name string `json:"name,omitempty"`
14753
14754	// Policy: Required. The policy which is in effect during that time.
14755	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
14756
14757	// StartDate: Required. First day on which the override applies. In ISO
14758	// 8601 format.
14759	StartDate string `json:"startDate,omitempty"`
14760
14761	// ForceSendFields is a list of field names (e.g. "EndDate") to
14762	// unconditionally include in API requests. By default, fields with
14763	// empty or default values are omitted from API requests. However, any
14764	// non-pointer, non-interface field appearing in ForceSendFields will be
14765	// sent to the server regardless of whether the field is empty or not.
14766	// This may be used to include empty fields in Patch requests.
14767	ForceSendFields []string `json:"-"`
14768
14769	// NullFields is a list of field names (e.g. "EndDate") to include in
14770	// API requests with the JSON null value. By default, fields with empty
14771	// values are omitted from API requests. However, any field with an
14772	// empty value appearing in NullFields will be sent to the server as
14773	// null. It is an error if a field in this list has a non-empty value.
14774	// This may be used to include null fields in Patch requests.
14775	NullFields []string `json:"-"`
14776}
14777
14778func (s *ReturnPolicySeasonalOverride) MarshalJSON() ([]byte, error) {
14779	type NoMethod ReturnPolicySeasonalOverride
14780	raw := NoMethod(*s)
14781	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14782}
14783
14784type ReturnPricingInfo struct {
14785	// ChargeReturnShippingFee: Default option for whether merchant should
14786	// charge the customer for return shipping costs, based on customer
14787	// selected return reason and merchant's return policy for the items
14788	// being returned.
14789	ChargeReturnShippingFee bool `json:"chargeReturnShippingFee,omitempty"`
14790
14791	// MaxReturnShippingFee: Maximum return shipping costs that may be
14792	// charged to the customer depending on merchant's assessment of the
14793	// return reason and the merchant's return policy for the items being
14794	// returned.
14795	MaxReturnShippingFee *MonetaryAmount `json:"maxReturnShippingFee,omitempty"`
14796
14797	// RefundableItemsTotalAmount: Total amount that can be refunded for the
14798	// items in this return. It represents the total amount received by the
14799	// merchant for the items, after applying merchant coupons.
14800	RefundableItemsTotalAmount *MonetaryAmount `json:"refundableItemsTotalAmount,omitempty"`
14801
14802	// RefundableShippingAmount: Maximum amount that can be refunded for the
14803	// original shipping fee.
14804	RefundableShippingAmount *MonetaryAmount `json:"refundableShippingAmount,omitempty"`
14805
14806	// TotalRefundedAmount: Total amount already refunded by the merchant.
14807	// It includes all types of refunds (items, shipping, etc.) Not provided
14808	// if no refund has been applied yet.
14809	TotalRefundedAmount *MonetaryAmount `json:"totalRefundedAmount,omitempty"`
14810
14811	// ForceSendFields is a list of field names (e.g.
14812	// "ChargeReturnShippingFee") to unconditionally include in API
14813	// requests. By default, fields with empty or default values are omitted
14814	// from API requests. However, any non-pointer, non-interface field
14815	// appearing in ForceSendFields will be sent to the server regardless of
14816	// whether the field is empty or not. This may be used to include empty
14817	// fields in Patch requests.
14818	ForceSendFields []string `json:"-"`
14819
14820	// NullFields is a list of field names (e.g. "ChargeReturnShippingFee")
14821	// to include in API requests with the JSON null value. By default,
14822	// fields with empty values are omitted from API requests. However, any
14823	// field with an empty value appearing in NullFields will be sent to the
14824	// server as null. It is an error if a field in this list has a
14825	// non-empty value. This may be used to include null fields in Patch
14826	// requests.
14827	NullFields []string `json:"-"`
14828}
14829
14830func (s *ReturnPricingInfo) MarshalJSON() ([]byte, error) {
14831	type NoMethod ReturnPricingInfo
14832	raw := NoMethod(*s)
14833	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14834}
14835
14836type ReturnShipment struct {
14837	// CreationDate: The date of creation of the shipment, in ISO 8601
14838	// format.
14839	CreationDate string `json:"creationDate,omitempty"`
14840
14841	// DeliveryDate: The date of delivery of the shipment, in ISO 8601
14842	// format.
14843	DeliveryDate string `json:"deliveryDate,omitempty"`
14844
14845	// ReturnMethodType: Type of the return method. Acceptable values are: -
14846	// "byMail" - "contactCustomerSupport" - "returnless" -
14847	// "inStore"
14848	ReturnMethodType string `json:"returnMethodType,omitempty"`
14849
14850	// ShipmentId: Shipment ID generated by Google.
14851	ShipmentId string `json:"shipmentId,omitempty"`
14852
14853	// ShipmentTrackingInfos: Tracking information of the shipment. One
14854	// return shipment might be handled by several shipping carriers
14855	// sequentially.
14856	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
14857
14858	// ShippingDate: The date of shipping of the shipment, in ISO 8601
14859	// format.
14860	ShippingDate string `json:"shippingDate,omitempty"`
14861
14862	// State: State of the shipment. Acceptable values are: - "completed"
14863	// - "new" - "shipped" - "undeliverable" - "pending"
14864	State string `json:"state,omitempty"`
14865
14866	// ForceSendFields is a list of field names (e.g. "CreationDate") to
14867	// unconditionally include in API requests. By default, fields with
14868	// empty or default values are omitted from API requests. However, any
14869	// non-pointer, non-interface field appearing in ForceSendFields will be
14870	// sent to the server regardless of whether the field is empty or not.
14871	// This may be used to include empty fields in Patch requests.
14872	ForceSendFields []string `json:"-"`
14873
14874	// NullFields is a list of field names (e.g. "CreationDate") to include
14875	// in API requests with the JSON null value. By default, fields with
14876	// empty values are omitted from API requests. However, any field with
14877	// an empty value appearing in NullFields will be sent to the server as
14878	// null. It is an error if a field in this list has a non-empty value.
14879	// This may be used to include null fields in Patch requests.
14880	NullFields []string `json:"-"`
14881}
14882
14883func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
14884	type NoMethod ReturnShipment
14885	raw := NoMethod(*s)
14886	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14887}
14888
14889// ReturnShippingLabel: Return shipping label for a Buy on Google
14890// merchant-managed return.
14891type ReturnShippingLabel struct {
14892	// Carrier: Name of the carrier.
14893	Carrier string `json:"carrier,omitempty"`
14894
14895	// LabelUri: The URL for the return shipping label in PDF format
14896	LabelUri string `json:"labelUri,omitempty"`
14897
14898	// TrackingId: The tracking id of this return label.
14899	TrackingId string `json:"trackingId,omitempty"`
14900
14901	// ServerResponse contains the HTTP response code and headers from the
14902	// server.
14903	googleapi.ServerResponse `json:"-"`
14904
14905	// ForceSendFields is a list of field names (e.g. "Carrier") to
14906	// unconditionally include in API requests. By default, fields with
14907	// empty or default values are omitted from API requests. However, any
14908	// non-pointer, non-interface field appearing in ForceSendFields will be
14909	// sent to the server regardless of whether the field is empty or not.
14910	// This may be used to include empty fields in Patch requests.
14911	ForceSendFields []string `json:"-"`
14912
14913	// NullFields is a list of field names (e.g. "Carrier") to include in
14914	// API requests with the JSON null value. By default, fields with empty
14915	// values are omitted from API requests. However, any field with an
14916	// empty value appearing in NullFields will be sent to the server as
14917	// null. It is an error if a field in this list has a non-empty value.
14918	// This may be used to include null fields in Patch requests.
14919	NullFields []string `json:"-"`
14920}
14921
14922func (s *ReturnShippingLabel) MarshalJSON() ([]byte, error) {
14923	type NoMethod ReturnShippingLabel
14924	raw := NoMethod(*s)
14925	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14926}
14927
14928type ReturnaddressCustomBatchRequest struct {
14929	// Entries: The request entries to be processed in the batch.
14930	Entries []*ReturnaddressCustomBatchRequestEntry `json:"entries,omitempty"`
14931
14932	// ForceSendFields is a list of field names (e.g. "Entries") to
14933	// unconditionally include in API requests. By default, fields with
14934	// empty or default values are omitted from API requests. However, any
14935	// non-pointer, non-interface field appearing in ForceSendFields will be
14936	// sent to the server regardless of whether the field is empty or not.
14937	// This may be used to include empty fields in Patch requests.
14938	ForceSendFields []string `json:"-"`
14939
14940	// NullFields is a list of field names (e.g. "Entries") to include in
14941	// API requests with the JSON null value. By default, fields with empty
14942	// values are omitted from API requests. However, any field with an
14943	// empty value appearing in NullFields will be sent to the server as
14944	// null. It is an error if a field in this list has a non-empty value.
14945	// This may be used to include null fields in Patch requests.
14946	NullFields []string `json:"-"`
14947}
14948
14949func (s *ReturnaddressCustomBatchRequest) MarshalJSON() ([]byte, error) {
14950	type NoMethod ReturnaddressCustomBatchRequest
14951	raw := NoMethod(*s)
14952	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14953}
14954
14955type ReturnaddressCustomBatchRequestEntry struct {
14956	// BatchId: An entry ID, unique within the batch request.
14957	BatchId int64 `json:"batchId,omitempty"`
14958
14959	// MerchantId: The Merchant Center account ID.
14960	MerchantId uint64 `json:"merchantId,omitempty,string"`
14961
14962	// Method: Method of the batch request entry. Acceptable values are: -
14963	// "delete" - "get" - "insert"
14964	Method string `json:"method,omitempty"`
14965
14966	// ReturnAddress: The return address to submit. This should be set only
14967	// if the method is `insert`.
14968	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
14969
14970	// ReturnAddressId: The return address ID. This should be set only if
14971	// the method is `delete` or `get`.
14972	ReturnAddressId string `json:"returnAddressId,omitempty"`
14973
14974	// ForceSendFields is a list of field names (e.g. "BatchId") to
14975	// unconditionally include in API requests. By default, fields with
14976	// empty or default values are omitted from API requests. However, any
14977	// non-pointer, non-interface field appearing in ForceSendFields will be
14978	// sent to the server regardless of whether the field is empty or not.
14979	// This may be used to include empty fields in Patch requests.
14980	ForceSendFields []string `json:"-"`
14981
14982	// NullFields is a list of field names (e.g. "BatchId") to include in
14983	// API requests with the JSON null value. By default, fields with empty
14984	// values are omitted from API requests. However, any field with an
14985	// empty value appearing in NullFields will be sent to the server as
14986	// null. It is an error if a field in this list has a non-empty value.
14987	// This may be used to include null fields in Patch requests.
14988	NullFields []string `json:"-"`
14989}
14990
14991func (s *ReturnaddressCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
14992	type NoMethod ReturnaddressCustomBatchRequestEntry
14993	raw := NoMethod(*s)
14994	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14995}
14996
14997type ReturnaddressCustomBatchResponse struct {
14998	// Entries: The result of the execution of the batch requests.
14999	Entries []*ReturnaddressCustomBatchResponseEntry `json:"entries,omitempty"`
15000
15001	// Kind: Identifies what kind of resource this is. Value: the fixed
15002	// string "content#returnaddressCustomBatchResponse".
15003	Kind string `json:"kind,omitempty"`
15004
15005	// ServerResponse contains the HTTP response code and headers from the
15006	// server.
15007	googleapi.ServerResponse `json:"-"`
15008
15009	// ForceSendFields is a list of field names (e.g. "Entries") to
15010	// unconditionally include in API requests. By default, fields with
15011	// empty or default values are omitted from API requests. However, any
15012	// non-pointer, non-interface field appearing in ForceSendFields will be
15013	// sent to the server regardless of whether the field is empty or not.
15014	// This may be used to include empty fields in Patch requests.
15015	ForceSendFields []string `json:"-"`
15016
15017	// NullFields is a list of field names (e.g. "Entries") to include in
15018	// API requests with the JSON null value. By default, fields with empty
15019	// values are omitted from API requests. However, any field with an
15020	// empty value appearing in NullFields will be sent to the server as
15021	// null. It is an error if a field in this list has a non-empty value.
15022	// This may be used to include null fields in Patch requests.
15023	NullFields []string `json:"-"`
15024}
15025
15026func (s *ReturnaddressCustomBatchResponse) MarshalJSON() ([]byte, error) {
15027	type NoMethod ReturnaddressCustomBatchResponse
15028	raw := NoMethod(*s)
15029	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15030}
15031
15032type ReturnaddressCustomBatchResponseEntry struct {
15033	// BatchId: The ID of the request entry to which this entry responds.
15034	BatchId int64 `json:"batchId,omitempty"`
15035
15036	// Errors: A list of errors defined if, and only if, the request failed.
15037	Errors *Errors `json:"errors,omitempty"`
15038
15039	// Kind: Identifies what kind of resource this is. Value: the fixed
15040	// string "content#returnaddressCustomBatchResponseEntry"
15041	Kind string `json:"kind,omitempty"`
15042
15043	// ReturnAddress: The retrieved return address.
15044	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
15045
15046	// ForceSendFields is a list of field names (e.g. "BatchId") to
15047	// unconditionally include in API requests. By default, fields with
15048	// empty or default values are omitted from API requests. However, any
15049	// non-pointer, non-interface field appearing in ForceSendFields will be
15050	// sent to the server regardless of whether the field is empty or not.
15051	// This may be used to include empty fields in Patch requests.
15052	ForceSendFields []string `json:"-"`
15053
15054	// NullFields is a list of field names (e.g. "BatchId") to include in
15055	// API requests with the JSON null value. By default, fields with empty
15056	// values are omitted from API requests. However, any field with an
15057	// empty value appearing in NullFields will be sent to the server as
15058	// null. It is an error if a field in this list has a non-empty value.
15059	// This may be used to include null fields in Patch requests.
15060	NullFields []string `json:"-"`
15061}
15062
15063func (s *ReturnaddressCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
15064	type NoMethod ReturnaddressCustomBatchResponseEntry
15065	raw := NoMethod(*s)
15066	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15067}
15068
15069type ReturnaddressListResponse struct {
15070	// Kind: Identifies what kind of resource this is. Value: the fixed
15071	// string "content#returnaddressListResponse".
15072	Kind string `json:"kind,omitempty"`
15073
15074	// NextPageToken: The token for the retrieval of the next page of
15075	// addresses.
15076	NextPageToken string `json:"nextPageToken,omitempty"`
15077
15078	Resources []*ReturnAddress `json:"resources,omitempty"`
15079
15080	// ServerResponse contains the HTTP response code and headers from the
15081	// server.
15082	googleapi.ServerResponse `json:"-"`
15083
15084	// ForceSendFields is a list of field names (e.g. "Kind") to
15085	// unconditionally include in API requests. By default, fields with
15086	// empty or default values are omitted from API requests. However, any
15087	// non-pointer, non-interface field appearing in ForceSendFields will be
15088	// sent to the server regardless of whether the field is empty or not.
15089	// This may be used to include empty fields in Patch requests.
15090	ForceSendFields []string `json:"-"`
15091
15092	// NullFields is a list of field names (e.g. "Kind") to include in API
15093	// requests with the JSON null value. By default, fields with empty
15094	// values are omitted from API requests. However, any field with an
15095	// empty value appearing in NullFields will be sent to the server as
15096	// null. It is an error if a field in this list has a non-empty value.
15097	// This may be used to include null fields in Patch requests.
15098	NullFields []string `json:"-"`
15099}
15100
15101func (s *ReturnaddressListResponse) MarshalJSON() ([]byte, error) {
15102	type NoMethod ReturnaddressListResponse
15103	raw := NoMethod(*s)
15104	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15105}
15106
15107type ReturnpolicyCustomBatchRequest struct {
15108	// Entries: The request entries to be processed in the batch.
15109	Entries []*ReturnpolicyCustomBatchRequestEntry `json:"entries,omitempty"`
15110
15111	// ForceSendFields is a list of field names (e.g. "Entries") to
15112	// unconditionally include in API requests. By default, fields with
15113	// empty or default values are omitted from API requests. However, any
15114	// non-pointer, non-interface field appearing in ForceSendFields will be
15115	// sent to the server regardless of whether the field is empty or not.
15116	// This may be used to include empty fields in Patch requests.
15117	ForceSendFields []string `json:"-"`
15118
15119	// NullFields is a list of field names (e.g. "Entries") to include in
15120	// API requests with the JSON null value. By default, fields with empty
15121	// values are omitted from API requests. However, any field with an
15122	// empty value appearing in NullFields will be sent to the server as
15123	// null. It is an error if a field in this list has a non-empty value.
15124	// This may be used to include null fields in Patch requests.
15125	NullFields []string `json:"-"`
15126}
15127
15128func (s *ReturnpolicyCustomBatchRequest) MarshalJSON() ([]byte, error) {
15129	type NoMethod ReturnpolicyCustomBatchRequest
15130	raw := NoMethod(*s)
15131	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15132}
15133
15134type ReturnpolicyCustomBatchRequestEntry struct {
15135	// BatchId: An entry ID, unique within the batch request.
15136	BatchId int64 `json:"batchId,omitempty"`
15137
15138	// MerchantId: The Merchant Center account ID.
15139	MerchantId uint64 `json:"merchantId,omitempty,string"`
15140
15141	// Method: Method of the batch request entry. Acceptable values are: -
15142	// "delete" - "get" - "insert"
15143	Method string `json:"method,omitempty"`
15144
15145	// ReturnPolicy: The return policy to submit. This should be set only if
15146	// the method is `insert`.
15147	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
15148
15149	// ReturnPolicyId: The return policy ID. This should be set only if the
15150	// method is `delete` or `get`.
15151	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
15152
15153	// ForceSendFields is a list of field names (e.g. "BatchId") to
15154	// unconditionally include in API requests. By default, fields with
15155	// empty or default values are omitted from API requests. However, any
15156	// non-pointer, non-interface field appearing in ForceSendFields will be
15157	// sent to the server regardless of whether the field is empty or not.
15158	// This may be used to include empty fields in Patch requests.
15159	ForceSendFields []string `json:"-"`
15160
15161	// NullFields is a list of field names (e.g. "BatchId") to include in
15162	// API requests with the JSON null value. By default, fields with empty
15163	// values are omitted from API requests. However, any field with an
15164	// empty value appearing in NullFields will be sent to the server as
15165	// null. It is an error if a field in this list has a non-empty value.
15166	// This may be used to include null fields in Patch requests.
15167	NullFields []string `json:"-"`
15168}
15169
15170func (s *ReturnpolicyCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
15171	type NoMethod ReturnpolicyCustomBatchRequestEntry
15172	raw := NoMethod(*s)
15173	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15174}
15175
15176type ReturnpolicyCustomBatchResponse struct {
15177	// Entries: The result of the execution of the batch requests.
15178	Entries []*ReturnpolicyCustomBatchResponseEntry `json:"entries,omitempty"`
15179
15180	// Kind: Identifies what kind of resource this is. Value: the fixed
15181	// string "content#returnpolicyCustomBatchResponse".
15182	Kind string `json:"kind,omitempty"`
15183
15184	// ServerResponse contains the HTTP response code and headers from the
15185	// server.
15186	googleapi.ServerResponse `json:"-"`
15187
15188	// ForceSendFields is a list of field names (e.g. "Entries") to
15189	// unconditionally include in API requests. By default, fields with
15190	// empty or default values are omitted from API requests. However, any
15191	// non-pointer, non-interface field appearing in ForceSendFields will be
15192	// sent to the server regardless of whether the field is empty or not.
15193	// This may be used to include empty fields in Patch requests.
15194	ForceSendFields []string `json:"-"`
15195
15196	// NullFields is a list of field names (e.g. "Entries") to include in
15197	// API requests with the JSON null value. By default, fields with empty
15198	// values are omitted from API requests. However, any field with an
15199	// empty value appearing in NullFields will be sent to the server as
15200	// null. It is an error if a field in this list has a non-empty value.
15201	// This may be used to include null fields in Patch requests.
15202	NullFields []string `json:"-"`
15203}
15204
15205func (s *ReturnpolicyCustomBatchResponse) MarshalJSON() ([]byte, error) {
15206	type NoMethod ReturnpolicyCustomBatchResponse
15207	raw := NoMethod(*s)
15208	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15209}
15210
15211type ReturnpolicyCustomBatchResponseEntry struct {
15212	// BatchId: The ID of the request entry to which this entry responds.
15213	BatchId int64 `json:"batchId,omitempty"`
15214
15215	// Errors: A list of errors defined if, and only if, the request failed.
15216	Errors *Errors `json:"errors,omitempty"`
15217
15218	// Kind: Identifies what kind of resource this is. Value: the fixed
15219	// string "content#returnpolicyCustomBatchResponseEntry"
15220	Kind string `json:"kind,omitempty"`
15221
15222	// ReturnPolicy: The retrieved return policy.
15223	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
15224
15225	// ForceSendFields is a list of field names (e.g. "BatchId") to
15226	// unconditionally include in API requests. By default, fields with
15227	// empty or default values are omitted from API requests. However, any
15228	// non-pointer, non-interface field appearing in ForceSendFields will be
15229	// sent to the server regardless of whether the field is empty or not.
15230	// This may be used to include empty fields in Patch requests.
15231	ForceSendFields []string `json:"-"`
15232
15233	// NullFields is a list of field names (e.g. "BatchId") to include in
15234	// API requests with the JSON null value. By default, fields with empty
15235	// values are omitted from API requests. However, any field with an
15236	// empty value appearing in NullFields will be sent to the server as
15237	// null. It is an error if a field in this list has a non-empty value.
15238	// This may be used to include null fields in Patch requests.
15239	NullFields []string `json:"-"`
15240}
15241
15242func (s *ReturnpolicyCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
15243	type NoMethod ReturnpolicyCustomBatchResponseEntry
15244	raw := NoMethod(*s)
15245	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15246}
15247
15248type ReturnpolicyListResponse struct {
15249	// Kind: Identifies what kind of resource this is. Value: the fixed
15250	// string "content#returnpolicyListResponse".
15251	Kind string `json:"kind,omitempty"`
15252
15253	Resources []*ReturnPolicy `json:"resources,omitempty"`
15254
15255	// ServerResponse contains the HTTP response code and headers from the
15256	// server.
15257	googleapi.ServerResponse `json:"-"`
15258
15259	// ForceSendFields is a list of field names (e.g. "Kind") to
15260	// unconditionally include in API requests. By default, fields with
15261	// empty or default values are omitted from API requests. However, any
15262	// non-pointer, non-interface field appearing in ForceSendFields will be
15263	// sent to the server regardless of whether the field is empty or not.
15264	// This may be used to include empty fields in Patch requests.
15265	ForceSendFields []string `json:"-"`
15266
15267	// NullFields is a list of field names (e.g. "Kind") to include in API
15268	// requests with the JSON null value. By default, fields with empty
15269	// values are omitted from API requests. However, any field with an
15270	// empty value appearing in NullFields will be sent to the server as
15271	// null. It is an error if a field in this list has a non-empty value.
15272	// This may be used to include null fields in Patch requests.
15273	NullFields []string `json:"-"`
15274}
15275
15276func (s *ReturnpolicyListResponse) MarshalJSON() ([]byte, error) {
15277	type NoMethod ReturnpolicyListResponse
15278	raw := NoMethod(*s)
15279	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15280}
15281
15282type Row struct {
15283	// Cells: The list of cells that constitute the row. Must have the same
15284	// length as `columnHeaders` for two-dimensional tables, a length of 1
15285	// for one-dimensional tables. Required.
15286	Cells []*Value `json:"cells,omitempty"`
15287
15288	// ForceSendFields is a list of field names (e.g. "Cells") to
15289	// unconditionally include in API requests. By default, fields with
15290	// empty or default values are omitted from API requests. However, any
15291	// non-pointer, non-interface field appearing in ForceSendFields will be
15292	// sent to the server regardless of whether the field is empty or not.
15293	// This may be used to include empty fields in Patch requests.
15294	ForceSendFields []string `json:"-"`
15295
15296	// NullFields is a list of field names (e.g. "Cells") to include in API
15297	// requests with the JSON null value. By default, fields with empty
15298	// values are omitted from API requests. However, any field with an
15299	// empty value appearing in NullFields will be sent to the server as
15300	// null. It is an error if a field in this list has a non-empty value.
15301	// This may be used to include null fields in Patch requests.
15302	NullFields []string `json:"-"`
15303}
15304
15305func (s *Row) MarshalJSON() ([]byte, error) {
15306	type NoMethod Row
15307	raw := NoMethod(*s)
15308	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15309}
15310
15311// SearchRequest: Request message for the ReportService.Search method.
15312type SearchRequest struct {
15313	// PageSize: Number of ReportRows to retrieve in a single page. Defaults
15314	// to the maximum of 1000. Values above 1000 are coerced to 1000.
15315	PageSize int64 `json:"pageSize,omitempty"`
15316
15317	// PageToken: Token of the page to retrieve. If not specified, the first
15318	// page of results is returned. In order to request the next page of
15319	// results, the value obtained from `next_page_token` in the previous
15320	// response should be used.
15321	PageToken string `json:"pageToken,omitempty"`
15322
15323	// Query: Required. Query that defines performance metrics to retrieve
15324	// and dimensions according to which the metrics are to be segmented.
15325	// For details on how to construct your query, see the Query Language
15326	// guide
15327	// (https://developers.google.com/shopping-content/guides/reports/query-language/overview).
15328	Query string `json:"query,omitempty"`
15329
15330	// ForceSendFields is a list of field names (e.g. "PageSize") to
15331	// unconditionally include in API requests. By default, fields with
15332	// empty or default values are omitted from API requests. However, any
15333	// non-pointer, non-interface field appearing in ForceSendFields will be
15334	// sent to the server regardless of whether the field is empty or not.
15335	// This may be used to include empty fields in Patch requests.
15336	ForceSendFields []string `json:"-"`
15337
15338	// NullFields is a list of field names (e.g. "PageSize") to include in
15339	// API requests with the JSON null value. By default, fields with empty
15340	// values are omitted from API requests. However, any field with an
15341	// empty value appearing in NullFields will be sent to the server as
15342	// null. It is an error if a field in this list has a non-empty value.
15343	// This may be used to include null fields in Patch requests.
15344	NullFields []string `json:"-"`
15345}
15346
15347func (s *SearchRequest) MarshalJSON() ([]byte, error) {
15348	type NoMethod SearchRequest
15349	raw := NoMethod(*s)
15350	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15351}
15352
15353// SearchResponse: Response message for the ReportService.Search method.
15354type SearchResponse struct {
15355	// NextPageToken: Token which can be sent as `page_token` to retrieve
15356	// the next page. If omitted, there are no subsequent pages.
15357	NextPageToken string `json:"nextPageToken,omitempty"`
15358
15359	// Results: Rows that matched the search query.
15360	Results []*ReportRow `json:"results,omitempty"`
15361
15362	// ServerResponse contains the HTTP response code and headers from the
15363	// server.
15364	googleapi.ServerResponse `json:"-"`
15365
15366	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
15367	// unconditionally include in API requests. By default, fields with
15368	// empty or default values are omitted from API requests. However, any
15369	// non-pointer, non-interface field appearing in ForceSendFields will be
15370	// sent to the server regardless of whether the field is empty or not.
15371	// This may be used to include empty fields in Patch requests.
15372	ForceSendFields []string `json:"-"`
15373
15374	// NullFields is a list of field names (e.g. "NextPageToken") to include
15375	// in API requests with the JSON null value. By default, fields with
15376	// empty values are omitted from API requests. However, any field with
15377	// an empty value appearing in NullFields will be sent to the server as
15378	// null. It is an error if a field in this list has a non-empty value.
15379	// This may be used to include null fields in Patch requests.
15380	NullFields []string `json:"-"`
15381}
15382
15383func (s *SearchResponse) MarshalJSON() ([]byte, error) {
15384	type NoMethod SearchResponse
15385	raw := NoMethod(*s)
15386	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15387}
15388
15389// Segments: Dimensions according to which metrics are segmented in the
15390// response. Values of product dimensions, e.g., offer id, reflect the
15391// state of a product at the time of the corresponding event, e.g.,
15392// impression or order. Segment fields cannot be selected in queries
15393// without also selecting at least one metric field. Values are only set
15394// for dimensions requested explicitly in the request's search query.
15395type Segments struct {
15396	// Brand: Brand of the product.
15397	Brand string `json:"brand,omitempty"`
15398
15399	// CategoryL1: Product category (1st level)
15400	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15401	// in Google's product taxonomy.
15402	CategoryL1 string `json:"categoryL1,omitempty"`
15403
15404	// CategoryL2: Product category (2nd level)
15405	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15406	// in Google's product taxonomy.
15407	CategoryL2 string `json:"categoryL2,omitempty"`
15408
15409	// CategoryL3: Product category (3rd level)
15410	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15411	// in Google's product taxonomy.
15412	CategoryL3 string `json:"categoryL3,omitempty"`
15413
15414	// CategoryL4: Product category (4th level)
15415	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15416	// in Google's product taxonomy.
15417	CategoryL4 string `json:"categoryL4,omitempty"`
15418
15419	// CategoryL5: Product category (5th level)
15420	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15421	// in Google's product taxonomy.
15422	CategoryL5 string `json:"categoryL5,omitempty"`
15423
15424	// CurrencyCode: Currency in which price metrics are represented, e.g.,
15425	// if you select `ordered_item_sales_micros`, the returned value will be
15426	// represented by this currency.
15427	CurrencyCode string `json:"currencyCode,omitempty"`
15428
15429	// CustomLabel0: Custom label 0 for custom grouping of products.
15430	CustomLabel0 string `json:"customLabel0,omitempty"`
15431
15432	// CustomLabel1: Custom label 1 for custom grouping of products.
15433	CustomLabel1 string `json:"customLabel1,omitempty"`
15434
15435	// CustomLabel2: Custom label 2 for custom grouping of products.
15436	CustomLabel2 string `json:"customLabel2,omitempty"`
15437
15438	// CustomLabel3: Custom label 3 for custom grouping of products.
15439	CustomLabel3 string `json:"customLabel3,omitempty"`
15440
15441	// CustomLabel4: Custom label 4 for custom grouping of products.
15442	CustomLabel4 string `json:"customLabel4,omitempty"`
15443
15444	// Date: Date in the merchant timezone to which metrics apply.
15445	Date *Date `json:"date,omitempty"`
15446
15447	// OfferId: Merchant-provided id of the product.
15448	OfferId string `json:"offerId,omitempty"`
15449
15450	// ProductTypeL1: Product type (1st level)
15451	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15452	// in merchant's own product taxonomy.
15453	ProductTypeL1 string `json:"productTypeL1,omitempty"`
15454
15455	// ProductTypeL2: Product type (2nd level)
15456	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15457	// in merchant's own product taxonomy.
15458	ProductTypeL2 string `json:"productTypeL2,omitempty"`
15459
15460	// ProductTypeL3: Product type (3rd level)
15461	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15462	// in merchant's own product taxonomy.
15463	ProductTypeL3 string `json:"productTypeL3,omitempty"`
15464
15465	// ProductTypeL4: Product type (4th level)
15466	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15467	// in merchant's own product taxonomy.
15468	ProductTypeL4 string `json:"productTypeL4,omitempty"`
15469
15470	// ProductTypeL5: Product type (5th level)
15471	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15472	// in merchant's own product taxonomy.
15473	ProductTypeL5 string `json:"productTypeL5,omitempty"`
15474
15475	// Program: Program to which metrics apply, e.g., Free Product Listing.
15476	//
15477	// Possible values:
15478	//   "PROGRAM_UNSPECIFIED" - Not specified.
15479	//   "SHOPPING_ADS" - Shopping Ads.
15480	//   "FREE_PRODUCT_LISTING" - Free Product Listing.
15481	//   "FREE_LOCAL_PRODUCT_LISTING" - Free Local Product Listing.
15482	//   "BUY_ON_GOOGLE_LISTING" - Buy on Google Listing.
15483	Program string `json:"program,omitempty"`
15484
15485	// Title: Title of the product.
15486	Title string `json:"title,omitempty"`
15487
15488	// Week: First day of the week (Monday) of the metrics date in the
15489	// merchant timezone.
15490	Week *Date `json:"week,omitempty"`
15491
15492	// ForceSendFields is a list of field names (e.g. "Brand") to
15493	// unconditionally include in API requests. By default, fields with
15494	// empty or default values are omitted from API requests. However, any
15495	// non-pointer, non-interface field appearing in ForceSendFields will be
15496	// sent to the server regardless of whether the field is empty or not.
15497	// This may be used to include empty fields in Patch requests.
15498	ForceSendFields []string `json:"-"`
15499
15500	// NullFields is a list of field names (e.g. "Brand") to include in API
15501	// requests with the JSON null value. By default, fields with empty
15502	// values are omitted from API requests. However, any field with an
15503	// empty value appearing in NullFields will be sent to the server as
15504	// null. It is an error if a field in this list has a non-empty value.
15505	// This may be used to include null fields in Patch requests.
15506	NullFields []string `json:"-"`
15507}
15508
15509func (s *Segments) MarshalJSON() ([]byte, error) {
15510	type NoMethod Segments
15511	raw := NoMethod(*s)
15512	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15513}
15514
15515type Service struct {
15516	// Active: A boolean exposing the active status of the shipping service.
15517	// Required.
15518	Active bool `json:"active,omitempty"`
15519
15520	// Currency: The CLDR code of the currency to which this service
15521	// applies. Must match that of the prices in rate groups.
15522	Currency string `json:"currency,omitempty"`
15523
15524	// DeliveryCountry: The CLDR territory code of the country to which the
15525	// service applies. Required.
15526	DeliveryCountry string `json:"deliveryCountry,omitempty"`
15527
15528	// DeliveryTime: Time spent in various aspects from order to the
15529	// delivery of the product. Required.
15530	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
15531
15532	// Eligibility: Eligibility for this service. Acceptable values are: -
15533	// "All scenarios" - "All scenarios except Shopping Actions" -
15534	// "Shopping Actions"
15535	Eligibility string `json:"eligibility,omitempty"`
15536
15537	// MinimumOrderValue: Minimum order value for this service. If set,
15538	// indicates that customers will have to spend at least this amount. All
15539	// prices within a service must have the same currency. Cannot be set
15540	// together with minimum_order_value_table.
15541	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
15542
15543	// MinimumOrderValueTable: Table of per store minimum order values for
15544	// the pickup fulfillment type. Cannot be set together with
15545	// minimum_order_value.
15546	MinimumOrderValueTable *MinimumOrderValueTable `json:"minimumOrderValueTable,omitempty"`
15547
15548	// Name: Free-form name of the service. Must be unique within target
15549	// account. Required.
15550	Name string `json:"name,omitempty"`
15551
15552	// PickupService: The carrier-service pair delivering items to
15553	// collection points. The list of supported pickup services can be
15554	// retrieved via the `getSupportedPickupServices` method. Required if
15555	// and only if the service delivery type is `pickup`.
15556	PickupService *PickupCarrierService `json:"pickupService,omitempty"`
15557
15558	// RateGroups: Shipping rate group definitions. Only the last one is
15559	// allowed to have an empty `applicableShippingLabels`, which means
15560	// "everything else". The other `applicableShippingLabels` must not
15561	// overlap.
15562	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
15563
15564	// ShipmentType: Type of locations this service ships orders to.
15565	// Acceptable values are: - "delivery" - "pickup"
15566	ShipmentType string `json:"shipmentType,omitempty"`
15567
15568	// ForceSendFields is a list of field names (e.g. "Active") to
15569	// unconditionally include in API requests. By default, fields with
15570	// empty or default values are omitted from API requests. However, any
15571	// non-pointer, non-interface field appearing in ForceSendFields will be
15572	// sent to the server regardless of whether the field is empty or not.
15573	// This may be used to include empty fields in Patch requests.
15574	ForceSendFields []string `json:"-"`
15575
15576	// NullFields is a list of field names (e.g. "Active") to include in API
15577	// requests with the JSON null value. By default, fields with empty
15578	// values are omitted from API requests. However, any field with an
15579	// empty value appearing in NullFields will be sent to the server as
15580	// null. It is an error if a field in this list has a non-empty value.
15581	// This may be used to include null fields in Patch requests.
15582	NullFields []string `json:"-"`
15583}
15584
15585func (s *Service) MarshalJSON() ([]byte, error) {
15586	type NoMethod Service
15587	raw := NoMethod(*s)
15588	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15589}
15590
15591// SettlementReport:  Settlement reports detail order-level and
15592// item-level credits and debits between you and Google.
15593type SettlementReport struct {
15594	// EndDate: The end date on which all transactions are included in the
15595	// report, in ISO 8601 format.
15596	EndDate string `json:"endDate,omitempty"`
15597
15598	// Kind: Identifies what kind of resource this is. Value: the fixed
15599	// string "content#settlementReport"
15600	Kind string `json:"kind,omitempty"`
15601
15602	// PreviousBalance: The residual amount from the previous invoice. This
15603	// is set only if the previous invoices are not paid because of negative
15604	// balance.
15605	PreviousBalance *Price `json:"previousBalance,omitempty"`
15606
15607	// SettlementId: The ID of the settlement report.
15608	SettlementId string `json:"settlementId,omitempty"`
15609
15610	// StartDate: The start date on which all transactions are included in
15611	// the report, in ISO 8601 format.
15612	StartDate string `json:"startDate,omitempty"`
15613
15614	// TransferAmount: The money due to the merchant.
15615	TransferAmount *Price `json:"transferAmount,omitempty"`
15616
15617	// TransferDate: Date on which transfer for this payment was initiated
15618	// by Google, in ISO 8601 format.
15619	TransferDate string `json:"transferDate,omitempty"`
15620
15621	// TransferIds: The list of bank identifiers used for the transfer. e.g.
15622	// Trace ID for Federal Automated Clearing House (ACH). This may also be
15623	// known as the Wire ID.
15624	TransferIds []string `json:"transferIds,omitempty"`
15625
15626	// ServerResponse contains the HTTP response code and headers from the
15627	// server.
15628	googleapi.ServerResponse `json:"-"`
15629
15630	// ForceSendFields is a list of field names (e.g. "EndDate") to
15631	// unconditionally include in API requests. By default, fields with
15632	// empty or default values are omitted from API requests. However, any
15633	// non-pointer, non-interface field appearing in ForceSendFields will be
15634	// sent to the server regardless of whether the field is empty or not.
15635	// This may be used to include empty fields in Patch requests.
15636	ForceSendFields []string `json:"-"`
15637
15638	// NullFields is a list of field names (e.g. "EndDate") to include in
15639	// API requests with the JSON null value. By default, fields with empty
15640	// values are omitted from API requests. However, any field with an
15641	// empty value appearing in NullFields will be sent to the server as
15642	// null. It is an error if a field in this list has a non-empty value.
15643	// This may be used to include null fields in Patch requests.
15644	NullFields []string `json:"-"`
15645}
15646
15647func (s *SettlementReport) MarshalJSON() ([]byte, error) {
15648	type NoMethod SettlementReport
15649	raw := NoMethod(*s)
15650	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15651}
15652
15653// SettlementTransaction: Settlement transactions give a detailed
15654// breakdown of the settlement report.
15655type SettlementTransaction struct {
15656	// Amount: The amount for the transaction.
15657	Amount *SettlementTransactionAmount `json:"amount,omitempty"`
15658
15659	// Identifiers: Identifiers of the transaction.
15660	Identifiers *SettlementTransactionIdentifiers `json:"identifiers,omitempty"`
15661
15662	// Kind: Identifies what kind of resource this is. Value: the fixed
15663	// string "content#settlementTransaction"
15664	Kind string `json:"kind,omitempty"`
15665
15666	// Transaction: Details of the transaction.
15667	Transaction *SettlementTransactionTransaction `json:"transaction,omitempty"`
15668
15669	// ForceSendFields is a list of field names (e.g. "Amount") to
15670	// unconditionally include in API requests. By default, fields with
15671	// empty or default values are omitted from API requests. However, any
15672	// non-pointer, non-interface field appearing in ForceSendFields will be
15673	// sent to the server regardless of whether the field is empty or not.
15674	// This may be used to include empty fields in Patch requests.
15675	ForceSendFields []string `json:"-"`
15676
15677	// NullFields is a list of field names (e.g. "Amount") to include in API
15678	// requests with the JSON null value. By default, fields with empty
15679	// values are omitted from API requests. However, any field with an
15680	// empty value appearing in NullFields will be sent to the server as
15681	// null. It is an error if a field in this list has a non-empty value.
15682	// This may be used to include null fields in Patch requests.
15683	NullFields []string `json:"-"`
15684}
15685
15686func (s *SettlementTransaction) MarshalJSON() ([]byte, error) {
15687	type NoMethod SettlementTransaction
15688	raw := NoMethod(*s)
15689	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15690}
15691
15692type SettlementTransactionAmount struct {
15693	Commission *SettlementTransactionAmountCommission `json:"commission,omitempty"`
15694
15695	// Description: The description of the event. Acceptable values are: -
15696	// "taxWithhold" - "principal" - "principalAdjustment" -
15697	// "shippingFee" - "merchantRemittedSalesTax" -
15698	// "googleRemittedSalesTax" - "merchantCoupon" -
15699	// "merchantCouponTax" - "merchantRemittedDisposalTax" -
15700	// "googleRemittedDisposalTax" - "merchantRemittedRedemptionFee" -
15701	// "googleRemittedRedemptionFee" - "eeeEcoFee" - "furnitureEcoFee"
15702	// - "copyPrivateFee" - "eeeEcoFeeCommission" -
15703	// "furnitureEcoFeeCommission" - "copyPrivateFeeCommission" -
15704	// "principalRefund" - "principalRefundTax" - "itemCommission" -
15705	// "adjustmentCommission" - "shippingFeeCommission" -
15706	// "commissionRefund" - "damaged" - "damagedOrDefectiveItem" -
15707	// "expiredItem" - "faultyItem" - "incorrectItemReceived" -
15708	// "itemMissing" - "qualityNotExpected" - "receivedTooLate" -
15709	// "storePackageMissing" - "transitPackageMissing" -
15710	// "unsuccessfulDeliveryUndeliverable" - "wrongChargeInStore" -
15711	// "wrongItem" - "returns" - "undeliverable" -
15712	// "issueRelatedRefundAndReplacementAmountDescription" -
15713	// "refundFromMerchant" - "returnLabelShippingFee" -
15714	// "lumpSumCorrection" - "pspFee" - "principalRefundDoesNotFit" -
15715	// "principalRefundOrderedWrongItem" -
15716	// "principalRefundQualityNotExpected" -
15717	// "principalRefundBetterPriceFound" -
15718	// "principalRefundNoLongerNeeded" - "principalRefundChangedMind" -
15719	// "principalRefundReceivedTooLate" -
15720	// "principalRefundIncorrectItemReceived" -
15721	// "principalRefundDamagedOrDefectiveItem" -
15722	// "principalRefundDidNotMatchDescription" -
15723	// "principalRefundExpiredItem"
15724	Description string `json:"description,omitempty"`
15725
15726	// TransactionAmount: The amount that contributes to the line item
15727	// price.
15728	TransactionAmount *Price `json:"transactionAmount,omitempty"`
15729
15730	// Type: The type of the amount. Acceptable values are: - "itemPrice"
15731	// - "orderPrice" - "refund" - "earlyRefund" - "courtesyRefund"
15732	// - "returnRefund" - "returnLabelShippingFeeAmount" -
15733	// "lumpSumCorrectionAmount"
15734	Type string `json:"type,omitempty"`
15735
15736	// ForceSendFields is a list of field names (e.g. "Commission") to
15737	// unconditionally include in API requests. By default, fields with
15738	// empty or default values are omitted from API requests. However, any
15739	// non-pointer, non-interface field appearing in ForceSendFields will be
15740	// sent to the server regardless of whether the field is empty or not.
15741	// This may be used to include empty fields in Patch requests.
15742	ForceSendFields []string `json:"-"`
15743
15744	// NullFields is a list of field names (e.g. "Commission") to include in
15745	// API requests with the JSON null value. By default, fields with empty
15746	// values are omitted from API requests. However, any field with an
15747	// empty value appearing in NullFields will be sent to the server as
15748	// null. It is an error if a field in this list has a non-empty value.
15749	// This may be used to include null fields in Patch requests.
15750	NullFields []string `json:"-"`
15751}
15752
15753func (s *SettlementTransactionAmount) MarshalJSON() ([]byte, error) {
15754	type NoMethod SettlementTransactionAmount
15755	raw := NoMethod(*s)
15756	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15757}
15758
15759type SettlementTransactionAmountCommission struct {
15760	// Category: The category of the commission. Acceptable values are: -
15761	// "animalsAndPetSupplies" - "dogCatFoodAndCatLitter" -
15762	// "apparelAndAccessories" - "shoesHandbagsAndSunglasses" -
15763	// "costumesAndAccessories" - "jewelry" - "watches" -
15764	// "hobbiesArtsAndCrafts" - "homeAndGarden" -
15765	// "entertainmentCollectibles" - "collectibleCoins" -
15766	// "sportsCollectibles" - "sportingGoods" - "toysAndGames" -
15767	// "musicalInstruments" - "giftCards" - "babyAndToddler" -
15768	// "babyFoodWipesAndDiapers" - "businessAndIndustrial" -
15769	// "camerasOpticsAndPhotography" - "consumerElectronics" -
15770	// "electronicsAccessories" - "personalComputers" -
15771	// "videoGameConsoles" - "foodAndGrocery" - "beverages" -
15772	// "tobaccoProducts" - "furniture" - "hardware" -
15773	// "buildingMaterials" - "tools" - "healthAndPersonalCare" -
15774	// "beauty" - "householdSupplies" - "kitchenAndDining" -
15775	// "majorAppliances" - "luggageAndBags" - "media" -
15776	// "officeSupplies" - "softwareAndVideoGames" -
15777	// "vehiclePartsAndAccessories" - "vehicleTiresAndWheels" -
15778	// "vehicles" - "everythingElse"
15779	Category string `json:"category,omitempty"`
15780
15781	// Rate: Rate of the commission in percentage.
15782	Rate string `json:"rate,omitempty"`
15783
15784	// ForceSendFields is a list of field names (e.g. "Category") to
15785	// unconditionally include in API requests. By default, fields with
15786	// empty or default values are omitted from API requests. However, any
15787	// non-pointer, non-interface field appearing in ForceSendFields will be
15788	// sent to the server regardless of whether the field is empty or not.
15789	// This may be used to include empty fields in Patch requests.
15790	ForceSendFields []string `json:"-"`
15791
15792	// NullFields is a list of field names (e.g. "Category") to include in
15793	// API requests with the JSON null value. By default, fields with empty
15794	// values are omitted from API requests. However, any field with an
15795	// empty value appearing in NullFields will be sent to the server as
15796	// null. It is an error if a field in this list has a non-empty value.
15797	// This may be used to include null fields in Patch requests.
15798	NullFields []string `json:"-"`
15799}
15800
15801func (s *SettlementTransactionAmountCommission) MarshalJSON() ([]byte, error) {
15802	type NoMethod SettlementTransactionAmountCommission
15803	raw := NoMethod(*s)
15804	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15805}
15806
15807type SettlementTransactionIdentifiers struct {
15808	// AdjustmentId: The identifier of the adjustments, if it is available.
15809	AdjustmentId string `json:"adjustmentId,omitempty"`
15810
15811	// MerchantOrderId: The merchant provided order ID.
15812	MerchantOrderId string `json:"merchantOrderId,omitempty"`
15813
15814	// OrderItemId: The identifier of the item.
15815	OrderItemId string `json:"orderItemId,omitempty"`
15816
15817	// SettlementEntryId: The unique ID of the settlement transaction entry.
15818	SettlementEntryId string `json:"settlementEntryId,omitempty"`
15819
15820	// ShipmentIds: The shipment ids for the item.
15821	ShipmentIds []string `json:"shipmentIds,omitempty"`
15822
15823	// TransactionId: The Google transaction ID.
15824	TransactionId string `json:"transactionId,omitempty"`
15825
15826	// ForceSendFields is a list of field names (e.g. "AdjustmentId") to
15827	// unconditionally include in API requests. By default, fields with
15828	// empty or default values are omitted from API requests. However, any
15829	// non-pointer, non-interface field appearing in ForceSendFields will be
15830	// sent to the server regardless of whether the field is empty or not.
15831	// This may be used to include empty fields in Patch requests.
15832	ForceSendFields []string `json:"-"`
15833
15834	// NullFields is a list of field names (e.g. "AdjustmentId") to include
15835	// in API requests with the JSON null value. By default, fields with
15836	// empty values are omitted from API requests. However, any field with
15837	// an empty value appearing in NullFields will be sent to the server as
15838	// null. It is an error if a field in this list has a non-empty value.
15839	// This may be used to include null fields in Patch requests.
15840	NullFields []string `json:"-"`
15841}
15842
15843func (s *SettlementTransactionIdentifiers) MarshalJSON() ([]byte, error) {
15844	type NoMethod SettlementTransactionIdentifiers
15845	raw := NoMethod(*s)
15846	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15847}
15848
15849type SettlementTransactionTransaction struct {
15850	// PostDate: The time on which the event occurred in ISO 8601 format.
15851	PostDate string `json:"postDate,omitempty"`
15852
15853	// Type: The type of the transaction that occurred. Acceptable values
15854	// are: - "order" - "reversal" - "orderRefund" -
15855	// "reversalRefund" - "issueRelatedRefundAndReplacement" -
15856	// "returnLabelShippingFeeTransaction" -
15857	// "reversalIssueRelatedRefundAndReplacement" -
15858	// "reversalReturnLabelShippingFeeTransaction" -
15859	// "lumpSumCorrectionTransaction"
15860	Type string `json:"type,omitempty"`
15861
15862	// ForceSendFields is a list of field names (e.g. "PostDate") to
15863	// unconditionally include in API requests. By default, fields with
15864	// empty or default values are omitted from API requests. However, any
15865	// non-pointer, non-interface field appearing in ForceSendFields will be
15866	// sent to the server regardless of whether the field is empty or not.
15867	// This may be used to include empty fields in Patch requests.
15868	ForceSendFields []string `json:"-"`
15869
15870	// NullFields is a list of field names (e.g. "PostDate") to include in
15871	// API requests with the JSON null value. By default, fields with empty
15872	// values are omitted from API requests. However, any field with an
15873	// empty value appearing in NullFields will be sent to the server as
15874	// null. It is an error if a field in this list has a non-empty value.
15875	// This may be used to include null fields in Patch requests.
15876	NullFields []string `json:"-"`
15877}
15878
15879func (s *SettlementTransactionTransaction) MarshalJSON() ([]byte, error) {
15880	type NoMethod SettlementTransactionTransaction
15881	raw := NoMethod(*s)
15882	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15883}
15884
15885type SettlementreportsListResponse struct {
15886	// Kind: Identifies what kind of resource this is. Value: the fixed
15887	// string "content#settlementreportsListResponse".
15888	Kind string `json:"kind,omitempty"`
15889
15890	// NextPageToken: The token for the retrieval of the next page of
15891	// returns.
15892	NextPageToken string `json:"nextPageToken,omitempty"`
15893
15894	Resources []*SettlementReport `json:"resources,omitempty"`
15895
15896	// ServerResponse contains the HTTP response code and headers from the
15897	// server.
15898	googleapi.ServerResponse `json:"-"`
15899
15900	// ForceSendFields is a list of field names (e.g. "Kind") to
15901	// unconditionally include in API requests. By default, fields with
15902	// empty or default values are omitted from API requests. However, any
15903	// non-pointer, non-interface field appearing in ForceSendFields will be
15904	// sent to the server regardless of whether the field is empty or not.
15905	// This may be used to include empty fields in Patch requests.
15906	ForceSendFields []string `json:"-"`
15907
15908	// NullFields is a list of field names (e.g. "Kind") to include in API
15909	// requests with the JSON null value. By default, fields with empty
15910	// values are omitted from API requests. However, any field with an
15911	// empty value appearing in NullFields will be sent to the server as
15912	// null. It is an error if a field in this list has a non-empty value.
15913	// This may be used to include null fields in Patch requests.
15914	NullFields []string `json:"-"`
15915}
15916
15917func (s *SettlementreportsListResponse) MarshalJSON() ([]byte, error) {
15918	type NoMethod SettlementreportsListResponse
15919	raw := NoMethod(*s)
15920	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15921}
15922
15923type SettlementtransactionsListResponse struct {
15924	// Kind: Identifies what kind of resource this is. Value: the fixed
15925	// string "content#settlementtransactionsListResponse".
15926	Kind string `json:"kind,omitempty"`
15927
15928	// NextPageToken: The token for the retrieval of the next page of
15929	// returns.
15930	NextPageToken string `json:"nextPageToken,omitempty"`
15931
15932	Resources []*SettlementTransaction `json:"resources,omitempty"`
15933
15934	// ServerResponse contains the HTTP response code and headers from the
15935	// server.
15936	googleapi.ServerResponse `json:"-"`
15937
15938	// ForceSendFields is a list of field names (e.g. "Kind") to
15939	// unconditionally include in API requests. By default, fields with
15940	// empty or default values are omitted from API requests. However, any
15941	// non-pointer, non-interface field appearing in ForceSendFields will be
15942	// sent to the server regardless of whether the field is empty or not.
15943	// This may be used to include empty fields in Patch requests.
15944	ForceSendFields []string `json:"-"`
15945
15946	// NullFields is a list of field names (e.g. "Kind") to include in API
15947	// requests with the JSON null value. By default, fields with empty
15948	// values are omitted from API requests. However, any field with an
15949	// empty value appearing in NullFields will be sent to the server as
15950	// null. It is an error if a field in this list has a non-empty value.
15951	// This may be used to include null fields in Patch requests.
15952	NullFields []string `json:"-"`
15953}
15954
15955func (s *SettlementtransactionsListResponse) MarshalJSON() ([]byte, error) {
15956	type NoMethod SettlementtransactionsListResponse
15957	raw := NoMethod(*s)
15958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15959}
15960
15961type ShipmentInvoice struct {
15962	// InvoiceSummary: [required] Invoice summary.
15963	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
15964
15965	// LineItemInvoices: [required] Invoice details per line item.
15966	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
15967
15968	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
15969	// by the merchant in the `shipLineItems` method and is used to group
15970	// multiple line items that have the same kind of shipping charges.
15971	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
15972
15973	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
15974	// unconditionally include in API requests. By default, fields with
15975	// empty or default values are omitted from API requests. However, any
15976	// non-pointer, non-interface field appearing in ForceSendFields will be
15977	// sent to the server regardless of whether the field is empty or not.
15978	// This may be used to include empty fields in Patch requests.
15979	ForceSendFields []string `json:"-"`
15980
15981	// NullFields is a list of field names (e.g. "InvoiceSummary") to
15982	// include in API requests with the JSON null value. By default, fields
15983	// with empty values are omitted from API requests. However, any field
15984	// with an empty value appearing in NullFields will be sent to the
15985	// server as null. It is an error if a field in this list has a
15986	// non-empty value. This may be used to include null fields in Patch
15987	// requests.
15988	NullFields []string `json:"-"`
15989}
15990
15991func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
15992	type NoMethod ShipmentInvoice
15993	raw := NoMethod(*s)
15994	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15995}
15996
15997type ShipmentInvoiceLineItemInvoice struct {
15998	// LineItemId: ID of the line item. Either lineItemId or productId must
15999	// be set.
16000	LineItemId string `json:"lineItemId,omitempty"`
16001
16002	// ProductId: ID of the product. This is the REST ID used in the
16003	// products service. Either lineItemId or productId must be set.
16004	ProductId string `json:"productId,omitempty"`
16005
16006	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
16007	// merchant and defines individual quantities within a line item. The
16008	// same ID can be assigned to units that are the same while units that
16009	// differ must be assigned a different ID (for example: free or
16010	// promotional units).
16011	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
16012
16013	// UnitInvoice: [required] Invoice details for a single unit.
16014	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
16015
16016	// ForceSendFields is a list of field names (e.g. "LineItemId") to
16017	// unconditionally include in API requests. By default, fields with
16018	// empty or default values are omitted from API requests. However, any
16019	// non-pointer, non-interface field appearing in ForceSendFields will be
16020	// sent to the server regardless of whether the field is empty or not.
16021	// This may be used to include empty fields in Patch requests.
16022	ForceSendFields []string `json:"-"`
16023
16024	// NullFields is a list of field names (e.g. "LineItemId") to include in
16025	// API requests with the JSON null value. By default, fields with empty
16026	// values are omitted from API requests. However, any field with an
16027	// empty value appearing in NullFields will be sent to the server as
16028	// null. It is an error if a field in this list has a non-empty value.
16029	// This may be used to include null fields in Patch requests.
16030	NullFields []string `json:"-"`
16031}
16032
16033func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
16034	type NoMethod ShipmentInvoiceLineItemInvoice
16035	raw := NoMethod(*s)
16036	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16037}
16038
16039type ShipmentTrackingInfo struct {
16040	// Carrier: The shipping carrier that handles the package. Acceptable
16041	// values are: - "boxtal" - "bpost" - "chronopost" -
16042	// "colisPrive" - "colissimo" - "cxt" - "deliv" - "dhl" -
16043	// "dpd" - "dynamex" - "eCourier" - "easypost" - "efw" -
16044	// "fedex" - "fedexSmartpost" - "geodis" - "gls" -
16045	// "googleCourier" - "gsx" - "jdLogistics" - "laPoste" -
16046	// "lasership" - "manual" - "mpx" - "onTrac" - "other" -
16047	// "tnt" - "uds" - "ups" - "usps"
16048	Carrier string `json:"carrier,omitempty"`
16049
16050	// TrackingNumber: The tracking number for the package.
16051	TrackingNumber string `json:"trackingNumber,omitempty"`
16052
16053	// ForceSendFields is a list of field names (e.g. "Carrier") to
16054	// unconditionally include in API requests. By default, fields with
16055	// empty or default values are omitted from API requests. However, any
16056	// non-pointer, non-interface field appearing in ForceSendFields will be
16057	// sent to the server regardless of whether the field is empty or not.
16058	// This may be used to include empty fields in Patch requests.
16059	ForceSendFields []string `json:"-"`
16060
16061	// NullFields is a list of field names (e.g. "Carrier") to include in
16062	// API requests with the JSON null value. By default, fields with empty
16063	// values are omitted from API requests. However, any field with an
16064	// empty value appearing in NullFields will be sent to the server as
16065	// null. It is an error if a field in this list has a non-empty value.
16066	// This may be used to include null fields in Patch requests.
16067	NullFields []string `json:"-"`
16068}
16069
16070func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
16071	type NoMethod ShipmentTrackingInfo
16072	raw := NoMethod(*s)
16073	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16074}
16075
16076// ShippingSettings: The merchant account's shipping settings. All
16077// methods except getsupportedcarriers and getsupportedholidays require
16078// the admin role.
16079type ShippingSettings struct {
16080	// AccountId: The ID of the account to which these account shipping
16081	// settings belong. Ignored upon update, always present in get request
16082	// responses.
16083	AccountId uint64 `json:"accountId,omitempty,string"`
16084
16085	// PostalCodeGroups: A list of postal code groups that can be referred
16086	// to in `services`. Optional.
16087	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
16088
16089	// Services: The target account's list of services. Optional.
16090	Services []*Service `json:"services,omitempty"`
16091
16092	// ServerResponse contains the HTTP response code and headers from the
16093	// server.
16094	googleapi.ServerResponse `json:"-"`
16095
16096	// ForceSendFields is a list of field names (e.g. "AccountId") to
16097	// unconditionally include in API requests. By default, fields with
16098	// empty or default values are omitted from API requests. However, any
16099	// non-pointer, non-interface field appearing in ForceSendFields will be
16100	// sent to the server regardless of whether the field is empty or not.
16101	// This may be used to include empty fields in Patch requests.
16102	ForceSendFields []string `json:"-"`
16103
16104	// NullFields is a list of field names (e.g. "AccountId") to include in
16105	// API requests with the JSON null value. By default, fields with empty
16106	// values are omitted from API requests. However, any field with an
16107	// empty value appearing in NullFields will be sent to the server as
16108	// null. It is an error if a field in this list has a non-empty value.
16109	// This may be used to include null fields in Patch requests.
16110	NullFields []string `json:"-"`
16111}
16112
16113func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
16114	type NoMethod ShippingSettings
16115	raw := NoMethod(*s)
16116	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16117}
16118
16119type ShippingsettingsCustomBatchRequest struct {
16120	// Entries: The request entries to be processed in the batch.
16121	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
16122
16123	// ForceSendFields is a list of field names (e.g. "Entries") to
16124	// unconditionally include in API requests. By default, fields with
16125	// empty or default values are omitted from API requests. However, any
16126	// non-pointer, non-interface field appearing in ForceSendFields will be
16127	// sent to the server regardless of whether the field is empty or not.
16128	// This may be used to include empty fields in Patch requests.
16129	ForceSendFields []string `json:"-"`
16130
16131	// NullFields is a list of field names (e.g. "Entries") to include in
16132	// API requests with the JSON null value. By default, fields with empty
16133	// values are omitted from API requests. However, any field with an
16134	// empty value appearing in NullFields will be sent to the server as
16135	// null. It is an error if a field in this list has a non-empty value.
16136	// This may be used to include null fields in Patch requests.
16137	NullFields []string `json:"-"`
16138}
16139
16140func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
16141	type NoMethod ShippingsettingsCustomBatchRequest
16142	raw := NoMethod(*s)
16143	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16144}
16145
16146// ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
16147// single non-batch shippingsettings request.
16148type ShippingsettingsCustomBatchRequestEntry struct {
16149	// AccountId: The ID of the account for which to get/update account
16150	// shipping settings.
16151	AccountId uint64 `json:"accountId,omitempty,string"`
16152
16153	// BatchId: An entry ID, unique within the batch request.
16154	BatchId int64 `json:"batchId,omitempty"`
16155
16156	// MerchantId: The ID of the managing account.
16157	MerchantId uint64 `json:"merchantId,omitempty,string"`
16158
16159	// Method: The method of the batch entry. Acceptable values are: -
16160	// "get" - "update"
16161	Method string `json:"method,omitempty"`
16162
16163	// ShippingSettings: The account shipping settings to update. Only
16164	// defined if the method is `update`.
16165	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
16166
16167	// ForceSendFields is a list of field names (e.g. "AccountId") to
16168	// unconditionally include in API requests. By default, fields with
16169	// empty or default values are omitted from API requests. However, any
16170	// non-pointer, non-interface field appearing in ForceSendFields will be
16171	// sent to the server regardless of whether the field is empty or not.
16172	// This may be used to include empty fields in Patch requests.
16173	ForceSendFields []string `json:"-"`
16174
16175	// NullFields is a list of field names (e.g. "AccountId") to include in
16176	// API requests with the JSON null value. By default, fields with empty
16177	// values are omitted from API requests. However, any field with an
16178	// empty value appearing in NullFields will be sent to the server as
16179	// null. It is an error if a field in this list has a non-empty value.
16180	// This may be used to include null fields in Patch requests.
16181	NullFields []string `json:"-"`
16182}
16183
16184func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
16185	type NoMethod ShippingsettingsCustomBatchRequestEntry
16186	raw := NoMethod(*s)
16187	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16188}
16189
16190type ShippingsettingsCustomBatchResponse struct {
16191	// Entries: The result of the execution of the batch requests.
16192	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
16193
16194	// Kind: Identifies what kind of resource this is. Value: the fixed
16195	// string "content#shippingsettingsCustomBatchResponse".
16196	Kind string `json:"kind,omitempty"`
16197
16198	// ServerResponse contains the HTTP response code and headers from the
16199	// server.
16200	googleapi.ServerResponse `json:"-"`
16201
16202	// ForceSendFields is a list of field names (e.g. "Entries") to
16203	// unconditionally include in API requests. By default, fields with
16204	// empty or default values are omitted from API requests. However, any
16205	// non-pointer, non-interface field appearing in ForceSendFields will be
16206	// sent to the server regardless of whether the field is empty or not.
16207	// This may be used to include empty fields in Patch requests.
16208	ForceSendFields []string `json:"-"`
16209
16210	// NullFields is a list of field names (e.g. "Entries") to include in
16211	// API requests with the JSON null value. By default, fields with empty
16212	// values are omitted from API requests. However, any field with an
16213	// empty value appearing in NullFields will be sent to the server as
16214	// null. It is an error if a field in this list has a non-empty value.
16215	// This may be used to include null fields in Patch requests.
16216	NullFields []string `json:"-"`
16217}
16218
16219func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
16220	type NoMethod ShippingsettingsCustomBatchResponse
16221	raw := NoMethod(*s)
16222	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16223}
16224
16225// ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
16226// single non-batch shipping settings response.
16227type ShippingsettingsCustomBatchResponseEntry struct {
16228	// BatchId: The ID of the request entry to which this entry responds.
16229	BatchId int64 `json:"batchId,omitempty"`
16230
16231	// Errors: A list of errors defined if, and only if, the request failed.
16232	Errors *Errors `json:"errors,omitempty"`
16233
16234	// Kind: Identifies what kind of resource this is. Value: the fixed
16235	// string "content#shippingsettingsCustomBatchResponseEntry"
16236	Kind string `json:"kind,omitempty"`
16237
16238	// ShippingSettings: The retrieved or updated account shipping settings.
16239	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
16240
16241	// ForceSendFields is a list of field names (e.g. "BatchId") to
16242	// unconditionally include in API requests. By default, fields with
16243	// empty or default values are omitted from API requests. However, any
16244	// non-pointer, non-interface field appearing in ForceSendFields will be
16245	// sent to the server regardless of whether the field is empty or not.
16246	// This may be used to include empty fields in Patch requests.
16247	ForceSendFields []string `json:"-"`
16248
16249	// NullFields is a list of field names (e.g. "BatchId") to include in
16250	// API requests with the JSON null value. By default, fields with empty
16251	// values are omitted from API requests. However, any field with an
16252	// empty value appearing in NullFields will be sent to the server as
16253	// null. It is an error if a field in this list has a non-empty value.
16254	// This may be used to include null fields in Patch requests.
16255	NullFields []string `json:"-"`
16256}
16257
16258func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
16259	type NoMethod ShippingsettingsCustomBatchResponseEntry
16260	raw := NoMethod(*s)
16261	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16262}
16263
16264type ShippingsettingsGetSupportedCarriersResponse struct {
16265	// Carriers: A list of supported carriers. May be empty.
16266	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
16267
16268	// Kind: Identifies what kind of resource this is. Value: the fixed
16269	// string "content#shippingsettingsGetSupportedCarriersResponse".
16270	Kind string `json:"kind,omitempty"`
16271
16272	// ServerResponse contains the HTTP response code and headers from the
16273	// server.
16274	googleapi.ServerResponse `json:"-"`
16275
16276	// ForceSendFields is a list of field names (e.g. "Carriers") to
16277	// unconditionally include in API requests. By default, fields with
16278	// empty or default values are omitted from API requests. However, any
16279	// non-pointer, non-interface field appearing in ForceSendFields will be
16280	// sent to the server regardless of whether the field is empty or not.
16281	// This may be used to include empty fields in Patch requests.
16282	ForceSendFields []string `json:"-"`
16283
16284	// NullFields is a list of field names (e.g. "Carriers") to include in
16285	// API requests with the JSON null value. By default, fields with empty
16286	// values are omitted from API requests. However, any field with an
16287	// empty value appearing in NullFields will be sent to the server as
16288	// null. It is an error if a field in this list has a non-empty value.
16289	// This may be used to include null fields in Patch requests.
16290	NullFields []string `json:"-"`
16291}
16292
16293func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
16294	type NoMethod ShippingsettingsGetSupportedCarriersResponse
16295	raw := NoMethod(*s)
16296	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16297}
16298
16299type ShippingsettingsGetSupportedHolidaysResponse struct {
16300	// Holidays: A list of holidays applicable for delivery guarantees. May
16301	// be empty.
16302	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
16303
16304	// Kind: Identifies what kind of resource this is. Value: the fixed
16305	// string "content#shippingsettingsGetSupportedHolidaysResponse".
16306	Kind string `json:"kind,omitempty"`
16307
16308	// ServerResponse contains the HTTP response code and headers from the
16309	// server.
16310	googleapi.ServerResponse `json:"-"`
16311
16312	// ForceSendFields is a list of field names (e.g. "Holidays") to
16313	// unconditionally include in API requests. By default, fields with
16314	// empty or default values are omitted from API requests. However, any
16315	// non-pointer, non-interface field appearing in ForceSendFields will be
16316	// sent to the server regardless of whether the field is empty or not.
16317	// This may be used to include empty fields in Patch requests.
16318	ForceSendFields []string `json:"-"`
16319
16320	// NullFields is a list of field names (e.g. "Holidays") to include in
16321	// API requests with the JSON null value. By default, fields with empty
16322	// values are omitted from API requests. However, any field with an
16323	// empty value appearing in NullFields will be sent to the server as
16324	// null. It is an error if a field in this list has a non-empty value.
16325	// This may be used to include null fields in Patch requests.
16326	NullFields []string `json:"-"`
16327}
16328
16329func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
16330	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
16331	raw := NoMethod(*s)
16332	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16333}
16334
16335type ShippingsettingsGetSupportedPickupServicesResponse struct {
16336	// Kind: Identifies what kind of resource this is. Value: the fixed
16337	// string
16338	// "content#shippingsettingsGetSupportedPickupServicesResponse".
16339	Kind string `json:"kind,omitempty"`
16340
16341	// PickupServices: A list of supported pickup services. May be empty.
16342	PickupServices []*PickupServicesPickupService `json:"pickupServices,omitempty"`
16343
16344	// ServerResponse contains the HTTP response code and headers from the
16345	// server.
16346	googleapi.ServerResponse `json:"-"`
16347
16348	// ForceSendFields is a list of field names (e.g. "Kind") to
16349	// unconditionally include in API requests. By default, fields with
16350	// empty or default values are omitted from API requests. However, any
16351	// non-pointer, non-interface field appearing in ForceSendFields will be
16352	// sent to the server regardless of whether the field is empty or not.
16353	// This may be used to include empty fields in Patch requests.
16354	ForceSendFields []string `json:"-"`
16355
16356	// NullFields is a list of field names (e.g. "Kind") to include in API
16357	// requests with the JSON null value. By default, fields with empty
16358	// values are omitted from API requests. However, any field with an
16359	// empty value appearing in NullFields will be sent to the server as
16360	// null. It is an error if a field in this list has a non-empty value.
16361	// This may be used to include null fields in Patch requests.
16362	NullFields []string `json:"-"`
16363}
16364
16365func (s *ShippingsettingsGetSupportedPickupServicesResponse) MarshalJSON() ([]byte, error) {
16366	type NoMethod ShippingsettingsGetSupportedPickupServicesResponse
16367	raw := NoMethod(*s)
16368	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16369}
16370
16371type ShippingsettingsListResponse struct {
16372	// Kind: Identifies what kind of resource this is. Value: the fixed
16373	// string "content#shippingsettingsListResponse".
16374	Kind string `json:"kind,omitempty"`
16375
16376	// NextPageToken: The token for the retrieval of the next page of
16377	// shipping settings.
16378	NextPageToken string `json:"nextPageToken,omitempty"`
16379
16380	Resources []*ShippingSettings `json:"resources,omitempty"`
16381
16382	// ServerResponse contains the HTTP response code and headers from the
16383	// server.
16384	googleapi.ServerResponse `json:"-"`
16385
16386	// ForceSendFields is a list of field names (e.g. "Kind") to
16387	// unconditionally include in API requests. By default, fields with
16388	// empty or default values are omitted from API requests. However, any
16389	// non-pointer, non-interface field appearing in ForceSendFields will be
16390	// sent to the server regardless of whether the field is empty or not.
16391	// This may be used to include empty fields in Patch requests.
16392	ForceSendFields []string `json:"-"`
16393
16394	// NullFields is a list of field names (e.g. "Kind") to include in API
16395	// requests with the JSON null value. By default, fields with empty
16396	// values are omitted from API requests. However, any field with an
16397	// empty value appearing in NullFields will be sent to the server as
16398	// null. It is an error if a field in this list has a non-empty value.
16399	// This may be used to include null fields in Patch requests.
16400	NullFields []string `json:"-"`
16401}
16402
16403func (s *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
16404	type NoMethod ShippingsettingsListResponse
16405	raw := NoMethod(*s)
16406	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16407}
16408
16409// ShoppingAdsProgramStatus: Response message for
16410// GetShoppingAdsProgramStatus.
16411type ShoppingAdsProgramStatus struct {
16412	// RegionStatuses: Status of the program in each region. Regions with
16413	// the same status and review eligibility are grouped together in
16414	// `regionCodes`.
16415	RegionStatuses []*ShoppingAdsProgramStatusRegionStatus `json:"regionStatuses,omitempty"`
16416
16417	// State: If program is successfully onboarded for at least one region.
16418	//
16419	// Possible values:
16420	//   "PROGRAM_STATE_UNSPECIFIED" - State is not known.
16421	//   "ONBOARDED" - Program is onboarded for at least one country.
16422	//   "NOT_ONBOARDED" - Program is not onboarded for any country.
16423	State string `json:"state,omitempty"`
16424
16425	// ServerResponse contains the HTTP response code and headers from the
16426	// server.
16427	googleapi.ServerResponse `json:"-"`
16428
16429	// ForceSendFields is a list of field names (e.g. "RegionStatuses") to
16430	// unconditionally include in API requests. By default, fields with
16431	// empty or default values are omitted from API requests. However, any
16432	// non-pointer, non-interface field appearing in ForceSendFields will be
16433	// sent to the server regardless of whether the field is empty or not.
16434	// This may be used to include empty fields in Patch requests.
16435	ForceSendFields []string `json:"-"`
16436
16437	// NullFields is a list of field names (e.g. "RegionStatuses") to
16438	// include in API requests with the JSON null value. By default, fields
16439	// with empty values are omitted from API requests. However, any field
16440	// with an empty value appearing in NullFields will be sent to the
16441	// server as null. It is an error if a field in this list has a
16442	// non-empty value. This may be used to include null fields in Patch
16443	// requests.
16444	NullFields []string `json:"-"`
16445}
16446
16447func (s *ShoppingAdsProgramStatus) MarshalJSON() ([]byte, error) {
16448	type NoMethod ShoppingAdsProgramStatus
16449	raw := NoMethod(*s)
16450	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16451}
16452
16453// ShoppingAdsProgramStatusRegionStatus: Status of program and region.
16454type ShoppingAdsProgramStatusRegionStatus struct {
16455	// DisapprovalDate: Date by which `eligibility_status` will go from
16456	// `WARNING` to `DISAPPROVED`. It will be present when
16457	// `eligibility_status` is `WARNING`. Date will be provided in ISO 8601
16458	// (https://en.wikipedia.org/wiki/ISO_8601) format i.e. YYYY-MM-DD
16459	DisapprovalDate string `json:"disapprovalDate,omitempty"`
16460
16461	// EligibilityStatus: Eligibility status of the Shopping Ads program.
16462	//
16463	// Possible values:
16464	//   "STATE_UNSPECIFIED" - State is not known.
16465	//   "APPROVED" - If the account has no issues and review is completed
16466	// successfully.
16467	//   "DISAPPROVED" - There are one or more issues that needs to be
16468	// resolved for account to be active for the program. Detailed list of
16469	// account issues are available in
16470	// [accountstatuses](https://developers.google.com/shopping-content/refer
16471	// ence/rest/v2.1/accountstatuses) API.
16472	//   "WARNING" - If account has issues but offers are servable. Some of
16473	// the issue can make account DISAPPROVED after a certain deadline.
16474	//   "UNDER_REVIEW" - Account is under review.
16475	//   "PENDING_REVIEW" - Account is waiting for review to start.
16476	//   "ONBOARDING" - Program is currently onboarding.
16477	EligibilityStatus string `json:"eligibilityStatus,omitempty"`
16478
16479	// IneligibilityReason: Reason if a program in a given country is not
16480	// eligible for review. Populated only if `review_eligibility_status` is
16481	// `INELIGIBLE`.
16482	IneligibilityReason string `json:"ineligibilityReason,omitempty"`
16483
16484	// RegionCodes: The two-letter ISO 3166-1 alpha-2
16485	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) codes for all the
16486	// regions with the same `eligibilityStatus` and `reviewEligibility`.
16487	RegionCodes []string `json:"regionCodes,omitempty"`
16488
16489	// ReviewEligibilityStatus: If a program in a given country is eligible
16490	// for review. It will be present only if eligibility status is
16491	// `DISAPPROVED`.
16492	//
16493	// Possible values:
16494	//   "REVIEW_ELIGIBILITY_UNSPECIFIED" - Review eligibility state is
16495	// unknown.
16496	//   "ELIGIBLE" - Account for a region code is eligible for review.
16497	//   "INELIGIBLE" - Account for a region code is not eligible for
16498	// review.
16499	ReviewEligibilityStatus string `json:"reviewEligibilityStatus,omitempty"`
16500
16501	// ReviewIssues: These issues will be evaluated in review process. Fix
16502	// all the issues before requesting the review.
16503	ReviewIssues []string `json:"reviewIssues,omitempty"`
16504
16505	// ForceSendFields is a list of field names (e.g. "DisapprovalDate") to
16506	// unconditionally include in API requests. By default, fields with
16507	// empty or default values are omitted from API requests. However, any
16508	// non-pointer, non-interface field appearing in ForceSendFields will be
16509	// sent to the server regardless of whether the field is empty or not.
16510	// This may be used to include empty fields in Patch requests.
16511	ForceSendFields []string `json:"-"`
16512
16513	// NullFields is a list of field names (e.g. "DisapprovalDate") to
16514	// include in API requests with the JSON null value. By default, fields
16515	// with empty values are omitted from API requests. However, any field
16516	// with an empty value appearing in NullFields will be sent to the
16517	// server as null. It is an error if a field in this list has a
16518	// non-empty value. This may be used to include null fields in Patch
16519	// requests.
16520	NullFields []string `json:"-"`
16521}
16522
16523func (s *ShoppingAdsProgramStatusRegionStatus) MarshalJSON() ([]byte, error) {
16524	type NoMethod ShoppingAdsProgramStatusRegionStatus
16525	raw := NoMethod(*s)
16526	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16527}
16528
16529type Table struct {
16530	// ColumnHeaders: Headers of the table's columns. Optional: if not set
16531	// then the table has only one dimension.
16532	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
16533
16534	// Name: Name of the table. Required for subtables, ignored for the main
16535	// table.
16536	Name string `json:"name,omitempty"`
16537
16538	// RowHeaders: Headers of the table's rows. Required.
16539	RowHeaders *Headers `json:"rowHeaders,omitempty"`
16540
16541	// Rows: The list of rows that constitute the table. Must have the same
16542	// length as `rowHeaders`. Required.
16543	Rows []*Row `json:"rows,omitempty"`
16544
16545	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
16546	// unconditionally include in API requests. By default, fields with
16547	// empty or default values are omitted from API requests. However, any
16548	// non-pointer, non-interface field appearing in ForceSendFields will be
16549	// sent to the server regardless of whether the field is empty or not.
16550	// This may be used to include empty fields in Patch requests.
16551	ForceSendFields []string `json:"-"`
16552
16553	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
16554	// in API requests with the JSON null value. By default, fields with
16555	// empty values are omitted from API requests. However, any field with
16556	// an empty value appearing in NullFields will be sent to the server as
16557	// null. It is an error if a field in this list has a non-empty value.
16558	// This may be used to include null fields in Patch requests.
16559	NullFields []string `json:"-"`
16560}
16561
16562func (s *Table) MarshalJSON() ([]byte, error) {
16563	type NoMethod Table
16564	raw := NoMethod(*s)
16565	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16566}
16567
16568type TestOrder struct {
16569	// DeliveryDetails: Overrides the predefined delivery details if
16570	// provided.
16571	DeliveryDetails *TestOrderDeliveryDetails `json:"deliveryDetails,omitempty"`
16572
16573	// EnableOrderinvoices: Whether the orderinvoices service should support
16574	// this order.
16575	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
16576
16577	// Kind: Identifies what kind of resource this is. Value: the fixed
16578	// string "content#testOrder"
16579	Kind string `json:"kind,omitempty"`
16580
16581	// LineItems: Required. Line items that are ordered. At least one line
16582	// item must be provided.
16583	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
16584
16585	// NotificationMode: Restricted. Do not use.
16586	NotificationMode string `json:"notificationMode,omitempty"`
16587
16588	// PickupDetails: Overrides the predefined pickup details if provided.
16589	PickupDetails *TestOrderPickupDetails `json:"pickupDetails,omitempty"`
16590
16591	// PredefinedBillingAddress: Required. The billing address. Acceptable
16592	// values are: - "dwight" - "jim" - "pam"
16593	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
16594
16595	// PredefinedDeliveryAddress: Required. Identifier of one of the
16596	// predefined delivery addresses for the delivery. Acceptable values
16597	// are: - "dwight" - "jim" - "pam"
16598	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
16599
16600	// PredefinedEmail: Required. Email address of the customer. Acceptable
16601	// values are: - "pog.dwight.schrute@gmail.com" -
16602	// "pog.jim.halpert@gmail.com" - "penpog.pam.beesly@gmail.comding"
16603	PredefinedEmail string `json:"predefinedEmail,omitempty"`
16604
16605	// PredefinedPickupDetails: Identifier of one of the predefined pickup
16606	// details. Required for orders containing line items with shipping type
16607	// `pickup`. Acceptable values are: - "dwight" - "jim" - "pam"
16608	PredefinedPickupDetails string `json:"predefinedPickupDetails,omitempty"`
16609
16610	// Promotions: Promotions associated with the order.
16611	Promotions []*OrderPromotion `json:"promotions,omitempty"`
16612
16613	// ShippingCost: Required. The price of shipping for all items. Shipping
16614	// tax is automatically calculated for orders where marketplace
16615	// facilitator tax laws are applicable. Otherwise, tax settings from
16616	// Merchant Center are applied. Note that shipping is not taxed in
16617	// certain states.
16618	ShippingCost *Price `json:"shippingCost,omitempty"`
16619
16620	// ShippingOption: Required. The requested shipping option. Acceptable
16621	// values are: - "economy" - "expedited" - "oneDay" - "sameDay"
16622	// - "standard" - "twoDay"
16623	ShippingOption string `json:"shippingOption,omitempty"`
16624
16625	// ForceSendFields is a list of field names (e.g. "DeliveryDetails") to
16626	// unconditionally include in API requests. By default, fields with
16627	// empty or default values are omitted from API requests. However, any
16628	// non-pointer, non-interface field appearing in ForceSendFields will be
16629	// sent to the server regardless of whether the field is empty or not.
16630	// This may be used to include empty fields in Patch requests.
16631	ForceSendFields []string `json:"-"`
16632
16633	// NullFields is a list of field names (e.g. "DeliveryDetails") to
16634	// include in API requests with the JSON null value. By default, fields
16635	// with empty values are omitted from API requests. However, any field
16636	// with an empty value appearing in NullFields will be sent to the
16637	// server as null. It is an error if a field in this list has a
16638	// non-empty value. This may be used to include null fields in Patch
16639	// requests.
16640	NullFields []string `json:"-"`
16641}
16642
16643func (s *TestOrder) MarshalJSON() ([]byte, error) {
16644	type NoMethod TestOrder
16645	raw := NoMethod(*s)
16646	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16647}
16648
16649type TestOrderAddress struct {
16650	// Country: CLDR country code (e.g. "US").
16651	Country string `json:"country,omitempty"`
16652
16653	// FullAddress: Strings representing the lines of the printed label for
16654	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
16655	// Mountain View, CA, 94043 United States
16656	FullAddress []string `json:"fullAddress,omitempty"`
16657
16658	// IsPostOfficeBox: Whether the address is a post office box.
16659	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
16660
16661	// Locality: City, town or commune. May also include dependent
16662	// localities or sublocalities (e.g. neighborhoods or suburbs).
16663	Locality string `json:"locality,omitempty"`
16664
16665	// PostalCode: Postal Code or ZIP (e.g. "94043").
16666	PostalCode string `json:"postalCode,omitempty"`
16667
16668	// RecipientName: Name of the recipient.
16669	RecipientName string `json:"recipientName,omitempty"`
16670
16671	// Region: Top-level administrative subdivision of the country. For
16672	// example, a state like California ("CA") or a province like Quebec
16673	// ("QC").
16674	Region string `json:"region,omitempty"`
16675
16676	// StreetAddress: Street-level part of the address.
16677	StreetAddress []string `json:"streetAddress,omitempty"`
16678
16679	// ForceSendFields is a list of field names (e.g. "Country") to
16680	// unconditionally include in API requests. By default, fields with
16681	// empty or default values are omitted from API requests. However, any
16682	// non-pointer, non-interface field appearing in ForceSendFields will be
16683	// sent to the server regardless of whether the field is empty or not.
16684	// This may be used to include empty fields in Patch requests.
16685	ForceSendFields []string `json:"-"`
16686
16687	// NullFields is a list of field names (e.g. "Country") to include in
16688	// API requests with the JSON null value. By default, fields with empty
16689	// values are omitted from API requests. However, any field with an
16690	// empty value appearing in NullFields will be sent to the server as
16691	// null. It is an error if a field in this list has a non-empty value.
16692	// This may be used to include null fields in Patch requests.
16693	NullFields []string `json:"-"`
16694}
16695
16696func (s *TestOrderAddress) MarshalJSON() ([]byte, error) {
16697	type NoMethod TestOrderAddress
16698	raw := NoMethod(*s)
16699	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16700}
16701
16702type TestOrderDeliveryDetails struct {
16703	// Address: The delivery address
16704	Address *TestOrderAddress `json:"address,omitempty"`
16705
16706	// IsScheduledDelivery: Whether the order is scheduled delivery order.
16707	IsScheduledDelivery bool `json:"isScheduledDelivery,omitempty"`
16708
16709	// PhoneNumber: The phone number of the person receiving the delivery.
16710	PhoneNumber string `json:"phoneNumber,omitempty"`
16711
16712	// ForceSendFields is a list of field names (e.g. "Address") to
16713	// unconditionally include in API requests. By default, fields with
16714	// empty or default values are omitted from API requests. However, any
16715	// non-pointer, non-interface field appearing in ForceSendFields will be
16716	// sent to the server regardless of whether the field is empty or not.
16717	// This may be used to include empty fields in Patch requests.
16718	ForceSendFields []string `json:"-"`
16719
16720	// NullFields is a list of field names (e.g. "Address") to include in
16721	// API requests with the JSON null value. By default, fields with empty
16722	// values are omitted from API requests. However, any field with an
16723	// empty value appearing in NullFields will be sent to the server as
16724	// null. It is an error if a field in this list has a non-empty value.
16725	// This may be used to include null fields in Patch requests.
16726	NullFields []string `json:"-"`
16727}
16728
16729func (s *TestOrderDeliveryDetails) MarshalJSON() ([]byte, error) {
16730	type NoMethod TestOrderDeliveryDetails
16731	raw := NoMethod(*s)
16732	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16733}
16734
16735type TestOrderLineItem struct {
16736	// Product: Required. Product data from the time of the order placement.
16737	Product *TestOrderLineItemProduct `json:"product,omitempty"`
16738
16739	// QuantityOrdered: Required. Number of items ordered.
16740	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
16741
16742	// ReturnInfo: Required. Details of the return policy for the line item.
16743	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
16744
16745	// ShippingDetails: Required. Details of the requested shipping for the
16746	// line item.
16747	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
16748
16749	// ForceSendFields is a list of field names (e.g. "Product") to
16750	// unconditionally include in API requests. By default, fields with
16751	// empty or default values are omitted from API requests. However, any
16752	// non-pointer, non-interface field appearing in ForceSendFields will be
16753	// sent to the server regardless of whether the field is empty or not.
16754	// This may be used to include empty fields in Patch requests.
16755	ForceSendFields []string `json:"-"`
16756
16757	// NullFields is a list of field names (e.g. "Product") to include in
16758	// API requests with the JSON null value. By default, fields with empty
16759	// values are omitted from API requests. However, any field with an
16760	// empty value appearing in NullFields will be sent to the server as
16761	// null. It is an error if a field in this list has a non-empty value.
16762	// This may be used to include null fields in Patch requests.
16763	NullFields []string `json:"-"`
16764}
16765
16766func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
16767	type NoMethod TestOrderLineItem
16768	raw := NoMethod(*s)
16769	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16770}
16771
16772type TestOrderLineItemProduct struct {
16773	// Brand: Required. Brand of the item.
16774	Brand string `json:"brand,omitempty"`
16775
16776	// Condition: Required. Condition or state of the item. Acceptable
16777	// values are: - "new"
16778	Condition string `json:"condition,omitempty"`
16779
16780	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
16781	// the item. Acceptable values are: - "en" - "fr"
16782	ContentLanguage string `json:"contentLanguage,omitempty"`
16783
16784	// Fees: Fees for the item. Optional.
16785	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
16786
16787	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
16788	Gtin string `json:"gtin,omitempty"`
16789
16790	// ImageLink: Required. URL of an image of the item.
16791	ImageLink string `json:"imageLink,omitempty"`
16792
16793	// ItemGroupId: Shared identifier for all variants of the same product.
16794	// Optional.
16795	ItemGroupId string `json:"itemGroupId,omitempty"`
16796
16797	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
16798	Mpn string `json:"mpn,omitempty"`
16799
16800	// OfferId: Required. An identifier of the item.
16801	OfferId string `json:"offerId,omitempty"`
16802
16803	// Price: Required. The price for the product. Tax is automatically
16804	// calculated for orders where marketplace facilitator tax laws are
16805	// applicable. Otherwise, tax settings from Merchant Center are applied.
16806	Price *Price `json:"price,omitempty"`
16807
16808	// TargetCountry: Required. The CLDR territory // code of the target
16809	// country of the product.
16810	TargetCountry string `json:"targetCountry,omitempty"`
16811
16812	// Title: Required. The title of the product.
16813	Title string `json:"title,omitempty"`
16814
16815	// VariantAttributes: Variant attributes for the item. Optional.
16816	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
16817
16818	// ForceSendFields is a list of field names (e.g. "Brand") to
16819	// unconditionally include in API requests. By default, fields with
16820	// empty or default values are omitted from API requests. However, any
16821	// non-pointer, non-interface field appearing in ForceSendFields will be
16822	// sent to the server regardless of whether the field is empty or not.
16823	// This may be used to include empty fields in Patch requests.
16824	ForceSendFields []string `json:"-"`
16825
16826	// NullFields is a list of field names (e.g. "Brand") to include in API
16827	// requests with the JSON null value. By default, fields with empty
16828	// values are omitted from API requests. However, any field with an
16829	// empty value appearing in NullFields will be sent to the server as
16830	// null. It is an error if a field in this list has a non-empty value.
16831	// This may be used to include null fields in Patch requests.
16832	NullFields []string `json:"-"`
16833}
16834
16835func (s *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
16836	type NoMethod TestOrderLineItemProduct
16837	raw := NoMethod(*s)
16838	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16839}
16840
16841type TestOrderPickupDetails struct {
16842	// LocationCode: Required. Code of the location defined by provider or
16843	// merchant.
16844	LocationCode string `json:"locationCode,omitempty"`
16845
16846	// PickupLocationAddress: Required. Pickup location address.
16847	PickupLocationAddress *TestOrderAddress `json:"pickupLocationAddress,omitempty"`
16848
16849	// PickupLocationType: Pickup location type. Acceptable values are: -
16850	// "locker" - "store" - "curbside"
16851	PickupLocationType string `json:"pickupLocationType,omitempty"`
16852
16853	// PickupPersons: Required. all pickup persons set by users.
16854	PickupPersons []*TestOrderPickupDetailsPickupPerson `json:"pickupPersons,omitempty"`
16855
16856	// ForceSendFields is a list of field names (e.g. "LocationCode") to
16857	// unconditionally include in API requests. By default, fields with
16858	// empty or default values are omitted from API requests. However, any
16859	// non-pointer, non-interface field appearing in ForceSendFields will be
16860	// sent to the server regardless of whether the field is empty or not.
16861	// This may be used to include empty fields in Patch requests.
16862	ForceSendFields []string `json:"-"`
16863
16864	// NullFields is a list of field names (e.g. "LocationCode") to include
16865	// in API requests with the JSON null value. By default, fields with
16866	// empty values are omitted from API requests. However, any field with
16867	// an empty value appearing in NullFields will be sent to the server as
16868	// null. It is an error if a field in this list has a non-empty value.
16869	// This may be used to include null fields in Patch requests.
16870	NullFields []string `json:"-"`
16871}
16872
16873func (s *TestOrderPickupDetails) MarshalJSON() ([]byte, error) {
16874	type NoMethod TestOrderPickupDetails
16875	raw := NoMethod(*s)
16876	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16877}
16878
16879type TestOrderPickupDetailsPickupPerson struct {
16880	// Name: Required. Full name of the pickup person.
16881	Name string `json:"name,omitempty"`
16882
16883	// PhoneNumber: Required. The phone number of the person picking up the
16884	// items.
16885	PhoneNumber string `json:"phoneNumber,omitempty"`
16886
16887	// ForceSendFields is a list of field names (e.g. "Name") to
16888	// unconditionally include in API requests. By default, fields with
16889	// empty or default values are omitted from API requests. However, any
16890	// non-pointer, non-interface field appearing in ForceSendFields will be
16891	// sent to the server regardless of whether the field is empty or not.
16892	// This may be used to include empty fields in Patch requests.
16893	ForceSendFields []string `json:"-"`
16894
16895	// NullFields is a list of field names (e.g. "Name") to include in API
16896	// requests with the JSON null value. By default, fields with empty
16897	// values are omitted from API requests. However, any field with an
16898	// empty value appearing in NullFields will be sent to the server as
16899	// null. It is an error if a field in this list has a non-empty value.
16900	// This may be used to include null fields in Patch requests.
16901	NullFields []string `json:"-"`
16902}
16903
16904func (s *TestOrderPickupDetailsPickupPerson) MarshalJSON() ([]byte, error) {
16905	type NoMethod TestOrderPickupDetailsPickupPerson
16906	raw := NoMethod(*s)
16907	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16908}
16909
16910// TimeZone: Represents a time zone from the IANA Time Zone Database
16911// (https://www.iana.org/time-zones).
16912type TimeZone struct {
16913	// Id: IANA Time Zone Database time zone, e.g. "America/New_York".
16914	Id string `json:"id,omitempty"`
16915
16916	// Version: Optional. IANA Time Zone Database version number, e.g.
16917	// "2019a".
16918	Version string `json:"version,omitempty"`
16919
16920	// ForceSendFields is a list of field names (e.g. "Id") to
16921	// unconditionally include in API requests. By default, fields with
16922	// empty or default values are omitted from API requests. However, any
16923	// non-pointer, non-interface field appearing in ForceSendFields will be
16924	// sent to the server regardless of whether the field is empty or not.
16925	// This may be used to include empty fields in Patch requests.
16926	ForceSendFields []string `json:"-"`
16927
16928	// NullFields is a list of field names (e.g. "Id") to include in API
16929	// requests with the JSON null value. By default, fields with empty
16930	// values are omitted from API requests. However, any field with an
16931	// empty value appearing in NullFields will be sent to the server as
16932	// null. It is an error if a field in this list has a non-empty value.
16933	// This may be used to include null fields in Patch requests.
16934	NullFields []string `json:"-"`
16935}
16936
16937func (s *TimeZone) MarshalJSON() ([]byte, error) {
16938	type NoMethod TimeZone
16939	raw := NoMethod(*s)
16940	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16941}
16942
16943type TransitTable struct {
16944	// PostalCodeGroupNames: A list of postal group names. The last value
16945	// can be "all other locations". Example: `["zone 1", "zone 2", "all
16946	// other locations"]`. The referred postal code groups must match the
16947	// delivery country of the service.
16948	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
16949
16950	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
16951
16952	// TransitTimeLabels: A list of transit time labels. The last value can
16953	// be "all other labels". Example: `["food", "electronics", "all other
16954	// labels"]`.
16955	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
16956
16957	// ForceSendFields is a list of field names (e.g.
16958	// "PostalCodeGroupNames") to unconditionally include in API requests.
16959	// By default, fields with empty or default values are omitted from API
16960	// requests. However, any non-pointer, non-interface field appearing in
16961	// ForceSendFields will be sent to the server regardless of whether the
16962	// field is empty or not. This may be used to include empty fields in
16963	// Patch requests.
16964	ForceSendFields []string `json:"-"`
16965
16966	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
16967	// include in API requests with the JSON null value. By default, fields
16968	// with empty values are omitted from API requests. However, any field
16969	// with an empty value appearing in NullFields will be sent to the
16970	// server as null. It is an error if a field in this list has a
16971	// non-empty value. This may be used to include null fields in Patch
16972	// requests.
16973	NullFields []string `json:"-"`
16974}
16975
16976func (s *TransitTable) MarshalJSON() ([]byte, error) {
16977	type NoMethod TransitTable
16978	raw := NoMethod(*s)
16979	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16980}
16981
16982type TransitTableTransitTimeRow struct {
16983	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
16984
16985	// ForceSendFields is a list of field names (e.g. "Values") to
16986	// unconditionally include in API requests. By default, fields with
16987	// empty or default values are omitted from API requests. However, any
16988	// non-pointer, non-interface field appearing in ForceSendFields will be
16989	// sent to the server regardless of whether the field is empty or not.
16990	// This may be used to include empty fields in Patch requests.
16991	ForceSendFields []string `json:"-"`
16992
16993	// NullFields is a list of field names (e.g. "Values") to include in API
16994	// requests with the JSON null value. By default, fields with empty
16995	// values are omitted from API requests. However, any field with an
16996	// empty value appearing in NullFields will be sent to the server as
16997	// null. It is an error if a field in this list has a non-empty value.
16998	// This may be used to include null fields in Patch requests.
16999	NullFields []string `json:"-"`
17000}
17001
17002func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
17003	type NoMethod TransitTableTransitTimeRow
17004	raw := NoMethod(*s)
17005	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17006}
17007
17008type TransitTableTransitTimeRowTransitTimeValue struct {
17009	// MaxTransitTimeInDays: Must be greater than or equal to
17010	// `minTransitTimeInDays`.
17011	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
17012
17013	// MinTransitTimeInDays: Transit time range (min-max) in business days.
17014	// 0 means same day delivery, 1 means next day delivery.
17015	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
17016
17017	// ForceSendFields is a list of field names (e.g.
17018	// "MaxTransitTimeInDays") to unconditionally include in API requests.
17019	// By default, fields with empty or default values are omitted from API
17020	// requests. However, any non-pointer, non-interface field appearing in
17021	// ForceSendFields will be sent to the server regardless of whether the
17022	// field is empty or not. This may be used to include empty fields in
17023	// Patch requests.
17024	ForceSendFields []string `json:"-"`
17025
17026	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
17027	// include in API requests with the JSON null value. By default, fields
17028	// with empty values are omitted from API requests. However, any field
17029	// with an empty value appearing in NullFields will be sent to the
17030	// server as null. It is an error if a field in this list has a
17031	// non-empty value. This may be used to include null fields in Patch
17032	// requests.
17033	NullFields []string `json:"-"`
17034}
17035
17036func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
17037	type NoMethod TransitTableTransitTimeRowTransitTimeValue
17038	raw := NoMethod(*s)
17039	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17040}
17041
17042type UnitInvoice struct {
17043	// AdditionalCharges: Additional charges for a unit, e.g. shipping
17044	// costs.
17045	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
17046
17047	// UnitPrice: [required] Pre-tax or post-tax price of one unit depending
17048	// on the locality of the order. *Note:* Invoicing works on a per unit
17049	// basis. The `unitPrice` is the price of a single unit, and will be
17050	// multiplied by the number of entries in `shipmentUnitId`.
17051	UnitPrice *Price `json:"unitPrice,omitempty"`
17052
17053	// UnitPriceTaxes: Tax amounts to apply to the unit price.
17054	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
17055
17056	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
17057	// to unconditionally include in API requests. By default, fields with
17058	// empty or default values are omitted from API requests. However, any
17059	// non-pointer, non-interface field appearing in ForceSendFields will be
17060	// sent to the server regardless of whether the field is empty or not.
17061	// This may be used to include empty fields in Patch requests.
17062	ForceSendFields []string `json:"-"`
17063
17064	// NullFields is a list of field names (e.g. "AdditionalCharges") to
17065	// include in API requests with the JSON null value. By default, fields
17066	// with empty values are omitted from API requests. However, any field
17067	// with an empty value appearing in NullFields will be sent to the
17068	// server as null. It is an error if a field in this list has a
17069	// non-empty value. This may be used to include null fields in Patch
17070	// requests.
17071	NullFields []string `json:"-"`
17072}
17073
17074func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
17075	type NoMethod UnitInvoice
17076	raw := NoMethod(*s)
17077	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17078}
17079
17080type UnitInvoiceAdditionalCharge struct {
17081	// AdditionalChargeAmount: [required] Amount of the additional charge
17082	// per unit. *Note:* Invoicing works on a per unit bases. The
17083	// `additionalChargeAmount` is the amount charged per unit, and will be
17084	// multiplied by the number of entries in `shipmentUnitID`.
17085	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
17086
17087	// Type: [required] Type of the additional charge. Acceptable values
17088	// are: - "shipping"
17089	Type string `json:"type,omitempty"`
17090
17091	// ForceSendFields is a list of field names (e.g.
17092	// "AdditionalChargeAmount") to unconditionally include in API requests.
17093	// By default, fields with empty or default values are omitted from API
17094	// requests. However, any non-pointer, non-interface field appearing in
17095	// ForceSendFields will be sent to the server regardless of whether the
17096	// field is empty or not. This may be used to include empty fields in
17097	// Patch requests.
17098	ForceSendFields []string `json:"-"`
17099
17100	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
17101	// to include in API requests with the JSON null value. By default,
17102	// fields with empty values are omitted from API requests. However, any
17103	// field with an empty value appearing in NullFields will be sent to the
17104	// server as null. It is an error if a field in this list has a
17105	// non-empty value. This may be used to include null fields in Patch
17106	// requests.
17107	NullFields []string `json:"-"`
17108}
17109
17110func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
17111	type NoMethod UnitInvoiceAdditionalCharge
17112	raw := NoMethod(*s)
17113	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17114}
17115
17116type UnitInvoiceTaxLine struct {
17117	// TaxAmount: [required] Tax amount for the tax type.
17118	TaxAmount *Price `json:"taxAmount,omitempty"`
17119
17120	// TaxName: Optional name of the tax type. This should only be provided
17121	// if `taxType` is `otherFeeTax`.
17122	TaxName string `json:"taxName,omitempty"`
17123
17124	// TaxType: [required] Type of the tax. Acceptable values are: -
17125	// "otherFee" - "otherFeeTax" - "sales"
17126	TaxType string `json:"taxType,omitempty"`
17127
17128	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
17129	// unconditionally include in API requests. By default, fields with
17130	// empty or default values are omitted from API requests. However, any
17131	// non-pointer, non-interface field appearing in ForceSendFields will be
17132	// sent to the server regardless of whether the field is empty or not.
17133	// This may be used to include empty fields in Patch requests.
17134	ForceSendFields []string `json:"-"`
17135
17136	// NullFields is a list of field names (e.g. "TaxAmount") to include in
17137	// API requests with the JSON null value. By default, fields with empty
17138	// values are omitted from API requests. However, any field with an
17139	// empty value appearing in NullFields will be sent to the server as
17140	// null. It is an error if a field in this list has a non-empty value.
17141	// This may be used to include null fields in Patch requests.
17142	NullFields []string `json:"-"`
17143}
17144
17145func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
17146	type NoMethod UnitInvoiceTaxLine
17147	raw := NoMethod(*s)
17148	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17149}
17150
17151// Value: The single value of a rate group or the value of a rate group
17152// table's cell. Exactly one of `noShipping`, `flatRate`,
17153// `pricePercentage`, `carrierRateName`, `subtableName` must be set.
17154type Value struct {
17155	// CarrierRateName: The name of a carrier rate referring to a carrier
17156	// rate defined in the same rate group. Can only be set if all other
17157	// fields are not set.
17158	CarrierRateName string `json:"carrierRateName,omitempty"`
17159
17160	// FlatRate: A flat rate. Can only be set if all other fields are not
17161	// set.
17162	FlatRate *Price `json:"flatRate,omitempty"`
17163
17164	// NoShipping: If true, then the product can't ship. Must be true when
17165	// set, can only be set if all other fields are not set.
17166	NoShipping bool `json:"noShipping,omitempty"`
17167
17168	// PricePercentage: A percentage of the price represented as a number in
17169	// decimal notation (e.g., "5.4"). Can only be set if all other fields
17170	// are not set.
17171	PricePercentage string `json:"pricePercentage,omitempty"`
17172
17173	// SubtableName: The name of a subtable. Can only be set in table cells
17174	// (i.e., not for single values), and only if all other fields are not
17175	// set.
17176	SubtableName string `json:"subtableName,omitempty"`
17177
17178	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
17179	// unconditionally include in API requests. By default, fields with
17180	// empty or default values are omitted from API requests. However, any
17181	// non-pointer, non-interface field appearing in ForceSendFields will be
17182	// sent to the server regardless of whether the field is empty or not.
17183	// This may be used to include empty fields in Patch requests.
17184	ForceSendFields []string `json:"-"`
17185
17186	// NullFields is a list of field names (e.g. "CarrierRateName") to
17187	// include in API requests with the JSON null value. By default, fields
17188	// with empty values are omitted from API requests. However, any field
17189	// with an empty value appearing in NullFields will be sent to the
17190	// server as null. It is an error if a field in this list has a
17191	// non-empty value. This may be used to include null fields in Patch
17192	// requests.
17193	NullFields []string `json:"-"`
17194}
17195
17196func (s *Value) MarshalJSON() ([]byte, error) {
17197	type NoMethod Value
17198	raw := NoMethod(*s)
17199	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17200}
17201
17202// VerifyPhoneNumberRequest: Request message for the VerifyPhoneNumber
17203// method.
17204type VerifyPhoneNumberRequest struct {
17205	// PhoneVerificationMethod: Verification method used to receive
17206	// verification code.
17207	//
17208	// Possible values:
17209	//   "PHONE_VERIFICATION_METHOD_UNSPECIFIED" - Unknown method.
17210	//   "SMS" - Receive verification code by SMS.
17211	//   "PHONE_CALL" - Receive verification code by phone call.
17212	PhoneVerificationMethod string `json:"phoneVerificationMethod,omitempty"`
17213
17214	// VerificationCode: The verification code that was sent to the phone
17215	// number for validation.
17216	VerificationCode string `json:"verificationCode,omitempty"`
17217
17218	// VerificationId: The verification ID returned by
17219	// `requestphoneverification`.
17220	VerificationId string `json:"verificationId,omitempty"`
17221
17222	// ForceSendFields is a list of field names (e.g.
17223	// "PhoneVerificationMethod") to unconditionally include in API
17224	// requests. By default, fields with empty or default values are omitted
17225	// from API requests. However, any non-pointer, non-interface field
17226	// appearing in ForceSendFields will be sent to the server regardless of
17227	// whether the field is empty or not. This may be used to include empty
17228	// fields in Patch requests.
17229	ForceSendFields []string `json:"-"`
17230
17231	// NullFields is a list of field names (e.g. "PhoneVerificationMethod")
17232	// to include in API requests with the JSON null value. By default,
17233	// fields with empty values are omitted from API requests. However, any
17234	// field with an empty value appearing in NullFields will be sent to the
17235	// server as null. It is an error if a field in this list has a
17236	// non-empty value. This may be used to include null fields in Patch
17237	// requests.
17238	NullFields []string `json:"-"`
17239}
17240
17241func (s *VerifyPhoneNumberRequest) MarshalJSON() ([]byte, error) {
17242	type NoMethod VerifyPhoneNumberRequest
17243	raw := NoMethod(*s)
17244	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17245}
17246
17247// VerifyPhoneNumberResponse: Response message for the VerifyPhoneNumber
17248// method.
17249type VerifyPhoneNumberResponse struct {
17250	// VerifiedPhoneNumber: Verified phone number if verification is
17251	// successful. This phone number can only be replaced by another
17252	// verified phone number.
17253	VerifiedPhoneNumber string `json:"verifiedPhoneNumber,omitempty"`
17254
17255	// ServerResponse contains the HTTP response code and headers from the
17256	// server.
17257	googleapi.ServerResponse `json:"-"`
17258
17259	// ForceSendFields is a list of field names (e.g. "VerifiedPhoneNumber")
17260	// to unconditionally include in API requests. By default, fields with
17261	// empty or default values are omitted from API requests. However, any
17262	// non-pointer, non-interface field appearing in ForceSendFields will be
17263	// sent to the server regardless of whether the field is empty or not.
17264	// This may be used to include empty fields in Patch requests.
17265	ForceSendFields []string `json:"-"`
17266
17267	// NullFields is a list of field names (e.g. "VerifiedPhoneNumber") to
17268	// include in API requests with the JSON null value. By default, fields
17269	// with empty values are omitted from API requests. However, any field
17270	// with an empty value appearing in NullFields will be sent to the
17271	// server as null. It is an error if a field in this list has a
17272	// non-empty value. This may be used to include null fields in Patch
17273	// requests.
17274	NullFields []string `json:"-"`
17275}
17276
17277func (s *VerifyPhoneNumberResponse) MarshalJSON() ([]byte, error) {
17278	type NoMethod VerifyPhoneNumberResponse
17279	raw := NoMethod(*s)
17280	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17281}
17282
17283type WarehouseBasedDeliveryTime struct {
17284	// Carrier: Required. Carrier, such as "UPS" or "Fedex". The list of
17285	// supported carriers can be retrieved via the `listSupportedCarriers`
17286	// method.
17287	Carrier string `json:"carrier,omitempty"`
17288
17289	// CarrierService: Required. Carrier service, such as "ground" or "2
17290	// days". The list of supported services for a carrier can be retrieved
17291	// via the `listSupportedCarriers` method. The name of the service must
17292	// be in the eddSupportedServices list.
17293	CarrierService string `json:"carrierService,omitempty"`
17294
17295	// OriginAdministrativeArea: Required. Shipping origin's state.
17296	OriginAdministrativeArea string `json:"originAdministrativeArea,omitempty"`
17297
17298	// OriginCity: Required. Shipping origin's city.
17299	OriginCity string `json:"originCity,omitempty"`
17300
17301	// OriginCountry: Required. Shipping origin's country represented as a
17302	// CLDR territory code
17303	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml).
17304	OriginCountry string `json:"originCountry,omitempty"`
17305
17306	// OriginPostalCode: Required. Shipping origin.
17307	OriginPostalCode string `json:"originPostalCode,omitempty"`
17308
17309	// OriginStreetAddress: Shipping origin's street address.
17310	OriginStreetAddress string `json:"originStreetAddress,omitempty"`
17311
17312	// ForceSendFields is a list of field names (e.g. "Carrier") to
17313	// unconditionally include in API requests. By default, fields with
17314	// empty or default values are omitted from API requests. However, any
17315	// non-pointer, non-interface field appearing in ForceSendFields will be
17316	// sent to the server regardless of whether the field is empty or not.
17317	// This may be used to include empty fields in Patch requests.
17318	ForceSendFields []string `json:"-"`
17319
17320	// NullFields is a list of field names (e.g. "Carrier") to include in
17321	// API requests with the JSON null value. By default, fields with empty
17322	// values are omitted from API requests. However, any field with an
17323	// empty value appearing in NullFields will be sent to the server as
17324	// null. It is an error if a field in this list has a non-empty value.
17325	// This may be used to include null fields in Patch requests.
17326	NullFields []string `json:"-"`
17327}
17328
17329func (s *WarehouseBasedDeliveryTime) MarshalJSON() ([]byte, error) {
17330	type NoMethod WarehouseBasedDeliveryTime
17331	raw := NoMethod(*s)
17332	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17333}
17334
17335type Weight struct {
17336	// Unit: Required. The weight unit. Acceptable values are: - "kg" -
17337	// "lb"
17338	Unit string `json:"unit,omitempty"`
17339
17340	// Value: Required. The weight represented as a number. The weight can
17341	// have a maximum precision of four decimal places.
17342	Value string `json:"value,omitempty"`
17343
17344	// ForceSendFields is a list of field names (e.g. "Unit") to
17345	// unconditionally include in API requests. By default, fields with
17346	// empty or default values are omitted from API requests. However, any
17347	// non-pointer, non-interface field appearing in ForceSendFields will be
17348	// sent to the server regardless of whether the field is empty or not.
17349	// This may be used to include empty fields in Patch requests.
17350	ForceSendFields []string `json:"-"`
17351
17352	// NullFields is a list of field names (e.g. "Unit") to include in API
17353	// requests with the JSON null value. By default, fields with empty
17354	// values are omitted from API requests. However, any field with an
17355	// empty value appearing in NullFields will be sent to the server as
17356	// null. It is an error if a field in this list has a non-empty value.
17357	// This may be used to include null fields in Patch requests.
17358	NullFields []string `json:"-"`
17359}
17360
17361func (s *Weight) MarshalJSON() ([]byte, error) {
17362	type NoMethod Weight
17363	raw := NoMethod(*s)
17364	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17365}
17366
17367// method id "content.accounts.authinfo":
17368
17369type AccountsAuthinfoCall struct {
17370	s            *APIService
17371	urlParams_   gensupport.URLParams
17372	ifNoneMatch_ string
17373	ctx_         context.Context
17374	header_      http.Header
17375}
17376
17377// Authinfo: Returns information about the authenticated user.
17378func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
17379	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17380	return c
17381}
17382
17383// Fields allows partial responses to be retrieved. See
17384// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17385// for more information.
17386func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
17387	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17388	return c
17389}
17390
17391// IfNoneMatch sets the optional parameter which makes the operation
17392// fail if the object's ETag matches the given value. This is useful for
17393// getting updates only after the object has changed since the last
17394// request. Use googleapi.IsNotModified to check whether the response
17395// error from Do is the result of In-None-Match.
17396func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
17397	c.ifNoneMatch_ = entityTag
17398	return c
17399}
17400
17401// Context sets the context to be used in this call's Do method. Any
17402// pending HTTP request will be aborted if the provided context is
17403// canceled.
17404func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
17405	c.ctx_ = ctx
17406	return c
17407}
17408
17409// Header returns an http.Header that can be modified by the caller to
17410// add HTTP headers to the request.
17411func (c *AccountsAuthinfoCall) Header() http.Header {
17412	if c.header_ == nil {
17413		c.header_ = make(http.Header)
17414	}
17415	return c.header_
17416}
17417
17418func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
17419	reqHeaders := make(http.Header)
17420	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17421	for k, v := range c.header_ {
17422		reqHeaders[k] = v
17423	}
17424	reqHeaders.Set("User-Agent", c.s.userAgent())
17425	if c.ifNoneMatch_ != "" {
17426		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17427	}
17428	var body io.Reader = nil
17429	c.urlParams_.Set("alt", alt)
17430	c.urlParams_.Set("prettyPrint", "false")
17431	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/authinfo")
17432	urls += "?" + c.urlParams_.Encode()
17433	req, err := http.NewRequest("GET", urls, body)
17434	if err != nil {
17435		return nil, err
17436	}
17437	req.Header = reqHeaders
17438	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17439}
17440
17441// Do executes the "content.accounts.authinfo" call.
17442// Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
17443// Any non-2xx status code is an error. Response headers are in either
17444// *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
17445// returned at all) in error.(*googleapi.Error).Header. Use
17446// googleapi.IsNotModified to check whether the returned error was
17447// because http.StatusNotModified was returned.
17448func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
17449	gensupport.SetOptions(c.urlParams_, opts...)
17450	res, err := c.doRequest("json")
17451	if res != nil && res.StatusCode == http.StatusNotModified {
17452		if res.Body != nil {
17453			res.Body.Close()
17454		}
17455		return nil, &googleapi.Error{
17456			Code:   res.StatusCode,
17457			Header: res.Header,
17458		}
17459	}
17460	if err != nil {
17461		return nil, err
17462	}
17463	defer googleapi.CloseBody(res)
17464	if err := googleapi.CheckResponse(res); err != nil {
17465		return nil, err
17466	}
17467	ret := &AccountsAuthInfoResponse{
17468		ServerResponse: googleapi.ServerResponse{
17469			Header:         res.Header,
17470			HTTPStatusCode: res.StatusCode,
17471		},
17472	}
17473	target := &ret
17474	if err := gensupport.DecodeResponse(target, res); err != nil {
17475		return nil, err
17476	}
17477	return ret, nil
17478	// {
17479	//   "description": "Returns information about the authenticated user.",
17480	//   "flatPath": "accounts/authinfo",
17481	//   "httpMethod": "GET",
17482	//   "id": "content.accounts.authinfo",
17483	//   "parameterOrder": [],
17484	//   "parameters": {},
17485	//   "path": "accounts/authinfo",
17486	//   "response": {
17487	//     "$ref": "AccountsAuthInfoResponse"
17488	//   },
17489	//   "scopes": [
17490	//     "https://www.googleapis.com/auth/content"
17491	//   ]
17492	// }
17493
17494}
17495
17496// method id "content.accounts.claimwebsite":
17497
17498type AccountsClaimwebsiteCall struct {
17499	s          *APIService
17500	merchantId uint64
17501	accountId  uint64
17502	urlParams_ gensupport.URLParams
17503	ctx_       context.Context
17504	header_    http.Header
17505}
17506
17507// Claimwebsite: Claims the website of a Merchant Center sub-account.
17508//
17509// - accountId: The ID of the account whose website is claimed.
17510// - merchantId: The ID of the managing account. If this parameter is
17511//   not the same as accountId, then this account must be a multi-client
17512//   account and `accountId` must be the ID of a sub-account of this
17513//   account.
17514func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
17515	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17516	c.merchantId = merchantId
17517	c.accountId = accountId
17518	return c
17519}
17520
17521// Overwrite sets the optional parameter "overwrite": Only available to
17522// selected merchants. When set to `True`, this flag removes any
17523// existing claim on the requested website by another account and
17524// replaces it with a claim from this account.
17525func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
17526	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
17527	return c
17528}
17529
17530// Fields allows partial responses to be retrieved. See
17531// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17532// for more information.
17533func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
17534	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17535	return c
17536}
17537
17538// Context sets the context to be used in this call's Do method. Any
17539// pending HTTP request will be aborted if the provided context is
17540// canceled.
17541func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
17542	c.ctx_ = ctx
17543	return c
17544}
17545
17546// Header returns an http.Header that can be modified by the caller to
17547// add HTTP headers to the request.
17548func (c *AccountsClaimwebsiteCall) Header() http.Header {
17549	if c.header_ == nil {
17550		c.header_ = make(http.Header)
17551	}
17552	return c.header_
17553}
17554
17555func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
17556	reqHeaders := make(http.Header)
17557	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17558	for k, v := range c.header_ {
17559		reqHeaders[k] = v
17560	}
17561	reqHeaders.Set("User-Agent", c.s.userAgent())
17562	var body io.Reader = nil
17563	c.urlParams_.Set("alt", alt)
17564	c.urlParams_.Set("prettyPrint", "false")
17565	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/claimwebsite")
17566	urls += "?" + c.urlParams_.Encode()
17567	req, err := http.NewRequest("POST", urls, body)
17568	if err != nil {
17569		return nil, err
17570	}
17571	req.Header = reqHeaders
17572	googleapi.Expand(req.URL, map[string]string{
17573		"merchantId": strconv.FormatUint(c.merchantId, 10),
17574		"accountId":  strconv.FormatUint(c.accountId, 10),
17575	})
17576	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17577}
17578
17579// Do executes the "content.accounts.claimwebsite" call.
17580// Exactly one of *AccountsClaimWebsiteResponse or error will be
17581// non-nil. Any non-2xx status code is an error. Response headers are in
17582// either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
17583// response was returned at all) in error.(*googleapi.Error).Header. Use
17584// googleapi.IsNotModified to check whether the returned error was
17585// because http.StatusNotModified was returned.
17586func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
17587	gensupport.SetOptions(c.urlParams_, opts...)
17588	res, err := c.doRequest("json")
17589	if res != nil && res.StatusCode == http.StatusNotModified {
17590		if res.Body != nil {
17591			res.Body.Close()
17592		}
17593		return nil, &googleapi.Error{
17594			Code:   res.StatusCode,
17595			Header: res.Header,
17596		}
17597	}
17598	if err != nil {
17599		return nil, err
17600	}
17601	defer googleapi.CloseBody(res)
17602	if err := googleapi.CheckResponse(res); err != nil {
17603		return nil, err
17604	}
17605	ret := &AccountsClaimWebsiteResponse{
17606		ServerResponse: googleapi.ServerResponse{
17607			Header:         res.Header,
17608			HTTPStatusCode: res.StatusCode,
17609		},
17610	}
17611	target := &ret
17612	if err := gensupport.DecodeResponse(target, res); err != nil {
17613		return nil, err
17614	}
17615	return ret, nil
17616	// {
17617	//   "description": "Claims the website of a Merchant Center sub-account.",
17618	//   "flatPath": "{merchantId}/accounts/{accountId}/claimwebsite",
17619	//   "httpMethod": "POST",
17620	//   "id": "content.accounts.claimwebsite",
17621	//   "parameterOrder": [
17622	//     "merchantId",
17623	//     "accountId"
17624	//   ],
17625	//   "parameters": {
17626	//     "accountId": {
17627	//       "description": "The ID of the account whose website is claimed.",
17628	//       "format": "uint64",
17629	//       "location": "path",
17630	//       "required": true,
17631	//       "type": "string"
17632	//     },
17633	//     "merchantId": {
17634	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
17635	//       "format": "uint64",
17636	//       "location": "path",
17637	//       "required": true,
17638	//       "type": "string"
17639	//     },
17640	//     "overwrite": {
17641	//       "description": "Only available to selected merchants. When set to `True`, this flag removes any existing claim on the requested website by another account and replaces it with a claim from this account.",
17642	//       "location": "query",
17643	//       "type": "boolean"
17644	//     }
17645	//   },
17646	//   "path": "{merchantId}/accounts/{accountId}/claimwebsite",
17647	//   "response": {
17648	//     "$ref": "AccountsClaimWebsiteResponse"
17649	//   },
17650	//   "scopes": [
17651	//     "https://www.googleapis.com/auth/content"
17652	//   ]
17653	// }
17654
17655}
17656
17657// method id "content.accounts.custombatch":
17658
17659type AccountsCustombatchCall struct {
17660	s                          *APIService
17661	accountscustombatchrequest *AccountsCustomBatchRequest
17662	urlParams_                 gensupport.URLParams
17663	ctx_                       context.Context
17664	header_                    http.Header
17665}
17666
17667// Custombatch: Retrieves, inserts, updates, and deletes multiple
17668// Merchant Center (sub-)accounts in a single request.
17669func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
17670	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17671	c.accountscustombatchrequest = accountscustombatchrequest
17672	return c
17673}
17674
17675// Fields allows partial responses to be retrieved. See
17676// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17677// for more information.
17678func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
17679	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17680	return c
17681}
17682
17683// Context sets the context to be used in this call's Do method. Any
17684// pending HTTP request will be aborted if the provided context is
17685// canceled.
17686func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
17687	c.ctx_ = ctx
17688	return c
17689}
17690
17691// Header returns an http.Header that can be modified by the caller to
17692// add HTTP headers to the request.
17693func (c *AccountsCustombatchCall) Header() http.Header {
17694	if c.header_ == nil {
17695		c.header_ = make(http.Header)
17696	}
17697	return c.header_
17698}
17699
17700func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
17701	reqHeaders := make(http.Header)
17702	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17703	for k, v := range c.header_ {
17704		reqHeaders[k] = v
17705	}
17706	reqHeaders.Set("User-Agent", c.s.userAgent())
17707	var body io.Reader = nil
17708	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
17709	if err != nil {
17710		return nil, err
17711	}
17712	reqHeaders.Set("Content-Type", "application/json")
17713	c.urlParams_.Set("alt", alt)
17714	c.urlParams_.Set("prettyPrint", "false")
17715	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/batch")
17716	urls += "?" + c.urlParams_.Encode()
17717	req, err := http.NewRequest("POST", urls, body)
17718	if err != nil {
17719		return nil, err
17720	}
17721	req.Header = reqHeaders
17722	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17723}
17724
17725// Do executes the "content.accounts.custombatch" call.
17726// Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
17727// Any non-2xx status code is an error. Response headers are in either
17728// *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
17729// was returned at all) in error.(*googleapi.Error).Header. Use
17730// googleapi.IsNotModified to check whether the returned error was
17731// because http.StatusNotModified was returned.
17732func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
17733	gensupport.SetOptions(c.urlParams_, opts...)
17734	res, err := c.doRequest("json")
17735	if res != nil && res.StatusCode == http.StatusNotModified {
17736		if res.Body != nil {
17737			res.Body.Close()
17738		}
17739		return nil, &googleapi.Error{
17740			Code:   res.StatusCode,
17741			Header: res.Header,
17742		}
17743	}
17744	if err != nil {
17745		return nil, err
17746	}
17747	defer googleapi.CloseBody(res)
17748	if err := googleapi.CheckResponse(res); err != nil {
17749		return nil, err
17750	}
17751	ret := &AccountsCustomBatchResponse{
17752		ServerResponse: googleapi.ServerResponse{
17753			Header:         res.Header,
17754			HTTPStatusCode: res.StatusCode,
17755		},
17756	}
17757	target := &ret
17758	if err := gensupport.DecodeResponse(target, res); err != nil {
17759		return nil, err
17760	}
17761	return ret, nil
17762	// {
17763	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
17764	//   "flatPath": "accounts/batch",
17765	//   "httpMethod": "POST",
17766	//   "id": "content.accounts.custombatch",
17767	//   "parameterOrder": [],
17768	//   "parameters": {},
17769	//   "path": "accounts/batch",
17770	//   "request": {
17771	//     "$ref": "AccountsCustomBatchRequest"
17772	//   },
17773	//   "response": {
17774	//     "$ref": "AccountsCustomBatchResponse"
17775	//   },
17776	//   "scopes": [
17777	//     "https://www.googleapis.com/auth/content"
17778	//   ]
17779	// }
17780
17781}
17782
17783// method id "content.accounts.delete":
17784
17785type AccountsDeleteCall struct {
17786	s          *APIService
17787	merchantId uint64
17788	accountId  uint64
17789	urlParams_ gensupport.URLParams
17790	ctx_       context.Context
17791	header_    http.Header
17792}
17793
17794// Delete: Deletes a Merchant Center sub-account.
17795//
17796// - accountId: The ID of the account.
17797// - merchantId: The ID of the managing account. This must be a
17798//   multi-client account, and accountId must be the ID of a sub-account
17799//   of this account.
17800func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
17801	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17802	c.merchantId = merchantId
17803	c.accountId = accountId
17804	return c
17805}
17806
17807// Force sets the optional parameter "force": Flag to delete
17808// sub-accounts with products. The default value is false.
17809func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
17810	c.urlParams_.Set("force", fmt.Sprint(force))
17811	return c
17812}
17813
17814// Fields allows partial responses to be retrieved. See
17815// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17816// for more information.
17817func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
17818	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17819	return c
17820}
17821
17822// Context sets the context to be used in this call's Do method. Any
17823// pending HTTP request will be aborted if the provided context is
17824// canceled.
17825func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
17826	c.ctx_ = ctx
17827	return c
17828}
17829
17830// Header returns an http.Header that can be modified by the caller to
17831// add HTTP headers to the request.
17832func (c *AccountsDeleteCall) Header() http.Header {
17833	if c.header_ == nil {
17834		c.header_ = make(http.Header)
17835	}
17836	return c.header_
17837}
17838
17839func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
17840	reqHeaders := make(http.Header)
17841	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17842	for k, v := range c.header_ {
17843		reqHeaders[k] = v
17844	}
17845	reqHeaders.Set("User-Agent", c.s.userAgent())
17846	var body io.Reader = nil
17847	c.urlParams_.Set("alt", alt)
17848	c.urlParams_.Set("prettyPrint", "false")
17849	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
17850	urls += "?" + c.urlParams_.Encode()
17851	req, err := http.NewRequest("DELETE", urls, body)
17852	if err != nil {
17853		return nil, err
17854	}
17855	req.Header = reqHeaders
17856	googleapi.Expand(req.URL, map[string]string{
17857		"merchantId": strconv.FormatUint(c.merchantId, 10),
17858		"accountId":  strconv.FormatUint(c.accountId, 10),
17859	})
17860	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17861}
17862
17863// Do executes the "content.accounts.delete" call.
17864func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
17865	gensupport.SetOptions(c.urlParams_, opts...)
17866	res, err := c.doRequest("json")
17867	if err != nil {
17868		return err
17869	}
17870	defer googleapi.CloseBody(res)
17871	if err := googleapi.CheckResponse(res); err != nil {
17872		return err
17873	}
17874	return nil
17875	// {
17876	//   "description": "Deletes a Merchant Center sub-account.",
17877	//   "flatPath": "{merchantId}/accounts/{accountId}",
17878	//   "httpMethod": "DELETE",
17879	//   "id": "content.accounts.delete",
17880	//   "parameterOrder": [
17881	//     "merchantId",
17882	//     "accountId"
17883	//   ],
17884	//   "parameters": {
17885	//     "accountId": {
17886	//       "description": "The ID of the account.",
17887	//       "format": "uint64",
17888	//       "location": "path",
17889	//       "required": true,
17890	//       "type": "string"
17891	//     },
17892	//     "force": {
17893	//       "default": "false",
17894	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
17895	//       "location": "query",
17896	//       "type": "boolean"
17897	//     },
17898	//     "merchantId": {
17899	//       "description": "The ID of the managing account. This must be a multi-client account, and accountId must be the ID of a sub-account of this account.",
17900	//       "format": "uint64",
17901	//       "location": "path",
17902	//       "required": true,
17903	//       "type": "string"
17904	//     }
17905	//   },
17906	//   "path": "{merchantId}/accounts/{accountId}",
17907	//   "scopes": [
17908	//     "https://www.googleapis.com/auth/content"
17909	//   ]
17910	// }
17911
17912}
17913
17914// method id "content.accounts.get":
17915
17916type AccountsGetCall struct {
17917	s            *APIService
17918	merchantId   uint64
17919	accountId    uint64
17920	urlParams_   gensupport.URLParams
17921	ifNoneMatch_ string
17922	ctx_         context.Context
17923	header_      http.Header
17924}
17925
17926// Get: Retrieves a Merchant Center account.
17927//
17928// - accountId: The ID of the account.
17929// - merchantId: The ID of the managing account. If this parameter is
17930//   not the same as accountId, then this account must be a multi-client
17931//   account and `accountId` must be the ID of a sub-account of this
17932//   account.
17933func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
17934	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17935	c.merchantId = merchantId
17936	c.accountId = accountId
17937	return c
17938}
17939
17940// View sets the optional parameter "view": Controls which fields will
17941// be populated. Acceptable values are: "merchant" and "css". The
17942// default value is "merchant".
17943//
17944// Possible values:
17945//   "MERCHANT" - Default. View is populated with Merchant Center
17946// fields.
17947//   "CSS" - View is populated with Comparison Shopping Services fields.
17948func (c *AccountsGetCall) View(view string) *AccountsGetCall {
17949	c.urlParams_.Set("view", view)
17950	return c
17951}
17952
17953// Fields allows partial responses to be retrieved. See
17954// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17955// for more information.
17956func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
17957	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17958	return c
17959}
17960
17961// IfNoneMatch sets the optional parameter which makes the operation
17962// fail if the object's ETag matches the given value. This is useful for
17963// getting updates only after the object has changed since the last
17964// request. Use googleapi.IsNotModified to check whether the response
17965// error from Do is the result of In-None-Match.
17966func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
17967	c.ifNoneMatch_ = entityTag
17968	return c
17969}
17970
17971// Context sets the context to be used in this call's Do method. Any
17972// pending HTTP request will be aborted if the provided context is
17973// canceled.
17974func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
17975	c.ctx_ = ctx
17976	return c
17977}
17978
17979// Header returns an http.Header that can be modified by the caller to
17980// add HTTP headers to the request.
17981func (c *AccountsGetCall) Header() http.Header {
17982	if c.header_ == nil {
17983		c.header_ = make(http.Header)
17984	}
17985	return c.header_
17986}
17987
17988func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
17989	reqHeaders := make(http.Header)
17990	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17991	for k, v := range c.header_ {
17992		reqHeaders[k] = v
17993	}
17994	reqHeaders.Set("User-Agent", c.s.userAgent())
17995	if c.ifNoneMatch_ != "" {
17996		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17997	}
17998	var body io.Reader = nil
17999	c.urlParams_.Set("alt", alt)
18000	c.urlParams_.Set("prettyPrint", "false")
18001	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
18002	urls += "?" + c.urlParams_.Encode()
18003	req, err := http.NewRequest("GET", urls, body)
18004	if err != nil {
18005		return nil, err
18006	}
18007	req.Header = reqHeaders
18008	googleapi.Expand(req.URL, map[string]string{
18009		"merchantId": strconv.FormatUint(c.merchantId, 10),
18010		"accountId":  strconv.FormatUint(c.accountId, 10),
18011	})
18012	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18013}
18014
18015// Do executes the "content.accounts.get" call.
18016// Exactly one of *Account or error will be non-nil. Any non-2xx status
18017// code is an error. Response headers are in either
18018// *Account.ServerResponse.Header or (if a response was returned at all)
18019// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
18020// check whether the returned error was because http.StatusNotModified
18021// was returned.
18022func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
18023	gensupport.SetOptions(c.urlParams_, opts...)
18024	res, err := c.doRequest("json")
18025	if res != nil && res.StatusCode == http.StatusNotModified {
18026		if res.Body != nil {
18027			res.Body.Close()
18028		}
18029		return nil, &googleapi.Error{
18030			Code:   res.StatusCode,
18031			Header: res.Header,
18032		}
18033	}
18034	if err != nil {
18035		return nil, err
18036	}
18037	defer googleapi.CloseBody(res)
18038	if err := googleapi.CheckResponse(res); err != nil {
18039		return nil, err
18040	}
18041	ret := &Account{
18042		ServerResponse: googleapi.ServerResponse{
18043			Header:         res.Header,
18044			HTTPStatusCode: res.StatusCode,
18045		},
18046	}
18047	target := &ret
18048	if err := gensupport.DecodeResponse(target, res); err != nil {
18049		return nil, err
18050	}
18051	return ret, nil
18052	// {
18053	//   "description": "Retrieves a Merchant Center account.",
18054	//   "flatPath": "{merchantId}/accounts/{accountId}",
18055	//   "httpMethod": "GET",
18056	//   "id": "content.accounts.get",
18057	//   "parameterOrder": [
18058	//     "merchantId",
18059	//     "accountId"
18060	//   ],
18061	//   "parameters": {
18062	//     "accountId": {
18063	//       "description": "The ID of the account.",
18064	//       "format": "uint64",
18065	//       "location": "path",
18066	//       "required": true,
18067	//       "type": "string"
18068	//     },
18069	//     "merchantId": {
18070	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
18071	//       "format": "uint64",
18072	//       "location": "path",
18073	//       "required": true,
18074	//       "type": "string"
18075	//     },
18076	//     "view": {
18077	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
18078	//       "enum": [
18079	//         "MERCHANT",
18080	//         "CSS"
18081	//       ],
18082	//       "enumDescriptions": [
18083	//         "Default. View is populated with Merchant Center fields.",
18084	//         "View is populated with Comparison Shopping Services fields."
18085	//       ],
18086	//       "location": "query",
18087	//       "type": "string"
18088	//     }
18089	//   },
18090	//   "path": "{merchantId}/accounts/{accountId}",
18091	//   "response": {
18092	//     "$ref": "Account"
18093	//   },
18094	//   "scopes": [
18095	//     "https://www.googleapis.com/auth/content"
18096	//   ]
18097	// }
18098
18099}
18100
18101// method id "content.accounts.insert":
18102
18103type AccountsInsertCall struct {
18104	s          *APIService
18105	merchantId uint64
18106	account    *Account
18107	urlParams_ gensupport.URLParams
18108	ctx_       context.Context
18109	header_    http.Header
18110}
18111
18112// Insert: Creates a Merchant Center sub-account.
18113//
18114// - merchantId: The ID of the managing account. This must be a
18115//   multi-client account.
18116func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
18117	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18118	c.merchantId = merchantId
18119	c.account = account
18120	return c
18121}
18122
18123// Fields allows partial responses to be retrieved. See
18124// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18125// for more information.
18126func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
18127	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18128	return c
18129}
18130
18131// Context sets the context to be used in this call's Do method. Any
18132// pending HTTP request will be aborted if the provided context is
18133// canceled.
18134func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
18135	c.ctx_ = ctx
18136	return c
18137}
18138
18139// Header returns an http.Header that can be modified by the caller to
18140// add HTTP headers to the request.
18141func (c *AccountsInsertCall) Header() http.Header {
18142	if c.header_ == nil {
18143		c.header_ = make(http.Header)
18144	}
18145	return c.header_
18146}
18147
18148func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
18149	reqHeaders := make(http.Header)
18150	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18151	for k, v := range c.header_ {
18152		reqHeaders[k] = v
18153	}
18154	reqHeaders.Set("User-Agent", c.s.userAgent())
18155	var body io.Reader = nil
18156	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
18157	if err != nil {
18158		return nil, err
18159	}
18160	reqHeaders.Set("Content-Type", "application/json")
18161	c.urlParams_.Set("alt", alt)
18162	c.urlParams_.Set("prettyPrint", "false")
18163	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
18164	urls += "?" + c.urlParams_.Encode()
18165	req, err := http.NewRequest("POST", urls, body)
18166	if err != nil {
18167		return nil, err
18168	}
18169	req.Header = reqHeaders
18170	googleapi.Expand(req.URL, map[string]string{
18171		"merchantId": strconv.FormatUint(c.merchantId, 10),
18172	})
18173	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18174}
18175
18176// Do executes the "content.accounts.insert" call.
18177// Exactly one of *Account or error will be non-nil. Any non-2xx status
18178// code is an error. Response headers are in either
18179// *Account.ServerResponse.Header or (if a response was returned at all)
18180// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
18181// check whether the returned error was because http.StatusNotModified
18182// was returned.
18183func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
18184	gensupport.SetOptions(c.urlParams_, opts...)
18185	res, err := c.doRequest("json")
18186	if res != nil && res.StatusCode == http.StatusNotModified {
18187		if res.Body != nil {
18188			res.Body.Close()
18189		}
18190		return nil, &googleapi.Error{
18191			Code:   res.StatusCode,
18192			Header: res.Header,
18193		}
18194	}
18195	if err != nil {
18196		return nil, err
18197	}
18198	defer googleapi.CloseBody(res)
18199	if err := googleapi.CheckResponse(res); err != nil {
18200		return nil, err
18201	}
18202	ret := &Account{
18203		ServerResponse: googleapi.ServerResponse{
18204			Header:         res.Header,
18205			HTTPStatusCode: res.StatusCode,
18206		},
18207	}
18208	target := &ret
18209	if err := gensupport.DecodeResponse(target, res); err != nil {
18210		return nil, err
18211	}
18212	return ret, nil
18213	// {
18214	//   "description": "Creates a Merchant Center sub-account.",
18215	//   "flatPath": "{merchantId}/accounts",
18216	//   "httpMethod": "POST",
18217	//   "id": "content.accounts.insert",
18218	//   "parameterOrder": [
18219	//     "merchantId"
18220	//   ],
18221	//   "parameters": {
18222	//     "merchantId": {
18223	//       "description": "The ID of the managing account. This must be a multi-client account.",
18224	//       "format": "uint64",
18225	//       "location": "path",
18226	//       "required": true,
18227	//       "type": "string"
18228	//     }
18229	//   },
18230	//   "path": "{merchantId}/accounts",
18231	//   "request": {
18232	//     "$ref": "Account"
18233	//   },
18234	//   "response": {
18235	//     "$ref": "Account"
18236	//   },
18237	//   "scopes": [
18238	//     "https://www.googleapis.com/auth/content"
18239	//   ]
18240	// }
18241
18242}
18243
18244// method id "content.accounts.link":
18245
18246type AccountsLinkCall struct {
18247	s                   *APIService
18248	merchantId          uint64
18249	accountId           uint64
18250	accountslinkrequest *AccountsLinkRequest
18251	urlParams_          gensupport.URLParams
18252	ctx_                context.Context
18253	header_             http.Header
18254}
18255
18256// Link: Performs an action on a link between two Merchant Center
18257// accounts, namely accountId and linkedAccountId.
18258//
18259// - accountId: The ID of the account that should be linked.
18260// - merchantId: The ID of the managing account. If this parameter is
18261//   not the same as accountId, then this account must be a multi-client
18262//   account and `accountId` must be the ID of a sub-account of this
18263//   account.
18264func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
18265	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18266	c.merchantId = merchantId
18267	c.accountId = accountId
18268	c.accountslinkrequest = accountslinkrequest
18269	return c
18270}
18271
18272// Fields allows partial responses to be retrieved. See
18273// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18274// for more information.
18275func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
18276	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18277	return c
18278}
18279
18280// Context sets the context to be used in this call's Do method. Any
18281// pending HTTP request will be aborted if the provided context is
18282// canceled.
18283func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
18284	c.ctx_ = ctx
18285	return c
18286}
18287
18288// Header returns an http.Header that can be modified by the caller to
18289// add HTTP headers to the request.
18290func (c *AccountsLinkCall) Header() http.Header {
18291	if c.header_ == nil {
18292		c.header_ = make(http.Header)
18293	}
18294	return c.header_
18295}
18296
18297func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
18298	reqHeaders := make(http.Header)
18299	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18300	for k, v := range c.header_ {
18301		reqHeaders[k] = v
18302	}
18303	reqHeaders.Set("User-Agent", c.s.userAgent())
18304	var body io.Reader = nil
18305	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
18306	if err != nil {
18307		return nil, err
18308	}
18309	reqHeaders.Set("Content-Type", "application/json")
18310	c.urlParams_.Set("alt", alt)
18311	c.urlParams_.Set("prettyPrint", "false")
18312	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/link")
18313	urls += "?" + c.urlParams_.Encode()
18314	req, err := http.NewRequest("POST", urls, body)
18315	if err != nil {
18316		return nil, err
18317	}
18318	req.Header = reqHeaders
18319	googleapi.Expand(req.URL, map[string]string{
18320		"merchantId": strconv.FormatUint(c.merchantId, 10),
18321		"accountId":  strconv.FormatUint(c.accountId, 10),
18322	})
18323	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18324}
18325
18326// Do executes the "content.accounts.link" call.
18327// Exactly one of *AccountsLinkResponse or error will be non-nil. Any
18328// non-2xx status code is an error. Response headers are in either
18329// *AccountsLinkResponse.ServerResponse.Header or (if a response was
18330// returned at all) in error.(*googleapi.Error).Header. Use
18331// googleapi.IsNotModified to check whether the returned error was
18332// because http.StatusNotModified was returned.
18333func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
18334	gensupport.SetOptions(c.urlParams_, opts...)
18335	res, err := c.doRequest("json")
18336	if res != nil && res.StatusCode == http.StatusNotModified {
18337		if res.Body != nil {
18338			res.Body.Close()
18339		}
18340		return nil, &googleapi.Error{
18341			Code:   res.StatusCode,
18342			Header: res.Header,
18343		}
18344	}
18345	if err != nil {
18346		return nil, err
18347	}
18348	defer googleapi.CloseBody(res)
18349	if err := googleapi.CheckResponse(res); err != nil {
18350		return nil, err
18351	}
18352	ret := &AccountsLinkResponse{
18353		ServerResponse: googleapi.ServerResponse{
18354			Header:         res.Header,
18355			HTTPStatusCode: res.StatusCode,
18356		},
18357	}
18358	target := &ret
18359	if err := gensupport.DecodeResponse(target, res); err != nil {
18360		return nil, err
18361	}
18362	return ret, nil
18363	// {
18364	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
18365	//   "flatPath": "{merchantId}/accounts/{accountId}/link",
18366	//   "httpMethod": "POST",
18367	//   "id": "content.accounts.link",
18368	//   "parameterOrder": [
18369	//     "merchantId",
18370	//     "accountId"
18371	//   ],
18372	//   "parameters": {
18373	//     "accountId": {
18374	//       "description": "The ID of the account that should be linked.",
18375	//       "format": "uint64",
18376	//       "location": "path",
18377	//       "required": true,
18378	//       "type": "string"
18379	//     },
18380	//     "merchantId": {
18381	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
18382	//       "format": "uint64",
18383	//       "location": "path",
18384	//       "required": true,
18385	//       "type": "string"
18386	//     }
18387	//   },
18388	//   "path": "{merchantId}/accounts/{accountId}/link",
18389	//   "request": {
18390	//     "$ref": "AccountsLinkRequest"
18391	//   },
18392	//   "response": {
18393	//     "$ref": "AccountsLinkResponse"
18394	//   },
18395	//   "scopes": [
18396	//     "https://www.googleapis.com/auth/content"
18397	//   ]
18398	// }
18399
18400}
18401
18402// method id "content.accounts.list":
18403
18404type AccountsListCall struct {
18405	s            *APIService
18406	merchantId   uint64
18407	urlParams_   gensupport.URLParams
18408	ifNoneMatch_ string
18409	ctx_         context.Context
18410	header_      http.Header
18411}
18412
18413// List: Lists the sub-accounts in your Merchant Center account.
18414//
18415// - merchantId: The ID of the managing account. This must be a
18416//   multi-client account.
18417func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
18418	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18419	c.merchantId = merchantId
18420	return c
18421}
18422
18423// Label sets the optional parameter "label": If view is set to "css",
18424// only return accounts that are assigned label with given ID.
18425func (c *AccountsListCall) Label(label uint64) *AccountsListCall {
18426	c.urlParams_.Set("label", fmt.Sprint(label))
18427	return c
18428}
18429
18430// MaxResults sets the optional parameter "maxResults": The maximum
18431// number of accounts to return in the response, used for paging.
18432func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
18433	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18434	return c
18435}
18436
18437// Name sets the optional parameter "name": If set, only the accounts
18438// with the given name (case sensitive) will be returned.
18439func (c *AccountsListCall) Name(name string) *AccountsListCall {
18440	c.urlParams_.Set("name", name)
18441	return c
18442}
18443
18444// PageToken sets the optional parameter "pageToken": The token returned
18445// by the previous request.
18446func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
18447	c.urlParams_.Set("pageToken", pageToken)
18448	return c
18449}
18450
18451// View sets the optional parameter "view": Controls which fields will
18452// be populated. Acceptable values are: "merchant" and "css". The
18453// default value is "merchant".
18454//
18455// Possible values:
18456//   "MERCHANT" - Default. View is populated with Merchant Center
18457// fields.
18458//   "CSS" - View is populated with Comparison Shopping Services fields.
18459func (c *AccountsListCall) View(view string) *AccountsListCall {
18460	c.urlParams_.Set("view", view)
18461	return c
18462}
18463
18464// Fields allows partial responses to be retrieved. See
18465// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18466// for more information.
18467func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
18468	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18469	return c
18470}
18471
18472// IfNoneMatch sets the optional parameter which makes the operation
18473// fail if the object's ETag matches the given value. This is useful for
18474// getting updates only after the object has changed since the last
18475// request. Use googleapi.IsNotModified to check whether the response
18476// error from Do is the result of In-None-Match.
18477func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
18478	c.ifNoneMatch_ = entityTag
18479	return c
18480}
18481
18482// Context sets the context to be used in this call's Do method. Any
18483// pending HTTP request will be aborted if the provided context is
18484// canceled.
18485func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
18486	c.ctx_ = ctx
18487	return c
18488}
18489
18490// Header returns an http.Header that can be modified by the caller to
18491// add HTTP headers to the request.
18492func (c *AccountsListCall) Header() http.Header {
18493	if c.header_ == nil {
18494		c.header_ = make(http.Header)
18495	}
18496	return c.header_
18497}
18498
18499func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
18500	reqHeaders := make(http.Header)
18501	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18502	for k, v := range c.header_ {
18503		reqHeaders[k] = v
18504	}
18505	reqHeaders.Set("User-Agent", c.s.userAgent())
18506	if c.ifNoneMatch_ != "" {
18507		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18508	}
18509	var body io.Reader = nil
18510	c.urlParams_.Set("alt", alt)
18511	c.urlParams_.Set("prettyPrint", "false")
18512	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
18513	urls += "?" + c.urlParams_.Encode()
18514	req, err := http.NewRequest("GET", urls, body)
18515	if err != nil {
18516		return nil, err
18517	}
18518	req.Header = reqHeaders
18519	googleapi.Expand(req.URL, map[string]string{
18520		"merchantId": strconv.FormatUint(c.merchantId, 10),
18521	})
18522	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18523}
18524
18525// Do executes the "content.accounts.list" call.
18526// Exactly one of *AccountsListResponse or error will be non-nil. Any
18527// non-2xx status code is an error. Response headers are in either
18528// *AccountsListResponse.ServerResponse.Header or (if a response was
18529// returned at all) in error.(*googleapi.Error).Header. Use
18530// googleapi.IsNotModified to check whether the returned error was
18531// because http.StatusNotModified was returned.
18532func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
18533	gensupport.SetOptions(c.urlParams_, opts...)
18534	res, err := c.doRequest("json")
18535	if res != nil && res.StatusCode == http.StatusNotModified {
18536		if res.Body != nil {
18537			res.Body.Close()
18538		}
18539		return nil, &googleapi.Error{
18540			Code:   res.StatusCode,
18541			Header: res.Header,
18542		}
18543	}
18544	if err != nil {
18545		return nil, err
18546	}
18547	defer googleapi.CloseBody(res)
18548	if err := googleapi.CheckResponse(res); err != nil {
18549		return nil, err
18550	}
18551	ret := &AccountsListResponse{
18552		ServerResponse: googleapi.ServerResponse{
18553			Header:         res.Header,
18554			HTTPStatusCode: res.StatusCode,
18555		},
18556	}
18557	target := &ret
18558	if err := gensupport.DecodeResponse(target, res); err != nil {
18559		return nil, err
18560	}
18561	return ret, nil
18562	// {
18563	//   "description": "Lists the sub-accounts in your Merchant Center account.",
18564	//   "flatPath": "{merchantId}/accounts",
18565	//   "httpMethod": "GET",
18566	//   "id": "content.accounts.list",
18567	//   "parameterOrder": [
18568	//     "merchantId"
18569	//   ],
18570	//   "parameters": {
18571	//     "label": {
18572	//       "description": "If view is set to \"css\", only return accounts that are assigned label with given ID.",
18573	//       "format": "uint64",
18574	//       "location": "query",
18575	//       "type": "string"
18576	//     },
18577	//     "maxResults": {
18578	//       "description": "The maximum number of accounts to return in the response, used for paging.",
18579	//       "format": "uint32",
18580	//       "location": "query",
18581	//       "type": "integer"
18582	//     },
18583	//     "merchantId": {
18584	//       "description": "The ID of the managing account. This must be a multi-client account.",
18585	//       "format": "uint64",
18586	//       "location": "path",
18587	//       "required": true,
18588	//       "type": "string"
18589	//     },
18590	//     "name": {
18591	//       "description": "If set, only the accounts with the given name (case sensitive) will be returned.",
18592	//       "location": "query",
18593	//       "type": "string"
18594	//     },
18595	//     "pageToken": {
18596	//       "description": "The token returned by the previous request.",
18597	//       "location": "query",
18598	//       "type": "string"
18599	//     },
18600	//     "view": {
18601	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
18602	//       "enum": [
18603	//         "MERCHANT",
18604	//         "CSS"
18605	//       ],
18606	//       "enumDescriptions": [
18607	//         "Default. View is populated with Merchant Center fields.",
18608	//         "View is populated with Comparison Shopping Services fields."
18609	//       ],
18610	//       "location": "query",
18611	//       "type": "string"
18612	//     }
18613	//   },
18614	//   "path": "{merchantId}/accounts",
18615	//   "response": {
18616	//     "$ref": "AccountsListResponse"
18617	//   },
18618	//   "scopes": [
18619	//     "https://www.googleapis.com/auth/content"
18620	//   ]
18621	// }
18622
18623}
18624
18625// Pages invokes f for each page of results.
18626// A non-nil error returned from f will halt the iteration.
18627// The provided context supersedes any context provided to the Context method.
18628func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
18629	c.ctx_ = ctx
18630	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18631	for {
18632		x, err := c.Do()
18633		if err != nil {
18634			return err
18635		}
18636		if err := f(x); err != nil {
18637			return err
18638		}
18639		if x.NextPageToken == "" {
18640			return nil
18641		}
18642		c.PageToken(x.NextPageToken)
18643	}
18644}
18645
18646// method id "content.accounts.listlinks":
18647
18648type AccountsListlinksCall struct {
18649	s            *APIService
18650	merchantId   uint64
18651	accountId    uint64
18652	urlParams_   gensupport.URLParams
18653	ifNoneMatch_ string
18654	ctx_         context.Context
18655	header_      http.Header
18656}
18657
18658// Listlinks: Returns the list of accounts linked to your Merchant
18659// Center account.
18660//
18661// - accountId: The ID of the account for which to list links.
18662// - merchantId: The ID of the managing account. If this parameter is
18663//   not the same as accountId, then this account must be a multi-client
18664//   account and `accountId` must be the ID of a sub-account of this
18665//   account.
18666func (r *AccountsService) Listlinks(merchantId uint64, accountId uint64) *AccountsListlinksCall {
18667	c := &AccountsListlinksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18668	c.merchantId = merchantId
18669	c.accountId = accountId
18670	return c
18671}
18672
18673// MaxResults sets the optional parameter "maxResults": The maximum
18674// number of links to return in the response, used for pagination. The
18675// minimum allowed value is 5 results per page. If provided value is
18676// lower than 5, it will be automatically increased to 5.
18677func (c *AccountsListlinksCall) MaxResults(maxResults int64) *AccountsListlinksCall {
18678	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18679	return c
18680}
18681
18682// PageToken sets the optional parameter "pageToken": The token returned
18683// by the previous request.
18684func (c *AccountsListlinksCall) PageToken(pageToken string) *AccountsListlinksCall {
18685	c.urlParams_.Set("pageToken", pageToken)
18686	return c
18687}
18688
18689// Fields allows partial responses to be retrieved. See
18690// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18691// for more information.
18692func (c *AccountsListlinksCall) Fields(s ...googleapi.Field) *AccountsListlinksCall {
18693	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18694	return c
18695}
18696
18697// IfNoneMatch sets the optional parameter which makes the operation
18698// fail if the object's ETag matches the given value. This is useful for
18699// getting updates only after the object has changed since the last
18700// request. Use googleapi.IsNotModified to check whether the response
18701// error from Do is the result of In-None-Match.
18702func (c *AccountsListlinksCall) IfNoneMatch(entityTag string) *AccountsListlinksCall {
18703	c.ifNoneMatch_ = entityTag
18704	return c
18705}
18706
18707// Context sets the context to be used in this call's Do method. Any
18708// pending HTTP request will be aborted if the provided context is
18709// canceled.
18710func (c *AccountsListlinksCall) Context(ctx context.Context) *AccountsListlinksCall {
18711	c.ctx_ = ctx
18712	return c
18713}
18714
18715// Header returns an http.Header that can be modified by the caller to
18716// add HTTP headers to the request.
18717func (c *AccountsListlinksCall) Header() http.Header {
18718	if c.header_ == nil {
18719		c.header_ = make(http.Header)
18720	}
18721	return c.header_
18722}
18723
18724func (c *AccountsListlinksCall) doRequest(alt string) (*http.Response, error) {
18725	reqHeaders := make(http.Header)
18726	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18727	for k, v := range c.header_ {
18728		reqHeaders[k] = v
18729	}
18730	reqHeaders.Set("User-Agent", c.s.userAgent())
18731	if c.ifNoneMatch_ != "" {
18732		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18733	}
18734	var body io.Reader = nil
18735	c.urlParams_.Set("alt", alt)
18736	c.urlParams_.Set("prettyPrint", "false")
18737	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/listlinks")
18738	urls += "?" + c.urlParams_.Encode()
18739	req, err := http.NewRequest("GET", urls, body)
18740	if err != nil {
18741		return nil, err
18742	}
18743	req.Header = reqHeaders
18744	googleapi.Expand(req.URL, map[string]string{
18745		"merchantId": strconv.FormatUint(c.merchantId, 10),
18746		"accountId":  strconv.FormatUint(c.accountId, 10),
18747	})
18748	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18749}
18750
18751// Do executes the "content.accounts.listlinks" call.
18752// Exactly one of *AccountsListLinksResponse or error will be non-nil.
18753// Any non-2xx status code is an error. Response headers are in either
18754// *AccountsListLinksResponse.ServerResponse.Header or (if a response
18755// was returned at all) in error.(*googleapi.Error).Header. Use
18756// googleapi.IsNotModified to check whether the returned error was
18757// because http.StatusNotModified was returned.
18758func (c *AccountsListlinksCall) Do(opts ...googleapi.CallOption) (*AccountsListLinksResponse, error) {
18759	gensupport.SetOptions(c.urlParams_, opts...)
18760	res, err := c.doRequest("json")
18761	if res != nil && res.StatusCode == http.StatusNotModified {
18762		if res.Body != nil {
18763			res.Body.Close()
18764		}
18765		return nil, &googleapi.Error{
18766			Code:   res.StatusCode,
18767			Header: res.Header,
18768		}
18769	}
18770	if err != nil {
18771		return nil, err
18772	}
18773	defer googleapi.CloseBody(res)
18774	if err := googleapi.CheckResponse(res); err != nil {
18775		return nil, err
18776	}
18777	ret := &AccountsListLinksResponse{
18778		ServerResponse: googleapi.ServerResponse{
18779			Header:         res.Header,
18780			HTTPStatusCode: res.StatusCode,
18781		},
18782	}
18783	target := &ret
18784	if err := gensupport.DecodeResponse(target, res); err != nil {
18785		return nil, err
18786	}
18787	return ret, nil
18788	// {
18789	//   "description": "Returns the list of accounts linked to your Merchant Center account.",
18790	//   "flatPath": "{merchantId}/accounts/{accountId}/listlinks",
18791	//   "httpMethod": "GET",
18792	//   "id": "content.accounts.listlinks",
18793	//   "parameterOrder": [
18794	//     "merchantId",
18795	//     "accountId"
18796	//   ],
18797	//   "parameters": {
18798	//     "accountId": {
18799	//       "description": "The ID of the account for which to list links.",
18800	//       "format": "uint64",
18801	//       "location": "path",
18802	//       "required": true,
18803	//       "type": "string"
18804	//     },
18805	//     "maxResults": {
18806	//       "description": "The maximum number of links to return in the response, used for pagination. The minimum allowed value is 5 results per page. If provided value is lower than 5, it will be automatically increased to 5.",
18807	//       "format": "uint32",
18808	//       "location": "query",
18809	//       "type": "integer"
18810	//     },
18811	//     "merchantId": {
18812	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
18813	//       "format": "uint64",
18814	//       "location": "path",
18815	//       "required": true,
18816	//       "type": "string"
18817	//     },
18818	//     "pageToken": {
18819	//       "description": "The token returned by the previous request.",
18820	//       "location": "query",
18821	//       "type": "string"
18822	//     }
18823	//   },
18824	//   "path": "{merchantId}/accounts/{accountId}/listlinks",
18825	//   "response": {
18826	//     "$ref": "AccountsListLinksResponse"
18827	//   },
18828	//   "scopes": [
18829	//     "https://www.googleapis.com/auth/content"
18830	//   ]
18831	// }
18832
18833}
18834
18835// Pages invokes f for each page of results.
18836// A non-nil error returned from f will halt the iteration.
18837// The provided context supersedes any context provided to the Context method.
18838func (c *AccountsListlinksCall) Pages(ctx context.Context, f func(*AccountsListLinksResponse) error) error {
18839	c.ctx_ = ctx
18840	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18841	for {
18842		x, err := c.Do()
18843		if err != nil {
18844			return err
18845		}
18846		if err := f(x); err != nil {
18847			return err
18848		}
18849		if x.NextPageToken == "" {
18850			return nil
18851		}
18852		c.PageToken(x.NextPageToken)
18853	}
18854}
18855
18856// method id "content.accounts.requestphoneverification":
18857
18858type AccountsRequestphoneverificationCall struct {
18859	s                               *APIService
18860	merchantId                      int64
18861	accountId                       int64
18862	requestphoneverificationrequest *RequestPhoneVerificationRequest
18863	urlParams_                      gensupport.URLParams
18864	ctx_                            context.Context
18865	header_                         http.Header
18866}
18867
18868// Requestphoneverification: Request verification code to start phone
18869// verification.
18870//
18871// - accountId: The ID of the account.
18872// - merchantId: The ID of the managing account. If this parameter is
18873//   not the same as accountId, then this account must be a multi-client
18874//   account and accountId must be the ID of a sub-account of this
18875//   account.
18876func (r *AccountsService) Requestphoneverification(merchantId int64, accountId int64, requestphoneverificationrequest *RequestPhoneVerificationRequest) *AccountsRequestphoneverificationCall {
18877	c := &AccountsRequestphoneverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18878	c.merchantId = merchantId
18879	c.accountId = accountId
18880	c.requestphoneverificationrequest = requestphoneverificationrequest
18881	return c
18882}
18883
18884// Fields allows partial responses to be retrieved. See
18885// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18886// for more information.
18887func (c *AccountsRequestphoneverificationCall) Fields(s ...googleapi.Field) *AccountsRequestphoneverificationCall {
18888	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18889	return c
18890}
18891
18892// Context sets the context to be used in this call's Do method. Any
18893// pending HTTP request will be aborted if the provided context is
18894// canceled.
18895func (c *AccountsRequestphoneverificationCall) Context(ctx context.Context) *AccountsRequestphoneverificationCall {
18896	c.ctx_ = ctx
18897	return c
18898}
18899
18900// Header returns an http.Header that can be modified by the caller to
18901// add HTTP headers to the request.
18902func (c *AccountsRequestphoneverificationCall) Header() http.Header {
18903	if c.header_ == nil {
18904		c.header_ = make(http.Header)
18905	}
18906	return c.header_
18907}
18908
18909func (c *AccountsRequestphoneverificationCall) doRequest(alt string) (*http.Response, error) {
18910	reqHeaders := make(http.Header)
18911	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18912	for k, v := range c.header_ {
18913		reqHeaders[k] = v
18914	}
18915	reqHeaders.Set("User-Agent", c.s.userAgent())
18916	var body io.Reader = nil
18917	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestphoneverificationrequest)
18918	if err != nil {
18919		return nil, err
18920	}
18921	reqHeaders.Set("Content-Type", "application/json")
18922	c.urlParams_.Set("alt", alt)
18923	c.urlParams_.Set("prettyPrint", "false")
18924	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/requestphoneverification")
18925	urls += "?" + c.urlParams_.Encode()
18926	req, err := http.NewRequest("POST", urls, body)
18927	if err != nil {
18928		return nil, err
18929	}
18930	req.Header = reqHeaders
18931	googleapi.Expand(req.URL, map[string]string{
18932		"merchantId": strconv.FormatInt(c.merchantId, 10),
18933		"accountId":  strconv.FormatInt(c.accountId, 10),
18934	})
18935	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18936}
18937
18938// Do executes the "content.accounts.requestphoneverification" call.
18939// Exactly one of *RequestPhoneVerificationResponse or error will be
18940// non-nil. Any non-2xx status code is an error. Response headers are in
18941// either *RequestPhoneVerificationResponse.ServerResponse.Header or (if
18942// a response was returned at all) in error.(*googleapi.Error).Header.
18943// Use googleapi.IsNotModified to check whether the returned error was
18944// because http.StatusNotModified was returned.
18945func (c *AccountsRequestphoneverificationCall) Do(opts ...googleapi.CallOption) (*RequestPhoneVerificationResponse, error) {
18946	gensupport.SetOptions(c.urlParams_, opts...)
18947	res, err := c.doRequest("json")
18948	if res != nil && res.StatusCode == http.StatusNotModified {
18949		if res.Body != nil {
18950			res.Body.Close()
18951		}
18952		return nil, &googleapi.Error{
18953			Code:   res.StatusCode,
18954			Header: res.Header,
18955		}
18956	}
18957	if err != nil {
18958		return nil, err
18959	}
18960	defer googleapi.CloseBody(res)
18961	if err := googleapi.CheckResponse(res); err != nil {
18962		return nil, err
18963	}
18964	ret := &RequestPhoneVerificationResponse{
18965		ServerResponse: googleapi.ServerResponse{
18966			Header:         res.Header,
18967			HTTPStatusCode: res.StatusCode,
18968		},
18969	}
18970	target := &ret
18971	if err := gensupport.DecodeResponse(target, res); err != nil {
18972		return nil, err
18973	}
18974	return ret, nil
18975	// {
18976	//   "description": "Request verification code to start phone verification.",
18977	//   "flatPath": "{merchantId}/accounts/{accountId}/requestphoneverification",
18978	//   "httpMethod": "POST",
18979	//   "id": "content.accounts.requestphoneverification",
18980	//   "parameterOrder": [
18981	//     "merchantId",
18982	//     "accountId"
18983	//   ],
18984	//   "parameters": {
18985	//     "accountId": {
18986	//       "description": "Required. The ID of the account.",
18987	//       "format": "int64",
18988	//       "location": "path",
18989	//       "required": true,
18990	//       "type": "string"
18991	//     },
18992	//     "merchantId": {
18993	//       "description": "Required. The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.",
18994	//       "format": "int64",
18995	//       "location": "path",
18996	//       "required": true,
18997	//       "type": "string"
18998	//     }
18999	//   },
19000	//   "path": "{merchantId}/accounts/{accountId}/requestphoneverification",
19001	//   "request": {
19002	//     "$ref": "RequestPhoneVerificationRequest"
19003	//   },
19004	//   "response": {
19005	//     "$ref": "RequestPhoneVerificationResponse"
19006	//   },
19007	//   "scopes": [
19008	//     "https://www.googleapis.com/auth/content"
19009	//   ]
19010	// }
19011
19012}
19013
19014// method id "content.accounts.update":
19015
19016type AccountsUpdateCall struct {
19017	s          *APIService
19018	merchantId uint64
19019	accountId  uint64
19020	account    *Account
19021	urlParams_ gensupport.URLParams
19022	ctx_       context.Context
19023	header_    http.Header
19024}
19025
19026// Update: Updates a Merchant Center account. Any fields that are not
19027// provided are deleted from the resource.
19028//
19029// - accountId: The ID of the account.
19030// - merchantId: The ID of the managing account. If this parameter is
19031//   not the same as accountId, then this account must be a multi-client
19032//   account and `accountId` must be the ID of a sub-account of this
19033//   account.
19034func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
19035	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19036	c.merchantId = merchantId
19037	c.accountId = accountId
19038	c.account = account
19039	return c
19040}
19041
19042// Fields allows partial responses to be retrieved. See
19043// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19044// for more information.
19045func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
19046	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19047	return c
19048}
19049
19050// Context sets the context to be used in this call's Do method. Any
19051// pending HTTP request will be aborted if the provided context is
19052// canceled.
19053func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
19054	c.ctx_ = ctx
19055	return c
19056}
19057
19058// Header returns an http.Header that can be modified by the caller to
19059// add HTTP headers to the request.
19060func (c *AccountsUpdateCall) Header() http.Header {
19061	if c.header_ == nil {
19062		c.header_ = make(http.Header)
19063	}
19064	return c.header_
19065}
19066
19067func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
19068	reqHeaders := make(http.Header)
19069	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19070	for k, v := range c.header_ {
19071		reqHeaders[k] = v
19072	}
19073	reqHeaders.Set("User-Agent", c.s.userAgent())
19074	var body io.Reader = nil
19075	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
19076	if err != nil {
19077		return nil, err
19078	}
19079	reqHeaders.Set("Content-Type", "application/json")
19080	c.urlParams_.Set("alt", alt)
19081	c.urlParams_.Set("prettyPrint", "false")
19082	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
19083	urls += "?" + c.urlParams_.Encode()
19084	req, err := http.NewRequest("PUT", urls, body)
19085	if err != nil {
19086		return nil, err
19087	}
19088	req.Header = reqHeaders
19089	googleapi.Expand(req.URL, map[string]string{
19090		"merchantId": strconv.FormatUint(c.merchantId, 10),
19091		"accountId":  strconv.FormatUint(c.accountId, 10),
19092	})
19093	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19094}
19095
19096// Do executes the "content.accounts.update" call.
19097// Exactly one of *Account or error will be non-nil. Any non-2xx status
19098// code is an error. Response headers are in either
19099// *Account.ServerResponse.Header or (if a response was returned at all)
19100// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
19101// check whether the returned error was because http.StatusNotModified
19102// was returned.
19103func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, 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 := &Account{
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 a Merchant Center account. Any fields that are not provided are deleted from the resource.",
19135	//   "flatPath": "{merchantId}/accounts/{accountId}",
19136	//   "httpMethod": "PUT",
19137	//   "id": "content.accounts.update",
19138	//   "parameterOrder": [
19139	//     "merchantId",
19140	//     "accountId"
19141	//   ],
19142	//   "parameters": {
19143	//     "accountId": {
19144	//       "description": "The ID of the account.",
19145	//       "format": "uint64",
19146	//       "location": "path",
19147	//       "required": true,
19148	//       "type": "string"
19149	//     },
19150	//     "merchantId": {
19151	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
19152	//       "format": "uint64",
19153	//       "location": "path",
19154	//       "required": true,
19155	//       "type": "string"
19156	//     }
19157	//   },
19158	//   "path": "{merchantId}/accounts/{accountId}",
19159	//   "request": {
19160	//     "$ref": "Account"
19161	//   },
19162	//   "response": {
19163	//     "$ref": "Account"
19164	//   },
19165	//   "scopes": [
19166	//     "https://www.googleapis.com/auth/content"
19167	//   ]
19168	// }
19169
19170}
19171
19172// method id "content.accounts.updatelabels":
19173
19174type AccountsUpdatelabelsCall struct {
19175	s                           *APIService
19176	merchantId                  uint64
19177	accountId                   uint64
19178	accountsupdatelabelsrequest *AccountsUpdateLabelsRequest
19179	urlParams_                  gensupport.URLParams
19180	ctx_                        context.Context
19181	header_                     http.Header
19182}
19183
19184// Updatelabels: Updates labels that are assigned to the Merchant Center
19185// account by CSS user.
19186//
19187// - accountId: The ID of the account whose labels are updated.
19188// - merchantId: The ID of the managing account.
19189func (r *AccountsService) Updatelabels(merchantId uint64, accountId uint64, accountsupdatelabelsrequest *AccountsUpdateLabelsRequest) *AccountsUpdatelabelsCall {
19190	c := &AccountsUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19191	c.merchantId = merchantId
19192	c.accountId = accountId
19193	c.accountsupdatelabelsrequest = accountsupdatelabelsrequest
19194	return c
19195}
19196
19197// Fields allows partial responses to be retrieved. See
19198// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19199// for more information.
19200func (c *AccountsUpdatelabelsCall) Fields(s ...googleapi.Field) *AccountsUpdatelabelsCall {
19201	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19202	return c
19203}
19204
19205// Context sets the context to be used in this call's Do method. Any
19206// pending HTTP request will be aborted if the provided context is
19207// canceled.
19208func (c *AccountsUpdatelabelsCall) Context(ctx context.Context) *AccountsUpdatelabelsCall {
19209	c.ctx_ = ctx
19210	return c
19211}
19212
19213// Header returns an http.Header that can be modified by the caller to
19214// add HTTP headers to the request.
19215func (c *AccountsUpdatelabelsCall) Header() http.Header {
19216	if c.header_ == nil {
19217		c.header_ = make(http.Header)
19218	}
19219	return c.header_
19220}
19221
19222func (c *AccountsUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
19223	reqHeaders := make(http.Header)
19224	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19225	for k, v := range c.header_ {
19226		reqHeaders[k] = v
19227	}
19228	reqHeaders.Set("User-Agent", c.s.userAgent())
19229	var body io.Reader = nil
19230	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountsupdatelabelsrequest)
19231	if err != nil {
19232		return nil, err
19233	}
19234	reqHeaders.Set("Content-Type", "application/json")
19235	c.urlParams_.Set("alt", alt)
19236	c.urlParams_.Set("prettyPrint", "false")
19237	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/updatelabels")
19238	urls += "?" + c.urlParams_.Encode()
19239	req, err := http.NewRequest("POST", urls, body)
19240	if err != nil {
19241		return nil, err
19242	}
19243	req.Header = reqHeaders
19244	googleapi.Expand(req.URL, map[string]string{
19245		"merchantId": strconv.FormatUint(c.merchantId, 10),
19246		"accountId":  strconv.FormatUint(c.accountId, 10),
19247	})
19248	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19249}
19250
19251// Do executes the "content.accounts.updatelabels" call.
19252// Exactly one of *AccountsUpdateLabelsResponse or error will be
19253// non-nil. Any non-2xx status code is an error. Response headers are in
19254// either *AccountsUpdateLabelsResponse.ServerResponse.Header or (if a
19255// response was returned at all) in error.(*googleapi.Error).Header. Use
19256// googleapi.IsNotModified to check whether the returned error was
19257// because http.StatusNotModified was returned.
19258func (c *AccountsUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*AccountsUpdateLabelsResponse, error) {
19259	gensupport.SetOptions(c.urlParams_, opts...)
19260	res, err := c.doRequest("json")
19261	if res != nil && res.StatusCode == http.StatusNotModified {
19262		if res.Body != nil {
19263			res.Body.Close()
19264		}
19265		return nil, &googleapi.Error{
19266			Code:   res.StatusCode,
19267			Header: res.Header,
19268		}
19269	}
19270	if err != nil {
19271		return nil, err
19272	}
19273	defer googleapi.CloseBody(res)
19274	if err := googleapi.CheckResponse(res); err != nil {
19275		return nil, err
19276	}
19277	ret := &AccountsUpdateLabelsResponse{
19278		ServerResponse: googleapi.ServerResponse{
19279			Header:         res.Header,
19280			HTTPStatusCode: res.StatusCode,
19281		},
19282	}
19283	target := &ret
19284	if err := gensupport.DecodeResponse(target, res); err != nil {
19285		return nil, err
19286	}
19287	return ret, nil
19288	// {
19289	//   "description": "Updates labels that are assigned to the Merchant Center account by CSS user.",
19290	//   "flatPath": "{merchantId}/accounts/{accountId}/updatelabels",
19291	//   "httpMethod": "POST",
19292	//   "id": "content.accounts.updatelabels",
19293	//   "parameterOrder": [
19294	//     "merchantId",
19295	//     "accountId"
19296	//   ],
19297	//   "parameters": {
19298	//     "accountId": {
19299	//       "description": "The ID of the account whose labels are updated.",
19300	//       "format": "uint64",
19301	//       "location": "path",
19302	//       "required": true,
19303	//       "type": "string"
19304	//     },
19305	//     "merchantId": {
19306	//       "description": "The ID of the managing account.",
19307	//       "format": "uint64",
19308	//       "location": "path",
19309	//       "required": true,
19310	//       "type": "string"
19311	//     }
19312	//   },
19313	//   "path": "{merchantId}/accounts/{accountId}/updatelabels",
19314	//   "request": {
19315	//     "$ref": "AccountsUpdateLabelsRequest"
19316	//   },
19317	//   "response": {
19318	//     "$ref": "AccountsUpdateLabelsResponse"
19319	//   },
19320	//   "scopes": [
19321	//     "https://www.googleapis.com/auth/content"
19322	//   ]
19323	// }
19324
19325}
19326
19327// method id "content.accounts.verifyphonenumber":
19328
19329type AccountsVerifyphonenumberCall struct {
19330	s                        *APIService
19331	merchantId               int64
19332	accountId                int64
19333	verifyphonenumberrequest *VerifyPhoneNumberRequest
19334	urlParams_               gensupport.URLParams
19335	ctx_                     context.Context
19336	header_                  http.Header
19337}
19338
19339// Verifyphonenumber: Validates verification code to verify phone number
19340// for the account. If successful this will overwrite the value of
19341// `accounts.businessinformation.phoneNumber`. Only verified phone
19342// number will replace an existing verified phone number.
19343//
19344// - accountId: The ID of the account.
19345// - merchantId: The ID of the managing account. If this parameter is
19346//   not the same as accountId, then this account must be a multi-client
19347//   account and accountId must be the ID of a sub-account of this
19348//   account.
19349func (r *AccountsService) Verifyphonenumber(merchantId int64, accountId int64, verifyphonenumberrequest *VerifyPhoneNumberRequest) *AccountsVerifyphonenumberCall {
19350	c := &AccountsVerifyphonenumberCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19351	c.merchantId = merchantId
19352	c.accountId = accountId
19353	c.verifyphonenumberrequest = verifyphonenumberrequest
19354	return c
19355}
19356
19357// Fields allows partial responses to be retrieved. See
19358// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19359// for more information.
19360func (c *AccountsVerifyphonenumberCall) Fields(s ...googleapi.Field) *AccountsVerifyphonenumberCall {
19361	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19362	return c
19363}
19364
19365// Context sets the context to be used in this call's Do method. Any
19366// pending HTTP request will be aborted if the provided context is
19367// canceled.
19368func (c *AccountsVerifyphonenumberCall) Context(ctx context.Context) *AccountsVerifyphonenumberCall {
19369	c.ctx_ = ctx
19370	return c
19371}
19372
19373// Header returns an http.Header that can be modified by the caller to
19374// add HTTP headers to the request.
19375func (c *AccountsVerifyphonenumberCall) Header() http.Header {
19376	if c.header_ == nil {
19377		c.header_ = make(http.Header)
19378	}
19379	return c.header_
19380}
19381
19382func (c *AccountsVerifyphonenumberCall) doRequest(alt string) (*http.Response, error) {
19383	reqHeaders := make(http.Header)
19384	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19385	for k, v := range c.header_ {
19386		reqHeaders[k] = v
19387	}
19388	reqHeaders.Set("User-Agent", c.s.userAgent())
19389	var body io.Reader = nil
19390	body, err := googleapi.WithoutDataWrapper.JSONReader(c.verifyphonenumberrequest)
19391	if err != nil {
19392		return nil, err
19393	}
19394	reqHeaders.Set("Content-Type", "application/json")
19395	c.urlParams_.Set("alt", alt)
19396	c.urlParams_.Set("prettyPrint", "false")
19397	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/verifyphonenumber")
19398	urls += "?" + c.urlParams_.Encode()
19399	req, err := http.NewRequest("POST", urls, body)
19400	if err != nil {
19401		return nil, err
19402	}
19403	req.Header = reqHeaders
19404	googleapi.Expand(req.URL, map[string]string{
19405		"merchantId": strconv.FormatInt(c.merchantId, 10),
19406		"accountId":  strconv.FormatInt(c.accountId, 10),
19407	})
19408	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19409}
19410
19411// Do executes the "content.accounts.verifyphonenumber" call.
19412// Exactly one of *VerifyPhoneNumberResponse or error will be non-nil.
19413// Any non-2xx status code is an error. Response headers are in either
19414// *VerifyPhoneNumberResponse.ServerResponse.Header or (if a response
19415// was returned at all) in error.(*googleapi.Error).Header. Use
19416// googleapi.IsNotModified to check whether the returned error was
19417// because http.StatusNotModified was returned.
19418func (c *AccountsVerifyphonenumberCall) Do(opts ...googleapi.CallOption) (*VerifyPhoneNumberResponse, error) {
19419	gensupport.SetOptions(c.urlParams_, opts...)
19420	res, err := c.doRequest("json")
19421	if res != nil && res.StatusCode == http.StatusNotModified {
19422		if res.Body != nil {
19423			res.Body.Close()
19424		}
19425		return nil, &googleapi.Error{
19426			Code:   res.StatusCode,
19427			Header: res.Header,
19428		}
19429	}
19430	if err != nil {
19431		return nil, err
19432	}
19433	defer googleapi.CloseBody(res)
19434	if err := googleapi.CheckResponse(res); err != nil {
19435		return nil, err
19436	}
19437	ret := &VerifyPhoneNumberResponse{
19438		ServerResponse: googleapi.ServerResponse{
19439			Header:         res.Header,
19440			HTTPStatusCode: res.StatusCode,
19441		},
19442	}
19443	target := &ret
19444	if err := gensupport.DecodeResponse(target, res); err != nil {
19445		return nil, err
19446	}
19447	return ret, nil
19448	// {
19449	//   "description": "Validates verification code to verify phone number for the account. If successful this will overwrite the value of `accounts.businessinformation.phoneNumber`. Only verified phone number will replace an existing verified phone number.",
19450	//   "flatPath": "{merchantId}/accounts/{accountId}/verifyphonenumber",
19451	//   "httpMethod": "POST",
19452	//   "id": "content.accounts.verifyphonenumber",
19453	//   "parameterOrder": [
19454	//     "merchantId",
19455	//     "accountId"
19456	//   ],
19457	//   "parameters": {
19458	//     "accountId": {
19459	//       "description": "Required. The ID of the account.",
19460	//       "format": "int64",
19461	//       "location": "path",
19462	//       "required": true,
19463	//       "type": "string"
19464	//     },
19465	//     "merchantId": {
19466	//       "description": "Required. The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.",
19467	//       "format": "int64",
19468	//       "location": "path",
19469	//       "required": true,
19470	//       "type": "string"
19471	//     }
19472	//   },
19473	//   "path": "{merchantId}/accounts/{accountId}/verifyphonenumber",
19474	//   "request": {
19475	//     "$ref": "VerifyPhoneNumberRequest"
19476	//   },
19477	//   "response": {
19478	//     "$ref": "VerifyPhoneNumberResponse"
19479	//   },
19480	//   "scopes": [
19481	//     "https://www.googleapis.com/auth/content"
19482	//   ]
19483	// }
19484
19485}
19486
19487// method id "content.accounts.credentials.create":
19488
19489type AccountsCredentialsCreateCall struct {
19490	s                  *APIService
19491	accountId          int64
19492	accountcredentials *AccountCredentials
19493	urlParams_         gensupport.URLParams
19494	ctx_               context.Context
19495	header_            http.Header
19496}
19497
19498// Create: Uploads credentials for the Merchant Center account. If
19499// credentials already exist for this Merchant Center account and
19500// purpose, this method updates them.
19501//
19502// - accountId: The merchant id of the account these credentials belong
19503//   to.
19504func (r *AccountsCredentialsService) Create(accountId int64, accountcredentials *AccountCredentials) *AccountsCredentialsCreateCall {
19505	c := &AccountsCredentialsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19506	c.accountId = accountId
19507	c.accountcredentials = accountcredentials
19508	return c
19509}
19510
19511// Fields allows partial responses to be retrieved. See
19512// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19513// for more information.
19514func (c *AccountsCredentialsCreateCall) Fields(s ...googleapi.Field) *AccountsCredentialsCreateCall {
19515	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19516	return c
19517}
19518
19519// Context sets the context to be used in this call's Do method. Any
19520// pending HTTP request will be aborted if the provided context is
19521// canceled.
19522func (c *AccountsCredentialsCreateCall) Context(ctx context.Context) *AccountsCredentialsCreateCall {
19523	c.ctx_ = ctx
19524	return c
19525}
19526
19527// Header returns an http.Header that can be modified by the caller to
19528// add HTTP headers to the request.
19529func (c *AccountsCredentialsCreateCall) Header() http.Header {
19530	if c.header_ == nil {
19531		c.header_ = make(http.Header)
19532	}
19533	return c.header_
19534}
19535
19536func (c *AccountsCredentialsCreateCall) doRequest(alt string) (*http.Response, error) {
19537	reqHeaders := make(http.Header)
19538	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19539	for k, v := range c.header_ {
19540		reqHeaders[k] = v
19541	}
19542	reqHeaders.Set("User-Agent", c.s.userAgent())
19543	var body io.Reader = nil
19544	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountcredentials)
19545	if err != nil {
19546		return nil, err
19547	}
19548	reqHeaders.Set("Content-Type", "application/json")
19549	c.urlParams_.Set("alt", alt)
19550	c.urlParams_.Set("prettyPrint", "false")
19551	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/credentials")
19552	urls += "?" + c.urlParams_.Encode()
19553	req, err := http.NewRequest("POST", urls, body)
19554	if err != nil {
19555		return nil, err
19556	}
19557	req.Header = reqHeaders
19558	googleapi.Expand(req.URL, map[string]string{
19559		"accountId": strconv.FormatInt(c.accountId, 10),
19560	})
19561	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19562}
19563
19564// Do executes the "content.accounts.credentials.create" call.
19565// Exactly one of *AccountCredentials or error will be non-nil. Any
19566// non-2xx status code is an error. Response headers are in either
19567// *AccountCredentials.ServerResponse.Header or (if a response was
19568// returned at all) in error.(*googleapi.Error).Header. Use
19569// googleapi.IsNotModified to check whether the returned error was
19570// because http.StatusNotModified was returned.
19571func (c *AccountsCredentialsCreateCall) Do(opts ...googleapi.CallOption) (*AccountCredentials, error) {
19572	gensupport.SetOptions(c.urlParams_, opts...)
19573	res, err := c.doRequest("json")
19574	if res != nil && res.StatusCode == http.StatusNotModified {
19575		if res.Body != nil {
19576			res.Body.Close()
19577		}
19578		return nil, &googleapi.Error{
19579			Code:   res.StatusCode,
19580			Header: res.Header,
19581		}
19582	}
19583	if err != nil {
19584		return nil, err
19585	}
19586	defer googleapi.CloseBody(res)
19587	if err := googleapi.CheckResponse(res); err != nil {
19588		return nil, err
19589	}
19590	ret := &AccountCredentials{
19591		ServerResponse: googleapi.ServerResponse{
19592			Header:         res.Header,
19593			HTTPStatusCode: res.StatusCode,
19594		},
19595	}
19596	target := &ret
19597	if err := gensupport.DecodeResponse(target, res); err != nil {
19598		return nil, err
19599	}
19600	return ret, nil
19601	// {
19602	//   "description": "Uploads credentials for the Merchant Center account. If credentials already exist for this Merchant Center account and purpose, this method updates them.",
19603	//   "flatPath": "accounts/{accountId}/credentials",
19604	//   "httpMethod": "POST",
19605	//   "id": "content.accounts.credentials.create",
19606	//   "parameterOrder": [
19607	//     "accountId"
19608	//   ],
19609	//   "parameters": {
19610	//     "accountId": {
19611	//       "description": "Required. The merchant id of the account these credentials belong to.",
19612	//       "format": "int64",
19613	//       "location": "path",
19614	//       "required": true,
19615	//       "type": "string"
19616	//     }
19617	//   },
19618	//   "path": "accounts/{accountId}/credentials",
19619	//   "request": {
19620	//     "$ref": "AccountCredentials"
19621	//   },
19622	//   "response": {
19623	//     "$ref": "AccountCredentials"
19624	//   },
19625	//   "scopes": [
19626	//     "https://www.googleapis.com/auth/content"
19627	//   ]
19628	// }
19629
19630}
19631
19632// method id "content.accounts.labels.create":
19633
19634type AccountsLabelsCreateCall struct {
19635	s            *APIService
19636	accountId    int64
19637	accountlabel *AccountLabel
19638	urlParams_   gensupport.URLParams
19639	ctx_         context.Context
19640	header_      http.Header
19641}
19642
19643// Create: Creates a new label, not assigned to any account.
19644//
19645// - accountId: The id of the account this label belongs to.
19646func (r *AccountsLabelsService) Create(accountId int64, accountlabel *AccountLabel) *AccountsLabelsCreateCall {
19647	c := &AccountsLabelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19648	c.accountId = accountId
19649	c.accountlabel = accountlabel
19650	return c
19651}
19652
19653// Fields allows partial responses to be retrieved. See
19654// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19655// for more information.
19656func (c *AccountsLabelsCreateCall) Fields(s ...googleapi.Field) *AccountsLabelsCreateCall {
19657	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19658	return c
19659}
19660
19661// Context sets the context to be used in this call's Do method. Any
19662// pending HTTP request will be aborted if the provided context is
19663// canceled.
19664func (c *AccountsLabelsCreateCall) Context(ctx context.Context) *AccountsLabelsCreateCall {
19665	c.ctx_ = ctx
19666	return c
19667}
19668
19669// Header returns an http.Header that can be modified by the caller to
19670// add HTTP headers to the request.
19671func (c *AccountsLabelsCreateCall) Header() http.Header {
19672	if c.header_ == nil {
19673		c.header_ = make(http.Header)
19674	}
19675	return c.header_
19676}
19677
19678func (c *AccountsLabelsCreateCall) doRequest(alt string) (*http.Response, error) {
19679	reqHeaders := make(http.Header)
19680	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19681	for k, v := range c.header_ {
19682		reqHeaders[k] = v
19683	}
19684	reqHeaders.Set("User-Agent", c.s.userAgent())
19685	var body io.Reader = nil
19686	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
19687	if err != nil {
19688		return nil, err
19689	}
19690	reqHeaders.Set("Content-Type", "application/json")
19691	c.urlParams_.Set("alt", alt)
19692	c.urlParams_.Set("prettyPrint", "false")
19693	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels")
19694	urls += "?" + c.urlParams_.Encode()
19695	req, err := http.NewRequest("POST", urls, body)
19696	if err != nil {
19697		return nil, err
19698	}
19699	req.Header = reqHeaders
19700	googleapi.Expand(req.URL, map[string]string{
19701		"accountId": strconv.FormatInt(c.accountId, 10),
19702	})
19703	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19704}
19705
19706// Do executes the "content.accounts.labels.create" call.
19707// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
19708// status code is an error. Response headers are in either
19709// *AccountLabel.ServerResponse.Header or (if a response was returned at
19710// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19711// to check whether the returned error was because
19712// http.StatusNotModified was returned.
19713func (c *AccountsLabelsCreateCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
19714	gensupport.SetOptions(c.urlParams_, opts...)
19715	res, err := c.doRequest("json")
19716	if res != nil && res.StatusCode == http.StatusNotModified {
19717		if res.Body != nil {
19718			res.Body.Close()
19719		}
19720		return nil, &googleapi.Error{
19721			Code:   res.StatusCode,
19722			Header: res.Header,
19723		}
19724	}
19725	if err != nil {
19726		return nil, err
19727	}
19728	defer googleapi.CloseBody(res)
19729	if err := googleapi.CheckResponse(res); err != nil {
19730		return nil, err
19731	}
19732	ret := &AccountLabel{
19733		ServerResponse: googleapi.ServerResponse{
19734			Header:         res.Header,
19735			HTTPStatusCode: res.StatusCode,
19736		},
19737	}
19738	target := &ret
19739	if err := gensupport.DecodeResponse(target, res); err != nil {
19740		return nil, err
19741	}
19742	return ret, nil
19743	// {
19744	//   "description": "Creates a new label, not assigned to any account.",
19745	//   "flatPath": "accounts/{accountId}/labels",
19746	//   "httpMethod": "POST",
19747	//   "id": "content.accounts.labels.create",
19748	//   "parameterOrder": [
19749	//     "accountId"
19750	//   ],
19751	//   "parameters": {
19752	//     "accountId": {
19753	//       "description": "Required. The id of the account this label belongs to.",
19754	//       "format": "int64",
19755	//       "location": "path",
19756	//       "required": true,
19757	//       "type": "string"
19758	//     }
19759	//   },
19760	//   "path": "accounts/{accountId}/labels",
19761	//   "request": {
19762	//     "$ref": "AccountLabel"
19763	//   },
19764	//   "response": {
19765	//     "$ref": "AccountLabel"
19766	//   },
19767	//   "scopes": [
19768	//     "https://www.googleapis.com/auth/content"
19769	//   ]
19770	// }
19771
19772}
19773
19774// method id "content.accounts.labels.delete":
19775
19776type AccountsLabelsDeleteCall struct {
19777	s          *APIService
19778	accountId  int64
19779	labelId    int64
19780	urlParams_ gensupport.URLParams
19781	ctx_       context.Context
19782	header_    http.Header
19783}
19784
19785// Delete: Deletes a label and removes it from all accounts to which it
19786// was assigned.
19787//
19788// - accountId: The id of the account that owns the label.
19789// - labelId: The id of the label to delete.
19790func (r *AccountsLabelsService) Delete(accountId int64, labelId int64) *AccountsLabelsDeleteCall {
19791	c := &AccountsLabelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19792	c.accountId = accountId
19793	c.labelId = labelId
19794	return c
19795}
19796
19797// Fields allows partial responses to be retrieved. See
19798// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19799// for more information.
19800func (c *AccountsLabelsDeleteCall) Fields(s ...googleapi.Field) *AccountsLabelsDeleteCall {
19801	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19802	return c
19803}
19804
19805// Context sets the context to be used in this call's Do method. Any
19806// pending HTTP request will be aborted if the provided context is
19807// canceled.
19808func (c *AccountsLabelsDeleteCall) Context(ctx context.Context) *AccountsLabelsDeleteCall {
19809	c.ctx_ = ctx
19810	return c
19811}
19812
19813// Header returns an http.Header that can be modified by the caller to
19814// add HTTP headers to the request.
19815func (c *AccountsLabelsDeleteCall) Header() http.Header {
19816	if c.header_ == nil {
19817		c.header_ = make(http.Header)
19818	}
19819	return c.header_
19820}
19821
19822func (c *AccountsLabelsDeleteCall) doRequest(alt string) (*http.Response, error) {
19823	reqHeaders := make(http.Header)
19824	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19825	for k, v := range c.header_ {
19826		reqHeaders[k] = v
19827	}
19828	reqHeaders.Set("User-Agent", c.s.userAgent())
19829	var body io.Reader = nil
19830	c.urlParams_.Set("alt", alt)
19831	c.urlParams_.Set("prettyPrint", "false")
19832	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels/{labelId}")
19833	urls += "?" + c.urlParams_.Encode()
19834	req, err := http.NewRequest("DELETE", urls, body)
19835	if err != nil {
19836		return nil, err
19837	}
19838	req.Header = reqHeaders
19839	googleapi.Expand(req.URL, map[string]string{
19840		"accountId": strconv.FormatInt(c.accountId, 10),
19841		"labelId":   strconv.FormatInt(c.labelId, 10),
19842	})
19843	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19844}
19845
19846// Do executes the "content.accounts.labels.delete" call.
19847func (c *AccountsLabelsDeleteCall) Do(opts ...googleapi.CallOption) error {
19848	gensupport.SetOptions(c.urlParams_, opts...)
19849	res, err := c.doRequest("json")
19850	if err != nil {
19851		return err
19852	}
19853	defer googleapi.CloseBody(res)
19854	if err := googleapi.CheckResponse(res); err != nil {
19855		return err
19856	}
19857	return nil
19858	// {
19859	//   "description": "Deletes a label and removes it from all accounts to which it was assigned.",
19860	//   "flatPath": "accounts/{accountId}/labels/{labelId}",
19861	//   "httpMethod": "DELETE",
19862	//   "id": "content.accounts.labels.delete",
19863	//   "parameterOrder": [
19864	//     "accountId",
19865	//     "labelId"
19866	//   ],
19867	//   "parameters": {
19868	//     "accountId": {
19869	//       "description": "Required. The id of the account that owns the label.",
19870	//       "format": "int64",
19871	//       "location": "path",
19872	//       "required": true,
19873	//       "type": "string"
19874	//     },
19875	//     "labelId": {
19876	//       "description": "Required. The id of the label to delete.",
19877	//       "format": "int64",
19878	//       "location": "path",
19879	//       "required": true,
19880	//       "type": "string"
19881	//     }
19882	//   },
19883	//   "path": "accounts/{accountId}/labels/{labelId}",
19884	//   "scopes": [
19885	//     "https://www.googleapis.com/auth/content"
19886	//   ]
19887	// }
19888
19889}
19890
19891// method id "content.accounts.labels.list":
19892
19893type AccountsLabelsListCall struct {
19894	s            *APIService
19895	accountId    int64
19896	urlParams_   gensupport.URLParams
19897	ifNoneMatch_ string
19898	ctx_         context.Context
19899	header_      http.Header
19900}
19901
19902// List: Lists the labels assigned to an account.
19903//
19904// - accountId: The account id for whose labels are to be listed.
19905func (r *AccountsLabelsService) List(accountId int64) *AccountsLabelsListCall {
19906	c := &AccountsLabelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19907	c.accountId = accountId
19908	return c
19909}
19910
19911// PageSize sets the optional parameter "pageSize": The maximum number
19912// of labels to return. The service may return fewer than this value. If
19913// unspecified, at most 50 labels will be returned. The maximum value is
19914// 1000; values above 1000 will be coerced to 1000.
19915func (c *AccountsLabelsListCall) PageSize(pageSize int64) *AccountsLabelsListCall {
19916	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
19917	return c
19918}
19919
19920// PageToken sets the optional parameter "pageToken": A page token,
19921// received from a previous `ListAccountLabels` call. Provide this to
19922// retrieve the subsequent page. When paginating, all other parameters
19923// provided to `ListAccountLabels` must match the call that provided the
19924// page token.
19925func (c *AccountsLabelsListCall) PageToken(pageToken string) *AccountsLabelsListCall {
19926	c.urlParams_.Set("pageToken", pageToken)
19927	return c
19928}
19929
19930// Fields allows partial responses to be retrieved. See
19931// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19932// for more information.
19933func (c *AccountsLabelsListCall) Fields(s ...googleapi.Field) *AccountsLabelsListCall {
19934	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19935	return c
19936}
19937
19938// IfNoneMatch sets the optional parameter which makes the operation
19939// fail if the object's ETag matches the given value. This is useful for
19940// getting updates only after the object has changed since the last
19941// request. Use googleapi.IsNotModified to check whether the response
19942// error from Do is the result of In-None-Match.
19943func (c *AccountsLabelsListCall) IfNoneMatch(entityTag string) *AccountsLabelsListCall {
19944	c.ifNoneMatch_ = entityTag
19945	return c
19946}
19947
19948// Context sets the context to be used in this call's Do method. Any
19949// pending HTTP request will be aborted if the provided context is
19950// canceled.
19951func (c *AccountsLabelsListCall) Context(ctx context.Context) *AccountsLabelsListCall {
19952	c.ctx_ = ctx
19953	return c
19954}
19955
19956// Header returns an http.Header that can be modified by the caller to
19957// add HTTP headers to the request.
19958func (c *AccountsLabelsListCall) Header() http.Header {
19959	if c.header_ == nil {
19960		c.header_ = make(http.Header)
19961	}
19962	return c.header_
19963}
19964
19965func (c *AccountsLabelsListCall) doRequest(alt string) (*http.Response, error) {
19966	reqHeaders := make(http.Header)
19967	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19968	for k, v := range c.header_ {
19969		reqHeaders[k] = v
19970	}
19971	reqHeaders.Set("User-Agent", c.s.userAgent())
19972	if c.ifNoneMatch_ != "" {
19973		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19974	}
19975	var body io.Reader = nil
19976	c.urlParams_.Set("alt", alt)
19977	c.urlParams_.Set("prettyPrint", "false")
19978	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels")
19979	urls += "?" + c.urlParams_.Encode()
19980	req, err := http.NewRequest("GET", urls, body)
19981	if err != nil {
19982		return nil, err
19983	}
19984	req.Header = reqHeaders
19985	googleapi.Expand(req.URL, map[string]string{
19986		"accountId": strconv.FormatInt(c.accountId, 10),
19987	})
19988	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19989}
19990
19991// Do executes the "content.accounts.labels.list" call.
19992// Exactly one of *ListAccountLabelsResponse or error will be non-nil.
19993// Any non-2xx status code is an error. Response headers are in either
19994// *ListAccountLabelsResponse.ServerResponse.Header or (if a response
19995// was returned at all) in error.(*googleapi.Error).Header. Use
19996// googleapi.IsNotModified to check whether the returned error was
19997// because http.StatusNotModified was returned.
19998func (c *AccountsLabelsListCall) Do(opts ...googleapi.CallOption) (*ListAccountLabelsResponse, error) {
19999	gensupport.SetOptions(c.urlParams_, opts...)
20000	res, err := c.doRequest("json")
20001	if res != nil && res.StatusCode == http.StatusNotModified {
20002		if res.Body != nil {
20003			res.Body.Close()
20004		}
20005		return nil, &googleapi.Error{
20006			Code:   res.StatusCode,
20007			Header: res.Header,
20008		}
20009	}
20010	if err != nil {
20011		return nil, err
20012	}
20013	defer googleapi.CloseBody(res)
20014	if err := googleapi.CheckResponse(res); err != nil {
20015		return nil, err
20016	}
20017	ret := &ListAccountLabelsResponse{
20018		ServerResponse: googleapi.ServerResponse{
20019			Header:         res.Header,
20020			HTTPStatusCode: res.StatusCode,
20021		},
20022	}
20023	target := &ret
20024	if err := gensupport.DecodeResponse(target, res); err != nil {
20025		return nil, err
20026	}
20027	return ret, nil
20028	// {
20029	//   "description": "Lists the labels assigned to an account.",
20030	//   "flatPath": "accounts/{accountId}/labels",
20031	//   "httpMethod": "GET",
20032	//   "id": "content.accounts.labels.list",
20033	//   "parameterOrder": [
20034	//     "accountId"
20035	//   ],
20036	//   "parameters": {
20037	//     "accountId": {
20038	//       "description": "Required. The account id for whose labels are to be listed.",
20039	//       "format": "int64",
20040	//       "location": "path",
20041	//       "required": true,
20042	//       "type": "string"
20043	//     },
20044	//     "pageSize": {
20045	//       "description": "The maximum number of labels to return. The service may return fewer than this value. If unspecified, at most 50 labels will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
20046	//       "format": "int32",
20047	//       "location": "query",
20048	//       "type": "integer"
20049	//     },
20050	//     "pageToken": {
20051	//       "description": "A page token, received from a previous `ListAccountLabels` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountLabels` must match the call that provided the page token.",
20052	//       "location": "query",
20053	//       "type": "string"
20054	//     }
20055	//   },
20056	//   "path": "accounts/{accountId}/labels",
20057	//   "response": {
20058	//     "$ref": "ListAccountLabelsResponse"
20059	//   },
20060	//   "scopes": [
20061	//     "https://www.googleapis.com/auth/content"
20062	//   ]
20063	// }
20064
20065}
20066
20067// Pages invokes f for each page of results.
20068// A non-nil error returned from f will halt the iteration.
20069// The provided context supersedes any context provided to the Context method.
20070func (c *AccountsLabelsListCall) Pages(ctx context.Context, f func(*ListAccountLabelsResponse) error) error {
20071	c.ctx_ = ctx
20072	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20073	for {
20074		x, err := c.Do()
20075		if err != nil {
20076			return err
20077		}
20078		if err := f(x); err != nil {
20079			return err
20080		}
20081		if x.NextPageToken == "" {
20082			return nil
20083		}
20084		c.PageToken(x.NextPageToken)
20085	}
20086}
20087
20088// method id "content.accounts.labels.patch":
20089
20090type AccountsLabelsPatchCall struct {
20091	s            *APIService
20092	accountId    int64
20093	labelId      int64
20094	accountlabel *AccountLabel
20095	urlParams_   gensupport.URLParams
20096	ctx_         context.Context
20097	header_      http.Header
20098}
20099
20100// Patch: Updates a label.
20101//
20102// - accountId: The id of the account this label belongs to.
20103// - labelId: The id of the label to update.
20104func (r *AccountsLabelsService) Patch(accountId int64, labelId int64, accountlabel *AccountLabel) *AccountsLabelsPatchCall {
20105	c := &AccountsLabelsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20106	c.accountId = accountId
20107	c.labelId = labelId
20108	c.accountlabel = accountlabel
20109	return c
20110}
20111
20112// Fields allows partial responses to be retrieved. See
20113// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20114// for more information.
20115func (c *AccountsLabelsPatchCall) Fields(s ...googleapi.Field) *AccountsLabelsPatchCall {
20116	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20117	return c
20118}
20119
20120// Context sets the context to be used in this call's Do method. Any
20121// pending HTTP request will be aborted if the provided context is
20122// canceled.
20123func (c *AccountsLabelsPatchCall) Context(ctx context.Context) *AccountsLabelsPatchCall {
20124	c.ctx_ = ctx
20125	return c
20126}
20127
20128// Header returns an http.Header that can be modified by the caller to
20129// add HTTP headers to the request.
20130func (c *AccountsLabelsPatchCall) Header() http.Header {
20131	if c.header_ == nil {
20132		c.header_ = make(http.Header)
20133	}
20134	return c.header_
20135}
20136
20137func (c *AccountsLabelsPatchCall) doRequest(alt string) (*http.Response, error) {
20138	reqHeaders := make(http.Header)
20139	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20140	for k, v := range c.header_ {
20141		reqHeaders[k] = v
20142	}
20143	reqHeaders.Set("User-Agent", c.s.userAgent())
20144	var body io.Reader = nil
20145	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
20146	if err != nil {
20147		return nil, err
20148	}
20149	reqHeaders.Set("Content-Type", "application/json")
20150	c.urlParams_.Set("alt", alt)
20151	c.urlParams_.Set("prettyPrint", "false")
20152	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels/{labelId}")
20153	urls += "?" + c.urlParams_.Encode()
20154	req, err := http.NewRequest("PATCH", urls, body)
20155	if err != nil {
20156		return nil, err
20157	}
20158	req.Header = reqHeaders
20159	googleapi.Expand(req.URL, map[string]string{
20160		"accountId": strconv.FormatInt(c.accountId, 10),
20161		"labelId":   strconv.FormatInt(c.labelId, 10),
20162	})
20163	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20164}
20165
20166// Do executes the "content.accounts.labels.patch" call.
20167// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
20168// status code is an error. Response headers are in either
20169// *AccountLabel.ServerResponse.Header or (if a response was returned at
20170// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20171// to check whether the returned error was because
20172// http.StatusNotModified was returned.
20173func (c *AccountsLabelsPatchCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
20174	gensupport.SetOptions(c.urlParams_, opts...)
20175	res, err := c.doRequest("json")
20176	if res != nil && res.StatusCode == http.StatusNotModified {
20177		if res.Body != nil {
20178			res.Body.Close()
20179		}
20180		return nil, &googleapi.Error{
20181			Code:   res.StatusCode,
20182			Header: res.Header,
20183		}
20184	}
20185	if err != nil {
20186		return nil, err
20187	}
20188	defer googleapi.CloseBody(res)
20189	if err := googleapi.CheckResponse(res); err != nil {
20190		return nil, err
20191	}
20192	ret := &AccountLabel{
20193		ServerResponse: googleapi.ServerResponse{
20194			Header:         res.Header,
20195			HTTPStatusCode: res.StatusCode,
20196		},
20197	}
20198	target := &ret
20199	if err := gensupport.DecodeResponse(target, res); err != nil {
20200		return nil, err
20201	}
20202	return ret, nil
20203	// {
20204	//   "description": "Updates a label.",
20205	//   "flatPath": "accounts/{accountId}/labels/{labelId}",
20206	//   "httpMethod": "PATCH",
20207	//   "id": "content.accounts.labels.patch",
20208	//   "parameterOrder": [
20209	//     "accountId",
20210	//     "labelId"
20211	//   ],
20212	//   "parameters": {
20213	//     "accountId": {
20214	//       "description": "Required. The id of the account this label belongs to.",
20215	//       "format": "int64",
20216	//       "location": "path",
20217	//       "required": true,
20218	//       "type": "string"
20219	//     },
20220	//     "labelId": {
20221	//       "description": "Required. The id of the label to update.",
20222	//       "format": "int64",
20223	//       "location": "path",
20224	//       "required": true,
20225	//       "type": "string"
20226	//     }
20227	//   },
20228	//   "path": "accounts/{accountId}/labels/{labelId}",
20229	//   "request": {
20230	//     "$ref": "AccountLabel"
20231	//   },
20232	//   "response": {
20233	//     "$ref": "AccountLabel"
20234	//   },
20235	//   "scopes": [
20236	//     "https://www.googleapis.com/auth/content"
20237	//   ]
20238	// }
20239
20240}
20241
20242// method id "content.accounts.returncarrier.create":
20243
20244type AccountsReturncarrierCreateCall struct {
20245	s                    *APIService
20246	accountId            int64
20247	accountreturncarrier *AccountReturnCarrier
20248	urlParams_           gensupport.URLParams
20249	ctx_                 context.Context
20250	header_              http.Header
20251}
20252
20253// Create: Links return carrier to a merchant account.
20254//
20255// - accountId: The Merchant Center Account Id under which the Return
20256//   Carrier is to be linked.
20257func (r *AccountsReturncarrierService) Create(accountId int64, accountreturncarrier *AccountReturnCarrier) *AccountsReturncarrierCreateCall {
20258	c := &AccountsReturncarrierCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20259	c.accountId = accountId
20260	c.accountreturncarrier = accountreturncarrier
20261	return c
20262}
20263
20264// Fields allows partial responses to be retrieved. See
20265// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20266// for more information.
20267func (c *AccountsReturncarrierCreateCall) Fields(s ...googleapi.Field) *AccountsReturncarrierCreateCall {
20268	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20269	return c
20270}
20271
20272// Context sets the context to be used in this call's Do method. Any
20273// pending HTTP request will be aborted if the provided context is
20274// canceled.
20275func (c *AccountsReturncarrierCreateCall) Context(ctx context.Context) *AccountsReturncarrierCreateCall {
20276	c.ctx_ = ctx
20277	return c
20278}
20279
20280// Header returns an http.Header that can be modified by the caller to
20281// add HTTP headers to the request.
20282func (c *AccountsReturncarrierCreateCall) Header() http.Header {
20283	if c.header_ == nil {
20284		c.header_ = make(http.Header)
20285	}
20286	return c.header_
20287}
20288
20289func (c *AccountsReturncarrierCreateCall) doRequest(alt string) (*http.Response, error) {
20290	reqHeaders := make(http.Header)
20291	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20292	for k, v := range c.header_ {
20293		reqHeaders[k] = v
20294	}
20295	reqHeaders.Set("User-Agent", c.s.userAgent())
20296	var body io.Reader = nil
20297	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountreturncarrier)
20298	if err != nil {
20299		return nil, err
20300	}
20301	reqHeaders.Set("Content-Type", "application/json")
20302	c.urlParams_.Set("alt", alt)
20303	c.urlParams_.Set("prettyPrint", "false")
20304	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier")
20305	urls += "?" + c.urlParams_.Encode()
20306	req, err := http.NewRequest("POST", urls, body)
20307	if err != nil {
20308		return nil, err
20309	}
20310	req.Header = reqHeaders
20311	googleapi.Expand(req.URL, map[string]string{
20312		"accountId": strconv.FormatInt(c.accountId, 10),
20313	})
20314	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20315}
20316
20317// Do executes the "content.accounts.returncarrier.create" call.
20318// Exactly one of *AccountReturnCarrier or error will be non-nil. Any
20319// non-2xx status code is an error. Response headers are in either
20320// *AccountReturnCarrier.ServerResponse.Header or (if a response was
20321// returned at all) in error.(*googleapi.Error).Header. Use
20322// googleapi.IsNotModified to check whether the returned error was
20323// because http.StatusNotModified was returned.
20324func (c *AccountsReturncarrierCreateCall) Do(opts ...googleapi.CallOption) (*AccountReturnCarrier, error) {
20325	gensupport.SetOptions(c.urlParams_, opts...)
20326	res, err := c.doRequest("json")
20327	if res != nil && res.StatusCode == http.StatusNotModified {
20328		if res.Body != nil {
20329			res.Body.Close()
20330		}
20331		return nil, &googleapi.Error{
20332			Code:   res.StatusCode,
20333			Header: res.Header,
20334		}
20335	}
20336	if err != nil {
20337		return nil, err
20338	}
20339	defer googleapi.CloseBody(res)
20340	if err := googleapi.CheckResponse(res); err != nil {
20341		return nil, err
20342	}
20343	ret := &AccountReturnCarrier{
20344		ServerResponse: googleapi.ServerResponse{
20345			Header:         res.Header,
20346			HTTPStatusCode: res.StatusCode,
20347		},
20348	}
20349	target := &ret
20350	if err := gensupport.DecodeResponse(target, res); err != nil {
20351		return nil, err
20352	}
20353	return ret, nil
20354	// {
20355	//   "description": "Links return carrier to a merchant account.",
20356	//   "flatPath": "accounts/{accountId}/returncarrier",
20357	//   "httpMethod": "POST",
20358	//   "id": "content.accounts.returncarrier.create",
20359	//   "parameterOrder": [
20360	//     "accountId"
20361	//   ],
20362	//   "parameters": {
20363	//     "accountId": {
20364	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20365	//       "format": "int64",
20366	//       "location": "path",
20367	//       "required": true,
20368	//       "type": "string"
20369	//     }
20370	//   },
20371	//   "path": "accounts/{accountId}/returncarrier",
20372	//   "request": {
20373	//     "$ref": "AccountReturnCarrier"
20374	//   },
20375	//   "response": {
20376	//     "$ref": "AccountReturnCarrier"
20377	//   },
20378	//   "scopes": [
20379	//     "https://www.googleapis.com/auth/content"
20380	//   ]
20381	// }
20382
20383}
20384
20385// method id "content.accounts.returncarrier.delete":
20386
20387type AccountsReturncarrierDeleteCall struct {
20388	s                *APIService
20389	accountId        int64
20390	carrierAccountId int64
20391	urlParams_       gensupport.URLParams
20392	ctx_             context.Context
20393	header_          http.Header
20394}
20395
20396// Delete: Delete a return carrier in the merchant account.
20397//
20398// - accountId: The Merchant Center Account Id under which the Return
20399//   Carrier is to be linked.
20400// - carrierAccountId: The Google-provided unique carrier ID, used to
20401//   update the resource.
20402func (r *AccountsReturncarrierService) Delete(accountId int64, carrierAccountId int64) *AccountsReturncarrierDeleteCall {
20403	c := &AccountsReturncarrierDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20404	c.accountId = accountId
20405	c.carrierAccountId = carrierAccountId
20406	return c
20407}
20408
20409// Fields allows partial responses to be retrieved. See
20410// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20411// for more information.
20412func (c *AccountsReturncarrierDeleteCall) Fields(s ...googleapi.Field) *AccountsReturncarrierDeleteCall {
20413	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20414	return c
20415}
20416
20417// Context sets the context to be used in this call's Do method. Any
20418// pending HTTP request will be aborted if the provided context is
20419// canceled.
20420func (c *AccountsReturncarrierDeleteCall) Context(ctx context.Context) *AccountsReturncarrierDeleteCall {
20421	c.ctx_ = ctx
20422	return c
20423}
20424
20425// Header returns an http.Header that can be modified by the caller to
20426// add HTTP headers to the request.
20427func (c *AccountsReturncarrierDeleteCall) Header() http.Header {
20428	if c.header_ == nil {
20429		c.header_ = make(http.Header)
20430	}
20431	return c.header_
20432}
20433
20434func (c *AccountsReturncarrierDeleteCall) doRequest(alt string) (*http.Response, error) {
20435	reqHeaders := make(http.Header)
20436	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20437	for k, v := range c.header_ {
20438		reqHeaders[k] = v
20439	}
20440	reqHeaders.Set("User-Agent", c.s.userAgent())
20441	var body io.Reader = nil
20442	c.urlParams_.Set("alt", alt)
20443	c.urlParams_.Set("prettyPrint", "false")
20444	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier/{carrierAccountId}")
20445	urls += "?" + c.urlParams_.Encode()
20446	req, err := http.NewRequest("DELETE", urls, body)
20447	if err != nil {
20448		return nil, err
20449	}
20450	req.Header = reqHeaders
20451	googleapi.Expand(req.URL, map[string]string{
20452		"accountId":        strconv.FormatInt(c.accountId, 10),
20453		"carrierAccountId": strconv.FormatInt(c.carrierAccountId, 10),
20454	})
20455	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20456}
20457
20458// Do executes the "content.accounts.returncarrier.delete" call.
20459func (c *AccountsReturncarrierDeleteCall) Do(opts ...googleapi.CallOption) error {
20460	gensupport.SetOptions(c.urlParams_, opts...)
20461	res, err := c.doRequest("json")
20462	if err != nil {
20463		return err
20464	}
20465	defer googleapi.CloseBody(res)
20466	if err := googleapi.CheckResponse(res); err != nil {
20467		return err
20468	}
20469	return nil
20470	// {
20471	//   "description": "Delete a return carrier in the merchant account.",
20472	//   "flatPath": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20473	//   "httpMethod": "DELETE",
20474	//   "id": "content.accounts.returncarrier.delete",
20475	//   "parameterOrder": [
20476	//     "accountId",
20477	//     "carrierAccountId"
20478	//   ],
20479	//   "parameters": {
20480	//     "accountId": {
20481	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20482	//       "format": "int64",
20483	//       "location": "path",
20484	//       "required": true,
20485	//       "type": "string"
20486	//     },
20487	//     "carrierAccountId": {
20488	//       "description": "Required. The Google-provided unique carrier ID, used to update the resource.",
20489	//       "format": "int64",
20490	//       "location": "path",
20491	//       "required": true,
20492	//       "type": "string"
20493	//     }
20494	//   },
20495	//   "path": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20496	//   "scopes": [
20497	//     "https://www.googleapis.com/auth/content"
20498	//   ]
20499	// }
20500
20501}
20502
20503// method id "content.accounts.returncarrier.list":
20504
20505type AccountsReturncarrierListCall struct {
20506	s            *APIService
20507	accountId    int64
20508	urlParams_   gensupport.URLParams
20509	ifNoneMatch_ string
20510	ctx_         context.Context
20511	header_      http.Header
20512}
20513
20514// List: Lists available return carriers in the merchant account.
20515//
20516// - accountId: The Merchant Center Account Id under which the Return
20517//   Carrier is to be linked.
20518func (r *AccountsReturncarrierService) List(accountId int64) *AccountsReturncarrierListCall {
20519	c := &AccountsReturncarrierListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20520	c.accountId = accountId
20521	return c
20522}
20523
20524// Fields allows partial responses to be retrieved. See
20525// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20526// for more information.
20527func (c *AccountsReturncarrierListCall) Fields(s ...googleapi.Field) *AccountsReturncarrierListCall {
20528	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20529	return c
20530}
20531
20532// IfNoneMatch sets the optional parameter which makes the operation
20533// fail if the object's ETag matches the given value. This is useful for
20534// getting updates only after the object has changed since the last
20535// request. Use googleapi.IsNotModified to check whether the response
20536// error from Do is the result of In-None-Match.
20537func (c *AccountsReturncarrierListCall) IfNoneMatch(entityTag string) *AccountsReturncarrierListCall {
20538	c.ifNoneMatch_ = entityTag
20539	return c
20540}
20541
20542// Context sets the context to be used in this call's Do method. Any
20543// pending HTTP request will be aborted if the provided context is
20544// canceled.
20545func (c *AccountsReturncarrierListCall) Context(ctx context.Context) *AccountsReturncarrierListCall {
20546	c.ctx_ = ctx
20547	return c
20548}
20549
20550// Header returns an http.Header that can be modified by the caller to
20551// add HTTP headers to the request.
20552func (c *AccountsReturncarrierListCall) Header() http.Header {
20553	if c.header_ == nil {
20554		c.header_ = make(http.Header)
20555	}
20556	return c.header_
20557}
20558
20559func (c *AccountsReturncarrierListCall) doRequest(alt string) (*http.Response, error) {
20560	reqHeaders := make(http.Header)
20561	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20562	for k, v := range c.header_ {
20563		reqHeaders[k] = v
20564	}
20565	reqHeaders.Set("User-Agent", c.s.userAgent())
20566	if c.ifNoneMatch_ != "" {
20567		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20568	}
20569	var body io.Reader = nil
20570	c.urlParams_.Set("alt", alt)
20571	c.urlParams_.Set("prettyPrint", "false")
20572	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier")
20573	urls += "?" + c.urlParams_.Encode()
20574	req, err := http.NewRequest("GET", urls, body)
20575	if err != nil {
20576		return nil, err
20577	}
20578	req.Header = reqHeaders
20579	googleapi.Expand(req.URL, map[string]string{
20580		"accountId": strconv.FormatInt(c.accountId, 10),
20581	})
20582	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20583}
20584
20585// Do executes the "content.accounts.returncarrier.list" call.
20586// Exactly one of *ListAccountReturnCarrierResponse or error will be
20587// non-nil. Any non-2xx status code is an error. Response headers are in
20588// either *ListAccountReturnCarrierResponse.ServerResponse.Header or (if
20589// a response was returned at all) in error.(*googleapi.Error).Header.
20590// Use googleapi.IsNotModified to check whether the returned error was
20591// because http.StatusNotModified was returned.
20592func (c *AccountsReturncarrierListCall) Do(opts ...googleapi.CallOption) (*ListAccountReturnCarrierResponse, error) {
20593	gensupport.SetOptions(c.urlParams_, opts...)
20594	res, err := c.doRequest("json")
20595	if res != nil && res.StatusCode == http.StatusNotModified {
20596		if res.Body != nil {
20597			res.Body.Close()
20598		}
20599		return nil, &googleapi.Error{
20600			Code:   res.StatusCode,
20601			Header: res.Header,
20602		}
20603	}
20604	if err != nil {
20605		return nil, err
20606	}
20607	defer googleapi.CloseBody(res)
20608	if err := googleapi.CheckResponse(res); err != nil {
20609		return nil, err
20610	}
20611	ret := &ListAccountReturnCarrierResponse{
20612		ServerResponse: googleapi.ServerResponse{
20613			Header:         res.Header,
20614			HTTPStatusCode: res.StatusCode,
20615		},
20616	}
20617	target := &ret
20618	if err := gensupport.DecodeResponse(target, res); err != nil {
20619		return nil, err
20620	}
20621	return ret, nil
20622	// {
20623	//   "description": "Lists available return carriers in the merchant account.",
20624	//   "flatPath": "accounts/{accountId}/returncarrier",
20625	//   "httpMethod": "GET",
20626	//   "id": "content.accounts.returncarrier.list",
20627	//   "parameterOrder": [
20628	//     "accountId"
20629	//   ],
20630	//   "parameters": {
20631	//     "accountId": {
20632	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20633	//       "format": "int64",
20634	//       "location": "path",
20635	//       "required": true,
20636	//       "type": "string"
20637	//     }
20638	//   },
20639	//   "path": "accounts/{accountId}/returncarrier",
20640	//   "response": {
20641	//     "$ref": "ListAccountReturnCarrierResponse"
20642	//   },
20643	//   "scopes": [
20644	//     "https://www.googleapis.com/auth/content"
20645	//   ]
20646	// }
20647
20648}
20649
20650// method id "content.accounts.returncarrier.patch":
20651
20652type AccountsReturncarrierPatchCall struct {
20653	s                    *APIService
20654	accountId            int64
20655	carrierAccountId     int64
20656	accountreturncarrier *AccountReturnCarrier
20657	urlParams_           gensupport.URLParams
20658	ctx_                 context.Context
20659	header_              http.Header
20660}
20661
20662// Patch: Updates a return carrier in the merchant account.
20663//
20664// - accountId: The Merchant Center Account Id under which the Return
20665//   Carrier is to be linked.
20666// - carrierAccountId: The Google-provided unique carrier ID, used to
20667//   update the resource.
20668func (r *AccountsReturncarrierService) Patch(accountId int64, carrierAccountId int64, accountreturncarrier *AccountReturnCarrier) *AccountsReturncarrierPatchCall {
20669	c := &AccountsReturncarrierPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20670	c.accountId = accountId
20671	c.carrierAccountId = carrierAccountId
20672	c.accountreturncarrier = accountreturncarrier
20673	return c
20674}
20675
20676// Fields allows partial responses to be retrieved. See
20677// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20678// for more information.
20679func (c *AccountsReturncarrierPatchCall) Fields(s ...googleapi.Field) *AccountsReturncarrierPatchCall {
20680	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20681	return c
20682}
20683
20684// Context sets the context to be used in this call's Do method. Any
20685// pending HTTP request will be aborted if the provided context is
20686// canceled.
20687func (c *AccountsReturncarrierPatchCall) Context(ctx context.Context) *AccountsReturncarrierPatchCall {
20688	c.ctx_ = ctx
20689	return c
20690}
20691
20692// Header returns an http.Header that can be modified by the caller to
20693// add HTTP headers to the request.
20694func (c *AccountsReturncarrierPatchCall) Header() http.Header {
20695	if c.header_ == nil {
20696		c.header_ = make(http.Header)
20697	}
20698	return c.header_
20699}
20700
20701func (c *AccountsReturncarrierPatchCall) doRequest(alt string) (*http.Response, error) {
20702	reqHeaders := make(http.Header)
20703	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20704	for k, v := range c.header_ {
20705		reqHeaders[k] = v
20706	}
20707	reqHeaders.Set("User-Agent", c.s.userAgent())
20708	var body io.Reader = nil
20709	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountreturncarrier)
20710	if err != nil {
20711		return nil, err
20712	}
20713	reqHeaders.Set("Content-Type", "application/json")
20714	c.urlParams_.Set("alt", alt)
20715	c.urlParams_.Set("prettyPrint", "false")
20716	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier/{carrierAccountId}")
20717	urls += "?" + c.urlParams_.Encode()
20718	req, err := http.NewRequest("PATCH", urls, body)
20719	if err != nil {
20720		return nil, err
20721	}
20722	req.Header = reqHeaders
20723	googleapi.Expand(req.URL, map[string]string{
20724		"accountId":        strconv.FormatInt(c.accountId, 10),
20725		"carrierAccountId": strconv.FormatInt(c.carrierAccountId, 10),
20726	})
20727	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20728}
20729
20730// Do executes the "content.accounts.returncarrier.patch" call.
20731// Exactly one of *AccountReturnCarrier or error will be non-nil. Any
20732// non-2xx status code is an error. Response headers are in either
20733// *AccountReturnCarrier.ServerResponse.Header or (if a response was
20734// returned at all) in error.(*googleapi.Error).Header. Use
20735// googleapi.IsNotModified to check whether the returned error was
20736// because http.StatusNotModified was returned.
20737func (c *AccountsReturncarrierPatchCall) Do(opts ...googleapi.CallOption) (*AccountReturnCarrier, error) {
20738	gensupport.SetOptions(c.urlParams_, opts...)
20739	res, err := c.doRequest("json")
20740	if res != nil && res.StatusCode == http.StatusNotModified {
20741		if res.Body != nil {
20742			res.Body.Close()
20743		}
20744		return nil, &googleapi.Error{
20745			Code:   res.StatusCode,
20746			Header: res.Header,
20747		}
20748	}
20749	if err != nil {
20750		return nil, err
20751	}
20752	defer googleapi.CloseBody(res)
20753	if err := googleapi.CheckResponse(res); err != nil {
20754		return nil, err
20755	}
20756	ret := &AccountReturnCarrier{
20757		ServerResponse: googleapi.ServerResponse{
20758			Header:         res.Header,
20759			HTTPStatusCode: res.StatusCode,
20760		},
20761	}
20762	target := &ret
20763	if err := gensupport.DecodeResponse(target, res); err != nil {
20764		return nil, err
20765	}
20766	return ret, nil
20767	// {
20768	//   "description": "Updates a return carrier in the merchant account.",
20769	//   "flatPath": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20770	//   "httpMethod": "PATCH",
20771	//   "id": "content.accounts.returncarrier.patch",
20772	//   "parameterOrder": [
20773	//     "accountId",
20774	//     "carrierAccountId"
20775	//   ],
20776	//   "parameters": {
20777	//     "accountId": {
20778	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20779	//       "format": "int64",
20780	//       "location": "path",
20781	//       "required": true,
20782	//       "type": "string"
20783	//     },
20784	//     "carrierAccountId": {
20785	//       "description": "Required. The Google-provided unique carrier ID, used to update the resource.",
20786	//       "format": "int64",
20787	//       "location": "path",
20788	//       "required": true,
20789	//       "type": "string"
20790	//     }
20791	//   },
20792	//   "path": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20793	//   "request": {
20794	//     "$ref": "AccountReturnCarrier"
20795	//   },
20796	//   "response": {
20797	//     "$ref": "AccountReturnCarrier"
20798	//   },
20799	//   "scopes": [
20800	//     "https://www.googleapis.com/auth/content"
20801	//   ]
20802	// }
20803
20804}
20805
20806// method id "content.accountstatuses.custombatch":
20807
20808type AccountstatusesCustombatchCall struct {
20809	s                                 *APIService
20810	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
20811	urlParams_                        gensupport.URLParams
20812	ctx_                              context.Context
20813	header_                           http.Header
20814}
20815
20816// Custombatch: Retrieves multiple Merchant Center account statuses in a
20817// single request.
20818func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
20819	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20820	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
20821	return c
20822}
20823
20824// Fields allows partial responses to be retrieved. See
20825// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20826// for more information.
20827func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
20828	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20829	return c
20830}
20831
20832// Context sets the context to be used in this call's Do method. Any
20833// pending HTTP request will be aborted if the provided context is
20834// canceled.
20835func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
20836	c.ctx_ = ctx
20837	return c
20838}
20839
20840// Header returns an http.Header that can be modified by the caller to
20841// add HTTP headers to the request.
20842func (c *AccountstatusesCustombatchCall) Header() http.Header {
20843	if c.header_ == nil {
20844		c.header_ = make(http.Header)
20845	}
20846	return c.header_
20847}
20848
20849func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
20850	reqHeaders := make(http.Header)
20851	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20852	for k, v := range c.header_ {
20853		reqHeaders[k] = v
20854	}
20855	reqHeaders.Set("User-Agent", c.s.userAgent())
20856	var body io.Reader = nil
20857	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
20858	if err != nil {
20859		return nil, err
20860	}
20861	reqHeaders.Set("Content-Type", "application/json")
20862	c.urlParams_.Set("alt", alt)
20863	c.urlParams_.Set("prettyPrint", "false")
20864	urls := googleapi.ResolveRelative(c.s.BasePath, "accountstatuses/batch")
20865	urls += "?" + c.urlParams_.Encode()
20866	req, err := http.NewRequest("POST", urls, body)
20867	if err != nil {
20868		return nil, err
20869	}
20870	req.Header = reqHeaders
20871	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20872}
20873
20874// Do executes the "content.accountstatuses.custombatch" call.
20875// Exactly one of *AccountstatusesCustomBatchResponse or error will be
20876// non-nil. Any non-2xx status code is an error. Response headers are in
20877// either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
20878// (if a response was returned at all) in
20879// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20880// whether the returned error was because http.StatusNotModified was
20881// returned.
20882func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
20883	gensupport.SetOptions(c.urlParams_, opts...)
20884	res, err := c.doRequest("json")
20885	if res != nil && res.StatusCode == http.StatusNotModified {
20886		if res.Body != nil {
20887			res.Body.Close()
20888		}
20889		return nil, &googleapi.Error{
20890			Code:   res.StatusCode,
20891			Header: res.Header,
20892		}
20893	}
20894	if err != nil {
20895		return nil, err
20896	}
20897	defer googleapi.CloseBody(res)
20898	if err := googleapi.CheckResponse(res); err != nil {
20899		return nil, err
20900	}
20901	ret := &AccountstatusesCustomBatchResponse{
20902		ServerResponse: googleapi.ServerResponse{
20903			Header:         res.Header,
20904			HTTPStatusCode: res.StatusCode,
20905		},
20906	}
20907	target := &ret
20908	if err := gensupport.DecodeResponse(target, res); err != nil {
20909		return nil, err
20910	}
20911	return ret, nil
20912	// {
20913	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
20914	//   "flatPath": "accountstatuses/batch",
20915	//   "httpMethod": "POST",
20916	//   "id": "content.accountstatuses.custombatch",
20917	//   "parameterOrder": [],
20918	//   "parameters": {},
20919	//   "path": "accountstatuses/batch",
20920	//   "request": {
20921	//     "$ref": "AccountstatusesCustomBatchRequest"
20922	//   },
20923	//   "response": {
20924	//     "$ref": "AccountstatusesCustomBatchResponse"
20925	//   },
20926	//   "scopes": [
20927	//     "https://www.googleapis.com/auth/content"
20928	//   ]
20929	// }
20930
20931}
20932
20933// method id "content.accountstatuses.get":
20934
20935type AccountstatusesGetCall struct {
20936	s            *APIService
20937	merchantId   uint64
20938	accountId    uint64
20939	urlParams_   gensupport.URLParams
20940	ifNoneMatch_ string
20941	ctx_         context.Context
20942	header_      http.Header
20943}
20944
20945// Get: Retrieves the status of a Merchant Center account. No
20946// itemLevelIssues are returned for multi-client accounts.
20947//
20948// - accountId: The ID of the account.
20949// - merchantId: The ID of the managing account. If this parameter is
20950//   not the same as accountId, then this account must be a multi-client
20951//   account and `accountId` must be the ID of a sub-account of this
20952//   account.
20953func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
20954	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20955	c.merchantId = merchantId
20956	c.accountId = accountId
20957	return c
20958}
20959
20960// Destinations sets the optional parameter "destinations": If set, only
20961// issues for the specified destinations are returned, otherwise only
20962// issues for the Shopping destination.
20963func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
20964	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
20965	return c
20966}
20967
20968// Fields allows partial responses to be retrieved. See
20969// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20970// for more information.
20971func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
20972	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20973	return c
20974}
20975
20976// IfNoneMatch sets the optional parameter which makes the operation
20977// fail if the object's ETag matches the given value. This is useful for
20978// getting updates only after the object has changed since the last
20979// request. Use googleapi.IsNotModified to check whether the response
20980// error from Do is the result of In-None-Match.
20981func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
20982	c.ifNoneMatch_ = entityTag
20983	return c
20984}
20985
20986// Context sets the context to be used in this call's Do method. Any
20987// pending HTTP request will be aborted if the provided context is
20988// canceled.
20989func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
20990	c.ctx_ = ctx
20991	return c
20992}
20993
20994// Header returns an http.Header that can be modified by the caller to
20995// add HTTP headers to the request.
20996func (c *AccountstatusesGetCall) Header() http.Header {
20997	if c.header_ == nil {
20998		c.header_ = make(http.Header)
20999	}
21000	return c.header_
21001}
21002
21003func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
21004	reqHeaders := make(http.Header)
21005	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21006	for k, v := range c.header_ {
21007		reqHeaders[k] = v
21008	}
21009	reqHeaders.Set("User-Agent", c.s.userAgent())
21010	if c.ifNoneMatch_ != "" {
21011		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21012	}
21013	var body io.Reader = nil
21014	c.urlParams_.Set("alt", alt)
21015	c.urlParams_.Set("prettyPrint", "false")
21016	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses/{accountId}")
21017	urls += "?" + c.urlParams_.Encode()
21018	req, err := http.NewRequest("GET", urls, body)
21019	if err != nil {
21020		return nil, err
21021	}
21022	req.Header = reqHeaders
21023	googleapi.Expand(req.URL, map[string]string{
21024		"merchantId": strconv.FormatUint(c.merchantId, 10),
21025		"accountId":  strconv.FormatUint(c.accountId, 10),
21026	})
21027	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21028}
21029
21030// Do executes the "content.accountstatuses.get" call.
21031// Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
21032// status code is an error. Response headers are in either
21033// *AccountStatus.ServerResponse.Header or (if a response was returned
21034// at all) in error.(*googleapi.Error).Header. Use
21035// googleapi.IsNotModified to check whether the returned error was
21036// because http.StatusNotModified was returned.
21037func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
21038	gensupport.SetOptions(c.urlParams_, opts...)
21039	res, err := c.doRequest("json")
21040	if res != nil && res.StatusCode == http.StatusNotModified {
21041		if res.Body != nil {
21042			res.Body.Close()
21043		}
21044		return nil, &googleapi.Error{
21045			Code:   res.StatusCode,
21046			Header: res.Header,
21047		}
21048	}
21049	if err != nil {
21050		return nil, err
21051	}
21052	defer googleapi.CloseBody(res)
21053	if err := googleapi.CheckResponse(res); err != nil {
21054		return nil, err
21055	}
21056	ret := &AccountStatus{
21057		ServerResponse: googleapi.ServerResponse{
21058			Header:         res.Header,
21059			HTTPStatusCode: res.StatusCode,
21060		},
21061	}
21062	target := &ret
21063	if err := gensupport.DecodeResponse(target, res); err != nil {
21064		return nil, err
21065	}
21066	return ret, nil
21067	// {
21068	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
21069	//   "flatPath": "{merchantId}/accountstatuses/{accountId}",
21070	//   "httpMethod": "GET",
21071	//   "id": "content.accountstatuses.get",
21072	//   "parameterOrder": [
21073	//     "merchantId",
21074	//     "accountId"
21075	//   ],
21076	//   "parameters": {
21077	//     "accountId": {
21078	//       "description": "The ID of the account.",
21079	//       "format": "uint64",
21080	//       "location": "path",
21081	//       "required": true,
21082	//       "type": "string"
21083	//     },
21084	//     "destinations": {
21085	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
21086	//       "location": "query",
21087	//       "repeated": true,
21088	//       "type": "string"
21089	//     },
21090	//     "merchantId": {
21091	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
21092	//       "format": "uint64",
21093	//       "location": "path",
21094	//       "required": true,
21095	//       "type": "string"
21096	//     }
21097	//   },
21098	//   "path": "{merchantId}/accountstatuses/{accountId}",
21099	//   "response": {
21100	//     "$ref": "AccountStatus"
21101	//   },
21102	//   "scopes": [
21103	//     "https://www.googleapis.com/auth/content"
21104	//   ]
21105	// }
21106
21107}
21108
21109// method id "content.accountstatuses.list":
21110
21111type AccountstatusesListCall struct {
21112	s            *APIService
21113	merchantId   uint64
21114	urlParams_   gensupport.URLParams
21115	ifNoneMatch_ string
21116	ctx_         context.Context
21117	header_      http.Header
21118}
21119
21120// List: Lists the statuses of the sub-accounts in your Merchant Center
21121// account.
21122//
21123// - merchantId: The ID of the managing account. This must be a
21124//   multi-client account.
21125func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
21126	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21127	c.merchantId = merchantId
21128	return c
21129}
21130
21131// Destinations sets the optional parameter "destinations": If set, only
21132// issues for the specified destinations are returned, otherwise only
21133// issues for the Shopping destination.
21134func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
21135	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
21136	return c
21137}
21138
21139// MaxResults sets the optional parameter "maxResults": The maximum
21140// number of account statuses to return in the response, used for
21141// paging.
21142func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
21143	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21144	return c
21145}
21146
21147// Name sets the optional parameter "name": If set, only the accounts
21148// with the given name (case sensitive) will be returned.
21149func (c *AccountstatusesListCall) Name(name string) *AccountstatusesListCall {
21150	c.urlParams_.Set("name", name)
21151	return c
21152}
21153
21154// PageToken sets the optional parameter "pageToken": The token returned
21155// by the previous request.
21156func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
21157	c.urlParams_.Set("pageToken", pageToken)
21158	return c
21159}
21160
21161// Fields allows partial responses to be retrieved. See
21162// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21163// for more information.
21164func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
21165	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21166	return c
21167}
21168
21169// IfNoneMatch sets the optional parameter which makes the operation
21170// fail if the object's ETag matches the given value. This is useful for
21171// getting updates only after the object has changed since the last
21172// request. Use googleapi.IsNotModified to check whether the response
21173// error from Do is the result of In-None-Match.
21174func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
21175	c.ifNoneMatch_ = entityTag
21176	return c
21177}
21178
21179// Context sets the context to be used in this call's Do method. Any
21180// pending HTTP request will be aborted if the provided context is
21181// canceled.
21182func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
21183	c.ctx_ = ctx
21184	return c
21185}
21186
21187// Header returns an http.Header that can be modified by the caller to
21188// add HTTP headers to the request.
21189func (c *AccountstatusesListCall) Header() http.Header {
21190	if c.header_ == nil {
21191		c.header_ = make(http.Header)
21192	}
21193	return c.header_
21194}
21195
21196func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
21197	reqHeaders := make(http.Header)
21198	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21199	for k, v := range c.header_ {
21200		reqHeaders[k] = v
21201	}
21202	reqHeaders.Set("User-Agent", c.s.userAgent())
21203	if c.ifNoneMatch_ != "" {
21204		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21205	}
21206	var body io.Reader = nil
21207	c.urlParams_.Set("alt", alt)
21208	c.urlParams_.Set("prettyPrint", "false")
21209	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses")
21210	urls += "?" + c.urlParams_.Encode()
21211	req, err := http.NewRequest("GET", urls, body)
21212	if err != nil {
21213		return nil, err
21214	}
21215	req.Header = reqHeaders
21216	googleapi.Expand(req.URL, map[string]string{
21217		"merchantId": strconv.FormatUint(c.merchantId, 10),
21218	})
21219	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21220}
21221
21222// Do executes the "content.accountstatuses.list" call.
21223// Exactly one of *AccountstatusesListResponse or error will be non-nil.
21224// Any non-2xx status code is an error. Response headers are in either
21225// *AccountstatusesListResponse.ServerResponse.Header or (if a response
21226// was returned at all) in error.(*googleapi.Error).Header. Use
21227// googleapi.IsNotModified to check whether the returned error was
21228// because http.StatusNotModified was returned.
21229func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
21230	gensupport.SetOptions(c.urlParams_, opts...)
21231	res, err := c.doRequest("json")
21232	if res != nil && res.StatusCode == http.StatusNotModified {
21233		if res.Body != nil {
21234			res.Body.Close()
21235		}
21236		return nil, &googleapi.Error{
21237			Code:   res.StatusCode,
21238			Header: res.Header,
21239		}
21240	}
21241	if err != nil {
21242		return nil, err
21243	}
21244	defer googleapi.CloseBody(res)
21245	if err := googleapi.CheckResponse(res); err != nil {
21246		return nil, err
21247	}
21248	ret := &AccountstatusesListResponse{
21249		ServerResponse: googleapi.ServerResponse{
21250			Header:         res.Header,
21251			HTTPStatusCode: res.StatusCode,
21252		},
21253	}
21254	target := &ret
21255	if err := gensupport.DecodeResponse(target, res); err != nil {
21256		return nil, err
21257	}
21258	return ret, nil
21259	// {
21260	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
21261	//   "flatPath": "{merchantId}/accountstatuses",
21262	//   "httpMethod": "GET",
21263	//   "id": "content.accountstatuses.list",
21264	//   "parameterOrder": [
21265	//     "merchantId"
21266	//   ],
21267	//   "parameters": {
21268	//     "destinations": {
21269	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
21270	//       "location": "query",
21271	//       "repeated": true,
21272	//       "type": "string"
21273	//     },
21274	//     "maxResults": {
21275	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
21276	//       "format": "uint32",
21277	//       "location": "query",
21278	//       "type": "integer"
21279	//     },
21280	//     "merchantId": {
21281	//       "description": "The ID of the managing account. This must be a multi-client account.",
21282	//       "format": "uint64",
21283	//       "location": "path",
21284	//       "required": true,
21285	//       "type": "string"
21286	//     },
21287	//     "name": {
21288	//       "description": "If set, only the accounts with the given name (case sensitive) will be returned.",
21289	//       "location": "query",
21290	//       "type": "string"
21291	//     },
21292	//     "pageToken": {
21293	//       "description": "The token returned by the previous request.",
21294	//       "location": "query",
21295	//       "type": "string"
21296	//     }
21297	//   },
21298	//   "path": "{merchantId}/accountstatuses",
21299	//   "response": {
21300	//     "$ref": "AccountstatusesListResponse"
21301	//   },
21302	//   "scopes": [
21303	//     "https://www.googleapis.com/auth/content"
21304	//   ]
21305	// }
21306
21307}
21308
21309// Pages invokes f for each page of results.
21310// A non-nil error returned from f will halt the iteration.
21311// The provided context supersedes any context provided to the Context method.
21312func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
21313	c.ctx_ = ctx
21314	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21315	for {
21316		x, err := c.Do()
21317		if err != nil {
21318			return err
21319		}
21320		if err := f(x); err != nil {
21321			return err
21322		}
21323		if x.NextPageToken == "" {
21324			return nil
21325		}
21326		c.PageToken(x.NextPageToken)
21327	}
21328}
21329
21330// method id "content.accounttax.custombatch":
21331
21332type AccounttaxCustombatchCall struct {
21333	s                            *APIService
21334	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
21335	urlParams_                   gensupport.URLParams
21336	ctx_                         context.Context
21337	header_                      http.Header
21338}
21339
21340// Custombatch: Retrieves and updates tax settings of multiple accounts
21341// in a single request.
21342func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
21343	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21344	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
21345	return c
21346}
21347
21348// Fields allows partial responses to be retrieved. See
21349// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21350// for more information.
21351func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
21352	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21353	return c
21354}
21355
21356// Context sets the context to be used in this call's Do method. Any
21357// pending HTTP request will be aborted if the provided context is
21358// canceled.
21359func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
21360	c.ctx_ = ctx
21361	return c
21362}
21363
21364// Header returns an http.Header that can be modified by the caller to
21365// add HTTP headers to the request.
21366func (c *AccounttaxCustombatchCall) Header() http.Header {
21367	if c.header_ == nil {
21368		c.header_ = make(http.Header)
21369	}
21370	return c.header_
21371}
21372
21373func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
21374	reqHeaders := make(http.Header)
21375	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21376	for k, v := range c.header_ {
21377		reqHeaders[k] = v
21378	}
21379	reqHeaders.Set("User-Agent", c.s.userAgent())
21380	var body io.Reader = nil
21381	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
21382	if err != nil {
21383		return nil, err
21384	}
21385	reqHeaders.Set("Content-Type", "application/json")
21386	c.urlParams_.Set("alt", alt)
21387	c.urlParams_.Set("prettyPrint", "false")
21388	urls := googleapi.ResolveRelative(c.s.BasePath, "accounttax/batch")
21389	urls += "?" + c.urlParams_.Encode()
21390	req, err := http.NewRequest("POST", urls, body)
21391	if err != nil {
21392		return nil, err
21393	}
21394	req.Header = reqHeaders
21395	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21396}
21397
21398// Do executes the "content.accounttax.custombatch" call.
21399// Exactly one of *AccounttaxCustomBatchResponse or error will be
21400// non-nil. Any non-2xx status code is an error. Response headers are in
21401// either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
21402// response was returned at all) in error.(*googleapi.Error).Header. Use
21403// googleapi.IsNotModified to check whether the returned error was
21404// because http.StatusNotModified was returned.
21405func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
21406	gensupport.SetOptions(c.urlParams_, opts...)
21407	res, err := c.doRequest("json")
21408	if res != nil && res.StatusCode == http.StatusNotModified {
21409		if res.Body != nil {
21410			res.Body.Close()
21411		}
21412		return nil, &googleapi.Error{
21413			Code:   res.StatusCode,
21414			Header: res.Header,
21415		}
21416	}
21417	if err != nil {
21418		return nil, err
21419	}
21420	defer googleapi.CloseBody(res)
21421	if err := googleapi.CheckResponse(res); err != nil {
21422		return nil, err
21423	}
21424	ret := &AccounttaxCustomBatchResponse{
21425		ServerResponse: googleapi.ServerResponse{
21426			Header:         res.Header,
21427			HTTPStatusCode: res.StatusCode,
21428		},
21429	}
21430	target := &ret
21431	if err := gensupport.DecodeResponse(target, res); err != nil {
21432		return nil, err
21433	}
21434	return ret, nil
21435	// {
21436	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
21437	//   "flatPath": "accounttax/batch",
21438	//   "httpMethod": "POST",
21439	//   "id": "content.accounttax.custombatch",
21440	//   "parameterOrder": [],
21441	//   "parameters": {},
21442	//   "path": "accounttax/batch",
21443	//   "request": {
21444	//     "$ref": "AccounttaxCustomBatchRequest"
21445	//   },
21446	//   "response": {
21447	//     "$ref": "AccounttaxCustomBatchResponse"
21448	//   },
21449	//   "scopes": [
21450	//     "https://www.googleapis.com/auth/content"
21451	//   ]
21452	// }
21453
21454}
21455
21456// method id "content.accounttax.get":
21457
21458type AccounttaxGetCall struct {
21459	s            *APIService
21460	merchantId   uint64
21461	accountId    uint64
21462	urlParams_   gensupport.URLParams
21463	ifNoneMatch_ string
21464	ctx_         context.Context
21465	header_      http.Header
21466}
21467
21468// Get: Retrieves the tax settings of the account.
21469//
21470// - accountId: The ID of the account for which to get/update account
21471//   tax settings.
21472// - merchantId: The ID of the managing account. If this parameter is
21473//   not the same as accountId, then this account must be a multi-client
21474//   account and `accountId` must be the ID of a sub-account of this
21475//   account.
21476func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
21477	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21478	c.merchantId = merchantId
21479	c.accountId = accountId
21480	return c
21481}
21482
21483// Fields allows partial responses to be retrieved. See
21484// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21485// for more information.
21486func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
21487	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21488	return c
21489}
21490
21491// IfNoneMatch sets the optional parameter which makes the operation
21492// fail if the object's ETag matches the given value. This is useful for
21493// getting updates only after the object has changed since the last
21494// request. Use googleapi.IsNotModified to check whether the response
21495// error from Do is the result of In-None-Match.
21496func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
21497	c.ifNoneMatch_ = entityTag
21498	return c
21499}
21500
21501// Context sets the context to be used in this call's Do method. Any
21502// pending HTTP request will be aborted if the provided context is
21503// canceled.
21504func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
21505	c.ctx_ = ctx
21506	return c
21507}
21508
21509// Header returns an http.Header that can be modified by the caller to
21510// add HTTP headers to the request.
21511func (c *AccounttaxGetCall) Header() http.Header {
21512	if c.header_ == nil {
21513		c.header_ = make(http.Header)
21514	}
21515	return c.header_
21516}
21517
21518func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
21519	reqHeaders := make(http.Header)
21520	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21521	for k, v := range c.header_ {
21522		reqHeaders[k] = v
21523	}
21524	reqHeaders.Set("User-Agent", c.s.userAgent())
21525	if c.ifNoneMatch_ != "" {
21526		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21527	}
21528	var body io.Reader = nil
21529	c.urlParams_.Set("alt", alt)
21530	c.urlParams_.Set("prettyPrint", "false")
21531	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
21532	urls += "?" + c.urlParams_.Encode()
21533	req, err := http.NewRequest("GET", urls, body)
21534	if err != nil {
21535		return nil, err
21536	}
21537	req.Header = reqHeaders
21538	googleapi.Expand(req.URL, map[string]string{
21539		"merchantId": strconv.FormatUint(c.merchantId, 10),
21540		"accountId":  strconv.FormatUint(c.accountId, 10),
21541	})
21542	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21543}
21544
21545// Do executes the "content.accounttax.get" call.
21546// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
21547// status code is an error. Response headers are in either
21548// *AccountTax.ServerResponse.Header or (if a response was returned at
21549// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21550// to check whether the returned error was because
21551// http.StatusNotModified was returned.
21552func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
21553	gensupport.SetOptions(c.urlParams_, opts...)
21554	res, err := c.doRequest("json")
21555	if res != nil && res.StatusCode == http.StatusNotModified {
21556		if res.Body != nil {
21557			res.Body.Close()
21558		}
21559		return nil, &googleapi.Error{
21560			Code:   res.StatusCode,
21561			Header: res.Header,
21562		}
21563	}
21564	if err != nil {
21565		return nil, err
21566	}
21567	defer googleapi.CloseBody(res)
21568	if err := googleapi.CheckResponse(res); err != nil {
21569		return nil, err
21570	}
21571	ret := &AccountTax{
21572		ServerResponse: googleapi.ServerResponse{
21573			Header:         res.Header,
21574			HTTPStatusCode: res.StatusCode,
21575		},
21576	}
21577	target := &ret
21578	if err := gensupport.DecodeResponse(target, res); err != nil {
21579		return nil, err
21580	}
21581	return ret, nil
21582	// {
21583	//   "description": "Retrieves the tax settings of the account.",
21584	//   "flatPath": "{merchantId}/accounttax/{accountId}",
21585	//   "httpMethod": "GET",
21586	//   "id": "content.accounttax.get",
21587	//   "parameterOrder": [
21588	//     "merchantId",
21589	//     "accountId"
21590	//   ],
21591	//   "parameters": {
21592	//     "accountId": {
21593	//       "description": "The ID of the account for which to get/update account tax settings.",
21594	//       "format": "uint64",
21595	//       "location": "path",
21596	//       "required": true,
21597	//       "type": "string"
21598	//     },
21599	//     "merchantId": {
21600	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
21601	//       "format": "uint64",
21602	//       "location": "path",
21603	//       "required": true,
21604	//       "type": "string"
21605	//     }
21606	//   },
21607	//   "path": "{merchantId}/accounttax/{accountId}",
21608	//   "response": {
21609	//     "$ref": "AccountTax"
21610	//   },
21611	//   "scopes": [
21612	//     "https://www.googleapis.com/auth/content"
21613	//   ]
21614	// }
21615
21616}
21617
21618// method id "content.accounttax.list":
21619
21620type AccounttaxListCall struct {
21621	s            *APIService
21622	merchantId   uint64
21623	urlParams_   gensupport.URLParams
21624	ifNoneMatch_ string
21625	ctx_         context.Context
21626	header_      http.Header
21627}
21628
21629// List: Lists the tax settings of the sub-accounts in your Merchant
21630// Center account.
21631//
21632// - merchantId: The ID of the managing account. This must be a
21633//   multi-client account.
21634func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
21635	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21636	c.merchantId = merchantId
21637	return c
21638}
21639
21640// MaxResults sets the optional parameter "maxResults": The maximum
21641// number of tax settings to return in the response, used for paging.
21642func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
21643	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21644	return c
21645}
21646
21647// PageToken sets the optional parameter "pageToken": The token returned
21648// by the previous request.
21649func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
21650	c.urlParams_.Set("pageToken", pageToken)
21651	return c
21652}
21653
21654// Fields allows partial responses to be retrieved. See
21655// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21656// for more information.
21657func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
21658	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21659	return c
21660}
21661
21662// IfNoneMatch sets the optional parameter which makes the operation
21663// fail if the object's ETag matches the given value. This is useful for
21664// getting updates only after the object has changed since the last
21665// request. Use googleapi.IsNotModified to check whether the response
21666// error from Do is the result of In-None-Match.
21667func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
21668	c.ifNoneMatch_ = entityTag
21669	return c
21670}
21671
21672// Context sets the context to be used in this call's Do method. Any
21673// pending HTTP request will be aborted if the provided context is
21674// canceled.
21675func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
21676	c.ctx_ = ctx
21677	return c
21678}
21679
21680// Header returns an http.Header that can be modified by the caller to
21681// add HTTP headers to the request.
21682func (c *AccounttaxListCall) Header() http.Header {
21683	if c.header_ == nil {
21684		c.header_ = make(http.Header)
21685	}
21686	return c.header_
21687}
21688
21689func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
21690	reqHeaders := make(http.Header)
21691	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21692	for k, v := range c.header_ {
21693		reqHeaders[k] = v
21694	}
21695	reqHeaders.Set("User-Agent", c.s.userAgent())
21696	if c.ifNoneMatch_ != "" {
21697		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21698	}
21699	var body io.Reader = nil
21700	c.urlParams_.Set("alt", alt)
21701	c.urlParams_.Set("prettyPrint", "false")
21702	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax")
21703	urls += "?" + c.urlParams_.Encode()
21704	req, err := http.NewRequest("GET", urls, body)
21705	if err != nil {
21706		return nil, err
21707	}
21708	req.Header = reqHeaders
21709	googleapi.Expand(req.URL, map[string]string{
21710		"merchantId": strconv.FormatUint(c.merchantId, 10),
21711	})
21712	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21713}
21714
21715// Do executes the "content.accounttax.list" call.
21716// Exactly one of *AccounttaxListResponse or error will be non-nil. Any
21717// non-2xx status code is an error. Response headers are in either
21718// *AccounttaxListResponse.ServerResponse.Header or (if a response was
21719// returned at all) in error.(*googleapi.Error).Header. Use
21720// googleapi.IsNotModified to check whether the returned error was
21721// because http.StatusNotModified was returned.
21722func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
21723	gensupport.SetOptions(c.urlParams_, opts...)
21724	res, err := c.doRequest("json")
21725	if res != nil && res.StatusCode == http.StatusNotModified {
21726		if res.Body != nil {
21727			res.Body.Close()
21728		}
21729		return nil, &googleapi.Error{
21730			Code:   res.StatusCode,
21731			Header: res.Header,
21732		}
21733	}
21734	if err != nil {
21735		return nil, err
21736	}
21737	defer googleapi.CloseBody(res)
21738	if err := googleapi.CheckResponse(res); err != nil {
21739		return nil, err
21740	}
21741	ret := &AccounttaxListResponse{
21742		ServerResponse: googleapi.ServerResponse{
21743			Header:         res.Header,
21744			HTTPStatusCode: res.StatusCode,
21745		},
21746	}
21747	target := &ret
21748	if err := gensupport.DecodeResponse(target, res); err != nil {
21749		return nil, err
21750	}
21751	return ret, nil
21752	// {
21753	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
21754	//   "flatPath": "{merchantId}/accounttax",
21755	//   "httpMethod": "GET",
21756	//   "id": "content.accounttax.list",
21757	//   "parameterOrder": [
21758	//     "merchantId"
21759	//   ],
21760	//   "parameters": {
21761	//     "maxResults": {
21762	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
21763	//       "format": "uint32",
21764	//       "location": "query",
21765	//       "type": "integer"
21766	//     },
21767	//     "merchantId": {
21768	//       "description": "The ID of the managing account. This must be a multi-client account.",
21769	//       "format": "uint64",
21770	//       "location": "path",
21771	//       "required": true,
21772	//       "type": "string"
21773	//     },
21774	//     "pageToken": {
21775	//       "description": "The token returned by the previous request.",
21776	//       "location": "query",
21777	//       "type": "string"
21778	//     }
21779	//   },
21780	//   "path": "{merchantId}/accounttax",
21781	//   "response": {
21782	//     "$ref": "AccounttaxListResponse"
21783	//   },
21784	//   "scopes": [
21785	//     "https://www.googleapis.com/auth/content"
21786	//   ]
21787	// }
21788
21789}
21790
21791// Pages invokes f for each page of results.
21792// A non-nil error returned from f will halt the iteration.
21793// The provided context supersedes any context provided to the Context method.
21794func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
21795	c.ctx_ = ctx
21796	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21797	for {
21798		x, err := c.Do()
21799		if err != nil {
21800			return err
21801		}
21802		if err := f(x); err != nil {
21803			return err
21804		}
21805		if x.NextPageToken == "" {
21806			return nil
21807		}
21808		c.PageToken(x.NextPageToken)
21809	}
21810}
21811
21812// method id "content.accounttax.update":
21813
21814type AccounttaxUpdateCall struct {
21815	s          *APIService
21816	merchantId uint64
21817	accountId  uint64
21818	accounttax *AccountTax
21819	urlParams_ gensupport.URLParams
21820	ctx_       context.Context
21821	header_    http.Header
21822}
21823
21824// Update: Updates the tax settings of the account. Any fields that are
21825// not provided are deleted from the resource.
21826//
21827// - accountId: The ID of the account for which to get/update account
21828//   tax settings.
21829// - merchantId: The ID of the managing account. If this parameter is
21830//   not the same as accountId, then this account must be a multi-client
21831//   account and `accountId` must be the ID of a sub-account of this
21832//   account.
21833func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
21834	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21835	c.merchantId = merchantId
21836	c.accountId = accountId
21837	c.accounttax = accounttax
21838	return c
21839}
21840
21841// Fields allows partial responses to be retrieved. See
21842// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21843// for more information.
21844func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
21845	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21846	return c
21847}
21848
21849// Context sets the context to be used in this call's Do method. Any
21850// pending HTTP request will be aborted if the provided context is
21851// canceled.
21852func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
21853	c.ctx_ = ctx
21854	return c
21855}
21856
21857// Header returns an http.Header that can be modified by the caller to
21858// add HTTP headers to the request.
21859func (c *AccounttaxUpdateCall) Header() http.Header {
21860	if c.header_ == nil {
21861		c.header_ = make(http.Header)
21862	}
21863	return c.header_
21864}
21865
21866func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
21867	reqHeaders := make(http.Header)
21868	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21869	for k, v := range c.header_ {
21870		reqHeaders[k] = v
21871	}
21872	reqHeaders.Set("User-Agent", c.s.userAgent())
21873	var body io.Reader = nil
21874	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
21875	if err != nil {
21876		return nil, err
21877	}
21878	reqHeaders.Set("Content-Type", "application/json")
21879	c.urlParams_.Set("alt", alt)
21880	c.urlParams_.Set("prettyPrint", "false")
21881	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
21882	urls += "?" + c.urlParams_.Encode()
21883	req, err := http.NewRequest("PUT", urls, body)
21884	if err != nil {
21885		return nil, err
21886	}
21887	req.Header = reqHeaders
21888	googleapi.Expand(req.URL, map[string]string{
21889		"merchantId": strconv.FormatUint(c.merchantId, 10),
21890		"accountId":  strconv.FormatUint(c.accountId, 10),
21891	})
21892	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21893}
21894
21895// Do executes the "content.accounttax.update" call.
21896// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
21897// status code is an error. Response headers are in either
21898// *AccountTax.ServerResponse.Header or (if a response was returned at
21899// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21900// to check whether the returned error was because
21901// http.StatusNotModified was returned.
21902func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
21903	gensupport.SetOptions(c.urlParams_, opts...)
21904	res, err := c.doRequest("json")
21905	if res != nil && res.StatusCode == http.StatusNotModified {
21906		if res.Body != nil {
21907			res.Body.Close()
21908		}
21909		return nil, &googleapi.Error{
21910			Code:   res.StatusCode,
21911			Header: res.Header,
21912		}
21913	}
21914	if err != nil {
21915		return nil, err
21916	}
21917	defer googleapi.CloseBody(res)
21918	if err := googleapi.CheckResponse(res); err != nil {
21919		return nil, err
21920	}
21921	ret := &AccountTax{
21922		ServerResponse: googleapi.ServerResponse{
21923			Header:         res.Header,
21924			HTTPStatusCode: res.StatusCode,
21925		},
21926	}
21927	target := &ret
21928	if err := gensupport.DecodeResponse(target, res); err != nil {
21929		return nil, err
21930	}
21931	return ret, nil
21932	// {
21933	//   "description": "Updates the tax settings of the account. Any fields that are not provided are deleted from the resource.",
21934	//   "flatPath": "{merchantId}/accounttax/{accountId}",
21935	//   "httpMethod": "PUT",
21936	//   "id": "content.accounttax.update",
21937	//   "parameterOrder": [
21938	//     "merchantId",
21939	//     "accountId"
21940	//   ],
21941	//   "parameters": {
21942	//     "accountId": {
21943	//       "description": "The ID of the account for which to get/update account tax settings.",
21944	//       "format": "uint64",
21945	//       "location": "path",
21946	//       "required": true,
21947	//       "type": "string"
21948	//     },
21949	//     "merchantId": {
21950	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
21951	//       "format": "uint64",
21952	//       "location": "path",
21953	//       "required": true,
21954	//       "type": "string"
21955	//     }
21956	//   },
21957	//   "path": "{merchantId}/accounttax/{accountId}",
21958	//   "request": {
21959	//     "$ref": "AccountTax"
21960	//   },
21961	//   "response": {
21962	//     "$ref": "AccountTax"
21963	//   },
21964	//   "scopes": [
21965	//     "https://www.googleapis.com/auth/content"
21966	//   ]
21967	// }
21968
21969}
21970
21971// method id "content.buyongoogleprograms.activate":
21972
21973type BuyongoogleprogramsActivateCall struct {
21974	s                                 *APIService
21975	merchantId                        int64
21976	regionCode                        string
21977	activatebuyongoogleprogramrequest *ActivateBuyOnGoogleProgramRequest
21978	urlParams_                        gensupport.URLParams
21979	ctx_                              context.Context
21980	header_                           http.Header
21981}
21982
21983// Activate: Reactivates the BoG program in your Merchant Center
21984// account. Moves the program to the active state when allowed, e.g.
21985// when paused. Important: This method is only whitelisted for selected
21986// merchants.
21987//
21988// - merchantId: The ID of the account.
21989// - regionCode: The program region code ISO 3166-1 alpha-2
21990//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
21991//   US is available.
21992func (r *BuyongoogleprogramsService) Activate(merchantId int64, regionCode string, activatebuyongoogleprogramrequest *ActivateBuyOnGoogleProgramRequest) *BuyongoogleprogramsActivateCall {
21993	c := &BuyongoogleprogramsActivateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21994	c.merchantId = merchantId
21995	c.regionCode = regionCode
21996	c.activatebuyongoogleprogramrequest = activatebuyongoogleprogramrequest
21997	return c
21998}
21999
22000// Fields allows partial responses to be retrieved. See
22001// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22002// for more information.
22003func (c *BuyongoogleprogramsActivateCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsActivateCall {
22004	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22005	return c
22006}
22007
22008// Context sets the context to be used in this call's Do method. Any
22009// pending HTTP request will be aborted if the provided context is
22010// canceled.
22011func (c *BuyongoogleprogramsActivateCall) Context(ctx context.Context) *BuyongoogleprogramsActivateCall {
22012	c.ctx_ = ctx
22013	return c
22014}
22015
22016// Header returns an http.Header that can be modified by the caller to
22017// add HTTP headers to the request.
22018func (c *BuyongoogleprogramsActivateCall) Header() http.Header {
22019	if c.header_ == nil {
22020		c.header_ = make(http.Header)
22021	}
22022	return c.header_
22023}
22024
22025func (c *BuyongoogleprogramsActivateCall) doRequest(alt string) (*http.Response, error) {
22026	reqHeaders := make(http.Header)
22027	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22028	for k, v := range c.header_ {
22029		reqHeaders[k] = v
22030	}
22031	reqHeaders.Set("User-Agent", c.s.userAgent())
22032	var body io.Reader = nil
22033	body, err := googleapi.WithoutDataWrapper.JSONReader(c.activatebuyongoogleprogramrequest)
22034	if err != nil {
22035		return nil, err
22036	}
22037	reqHeaders.Set("Content-Type", "application/json")
22038	c.urlParams_.Set("alt", alt)
22039	c.urlParams_.Set("prettyPrint", "false")
22040	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/activate")
22041	urls += "?" + c.urlParams_.Encode()
22042	req, err := http.NewRequest("POST", urls, body)
22043	if err != nil {
22044		return nil, err
22045	}
22046	req.Header = reqHeaders
22047	googleapi.Expand(req.URL, map[string]string{
22048		"merchantId": strconv.FormatInt(c.merchantId, 10),
22049		"regionCode": c.regionCode,
22050	})
22051	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22052}
22053
22054// Do executes the "content.buyongoogleprograms.activate" call.
22055func (c *BuyongoogleprogramsActivateCall) Do(opts ...googleapi.CallOption) error {
22056	gensupport.SetOptions(c.urlParams_, opts...)
22057	res, err := c.doRequest("json")
22058	if err != nil {
22059		return err
22060	}
22061	defer googleapi.CloseBody(res)
22062	if err := googleapi.CheckResponse(res); err != nil {
22063		return err
22064	}
22065	return nil
22066	// {
22067	//   "description": "Reactivates the BoG program in your Merchant Center account. Moves the program to the active state when allowed, e.g. when paused. Important: This method is only whitelisted for selected merchants.",
22068	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/activate",
22069	//   "httpMethod": "POST",
22070	//   "id": "content.buyongoogleprograms.activate",
22071	//   "parameterOrder": [
22072	//     "merchantId",
22073	//     "regionCode"
22074	//   ],
22075	//   "parameters": {
22076	//     "merchantId": {
22077	//       "description": "Required. The ID of the account.",
22078	//       "format": "int64",
22079	//       "location": "path",
22080	//       "required": true,
22081	//       "type": "string"
22082	//     },
22083	//     "regionCode": {
22084	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22085	//       "location": "path",
22086	//       "required": true,
22087	//       "type": "string"
22088	//     }
22089	//   },
22090	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/activate",
22091	//   "request": {
22092	//     "$ref": "ActivateBuyOnGoogleProgramRequest"
22093	//   },
22094	//   "scopes": [
22095	//     "https://www.googleapis.com/auth/content"
22096	//   ]
22097	// }
22098
22099}
22100
22101// method id "content.buyongoogleprograms.get":
22102
22103type BuyongoogleprogramsGetCall struct {
22104	s            *APIService
22105	merchantId   int64
22106	regionCode   string
22107	urlParams_   gensupport.URLParams
22108	ifNoneMatch_ string
22109	ctx_         context.Context
22110	header_      http.Header
22111}
22112
22113// Get: Retrieves a status of the BoG program for your Merchant Center
22114// account.
22115//
22116// - merchantId: The ID of the account.
22117// - regionCode: The Program region code ISO 3166-1 alpha-2
22118//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22119//   US is available.
22120func (r *BuyongoogleprogramsService) Get(merchantId int64, regionCode string) *BuyongoogleprogramsGetCall {
22121	c := &BuyongoogleprogramsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22122	c.merchantId = merchantId
22123	c.regionCode = regionCode
22124	return c
22125}
22126
22127// Fields allows partial responses to be retrieved. See
22128// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22129// for more information.
22130func (c *BuyongoogleprogramsGetCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsGetCall {
22131	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22132	return c
22133}
22134
22135// IfNoneMatch sets the optional parameter which makes the operation
22136// fail if the object's ETag matches the given value. This is useful for
22137// getting updates only after the object has changed since the last
22138// request. Use googleapi.IsNotModified to check whether the response
22139// error from Do is the result of In-None-Match.
22140func (c *BuyongoogleprogramsGetCall) IfNoneMatch(entityTag string) *BuyongoogleprogramsGetCall {
22141	c.ifNoneMatch_ = entityTag
22142	return c
22143}
22144
22145// Context sets the context to be used in this call's Do method. Any
22146// pending HTTP request will be aborted if the provided context is
22147// canceled.
22148func (c *BuyongoogleprogramsGetCall) Context(ctx context.Context) *BuyongoogleprogramsGetCall {
22149	c.ctx_ = ctx
22150	return c
22151}
22152
22153// Header returns an http.Header that can be modified by the caller to
22154// add HTTP headers to the request.
22155func (c *BuyongoogleprogramsGetCall) Header() http.Header {
22156	if c.header_ == nil {
22157		c.header_ = make(http.Header)
22158	}
22159	return c.header_
22160}
22161
22162func (c *BuyongoogleprogramsGetCall) doRequest(alt string) (*http.Response, error) {
22163	reqHeaders := make(http.Header)
22164	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22165	for k, v := range c.header_ {
22166		reqHeaders[k] = v
22167	}
22168	reqHeaders.Set("User-Agent", c.s.userAgent())
22169	if c.ifNoneMatch_ != "" {
22170		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22171	}
22172	var body io.Reader = nil
22173	c.urlParams_.Set("alt", alt)
22174	c.urlParams_.Set("prettyPrint", "false")
22175	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}")
22176	urls += "?" + c.urlParams_.Encode()
22177	req, err := http.NewRequest("GET", urls, body)
22178	if err != nil {
22179		return nil, err
22180	}
22181	req.Header = reqHeaders
22182	googleapi.Expand(req.URL, map[string]string{
22183		"merchantId": strconv.FormatInt(c.merchantId, 10),
22184		"regionCode": c.regionCode,
22185	})
22186	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22187}
22188
22189// Do executes the "content.buyongoogleprograms.get" call.
22190// Exactly one of *BuyOnGoogleProgramStatus or error will be non-nil.
22191// Any non-2xx status code is an error. Response headers are in either
22192// *BuyOnGoogleProgramStatus.ServerResponse.Header or (if a response was
22193// returned at all) in error.(*googleapi.Error).Header. Use
22194// googleapi.IsNotModified to check whether the returned error was
22195// because http.StatusNotModified was returned.
22196func (c *BuyongoogleprogramsGetCall) Do(opts ...googleapi.CallOption) (*BuyOnGoogleProgramStatus, error) {
22197	gensupport.SetOptions(c.urlParams_, opts...)
22198	res, err := c.doRequest("json")
22199	if res != nil && res.StatusCode == http.StatusNotModified {
22200		if res.Body != nil {
22201			res.Body.Close()
22202		}
22203		return nil, &googleapi.Error{
22204			Code:   res.StatusCode,
22205			Header: res.Header,
22206		}
22207	}
22208	if err != nil {
22209		return nil, err
22210	}
22211	defer googleapi.CloseBody(res)
22212	if err := googleapi.CheckResponse(res); err != nil {
22213		return nil, err
22214	}
22215	ret := &BuyOnGoogleProgramStatus{
22216		ServerResponse: googleapi.ServerResponse{
22217			Header:         res.Header,
22218			HTTPStatusCode: res.StatusCode,
22219		},
22220	}
22221	target := &ret
22222	if err := gensupport.DecodeResponse(target, res); err != nil {
22223		return nil, err
22224	}
22225	return ret, nil
22226	// {
22227	//   "description": "Retrieves a status of the BoG program for your Merchant Center account.",
22228	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}",
22229	//   "httpMethod": "GET",
22230	//   "id": "content.buyongoogleprograms.get",
22231	//   "parameterOrder": [
22232	//     "merchantId",
22233	//     "regionCode"
22234	//   ],
22235	//   "parameters": {
22236	//     "merchantId": {
22237	//       "description": "Required. The ID of the account.",
22238	//       "format": "int64",
22239	//       "location": "path",
22240	//       "required": true,
22241	//       "type": "string"
22242	//     },
22243	//     "regionCode": {
22244	//       "description": "Required. The Program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22245	//       "location": "path",
22246	//       "required": true,
22247	//       "type": "string"
22248	//     }
22249	//   },
22250	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}",
22251	//   "response": {
22252	//     "$ref": "BuyOnGoogleProgramStatus"
22253	//   },
22254	//   "scopes": [
22255	//     "https://www.googleapis.com/auth/content"
22256	//   ]
22257	// }
22258
22259}
22260
22261// method id "content.buyongoogleprograms.onboard":
22262
22263type BuyongoogleprogramsOnboardCall struct {
22264	s                                *APIService
22265	merchantId                       int64
22266	regionCode                       string
22267	onboardbuyongoogleprogramrequest *OnboardBuyOnGoogleProgramRequest
22268	urlParams_                       gensupport.URLParams
22269	ctx_                             context.Context
22270	header_                          http.Header
22271}
22272
22273// Onboard: Onboards the BoG program in your Merchant Center account. By
22274// using this method, you agree to the Terms of Service
22275// (https://merchants.google.com/mc/termsofservice/transactions/US/latest).
22276// Calling this method is only possible if the authenticated account is
22277// the same as the merchant id in the request. Calling this method
22278// multiple times will only accept Terms of Service if the latest
22279// version is not currently signed.
22280//
22281// - merchantId: The ID of the account.
22282// - regionCode: The program region code ISO 3166-1 alpha-2
22283//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22284//   US is available.
22285func (r *BuyongoogleprogramsService) Onboard(merchantId int64, regionCode string, onboardbuyongoogleprogramrequest *OnboardBuyOnGoogleProgramRequest) *BuyongoogleprogramsOnboardCall {
22286	c := &BuyongoogleprogramsOnboardCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22287	c.merchantId = merchantId
22288	c.regionCode = regionCode
22289	c.onboardbuyongoogleprogramrequest = onboardbuyongoogleprogramrequest
22290	return c
22291}
22292
22293// Fields allows partial responses to be retrieved. See
22294// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22295// for more information.
22296func (c *BuyongoogleprogramsOnboardCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsOnboardCall {
22297	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22298	return c
22299}
22300
22301// Context sets the context to be used in this call's Do method. Any
22302// pending HTTP request will be aborted if the provided context is
22303// canceled.
22304func (c *BuyongoogleprogramsOnboardCall) Context(ctx context.Context) *BuyongoogleprogramsOnboardCall {
22305	c.ctx_ = ctx
22306	return c
22307}
22308
22309// Header returns an http.Header that can be modified by the caller to
22310// add HTTP headers to the request.
22311func (c *BuyongoogleprogramsOnboardCall) Header() http.Header {
22312	if c.header_ == nil {
22313		c.header_ = make(http.Header)
22314	}
22315	return c.header_
22316}
22317
22318func (c *BuyongoogleprogramsOnboardCall) doRequest(alt string) (*http.Response, error) {
22319	reqHeaders := make(http.Header)
22320	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22321	for k, v := range c.header_ {
22322		reqHeaders[k] = v
22323	}
22324	reqHeaders.Set("User-Agent", c.s.userAgent())
22325	var body io.Reader = nil
22326	body, err := googleapi.WithoutDataWrapper.JSONReader(c.onboardbuyongoogleprogramrequest)
22327	if err != nil {
22328		return nil, err
22329	}
22330	reqHeaders.Set("Content-Type", "application/json")
22331	c.urlParams_.Set("alt", alt)
22332	c.urlParams_.Set("prettyPrint", "false")
22333	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/onboard")
22334	urls += "?" + c.urlParams_.Encode()
22335	req, err := http.NewRequest("POST", urls, body)
22336	if err != nil {
22337		return nil, err
22338	}
22339	req.Header = reqHeaders
22340	googleapi.Expand(req.URL, map[string]string{
22341		"merchantId": strconv.FormatInt(c.merchantId, 10),
22342		"regionCode": c.regionCode,
22343	})
22344	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22345}
22346
22347// Do executes the "content.buyongoogleprograms.onboard" call.
22348func (c *BuyongoogleprogramsOnboardCall) Do(opts ...googleapi.CallOption) error {
22349	gensupport.SetOptions(c.urlParams_, opts...)
22350	res, err := c.doRequest("json")
22351	if err != nil {
22352		return err
22353	}
22354	defer googleapi.CloseBody(res)
22355	if err := googleapi.CheckResponse(res); err != nil {
22356		return err
22357	}
22358	return nil
22359	// {
22360	//   "description": "Onboards the BoG program in your Merchant Center account. By using this method, you agree to the [Terms of Service](https://merchants.google.com/mc/termsofservice/transactions/US/latest). Calling this method is only possible if the authenticated account is the same as the merchant id in the request. Calling this method multiple times will only accept Terms of Service if the latest version is not currently signed.",
22361	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/onboard",
22362	//   "httpMethod": "POST",
22363	//   "id": "content.buyongoogleprograms.onboard",
22364	//   "parameterOrder": [
22365	//     "merchantId",
22366	//     "regionCode"
22367	//   ],
22368	//   "parameters": {
22369	//     "merchantId": {
22370	//       "description": "Required. The ID of the account.",
22371	//       "format": "int64",
22372	//       "location": "path",
22373	//       "required": true,
22374	//       "type": "string"
22375	//     },
22376	//     "regionCode": {
22377	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22378	//       "location": "path",
22379	//       "required": true,
22380	//       "type": "string"
22381	//     }
22382	//   },
22383	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/onboard",
22384	//   "request": {
22385	//     "$ref": "OnboardBuyOnGoogleProgramRequest"
22386	//   },
22387	//   "scopes": [
22388	//     "https://www.googleapis.com/auth/content"
22389	//   ]
22390	// }
22391
22392}
22393
22394// method id "content.buyongoogleprograms.patch":
22395
22396type BuyongoogleprogramsPatchCall struct {
22397	s                        *APIService
22398	merchantId               int64
22399	regionCode               string
22400	buyongoogleprogramstatus *BuyOnGoogleProgramStatus
22401	urlParams_               gensupport.URLParams
22402	ctx_                     context.Context
22403	header_                  http.Header
22404}
22405
22406// Patch: Updates the status of the BoG program for your Merchant Center
22407// account.
22408//
22409// - merchantId: The ID of the account.
22410// - regionCode: The program region code ISO 3166-1 alpha-2
22411//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22412//   US is available.
22413func (r *BuyongoogleprogramsService) Patch(merchantId int64, regionCode string, buyongoogleprogramstatus *BuyOnGoogleProgramStatus) *BuyongoogleprogramsPatchCall {
22414	c := &BuyongoogleprogramsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22415	c.merchantId = merchantId
22416	c.regionCode = regionCode
22417	c.buyongoogleprogramstatus = buyongoogleprogramstatus
22418	return c
22419}
22420
22421// UpdateMask sets the optional parameter "updateMask": The list of
22422// fields to update. If the update mask is not provided, then all the
22423// fields set in buyOnGoogleProgramStatus will be updated. Clearing
22424// fields is only possible if update mask is provided.
22425func (c *BuyongoogleprogramsPatchCall) UpdateMask(updateMask string) *BuyongoogleprogramsPatchCall {
22426	c.urlParams_.Set("updateMask", updateMask)
22427	return c
22428}
22429
22430// Fields allows partial responses to be retrieved. See
22431// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22432// for more information.
22433func (c *BuyongoogleprogramsPatchCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsPatchCall {
22434	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22435	return c
22436}
22437
22438// Context sets the context to be used in this call's Do method. Any
22439// pending HTTP request will be aborted if the provided context is
22440// canceled.
22441func (c *BuyongoogleprogramsPatchCall) Context(ctx context.Context) *BuyongoogleprogramsPatchCall {
22442	c.ctx_ = ctx
22443	return c
22444}
22445
22446// Header returns an http.Header that can be modified by the caller to
22447// add HTTP headers to the request.
22448func (c *BuyongoogleprogramsPatchCall) Header() http.Header {
22449	if c.header_ == nil {
22450		c.header_ = make(http.Header)
22451	}
22452	return c.header_
22453}
22454
22455func (c *BuyongoogleprogramsPatchCall) doRequest(alt string) (*http.Response, error) {
22456	reqHeaders := make(http.Header)
22457	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22458	for k, v := range c.header_ {
22459		reqHeaders[k] = v
22460	}
22461	reqHeaders.Set("User-Agent", c.s.userAgent())
22462	var body io.Reader = nil
22463	body, err := googleapi.WithoutDataWrapper.JSONReader(c.buyongoogleprogramstatus)
22464	if err != nil {
22465		return nil, err
22466	}
22467	reqHeaders.Set("Content-Type", "application/json")
22468	c.urlParams_.Set("alt", alt)
22469	c.urlParams_.Set("prettyPrint", "false")
22470	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}")
22471	urls += "?" + c.urlParams_.Encode()
22472	req, err := http.NewRequest("PATCH", urls, body)
22473	if err != nil {
22474		return nil, err
22475	}
22476	req.Header = reqHeaders
22477	googleapi.Expand(req.URL, map[string]string{
22478		"merchantId": strconv.FormatInt(c.merchantId, 10),
22479		"regionCode": c.regionCode,
22480	})
22481	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22482}
22483
22484// Do executes the "content.buyongoogleprograms.patch" call.
22485// Exactly one of *BuyOnGoogleProgramStatus or error will be non-nil.
22486// Any non-2xx status code is an error. Response headers are in either
22487// *BuyOnGoogleProgramStatus.ServerResponse.Header or (if a response was
22488// returned at all) in error.(*googleapi.Error).Header. Use
22489// googleapi.IsNotModified to check whether the returned error was
22490// because http.StatusNotModified was returned.
22491func (c *BuyongoogleprogramsPatchCall) Do(opts ...googleapi.CallOption) (*BuyOnGoogleProgramStatus, error) {
22492	gensupport.SetOptions(c.urlParams_, opts...)
22493	res, err := c.doRequest("json")
22494	if res != nil && res.StatusCode == http.StatusNotModified {
22495		if res.Body != nil {
22496			res.Body.Close()
22497		}
22498		return nil, &googleapi.Error{
22499			Code:   res.StatusCode,
22500			Header: res.Header,
22501		}
22502	}
22503	if err != nil {
22504		return nil, err
22505	}
22506	defer googleapi.CloseBody(res)
22507	if err := googleapi.CheckResponse(res); err != nil {
22508		return nil, err
22509	}
22510	ret := &BuyOnGoogleProgramStatus{
22511		ServerResponse: googleapi.ServerResponse{
22512			Header:         res.Header,
22513			HTTPStatusCode: res.StatusCode,
22514		},
22515	}
22516	target := &ret
22517	if err := gensupport.DecodeResponse(target, res); err != nil {
22518		return nil, err
22519	}
22520	return ret, nil
22521	// {
22522	//   "description": "Updates the status of the BoG program for your Merchant Center account.",
22523	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}",
22524	//   "httpMethod": "PATCH",
22525	//   "id": "content.buyongoogleprograms.patch",
22526	//   "parameterOrder": [
22527	//     "merchantId",
22528	//     "regionCode"
22529	//   ],
22530	//   "parameters": {
22531	//     "merchantId": {
22532	//       "description": "Required. The ID of the account.",
22533	//       "format": "int64",
22534	//       "location": "path",
22535	//       "required": true,
22536	//       "type": "string"
22537	//     },
22538	//     "regionCode": {
22539	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22540	//       "location": "path",
22541	//       "required": true,
22542	//       "type": "string"
22543	//     },
22544	//     "updateMask": {
22545	//       "description": "The list of fields to update. If the update mask is not provided, then all the fields set in buyOnGoogleProgramStatus will be updated. Clearing fields is only possible if update mask is provided.",
22546	//       "format": "google-fieldmask",
22547	//       "location": "query",
22548	//       "type": "string"
22549	//     }
22550	//   },
22551	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}",
22552	//   "request": {
22553	//     "$ref": "BuyOnGoogleProgramStatus"
22554	//   },
22555	//   "response": {
22556	//     "$ref": "BuyOnGoogleProgramStatus"
22557	//   },
22558	//   "scopes": [
22559	//     "https://www.googleapis.com/auth/content"
22560	//   ]
22561	// }
22562
22563}
22564
22565// method id "content.buyongoogleprograms.pause":
22566
22567type BuyongoogleprogramsPauseCall struct {
22568	s                              *APIService
22569	merchantId                     int64
22570	regionCode                     string
22571	pausebuyongoogleprogramrequest *PauseBuyOnGoogleProgramRequest
22572	urlParams_                     gensupport.URLParams
22573	ctx_                           context.Context
22574	header_                        http.Header
22575}
22576
22577// Pause: Pauses the BoG program in your Merchant Center account.
22578// Important: This method is only whitelisted for selected merchants.
22579//
22580// - merchantId: The ID of the account.
22581// - regionCode: The program region code ISO 3166-1 alpha-2
22582//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22583//   US is available.
22584func (r *BuyongoogleprogramsService) Pause(merchantId int64, regionCode string, pausebuyongoogleprogramrequest *PauseBuyOnGoogleProgramRequest) *BuyongoogleprogramsPauseCall {
22585	c := &BuyongoogleprogramsPauseCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22586	c.merchantId = merchantId
22587	c.regionCode = regionCode
22588	c.pausebuyongoogleprogramrequest = pausebuyongoogleprogramrequest
22589	return c
22590}
22591
22592// Fields allows partial responses to be retrieved. See
22593// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22594// for more information.
22595func (c *BuyongoogleprogramsPauseCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsPauseCall {
22596	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22597	return c
22598}
22599
22600// Context sets the context to be used in this call's Do method. Any
22601// pending HTTP request will be aborted if the provided context is
22602// canceled.
22603func (c *BuyongoogleprogramsPauseCall) Context(ctx context.Context) *BuyongoogleprogramsPauseCall {
22604	c.ctx_ = ctx
22605	return c
22606}
22607
22608// Header returns an http.Header that can be modified by the caller to
22609// add HTTP headers to the request.
22610func (c *BuyongoogleprogramsPauseCall) Header() http.Header {
22611	if c.header_ == nil {
22612		c.header_ = make(http.Header)
22613	}
22614	return c.header_
22615}
22616
22617func (c *BuyongoogleprogramsPauseCall) doRequest(alt string) (*http.Response, error) {
22618	reqHeaders := make(http.Header)
22619	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22620	for k, v := range c.header_ {
22621		reqHeaders[k] = v
22622	}
22623	reqHeaders.Set("User-Agent", c.s.userAgent())
22624	var body io.Reader = nil
22625	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pausebuyongoogleprogramrequest)
22626	if err != nil {
22627		return nil, err
22628	}
22629	reqHeaders.Set("Content-Type", "application/json")
22630	c.urlParams_.Set("alt", alt)
22631	c.urlParams_.Set("prettyPrint", "false")
22632	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/pause")
22633	urls += "?" + c.urlParams_.Encode()
22634	req, err := http.NewRequest("POST", urls, body)
22635	if err != nil {
22636		return nil, err
22637	}
22638	req.Header = reqHeaders
22639	googleapi.Expand(req.URL, map[string]string{
22640		"merchantId": strconv.FormatInt(c.merchantId, 10),
22641		"regionCode": c.regionCode,
22642	})
22643	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22644}
22645
22646// Do executes the "content.buyongoogleprograms.pause" call.
22647func (c *BuyongoogleprogramsPauseCall) Do(opts ...googleapi.CallOption) error {
22648	gensupport.SetOptions(c.urlParams_, opts...)
22649	res, err := c.doRequest("json")
22650	if err != nil {
22651		return err
22652	}
22653	defer googleapi.CloseBody(res)
22654	if err := googleapi.CheckResponse(res); err != nil {
22655		return err
22656	}
22657	return nil
22658	// {
22659	//   "description": "Pauses the BoG program in your Merchant Center account. Important: This method is only whitelisted for selected merchants.",
22660	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/pause",
22661	//   "httpMethod": "POST",
22662	//   "id": "content.buyongoogleprograms.pause",
22663	//   "parameterOrder": [
22664	//     "merchantId",
22665	//     "regionCode"
22666	//   ],
22667	//   "parameters": {
22668	//     "merchantId": {
22669	//       "description": "Required. The ID of the account.",
22670	//       "format": "int64",
22671	//       "location": "path",
22672	//       "required": true,
22673	//       "type": "string"
22674	//     },
22675	//     "regionCode": {
22676	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22677	//       "location": "path",
22678	//       "required": true,
22679	//       "type": "string"
22680	//     }
22681	//   },
22682	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/pause",
22683	//   "request": {
22684	//     "$ref": "PauseBuyOnGoogleProgramRequest"
22685	//   },
22686	//   "scopes": [
22687	//     "https://www.googleapis.com/auth/content"
22688	//   ]
22689	// }
22690
22691}
22692
22693// method id "content.buyongoogleprograms.requestreview":
22694
22695type BuyongoogleprogramsRequestreviewCall struct {
22696	s                                      *APIService
22697	merchantId                             int64
22698	regionCode                             string
22699	requestreviewbuyongoogleprogramrequest *RequestReviewBuyOnGoogleProgramRequest
22700	urlParams_                             gensupport.URLParams
22701	ctx_                                   context.Context
22702	header_                                http.Header
22703}
22704
22705// Requestreview: Requests review and then activates the BoG program in
22706// your Merchant Center account for the first time. Moves the program to
22707// the REVIEW_PENDING state. Important: This method is only whitelisted
22708// for selected merchants.
22709//
22710// - merchantId: The ID of the account.
22711// - regionCode: The program region code ISO 3166-1 alpha-2
22712//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22713//   US is available.
22714func (r *BuyongoogleprogramsService) Requestreview(merchantId int64, regionCode string, requestreviewbuyongoogleprogramrequest *RequestReviewBuyOnGoogleProgramRequest) *BuyongoogleprogramsRequestreviewCall {
22715	c := &BuyongoogleprogramsRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22716	c.merchantId = merchantId
22717	c.regionCode = regionCode
22718	c.requestreviewbuyongoogleprogramrequest = requestreviewbuyongoogleprogramrequest
22719	return c
22720}
22721
22722// Fields allows partial responses to be retrieved. See
22723// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22724// for more information.
22725func (c *BuyongoogleprogramsRequestreviewCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsRequestreviewCall {
22726	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22727	return c
22728}
22729
22730// Context sets the context to be used in this call's Do method. Any
22731// pending HTTP request will be aborted if the provided context is
22732// canceled.
22733func (c *BuyongoogleprogramsRequestreviewCall) Context(ctx context.Context) *BuyongoogleprogramsRequestreviewCall {
22734	c.ctx_ = ctx
22735	return c
22736}
22737
22738// Header returns an http.Header that can be modified by the caller to
22739// add HTTP headers to the request.
22740func (c *BuyongoogleprogramsRequestreviewCall) Header() http.Header {
22741	if c.header_ == nil {
22742		c.header_ = make(http.Header)
22743	}
22744	return c.header_
22745}
22746
22747func (c *BuyongoogleprogramsRequestreviewCall) doRequest(alt string) (*http.Response, error) {
22748	reqHeaders := make(http.Header)
22749	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22750	for k, v := range c.header_ {
22751		reqHeaders[k] = v
22752	}
22753	reqHeaders.Set("User-Agent", c.s.userAgent())
22754	var body io.Reader = nil
22755	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewbuyongoogleprogramrequest)
22756	if err != nil {
22757		return nil, err
22758	}
22759	reqHeaders.Set("Content-Type", "application/json")
22760	c.urlParams_.Set("alt", alt)
22761	c.urlParams_.Set("prettyPrint", "false")
22762	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/requestreview")
22763	urls += "?" + c.urlParams_.Encode()
22764	req, err := http.NewRequest("POST", urls, body)
22765	if err != nil {
22766		return nil, err
22767	}
22768	req.Header = reqHeaders
22769	googleapi.Expand(req.URL, map[string]string{
22770		"merchantId": strconv.FormatInt(c.merchantId, 10),
22771		"regionCode": c.regionCode,
22772	})
22773	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22774}
22775
22776// Do executes the "content.buyongoogleprograms.requestreview" call.
22777func (c *BuyongoogleprogramsRequestreviewCall) Do(opts ...googleapi.CallOption) error {
22778	gensupport.SetOptions(c.urlParams_, opts...)
22779	res, err := c.doRequest("json")
22780	if err != nil {
22781		return err
22782	}
22783	defer googleapi.CloseBody(res)
22784	if err := googleapi.CheckResponse(res); err != nil {
22785		return err
22786	}
22787	return nil
22788	// {
22789	//   "description": "Requests review and then activates the BoG program in your Merchant Center account for the first time. Moves the program to the REVIEW_PENDING state. Important: This method is only whitelisted for selected merchants.",
22790	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/requestreview",
22791	//   "httpMethod": "POST",
22792	//   "id": "content.buyongoogleprograms.requestreview",
22793	//   "parameterOrder": [
22794	//     "merchantId",
22795	//     "regionCode"
22796	//   ],
22797	//   "parameters": {
22798	//     "merchantId": {
22799	//       "description": "Required. The ID of the account.",
22800	//       "format": "int64",
22801	//       "location": "path",
22802	//       "required": true,
22803	//       "type": "string"
22804	//     },
22805	//     "regionCode": {
22806	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22807	//       "location": "path",
22808	//       "required": true,
22809	//       "type": "string"
22810	//     }
22811	//   },
22812	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/requestreview",
22813	//   "request": {
22814	//     "$ref": "RequestReviewBuyOnGoogleProgramRequest"
22815	//   },
22816	//   "scopes": [
22817	//     "https://www.googleapis.com/auth/content"
22818	//   ]
22819	// }
22820
22821}
22822
22823// method id "content.collections.create":
22824
22825type CollectionsCreateCall struct {
22826	s          *APIService
22827	merchantId int64
22828	collection *Collection
22829	urlParams_ gensupport.URLParams
22830	ctx_       context.Context
22831	header_    http.Header
22832}
22833
22834// Create: Uploads a collection to your Merchant Center account. If a
22835// collection with the same collectionId already exists, this method
22836// updates that entry. In each update, the collection is completely
22837// replaced by the fields in the body of the update request.
22838//
22839// - merchantId: The ID of the account that contains the collection.
22840//   This account cannot be a multi-client account.
22841func (r *CollectionsService) Create(merchantId int64, collection *Collection) *CollectionsCreateCall {
22842	c := &CollectionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22843	c.merchantId = merchantId
22844	c.collection = collection
22845	return c
22846}
22847
22848// Fields allows partial responses to be retrieved. See
22849// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22850// for more information.
22851func (c *CollectionsCreateCall) Fields(s ...googleapi.Field) *CollectionsCreateCall {
22852	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22853	return c
22854}
22855
22856// Context sets the context to be used in this call's Do method. Any
22857// pending HTTP request will be aborted if the provided context is
22858// canceled.
22859func (c *CollectionsCreateCall) Context(ctx context.Context) *CollectionsCreateCall {
22860	c.ctx_ = ctx
22861	return c
22862}
22863
22864// Header returns an http.Header that can be modified by the caller to
22865// add HTTP headers to the request.
22866func (c *CollectionsCreateCall) Header() http.Header {
22867	if c.header_ == nil {
22868		c.header_ = make(http.Header)
22869	}
22870	return c.header_
22871}
22872
22873func (c *CollectionsCreateCall) doRequest(alt string) (*http.Response, error) {
22874	reqHeaders := make(http.Header)
22875	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22876	for k, v := range c.header_ {
22877		reqHeaders[k] = v
22878	}
22879	reqHeaders.Set("User-Agent", c.s.userAgent())
22880	var body io.Reader = nil
22881	body, err := googleapi.WithoutDataWrapper.JSONReader(c.collection)
22882	if err != nil {
22883		return nil, err
22884	}
22885	reqHeaders.Set("Content-Type", "application/json")
22886	c.urlParams_.Set("alt", alt)
22887	c.urlParams_.Set("prettyPrint", "false")
22888	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections")
22889	urls += "?" + c.urlParams_.Encode()
22890	req, err := http.NewRequest("POST", urls, body)
22891	if err != nil {
22892		return nil, err
22893	}
22894	req.Header = reqHeaders
22895	googleapi.Expand(req.URL, map[string]string{
22896		"merchantId": strconv.FormatInt(c.merchantId, 10),
22897	})
22898	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22899}
22900
22901// Do executes the "content.collections.create" call.
22902// Exactly one of *Collection or error will be non-nil. Any non-2xx
22903// status code is an error. Response headers are in either
22904// *Collection.ServerResponse.Header or (if a response was returned at
22905// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22906// to check whether the returned error was because
22907// http.StatusNotModified was returned.
22908func (c *CollectionsCreateCall) Do(opts ...googleapi.CallOption) (*Collection, error) {
22909	gensupport.SetOptions(c.urlParams_, opts...)
22910	res, err := c.doRequest("json")
22911	if res != nil && res.StatusCode == http.StatusNotModified {
22912		if res.Body != nil {
22913			res.Body.Close()
22914		}
22915		return nil, &googleapi.Error{
22916			Code:   res.StatusCode,
22917			Header: res.Header,
22918		}
22919	}
22920	if err != nil {
22921		return nil, err
22922	}
22923	defer googleapi.CloseBody(res)
22924	if err := googleapi.CheckResponse(res); err != nil {
22925		return nil, err
22926	}
22927	ret := &Collection{
22928		ServerResponse: googleapi.ServerResponse{
22929			Header:         res.Header,
22930			HTTPStatusCode: res.StatusCode,
22931		},
22932	}
22933	target := &ret
22934	if err := gensupport.DecodeResponse(target, res); err != nil {
22935		return nil, err
22936	}
22937	return ret, nil
22938	// {
22939	//   "description": "Uploads a collection to your Merchant Center account. If a collection with the same collectionId already exists, this method updates that entry. In each update, the collection is completely replaced by the fields in the body of the update request.",
22940	//   "flatPath": "{merchantId}/collections",
22941	//   "httpMethod": "POST",
22942	//   "id": "content.collections.create",
22943	//   "parameterOrder": [
22944	//     "merchantId"
22945	//   ],
22946	//   "parameters": {
22947	//     "merchantId": {
22948	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
22949	//       "format": "int64",
22950	//       "location": "path",
22951	//       "required": true,
22952	//       "type": "string"
22953	//     }
22954	//   },
22955	//   "path": "{merchantId}/collections",
22956	//   "request": {
22957	//     "$ref": "Collection"
22958	//   },
22959	//   "response": {
22960	//     "$ref": "Collection"
22961	//   },
22962	//   "scopes": [
22963	//     "https://www.googleapis.com/auth/content"
22964	//   ]
22965	// }
22966
22967}
22968
22969// method id "content.collections.delete":
22970
22971type CollectionsDeleteCall struct {
22972	s            *APIService
22973	merchantId   int64
22974	collectionId string
22975	urlParams_   gensupport.URLParams
22976	ctx_         context.Context
22977	header_      http.Header
22978}
22979
22980// Delete: Deletes a collection from your Merchant Center account.
22981//
22982// - collectionId: The collectionId of the collection. CollectionId is
22983//   the same as the REST ID of the collection.
22984// - merchantId: The ID of the account that contains the collection.
22985//   This account cannot be a multi-client account.
22986func (r *CollectionsService) Delete(merchantId int64, collectionId string) *CollectionsDeleteCall {
22987	c := &CollectionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22988	c.merchantId = merchantId
22989	c.collectionId = collectionId
22990	return c
22991}
22992
22993// Fields allows partial responses to be retrieved. See
22994// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22995// for more information.
22996func (c *CollectionsDeleteCall) Fields(s ...googleapi.Field) *CollectionsDeleteCall {
22997	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22998	return c
22999}
23000
23001// Context sets the context to be used in this call's Do method. Any
23002// pending HTTP request will be aborted if the provided context is
23003// canceled.
23004func (c *CollectionsDeleteCall) Context(ctx context.Context) *CollectionsDeleteCall {
23005	c.ctx_ = ctx
23006	return c
23007}
23008
23009// Header returns an http.Header that can be modified by the caller to
23010// add HTTP headers to the request.
23011func (c *CollectionsDeleteCall) Header() http.Header {
23012	if c.header_ == nil {
23013		c.header_ = make(http.Header)
23014	}
23015	return c.header_
23016}
23017
23018func (c *CollectionsDeleteCall) doRequest(alt string) (*http.Response, error) {
23019	reqHeaders := make(http.Header)
23020	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23021	for k, v := range c.header_ {
23022		reqHeaders[k] = v
23023	}
23024	reqHeaders.Set("User-Agent", c.s.userAgent())
23025	var body io.Reader = nil
23026	c.urlParams_.Set("alt", alt)
23027	c.urlParams_.Set("prettyPrint", "false")
23028	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections/{collectionId}")
23029	urls += "?" + c.urlParams_.Encode()
23030	req, err := http.NewRequest("DELETE", urls, body)
23031	if err != nil {
23032		return nil, err
23033	}
23034	req.Header = reqHeaders
23035	googleapi.Expand(req.URL, map[string]string{
23036		"merchantId":   strconv.FormatInt(c.merchantId, 10),
23037		"collectionId": c.collectionId,
23038	})
23039	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23040}
23041
23042// Do executes the "content.collections.delete" call.
23043func (c *CollectionsDeleteCall) Do(opts ...googleapi.CallOption) error {
23044	gensupport.SetOptions(c.urlParams_, opts...)
23045	res, err := c.doRequest("json")
23046	if err != nil {
23047		return err
23048	}
23049	defer googleapi.CloseBody(res)
23050	if err := googleapi.CheckResponse(res); err != nil {
23051		return err
23052	}
23053	return nil
23054	// {
23055	//   "description": "Deletes a collection from your Merchant Center account.",
23056	//   "flatPath": "{merchantId}/collections/{collectionId}",
23057	//   "httpMethod": "DELETE",
23058	//   "id": "content.collections.delete",
23059	//   "parameterOrder": [
23060	//     "merchantId",
23061	//     "collectionId"
23062	//   ],
23063	//   "parameters": {
23064	//     "collectionId": {
23065	//       "description": "Required. The collectionId of the collection. CollectionId is the same as the REST ID of the collection.",
23066	//       "location": "path",
23067	//       "required": true,
23068	//       "type": "string"
23069	//     },
23070	//     "merchantId": {
23071	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23072	//       "format": "int64",
23073	//       "location": "path",
23074	//       "required": true,
23075	//       "type": "string"
23076	//     }
23077	//   },
23078	//   "path": "{merchantId}/collections/{collectionId}",
23079	//   "scopes": [
23080	//     "https://www.googleapis.com/auth/content"
23081	//   ]
23082	// }
23083
23084}
23085
23086// method id "content.collections.get":
23087
23088type CollectionsGetCall struct {
23089	s            *APIService
23090	merchantId   int64
23091	collectionId string
23092	urlParams_   gensupport.URLParams
23093	ifNoneMatch_ string
23094	ctx_         context.Context
23095	header_      http.Header
23096}
23097
23098// Get: Retrieves a collection from your Merchant Center account.
23099//
23100// - collectionId: The REST ID of the collection.
23101// - merchantId: The ID of the account that contains the collection.
23102//   This account cannot be a multi-client account.
23103func (r *CollectionsService) Get(merchantId int64, collectionId string) *CollectionsGetCall {
23104	c := &CollectionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23105	c.merchantId = merchantId
23106	c.collectionId = collectionId
23107	return c
23108}
23109
23110// Fields allows partial responses to be retrieved. See
23111// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23112// for more information.
23113func (c *CollectionsGetCall) Fields(s ...googleapi.Field) *CollectionsGetCall {
23114	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23115	return c
23116}
23117
23118// IfNoneMatch sets the optional parameter which makes the operation
23119// fail if the object's ETag matches the given value. This is useful for
23120// getting updates only after the object has changed since the last
23121// request. Use googleapi.IsNotModified to check whether the response
23122// error from Do is the result of In-None-Match.
23123func (c *CollectionsGetCall) IfNoneMatch(entityTag string) *CollectionsGetCall {
23124	c.ifNoneMatch_ = entityTag
23125	return c
23126}
23127
23128// Context sets the context to be used in this call's Do method. Any
23129// pending HTTP request will be aborted if the provided context is
23130// canceled.
23131func (c *CollectionsGetCall) Context(ctx context.Context) *CollectionsGetCall {
23132	c.ctx_ = ctx
23133	return c
23134}
23135
23136// Header returns an http.Header that can be modified by the caller to
23137// add HTTP headers to the request.
23138func (c *CollectionsGetCall) Header() http.Header {
23139	if c.header_ == nil {
23140		c.header_ = make(http.Header)
23141	}
23142	return c.header_
23143}
23144
23145func (c *CollectionsGetCall) doRequest(alt string) (*http.Response, error) {
23146	reqHeaders := make(http.Header)
23147	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23148	for k, v := range c.header_ {
23149		reqHeaders[k] = v
23150	}
23151	reqHeaders.Set("User-Agent", c.s.userAgent())
23152	if c.ifNoneMatch_ != "" {
23153		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23154	}
23155	var body io.Reader = nil
23156	c.urlParams_.Set("alt", alt)
23157	c.urlParams_.Set("prettyPrint", "false")
23158	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections/{collectionId}")
23159	urls += "?" + c.urlParams_.Encode()
23160	req, err := http.NewRequest("GET", urls, body)
23161	if err != nil {
23162		return nil, err
23163	}
23164	req.Header = reqHeaders
23165	googleapi.Expand(req.URL, map[string]string{
23166		"merchantId":   strconv.FormatInt(c.merchantId, 10),
23167		"collectionId": c.collectionId,
23168	})
23169	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23170}
23171
23172// Do executes the "content.collections.get" call.
23173// Exactly one of *Collection or error will be non-nil. Any non-2xx
23174// status code is an error. Response headers are in either
23175// *Collection.ServerResponse.Header or (if a response was returned at
23176// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
23177// to check whether the returned error was because
23178// http.StatusNotModified was returned.
23179func (c *CollectionsGetCall) Do(opts ...googleapi.CallOption) (*Collection, error) {
23180	gensupport.SetOptions(c.urlParams_, opts...)
23181	res, err := c.doRequest("json")
23182	if res != nil && res.StatusCode == http.StatusNotModified {
23183		if res.Body != nil {
23184			res.Body.Close()
23185		}
23186		return nil, &googleapi.Error{
23187			Code:   res.StatusCode,
23188			Header: res.Header,
23189		}
23190	}
23191	if err != nil {
23192		return nil, err
23193	}
23194	defer googleapi.CloseBody(res)
23195	if err := googleapi.CheckResponse(res); err != nil {
23196		return nil, err
23197	}
23198	ret := &Collection{
23199		ServerResponse: googleapi.ServerResponse{
23200			Header:         res.Header,
23201			HTTPStatusCode: res.StatusCode,
23202		},
23203	}
23204	target := &ret
23205	if err := gensupport.DecodeResponse(target, res); err != nil {
23206		return nil, err
23207	}
23208	return ret, nil
23209	// {
23210	//   "description": "Retrieves a collection from your Merchant Center account.",
23211	//   "flatPath": "{merchantId}/collections/{collectionId}",
23212	//   "httpMethod": "GET",
23213	//   "id": "content.collections.get",
23214	//   "parameterOrder": [
23215	//     "merchantId",
23216	//     "collectionId"
23217	//   ],
23218	//   "parameters": {
23219	//     "collectionId": {
23220	//       "description": "Required. The REST ID of the collection.",
23221	//       "location": "path",
23222	//       "required": true,
23223	//       "type": "string"
23224	//     },
23225	//     "merchantId": {
23226	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23227	//       "format": "int64",
23228	//       "location": "path",
23229	//       "required": true,
23230	//       "type": "string"
23231	//     }
23232	//   },
23233	//   "path": "{merchantId}/collections/{collectionId}",
23234	//   "response": {
23235	//     "$ref": "Collection"
23236	//   },
23237	//   "scopes": [
23238	//     "https://www.googleapis.com/auth/content"
23239	//   ]
23240	// }
23241
23242}
23243
23244// method id "content.collections.list":
23245
23246type CollectionsListCall struct {
23247	s            *APIService
23248	merchantId   int64
23249	urlParams_   gensupport.URLParams
23250	ifNoneMatch_ string
23251	ctx_         context.Context
23252	header_      http.Header
23253}
23254
23255// List: Lists the collections in your Merchant Center account. The
23256// response might contain fewer items than specified by page_size. Rely
23257// on next_page_token to determine if there are more items to be
23258// requested.
23259//
23260// - merchantId: The ID of the account that contains the collection.
23261//   This account cannot be a multi-client account.
23262func (r *CollectionsService) List(merchantId int64) *CollectionsListCall {
23263	c := &CollectionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23264	c.merchantId = merchantId
23265	return c
23266}
23267
23268// PageSize sets the optional parameter "pageSize": The maximum number
23269// of collections to return in the response, used for paging. Defaults
23270// to 50; values above 1000 will be coerced to 1000.
23271func (c *CollectionsListCall) PageSize(pageSize int64) *CollectionsListCall {
23272	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23273	return c
23274}
23275
23276// PageToken sets the optional parameter "pageToken": Token (if
23277// provided) to retrieve the subsequent page. All other parameters must
23278// match the original call that provided the page token.
23279func (c *CollectionsListCall) PageToken(pageToken string) *CollectionsListCall {
23280	c.urlParams_.Set("pageToken", pageToken)
23281	return c
23282}
23283
23284// Fields allows partial responses to be retrieved. See
23285// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23286// for more information.
23287func (c *CollectionsListCall) Fields(s ...googleapi.Field) *CollectionsListCall {
23288	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23289	return c
23290}
23291
23292// IfNoneMatch sets the optional parameter which makes the operation
23293// fail if the object's ETag matches the given value. This is useful for
23294// getting updates only after the object has changed since the last
23295// request. Use googleapi.IsNotModified to check whether the response
23296// error from Do is the result of In-None-Match.
23297func (c *CollectionsListCall) IfNoneMatch(entityTag string) *CollectionsListCall {
23298	c.ifNoneMatch_ = entityTag
23299	return c
23300}
23301
23302// Context sets the context to be used in this call's Do method. Any
23303// pending HTTP request will be aborted if the provided context is
23304// canceled.
23305func (c *CollectionsListCall) Context(ctx context.Context) *CollectionsListCall {
23306	c.ctx_ = ctx
23307	return c
23308}
23309
23310// Header returns an http.Header that can be modified by the caller to
23311// add HTTP headers to the request.
23312func (c *CollectionsListCall) Header() http.Header {
23313	if c.header_ == nil {
23314		c.header_ = make(http.Header)
23315	}
23316	return c.header_
23317}
23318
23319func (c *CollectionsListCall) doRequest(alt string) (*http.Response, error) {
23320	reqHeaders := make(http.Header)
23321	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23322	for k, v := range c.header_ {
23323		reqHeaders[k] = v
23324	}
23325	reqHeaders.Set("User-Agent", c.s.userAgent())
23326	if c.ifNoneMatch_ != "" {
23327		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23328	}
23329	var body io.Reader = nil
23330	c.urlParams_.Set("alt", alt)
23331	c.urlParams_.Set("prettyPrint", "false")
23332	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections")
23333	urls += "?" + c.urlParams_.Encode()
23334	req, err := http.NewRequest("GET", urls, body)
23335	if err != nil {
23336		return nil, err
23337	}
23338	req.Header = reqHeaders
23339	googleapi.Expand(req.URL, map[string]string{
23340		"merchantId": strconv.FormatInt(c.merchantId, 10),
23341	})
23342	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23343}
23344
23345// Do executes the "content.collections.list" call.
23346// Exactly one of *ListCollectionsResponse or error will be non-nil. Any
23347// non-2xx status code is an error. Response headers are in either
23348// *ListCollectionsResponse.ServerResponse.Header or (if a response was
23349// returned at all) in error.(*googleapi.Error).Header. Use
23350// googleapi.IsNotModified to check whether the returned error was
23351// because http.StatusNotModified was returned.
23352func (c *CollectionsListCall) Do(opts ...googleapi.CallOption) (*ListCollectionsResponse, error) {
23353	gensupport.SetOptions(c.urlParams_, opts...)
23354	res, err := c.doRequest("json")
23355	if res != nil && res.StatusCode == http.StatusNotModified {
23356		if res.Body != nil {
23357			res.Body.Close()
23358		}
23359		return nil, &googleapi.Error{
23360			Code:   res.StatusCode,
23361			Header: res.Header,
23362		}
23363	}
23364	if err != nil {
23365		return nil, err
23366	}
23367	defer googleapi.CloseBody(res)
23368	if err := googleapi.CheckResponse(res); err != nil {
23369		return nil, err
23370	}
23371	ret := &ListCollectionsResponse{
23372		ServerResponse: googleapi.ServerResponse{
23373			Header:         res.Header,
23374			HTTPStatusCode: res.StatusCode,
23375		},
23376	}
23377	target := &ret
23378	if err := gensupport.DecodeResponse(target, res); err != nil {
23379		return nil, err
23380	}
23381	return ret, nil
23382	// {
23383	//   "description": "Lists the collections in your Merchant Center account. The response might contain fewer items than specified by page_size. Rely on next_page_token to determine if there are more items to be requested.",
23384	//   "flatPath": "{merchantId}/collections",
23385	//   "httpMethod": "GET",
23386	//   "id": "content.collections.list",
23387	//   "parameterOrder": [
23388	//     "merchantId"
23389	//   ],
23390	//   "parameters": {
23391	//     "merchantId": {
23392	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23393	//       "format": "int64",
23394	//       "location": "path",
23395	//       "required": true,
23396	//       "type": "string"
23397	//     },
23398	//     "pageSize": {
23399	//       "description": "The maximum number of collections to return in the response, used for paging. Defaults to 50; values above 1000 will be coerced to 1000.",
23400	//       "format": "int32",
23401	//       "location": "query",
23402	//       "type": "integer"
23403	//     },
23404	//     "pageToken": {
23405	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
23406	//       "location": "query",
23407	//       "type": "string"
23408	//     }
23409	//   },
23410	//   "path": "{merchantId}/collections",
23411	//   "response": {
23412	//     "$ref": "ListCollectionsResponse"
23413	//   },
23414	//   "scopes": [
23415	//     "https://www.googleapis.com/auth/content"
23416	//   ]
23417	// }
23418
23419}
23420
23421// Pages invokes f for each page of results.
23422// A non-nil error returned from f will halt the iteration.
23423// The provided context supersedes any context provided to the Context method.
23424func (c *CollectionsListCall) Pages(ctx context.Context, f func(*ListCollectionsResponse) error) error {
23425	c.ctx_ = ctx
23426	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23427	for {
23428		x, err := c.Do()
23429		if err != nil {
23430			return err
23431		}
23432		if err := f(x); err != nil {
23433			return err
23434		}
23435		if x.NextPageToken == "" {
23436			return nil
23437		}
23438		c.PageToken(x.NextPageToken)
23439	}
23440}
23441
23442// method id "content.collectionstatuses.get":
23443
23444type CollectionstatusesGetCall struct {
23445	s            *APIService
23446	merchantId   int64
23447	collectionId string
23448	urlParams_   gensupport.URLParams
23449	ifNoneMatch_ string
23450	ctx_         context.Context
23451	header_      http.Header
23452}
23453
23454// Get: Gets the status of a collection from your Merchant Center
23455// account.
23456//
23457// - collectionId: The collectionId of the collection. CollectionId is
23458//   the same as the REST ID of the collection.
23459// - merchantId: The ID of the account that contains the collection.
23460//   This account cannot be a multi-client account.
23461func (r *CollectionstatusesService) Get(merchantId int64, collectionId string) *CollectionstatusesGetCall {
23462	c := &CollectionstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23463	c.merchantId = merchantId
23464	c.collectionId = collectionId
23465	return c
23466}
23467
23468// Fields allows partial responses to be retrieved. See
23469// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23470// for more information.
23471func (c *CollectionstatusesGetCall) Fields(s ...googleapi.Field) *CollectionstatusesGetCall {
23472	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23473	return c
23474}
23475
23476// IfNoneMatch sets the optional parameter which makes the operation
23477// fail if the object's ETag matches the given value. This is useful for
23478// getting updates only after the object has changed since the last
23479// request. Use googleapi.IsNotModified to check whether the response
23480// error from Do is the result of In-None-Match.
23481func (c *CollectionstatusesGetCall) IfNoneMatch(entityTag string) *CollectionstatusesGetCall {
23482	c.ifNoneMatch_ = entityTag
23483	return c
23484}
23485
23486// Context sets the context to be used in this call's Do method. Any
23487// pending HTTP request will be aborted if the provided context is
23488// canceled.
23489func (c *CollectionstatusesGetCall) Context(ctx context.Context) *CollectionstatusesGetCall {
23490	c.ctx_ = ctx
23491	return c
23492}
23493
23494// Header returns an http.Header that can be modified by the caller to
23495// add HTTP headers to the request.
23496func (c *CollectionstatusesGetCall) Header() http.Header {
23497	if c.header_ == nil {
23498		c.header_ = make(http.Header)
23499	}
23500	return c.header_
23501}
23502
23503func (c *CollectionstatusesGetCall) doRequest(alt string) (*http.Response, error) {
23504	reqHeaders := make(http.Header)
23505	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23506	for k, v := range c.header_ {
23507		reqHeaders[k] = v
23508	}
23509	reqHeaders.Set("User-Agent", c.s.userAgent())
23510	if c.ifNoneMatch_ != "" {
23511		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23512	}
23513	var body io.Reader = nil
23514	c.urlParams_.Set("alt", alt)
23515	c.urlParams_.Set("prettyPrint", "false")
23516	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collectionstatuses/{collectionId}")
23517	urls += "?" + c.urlParams_.Encode()
23518	req, err := http.NewRequest("GET", urls, body)
23519	if err != nil {
23520		return nil, err
23521	}
23522	req.Header = reqHeaders
23523	googleapi.Expand(req.URL, map[string]string{
23524		"merchantId":   strconv.FormatInt(c.merchantId, 10),
23525		"collectionId": c.collectionId,
23526	})
23527	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23528}
23529
23530// Do executes the "content.collectionstatuses.get" call.
23531// Exactly one of *CollectionStatus or error will be non-nil. Any
23532// non-2xx status code is an error. Response headers are in either
23533// *CollectionStatus.ServerResponse.Header or (if a response was
23534// returned at all) in error.(*googleapi.Error).Header. Use
23535// googleapi.IsNotModified to check whether the returned error was
23536// because http.StatusNotModified was returned.
23537func (c *CollectionstatusesGetCall) Do(opts ...googleapi.CallOption) (*CollectionStatus, error) {
23538	gensupport.SetOptions(c.urlParams_, opts...)
23539	res, err := c.doRequest("json")
23540	if res != nil && res.StatusCode == http.StatusNotModified {
23541		if res.Body != nil {
23542			res.Body.Close()
23543		}
23544		return nil, &googleapi.Error{
23545			Code:   res.StatusCode,
23546			Header: res.Header,
23547		}
23548	}
23549	if err != nil {
23550		return nil, err
23551	}
23552	defer googleapi.CloseBody(res)
23553	if err := googleapi.CheckResponse(res); err != nil {
23554		return nil, err
23555	}
23556	ret := &CollectionStatus{
23557		ServerResponse: googleapi.ServerResponse{
23558			Header:         res.Header,
23559			HTTPStatusCode: res.StatusCode,
23560		},
23561	}
23562	target := &ret
23563	if err := gensupport.DecodeResponse(target, res); err != nil {
23564		return nil, err
23565	}
23566	return ret, nil
23567	// {
23568	//   "description": "Gets the status of a collection from your Merchant Center account.",
23569	//   "flatPath": "{merchantId}/collectionstatuses/{collectionId}",
23570	//   "httpMethod": "GET",
23571	//   "id": "content.collectionstatuses.get",
23572	//   "parameterOrder": [
23573	//     "merchantId",
23574	//     "collectionId"
23575	//   ],
23576	//   "parameters": {
23577	//     "collectionId": {
23578	//       "description": "Required. The collectionId of the collection. CollectionId is the same as the REST ID of the collection.",
23579	//       "location": "path",
23580	//       "required": true,
23581	//       "type": "string"
23582	//     },
23583	//     "merchantId": {
23584	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23585	//       "format": "int64",
23586	//       "location": "path",
23587	//       "required": true,
23588	//       "type": "string"
23589	//     }
23590	//   },
23591	//   "path": "{merchantId}/collectionstatuses/{collectionId}",
23592	//   "response": {
23593	//     "$ref": "CollectionStatus"
23594	//   },
23595	//   "scopes": [
23596	//     "https://www.googleapis.com/auth/content"
23597	//   ]
23598	// }
23599
23600}
23601
23602// method id "content.collectionstatuses.list":
23603
23604type CollectionstatusesListCall struct {
23605	s            *APIService
23606	merchantId   int64
23607	urlParams_   gensupport.URLParams
23608	ifNoneMatch_ string
23609	ctx_         context.Context
23610	header_      http.Header
23611}
23612
23613// List: Lists the statuses of the collections in your Merchant Center
23614// account.
23615//
23616// - merchantId: The ID of the account that contains the collection.
23617//   This account cannot be a multi-client account.
23618func (r *CollectionstatusesService) List(merchantId int64) *CollectionstatusesListCall {
23619	c := &CollectionstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23620	c.merchantId = merchantId
23621	return c
23622}
23623
23624// PageSize sets the optional parameter "pageSize": The maximum number
23625// of collection statuses to return in the response, used for paging.
23626// Defaults to 50; values above 1000 will be coerced to 1000.
23627func (c *CollectionstatusesListCall) PageSize(pageSize int64) *CollectionstatusesListCall {
23628	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23629	return c
23630}
23631
23632// PageToken sets the optional parameter "pageToken": Token (if
23633// provided) to retrieve the subsequent page. All other parameters must
23634// match the original call that provided the page token.
23635func (c *CollectionstatusesListCall) PageToken(pageToken string) *CollectionstatusesListCall {
23636	c.urlParams_.Set("pageToken", pageToken)
23637	return c
23638}
23639
23640// Fields allows partial responses to be retrieved. See
23641// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23642// for more information.
23643func (c *CollectionstatusesListCall) Fields(s ...googleapi.Field) *CollectionstatusesListCall {
23644	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23645	return c
23646}
23647
23648// IfNoneMatch sets the optional parameter which makes the operation
23649// fail if the object's ETag matches the given value. This is useful for
23650// getting updates only after the object has changed since the last
23651// request. Use googleapi.IsNotModified to check whether the response
23652// error from Do is the result of In-None-Match.
23653func (c *CollectionstatusesListCall) IfNoneMatch(entityTag string) *CollectionstatusesListCall {
23654	c.ifNoneMatch_ = entityTag
23655	return c
23656}
23657
23658// Context sets the context to be used in this call's Do method. Any
23659// pending HTTP request will be aborted if the provided context is
23660// canceled.
23661func (c *CollectionstatusesListCall) Context(ctx context.Context) *CollectionstatusesListCall {
23662	c.ctx_ = ctx
23663	return c
23664}
23665
23666// Header returns an http.Header that can be modified by the caller to
23667// add HTTP headers to the request.
23668func (c *CollectionstatusesListCall) Header() http.Header {
23669	if c.header_ == nil {
23670		c.header_ = make(http.Header)
23671	}
23672	return c.header_
23673}
23674
23675func (c *CollectionstatusesListCall) doRequest(alt string) (*http.Response, error) {
23676	reqHeaders := make(http.Header)
23677	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23678	for k, v := range c.header_ {
23679		reqHeaders[k] = v
23680	}
23681	reqHeaders.Set("User-Agent", c.s.userAgent())
23682	if c.ifNoneMatch_ != "" {
23683		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23684	}
23685	var body io.Reader = nil
23686	c.urlParams_.Set("alt", alt)
23687	c.urlParams_.Set("prettyPrint", "false")
23688	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collectionstatuses")
23689	urls += "?" + c.urlParams_.Encode()
23690	req, err := http.NewRequest("GET", urls, body)
23691	if err != nil {
23692		return nil, err
23693	}
23694	req.Header = reqHeaders
23695	googleapi.Expand(req.URL, map[string]string{
23696		"merchantId": strconv.FormatInt(c.merchantId, 10),
23697	})
23698	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23699}
23700
23701// Do executes the "content.collectionstatuses.list" call.
23702// Exactly one of *ListCollectionStatusesResponse or error will be
23703// non-nil. Any non-2xx status code is an error. Response headers are in
23704// either *ListCollectionStatusesResponse.ServerResponse.Header or (if a
23705// response was returned at all) in error.(*googleapi.Error).Header. Use
23706// googleapi.IsNotModified to check whether the returned error was
23707// because http.StatusNotModified was returned.
23708func (c *CollectionstatusesListCall) Do(opts ...googleapi.CallOption) (*ListCollectionStatusesResponse, error) {
23709	gensupport.SetOptions(c.urlParams_, opts...)
23710	res, err := c.doRequest("json")
23711	if res != nil && res.StatusCode == http.StatusNotModified {
23712		if res.Body != nil {
23713			res.Body.Close()
23714		}
23715		return nil, &googleapi.Error{
23716			Code:   res.StatusCode,
23717			Header: res.Header,
23718		}
23719	}
23720	if err != nil {
23721		return nil, err
23722	}
23723	defer googleapi.CloseBody(res)
23724	if err := googleapi.CheckResponse(res); err != nil {
23725		return nil, err
23726	}
23727	ret := &ListCollectionStatusesResponse{
23728		ServerResponse: googleapi.ServerResponse{
23729			Header:         res.Header,
23730			HTTPStatusCode: res.StatusCode,
23731		},
23732	}
23733	target := &ret
23734	if err := gensupport.DecodeResponse(target, res); err != nil {
23735		return nil, err
23736	}
23737	return ret, nil
23738	// {
23739	//   "description": "Lists the statuses of the collections in your Merchant Center account.",
23740	//   "flatPath": "{merchantId}/collectionstatuses",
23741	//   "httpMethod": "GET",
23742	//   "id": "content.collectionstatuses.list",
23743	//   "parameterOrder": [
23744	//     "merchantId"
23745	//   ],
23746	//   "parameters": {
23747	//     "merchantId": {
23748	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23749	//       "format": "int64",
23750	//       "location": "path",
23751	//       "required": true,
23752	//       "type": "string"
23753	//     },
23754	//     "pageSize": {
23755	//       "description": "The maximum number of collection statuses to return in the response, used for paging. Defaults to 50; values above 1000 will be coerced to 1000.",
23756	//       "format": "int32",
23757	//       "location": "query",
23758	//       "type": "integer"
23759	//     },
23760	//     "pageToken": {
23761	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
23762	//       "location": "query",
23763	//       "type": "string"
23764	//     }
23765	//   },
23766	//   "path": "{merchantId}/collectionstatuses",
23767	//   "response": {
23768	//     "$ref": "ListCollectionStatusesResponse"
23769	//   },
23770	//   "scopes": [
23771	//     "https://www.googleapis.com/auth/content"
23772	//   ]
23773	// }
23774
23775}
23776
23777// Pages invokes f for each page of results.
23778// A non-nil error returned from f will halt the iteration.
23779// The provided context supersedes any context provided to the Context method.
23780func (c *CollectionstatusesListCall) Pages(ctx context.Context, f func(*ListCollectionStatusesResponse) error) error {
23781	c.ctx_ = ctx
23782	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23783	for {
23784		x, err := c.Do()
23785		if err != nil {
23786			return err
23787		}
23788		if err := f(x); err != nil {
23789			return err
23790		}
23791		if x.NextPageToken == "" {
23792			return nil
23793		}
23794		c.PageToken(x.NextPageToken)
23795	}
23796}
23797
23798// method id "content.csses.get":
23799
23800type CssesGetCall struct {
23801	s            *APIService
23802	cssGroupId   int64
23803	cssDomainId  int64
23804	urlParams_   gensupport.URLParams
23805	ifNoneMatch_ string
23806	ctx_         context.Context
23807	header_      http.Header
23808}
23809
23810// Get: Retrieves a single CSS domain by ID.
23811//
23812// - cssDomainId: The ID of the CSS domain to return.
23813// - cssGroupId: The ID of the managing account. If this parameter is
23814//   not the same as cssDomainId (#cssDomainId), then this ID must be a
23815//   CSS group ID and `cssDomainId` must be the ID of a CSS domain
23816//   affiliated with this group.
23817func (r *CssesService) Get(cssGroupId int64, cssDomainId int64) *CssesGetCall {
23818	c := &CssesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23819	c.cssGroupId = cssGroupId
23820	c.cssDomainId = cssDomainId
23821	return c
23822}
23823
23824// Fields allows partial responses to be retrieved. See
23825// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23826// for more information.
23827func (c *CssesGetCall) Fields(s ...googleapi.Field) *CssesGetCall {
23828	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23829	return c
23830}
23831
23832// IfNoneMatch sets the optional parameter which makes the operation
23833// fail if the object's ETag matches the given value. This is useful for
23834// getting updates only after the object has changed since the last
23835// request. Use googleapi.IsNotModified to check whether the response
23836// error from Do is the result of In-None-Match.
23837func (c *CssesGetCall) IfNoneMatch(entityTag string) *CssesGetCall {
23838	c.ifNoneMatch_ = entityTag
23839	return c
23840}
23841
23842// Context sets the context to be used in this call's Do method. Any
23843// pending HTTP request will be aborted if the provided context is
23844// canceled.
23845func (c *CssesGetCall) Context(ctx context.Context) *CssesGetCall {
23846	c.ctx_ = ctx
23847	return c
23848}
23849
23850// Header returns an http.Header that can be modified by the caller to
23851// add HTTP headers to the request.
23852func (c *CssesGetCall) Header() http.Header {
23853	if c.header_ == nil {
23854		c.header_ = make(http.Header)
23855	}
23856	return c.header_
23857}
23858
23859func (c *CssesGetCall) doRequest(alt string) (*http.Response, error) {
23860	reqHeaders := make(http.Header)
23861	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23862	for k, v := range c.header_ {
23863		reqHeaders[k] = v
23864	}
23865	reqHeaders.Set("User-Agent", c.s.userAgent())
23866	if c.ifNoneMatch_ != "" {
23867		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23868	}
23869	var body io.Reader = nil
23870	c.urlParams_.Set("alt", alt)
23871	c.urlParams_.Set("prettyPrint", "false")
23872	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses/{cssDomainId}")
23873	urls += "?" + c.urlParams_.Encode()
23874	req, err := http.NewRequest("GET", urls, body)
23875	if err != nil {
23876		return nil, err
23877	}
23878	req.Header = reqHeaders
23879	googleapi.Expand(req.URL, map[string]string{
23880		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
23881		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
23882	})
23883	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23884}
23885
23886// Do executes the "content.csses.get" call.
23887// Exactly one of *Css or error will be non-nil. Any non-2xx status code
23888// is an error. Response headers are in either
23889// *Css.ServerResponse.Header or (if a response was returned at all) in
23890// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23891// whether the returned error was because http.StatusNotModified was
23892// returned.
23893func (c *CssesGetCall) Do(opts ...googleapi.CallOption) (*Css, error) {
23894	gensupport.SetOptions(c.urlParams_, opts...)
23895	res, err := c.doRequest("json")
23896	if res != nil && res.StatusCode == http.StatusNotModified {
23897		if res.Body != nil {
23898			res.Body.Close()
23899		}
23900		return nil, &googleapi.Error{
23901			Code:   res.StatusCode,
23902			Header: res.Header,
23903		}
23904	}
23905	if err != nil {
23906		return nil, err
23907	}
23908	defer googleapi.CloseBody(res)
23909	if err := googleapi.CheckResponse(res); err != nil {
23910		return nil, err
23911	}
23912	ret := &Css{
23913		ServerResponse: googleapi.ServerResponse{
23914			Header:         res.Header,
23915			HTTPStatusCode: res.StatusCode,
23916		},
23917	}
23918	target := &ret
23919	if err := gensupport.DecodeResponse(target, res); err != nil {
23920		return nil, err
23921	}
23922	return ret, nil
23923	// {
23924	//   "description": "Retrieves a single CSS domain by ID.",
23925	//   "flatPath": "{cssGroupId}/csses/{cssDomainId}",
23926	//   "httpMethod": "GET",
23927	//   "id": "content.csses.get",
23928	//   "parameterOrder": [
23929	//     "cssGroupId",
23930	//     "cssDomainId"
23931	//   ],
23932	//   "parameters": {
23933	//     "cssDomainId": {
23934	//       "description": "Required. The ID of the CSS domain to return.",
23935	//       "format": "int64",
23936	//       "location": "path",
23937	//       "required": true,
23938	//       "type": "string"
23939	//     },
23940	//     "cssGroupId": {
23941	//       "description": "Required. The ID of the managing account. If this parameter is not the same as [cssDomainId](#cssDomainId), then this ID must be a CSS group ID and `cssDomainId` must be the ID of a CSS domain affiliated with this group.",
23942	//       "format": "int64",
23943	//       "location": "path",
23944	//       "required": true,
23945	//       "type": "string"
23946	//     }
23947	//   },
23948	//   "path": "{cssGroupId}/csses/{cssDomainId}",
23949	//   "response": {
23950	//     "$ref": "Css"
23951	//   },
23952	//   "scopes": [
23953	//     "https://www.googleapis.com/auth/content"
23954	//   ]
23955	// }
23956
23957}
23958
23959// method id "content.csses.list":
23960
23961type CssesListCall struct {
23962	s            *APIService
23963	cssGroupId   int64
23964	urlParams_   gensupport.URLParams
23965	ifNoneMatch_ string
23966	ctx_         context.Context
23967	header_      http.Header
23968}
23969
23970// List: Lists CSS domains affiliated with a CSS group.
23971//
23972// - cssGroupId: The CSS group ID of CSS domains to be listed.
23973func (r *CssesService) List(cssGroupId int64) *CssesListCall {
23974	c := &CssesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23975	c.cssGroupId = cssGroupId
23976	return c
23977}
23978
23979// PageSize sets the optional parameter "pageSize": The maximum number
23980// of CSS domains to return. The service may return fewer than this
23981// value. If unspecified, at most 50 CSS domains will be returned. The
23982// maximum value is 1000; values above 1000 will be coerced to 1000.
23983func (c *CssesListCall) PageSize(pageSize int64) *CssesListCall {
23984	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23985	return c
23986}
23987
23988// PageToken sets the optional parameter "pageToken": A page token,
23989// received from a previous `ListCsses` call. Provide this to retrieve
23990// the subsequent page. When paginating, all other parameters provided
23991// to `ListCsses` must match the call that provided the page token.
23992func (c *CssesListCall) PageToken(pageToken string) *CssesListCall {
23993	c.urlParams_.Set("pageToken", pageToken)
23994	return c
23995}
23996
23997// Fields allows partial responses to be retrieved. See
23998// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23999// for more information.
24000func (c *CssesListCall) Fields(s ...googleapi.Field) *CssesListCall {
24001	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24002	return c
24003}
24004
24005// IfNoneMatch sets the optional parameter which makes the operation
24006// fail if the object's ETag matches the given value. This is useful for
24007// getting updates only after the object has changed since the last
24008// request. Use googleapi.IsNotModified to check whether the response
24009// error from Do is the result of In-None-Match.
24010func (c *CssesListCall) IfNoneMatch(entityTag string) *CssesListCall {
24011	c.ifNoneMatch_ = entityTag
24012	return c
24013}
24014
24015// Context sets the context to be used in this call's Do method. Any
24016// pending HTTP request will be aborted if the provided context is
24017// canceled.
24018func (c *CssesListCall) Context(ctx context.Context) *CssesListCall {
24019	c.ctx_ = ctx
24020	return c
24021}
24022
24023// Header returns an http.Header that can be modified by the caller to
24024// add HTTP headers to the request.
24025func (c *CssesListCall) Header() http.Header {
24026	if c.header_ == nil {
24027		c.header_ = make(http.Header)
24028	}
24029	return c.header_
24030}
24031
24032func (c *CssesListCall) doRequest(alt string) (*http.Response, error) {
24033	reqHeaders := make(http.Header)
24034	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24035	for k, v := range c.header_ {
24036		reqHeaders[k] = v
24037	}
24038	reqHeaders.Set("User-Agent", c.s.userAgent())
24039	if c.ifNoneMatch_ != "" {
24040		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24041	}
24042	var body io.Reader = nil
24043	c.urlParams_.Set("alt", alt)
24044	c.urlParams_.Set("prettyPrint", "false")
24045	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses")
24046	urls += "?" + c.urlParams_.Encode()
24047	req, err := http.NewRequest("GET", urls, body)
24048	if err != nil {
24049		return nil, err
24050	}
24051	req.Header = reqHeaders
24052	googleapi.Expand(req.URL, map[string]string{
24053		"cssGroupId": strconv.FormatInt(c.cssGroupId, 10),
24054	})
24055	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24056}
24057
24058// Do executes the "content.csses.list" call.
24059// Exactly one of *ListCssesResponse or error will be non-nil. Any
24060// non-2xx status code is an error. Response headers are in either
24061// *ListCssesResponse.ServerResponse.Header or (if a response was
24062// returned at all) in error.(*googleapi.Error).Header. Use
24063// googleapi.IsNotModified to check whether the returned error was
24064// because http.StatusNotModified was returned.
24065func (c *CssesListCall) Do(opts ...googleapi.CallOption) (*ListCssesResponse, error) {
24066	gensupport.SetOptions(c.urlParams_, opts...)
24067	res, err := c.doRequest("json")
24068	if res != nil && res.StatusCode == http.StatusNotModified {
24069		if res.Body != nil {
24070			res.Body.Close()
24071		}
24072		return nil, &googleapi.Error{
24073			Code:   res.StatusCode,
24074			Header: res.Header,
24075		}
24076	}
24077	if err != nil {
24078		return nil, err
24079	}
24080	defer googleapi.CloseBody(res)
24081	if err := googleapi.CheckResponse(res); err != nil {
24082		return nil, err
24083	}
24084	ret := &ListCssesResponse{
24085		ServerResponse: googleapi.ServerResponse{
24086			Header:         res.Header,
24087			HTTPStatusCode: res.StatusCode,
24088		},
24089	}
24090	target := &ret
24091	if err := gensupport.DecodeResponse(target, res); err != nil {
24092		return nil, err
24093	}
24094	return ret, nil
24095	// {
24096	//   "description": "Lists CSS domains affiliated with a CSS group.",
24097	//   "flatPath": "{cssGroupId}/csses",
24098	//   "httpMethod": "GET",
24099	//   "id": "content.csses.list",
24100	//   "parameterOrder": [
24101	//     "cssGroupId"
24102	//   ],
24103	//   "parameters": {
24104	//     "cssGroupId": {
24105	//       "description": "Required. The CSS group ID of CSS domains to be listed.",
24106	//       "format": "int64",
24107	//       "location": "path",
24108	//       "required": true,
24109	//       "type": "string"
24110	//     },
24111	//     "pageSize": {
24112	//       "description": "The maximum number of CSS domains to return. The service may return fewer than this value. If unspecified, at most 50 CSS domains will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
24113	//       "format": "int32",
24114	//       "location": "query",
24115	//       "type": "integer"
24116	//     },
24117	//     "pageToken": {
24118	//       "description": "A page token, received from a previous `ListCsses` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCsses` must match the call that provided the page token.",
24119	//       "location": "query",
24120	//       "type": "string"
24121	//     }
24122	//   },
24123	//   "path": "{cssGroupId}/csses",
24124	//   "response": {
24125	//     "$ref": "ListCssesResponse"
24126	//   },
24127	//   "scopes": [
24128	//     "https://www.googleapis.com/auth/content"
24129	//   ]
24130	// }
24131
24132}
24133
24134// Pages invokes f for each page of results.
24135// A non-nil error returned from f will halt the iteration.
24136// The provided context supersedes any context provided to the Context method.
24137func (c *CssesListCall) Pages(ctx context.Context, f func(*ListCssesResponse) error) error {
24138	c.ctx_ = ctx
24139	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24140	for {
24141		x, err := c.Do()
24142		if err != nil {
24143			return err
24144		}
24145		if err := f(x); err != nil {
24146			return err
24147		}
24148		if x.NextPageToken == "" {
24149			return nil
24150		}
24151		c.PageToken(x.NextPageToken)
24152	}
24153}
24154
24155// method id "content.csses.updatelabels":
24156
24157type CssesUpdatelabelsCall struct {
24158	s           *APIService
24159	cssGroupId  int64
24160	cssDomainId int64
24161	labelids    *LabelIds
24162	urlParams_  gensupport.URLParams
24163	ctx_        context.Context
24164	header_     http.Header
24165}
24166
24167// Updatelabels: Updates labels that are assigned to a CSS domain by its
24168// CSS group.
24169//
24170// - cssDomainId: The ID of the updated CSS domain.
24171// - cssGroupId: The CSS group ID of the updated CSS domain.
24172func (r *CssesService) Updatelabels(cssGroupId int64, cssDomainId int64, labelids *LabelIds) *CssesUpdatelabelsCall {
24173	c := &CssesUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24174	c.cssGroupId = cssGroupId
24175	c.cssDomainId = cssDomainId
24176	c.labelids = labelids
24177	return c
24178}
24179
24180// Fields allows partial responses to be retrieved. See
24181// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24182// for more information.
24183func (c *CssesUpdatelabelsCall) Fields(s ...googleapi.Field) *CssesUpdatelabelsCall {
24184	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24185	return c
24186}
24187
24188// Context sets the context to be used in this call's Do method. Any
24189// pending HTTP request will be aborted if the provided context is
24190// canceled.
24191func (c *CssesUpdatelabelsCall) Context(ctx context.Context) *CssesUpdatelabelsCall {
24192	c.ctx_ = ctx
24193	return c
24194}
24195
24196// Header returns an http.Header that can be modified by the caller to
24197// add HTTP headers to the request.
24198func (c *CssesUpdatelabelsCall) Header() http.Header {
24199	if c.header_ == nil {
24200		c.header_ = make(http.Header)
24201	}
24202	return c.header_
24203}
24204
24205func (c *CssesUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
24206	reqHeaders := make(http.Header)
24207	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24208	for k, v := range c.header_ {
24209		reqHeaders[k] = v
24210	}
24211	reqHeaders.Set("User-Agent", c.s.userAgent())
24212	var body io.Reader = nil
24213	body, err := googleapi.WithoutDataWrapper.JSONReader(c.labelids)
24214	if err != nil {
24215		return nil, err
24216	}
24217	reqHeaders.Set("Content-Type", "application/json")
24218	c.urlParams_.Set("alt", alt)
24219	c.urlParams_.Set("prettyPrint", "false")
24220	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses/{cssDomainId}/updatelabels")
24221	urls += "?" + c.urlParams_.Encode()
24222	req, err := http.NewRequest("POST", urls, body)
24223	if err != nil {
24224		return nil, err
24225	}
24226	req.Header = reqHeaders
24227	googleapi.Expand(req.URL, map[string]string{
24228		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
24229		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
24230	})
24231	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24232}
24233
24234// Do executes the "content.csses.updatelabels" call.
24235// Exactly one of *Css or error will be non-nil. Any non-2xx status code
24236// is an error. Response headers are in either
24237// *Css.ServerResponse.Header or (if a response was returned at all) in
24238// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24239// whether the returned error was because http.StatusNotModified was
24240// returned.
24241func (c *CssesUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*Css, error) {
24242	gensupport.SetOptions(c.urlParams_, opts...)
24243	res, err := c.doRequest("json")
24244	if res != nil && res.StatusCode == http.StatusNotModified {
24245		if res.Body != nil {
24246			res.Body.Close()
24247		}
24248		return nil, &googleapi.Error{
24249			Code:   res.StatusCode,
24250			Header: res.Header,
24251		}
24252	}
24253	if err != nil {
24254		return nil, err
24255	}
24256	defer googleapi.CloseBody(res)
24257	if err := googleapi.CheckResponse(res); err != nil {
24258		return nil, err
24259	}
24260	ret := &Css{
24261		ServerResponse: googleapi.ServerResponse{
24262			Header:         res.Header,
24263			HTTPStatusCode: res.StatusCode,
24264		},
24265	}
24266	target := &ret
24267	if err := gensupport.DecodeResponse(target, res); err != nil {
24268		return nil, err
24269	}
24270	return ret, nil
24271	// {
24272	//   "description": "Updates labels that are assigned to a CSS domain by its CSS group.",
24273	//   "flatPath": "{cssGroupId}/csses/{cssDomainId}/updatelabels",
24274	//   "httpMethod": "POST",
24275	//   "id": "content.csses.updatelabels",
24276	//   "parameterOrder": [
24277	//     "cssGroupId",
24278	//     "cssDomainId"
24279	//   ],
24280	//   "parameters": {
24281	//     "cssDomainId": {
24282	//       "description": "Required. The ID of the updated CSS domain.",
24283	//       "format": "int64",
24284	//       "location": "path",
24285	//       "required": true,
24286	//       "type": "string"
24287	//     },
24288	//     "cssGroupId": {
24289	//       "description": "Required. The CSS group ID of the updated CSS domain.",
24290	//       "format": "int64",
24291	//       "location": "path",
24292	//       "required": true,
24293	//       "type": "string"
24294	//     }
24295	//   },
24296	//   "path": "{cssGroupId}/csses/{cssDomainId}/updatelabels",
24297	//   "request": {
24298	//     "$ref": "LabelIds"
24299	//   },
24300	//   "response": {
24301	//     "$ref": "Css"
24302	//   },
24303	//   "scopes": [
24304	//     "https://www.googleapis.com/auth/content"
24305	//   ]
24306	// }
24307
24308}
24309
24310// method id "content.datafeeds.custombatch":
24311
24312type DatafeedsCustombatchCall struct {
24313	s                           *APIService
24314	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
24315	urlParams_                  gensupport.URLParams
24316	ctx_                        context.Context
24317	header_                     http.Header
24318}
24319
24320// Custombatch: Deletes, fetches, gets, inserts and updates multiple
24321// datafeeds in a single request.
24322func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
24323	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24324	c.datafeedscustombatchrequest = datafeedscustombatchrequest
24325	return c
24326}
24327
24328// Fields allows partial responses to be retrieved. See
24329// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24330// for more information.
24331func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
24332	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24333	return c
24334}
24335
24336// Context sets the context to be used in this call's Do method. Any
24337// pending HTTP request will be aborted if the provided context is
24338// canceled.
24339func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
24340	c.ctx_ = ctx
24341	return c
24342}
24343
24344// Header returns an http.Header that can be modified by the caller to
24345// add HTTP headers to the request.
24346func (c *DatafeedsCustombatchCall) Header() http.Header {
24347	if c.header_ == nil {
24348		c.header_ = make(http.Header)
24349	}
24350	return c.header_
24351}
24352
24353func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
24354	reqHeaders := make(http.Header)
24355	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24356	for k, v := range c.header_ {
24357		reqHeaders[k] = v
24358	}
24359	reqHeaders.Set("User-Agent", c.s.userAgent())
24360	var body io.Reader = nil
24361	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
24362	if err != nil {
24363		return nil, err
24364	}
24365	reqHeaders.Set("Content-Type", "application/json")
24366	c.urlParams_.Set("alt", alt)
24367	c.urlParams_.Set("prettyPrint", "false")
24368	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeeds/batch")
24369	urls += "?" + c.urlParams_.Encode()
24370	req, err := http.NewRequest("POST", urls, body)
24371	if err != nil {
24372		return nil, err
24373	}
24374	req.Header = reqHeaders
24375	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24376}
24377
24378// Do executes the "content.datafeeds.custombatch" call.
24379// Exactly one of *DatafeedsCustomBatchResponse or error will be
24380// non-nil. Any non-2xx status code is an error. Response headers are in
24381// either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
24382// response was returned at all) in error.(*googleapi.Error).Header. Use
24383// googleapi.IsNotModified to check whether the returned error was
24384// because http.StatusNotModified was returned.
24385func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
24386	gensupport.SetOptions(c.urlParams_, opts...)
24387	res, err := c.doRequest("json")
24388	if res != nil && res.StatusCode == http.StatusNotModified {
24389		if res.Body != nil {
24390			res.Body.Close()
24391		}
24392		return nil, &googleapi.Error{
24393			Code:   res.StatusCode,
24394			Header: res.Header,
24395		}
24396	}
24397	if err != nil {
24398		return nil, err
24399	}
24400	defer googleapi.CloseBody(res)
24401	if err := googleapi.CheckResponse(res); err != nil {
24402		return nil, err
24403	}
24404	ret := &DatafeedsCustomBatchResponse{
24405		ServerResponse: googleapi.ServerResponse{
24406			Header:         res.Header,
24407			HTTPStatusCode: res.StatusCode,
24408		},
24409	}
24410	target := &ret
24411	if err := gensupport.DecodeResponse(target, res); err != nil {
24412		return nil, err
24413	}
24414	return ret, nil
24415	// {
24416	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
24417	//   "flatPath": "datafeeds/batch",
24418	//   "httpMethod": "POST",
24419	//   "id": "content.datafeeds.custombatch",
24420	//   "parameterOrder": [],
24421	//   "parameters": {},
24422	//   "path": "datafeeds/batch",
24423	//   "request": {
24424	//     "$ref": "DatafeedsCustomBatchRequest"
24425	//   },
24426	//   "response": {
24427	//     "$ref": "DatafeedsCustomBatchResponse"
24428	//   },
24429	//   "scopes": [
24430	//     "https://www.googleapis.com/auth/content"
24431	//   ]
24432	// }
24433
24434}
24435
24436// method id "content.datafeeds.delete":
24437
24438type DatafeedsDeleteCall struct {
24439	s          *APIService
24440	merchantId uint64
24441	datafeedId uint64
24442	urlParams_ gensupport.URLParams
24443	ctx_       context.Context
24444	header_    http.Header
24445}
24446
24447// Delete: Deletes a datafeed configuration from your Merchant Center
24448// account.
24449//
24450// - datafeedId: The ID of the datafeed.
24451// - merchantId: The ID of the account that manages the datafeed. This
24452//   account cannot be a multi-client account.
24453func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
24454	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24455	c.merchantId = merchantId
24456	c.datafeedId = datafeedId
24457	return c
24458}
24459
24460// Fields allows partial responses to be retrieved. See
24461// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24462// for more information.
24463func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
24464	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24465	return c
24466}
24467
24468// Context sets the context to be used in this call's Do method. Any
24469// pending HTTP request will be aborted if the provided context is
24470// canceled.
24471func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
24472	c.ctx_ = ctx
24473	return c
24474}
24475
24476// Header returns an http.Header that can be modified by the caller to
24477// add HTTP headers to the request.
24478func (c *DatafeedsDeleteCall) Header() http.Header {
24479	if c.header_ == nil {
24480		c.header_ = make(http.Header)
24481	}
24482	return c.header_
24483}
24484
24485func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
24486	reqHeaders := make(http.Header)
24487	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24488	for k, v := range c.header_ {
24489		reqHeaders[k] = v
24490	}
24491	reqHeaders.Set("User-Agent", c.s.userAgent())
24492	var body io.Reader = nil
24493	c.urlParams_.Set("alt", alt)
24494	c.urlParams_.Set("prettyPrint", "false")
24495	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
24496	urls += "?" + c.urlParams_.Encode()
24497	req, err := http.NewRequest("DELETE", urls, body)
24498	if err != nil {
24499		return nil, err
24500	}
24501	req.Header = reqHeaders
24502	googleapi.Expand(req.URL, map[string]string{
24503		"merchantId": strconv.FormatUint(c.merchantId, 10),
24504		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24505	})
24506	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24507}
24508
24509// Do executes the "content.datafeeds.delete" call.
24510func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
24511	gensupport.SetOptions(c.urlParams_, opts...)
24512	res, err := c.doRequest("json")
24513	if err != nil {
24514		return err
24515	}
24516	defer googleapi.CloseBody(res)
24517	if err := googleapi.CheckResponse(res); err != nil {
24518		return err
24519	}
24520	return nil
24521	// {
24522	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
24523	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
24524	//   "httpMethod": "DELETE",
24525	//   "id": "content.datafeeds.delete",
24526	//   "parameterOrder": [
24527	//     "merchantId",
24528	//     "datafeedId"
24529	//   ],
24530	//   "parameters": {
24531	//     "datafeedId": {
24532	//       "description": "The ID of the datafeed.",
24533	//       "format": "uint64",
24534	//       "location": "path",
24535	//       "required": true,
24536	//       "type": "string"
24537	//     },
24538	//     "merchantId": {
24539	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24540	//       "format": "uint64",
24541	//       "location": "path",
24542	//       "required": true,
24543	//       "type": "string"
24544	//     }
24545	//   },
24546	//   "path": "{merchantId}/datafeeds/{datafeedId}",
24547	//   "scopes": [
24548	//     "https://www.googleapis.com/auth/content"
24549	//   ]
24550	// }
24551
24552}
24553
24554// method id "content.datafeeds.fetchnow":
24555
24556type DatafeedsFetchnowCall struct {
24557	s          *APIService
24558	merchantId uint64
24559	datafeedId uint64
24560	urlParams_ gensupport.URLParams
24561	ctx_       context.Context
24562	header_    http.Header
24563}
24564
24565// Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
24566// account. If you need to call this method more than once per day, we
24567// recommend you use the Products service to update your product data.
24568//
24569// - datafeedId: The ID of the datafeed to be fetched.
24570// - merchantId: The ID of the account that manages the datafeed. This
24571//   account cannot be a multi-client account.
24572func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
24573	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24574	c.merchantId = merchantId
24575	c.datafeedId = datafeedId
24576	return c
24577}
24578
24579// Fields allows partial responses to be retrieved. See
24580// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24581// for more information.
24582func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
24583	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24584	return c
24585}
24586
24587// Context sets the context to be used in this call's Do method. Any
24588// pending HTTP request will be aborted if the provided context is
24589// canceled.
24590func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
24591	c.ctx_ = ctx
24592	return c
24593}
24594
24595// Header returns an http.Header that can be modified by the caller to
24596// add HTTP headers to the request.
24597func (c *DatafeedsFetchnowCall) Header() http.Header {
24598	if c.header_ == nil {
24599		c.header_ = make(http.Header)
24600	}
24601	return c.header_
24602}
24603
24604func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
24605	reqHeaders := make(http.Header)
24606	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24607	for k, v := range c.header_ {
24608		reqHeaders[k] = v
24609	}
24610	reqHeaders.Set("User-Agent", c.s.userAgent())
24611	var body io.Reader = nil
24612	c.urlParams_.Set("alt", alt)
24613	c.urlParams_.Set("prettyPrint", "false")
24614	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}/fetchNow")
24615	urls += "?" + c.urlParams_.Encode()
24616	req, err := http.NewRequest("POST", urls, body)
24617	if err != nil {
24618		return nil, err
24619	}
24620	req.Header = reqHeaders
24621	googleapi.Expand(req.URL, map[string]string{
24622		"merchantId": strconv.FormatUint(c.merchantId, 10),
24623		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24624	})
24625	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24626}
24627
24628// Do executes the "content.datafeeds.fetchnow" call.
24629// Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
24630// Any non-2xx status code is an error. Response headers are in either
24631// *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
24632// was returned at all) in error.(*googleapi.Error).Header. Use
24633// googleapi.IsNotModified to check whether the returned error was
24634// because http.StatusNotModified was returned.
24635func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
24636	gensupport.SetOptions(c.urlParams_, opts...)
24637	res, err := c.doRequest("json")
24638	if res != nil && res.StatusCode == http.StatusNotModified {
24639		if res.Body != nil {
24640			res.Body.Close()
24641		}
24642		return nil, &googleapi.Error{
24643			Code:   res.StatusCode,
24644			Header: res.Header,
24645		}
24646	}
24647	if err != nil {
24648		return nil, err
24649	}
24650	defer googleapi.CloseBody(res)
24651	if err := googleapi.CheckResponse(res); err != nil {
24652		return nil, err
24653	}
24654	ret := &DatafeedsFetchNowResponse{
24655		ServerResponse: googleapi.ServerResponse{
24656			Header:         res.Header,
24657			HTTPStatusCode: res.StatusCode,
24658		},
24659	}
24660	target := &ret
24661	if err := gensupport.DecodeResponse(target, res); err != nil {
24662		return nil, err
24663	}
24664	return ret, nil
24665	// {
24666	//   "description": "Invokes a fetch for the datafeed in your Merchant Center account. If you need to call this method more than once per day, we recommend you use the Products service to update your product data.",
24667	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
24668	//   "httpMethod": "POST",
24669	//   "id": "content.datafeeds.fetchnow",
24670	//   "parameterOrder": [
24671	//     "merchantId",
24672	//     "datafeedId"
24673	//   ],
24674	//   "parameters": {
24675	//     "datafeedId": {
24676	//       "description": "The ID of the datafeed to be fetched.",
24677	//       "format": "uint64",
24678	//       "location": "path",
24679	//       "required": true,
24680	//       "type": "string"
24681	//     },
24682	//     "merchantId": {
24683	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24684	//       "format": "uint64",
24685	//       "location": "path",
24686	//       "required": true,
24687	//       "type": "string"
24688	//     }
24689	//   },
24690	//   "path": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
24691	//   "response": {
24692	//     "$ref": "DatafeedsFetchNowResponse"
24693	//   },
24694	//   "scopes": [
24695	//     "https://www.googleapis.com/auth/content"
24696	//   ]
24697	// }
24698
24699}
24700
24701// method id "content.datafeeds.get":
24702
24703type DatafeedsGetCall struct {
24704	s            *APIService
24705	merchantId   uint64
24706	datafeedId   uint64
24707	urlParams_   gensupport.URLParams
24708	ifNoneMatch_ string
24709	ctx_         context.Context
24710	header_      http.Header
24711}
24712
24713// Get: Retrieves a datafeed configuration from your Merchant Center
24714// account.
24715//
24716// - datafeedId: The ID of the datafeed.
24717// - merchantId: The ID of the account that manages the datafeed. This
24718//   account cannot be a multi-client account.
24719func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
24720	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24721	c.merchantId = merchantId
24722	c.datafeedId = datafeedId
24723	return c
24724}
24725
24726// Fields allows partial responses to be retrieved. See
24727// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24728// for more information.
24729func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
24730	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24731	return c
24732}
24733
24734// IfNoneMatch sets the optional parameter which makes the operation
24735// fail if the object's ETag matches the given value. This is useful for
24736// getting updates only after the object has changed since the last
24737// request. Use googleapi.IsNotModified to check whether the response
24738// error from Do is the result of In-None-Match.
24739func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
24740	c.ifNoneMatch_ = entityTag
24741	return c
24742}
24743
24744// Context sets the context to be used in this call's Do method. Any
24745// pending HTTP request will be aborted if the provided context is
24746// canceled.
24747func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
24748	c.ctx_ = ctx
24749	return c
24750}
24751
24752// Header returns an http.Header that can be modified by the caller to
24753// add HTTP headers to the request.
24754func (c *DatafeedsGetCall) Header() http.Header {
24755	if c.header_ == nil {
24756		c.header_ = make(http.Header)
24757	}
24758	return c.header_
24759}
24760
24761func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
24762	reqHeaders := make(http.Header)
24763	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24764	for k, v := range c.header_ {
24765		reqHeaders[k] = v
24766	}
24767	reqHeaders.Set("User-Agent", c.s.userAgent())
24768	if c.ifNoneMatch_ != "" {
24769		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24770	}
24771	var body io.Reader = nil
24772	c.urlParams_.Set("alt", alt)
24773	c.urlParams_.Set("prettyPrint", "false")
24774	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
24775	urls += "?" + c.urlParams_.Encode()
24776	req, err := http.NewRequest("GET", urls, body)
24777	if err != nil {
24778		return nil, err
24779	}
24780	req.Header = reqHeaders
24781	googleapi.Expand(req.URL, map[string]string{
24782		"merchantId": strconv.FormatUint(c.merchantId, 10),
24783		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24784	})
24785	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24786}
24787
24788// Do executes the "content.datafeeds.get" call.
24789// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
24790// code is an error. Response headers are in either
24791// *Datafeed.ServerResponse.Header or (if a response was returned at
24792// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
24793// to check whether the returned error was because
24794// http.StatusNotModified was returned.
24795func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
24796	gensupport.SetOptions(c.urlParams_, opts...)
24797	res, err := c.doRequest("json")
24798	if res != nil && res.StatusCode == http.StatusNotModified {
24799		if res.Body != nil {
24800			res.Body.Close()
24801		}
24802		return nil, &googleapi.Error{
24803			Code:   res.StatusCode,
24804			Header: res.Header,
24805		}
24806	}
24807	if err != nil {
24808		return nil, err
24809	}
24810	defer googleapi.CloseBody(res)
24811	if err := googleapi.CheckResponse(res); err != nil {
24812		return nil, err
24813	}
24814	ret := &Datafeed{
24815		ServerResponse: googleapi.ServerResponse{
24816			Header:         res.Header,
24817			HTTPStatusCode: res.StatusCode,
24818		},
24819	}
24820	target := &ret
24821	if err := gensupport.DecodeResponse(target, res); err != nil {
24822		return nil, err
24823	}
24824	return ret, nil
24825	// {
24826	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
24827	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
24828	//   "httpMethod": "GET",
24829	//   "id": "content.datafeeds.get",
24830	//   "parameterOrder": [
24831	//     "merchantId",
24832	//     "datafeedId"
24833	//   ],
24834	//   "parameters": {
24835	//     "datafeedId": {
24836	//       "description": "The ID of the datafeed.",
24837	//       "format": "uint64",
24838	//       "location": "path",
24839	//       "required": true,
24840	//       "type": "string"
24841	//     },
24842	//     "merchantId": {
24843	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24844	//       "format": "uint64",
24845	//       "location": "path",
24846	//       "required": true,
24847	//       "type": "string"
24848	//     }
24849	//   },
24850	//   "path": "{merchantId}/datafeeds/{datafeedId}",
24851	//   "response": {
24852	//     "$ref": "Datafeed"
24853	//   },
24854	//   "scopes": [
24855	//     "https://www.googleapis.com/auth/content"
24856	//   ]
24857	// }
24858
24859}
24860
24861// method id "content.datafeeds.insert":
24862
24863type DatafeedsInsertCall struct {
24864	s          *APIService
24865	merchantId uint64
24866	datafeed   *Datafeed
24867	urlParams_ gensupport.URLParams
24868	ctx_       context.Context
24869	header_    http.Header
24870}
24871
24872// Insert: Registers a datafeed configuration with your Merchant Center
24873// account.
24874//
24875// - merchantId: The ID of the account that manages the datafeed. This
24876//   account cannot be a multi-client account.
24877func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
24878	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24879	c.merchantId = merchantId
24880	c.datafeed = datafeed
24881	return c
24882}
24883
24884// Fields allows partial responses to be retrieved. See
24885// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24886// for more information.
24887func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
24888	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24889	return c
24890}
24891
24892// Context sets the context to be used in this call's Do method. Any
24893// pending HTTP request will be aborted if the provided context is
24894// canceled.
24895func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
24896	c.ctx_ = ctx
24897	return c
24898}
24899
24900// Header returns an http.Header that can be modified by the caller to
24901// add HTTP headers to the request.
24902func (c *DatafeedsInsertCall) Header() http.Header {
24903	if c.header_ == nil {
24904		c.header_ = make(http.Header)
24905	}
24906	return c.header_
24907}
24908
24909func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
24910	reqHeaders := make(http.Header)
24911	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24912	for k, v := range c.header_ {
24913		reqHeaders[k] = v
24914	}
24915	reqHeaders.Set("User-Agent", c.s.userAgent())
24916	var body io.Reader = nil
24917	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
24918	if err != nil {
24919		return nil, err
24920	}
24921	reqHeaders.Set("Content-Type", "application/json")
24922	c.urlParams_.Set("alt", alt)
24923	c.urlParams_.Set("prettyPrint", "false")
24924	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
24925	urls += "?" + c.urlParams_.Encode()
24926	req, err := http.NewRequest("POST", urls, body)
24927	if err != nil {
24928		return nil, err
24929	}
24930	req.Header = reqHeaders
24931	googleapi.Expand(req.URL, map[string]string{
24932		"merchantId": strconv.FormatUint(c.merchantId, 10),
24933	})
24934	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24935}
24936
24937// Do executes the "content.datafeeds.insert" call.
24938// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
24939// code is an error. Response headers are in either
24940// *Datafeed.ServerResponse.Header or (if a response was returned at
24941// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
24942// to check whether the returned error was because
24943// http.StatusNotModified was returned.
24944func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
24945	gensupport.SetOptions(c.urlParams_, opts...)
24946	res, err := c.doRequest("json")
24947	if res != nil && res.StatusCode == http.StatusNotModified {
24948		if res.Body != nil {
24949			res.Body.Close()
24950		}
24951		return nil, &googleapi.Error{
24952			Code:   res.StatusCode,
24953			Header: res.Header,
24954		}
24955	}
24956	if err != nil {
24957		return nil, err
24958	}
24959	defer googleapi.CloseBody(res)
24960	if err := googleapi.CheckResponse(res); err != nil {
24961		return nil, err
24962	}
24963	ret := &Datafeed{
24964		ServerResponse: googleapi.ServerResponse{
24965			Header:         res.Header,
24966			HTTPStatusCode: res.StatusCode,
24967		},
24968	}
24969	target := &ret
24970	if err := gensupport.DecodeResponse(target, res); err != nil {
24971		return nil, err
24972	}
24973	return ret, nil
24974	// {
24975	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
24976	//   "flatPath": "{merchantId}/datafeeds",
24977	//   "httpMethod": "POST",
24978	//   "id": "content.datafeeds.insert",
24979	//   "parameterOrder": [
24980	//     "merchantId"
24981	//   ],
24982	//   "parameters": {
24983	//     "merchantId": {
24984	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24985	//       "format": "uint64",
24986	//       "location": "path",
24987	//       "required": true,
24988	//       "type": "string"
24989	//     }
24990	//   },
24991	//   "path": "{merchantId}/datafeeds",
24992	//   "request": {
24993	//     "$ref": "Datafeed"
24994	//   },
24995	//   "response": {
24996	//     "$ref": "Datafeed"
24997	//   },
24998	//   "scopes": [
24999	//     "https://www.googleapis.com/auth/content"
25000	//   ]
25001	// }
25002
25003}
25004
25005// method id "content.datafeeds.list":
25006
25007type DatafeedsListCall struct {
25008	s            *APIService
25009	merchantId   uint64
25010	urlParams_   gensupport.URLParams
25011	ifNoneMatch_ string
25012	ctx_         context.Context
25013	header_      http.Header
25014}
25015
25016// List: Lists the configurations for datafeeds in your Merchant Center
25017// account.
25018//
25019// - merchantId: The ID of the account that manages the datafeeds. This
25020//   account cannot be a multi-client account.
25021func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
25022	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25023	c.merchantId = merchantId
25024	return c
25025}
25026
25027// MaxResults sets the optional parameter "maxResults": The maximum
25028// number of products to return in the response, used for paging.
25029func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
25030	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25031	return c
25032}
25033
25034// PageToken sets the optional parameter "pageToken": The token returned
25035// by the previous request.
25036func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
25037	c.urlParams_.Set("pageToken", pageToken)
25038	return c
25039}
25040
25041// Fields allows partial responses to be retrieved. See
25042// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25043// for more information.
25044func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
25045	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25046	return c
25047}
25048
25049// IfNoneMatch sets the optional parameter which makes the operation
25050// fail if the object's ETag matches the given value. This is useful for
25051// getting updates only after the object has changed since the last
25052// request. Use googleapi.IsNotModified to check whether the response
25053// error from Do is the result of In-None-Match.
25054func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
25055	c.ifNoneMatch_ = entityTag
25056	return c
25057}
25058
25059// Context sets the context to be used in this call's Do method. Any
25060// pending HTTP request will be aborted if the provided context is
25061// canceled.
25062func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
25063	c.ctx_ = ctx
25064	return c
25065}
25066
25067// Header returns an http.Header that can be modified by the caller to
25068// add HTTP headers to the request.
25069func (c *DatafeedsListCall) Header() http.Header {
25070	if c.header_ == nil {
25071		c.header_ = make(http.Header)
25072	}
25073	return c.header_
25074}
25075
25076func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
25077	reqHeaders := make(http.Header)
25078	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25079	for k, v := range c.header_ {
25080		reqHeaders[k] = v
25081	}
25082	reqHeaders.Set("User-Agent", c.s.userAgent())
25083	if c.ifNoneMatch_ != "" {
25084		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25085	}
25086	var body io.Reader = nil
25087	c.urlParams_.Set("alt", alt)
25088	c.urlParams_.Set("prettyPrint", "false")
25089	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
25090	urls += "?" + c.urlParams_.Encode()
25091	req, err := http.NewRequest("GET", urls, body)
25092	if err != nil {
25093		return nil, err
25094	}
25095	req.Header = reqHeaders
25096	googleapi.Expand(req.URL, map[string]string{
25097		"merchantId": strconv.FormatUint(c.merchantId, 10),
25098	})
25099	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25100}
25101
25102// Do executes the "content.datafeeds.list" call.
25103// Exactly one of *DatafeedsListResponse or error will be non-nil. Any
25104// non-2xx status code is an error. Response headers are in either
25105// *DatafeedsListResponse.ServerResponse.Header or (if a response was
25106// returned at all) in error.(*googleapi.Error).Header. Use
25107// googleapi.IsNotModified to check whether the returned error was
25108// because http.StatusNotModified was returned.
25109func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
25110	gensupport.SetOptions(c.urlParams_, opts...)
25111	res, err := c.doRequest("json")
25112	if res != nil && res.StatusCode == http.StatusNotModified {
25113		if res.Body != nil {
25114			res.Body.Close()
25115		}
25116		return nil, &googleapi.Error{
25117			Code:   res.StatusCode,
25118			Header: res.Header,
25119		}
25120	}
25121	if err != nil {
25122		return nil, err
25123	}
25124	defer googleapi.CloseBody(res)
25125	if err := googleapi.CheckResponse(res); err != nil {
25126		return nil, err
25127	}
25128	ret := &DatafeedsListResponse{
25129		ServerResponse: googleapi.ServerResponse{
25130			Header:         res.Header,
25131			HTTPStatusCode: res.StatusCode,
25132		},
25133	}
25134	target := &ret
25135	if err := gensupport.DecodeResponse(target, res); err != nil {
25136		return nil, err
25137	}
25138	return ret, nil
25139	// {
25140	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
25141	//   "flatPath": "{merchantId}/datafeeds",
25142	//   "httpMethod": "GET",
25143	//   "id": "content.datafeeds.list",
25144	//   "parameterOrder": [
25145	//     "merchantId"
25146	//   ],
25147	//   "parameters": {
25148	//     "maxResults": {
25149	//       "description": "The maximum number of products to return in the response, used for paging.",
25150	//       "format": "uint32",
25151	//       "location": "query",
25152	//       "type": "integer"
25153	//     },
25154	//     "merchantId": {
25155	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
25156	//       "format": "uint64",
25157	//       "location": "path",
25158	//       "required": true,
25159	//       "type": "string"
25160	//     },
25161	//     "pageToken": {
25162	//       "description": "The token returned by the previous request.",
25163	//       "location": "query",
25164	//       "type": "string"
25165	//     }
25166	//   },
25167	//   "path": "{merchantId}/datafeeds",
25168	//   "response": {
25169	//     "$ref": "DatafeedsListResponse"
25170	//   },
25171	//   "scopes": [
25172	//     "https://www.googleapis.com/auth/content"
25173	//   ]
25174	// }
25175
25176}
25177
25178// Pages invokes f for each page of results.
25179// A non-nil error returned from f will halt the iteration.
25180// The provided context supersedes any context provided to the Context method.
25181func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
25182	c.ctx_ = ctx
25183	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25184	for {
25185		x, err := c.Do()
25186		if err != nil {
25187			return err
25188		}
25189		if err := f(x); err != nil {
25190			return err
25191		}
25192		if x.NextPageToken == "" {
25193			return nil
25194		}
25195		c.PageToken(x.NextPageToken)
25196	}
25197}
25198
25199// method id "content.datafeeds.update":
25200
25201type DatafeedsUpdateCall struct {
25202	s          *APIService
25203	merchantId uint64
25204	datafeedId uint64
25205	datafeed   *Datafeed
25206	urlParams_ gensupport.URLParams
25207	ctx_       context.Context
25208	header_    http.Header
25209}
25210
25211// Update: Updates a datafeed configuration of your Merchant Center
25212// account. Any fields that are not provided are deleted from the
25213// resource.
25214//
25215// - datafeedId: The ID of the datafeed.
25216// - merchantId: The ID of the account that manages the datafeed. This
25217//   account cannot be a multi-client account.
25218func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
25219	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25220	c.merchantId = merchantId
25221	c.datafeedId = datafeedId
25222	c.datafeed = datafeed
25223	return c
25224}
25225
25226// Fields allows partial responses to be retrieved. See
25227// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25228// for more information.
25229func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
25230	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25231	return c
25232}
25233
25234// Context sets the context to be used in this call's Do method. Any
25235// pending HTTP request will be aborted if the provided context is
25236// canceled.
25237func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
25238	c.ctx_ = ctx
25239	return c
25240}
25241
25242// Header returns an http.Header that can be modified by the caller to
25243// add HTTP headers to the request.
25244func (c *DatafeedsUpdateCall) Header() http.Header {
25245	if c.header_ == nil {
25246		c.header_ = make(http.Header)
25247	}
25248	return c.header_
25249}
25250
25251func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
25252	reqHeaders := make(http.Header)
25253	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25254	for k, v := range c.header_ {
25255		reqHeaders[k] = v
25256	}
25257	reqHeaders.Set("User-Agent", c.s.userAgent())
25258	var body io.Reader = nil
25259	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
25260	if err != nil {
25261		return nil, err
25262	}
25263	reqHeaders.Set("Content-Type", "application/json")
25264	c.urlParams_.Set("alt", alt)
25265	c.urlParams_.Set("prettyPrint", "false")
25266	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
25267	urls += "?" + c.urlParams_.Encode()
25268	req, err := http.NewRequest("PUT", urls, body)
25269	if err != nil {
25270		return nil, err
25271	}
25272	req.Header = reqHeaders
25273	googleapi.Expand(req.URL, map[string]string{
25274		"merchantId": strconv.FormatUint(c.merchantId, 10),
25275		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
25276	})
25277	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25278}
25279
25280// Do executes the "content.datafeeds.update" call.
25281// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
25282// code is an error. Response headers are in either
25283// *Datafeed.ServerResponse.Header or (if a response was returned at
25284// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
25285// to check whether the returned error was because
25286// http.StatusNotModified was returned.
25287func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
25288	gensupport.SetOptions(c.urlParams_, opts...)
25289	res, err := c.doRequest("json")
25290	if res != nil && res.StatusCode == http.StatusNotModified {
25291		if res.Body != nil {
25292			res.Body.Close()
25293		}
25294		return nil, &googleapi.Error{
25295			Code:   res.StatusCode,
25296			Header: res.Header,
25297		}
25298	}
25299	if err != nil {
25300		return nil, err
25301	}
25302	defer googleapi.CloseBody(res)
25303	if err := googleapi.CheckResponse(res); err != nil {
25304		return nil, err
25305	}
25306	ret := &Datafeed{
25307		ServerResponse: googleapi.ServerResponse{
25308			Header:         res.Header,
25309			HTTPStatusCode: res.StatusCode,
25310		},
25311	}
25312	target := &ret
25313	if err := gensupport.DecodeResponse(target, res); err != nil {
25314		return nil, err
25315	}
25316	return ret, nil
25317	// {
25318	//   "description": "Updates a datafeed configuration of your Merchant Center account. Any fields that are not provided are deleted from the resource.",
25319	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
25320	//   "httpMethod": "PUT",
25321	//   "id": "content.datafeeds.update",
25322	//   "parameterOrder": [
25323	//     "merchantId",
25324	//     "datafeedId"
25325	//   ],
25326	//   "parameters": {
25327	//     "datafeedId": {
25328	//       "description": "The ID of the datafeed.",
25329	//       "format": "uint64",
25330	//       "location": "path",
25331	//       "required": true,
25332	//       "type": "string"
25333	//     },
25334	//     "merchantId": {
25335	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
25336	//       "format": "uint64",
25337	//       "location": "path",
25338	//       "required": true,
25339	//       "type": "string"
25340	//     }
25341	//   },
25342	//   "path": "{merchantId}/datafeeds/{datafeedId}",
25343	//   "request": {
25344	//     "$ref": "Datafeed"
25345	//   },
25346	//   "response": {
25347	//     "$ref": "Datafeed"
25348	//   },
25349	//   "scopes": [
25350	//     "https://www.googleapis.com/auth/content"
25351	//   ]
25352	// }
25353
25354}
25355
25356// method id "content.datafeedstatuses.custombatch":
25357
25358type DatafeedstatusesCustombatchCall struct {
25359	s                                  *APIService
25360	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
25361	urlParams_                         gensupport.URLParams
25362	ctx_                               context.Context
25363	header_                            http.Header
25364}
25365
25366// Custombatch: Gets multiple Merchant Center datafeed statuses in a
25367// single request.
25368func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
25369	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25370	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
25371	return c
25372}
25373
25374// Fields allows partial responses to be retrieved. See
25375// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25376// for more information.
25377func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
25378	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25379	return c
25380}
25381
25382// Context sets the context to be used in this call's Do method. Any
25383// pending HTTP request will be aborted if the provided context is
25384// canceled.
25385func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
25386	c.ctx_ = ctx
25387	return c
25388}
25389
25390// Header returns an http.Header that can be modified by the caller to
25391// add HTTP headers to the request.
25392func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
25393	if c.header_ == nil {
25394		c.header_ = make(http.Header)
25395	}
25396	return c.header_
25397}
25398
25399func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
25400	reqHeaders := make(http.Header)
25401	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25402	for k, v := range c.header_ {
25403		reqHeaders[k] = v
25404	}
25405	reqHeaders.Set("User-Agent", c.s.userAgent())
25406	var body io.Reader = nil
25407	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
25408	if err != nil {
25409		return nil, err
25410	}
25411	reqHeaders.Set("Content-Type", "application/json")
25412	c.urlParams_.Set("alt", alt)
25413	c.urlParams_.Set("prettyPrint", "false")
25414	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeedstatuses/batch")
25415	urls += "?" + c.urlParams_.Encode()
25416	req, err := http.NewRequest("POST", urls, body)
25417	if err != nil {
25418		return nil, err
25419	}
25420	req.Header = reqHeaders
25421	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25422}
25423
25424// Do executes the "content.datafeedstatuses.custombatch" call.
25425// Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
25426// non-nil. Any non-2xx status code is an error. Response headers are in
25427// either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
25428// (if a response was returned at all) in
25429// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25430// whether the returned error was because http.StatusNotModified was
25431// returned.
25432func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
25433	gensupport.SetOptions(c.urlParams_, opts...)
25434	res, err := c.doRequest("json")
25435	if res != nil && res.StatusCode == http.StatusNotModified {
25436		if res.Body != nil {
25437			res.Body.Close()
25438		}
25439		return nil, &googleapi.Error{
25440			Code:   res.StatusCode,
25441			Header: res.Header,
25442		}
25443	}
25444	if err != nil {
25445		return nil, err
25446	}
25447	defer googleapi.CloseBody(res)
25448	if err := googleapi.CheckResponse(res); err != nil {
25449		return nil, err
25450	}
25451	ret := &DatafeedstatusesCustomBatchResponse{
25452		ServerResponse: googleapi.ServerResponse{
25453			Header:         res.Header,
25454			HTTPStatusCode: res.StatusCode,
25455		},
25456	}
25457	target := &ret
25458	if err := gensupport.DecodeResponse(target, res); err != nil {
25459		return nil, err
25460	}
25461	return ret, nil
25462	// {
25463	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
25464	//   "flatPath": "datafeedstatuses/batch",
25465	//   "httpMethod": "POST",
25466	//   "id": "content.datafeedstatuses.custombatch",
25467	//   "parameterOrder": [],
25468	//   "parameters": {},
25469	//   "path": "datafeedstatuses/batch",
25470	//   "request": {
25471	//     "$ref": "DatafeedstatusesCustomBatchRequest"
25472	//   },
25473	//   "response": {
25474	//     "$ref": "DatafeedstatusesCustomBatchResponse"
25475	//   },
25476	//   "scopes": [
25477	//     "https://www.googleapis.com/auth/content"
25478	//   ]
25479	// }
25480
25481}
25482
25483// method id "content.datafeedstatuses.get":
25484
25485type DatafeedstatusesGetCall struct {
25486	s            *APIService
25487	merchantId   uint64
25488	datafeedId   uint64
25489	urlParams_   gensupport.URLParams
25490	ifNoneMatch_ string
25491	ctx_         context.Context
25492	header_      http.Header
25493}
25494
25495// Get: Retrieves the status of a datafeed from your Merchant Center
25496// account.
25497//
25498// - datafeedId: The ID of the datafeed.
25499// - merchantId: The ID of the account that manages the datafeed. This
25500//   account cannot be a multi-client account.
25501func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
25502	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25503	c.merchantId = merchantId
25504	c.datafeedId = datafeedId
25505	return c
25506}
25507
25508// Country sets the optional parameter "country": The country for which
25509// to get the datafeed status. If this parameter is provided then
25510// language must also be provided. Note that this parameter is required
25511// for feeds targeting multiple countries and languages, since a feed
25512// may have a different status for each target.
25513func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
25514	c.urlParams_.Set("country", country)
25515	return c
25516}
25517
25518// Language sets the optional parameter "language": The language for
25519// which to get the datafeed status. If this parameter is provided then
25520// country must also be provided. Note that this parameter is required
25521// for feeds targeting multiple countries and languages, since a feed
25522// may have a different status for each target.
25523func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
25524	c.urlParams_.Set("language", language)
25525	return c
25526}
25527
25528// Fields allows partial responses to be retrieved. See
25529// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25530// for more information.
25531func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
25532	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25533	return c
25534}
25535
25536// IfNoneMatch sets the optional parameter which makes the operation
25537// fail if the object's ETag matches the given value. This is useful for
25538// getting updates only after the object has changed since the last
25539// request. Use googleapi.IsNotModified to check whether the response
25540// error from Do is the result of In-None-Match.
25541func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
25542	c.ifNoneMatch_ = entityTag
25543	return c
25544}
25545
25546// Context sets the context to be used in this call's Do method. Any
25547// pending HTTP request will be aborted if the provided context is
25548// canceled.
25549func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
25550	c.ctx_ = ctx
25551	return c
25552}
25553
25554// Header returns an http.Header that can be modified by the caller to
25555// add HTTP headers to the request.
25556func (c *DatafeedstatusesGetCall) Header() http.Header {
25557	if c.header_ == nil {
25558		c.header_ = make(http.Header)
25559	}
25560	return c.header_
25561}
25562
25563func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
25564	reqHeaders := make(http.Header)
25565	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25566	for k, v := range c.header_ {
25567		reqHeaders[k] = v
25568	}
25569	reqHeaders.Set("User-Agent", c.s.userAgent())
25570	if c.ifNoneMatch_ != "" {
25571		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25572	}
25573	var body io.Reader = nil
25574	c.urlParams_.Set("alt", alt)
25575	c.urlParams_.Set("prettyPrint", "false")
25576	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses/{datafeedId}")
25577	urls += "?" + c.urlParams_.Encode()
25578	req, err := http.NewRequest("GET", urls, body)
25579	if err != nil {
25580		return nil, err
25581	}
25582	req.Header = reqHeaders
25583	googleapi.Expand(req.URL, map[string]string{
25584		"merchantId": strconv.FormatUint(c.merchantId, 10),
25585		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
25586	})
25587	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25588}
25589
25590// Do executes the "content.datafeedstatuses.get" call.
25591// Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
25592// status code is an error. Response headers are in either
25593// *DatafeedStatus.ServerResponse.Header or (if a response was returned
25594// at all) in error.(*googleapi.Error).Header. Use
25595// googleapi.IsNotModified to check whether the returned error was
25596// because http.StatusNotModified was returned.
25597func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
25598	gensupport.SetOptions(c.urlParams_, opts...)
25599	res, err := c.doRequest("json")
25600	if res != nil && res.StatusCode == http.StatusNotModified {
25601		if res.Body != nil {
25602			res.Body.Close()
25603		}
25604		return nil, &googleapi.Error{
25605			Code:   res.StatusCode,
25606			Header: res.Header,
25607		}
25608	}
25609	if err != nil {
25610		return nil, err
25611	}
25612	defer googleapi.CloseBody(res)
25613	if err := googleapi.CheckResponse(res); err != nil {
25614		return nil, err
25615	}
25616	ret := &DatafeedStatus{
25617		ServerResponse: googleapi.ServerResponse{
25618			Header:         res.Header,
25619			HTTPStatusCode: res.StatusCode,
25620		},
25621	}
25622	target := &ret
25623	if err := gensupport.DecodeResponse(target, res); err != nil {
25624		return nil, err
25625	}
25626	return ret, nil
25627	// {
25628	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
25629	//   "flatPath": "{merchantId}/datafeedstatuses/{datafeedId}",
25630	//   "httpMethod": "GET",
25631	//   "id": "content.datafeedstatuses.get",
25632	//   "parameterOrder": [
25633	//     "merchantId",
25634	//     "datafeedId"
25635	//   ],
25636	//   "parameters": {
25637	//     "country": {
25638	//       "description": "The country for which to get the datafeed status. If this parameter is provided then language must also be provided. Note that this parameter is required for feeds targeting multiple countries and languages, since a feed may have a different status for each target.",
25639	//       "location": "query",
25640	//       "type": "string"
25641	//     },
25642	//     "datafeedId": {
25643	//       "description": "The ID of the datafeed.",
25644	//       "format": "uint64",
25645	//       "location": "path",
25646	//       "required": true,
25647	//       "type": "string"
25648	//     },
25649	//     "language": {
25650	//       "description": "The language for which to get the datafeed status. If this parameter is provided then country must also be provided. Note that this parameter is required for feeds targeting multiple countries and languages, since a feed may have a different status for each target.",
25651	//       "location": "query",
25652	//       "type": "string"
25653	//     },
25654	//     "merchantId": {
25655	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
25656	//       "format": "uint64",
25657	//       "location": "path",
25658	//       "required": true,
25659	//       "type": "string"
25660	//     }
25661	//   },
25662	//   "path": "{merchantId}/datafeedstatuses/{datafeedId}",
25663	//   "response": {
25664	//     "$ref": "DatafeedStatus"
25665	//   },
25666	//   "scopes": [
25667	//     "https://www.googleapis.com/auth/content"
25668	//   ]
25669	// }
25670
25671}
25672
25673// method id "content.datafeedstatuses.list":
25674
25675type DatafeedstatusesListCall struct {
25676	s            *APIService
25677	merchantId   uint64
25678	urlParams_   gensupport.URLParams
25679	ifNoneMatch_ string
25680	ctx_         context.Context
25681	header_      http.Header
25682}
25683
25684// List: Lists the statuses of the datafeeds in your Merchant Center
25685// account.
25686//
25687// - merchantId: The ID of the account that manages the datafeeds. This
25688//   account cannot be a multi-client account.
25689func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
25690	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25691	c.merchantId = merchantId
25692	return c
25693}
25694
25695// MaxResults sets the optional parameter "maxResults": The maximum
25696// number of products to return in the response, used for paging.
25697func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
25698	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25699	return c
25700}
25701
25702// PageToken sets the optional parameter "pageToken": The token returned
25703// by the previous request.
25704func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
25705	c.urlParams_.Set("pageToken", pageToken)
25706	return c
25707}
25708
25709// Fields allows partial responses to be retrieved. See
25710// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25711// for more information.
25712func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
25713	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25714	return c
25715}
25716
25717// IfNoneMatch sets the optional parameter which makes the operation
25718// fail if the object's ETag matches the given value. This is useful for
25719// getting updates only after the object has changed since the last
25720// request. Use googleapi.IsNotModified to check whether the response
25721// error from Do is the result of In-None-Match.
25722func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
25723	c.ifNoneMatch_ = entityTag
25724	return c
25725}
25726
25727// Context sets the context to be used in this call's Do method. Any
25728// pending HTTP request will be aborted if the provided context is
25729// canceled.
25730func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
25731	c.ctx_ = ctx
25732	return c
25733}
25734
25735// Header returns an http.Header that can be modified by the caller to
25736// add HTTP headers to the request.
25737func (c *DatafeedstatusesListCall) Header() http.Header {
25738	if c.header_ == nil {
25739		c.header_ = make(http.Header)
25740	}
25741	return c.header_
25742}
25743
25744func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
25745	reqHeaders := make(http.Header)
25746	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25747	for k, v := range c.header_ {
25748		reqHeaders[k] = v
25749	}
25750	reqHeaders.Set("User-Agent", c.s.userAgent())
25751	if c.ifNoneMatch_ != "" {
25752		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25753	}
25754	var body io.Reader = nil
25755	c.urlParams_.Set("alt", alt)
25756	c.urlParams_.Set("prettyPrint", "false")
25757	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses")
25758	urls += "?" + c.urlParams_.Encode()
25759	req, err := http.NewRequest("GET", urls, body)
25760	if err != nil {
25761		return nil, err
25762	}
25763	req.Header = reqHeaders
25764	googleapi.Expand(req.URL, map[string]string{
25765		"merchantId": strconv.FormatUint(c.merchantId, 10),
25766	})
25767	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25768}
25769
25770// Do executes the "content.datafeedstatuses.list" call.
25771// Exactly one of *DatafeedstatusesListResponse or error will be
25772// non-nil. Any non-2xx status code is an error. Response headers are in
25773// either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
25774// response was returned at all) in error.(*googleapi.Error).Header. Use
25775// googleapi.IsNotModified to check whether the returned error was
25776// because http.StatusNotModified was returned.
25777func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
25778	gensupport.SetOptions(c.urlParams_, opts...)
25779	res, err := c.doRequest("json")
25780	if res != nil && res.StatusCode == http.StatusNotModified {
25781		if res.Body != nil {
25782			res.Body.Close()
25783		}
25784		return nil, &googleapi.Error{
25785			Code:   res.StatusCode,
25786			Header: res.Header,
25787		}
25788	}
25789	if err != nil {
25790		return nil, err
25791	}
25792	defer googleapi.CloseBody(res)
25793	if err := googleapi.CheckResponse(res); err != nil {
25794		return nil, err
25795	}
25796	ret := &DatafeedstatusesListResponse{
25797		ServerResponse: googleapi.ServerResponse{
25798			Header:         res.Header,
25799			HTTPStatusCode: res.StatusCode,
25800		},
25801	}
25802	target := &ret
25803	if err := gensupport.DecodeResponse(target, res); err != nil {
25804		return nil, err
25805	}
25806	return ret, nil
25807	// {
25808	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
25809	//   "flatPath": "{merchantId}/datafeedstatuses",
25810	//   "httpMethod": "GET",
25811	//   "id": "content.datafeedstatuses.list",
25812	//   "parameterOrder": [
25813	//     "merchantId"
25814	//   ],
25815	//   "parameters": {
25816	//     "maxResults": {
25817	//       "description": "The maximum number of products to return in the response, used for paging.",
25818	//       "format": "uint32",
25819	//       "location": "query",
25820	//       "type": "integer"
25821	//     },
25822	//     "merchantId": {
25823	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
25824	//       "format": "uint64",
25825	//       "location": "path",
25826	//       "required": true,
25827	//       "type": "string"
25828	//     },
25829	//     "pageToken": {
25830	//       "description": "The token returned by the previous request.",
25831	//       "location": "query",
25832	//       "type": "string"
25833	//     }
25834	//   },
25835	//   "path": "{merchantId}/datafeedstatuses",
25836	//   "response": {
25837	//     "$ref": "DatafeedstatusesListResponse"
25838	//   },
25839	//   "scopes": [
25840	//     "https://www.googleapis.com/auth/content"
25841	//   ]
25842	// }
25843
25844}
25845
25846// Pages invokes f for each page of results.
25847// A non-nil error returned from f will halt the iteration.
25848// The provided context supersedes any context provided to the Context method.
25849func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
25850	c.ctx_ = ctx
25851	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25852	for {
25853		x, err := c.Do()
25854		if err != nil {
25855			return err
25856		}
25857		if err := f(x); err != nil {
25858			return err
25859		}
25860		if x.NextPageToken == "" {
25861			return nil
25862		}
25863		c.PageToken(x.NextPageToken)
25864	}
25865}
25866
25867// method id "content.freelistingsprogram.get":
25868
25869type FreelistingsprogramGetCall struct {
25870	s            *APIService
25871	merchantId   int64
25872	urlParams_   gensupport.URLParams
25873	ifNoneMatch_ string
25874	ctx_         context.Context
25875	header_      http.Header
25876}
25877
25878// Get: Retrieves the status and review eligibility for the free listing
25879// program.
25880//
25881// - merchantId: The ID of the account.
25882func (r *FreelistingsprogramService) Get(merchantId int64) *FreelistingsprogramGetCall {
25883	c := &FreelistingsprogramGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25884	c.merchantId = merchantId
25885	return c
25886}
25887
25888// Fields allows partial responses to be retrieved. See
25889// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25890// for more information.
25891func (c *FreelistingsprogramGetCall) Fields(s ...googleapi.Field) *FreelistingsprogramGetCall {
25892	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25893	return c
25894}
25895
25896// IfNoneMatch sets the optional parameter which makes the operation
25897// fail if the object's ETag matches the given value. This is useful for
25898// getting updates only after the object has changed since the last
25899// request. Use googleapi.IsNotModified to check whether the response
25900// error from Do is the result of In-None-Match.
25901func (c *FreelistingsprogramGetCall) IfNoneMatch(entityTag string) *FreelistingsprogramGetCall {
25902	c.ifNoneMatch_ = entityTag
25903	return c
25904}
25905
25906// Context sets the context to be used in this call's Do method. Any
25907// pending HTTP request will be aborted if the provided context is
25908// canceled.
25909func (c *FreelistingsprogramGetCall) Context(ctx context.Context) *FreelistingsprogramGetCall {
25910	c.ctx_ = ctx
25911	return c
25912}
25913
25914// Header returns an http.Header that can be modified by the caller to
25915// add HTTP headers to the request.
25916func (c *FreelistingsprogramGetCall) Header() http.Header {
25917	if c.header_ == nil {
25918		c.header_ = make(http.Header)
25919	}
25920	return c.header_
25921}
25922
25923func (c *FreelistingsprogramGetCall) doRequest(alt string) (*http.Response, error) {
25924	reqHeaders := make(http.Header)
25925	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25926	for k, v := range c.header_ {
25927		reqHeaders[k] = v
25928	}
25929	reqHeaders.Set("User-Agent", c.s.userAgent())
25930	if c.ifNoneMatch_ != "" {
25931		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25932	}
25933	var body io.Reader = nil
25934	c.urlParams_.Set("alt", alt)
25935	c.urlParams_.Set("prettyPrint", "false")
25936	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/freelistingsprogram")
25937	urls += "?" + c.urlParams_.Encode()
25938	req, err := http.NewRequest("GET", urls, body)
25939	if err != nil {
25940		return nil, err
25941	}
25942	req.Header = reqHeaders
25943	googleapi.Expand(req.URL, map[string]string{
25944		"merchantId": strconv.FormatInt(c.merchantId, 10),
25945	})
25946	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25947}
25948
25949// Do executes the "content.freelistingsprogram.get" call.
25950// Exactly one of *FreeListingsProgramStatus or error will be non-nil.
25951// Any non-2xx status code is an error. Response headers are in either
25952// *FreeListingsProgramStatus.ServerResponse.Header or (if a response
25953// was returned at all) in error.(*googleapi.Error).Header. Use
25954// googleapi.IsNotModified to check whether the returned error was
25955// because http.StatusNotModified was returned.
25956func (c *FreelistingsprogramGetCall) Do(opts ...googleapi.CallOption) (*FreeListingsProgramStatus, error) {
25957	gensupport.SetOptions(c.urlParams_, opts...)
25958	res, err := c.doRequest("json")
25959	if res != nil && res.StatusCode == http.StatusNotModified {
25960		if res.Body != nil {
25961			res.Body.Close()
25962		}
25963		return nil, &googleapi.Error{
25964			Code:   res.StatusCode,
25965			Header: res.Header,
25966		}
25967	}
25968	if err != nil {
25969		return nil, err
25970	}
25971	defer googleapi.CloseBody(res)
25972	if err := googleapi.CheckResponse(res); err != nil {
25973		return nil, err
25974	}
25975	ret := &FreeListingsProgramStatus{
25976		ServerResponse: googleapi.ServerResponse{
25977			Header:         res.Header,
25978			HTTPStatusCode: res.StatusCode,
25979		},
25980	}
25981	target := &ret
25982	if err := gensupport.DecodeResponse(target, res); err != nil {
25983		return nil, err
25984	}
25985	return ret, nil
25986	// {
25987	//   "description": "Retrieves the status and review eligibility for the free listing program.",
25988	//   "flatPath": "{merchantId}/freelistingsprogram",
25989	//   "httpMethod": "GET",
25990	//   "id": "content.freelistingsprogram.get",
25991	//   "parameterOrder": [
25992	//     "merchantId"
25993	//   ],
25994	//   "parameters": {
25995	//     "merchantId": {
25996	//       "description": "Required. The ID of the account.",
25997	//       "format": "int64",
25998	//       "location": "path",
25999	//       "required": true,
26000	//       "type": "string"
26001	//     }
26002	//   },
26003	//   "path": "{merchantId}/freelistingsprogram",
26004	//   "response": {
26005	//     "$ref": "FreeListingsProgramStatus"
26006	//   },
26007	//   "scopes": [
26008	//     "https://www.googleapis.com/auth/content"
26009	//   ]
26010	// }
26011
26012}
26013
26014// method id "content.freelistingsprogram.requestreview":
26015
26016type FreelistingsprogramRequestreviewCall struct {
26017	s                                *APIService
26018	merchantId                       int64
26019	requestreviewfreelistingsrequest *RequestReviewFreeListingsRequest
26020	urlParams_                       gensupport.URLParams
26021	ctx_                             context.Context
26022	header_                          http.Header
26023}
26024
26025// Requestreview: Requests a review for Free Listings program in the
26026// provided region. Important: This method is only whitelisted for
26027// selected merchants.
26028//
26029// - merchantId: The ID of the account.
26030func (r *FreelistingsprogramService) Requestreview(merchantId int64, requestreviewfreelistingsrequest *RequestReviewFreeListingsRequest) *FreelistingsprogramRequestreviewCall {
26031	c := &FreelistingsprogramRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26032	c.merchantId = merchantId
26033	c.requestreviewfreelistingsrequest = requestreviewfreelistingsrequest
26034	return c
26035}
26036
26037// Fields allows partial responses to be retrieved. See
26038// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26039// for more information.
26040func (c *FreelistingsprogramRequestreviewCall) Fields(s ...googleapi.Field) *FreelistingsprogramRequestreviewCall {
26041	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26042	return c
26043}
26044
26045// Context sets the context to be used in this call's Do method. Any
26046// pending HTTP request will be aborted if the provided context is
26047// canceled.
26048func (c *FreelistingsprogramRequestreviewCall) Context(ctx context.Context) *FreelistingsprogramRequestreviewCall {
26049	c.ctx_ = ctx
26050	return c
26051}
26052
26053// Header returns an http.Header that can be modified by the caller to
26054// add HTTP headers to the request.
26055func (c *FreelistingsprogramRequestreviewCall) Header() http.Header {
26056	if c.header_ == nil {
26057		c.header_ = make(http.Header)
26058	}
26059	return c.header_
26060}
26061
26062func (c *FreelistingsprogramRequestreviewCall) doRequest(alt string) (*http.Response, error) {
26063	reqHeaders := make(http.Header)
26064	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26065	for k, v := range c.header_ {
26066		reqHeaders[k] = v
26067	}
26068	reqHeaders.Set("User-Agent", c.s.userAgent())
26069	var body io.Reader = nil
26070	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewfreelistingsrequest)
26071	if err != nil {
26072		return nil, err
26073	}
26074	reqHeaders.Set("Content-Type", "application/json")
26075	c.urlParams_.Set("alt", alt)
26076	c.urlParams_.Set("prettyPrint", "false")
26077	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/freelistingsprogram/requestreview")
26078	urls += "?" + c.urlParams_.Encode()
26079	req, err := http.NewRequest("POST", urls, body)
26080	if err != nil {
26081		return nil, err
26082	}
26083	req.Header = reqHeaders
26084	googleapi.Expand(req.URL, map[string]string{
26085		"merchantId": strconv.FormatInt(c.merchantId, 10),
26086	})
26087	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26088}
26089
26090// Do executes the "content.freelistingsprogram.requestreview" call.
26091func (c *FreelistingsprogramRequestreviewCall) Do(opts ...googleapi.CallOption) error {
26092	gensupport.SetOptions(c.urlParams_, opts...)
26093	res, err := c.doRequest("json")
26094	if err != nil {
26095		return err
26096	}
26097	defer googleapi.CloseBody(res)
26098	if err := googleapi.CheckResponse(res); err != nil {
26099		return err
26100	}
26101	return nil
26102	// {
26103	//   "description": "Requests a review for Free Listings program in the provided region. Important: This method is only whitelisted for selected merchants.",
26104	//   "flatPath": "{merchantId}/freelistingsprogram/requestreview",
26105	//   "httpMethod": "POST",
26106	//   "id": "content.freelistingsprogram.requestreview",
26107	//   "parameterOrder": [
26108	//     "merchantId"
26109	//   ],
26110	//   "parameters": {
26111	//     "merchantId": {
26112	//       "description": "Required. The ID of the account.",
26113	//       "format": "int64",
26114	//       "location": "path",
26115	//       "required": true,
26116	//       "type": "string"
26117	//     }
26118	//   },
26119	//   "path": "{merchantId}/freelistingsprogram/requestreview",
26120	//   "request": {
26121	//     "$ref": "RequestReviewFreeListingsRequest"
26122	//   },
26123	//   "scopes": [
26124	//     "https://www.googleapis.com/auth/content"
26125	//   ]
26126	// }
26127
26128}
26129
26130// method id "content.liasettings.custombatch":
26131
26132type LiasettingsCustombatchCall struct {
26133	s                             *APIService
26134	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
26135	urlParams_                    gensupport.URLParams
26136	ctx_                          context.Context
26137	header_                       http.Header
26138}
26139
26140// Custombatch: Retrieves and/or updates the LIA settings of multiple
26141// accounts in a single request.
26142func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
26143	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26144	c.liasettingscustombatchrequest = liasettingscustombatchrequest
26145	return c
26146}
26147
26148// Fields allows partial responses to be retrieved. See
26149// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26150// for more information.
26151func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
26152	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26153	return c
26154}
26155
26156// Context sets the context to be used in this call's Do method. Any
26157// pending HTTP request will be aborted if the provided context is
26158// canceled.
26159func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
26160	c.ctx_ = ctx
26161	return c
26162}
26163
26164// Header returns an http.Header that can be modified by the caller to
26165// add HTTP headers to the request.
26166func (c *LiasettingsCustombatchCall) Header() http.Header {
26167	if c.header_ == nil {
26168		c.header_ = make(http.Header)
26169	}
26170	return c.header_
26171}
26172
26173func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
26174	reqHeaders := make(http.Header)
26175	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26176	for k, v := range c.header_ {
26177		reqHeaders[k] = v
26178	}
26179	reqHeaders.Set("User-Agent", c.s.userAgent())
26180	var body io.Reader = nil
26181	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
26182	if err != nil {
26183		return nil, err
26184	}
26185	reqHeaders.Set("Content-Type", "application/json")
26186	c.urlParams_.Set("alt", alt)
26187	c.urlParams_.Set("prettyPrint", "false")
26188	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch")
26189	urls += "?" + c.urlParams_.Encode()
26190	req, err := http.NewRequest("POST", urls, body)
26191	if err != nil {
26192		return nil, err
26193	}
26194	req.Header = reqHeaders
26195	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26196}
26197
26198// Do executes the "content.liasettings.custombatch" call.
26199// Exactly one of *LiasettingsCustomBatchResponse or error will be
26200// non-nil. Any non-2xx status code is an error. Response headers are in
26201// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
26202// response was returned at all) in error.(*googleapi.Error).Header. Use
26203// googleapi.IsNotModified to check whether the returned error was
26204// because http.StatusNotModified was returned.
26205func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
26206	gensupport.SetOptions(c.urlParams_, opts...)
26207	res, err := c.doRequest("json")
26208	if res != nil && res.StatusCode == http.StatusNotModified {
26209		if res.Body != nil {
26210			res.Body.Close()
26211		}
26212		return nil, &googleapi.Error{
26213			Code:   res.StatusCode,
26214			Header: res.Header,
26215		}
26216	}
26217	if err != nil {
26218		return nil, err
26219	}
26220	defer googleapi.CloseBody(res)
26221	if err := googleapi.CheckResponse(res); err != nil {
26222		return nil, err
26223	}
26224	ret := &LiasettingsCustomBatchResponse{
26225		ServerResponse: googleapi.ServerResponse{
26226			Header:         res.Header,
26227			HTTPStatusCode: res.StatusCode,
26228		},
26229	}
26230	target := &ret
26231	if err := gensupport.DecodeResponse(target, res); err != nil {
26232		return nil, err
26233	}
26234	return ret, nil
26235	// {
26236	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
26237	//   "flatPath": "liasettings/batch",
26238	//   "httpMethod": "POST",
26239	//   "id": "content.liasettings.custombatch",
26240	//   "parameterOrder": [],
26241	//   "parameters": {},
26242	//   "path": "liasettings/batch",
26243	//   "request": {
26244	//     "$ref": "LiasettingsCustomBatchRequest"
26245	//   },
26246	//   "response": {
26247	//     "$ref": "LiasettingsCustomBatchResponse"
26248	//   },
26249	//   "scopes": [
26250	//     "https://www.googleapis.com/auth/content"
26251	//   ]
26252	// }
26253
26254}
26255
26256// method id "content.liasettings.get":
26257
26258type LiasettingsGetCall struct {
26259	s            *APIService
26260	merchantId   uint64
26261	accountId    uint64
26262	urlParams_   gensupport.URLParams
26263	ifNoneMatch_ string
26264	ctx_         context.Context
26265	header_      http.Header
26266}
26267
26268// Get: Retrieves the LIA settings of the account.
26269//
26270// - accountId: The ID of the account for which to get or update LIA
26271//   settings.
26272// - merchantId: The ID of the managing account. If this parameter is
26273//   not the same as accountId, then this account must be a multi-client
26274//   account and `accountId` must be the ID of a sub-account of this
26275//   account.
26276func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
26277	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26278	c.merchantId = merchantId
26279	c.accountId = accountId
26280	return c
26281}
26282
26283// Fields allows partial responses to be retrieved. See
26284// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26285// for more information.
26286func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
26287	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26288	return c
26289}
26290
26291// IfNoneMatch sets the optional parameter which makes the operation
26292// fail if the object's ETag matches the given value. This is useful for
26293// getting updates only after the object has changed since the last
26294// request. Use googleapi.IsNotModified to check whether the response
26295// error from Do is the result of In-None-Match.
26296func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
26297	c.ifNoneMatch_ = entityTag
26298	return c
26299}
26300
26301// Context sets the context to be used in this call's Do method. Any
26302// pending HTTP request will be aborted if the provided context is
26303// canceled.
26304func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
26305	c.ctx_ = ctx
26306	return c
26307}
26308
26309// Header returns an http.Header that can be modified by the caller to
26310// add HTTP headers to the request.
26311func (c *LiasettingsGetCall) Header() http.Header {
26312	if c.header_ == nil {
26313		c.header_ = make(http.Header)
26314	}
26315	return c.header_
26316}
26317
26318func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
26319	reqHeaders := make(http.Header)
26320	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26321	for k, v := range c.header_ {
26322		reqHeaders[k] = v
26323	}
26324	reqHeaders.Set("User-Agent", c.s.userAgent())
26325	if c.ifNoneMatch_ != "" {
26326		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26327	}
26328	var body io.Reader = nil
26329	c.urlParams_.Set("alt", alt)
26330	c.urlParams_.Set("prettyPrint", "false")
26331	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
26332	urls += "?" + c.urlParams_.Encode()
26333	req, err := http.NewRequest("GET", urls, body)
26334	if err != nil {
26335		return nil, err
26336	}
26337	req.Header = reqHeaders
26338	googleapi.Expand(req.URL, map[string]string{
26339		"merchantId": strconv.FormatUint(c.merchantId, 10),
26340		"accountId":  strconv.FormatUint(c.accountId, 10),
26341	})
26342	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26343}
26344
26345// Do executes the "content.liasettings.get" call.
26346// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
26347// status code is an error. Response headers are in either
26348// *LiaSettings.ServerResponse.Header or (if a response was returned at
26349// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
26350// to check whether the returned error was because
26351// http.StatusNotModified was returned.
26352func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
26353	gensupport.SetOptions(c.urlParams_, opts...)
26354	res, err := c.doRequest("json")
26355	if res != nil && res.StatusCode == http.StatusNotModified {
26356		if res.Body != nil {
26357			res.Body.Close()
26358		}
26359		return nil, &googleapi.Error{
26360			Code:   res.StatusCode,
26361			Header: res.Header,
26362		}
26363	}
26364	if err != nil {
26365		return nil, err
26366	}
26367	defer googleapi.CloseBody(res)
26368	if err := googleapi.CheckResponse(res); err != nil {
26369		return nil, err
26370	}
26371	ret := &LiaSettings{
26372		ServerResponse: googleapi.ServerResponse{
26373			Header:         res.Header,
26374			HTTPStatusCode: res.StatusCode,
26375		},
26376	}
26377	target := &ret
26378	if err := gensupport.DecodeResponse(target, res); err != nil {
26379		return nil, err
26380	}
26381	return ret, nil
26382	// {
26383	//   "description": "Retrieves the LIA settings of the account.",
26384	//   "flatPath": "{merchantId}/liasettings/{accountId}",
26385	//   "httpMethod": "GET",
26386	//   "id": "content.liasettings.get",
26387	//   "parameterOrder": [
26388	//     "merchantId",
26389	//     "accountId"
26390	//   ],
26391	//   "parameters": {
26392	//     "accountId": {
26393	//       "description": "The ID of the account for which to get or update LIA settings.",
26394	//       "format": "uint64",
26395	//       "location": "path",
26396	//       "required": true,
26397	//       "type": "string"
26398	//     },
26399	//     "merchantId": {
26400	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
26401	//       "format": "uint64",
26402	//       "location": "path",
26403	//       "required": true,
26404	//       "type": "string"
26405	//     }
26406	//   },
26407	//   "path": "{merchantId}/liasettings/{accountId}",
26408	//   "response": {
26409	//     "$ref": "LiaSettings"
26410	//   },
26411	//   "scopes": [
26412	//     "https://www.googleapis.com/auth/content"
26413	//   ]
26414	// }
26415
26416}
26417
26418// method id "content.liasettings.getaccessiblegmbaccounts":
26419
26420type LiasettingsGetaccessiblegmbaccountsCall struct {
26421	s            *APIService
26422	merchantId   uint64
26423	accountId    uint64
26424	urlParams_   gensupport.URLParams
26425	ifNoneMatch_ string
26426	ctx_         context.Context
26427	header_      http.Header
26428}
26429
26430// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
26431// Business accounts.
26432//
26433// - accountId: The ID of the account for which to retrieve accessible
26434//   Google My Business accounts.
26435// - merchantId: The ID of the managing account. If this parameter is
26436//   not the same as accountId, then this account must be a multi-client
26437//   account and `accountId` must be the ID of a sub-account of this
26438//   account.
26439func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
26440	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26441	c.merchantId = merchantId
26442	c.accountId = accountId
26443	return c
26444}
26445
26446// Fields allows partial responses to be retrieved. See
26447// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26448// for more information.
26449func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
26450	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26451	return c
26452}
26453
26454// IfNoneMatch sets the optional parameter which makes the operation
26455// fail if the object's ETag matches the given value. This is useful for
26456// getting updates only after the object has changed since the last
26457// request. Use googleapi.IsNotModified to check whether the response
26458// error from Do is the result of In-None-Match.
26459func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
26460	c.ifNoneMatch_ = entityTag
26461	return c
26462}
26463
26464// Context sets the context to be used in this call's Do method. Any
26465// pending HTTP request will be aborted if the provided context is
26466// canceled.
26467func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
26468	c.ctx_ = ctx
26469	return c
26470}
26471
26472// Header returns an http.Header that can be modified by the caller to
26473// add HTTP headers to the request.
26474func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
26475	if c.header_ == nil {
26476		c.header_ = make(http.Header)
26477	}
26478	return c.header_
26479}
26480
26481func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
26482	reqHeaders := make(http.Header)
26483	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26484	for k, v := range c.header_ {
26485		reqHeaders[k] = v
26486	}
26487	reqHeaders.Set("User-Agent", c.s.userAgent())
26488	if c.ifNoneMatch_ != "" {
26489		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26490	}
26491	var body io.Reader = nil
26492	c.urlParams_.Set("alt", alt)
26493	c.urlParams_.Set("prettyPrint", "false")
26494	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
26495	urls += "?" + c.urlParams_.Encode()
26496	req, err := http.NewRequest("GET", urls, body)
26497	if err != nil {
26498		return nil, err
26499	}
26500	req.Header = reqHeaders
26501	googleapi.Expand(req.URL, map[string]string{
26502		"merchantId": strconv.FormatUint(c.merchantId, 10),
26503		"accountId":  strconv.FormatUint(c.accountId, 10),
26504	})
26505	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26506}
26507
26508// Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
26509// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
26510// will be non-nil. Any non-2xx status code is an error. Response
26511// headers are in either
26512// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
26513// (if a response was returned at all) in
26514// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26515// whether the returned error was because http.StatusNotModified was
26516// returned.
26517func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
26518	gensupport.SetOptions(c.urlParams_, opts...)
26519	res, err := c.doRequest("json")
26520	if res != nil && res.StatusCode == http.StatusNotModified {
26521		if res.Body != nil {
26522			res.Body.Close()
26523		}
26524		return nil, &googleapi.Error{
26525			Code:   res.StatusCode,
26526			Header: res.Header,
26527		}
26528	}
26529	if err != nil {
26530		return nil, err
26531	}
26532	defer googleapi.CloseBody(res)
26533	if err := googleapi.CheckResponse(res); err != nil {
26534		return nil, err
26535	}
26536	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
26537		ServerResponse: googleapi.ServerResponse{
26538			Header:         res.Header,
26539			HTTPStatusCode: res.StatusCode,
26540		},
26541	}
26542	target := &ret
26543	if err := gensupport.DecodeResponse(target, res); err != nil {
26544		return nil, err
26545	}
26546	return ret, nil
26547	// {
26548	//   "description": "Retrieves the list of accessible Google My Business accounts.",
26549	//   "flatPath": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
26550	//   "httpMethod": "GET",
26551	//   "id": "content.liasettings.getaccessiblegmbaccounts",
26552	//   "parameterOrder": [
26553	//     "merchantId",
26554	//     "accountId"
26555	//   ],
26556	//   "parameters": {
26557	//     "accountId": {
26558	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
26559	//       "format": "uint64",
26560	//       "location": "path",
26561	//       "required": true,
26562	//       "type": "string"
26563	//     },
26564	//     "merchantId": {
26565	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
26566	//       "format": "uint64",
26567	//       "location": "path",
26568	//       "required": true,
26569	//       "type": "string"
26570	//     }
26571	//   },
26572	//   "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
26573	//   "response": {
26574	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
26575	//   },
26576	//   "scopes": [
26577	//     "https://www.googleapis.com/auth/content"
26578	//   ]
26579	// }
26580
26581}
26582
26583// method id "content.liasettings.list":
26584
26585type LiasettingsListCall struct {
26586	s            *APIService
26587	merchantId   uint64
26588	urlParams_   gensupport.URLParams
26589	ifNoneMatch_ string
26590	ctx_         context.Context
26591	header_      http.Header
26592}
26593
26594// List: Lists the LIA settings of the sub-accounts in your Merchant
26595// Center account.
26596//
26597// - merchantId: The ID of the managing account. This must be a
26598//   multi-client account.
26599func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
26600	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26601	c.merchantId = merchantId
26602	return c
26603}
26604
26605// MaxResults sets the optional parameter "maxResults": The maximum
26606// number of LIA settings to return in the response, used for paging.
26607func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
26608	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
26609	return c
26610}
26611
26612// PageToken sets the optional parameter "pageToken": The token returned
26613// by the previous request.
26614func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
26615	c.urlParams_.Set("pageToken", pageToken)
26616	return c
26617}
26618
26619// Fields allows partial responses to be retrieved. See
26620// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26621// for more information.
26622func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
26623	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26624	return c
26625}
26626
26627// IfNoneMatch sets the optional parameter which makes the operation
26628// fail if the object's ETag matches the given value. This is useful for
26629// getting updates only after the object has changed since the last
26630// request. Use googleapi.IsNotModified to check whether the response
26631// error from Do is the result of In-None-Match.
26632func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
26633	c.ifNoneMatch_ = entityTag
26634	return c
26635}
26636
26637// Context sets the context to be used in this call's Do method. Any
26638// pending HTTP request will be aborted if the provided context is
26639// canceled.
26640func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
26641	c.ctx_ = ctx
26642	return c
26643}
26644
26645// Header returns an http.Header that can be modified by the caller to
26646// add HTTP headers to the request.
26647func (c *LiasettingsListCall) Header() http.Header {
26648	if c.header_ == nil {
26649		c.header_ = make(http.Header)
26650	}
26651	return c.header_
26652}
26653
26654func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
26655	reqHeaders := make(http.Header)
26656	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26657	for k, v := range c.header_ {
26658		reqHeaders[k] = v
26659	}
26660	reqHeaders.Set("User-Agent", c.s.userAgent())
26661	if c.ifNoneMatch_ != "" {
26662		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26663	}
26664	var body io.Reader = nil
26665	c.urlParams_.Set("alt", alt)
26666	c.urlParams_.Set("prettyPrint", "false")
26667	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings")
26668	urls += "?" + c.urlParams_.Encode()
26669	req, err := http.NewRequest("GET", urls, body)
26670	if err != nil {
26671		return nil, err
26672	}
26673	req.Header = reqHeaders
26674	googleapi.Expand(req.URL, map[string]string{
26675		"merchantId": strconv.FormatUint(c.merchantId, 10),
26676	})
26677	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26678}
26679
26680// Do executes the "content.liasettings.list" call.
26681// Exactly one of *LiasettingsListResponse or error will be non-nil. Any
26682// non-2xx status code is an error. Response headers are in either
26683// *LiasettingsListResponse.ServerResponse.Header or (if a response was
26684// returned at all) in error.(*googleapi.Error).Header. Use
26685// googleapi.IsNotModified to check whether the returned error was
26686// because http.StatusNotModified was returned.
26687func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
26688	gensupport.SetOptions(c.urlParams_, opts...)
26689	res, err := c.doRequest("json")
26690	if res != nil && res.StatusCode == http.StatusNotModified {
26691		if res.Body != nil {
26692			res.Body.Close()
26693		}
26694		return nil, &googleapi.Error{
26695			Code:   res.StatusCode,
26696			Header: res.Header,
26697		}
26698	}
26699	if err != nil {
26700		return nil, err
26701	}
26702	defer googleapi.CloseBody(res)
26703	if err := googleapi.CheckResponse(res); err != nil {
26704		return nil, err
26705	}
26706	ret := &LiasettingsListResponse{
26707		ServerResponse: googleapi.ServerResponse{
26708			Header:         res.Header,
26709			HTTPStatusCode: res.StatusCode,
26710		},
26711	}
26712	target := &ret
26713	if err := gensupport.DecodeResponse(target, res); err != nil {
26714		return nil, err
26715	}
26716	return ret, nil
26717	// {
26718	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
26719	//   "flatPath": "{merchantId}/liasettings",
26720	//   "httpMethod": "GET",
26721	//   "id": "content.liasettings.list",
26722	//   "parameterOrder": [
26723	//     "merchantId"
26724	//   ],
26725	//   "parameters": {
26726	//     "maxResults": {
26727	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
26728	//       "format": "uint32",
26729	//       "location": "query",
26730	//       "type": "integer"
26731	//     },
26732	//     "merchantId": {
26733	//       "description": "The ID of the managing account. This must be a multi-client account.",
26734	//       "format": "uint64",
26735	//       "location": "path",
26736	//       "required": true,
26737	//       "type": "string"
26738	//     },
26739	//     "pageToken": {
26740	//       "description": "The token returned by the previous request.",
26741	//       "location": "query",
26742	//       "type": "string"
26743	//     }
26744	//   },
26745	//   "path": "{merchantId}/liasettings",
26746	//   "response": {
26747	//     "$ref": "LiasettingsListResponse"
26748	//   },
26749	//   "scopes": [
26750	//     "https://www.googleapis.com/auth/content"
26751	//   ]
26752	// }
26753
26754}
26755
26756// Pages invokes f for each page of results.
26757// A non-nil error returned from f will halt the iteration.
26758// The provided context supersedes any context provided to the Context method.
26759func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
26760	c.ctx_ = ctx
26761	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26762	for {
26763		x, err := c.Do()
26764		if err != nil {
26765			return err
26766		}
26767		if err := f(x); err != nil {
26768			return err
26769		}
26770		if x.NextPageToken == "" {
26771			return nil
26772		}
26773		c.PageToken(x.NextPageToken)
26774	}
26775}
26776
26777// method id "content.liasettings.listposdataproviders":
26778
26779type LiasettingsListposdataprovidersCall struct {
26780	s            *APIService
26781	urlParams_   gensupport.URLParams
26782	ifNoneMatch_ string
26783	ctx_         context.Context
26784	header_      http.Header
26785}
26786
26787// Listposdataproviders: Retrieves the list of POS data providers that
26788// have active settings for the all eiligible countries.
26789func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
26790	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26791	return c
26792}
26793
26794// Fields allows partial responses to be retrieved. See
26795// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26796// for more information.
26797func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
26798	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26799	return c
26800}
26801
26802// IfNoneMatch sets the optional parameter which makes the operation
26803// fail if the object's ETag matches the given value. This is useful for
26804// getting updates only after the object has changed since the last
26805// request. Use googleapi.IsNotModified to check whether the response
26806// error from Do is the result of In-None-Match.
26807func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
26808	c.ifNoneMatch_ = entityTag
26809	return c
26810}
26811
26812// Context sets the context to be used in this call's Do method. Any
26813// pending HTTP request will be aborted if the provided context is
26814// canceled.
26815func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
26816	c.ctx_ = ctx
26817	return c
26818}
26819
26820// Header returns an http.Header that can be modified by the caller to
26821// add HTTP headers to the request.
26822func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
26823	if c.header_ == nil {
26824		c.header_ = make(http.Header)
26825	}
26826	return c.header_
26827}
26828
26829func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
26830	reqHeaders := make(http.Header)
26831	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26832	for k, v := range c.header_ {
26833		reqHeaders[k] = v
26834	}
26835	reqHeaders.Set("User-Agent", c.s.userAgent())
26836	if c.ifNoneMatch_ != "" {
26837		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26838	}
26839	var body io.Reader = nil
26840	c.urlParams_.Set("alt", alt)
26841	c.urlParams_.Set("prettyPrint", "false")
26842	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/posdataproviders")
26843	urls += "?" + c.urlParams_.Encode()
26844	req, err := http.NewRequest("GET", urls, body)
26845	if err != nil {
26846		return nil, err
26847	}
26848	req.Header = reqHeaders
26849	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26850}
26851
26852// Do executes the "content.liasettings.listposdataproviders" call.
26853// Exactly one of *LiasettingsListPosDataProvidersResponse or error will
26854// be non-nil. Any non-2xx status code is an error. Response headers are
26855// in either
26856// *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
26857// a response was returned at all) in error.(*googleapi.Error).Header.
26858// Use googleapi.IsNotModified to check whether the returned error was
26859// because http.StatusNotModified was returned.
26860func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
26861	gensupport.SetOptions(c.urlParams_, opts...)
26862	res, err := c.doRequest("json")
26863	if res != nil && res.StatusCode == http.StatusNotModified {
26864		if res.Body != nil {
26865			res.Body.Close()
26866		}
26867		return nil, &googleapi.Error{
26868			Code:   res.StatusCode,
26869			Header: res.Header,
26870		}
26871	}
26872	if err != nil {
26873		return nil, err
26874	}
26875	defer googleapi.CloseBody(res)
26876	if err := googleapi.CheckResponse(res); err != nil {
26877		return nil, err
26878	}
26879	ret := &LiasettingsListPosDataProvidersResponse{
26880		ServerResponse: googleapi.ServerResponse{
26881			Header:         res.Header,
26882			HTTPStatusCode: res.StatusCode,
26883		},
26884	}
26885	target := &ret
26886	if err := gensupport.DecodeResponse(target, res); err != nil {
26887		return nil, err
26888	}
26889	return ret, nil
26890	// {
26891	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
26892	//   "flatPath": "liasettings/posdataproviders",
26893	//   "httpMethod": "GET",
26894	//   "id": "content.liasettings.listposdataproviders",
26895	//   "parameterOrder": [],
26896	//   "parameters": {},
26897	//   "path": "liasettings/posdataproviders",
26898	//   "response": {
26899	//     "$ref": "LiasettingsListPosDataProvidersResponse"
26900	//   },
26901	//   "scopes": [
26902	//     "https://www.googleapis.com/auth/content"
26903	//   ]
26904	// }
26905
26906}
26907
26908// method id "content.liasettings.requestgmbaccess":
26909
26910type LiasettingsRequestgmbaccessCall struct {
26911	s          *APIService
26912	merchantId uint64
26913	accountId  uint64
26914	urlParams_ gensupport.URLParams
26915	ctx_       context.Context
26916	header_    http.Header
26917}
26918
26919// Requestgmbaccess: Requests access to a specified Google My Business
26920// account.
26921//
26922// - accountId: The ID of the account for which GMB access is requested.
26923// - gmbEmail: The email of the Google My Business account.
26924// - merchantId: The ID of the managing account. If this parameter is
26925//   not the same as accountId, then this account must be a multi-client
26926//   account and `accountId` must be the ID of a sub-account of this
26927//   account.
26928func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
26929	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26930	c.merchantId = merchantId
26931	c.accountId = accountId
26932	c.urlParams_.Set("gmbEmail", gmbEmail)
26933	return c
26934}
26935
26936// Fields allows partial responses to be retrieved. See
26937// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26938// for more information.
26939func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
26940	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26941	return c
26942}
26943
26944// Context sets the context to be used in this call's Do method. Any
26945// pending HTTP request will be aborted if the provided context is
26946// canceled.
26947func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
26948	c.ctx_ = ctx
26949	return c
26950}
26951
26952// Header returns an http.Header that can be modified by the caller to
26953// add HTTP headers to the request.
26954func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
26955	if c.header_ == nil {
26956		c.header_ = make(http.Header)
26957	}
26958	return c.header_
26959}
26960
26961func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
26962	reqHeaders := make(http.Header)
26963	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26964	for k, v := range c.header_ {
26965		reqHeaders[k] = v
26966	}
26967	reqHeaders.Set("User-Agent", c.s.userAgent())
26968	var body io.Reader = nil
26969	c.urlParams_.Set("alt", alt)
26970	c.urlParams_.Set("prettyPrint", "false")
26971	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess")
26972	urls += "?" + c.urlParams_.Encode()
26973	req, err := http.NewRequest("POST", urls, body)
26974	if err != nil {
26975		return nil, err
26976	}
26977	req.Header = reqHeaders
26978	googleapi.Expand(req.URL, map[string]string{
26979		"merchantId": strconv.FormatUint(c.merchantId, 10),
26980		"accountId":  strconv.FormatUint(c.accountId, 10),
26981	})
26982	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26983}
26984
26985// Do executes the "content.liasettings.requestgmbaccess" call.
26986// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
26987// non-nil. Any non-2xx status code is an error. Response headers are in
26988// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
26989// (if a response was returned at all) in
26990// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26991// whether the returned error was because http.StatusNotModified was
26992// returned.
26993func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
26994	gensupport.SetOptions(c.urlParams_, opts...)
26995	res, err := c.doRequest("json")
26996	if res != nil && res.StatusCode == http.StatusNotModified {
26997		if res.Body != nil {
26998			res.Body.Close()
26999		}
27000		return nil, &googleapi.Error{
27001			Code:   res.StatusCode,
27002			Header: res.Header,
27003		}
27004	}
27005	if err != nil {
27006		return nil, err
27007	}
27008	defer googleapi.CloseBody(res)
27009	if err := googleapi.CheckResponse(res); err != nil {
27010		return nil, err
27011	}
27012	ret := &LiasettingsRequestGmbAccessResponse{
27013		ServerResponse: googleapi.ServerResponse{
27014			Header:         res.Header,
27015			HTTPStatusCode: res.StatusCode,
27016		},
27017	}
27018	target := &ret
27019	if err := gensupport.DecodeResponse(target, res); err != nil {
27020		return nil, err
27021	}
27022	return ret, nil
27023	// {
27024	//   "description": "Requests access to a specified Google My Business account.",
27025	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
27026	//   "httpMethod": "POST",
27027	//   "id": "content.liasettings.requestgmbaccess",
27028	//   "parameterOrder": [
27029	//     "merchantId",
27030	//     "accountId",
27031	//     "gmbEmail"
27032	//   ],
27033	//   "parameters": {
27034	//     "accountId": {
27035	//       "description": "The ID of the account for which GMB access is requested.",
27036	//       "format": "uint64",
27037	//       "location": "path",
27038	//       "required": true,
27039	//       "type": "string"
27040	//     },
27041	//     "gmbEmail": {
27042	//       "description": "The email of the Google My Business account.",
27043	//       "location": "query",
27044	//       "required": true,
27045	//       "type": "string"
27046	//     },
27047	//     "merchantId": {
27048	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
27049	//       "format": "uint64",
27050	//       "location": "path",
27051	//       "required": true,
27052	//       "type": "string"
27053	//     }
27054	//   },
27055	//   "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
27056	//   "response": {
27057	//     "$ref": "LiasettingsRequestGmbAccessResponse"
27058	//   },
27059	//   "scopes": [
27060	//     "https://www.googleapis.com/auth/content"
27061	//   ]
27062	// }
27063
27064}
27065
27066// method id "content.liasettings.requestinventoryverification":
27067
27068type LiasettingsRequestinventoryverificationCall struct {
27069	s          *APIService
27070	merchantId uint64
27071	accountId  uint64
27072	country    string
27073	urlParams_ gensupport.URLParams
27074	ctx_       context.Context
27075	header_    http.Header
27076}
27077
27078// Requestinventoryverification: Requests inventory validation for the
27079// specified country.
27080//
27081// - accountId: The ID of the account that manages the order. This
27082//   cannot be a multi-client account.
27083// - country: The country for which inventory validation is requested.
27084// - merchantId: The ID of the managing account. If this parameter is
27085//   not the same as accountId, then this account must be a multi-client
27086//   account and `accountId` must be the ID of a sub-account of this
27087//   account.
27088func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
27089	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27090	c.merchantId = merchantId
27091	c.accountId = accountId
27092	c.country = country
27093	return c
27094}
27095
27096// Fields allows partial responses to be retrieved. See
27097// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27098// for more information.
27099func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
27100	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27101	return c
27102}
27103
27104// Context sets the context to be used in this call's Do method. Any
27105// pending HTTP request will be aborted if the provided context is
27106// canceled.
27107func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
27108	c.ctx_ = ctx
27109	return c
27110}
27111
27112// Header returns an http.Header that can be modified by the caller to
27113// add HTTP headers to the request.
27114func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
27115	if c.header_ == nil {
27116		c.header_ = make(http.Header)
27117	}
27118	return c.header_
27119}
27120
27121func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
27122	reqHeaders := make(http.Header)
27123	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27124	for k, v := range c.header_ {
27125		reqHeaders[k] = v
27126	}
27127	reqHeaders.Set("User-Agent", c.s.userAgent())
27128	var body io.Reader = nil
27129	c.urlParams_.Set("alt", alt)
27130	c.urlParams_.Set("prettyPrint", "false")
27131	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
27132	urls += "?" + c.urlParams_.Encode()
27133	req, err := http.NewRequest("POST", urls, body)
27134	if err != nil {
27135		return nil, err
27136	}
27137	req.Header = reqHeaders
27138	googleapi.Expand(req.URL, map[string]string{
27139		"merchantId": strconv.FormatUint(c.merchantId, 10),
27140		"accountId":  strconv.FormatUint(c.accountId, 10),
27141		"country":    c.country,
27142	})
27143	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27144}
27145
27146// Do executes the "content.liasettings.requestinventoryverification" call.
27147// Exactly one of *LiasettingsRequestInventoryVerificationResponse or
27148// error will be non-nil. Any non-2xx status code is an error. Response
27149// headers are in either
27150// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
27151//  or (if a response was returned at all) in
27152// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27153// whether the returned error was because http.StatusNotModified was
27154// returned.
27155func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
27156	gensupport.SetOptions(c.urlParams_, opts...)
27157	res, err := c.doRequest("json")
27158	if res != nil && res.StatusCode == http.StatusNotModified {
27159		if res.Body != nil {
27160			res.Body.Close()
27161		}
27162		return nil, &googleapi.Error{
27163			Code:   res.StatusCode,
27164			Header: res.Header,
27165		}
27166	}
27167	if err != nil {
27168		return nil, err
27169	}
27170	defer googleapi.CloseBody(res)
27171	if err := googleapi.CheckResponse(res); err != nil {
27172		return nil, err
27173	}
27174	ret := &LiasettingsRequestInventoryVerificationResponse{
27175		ServerResponse: googleapi.ServerResponse{
27176			Header:         res.Header,
27177			HTTPStatusCode: res.StatusCode,
27178		},
27179	}
27180	target := &ret
27181	if err := gensupport.DecodeResponse(target, res); err != nil {
27182		return nil, err
27183	}
27184	return ret, nil
27185	// {
27186	//   "description": "Requests inventory validation for the specified country.",
27187	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
27188	//   "httpMethod": "POST",
27189	//   "id": "content.liasettings.requestinventoryverification",
27190	//   "parameterOrder": [
27191	//     "merchantId",
27192	//     "accountId",
27193	//     "country"
27194	//   ],
27195	//   "parameters": {
27196	//     "accountId": {
27197	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27198	//       "format": "uint64",
27199	//       "location": "path",
27200	//       "required": true,
27201	//       "type": "string"
27202	//     },
27203	//     "country": {
27204	//       "description": "The country for which inventory validation is requested.",
27205	//       "location": "path",
27206	//       "required": true,
27207	//       "type": "string"
27208	//     },
27209	//     "merchantId": {
27210	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
27211	//       "format": "uint64",
27212	//       "location": "path",
27213	//       "required": true,
27214	//       "type": "string"
27215	//     }
27216	//   },
27217	//   "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
27218	//   "response": {
27219	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
27220	//   },
27221	//   "scopes": [
27222	//     "https://www.googleapis.com/auth/content"
27223	//   ]
27224	// }
27225
27226}
27227
27228// method id "content.liasettings.setinventoryverificationcontact":
27229
27230type LiasettingsSetinventoryverificationcontactCall struct {
27231	s          *APIService
27232	merchantId uint64
27233	accountId  uint64
27234	urlParams_ gensupport.URLParams
27235	ctx_       context.Context
27236	header_    http.Header
27237}
27238
27239// Setinventoryverificationcontact: Sets the inventory verification
27240// contract for the specified country.
27241//
27242// - accountId: The ID of the account that manages the order. This
27243//   cannot be a multi-client account.
27244// - contactEmail: The email of the inventory verification contact.
27245// - contactName: The name of the inventory verification contact.
27246// - country: The country for which inventory verification is requested.
27247// - language: The language for which inventory verification is
27248//   requested.
27249// - merchantId: The ID of the managing account. If this parameter is
27250//   not the same as accountId, then this account must be a multi-client
27251//   account and `accountId` must be the ID of a sub-account of this
27252//   account.
27253func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, country string, language string, contactName string, contactEmail string) *LiasettingsSetinventoryverificationcontactCall {
27254	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27255	c.merchantId = merchantId
27256	c.accountId = accountId
27257	c.urlParams_.Set("country", country)
27258	c.urlParams_.Set("language", language)
27259	c.urlParams_.Set("contactName", contactName)
27260	c.urlParams_.Set("contactEmail", contactEmail)
27261	return c
27262}
27263
27264// Fields allows partial responses to be retrieved. See
27265// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27266// for more information.
27267func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
27268	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27269	return c
27270}
27271
27272// Context sets the context to be used in this call's Do method. Any
27273// pending HTTP request will be aborted if the provided context is
27274// canceled.
27275func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
27276	c.ctx_ = ctx
27277	return c
27278}
27279
27280// Header returns an http.Header that can be modified by the caller to
27281// add HTTP headers to the request.
27282func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
27283	if c.header_ == nil {
27284		c.header_ = make(http.Header)
27285	}
27286	return c.header_
27287}
27288
27289func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
27290	reqHeaders := make(http.Header)
27291	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27292	for k, v := range c.header_ {
27293		reqHeaders[k] = v
27294	}
27295	reqHeaders.Set("User-Agent", c.s.userAgent())
27296	var body io.Reader = nil
27297	c.urlParams_.Set("alt", alt)
27298	c.urlParams_.Set("prettyPrint", "false")
27299	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
27300	urls += "?" + c.urlParams_.Encode()
27301	req, err := http.NewRequest("POST", urls, body)
27302	if err != nil {
27303		return nil, err
27304	}
27305	req.Header = reqHeaders
27306	googleapi.Expand(req.URL, map[string]string{
27307		"merchantId": strconv.FormatUint(c.merchantId, 10),
27308		"accountId":  strconv.FormatUint(c.accountId, 10),
27309	})
27310	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27311}
27312
27313// Do executes the "content.liasettings.setinventoryverificationcontact" call.
27314// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
27315// error will be non-nil. Any non-2xx status code is an error. Response
27316// headers are in either
27317// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
27318// der or (if a response was returned at all) in
27319// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27320// whether the returned error was because http.StatusNotModified was
27321// returned.
27322func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
27323	gensupport.SetOptions(c.urlParams_, opts...)
27324	res, err := c.doRequest("json")
27325	if res != nil && res.StatusCode == http.StatusNotModified {
27326		if res.Body != nil {
27327			res.Body.Close()
27328		}
27329		return nil, &googleapi.Error{
27330			Code:   res.StatusCode,
27331			Header: res.Header,
27332		}
27333	}
27334	if err != nil {
27335		return nil, err
27336	}
27337	defer googleapi.CloseBody(res)
27338	if err := googleapi.CheckResponse(res); err != nil {
27339		return nil, err
27340	}
27341	ret := &LiasettingsSetInventoryVerificationContactResponse{
27342		ServerResponse: googleapi.ServerResponse{
27343			Header:         res.Header,
27344			HTTPStatusCode: res.StatusCode,
27345		},
27346	}
27347	target := &ret
27348	if err := gensupport.DecodeResponse(target, res); err != nil {
27349		return nil, err
27350	}
27351	return ret, nil
27352	// {
27353	//   "description": "Sets the inventory verification contract for the specified country.",
27354	//   "flatPath": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
27355	//   "httpMethod": "POST",
27356	//   "id": "content.liasettings.setinventoryverificationcontact",
27357	//   "parameterOrder": [
27358	//     "merchantId",
27359	//     "accountId",
27360	//     "country",
27361	//     "language",
27362	//     "contactName",
27363	//     "contactEmail"
27364	//   ],
27365	//   "parameters": {
27366	//     "accountId": {
27367	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27368	//       "format": "uint64",
27369	//       "location": "path",
27370	//       "required": true,
27371	//       "type": "string"
27372	//     },
27373	//     "contactEmail": {
27374	//       "description": "The email of the inventory verification contact.",
27375	//       "location": "query",
27376	//       "required": true,
27377	//       "type": "string"
27378	//     },
27379	//     "contactName": {
27380	//       "description": "The name of the inventory verification contact.",
27381	//       "location": "query",
27382	//       "required": true,
27383	//       "type": "string"
27384	//     },
27385	//     "country": {
27386	//       "description": "The country for which inventory verification is requested.",
27387	//       "location": "query",
27388	//       "required": true,
27389	//       "type": "string"
27390	//     },
27391	//     "language": {
27392	//       "description": "The language for which inventory verification is requested.",
27393	//       "location": "query",
27394	//       "required": true,
27395	//       "type": "string"
27396	//     },
27397	//     "merchantId": {
27398	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
27399	//       "format": "uint64",
27400	//       "location": "path",
27401	//       "required": true,
27402	//       "type": "string"
27403	//     }
27404	//   },
27405	//   "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
27406	//   "response": {
27407	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
27408	//   },
27409	//   "scopes": [
27410	//     "https://www.googleapis.com/auth/content"
27411	//   ]
27412	// }
27413
27414}
27415
27416// method id "content.liasettings.setposdataprovider":
27417
27418type LiasettingsSetposdataproviderCall struct {
27419	s          *APIService
27420	merchantId uint64
27421	accountId  uint64
27422	urlParams_ gensupport.URLParams
27423	ctx_       context.Context
27424	header_    http.Header
27425}
27426
27427// Setposdataprovider: Sets the POS data provider for the specified
27428// country.
27429//
27430// - accountId: The ID of the account for which to retrieve accessible
27431//   Google My Business accounts.
27432// - country: The country for which the POS data provider is selected.
27433// - merchantId: The ID of the managing account. If this parameter is
27434//   not the same as accountId, then this account must be a multi-client
27435//   account and `accountId` must be the ID of a sub-account of this
27436//   account.
27437func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
27438	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27439	c.merchantId = merchantId
27440	c.accountId = accountId
27441	c.urlParams_.Set("country", country)
27442	return c
27443}
27444
27445// PosDataProviderId sets the optional parameter "posDataProviderId":
27446// The ID of POS data provider.
27447func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
27448	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
27449	return c
27450}
27451
27452// PosExternalAccountId sets the optional parameter
27453// "posExternalAccountId": The account ID by which this merchant is
27454// known to the POS data provider.
27455func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
27456	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
27457	return c
27458}
27459
27460// Fields allows partial responses to be retrieved. See
27461// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27462// for more information.
27463func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
27464	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27465	return c
27466}
27467
27468// Context sets the context to be used in this call's Do method. Any
27469// pending HTTP request will be aborted if the provided context is
27470// canceled.
27471func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
27472	c.ctx_ = ctx
27473	return c
27474}
27475
27476// Header returns an http.Header that can be modified by the caller to
27477// add HTTP headers to the request.
27478func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
27479	if c.header_ == nil {
27480		c.header_ = make(http.Header)
27481	}
27482	return c.header_
27483}
27484
27485func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
27486	reqHeaders := make(http.Header)
27487	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27488	for k, v := range c.header_ {
27489		reqHeaders[k] = v
27490	}
27491	reqHeaders.Set("User-Agent", c.s.userAgent())
27492	var body io.Reader = nil
27493	c.urlParams_.Set("alt", alt)
27494	c.urlParams_.Set("prettyPrint", "false")
27495	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setposdataprovider")
27496	urls += "?" + c.urlParams_.Encode()
27497	req, err := http.NewRequest("POST", urls, body)
27498	if err != nil {
27499		return nil, err
27500	}
27501	req.Header = reqHeaders
27502	googleapi.Expand(req.URL, map[string]string{
27503		"merchantId": strconv.FormatUint(c.merchantId, 10),
27504		"accountId":  strconv.FormatUint(c.accountId, 10),
27505	})
27506	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27507}
27508
27509// Do executes the "content.liasettings.setposdataprovider" call.
27510// Exactly one of *LiasettingsSetPosDataProviderResponse or error will
27511// be non-nil. Any non-2xx status code is an error. Response headers are
27512// in either
27513// *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
27514// response was returned at all) in error.(*googleapi.Error).Header. Use
27515// googleapi.IsNotModified to check whether the returned error was
27516// because http.StatusNotModified was returned.
27517func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
27518	gensupport.SetOptions(c.urlParams_, opts...)
27519	res, err := c.doRequest("json")
27520	if res != nil && res.StatusCode == http.StatusNotModified {
27521		if res.Body != nil {
27522			res.Body.Close()
27523		}
27524		return nil, &googleapi.Error{
27525			Code:   res.StatusCode,
27526			Header: res.Header,
27527		}
27528	}
27529	if err != nil {
27530		return nil, err
27531	}
27532	defer googleapi.CloseBody(res)
27533	if err := googleapi.CheckResponse(res); err != nil {
27534		return nil, err
27535	}
27536	ret := &LiasettingsSetPosDataProviderResponse{
27537		ServerResponse: googleapi.ServerResponse{
27538			Header:         res.Header,
27539			HTTPStatusCode: res.StatusCode,
27540		},
27541	}
27542	target := &ret
27543	if err := gensupport.DecodeResponse(target, res); err != nil {
27544		return nil, err
27545	}
27546	return ret, nil
27547	// {
27548	//   "description": "Sets the POS data provider for the specified country.",
27549	//   "flatPath": "{merchantId}/liasettings/{accountId}/setposdataprovider",
27550	//   "httpMethod": "POST",
27551	//   "id": "content.liasettings.setposdataprovider",
27552	//   "parameterOrder": [
27553	//     "merchantId",
27554	//     "accountId",
27555	//     "country"
27556	//   ],
27557	//   "parameters": {
27558	//     "accountId": {
27559	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
27560	//       "format": "uint64",
27561	//       "location": "path",
27562	//       "required": true,
27563	//       "type": "string"
27564	//     },
27565	//     "country": {
27566	//       "description": "The country for which the POS data provider is selected.",
27567	//       "location": "query",
27568	//       "required": true,
27569	//       "type": "string"
27570	//     },
27571	//     "merchantId": {
27572	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
27573	//       "format": "uint64",
27574	//       "location": "path",
27575	//       "required": true,
27576	//       "type": "string"
27577	//     },
27578	//     "posDataProviderId": {
27579	//       "description": "The ID of POS data provider.",
27580	//       "format": "uint64",
27581	//       "location": "query",
27582	//       "type": "string"
27583	//     },
27584	//     "posExternalAccountId": {
27585	//       "description": "The account ID by which this merchant is known to the POS data provider.",
27586	//       "location": "query",
27587	//       "type": "string"
27588	//     }
27589	//   },
27590	//   "path": "{merchantId}/liasettings/{accountId}/setposdataprovider",
27591	//   "response": {
27592	//     "$ref": "LiasettingsSetPosDataProviderResponse"
27593	//   },
27594	//   "scopes": [
27595	//     "https://www.googleapis.com/auth/content"
27596	//   ]
27597	// }
27598
27599}
27600
27601// method id "content.liasettings.update":
27602
27603type LiasettingsUpdateCall struct {
27604	s           *APIService
27605	merchantId  uint64
27606	accountId   uint64
27607	liasettings *LiaSettings
27608	urlParams_  gensupport.URLParams
27609	ctx_        context.Context
27610	header_     http.Header
27611}
27612
27613// Update: Updates the LIA settings of the account. Any fields that are
27614// not provided are deleted from the resource.
27615//
27616// - accountId: The ID of the account for which to get or update LIA
27617//   settings.
27618// - merchantId: The ID of the managing account. If this parameter is
27619//   not the same as accountId, then this account must be a multi-client
27620//   account and `accountId` must be the ID of a sub-account of this
27621//   account.
27622func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
27623	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27624	c.merchantId = merchantId
27625	c.accountId = accountId
27626	c.liasettings = liasettings
27627	return c
27628}
27629
27630// Fields allows partial responses to be retrieved. See
27631// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27632// for more information.
27633func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
27634	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27635	return c
27636}
27637
27638// Context sets the context to be used in this call's Do method. Any
27639// pending HTTP request will be aborted if the provided context is
27640// canceled.
27641func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
27642	c.ctx_ = ctx
27643	return c
27644}
27645
27646// Header returns an http.Header that can be modified by the caller to
27647// add HTTP headers to the request.
27648func (c *LiasettingsUpdateCall) Header() http.Header {
27649	if c.header_ == nil {
27650		c.header_ = make(http.Header)
27651	}
27652	return c.header_
27653}
27654
27655func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
27656	reqHeaders := make(http.Header)
27657	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27658	for k, v := range c.header_ {
27659		reqHeaders[k] = v
27660	}
27661	reqHeaders.Set("User-Agent", c.s.userAgent())
27662	var body io.Reader = nil
27663	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
27664	if err != nil {
27665		return nil, err
27666	}
27667	reqHeaders.Set("Content-Type", "application/json")
27668	c.urlParams_.Set("alt", alt)
27669	c.urlParams_.Set("prettyPrint", "false")
27670	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
27671	urls += "?" + c.urlParams_.Encode()
27672	req, err := http.NewRequest("PUT", urls, body)
27673	if err != nil {
27674		return nil, err
27675	}
27676	req.Header = reqHeaders
27677	googleapi.Expand(req.URL, map[string]string{
27678		"merchantId": strconv.FormatUint(c.merchantId, 10),
27679		"accountId":  strconv.FormatUint(c.accountId, 10),
27680	})
27681	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27682}
27683
27684// Do executes the "content.liasettings.update" call.
27685// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
27686// status code is an error. Response headers are in either
27687// *LiaSettings.ServerResponse.Header or (if a response was returned at
27688// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
27689// to check whether the returned error was because
27690// http.StatusNotModified was returned.
27691func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
27692	gensupport.SetOptions(c.urlParams_, opts...)
27693	res, err := c.doRequest("json")
27694	if res != nil && res.StatusCode == http.StatusNotModified {
27695		if res.Body != nil {
27696			res.Body.Close()
27697		}
27698		return nil, &googleapi.Error{
27699			Code:   res.StatusCode,
27700			Header: res.Header,
27701		}
27702	}
27703	if err != nil {
27704		return nil, err
27705	}
27706	defer googleapi.CloseBody(res)
27707	if err := googleapi.CheckResponse(res); err != nil {
27708		return nil, err
27709	}
27710	ret := &LiaSettings{
27711		ServerResponse: googleapi.ServerResponse{
27712			Header:         res.Header,
27713			HTTPStatusCode: res.StatusCode,
27714		},
27715	}
27716	target := &ret
27717	if err := gensupport.DecodeResponse(target, res); err != nil {
27718		return nil, err
27719	}
27720	return ret, nil
27721	// {
27722	//   "description": "Updates the LIA settings of the account. Any fields that are not provided are deleted from the resource.",
27723	//   "flatPath": "{merchantId}/liasettings/{accountId}",
27724	//   "httpMethod": "PUT",
27725	//   "id": "content.liasettings.update",
27726	//   "parameterOrder": [
27727	//     "merchantId",
27728	//     "accountId"
27729	//   ],
27730	//   "parameters": {
27731	//     "accountId": {
27732	//       "description": "The ID of the account for which to get or update LIA settings.",
27733	//       "format": "uint64",
27734	//       "location": "path",
27735	//       "required": true,
27736	//       "type": "string"
27737	//     },
27738	//     "merchantId": {
27739	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
27740	//       "format": "uint64",
27741	//       "location": "path",
27742	//       "required": true,
27743	//       "type": "string"
27744	//     }
27745	//   },
27746	//   "path": "{merchantId}/liasettings/{accountId}",
27747	//   "request": {
27748	//     "$ref": "LiaSettings"
27749	//   },
27750	//   "response": {
27751	//     "$ref": "LiaSettings"
27752	//   },
27753	//   "scopes": [
27754	//     "https://www.googleapis.com/auth/content"
27755	//   ]
27756	// }
27757
27758}
27759
27760// method id "content.localinventory.custombatch":
27761
27762type LocalinventoryCustombatchCall struct {
27763	s                                *APIService
27764	localinventorycustombatchrequest *LocalinventoryCustomBatchRequest
27765	urlParams_                       gensupport.URLParams
27766	ctx_                             context.Context
27767	header_                          http.Header
27768}
27769
27770// Custombatch: Updates local inventory for multiple products or stores
27771// in a single request.
27772func (r *LocalinventoryService) Custombatch(localinventorycustombatchrequest *LocalinventoryCustomBatchRequest) *LocalinventoryCustombatchCall {
27773	c := &LocalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27774	c.localinventorycustombatchrequest = localinventorycustombatchrequest
27775	return c
27776}
27777
27778// Fields allows partial responses to be retrieved. See
27779// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27780// for more information.
27781func (c *LocalinventoryCustombatchCall) Fields(s ...googleapi.Field) *LocalinventoryCustombatchCall {
27782	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27783	return c
27784}
27785
27786// Context sets the context to be used in this call's Do method. Any
27787// pending HTTP request will be aborted if the provided context is
27788// canceled.
27789func (c *LocalinventoryCustombatchCall) Context(ctx context.Context) *LocalinventoryCustombatchCall {
27790	c.ctx_ = ctx
27791	return c
27792}
27793
27794// Header returns an http.Header that can be modified by the caller to
27795// add HTTP headers to the request.
27796func (c *LocalinventoryCustombatchCall) Header() http.Header {
27797	if c.header_ == nil {
27798		c.header_ = make(http.Header)
27799	}
27800	return c.header_
27801}
27802
27803func (c *LocalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
27804	reqHeaders := make(http.Header)
27805	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27806	for k, v := range c.header_ {
27807		reqHeaders[k] = v
27808	}
27809	reqHeaders.Set("User-Agent", c.s.userAgent())
27810	var body io.Reader = nil
27811	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventorycustombatchrequest)
27812	if err != nil {
27813		return nil, err
27814	}
27815	reqHeaders.Set("Content-Type", "application/json")
27816	c.urlParams_.Set("alt", alt)
27817	c.urlParams_.Set("prettyPrint", "false")
27818	urls := googleapi.ResolveRelative(c.s.BasePath, "localinventory/batch")
27819	urls += "?" + c.urlParams_.Encode()
27820	req, err := http.NewRequest("POST", urls, body)
27821	if err != nil {
27822		return nil, err
27823	}
27824	req.Header = reqHeaders
27825	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27826}
27827
27828// Do executes the "content.localinventory.custombatch" call.
27829// Exactly one of *LocalinventoryCustomBatchResponse or error will be
27830// non-nil. Any non-2xx status code is an error. Response headers are in
27831// either *LocalinventoryCustomBatchResponse.ServerResponse.Header or
27832// (if a response was returned at all) in
27833// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27834// whether the returned error was because http.StatusNotModified was
27835// returned.
27836func (c *LocalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*LocalinventoryCustomBatchResponse, error) {
27837	gensupport.SetOptions(c.urlParams_, opts...)
27838	res, err := c.doRequest("json")
27839	if res != nil && res.StatusCode == http.StatusNotModified {
27840		if res.Body != nil {
27841			res.Body.Close()
27842		}
27843		return nil, &googleapi.Error{
27844			Code:   res.StatusCode,
27845			Header: res.Header,
27846		}
27847	}
27848	if err != nil {
27849		return nil, err
27850	}
27851	defer googleapi.CloseBody(res)
27852	if err := googleapi.CheckResponse(res); err != nil {
27853		return nil, err
27854	}
27855	ret := &LocalinventoryCustomBatchResponse{
27856		ServerResponse: googleapi.ServerResponse{
27857			Header:         res.Header,
27858			HTTPStatusCode: res.StatusCode,
27859		},
27860	}
27861	target := &ret
27862	if err := gensupport.DecodeResponse(target, res); err != nil {
27863		return nil, err
27864	}
27865	return ret, nil
27866	// {
27867	//   "description": "Updates local inventory for multiple products or stores in a single request.",
27868	//   "flatPath": "localinventory/batch",
27869	//   "httpMethod": "POST",
27870	//   "id": "content.localinventory.custombatch",
27871	//   "parameterOrder": [],
27872	//   "parameters": {},
27873	//   "path": "localinventory/batch",
27874	//   "request": {
27875	//     "$ref": "LocalinventoryCustomBatchRequest"
27876	//   },
27877	//   "response": {
27878	//     "$ref": "LocalinventoryCustomBatchResponse"
27879	//   },
27880	//   "scopes": [
27881	//     "https://www.googleapis.com/auth/content"
27882	//   ]
27883	// }
27884
27885}
27886
27887// method id "content.localinventory.insert":
27888
27889type LocalinventoryInsertCall struct {
27890	s              *APIService
27891	merchantId     uint64
27892	productId      string
27893	localinventory *LocalInventory
27894	urlParams_     gensupport.URLParams
27895	ctx_           context.Context
27896	header_        http.Header
27897}
27898
27899// Insert: Updates the local inventory of a product in your Merchant
27900// Center account.
27901//
27902// - merchantId: The ID of the account that contains the product. This
27903//   account cannot be a multi-client account.
27904// - productId: The REST ID of the product for which to update local
27905//   inventory.
27906func (r *LocalinventoryService) Insert(merchantId uint64, productId string, localinventory *LocalInventory) *LocalinventoryInsertCall {
27907	c := &LocalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27908	c.merchantId = merchantId
27909	c.productId = productId
27910	c.localinventory = localinventory
27911	return c
27912}
27913
27914// Fields allows partial responses to be retrieved. See
27915// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27916// for more information.
27917func (c *LocalinventoryInsertCall) Fields(s ...googleapi.Field) *LocalinventoryInsertCall {
27918	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27919	return c
27920}
27921
27922// Context sets the context to be used in this call's Do method. Any
27923// pending HTTP request will be aborted if the provided context is
27924// canceled.
27925func (c *LocalinventoryInsertCall) Context(ctx context.Context) *LocalinventoryInsertCall {
27926	c.ctx_ = ctx
27927	return c
27928}
27929
27930// Header returns an http.Header that can be modified by the caller to
27931// add HTTP headers to the request.
27932func (c *LocalinventoryInsertCall) Header() http.Header {
27933	if c.header_ == nil {
27934		c.header_ = make(http.Header)
27935	}
27936	return c.header_
27937}
27938
27939func (c *LocalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
27940	reqHeaders := make(http.Header)
27941	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27942	for k, v := range c.header_ {
27943		reqHeaders[k] = v
27944	}
27945	reqHeaders.Set("User-Agent", c.s.userAgent())
27946	var body io.Reader = nil
27947	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventory)
27948	if err != nil {
27949		return nil, err
27950	}
27951	reqHeaders.Set("Content-Type", "application/json")
27952	c.urlParams_.Set("alt", alt)
27953	c.urlParams_.Set("prettyPrint", "false")
27954	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/localinventory")
27955	urls += "?" + c.urlParams_.Encode()
27956	req, err := http.NewRequest("POST", urls, body)
27957	if err != nil {
27958		return nil, err
27959	}
27960	req.Header = reqHeaders
27961	googleapi.Expand(req.URL, map[string]string{
27962		"merchantId": strconv.FormatUint(c.merchantId, 10),
27963		"productId":  c.productId,
27964	})
27965	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27966}
27967
27968// Do executes the "content.localinventory.insert" call.
27969// Exactly one of *LocalInventory or error will be non-nil. Any non-2xx
27970// status code is an error. Response headers are in either
27971// *LocalInventory.ServerResponse.Header or (if a response was returned
27972// at all) in error.(*googleapi.Error).Header. Use
27973// googleapi.IsNotModified to check whether the returned error was
27974// because http.StatusNotModified was returned.
27975func (c *LocalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*LocalInventory, error) {
27976	gensupport.SetOptions(c.urlParams_, opts...)
27977	res, err := c.doRequest("json")
27978	if res != nil && res.StatusCode == http.StatusNotModified {
27979		if res.Body != nil {
27980			res.Body.Close()
27981		}
27982		return nil, &googleapi.Error{
27983			Code:   res.StatusCode,
27984			Header: res.Header,
27985		}
27986	}
27987	if err != nil {
27988		return nil, err
27989	}
27990	defer googleapi.CloseBody(res)
27991	if err := googleapi.CheckResponse(res); err != nil {
27992		return nil, err
27993	}
27994	ret := &LocalInventory{
27995		ServerResponse: googleapi.ServerResponse{
27996			Header:         res.Header,
27997			HTTPStatusCode: res.StatusCode,
27998		},
27999	}
28000	target := &ret
28001	if err := gensupport.DecodeResponse(target, res); err != nil {
28002		return nil, err
28003	}
28004	return ret, nil
28005	// {
28006	//   "description": "Updates the local inventory of a product in your Merchant Center account.",
28007	//   "flatPath": "{merchantId}/products/{productId}/localinventory",
28008	//   "httpMethod": "POST",
28009	//   "id": "content.localinventory.insert",
28010	//   "parameterOrder": [
28011	//     "merchantId",
28012	//     "productId"
28013	//   ],
28014	//   "parameters": {
28015	//     "merchantId": {
28016	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
28017	//       "format": "uint64",
28018	//       "location": "path",
28019	//       "required": true,
28020	//       "type": "string"
28021	//     },
28022	//     "productId": {
28023	//       "description": "The REST ID of the product for which to update local inventory.",
28024	//       "location": "path",
28025	//       "required": true,
28026	//       "type": "string"
28027	//     }
28028	//   },
28029	//   "path": "{merchantId}/products/{productId}/localinventory",
28030	//   "request": {
28031	//     "$ref": "LocalInventory"
28032	//   },
28033	//   "response": {
28034	//     "$ref": "LocalInventory"
28035	//   },
28036	//   "scopes": [
28037	//     "https://www.googleapis.com/auth/content"
28038	//   ]
28039	// }
28040
28041}
28042
28043// method id "content.orderinvoices.createchargeinvoice":
28044
28045type OrderinvoicesCreatechargeinvoiceCall struct {
28046	s                                       *APIService
28047	merchantId                              uint64
28048	orderId                                 string
28049	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
28050	urlParams_                              gensupport.URLParams
28051	ctx_                                    context.Context
28052	header_                                 http.Header
28053}
28054
28055// Createchargeinvoice: Creates a charge invoice for a shipment group,
28056// and triggers a charge capture for orderinvoice enabled orders.
28057//
28058// - merchantId: The ID of the account that manages the order. This
28059//   cannot be a multi-client account.
28060// - orderId: The ID of the order.
28061func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
28062	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28063	c.merchantId = merchantId
28064	c.orderId = orderId
28065	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
28066	return c
28067}
28068
28069// Fields allows partial responses to be retrieved. See
28070// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28071// for more information.
28072func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
28073	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28074	return c
28075}
28076
28077// Context sets the context to be used in this call's Do method. Any
28078// pending HTTP request will be aborted if the provided context is
28079// canceled.
28080func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
28081	c.ctx_ = ctx
28082	return c
28083}
28084
28085// Header returns an http.Header that can be modified by the caller to
28086// add HTTP headers to the request.
28087func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
28088	if c.header_ == nil {
28089		c.header_ = make(http.Header)
28090	}
28091	return c.header_
28092}
28093
28094func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
28095	reqHeaders := make(http.Header)
28096	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28097	for k, v := range c.header_ {
28098		reqHeaders[k] = v
28099	}
28100	reqHeaders.Set("User-Agent", c.s.userAgent())
28101	var body io.Reader = nil
28102	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
28103	if err != nil {
28104		return nil, err
28105	}
28106	reqHeaders.Set("Content-Type", "application/json")
28107	c.urlParams_.Set("alt", alt)
28108	c.urlParams_.Set("prettyPrint", "false")
28109	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
28110	urls += "?" + c.urlParams_.Encode()
28111	req, err := http.NewRequest("POST", urls, body)
28112	if err != nil {
28113		return nil, err
28114	}
28115	req.Header = reqHeaders
28116	googleapi.Expand(req.URL, map[string]string{
28117		"merchantId": strconv.FormatUint(c.merchantId, 10),
28118		"orderId":    c.orderId,
28119	})
28120	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28121}
28122
28123// Do executes the "content.orderinvoices.createchargeinvoice" call.
28124// Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
28125// will be non-nil. Any non-2xx status code is an error. Response
28126// headers are in either
28127// *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
28128// (if a response was returned at all) in
28129// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28130// whether the returned error was because http.StatusNotModified was
28131// returned.
28132func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
28133	gensupport.SetOptions(c.urlParams_, opts...)
28134	res, err := c.doRequest("json")
28135	if res != nil && res.StatusCode == http.StatusNotModified {
28136		if res.Body != nil {
28137			res.Body.Close()
28138		}
28139		return nil, &googleapi.Error{
28140			Code:   res.StatusCode,
28141			Header: res.Header,
28142		}
28143	}
28144	if err != nil {
28145		return nil, err
28146	}
28147	defer googleapi.CloseBody(res)
28148	if err := googleapi.CheckResponse(res); err != nil {
28149		return nil, err
28150	}
28151	ret := &OrderinvoicesCreateChargeInvoiceResponse{
28152		ServerResponse: googleapi.ServerResponse{
28153			Header:         res.Header,
28154			HTTPStatusCode: res.StatusCode,
28155		},
28156	}
28157	target := &ret
28158	if err := gensupport.DecodeResponse(target, res); err != nil {
28159		return nil, err
28160	}
28161	return ret, nil
28162	// {
28163	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
28164	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
28165	//   "httpMethod": "POST",
28166	//   "id": "content.orderinvoices.createchargeinvoice",
28167	//   "parameterOrder": [
28168	//     "merchantId",
28169	//     "orderId"
28170	//   ],
28171	//   "parameters": {
28172	//     "merchantId": {
28173	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28174	//       "format": "uint64",
28175	//       "location": "path",
28176	//       "required": true,
28177	//       "type": "string"
28178	//     },
28179	//     "orderId": {
28180	//       "description": "The ID of the order.",
28181	//       "location": "path",
28182	//       "required": true,
28183	//       "type": "string"
28184	//     }
28185	//   },
28186	//   "path": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
28187	//   "request": {
28188	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
28189	//   },
28190	//   "response": {
28191	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
28192	//   },
28193	//   "scopes": [
28194	//     "https://www.googleapis.com/auth/content"
28195	//   ]
28196	// }
28197
28198}
28199
28200// method id "content.orderinvoices.createrefundinvoice":
28201
28202type OrderinvoicesCreaterefundinvoiceCall struct {
28203	s                                       *APIService
28204	merchantId                              uint64
28205	orderId                                 string
28206	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
28207	urlParams_                              gensupport.URLParams
28208	ctx_                                    context.Context
28209	header_                                 http.Header
28210}
28211
28212// Createrefundinvoice: Creates a refund invoice for one or more
28213// shipment groups, and triggers a refund for orderinvoice enabled
28214// orders. This can only be used for line items that have previously
28215// been charged using `createChargeInvoice`. All amounts (except for the
28216// summary) are incremental with respect to the previous invoice.
28217//
28218// - merchantId: The ID of the account that manages the order. This
28219//   cannot be a multi-client account.
28220// - orderId: The ID of the order.
28221func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
28222	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28223	c.merchantId = merchantId
28224	c.orderId = orderId
28225	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
28226	return c
28227}
28228
28229// Fields allows partial responses to be retrieved. See
28230// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28231// for more information.
28232func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
28233	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28234	return c
28235}
28236
28237// Context sets the context to be used in this call's Do method. Any
28238// pending HTTP request will be aborted if the provided context is
28239// canceled.
28240func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
28241	c.ctx_ = ctx
28242	return c
28243}
28244
28245// Header returns an http.Header that can be modified by the caller to
28246// add HTTP headers to the request.
28247func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
28248	if c.header_ == nil {
28249		c.header_ = make(http.Header)
28250	}
28251	return c.header_
28252}
28253
28254func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
28255	reqHeaders := make(http.Header)
28256	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28257	for k, v := range c.header_ {
28258		reqHeaders[k] = v
28259	}
28260	reqHeaders.Set("User-Agent", c.s.userAgent())
28261	var body io.Reader = nil
28262	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
28263	if err != nil {
28264		return nil, err
28265	}
28266	reqHeaders.Set("Content-Type", "application/json")
28267	c.urlParams_.Set("alt", alt)
28268	c.urlParams_.Set("prettyPrint", "false")
28269	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
28270	urls += "?" + c.urlParams_.Encode()
28271	req, err := http.NewRequest("POST", urls, body)
28272	if err != nil {
28273		return nil, err
28274	}
28275	req.Header = reqHeaders
28276	googleapi.Expand(req.URL, map[string]string{
28277		"merchantId": strconv.FormatUint(c.merchantId, 10),
28278		"orderId":    c.orderId,
28279	})
28280	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28281}
28282
28283// Do executes the "content.orderinvoices.createrefundinvoice" call.
28284// Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
28285// will be non-nil. Any non-2xx status code is an error. Response
28286// headers are in either
28287// *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
28288// (if a response was returned at all) in
28289// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28290// whether the returned error was because http.StatusNotModified was
28291// returned.
28292func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
28293	gensupport.SetOptions(c.urlParams_, opts...)
28294	res, err := c.doRequest("json")
28295	if res != nil && res.StatusCode == http.StatusNotModified {
28296		if res.Body != nil {
28297			res.Body.Close()
28298		}
28299		return nil, &googleapi.Error{
28300			Code:   res.StatusCode,
28301			Header: res.Header,
28302		}
28303	}
28304	if err != nil {
28305		return nil, err
28306	}
28307	defer googleapi.CloseBody(res)
28308	if err := googleapi.CheckResponse(res); err != nil {
28309		return nil, err
28310	}
28311	ret := &OrderinvoicesCreateRefundInvoiceResponse{
28312		ServerResponse: googleapi.ServerResponse{
28313			Header:         res.Header,
28314			HTTPStatusCode: res.StatusCode,
28315		},
28316	}
28317	target := &ret
28318	if err := gensupport.DecodeResponse(target, res); err != nil {
28319		return nil, err
28320	}
28321	return ret, nil
28322	// {
28323	//   "description": "Creates a refund invoice for one or more shipment groups, and triggers a refund for orderinvoice enabled orders. This can only be used for line items that have previously been charged using `createChargeInvoice`. All amounts (except for the summary) are incremental with respect to the previous invoice.",
28324	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
28325	//   "httpMethod": "POST",
28326	//   "id": "content.orderinvoices.createrefundinvoice",
28327	//   "parameterOrder": [
28328	//     "merchantId",
28329	//     "orderId"
28330	//   ],
28331	//   "parameters": {
28332	//     "merchantId": {
28333	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28334	//       "format": "uint64",
28335	//       "location": "path",
28336	//       "required": true,
28337	//       "type": "string"
28338	//     },
28339	//     "orderId": {
28340	//       "description": "The ID of the order.",
28341	//       "location": "path",
28342	//       "required": true,
28343	//       "type": "string"
28344	//     }
28345	//   },
28346	//   "path": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
28347	//   "request": {
28348	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
28349	//   },
28350	//   "response": {
28351	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
28352	//   },
28353	//   "scopes": [
28354	//     "https://www.googleapis.com/auth/content"
28355	//   ]
28356	// }
28357
28358}
28359
28360// method id "content.orderreports.listdisbursements":
28361
28362type OrderreportsListdisbursementsCall struct {
28363	s            *APIService
28364	merchantId   uint64
28365	urlParams_   gensupport.URLParams
28366	ifNoneMatch_ string
28367	ctx_         context.Context
28368	header_      http.Header
28369}
28370
28371// Listdisbursements: Retrieves a report for disbursements from your
28372// Merchant Center account.
28373//
28374// - merchantId: The ID of the account that manages the order. This
28375//   cannot be a multi-client account.
28376func (r *OrderreportsService) Listdisbursements(merchantId uint64) *OrderreportsListdisbursementsCall {
28377	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28378	c.merchantId = merchantId
28379	return c
28380}
28381
28382// DisbursementEndDate sets the optional parameter
28383// "disbursementEndDate": The last date which disbursements occurred. In
28384// ISO 8601 format. Default: current date.
28385func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
28386	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
28387	return c
28388}
28389
28390// DisbursementStartDate sets the optional parameter
28391// "disbursementStartDate": The first date which disbursements occurred.
28392// In ISO 8601 format.
28393func (c *OrderreportsListdisbursementsCall) DisbursementStartDate(disbursementStartDate string) *OrderreportsListdisbursementsCall {
28394	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
28395	return c
28396}
28397
28398// MaxResults sets the optional parameter "maxResults": The maximum
28399// number of disbursements to return in the response, used for paging.
28400func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
28401	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28402	return c
28403}
28404
28405// PageToken sets the optional parameter "pageToken": The token returned
28406// by the previous request.
28407func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
28408	c.urlParams_.Set("pageToken", pageToken)
28409	return c
28410}
28411
28412// Fields allows partial responses to be retrieved. See
28413// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28414// for more information.
28415func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
28416	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28417	return c
28418}
28419
28420// IfNoneMatch sets the optional parameter which makes the operation
28421// fail if the object's ETag matches the given value. This is useful for
28422// getting updates only after the object has changed since the last
28423// request. Use googleapi.IsNotModified to check whether the response
28424// error from Do is the result of In-None-Match.
28425func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
28426	c.ifNoneMatch_ = entityTag
28427	return c
28428}
28429
28430// Context sets the context to be used in this call's Do method. Any
28431// pending HTTP request will be aborted if the provided context is
28432// canceled.
28433func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
28434	c.ctx_ = ctx
28435	return c
28436}
28437
28438// Header returns an http.Header that can be modified by the caller to
28439// add HTTP headers to the request.
28440func (c *OrderreportsListdisbursementsCall) Header() http.Header {
28441	if c.header_ == nil {
28442		c.header_ = make(http.Header)
28443	}
28444	return c.header_
28445}
28446
28447func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
28448	reqHeaders := make(http.Header)
28449	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28450	for k, v := range c.header_ {
28451		reqHeaders[k] = v
28452	}
28453	reqHeaders.Set("User-Agent", c.s.userAgent())
28454	if c.ifNoneMatch_ != "" {
28455		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28456	}
28457	var body io.Reader = nil
28458	c.urlParams_.Set("alt", alt)
28459	c.urlParams_.Set("prettyPrint", "false")
28460	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements")
28461	urls += "?" + c.urlParams_.Encode()
28462	req, err := http.NewRequest("GET", urls, body)
28463	if err != nil {
28464		return nil, err
28465	}
28466	req.Header = reqHeaders
28467	googleapi.Expand(req.URL, map[string]string{
28468		"merchantId": strconv.FormatUint(c.merchantId, 10),
28469	})
28470	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28471}
28472
28473// Do executes the "content.orderreports.listdisbursements" call.
28474// Exactly one of *OrderreportsListDisbursementsResponse or error will
28475// be non-nil. Any non-2xx status code is an error. Response headers are
28476// in either
28477// *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
28478// response was returned at all) in error.(*googleapi.Error).Header. Use
28479// googleapi.IsNotModified to check whether the returned error was
28480// because http.StatusNotModified was returned.
28481func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
28482	gensupport.SetOptions(c.urlParams_, opts...)
28483	res, err := c.doRequest("json")
28484	if res != nil && res.StatusCode == http.StatusNotModified {
28485		if res.Body != nil {
28486			res.Body.Close()
28487		}
28488		return nil, &googleapi.Error{
28489			Code:   res.StatusCode,
28490			Header: res.Header,
28491		}
28492	}
28493	if err != nil {
28494		return nil, err
28495	}
28496	defer googleapi.CloseBody(res)
28497	if err := googleapi.CheckResponse(res); err != nil {
28498		return nil, err
28499	}
28500	ret := &OrderreportsListDisbursementsResponse{
28501		ServerResponse: googleapi.ServerResponse{
28502			Header:         res.Header,
28503			HTTPStatusCode: res.StatusCode,
28504		},
28505	}
28506	target := &ret
28507	if err := gensupport.DecodeResponse(target, res); err != nil {
28508		return nil, err
28509	}
28510	return ret, nil
28511	// {
28512	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
28513	//   "flatPath": "{merchantId}/orderreports/disbursements",
28514	//   "httpMethod": "GET",
28515	//   "id": "content.orderreports.listdisbursements",
28516	//   "parameterOrder": [
28517	//     "merchantId"
28518	//   ],
28519	//   "parameters": {
28520	//     "disbursementEndDate": {
28521	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
28522	//       "location": "query",
28523	//       "type": "string"
28524	//     },
28525	//     "disbursementStartDate": {
28526	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
28527	//       "location": "query",
28528	//       "type": "string"
28529	//     },
28530	//     "maxResults": {
28531	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
28532	//       "format": "uint32",
28533	//       "location": "query",
28534	//       "type": "integer"
28535	//     },
28536	//     "merchantId": {
28537	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28538	//       "format": "uint64",
28539	//       "location": "path",
28540	//       "required": true,
28541	//       "type": "string"
28542	//     },
28543	//     "pageToken": {
28544	//       "description": "The token returned by the previous request.",
28545	//       "location": "query",
28546	//       "type": "string"
28547	//     }
28548	//   },
28549	//   "path": "{merchantId}/orderreports/disbursements",
28550	//   "response": {
28551	//     "$ref": "OrderreportsListDisbursementsResponse"
28552	//   },
28553	//   "scopes": [
28554	//     "https://www.googleapis.com/auth/content"
28555	//   ]
28556	// }
28557
28558}
28559
28560// Pages invokes f for each page of results.
28561// A non-nil error returned from f will halt the iteration.
28562// The provided context supersedes any context provided to the Context method.
28563func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
28564	c.ctx_ = ctx
28565	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
28566	for {
28567		x, err := c.Do()
28568		if err != nil {
28569			return err
28570		}
28571		if err := f(x); err != nil {
28572			return err
28573		}
28574		if x.NextPageToken == "" {
28575			return nil
28576		}
28577		c.PageToken(x.NextPageToken)
28578	}
28579}
28580
28581// method id "content.orderreports.listtransactions":
28582
28583type OrderreportsListtransactionsCall struct {
28584	s              *APIService
28585	merchantId     uint64
28586	disbursementId string
28587	urlParams_     gensupport.URLParams
28588	ifNoneMatch_   string
28589	ctx_           context.Context
28590	header_        http.Header
28591}
28592
28593// Listtransactions: Retrieves a list of transactions for a disbursement
28594// from your Merchant Center account.
28595//
28596// - disbursementId: The Google-provided ID of the disbursement (found
28597//   in Wallet).
28598// - merchantId: The ID of the account that manages the order. This
28599//   cannot be a multi-client account.
28600func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string) *OrderreportsListtransactionsCall {
28601	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28602	c.merchantId = merchantId
28603	c.disbursementId = disbursementId
28604	return c
28605}
28606
28607// MaxResults sets the optional parameter "maxResults": The maximum
28608// number of disbursements to return in the response, used for paging.
28609func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
28610	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28611	return c
28612}
28613
28614// PageToken sets the optional parameter "pageToken": The token returned
28615// by the previous request.
28616func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
28617	c.urlParams_.Set("pageToken", pageToken)
28618	return c
28619}
28620
28621// TransactionEndDate sets the optional parameter "transactionEndDate":
28622// The last date in which transaction occurred. In ISO 8601 format.
28623// Default: current date.
28624func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
28625	c.urlParams_.Set("transactionEndDate", transactionEndDate)
28626	return c
28627}
28628
28629// TransactionStartDate sets the optional parameter
28630// "transactionStartDate": The first date in which transaction occurred.
28631// In ISO 8601 format.
28632func (c *OrderreportsListtransactionsCall) TransactionStartDate(transactionStartDate string) *OrderreportsListtransactionsCall {
28633	c.urlParams_.Set("transactionStartDate", transactionStartDate)
28634	return c
28635}
28636
28637// Fields allows partial responses to be retrieved. See
28638// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28639// for more information.
28640func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
28641	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28642	return c
28643}
28644
28645// IfNoneMatch sets the optional parameter which makes the operation
28646// fail if the object's ETag matches the given value. This is useful for
28647// getting updates only after the object has changed since the last
28648// request. Use googleapi.IsNotModified to check whether the response
28649// error from Do is the result of In-None-Match.
28650func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
28651	c.ifNoneMatch_ = entityTag
28652	return c
28653}
28654
28655// Context sets the context to be used in this call's Do method. Any
28656// pending HTTP request will be aborted if the provided context is
28657// canceled.
28658func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
28659	c.ctx_ = ctx
28660	return c
28661}
28662
28663// Header returns an http.Header that can be modified by the caller to
28664// add HTTP headers to the request.
28665func (c *OrderreportsListtransactionsCall) Header() http.Header {
28666	if c.header_ == nil {
28667		c.header_ = make(http.Header)
28668	}
28669	return c.header_
28670}
28671
28672func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
28673	reqHeaders := make(http.Header)
28674	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28675	for k, v := range c.header_ {
28676		reqHeaders[k] = v
28677	}
28678	reqHeaders.Set("User-Agent", c.s.userAgent())
28679	if c.ifNoneMatch_ != "" {
28680		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28681	}
28682	var body io.Reader = nil
28683	c.urlParams_.Set("alt", alt)
28684	c.urlParams_.Set("prettyPrint", "false")
28685	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
28686	urls += "?" + c.urlParams_.Encode()
28687	req, err := http.NewRequest("GET", urls, body)
28688	if err != nil {
28689		return nil, err
28690	}
28691	req.Header = reqHeaders
28692	googleapi.Expand(req.URL, map[string]string{
28693		"merchantId":     strconv.FormatUint(c.merchantId, 10),
28694		"disbursementId": c.disbursementId,
28695	})
28696	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28697}
28698
28699// Do executes the "content.orderreports.listtransactions" call.
28700// Exactly one of *OrderreportsListTransactionsResponse or error will be
28701// non-nil. Any non-2xx status code is an error. Response headers are in
28702// either *OrderreportsListTransactionsResponse.ServerResponse.Header or
28703// (if a response was returned at all) in
28704// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28705// whether the returned error was because http.StatusNotModified was
28706// returned.
28707func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
28708	gensupport.SetOptions(c.urlParams_, opts...)
28709	res, err := c.doRequest("json")
28710	if res != nil && res.StatusCode == http.StatusNotModified {
28711		if res.Body != nil {
28712			res.Body.Close()
28713		}
28714		return nil, &googleapi.Error{
28715			Code:   res.StatusCode,
28716			Header: res.Header,
28717		}
28718	}
28719	if err != nil {
28720		return nil, err
28721	}
28722	defer googleapi.CloseBody(res)
28723	if err := googleapi.CheckResponse(res); err != nil {
28724		return nil, err
28725	}
28726	ret := &OrderreportsListTransactionsResponse{
28727		ServerResponse: googleapi.ServerResponse{
28728			Header:         res.Header,
28729			HTTPStatusCode: res.StatusCode,
28730		},
28731	}
28732	target := &ret
28733	if err := gensupport.DecodeResponse(target, res); err != nil {
28734		return nil, err
28735	}
28736	return ret, nil
28737	// {
28738	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
28739	//   "flatPath": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
28740	//   "httpMethod": "GET",
28741	//   "id": "content.orderreports.listtransactions",
28742	//   "parameterOrder": [
28743	//     "merchantId",
28744	//     "disbursementId"
28745	//   ],
28746	//   "parameters": {
28747	//     "disbursementId": {
28748	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
28749	//       "location": "path",
28750	//       "required": true,
28751	//       "type": "string"
28752	//     },
28753	//     "maxResults": {
28754	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
28755	//       "format": "uint32",
28756	//       "location": "query",
28757	//       "type": "integer"
28758	//     },
28759	//     "merchantId": {
28760	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28761	//       "format": "uint64",
28762	//       "location": "path",
28763	//       "required": true,
28764	//       "type": "string"
28765	//     },
28766	//     "pageToken": {
28767	//       "description": "The token returned by the previous request.",
28768	//       "location": "query",
28769	//       "type": "string"
28770	//     },
28771	//     "transactionEndDate": {
28772	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
28773	//       "location": "query",
28774	//       "type": "string"
28775	//     },
28776	//     "transactionStartDate": {
28777	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
28778	//       "location": "query",
28779	//       "type": "string"
28780	//     }
28781	//   },
28782	//   "path": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
28783	//   "response": {
28784	//     "$ref": "OrderreportsListTransactionsResponse"
28785	//   },
28786	//   "scopes": [
28787	//     "https://www.googleapis.com/auth/content"
28788	//   ]
28789	// }
28790
28791}
28792
28793// Pages invokes f for each page of results.
28794// A non-nil error returned from f will halt the iteration.
28795// The provided context supersedes any context provided to the Context method.
28796func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
28797	c.ctx_ = ctx
28798	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
28799	for {
28800		x, err := c.Do()
28801		if err != nil {
28802			return err
28803		}
28804		if err := f(x); err != nil {
28805			return err
28806		}
28807		if x.NextPageToken == "" {
28808			return nil
28809		}
28810		c.PageToken(x.NextPageToken)
28811	}
28812}
28813
28814// method id "content.orderreturns.acknowledge":
28815
28816type OrderreturnsAcknowledgeCall struct {
28817	s                              *APIService
28818	merchantId                     uint64
28819	returnId                       string
28820	orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest
28821	urlParams_                     gensupport.URLParams
28822	ctx_                           context.Context
28823	header_                        http.Header
28824}
28825
28826// Acknowledge: Acks an order return in your Merchant Center account.
28827//
28828// - merchantId: The ID of the account that manages the order. This
28829//   cannot be a multi-client account.
28830// - returnId: The ID of the return.
28831func (r *OrderreturnsService) Acknowledge(merchantId uint64, returnId string, orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest) *OrderreturnsAcknowledgeCall {
28832	c := &OrderreturnsAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28833	c.merchantId = merchantId
28834	c.returnId = returnId
28835	c.orderreturnsacknowledgerequest = orderreturnsacknowledgerequest
28836	return c
28837}
28838
28839// Fields allows partial responses to be retrieved. See
28840// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28841// for more information.
28842func (c *OrderreturnsAcknowledgeCall) Fields(s ...googleapi.Field) *OrderreturnsAcknowledgeCall {
28843	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28844	return c
28845}
28846
28847// Context sets the context to be used in this call's Do method. Any
28848// pending HTTP request will be aborted if the provided context is
28849// canceled.
28850func (c *OrderreturnsAcknowledgeCall) Context(ctx context.Context) *OrderreturnsAcknowledgeCall {
28851	c.ctx_ = ctx
28852	return c
28853}
28854
28855// Header returns an http.Header that can be modified by the caller to
28856// add HTTP headers to the request.
28857func (c *OrderreturnsAcknowledgeCall) Header() http.Header {
28858	if c.header_ == nil {
28859		c.header_ = make(http.Header)
28860	}
28861	return c.header_
28862}
28863
28864func (c *OrderreturnsAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
28865	reqHeaders := make(http.Header)
28866	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28867	for k, v := range c.header_ {
28868		reqHeaders[k] = v
28869	}
28870	reqHeaders.Set("User-Agent", c.s.userAgent())
28871	var body io.Reader = nil
28872	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsacknowledgerequest)
28873	if err != nil {
28874		return nil, err
28875	}
28876	reqHeaders.Set("Content-Type", "application/json")
28877	c.urlParams_.Set("alt", alt)
28878	c.urlParams_.Set("prettyPrint", "false")
28879	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/acknowledge")
28880	urls += "?" + c.urlParams_.Encode()
28881	req, err := http.NewRequest("POST", urls, body)
28882	if err != nil {
28883		return nil, err
28884	}
28885	req.Header = reqHeaders
28886	googleapi.Expand(req.URL, map[string]string{
28887		"merchantId": strconv.FormatUint(c.merchantId, 10),
28888		"returnId":   c.returnId,
28889	})
28890	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28891}
28892
28893// Do executes the "content.orderreturns.acknowledge" call.
28894// Exactly one of *OrderreturnsAcknowledgeResponse or error will be
28895// non-nil. Any non-2xx status code is an error. Response headers are in
28896// either *OrderreturnsAcknowledgeResponse.ServerResponse.Header or (if
28897// a response was returned at all) in error.(*googleapi.Error).Header.
28898// Use googleapi.IsNotModified to check whether the returned error was
28899// because http.StatusNotModified was returned.
28900func (c *OrderreturnsAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrderreturnsAcknowledgeResponse, error) {
28901	gensupport.SetOptions(c.urlParams_, opts...)
28902	res, err := c.doRequest("json")
28903	if res != nil && res.StatusCode == http.StatusNotModified {
28904		if res.Body != nil {
28905			res.Body.Close()
28906		}
28907		return nil, &googleapi.Error{
28908			Code:   res.StatusCode,
28909			Header: res.Header,
28910		}
28911	}
28912	if err != nil {
28913		return nil, err
28914	}
28915	defer googleapi.CloseBody(res)
28916	if err := googleapi.CheckResponse(res); err != nil {
28917		return nil, err
28918	}
28919	ret := &OrderreturnsAcknowledgeResponse{
28920		ServerResponse: googleapi.ServerResponse{
28921			Header:         res.Header,
28922			HTTPStatusCode: res.StatusCode,
28923		},
28924	}
28925	target := &ret
28926	if err := gensupport.DecodeResponse(target, res); err != nil {
28927		return nil, err
28928	}
28929	return ret, nil
28930	// {
28931	//   "description": "Acks an order return in your Merchant Center account.",
28932	//   "flatPath": "{merchantId}/orderreturns/{returnId}/acknowledge",
28933	//   "httpMethod": "POST",
28934	//   "id": "content.orderreturns.acknowledge",
28935	//   "parameterOrder": [
28936	//     "merchantId",
28937	//     "returnId"
28938	//   ],
28939	//   "parameters": {
28940	//     "merchantId": {
28941	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28942	//       "format": "uint64",
28943	//       "location": "path",
28944	//       "required": true,
28945	//       "type": "string"
28946	//     },
28947	//     "returnId": {
28948	//       "description": "The ID of the return.",
28949	//       "location": "path",
28950	//       "required": true,
28951	//       "type": "string"
28952	//     }
28953	//   },
28954	//   "path": "{merchantId}/orderreturns/{returnId}/acknowledge",
28955	//   "request": {
28956	//     "$ref": "OrderreturnsAcknowledgeRequest"
28957	//   },
28958	//   "response": {
28959	//     "$ref": "OrderreturnsAcknowledgeResponse"
28960	//   },
28961	//   "scopes": [
28962	//     "https://www.googleapis.com/auth/content"
28963	//   ]
28964	// }
28965
28966}
28967
28968// method id "content.orderreturns.createorderreturn":
28969
28970type OrderreturnsCreateorderreturnCall struct {
28971	s                                    *APIService
28972	merchantId                           uint64
28973	orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest
28974	urlParams_                           gensupport.URLParams
28975	ctx_                                 context.Context
28976	header_                              http.Header
28977}
28978
28979// Createorderreturn: Create return in your Merchant Center account.
28980//
28981// - merchantId: The ID of the account that manages the order. This
28982//   cannot be a multi-client account.
28983func (r *OrderreturnsService) Createorderreturn(merchantId uint64, orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest) *OrderreturnsCreateorderreturnCall {
28984	c := &OrderreturnsCreateorderreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28985	c.merchantId = merchantId
28986	c.orderreturnscreateorderreturnrequest = orderreturnscreateorderreturnrequest
28987	return c
28988}
28989
28990// Fields allows partial responses to be retrieved. See
28991// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28992// for more information.
28993func (c *OrderreturnsCreateorderreturnCall) Fields(s ...googleapi.Field) *OrderreturnsCreateorderreturnCall {
28994	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28995	return c
28996}
28997
28998// Context sets the context to be used in this call's Do method. Any
28999// pending HTTP request will be aborted if the provided context is
29000// canceled.
29001func (c *OrderreturnsCreateorderreturnCall) Context(ctx context.Context) *OrderreturnsCreateorderreturnCall {
29002	c.ctx_ = ctx
29003	return c
29004}
29005
29006// Header returns an http.Header that can be modified by the caller to
29007// add HTTP headers to the request.
29008func (c *OrderreturnsCreateorderreturnCall) Header() http.Header {
29009	if c.header_ == nil {
29010		c.header_ = make(http.Header)
29011	}
29012	return c.header_
29013}
29014
29015func (c *OrderreturnsCreateorderreturnCall) doRequest(alt string) (*http.Response, error) {
29016	reqHeaders := make(http.Header)
29017	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29018	for k, v := range c.header_ {
29019		reqHeaders[k] = v
29020	}
29021	reqHeaders.Set("User-Agent", c.s.userAgent())
29022	var body io.Reader = nil
29023	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnscreateorderreturnrequest)
29024	if err != nil {
29025		return nil, err
29026	}
29027	reqHeaders.Set("Content-Type", "application/json")
29028	c.urlParams_.Set("alt", alt)
29029	c.urlParams_.Set("prettyPrint", "false")
29030	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/createOrderReturn")
29031	urls += "?" + c.urlParams_.Encode()
29032	req, err := http.NewRequest("POST", urls, body)
29033	if err != nil {
29034		return nil, err
29035	}
29036	req.Header = reqHeaders
29037	googleapi.Expand(req.URL, map[string]string{
29038		"merchantId": strconv.FormatUint(c.merchantId, 10),
29039	})
29040	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29041}
29042
29043// Do executes the "content.orderreturns.createorderreturn" call.
29044// Exactly one of *OrderreturnsCreateOrderReturnResponse or error will
29045// be non-nil. Any non-2xx status code is an error. Response headers are
29046// in either
29047// *OrderreturnsCreateOrderReturnResponse.ServerResponse.Header or (if a
29048// response was returned at all) in error.(*googleapi.Error).Header. Use
29049// googleapi.IsNotModified to check whether the returned error was
29050// because http.StatusNotModified was returned.
29051func (c *OrderreturnsCreateorderreturnCall) Do(opts ...googleapi.CallOption) (*OrderreturnsCreateOrderReturnResponse, error) {
29052	gensupport.SetOptions(c.urlParams_, opts...)
29053	res, err := c.doRequest("json")
29054	if res != nil && res.StatusCode == http.StatusNotModified {
29055		if res.Body != nil {
29056			res.Body.Close()
29057		}
29058		return nil, &googleapi.Error{
29059			Code:   res.StatusCode,
29060			Header: res.Header,
29061		}
29062	}
29063	if err != nil {
29064		return nil, err
29065	}
29066	defer googleapi.CloseBody(res)
29067	if err := googleapi.CheckResponse(res); err != nil {
29068		return nil, err
29069	}
29070	ret := &OrderreturnsCreateOrderReturnResponse{
29071		ServerResponse: googleapi.ServerResponse{
29072			Header:         res.Header,
29073			HTTPStatusCode: res.StatusCode,
29074		},
29075	}
29076	target := &ret
29077	if err := gensupport.DecodeResponse(target, res); err != nil {
29078		return nil, err
29079	}
29080	return ret, nil
29081	// {
29082	//   "description": "Create return in your Merchant Center account.",
29083	//   "flatPath": "{merchantId}/orderreturns/createOrderReturn",
29084	//   "httpMethod": "POST",
29085	//   "id": "content.orderreturns.createorderreturn",
29086	//   "parameterOrder": [
29087	//     "merchantId"
29088	//   ],
29089	//   "parameters": {
29090	//     "merchantId": {
29091	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29092	//       "format": "uint64",
29093	//       "location": "path",
29094	//       "required": true,
29095	//       "type": "string"
29096	//     }
29097	//   },
29098	//   "path": "{merchantId}/orderreturns/createOrderReturn",
29099	//   "request": {
29100	//     "$ref": "OrderreturnsCreateOrderReturnRequest"
29101	//   },
29102	//   "response": {
29103	//     "$ref": "OrderreturnsCreateOrderReturnResponse"
29104	//   },
29105	//   "scopes": [
29106	//     "https://www.googleapis.com/auth/content"
29107	//   ]
29108	// }
29109
29110}
29111
29112// method id "content.orderreturns.get":
29113
29114type OrderreturnsGetCall struct {
29115	s            *APIService
29116	merchantId   uint64
29117	returnId     string
29118	urlParams_   gensupport.URLParams
29119	ifNoneMatch_ string
29120	ctx_         context.Context
29121	header_      http.Header
29122}
29123
29124// Get: Retrieves an order return from your Merchant Center account.
29125//
29126// - merchantId: The ID of the account that manages the order. This
29127//   cannot be a multi-client account.
29128// - returnId: Merchant order return ID generated by Google.
29129func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
29130	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29131	c.merchantId = merchantId
29132	c.returnId = returnId
29133	return c
29134}
29135
29136// Fields allows partial responses to be retrieved. See
29137// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29138// for more information.
29139func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
29140	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29141	return c
29142}
29143
29144// IfNoneMatch sets the optional parameter which makes the operation
29145// fail if the object's ETag matches the given value. This is useful for
29146// getting updates only after the object has changed since the last
29147// request. Use googleapi.IsNotModified to check whether the response
29148// error from Do is the result of In-None-Match.
29149func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
29150	c.ifNoneMatch_ = entityTag
29151	return c
29152}
29153
29154// Context sets the context to be used in this call's Do method. Any
29155// pending HTTP request will be aborted if the provided context is
29156// canceled.
29157func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
29158	c.ctx_ = ctx
29159	return c
29160}
29161
29162// Header returns an http.Header that can be modified by the caller to
29163// add HTTP headers to the request.
29164func (c *OrderreturnsGetCall) Header() http.Header {
29165	if c.header_ == nil {
29166		c.header_ = make(http.Header)
29167	}
29168	return c.header_
29169}
29170
29171func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
29172	reqHeaders := make(http.Header)
29173	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29174	for k, v := range c.header_ {
29175		reqHeaders[k] = v
29176	}
29177	reqHeaders.Set("User-Agent", c.s.userAgent())
29178	if c.ifNoneMatch_ != "" {
29179		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29180	}
29181	var body io.Reader = nil
29182	c.urlParams_.Set("alt", alt)
29183	c.urlParams_.Set("prettyPrint", "false")
29184	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}")
29185	urls += "?" + c.urlParams_.Encode()
29186	req, err := http.NewRequest("GET", urls, body)
29187	if err != nil {
29188		return nil, err
29189	}
29190	req.Header = reqHeaders
29191	googleapi.Expand(req.URL, map[string]string{
29192		"merchantId": strconv.FormatUint(c.merchantId, 10),
29193		"returnId":   c.returnId,
29194	})
29195	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29196}
29197
29198// Do executes the "content.orderreturns.get" call.
29199// Exactly one of *MerchantOrderReturn or error will be non-nil. Any
29200// non-2xx status code is an error. Response headers are in either
29201// *MerchantOrderReturn.ServerResponse.Header or (if a response was
29202// returned at all) in error.(*googleapi.Error).Header. Use
29203// googleapi.IsNotModified to check whether the returned error was
29204// because http.StatusNotModified was returned.
29205func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
29206	gensupport.SetOptions(c.urlParams_, opts...)
29207	res, err := c.doRequest("json")
29208	if res != nil && res.StatusCode == http.StatusNotModified {
29209		if res.Body != nil {
29210			res.Body.Close()
29211		}
29212		return nil, &googleapi.Error{
29213			Code:   res.StatusCode,
29214			Header: res.Header,
29215		}
29216	}
29217	if err != nil {
29218		return nil, err
29219	}
29220	defer googleapi.CloseBody(res)
29221	if err := googleapi.CheckResponse(res); err != nil {
29222		return nil, err
29223	}
29224	ret := &MerchantOrderReturn{
29225		ServerResponse: googleapi.ServerResponse{
29226			Header:         res.Header,
29227			HTTPStatusCode: res.StatusCode,
29228		},
29229	}
29230	target := &ret
29231	if err := gensupport.DecodeResponse(target, res); err != nil {
29232		return nil, err
29233	}
29234	return ret, nil
29235	// {
29236	//   "description": "Retrieves an order return from your Merchant Center account.",
29237	//   "flatPath": "{merchantId}/orderreturns/{returnId}",
29238	//   "httpMethod": "GET",
29239	//   "id": "content.orderreturns.get",
29240	//   "parameterOrder": [
29241	//     "merchantId",
29242	//     "returnId"
29243	//   ],
29244	//   "parameters": {
29245	//     "merchantId": {
29246	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29247	//       "format": "uint64",
29248	//       "location": "path",
29249	//       "required": true,
29250	//       "type": "string"
29251	//     },
29252	//     "returnId": {
29253	//       "description": "Merchant order return ID generated by Google.",
29254	//       "location": "path",
29255	//       "required": true,
29256	//       "type": "string"
29257	//     }
29258	//   },
29259	//   "path": "{merchantId}/orderreturns/{returnId}",
29260	//   "response": {
29261	//     "$ref": "MerchantOrderReturn"
29262	//   },
29263	//   "scopes": [
29264	//     "https://www.googleapis.com/auth/content"
29265	//   ]
29266	// }
29267
29268}
29269
29270// method id "content.orderreturns.list":
29271
29272type OrderreturnsListCall struct {
29273	s            *APIService
29274	merchantId   uint64
29275	urlParams_   gensupport.URLParams
29276	ifNoneMatch_ string
29277	ctx_         context.Context
29278	header_      http.Header
29279}
29280
29281// List: Lists order returns in your Merchant Center account.
29282//
29283// - merchantId: The ID of the account that manages the order. This
29284//   cannot be a multi-client account.
29285func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
29286	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29287	c.merchantId = merchantId
29288	return c
29289}
29290
29291// Acknowledged sets the optional parameter "acknowledged": Obtains
29292// order returns that match the acknowledgement status. When set to
29293// true, obtains order returns that have been acknowledged. When false,
29294// obtains order returns that have not been acknowledged. When not
29295// provided, obtains order returns regardless of their acknowledgement
29296// status. We recommend using this filter set to `false`, in conjunction
29297// with the `acknowledge` call, such that only un-acknowledged order
29298// returns are returned.
29299func (c *OrderreturnsListCall) Acknowledged(acknowledged bool) *OrderreturnsListCall {
29300	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
29301	return c
29302}
29303
29304// CreatedEndDate sets the optional parameter "createdEndDate": Obtains
29305// order returns created before this date (inclusively), in ISO 8601
29306// format.
29307func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
29308	c.urlParams_.Set("createdEndDate", createdEndDate)
29309	return c
29310}
29311
29312// CreatedStartDate sets the optional parameter "createdStartDate":
29313// Obtains order returns created after this date (inclusively), in ISO
29314// 8601 format.
29315func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
29316	c.urlParams_.Set("createdStartDate", createdStartDate)
29317	return c
29318}
29319
29320// GoogleOrderIds sets the optional parameter "googleOrderIds": Obtains
29321// order returns with the specified order ids. If this parameter is
29322// provided, createdStartDate, createdEndDate, shipmentType,
29323// shipmentStatus, shipmentState and acknowledged parameters must be not
29324// set. Note: if googleOrderId and shipmentTrackingNumber parameters are
29325// provided, the obtained results will include all order returns that
29326// either match the specified order id or the specified tracking number.
29327func (c *OrderreturnsListCall) GoogleOrderIds(googleOrderIds ...string) *OrderreturnsListCall {
29328	c.urlParams_.SetMulti("googleOrderIds", append([]string{}, googleOrderIds...))
29329	return c
29330}
29331
29332// MaxResults sets the optional parameter "maxResults": The maximum
29333// number of order returns to return in the response, used for paging.
29334// The default value is 25 returns per page, and the maximum allowed
29335// value is 250 returns per page.
29336func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
29337	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
29338	return c
29339}
29340
29341// OrderBy sets the optional parameter "orderBy": Return the results in
29342// the specified order.
29343//
29344// Possible values:
29345//   "RETURN_CREATION_TIME_DESC" - Return results in descending order.
29346//   "RETURN_CREATION_TIME_ASC" - Return results in ascending order.
29347func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
29348	c.urlParams_.Set("orderBy", orderBy)
29349	return c
29350}
29351
29352// PageToken sets the optional parameter "pageToken": The token returned
29353// by the previous request.
29354func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
29355	c.urlParams_.Set("pageToken", pageToken)
29356	return c
29357}
29358
29359// ShipmentStates sets the optional parameter "shipmentStates": Obtains
29360// order returns that match any shipment state provided in this
29361// parameter. When this parameter is not provided, order returns are
29362// obtained regardless of their shipment states.
29363//
29364// Possible values:
29365//   "NEW" - Return shipments with `new` state only.
29366//   "SHIPPED" - Return shipments with `shipped` state only.
29367//   "COMPLETED" - Return shipments with `completed` state only.
29368//   "UNDELIVERABLE" - Return shipments with `undeliverable` state only.
29369//   "PENDING" - Return shipments with `pending` state only.
29370func (c *OrderreturnsListCall) ShipmentStates(shipmentStates ...string) *OrderreturnsListCall {
29371	c.urlParams_.SetMulti("shipmentStates", append([]string{}, shipmentStates...))
29372	return c
29373}
29374
29375// ShipmentStatus sets the optional parameter "shipmentStatus": Obtains
29376// order returns that match any shipment status provided in this
29377// parameter. When this parameter is not provided, order returns are
29378// obtained regardless of their shipment statuses.
29379//
29380// Possible values:
29381//   "NEW" - Return shipments with `new` status only.
29382//   "IN_PROGRESS" - Return shipments with `inProgress` status only.
29383//   "PROCESSED" - Return shipments with `processed` status only.
29384func (c *OrderreturnsListCall) ShipmentStatus(shipmentStatus ...string) *OrderreturnsListCall {
29385	c.urlParams_.SetMulti("shipmentStatus", append([]string{}, shipmentStatus...))
29386	return c
29387}
29388
29389// ShipmentTrackingNumbers sets the optional parameter
29390// "shipmentTrackingNumbers": Obtains order returns with the specified
29391// tracking numbers. If this parameter is provided, createdStartDate,
29392// createdEndDate, shipmentType, shipmentStatus, shipmentState and
29393// acknowledged parameters must be not set. Note: if googleOrderId and
29394// shipmentTrackingNumber parameters are provided, the obtained results
29395// will include all order returns that either match the specified order
29396// id or the specified tracking number.
29397func (c *OrderreturnsListCall) ShipmentTrackingNumbers(shipmentTrackingNumbers ...string) *OrderreturnsListCall {
29398	c.urlParams_.SetMulti("shipmentTrackingNumbers", append([]string{}, shipmentTrackingNumbers...))
29399	return c
29400}
29401
29402// ShipmentTypes sets the optional parameter "shipmentTypes": Obtains
29403// order returns that match any shipment type provided in this
29404// parameter. When this parameter is not provided, order returns are
29405// obtained regardless of their shipment types.
29406//
29407// Possible values:
29408//   "BY_MAIL" - Return shipments with type `byMail` only.
29409//   "RETURNLESS" - Return shipments with type `returnless` only.
29410//   "CONTACT_CUSTOMER_SUPPORT" - Return shipments with type
29411// `contactCustomerSupport` only.
29412func (c *OrderreturnsListCall) ShipmentTypes(shipmentTypes ...string) *OrderreturnsListCall {
29413	c.urlParams_.SetMulti("shipmentTypes", append([]string{}, shipmentTypes...))
29414	return c
29415}
29416
29417// Fields allows partial responses to be retrieved. See
29418// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29419// for more information.
29420func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
29421	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29422	return c
29423}
29424
29425// IfNoneMatch sets the optional parameter which makes the operation
29426// fail if the object's ETag matches the given value. This is useful for
29427// getting updates only after the object has changed since the last
29428// request. Use googleapi.IsNotModified to check whether the response
29429// error from Do is the result of In-None-Match.
29430func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
29431	c.ifNoneMatch_ = entityTag
29432	return c
29433}
29434
29435// Context sets the context to be used in this call's Do method. Any
29436// pending HTTP request will be aborted if the provided context is
29437// canceled.
29438func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
29439	c.ctx_ = ctx
29440	return c
29441}
29442
29443// Header returns an http.Header that can be modified by the caller to
29444// add HTTP headers to the request.
29445func (c *OrderreturnsListCall) Header() http.Header {
29446	if c.header_ == nil {
29447		c.header_ = make(http.Header)
29448	}
29449	return c.header_
29450}
29451
29452func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
29453	reqHeaders := make(http.Header)
29454	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29455	for k, v := range c.header_ {
29456		reqHeaders[k] = v
29457	}
29458	reqHeaders.Set("User-Agent", c.s.userAgent())
29459	if c.ifNoneMatch_ != "" {
29460		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29461	}
29462	var body io.Reader = nil
29463	c.urlParams_.Set("alt", alt)
29464	c.urlParams_.Set("prettyPrint", "false")
29465	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns")
29466	urls += "?" + c.urlParams_.Encode()
29467	req, err := http.NewRequest("GET", urls, body)
29468	if err != nil {
29469		return nil, err
29470	}
29471	req.Header = reqHeaders
29472	googleapi.Expand(req.URL, map[string]string{
29473		"merchantId": strconv.FormatUint(c.merchantId, 10),
29474	})
29475	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29476}
29477
29478// Do executes the "content.orderreturns.list" call.
29479// Exactly one of *OrderreturnsListResponse or error will be non-nil.
29480// Any non-2xx status code is an error. Response headers are in either
29481// *OrderreturnsListResponse.ServerResponse.Header or (if a response was
29482// returned at all) in error.(*googleapi.Error).Header. Use
29483// googleapi.IsNotModified to check whether the returned error was
29484// because http.StatusNotModified was returned.
29485func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
29486	gensupport.SetOptions(c.urlParams_, opts...)
29487	res, err := c.doRequest("json")
29488	if res != nil && res.StatusCode == http.StatusNotModified {
29489		if res.Body != nil {
29490			res.Body.Close()
29491		}
29492		return nil, &googleapi.Error{
29493			Code:   res.StatusCode,
29494			Header: res.Header,
29495		}
29496	}
29497	if err != nil {
29498		return nil, err
29499	}
29500	defer googleapi.CloseBody(res)
29501	if err := googleapi.CheckResponse(res); err != nil {
29502		return nil, err
29503	}
29504	ret := &OrderreturnsListResponse{
29505		ServerResponse: googleapi.ServerResponse{
29506			Header:         res.Header,
29507			HTTPStatusCode: res.StatusCode,
29508		},
29509	}
29510	target := &ret
29511	if err := gensupport.DecodeResponse(target, res); err != nil {
29512		return nil, err
29513	}
29514	return ret, nil
29515	// {
29516	//   "description": "Lists order returns in your Merchant Center account.",
29517	//   "flatPath": "{merchantId}/orderreturns",
29518	//   "httpMethod": "GET",
29519	//   "id": "content.orderreturns.list",
29520	//   "parameterOrder": [
29521	//     "merchantId"
29522	//   ],
29523	//   "parameters": {
29524	//     "acknowledged": {
29525	//       "description": "Obtains order returns that match the acknowledgement status. When set to true, obtains order returns that have been acknowledged. When false, obtains order returns that have not been acknowledged. When not provided, obtains order returns regardless of their acknowledgement status. We recommend using this filter set to `false`, in conjunction with the `acknowledge` call, such that only un-acknowledged order returns are returned. ",
29526	//       "location": "query",
29527	//       "type": "boolean"
29528	//     },
29529	//     "createdEndDate": {
29530	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
29531	//       "location": "query",
29532	//       "type": "string"
29533	//     },
29534	//     "createdStartDate": {
29535	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
29536	//       "location": "query",
29537	//       "type": "string"
29538	//     },
29539	//     "googleOrderIds": {
29540	//       "description": "Obtains order returns with the specified order ids. If this parameter is provided, createdStartDate, createdEndDate, shipmentType, shipmentStatus, shipmentState and acknowledged parameters must be not set. Note: if googleOrderId and shipmentTrackingNumber parameters are provided, the obtained results will include all order returns that either match the specified order id or the specified tracking number.",
29541	//       "location": "query",
29542	//       "repeated": true,
29543	//       "type": "string"
29544	//     },
29545	//     "maxResults": {
29546	//       "description": "The maximum number of order returns to return in the response, used for paging. The default value is 25 returns per page, and the maximum allowed value is 250 returns per page.",
29547	//       "format": "uint32",
29548	//       "location": "query",
29549	//       "type": "integer"
29550	//     },
29551	//     "merchantId": {
29552	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29553	//       "format": "uint64",
29554	//       "location": "path",
29555	//       "required": true,
29556	//       "type": "string"
29557	//     },
29558	//     "orderBy": {
29559	//       "description": "Return the results in the specified order.",
29560	//       "enum": [
29561	//         "RETURN_CREATION_TIME_DESC",
29562	//         "RETURN_CREATION_TIME_ASC"
29563	//       ],
29564	//       "enumDescriptions": [
29565	//         "Return results in descending order.",
29566	//         "Return results in ascending order."
29567	//       ],
29568	//       "location": "query",
29569	//       "type": "string"
29570	//     },
29571	//     "pageToken": {
29572	//       "description": "The token returned by the previous request.",
29573	//       "location": "query",
29574	//       "type": "string"
29575	//     },
29576	//     "shipmentStates": {
29577	//       "description": "Obtains order returns that match any shipment state provided in this parameter. When this parameter is not provided, order returns are obtained regardless of their shipment states.",
29578	//       "enum": [
29579	//         "NEW",
29580	//         "SHIPPED",
29581	//         "COMPLETED",
29582	//         "UNDELIVERABLE",
29583	//         "PENDING"
29584	//       ],
29585	//       "enumDescriptions": [
29586	//         "Return shipments with `new` state only.",
29587	//         "Return shipments with `shipped` state only.",
29588	//         "Return shipments with `completed` state only.",
29589	//         "Return shipments with `undeliverable` state only.",
29590	//         "Return shipments with `pending` state only."
29591	//       ],
29592	//       "location": "query",
29593	//       "repeated": true,
29594	//       "type": "string"
29595	//     },
29596	//     "shipmentStatus": {
29597	//       "description": "Obtains order returns that match any shipment status provided in this parameter. When this parameter is not provided, order returns are obtained regardless of their shipment statuses.",
29598	//       "enum": [
29599	//         "NEW",
29600	//         "IN_PROGRESS",
29601	//         "PROCESSED"
29602	//       ],
29603	//       "enumDescriptions": [
29604	//         "Return shipments with `new` status only.",
29605	//         "Return shipments with `inProgress` status only.",
29606	//         "Return shipments with `processed` status only."
29607	//       ],
29608	//       "location": "query",
29609	//       "repeated": true,
29610	//       "type": "string"
29611	//     },
29612	//     "shipmentTrackingNumbers": {
29613	//       "description": "Obtains order returns with the specified tracking numbers. If this parameter is provided, createdStartDate, createdEndDate, shipmentType, shipmentStatus, shipmentState and acknowledged parameters must be not set. Note: if googleOrderId and shipmentTrackingNumber parameters are provided, the obtained results will include all order returns that either match the specified order id or the specified tracking number.",
29614	//       "location": "query",
29615	//       "repeated": true,
29616	//       "type": "string"
29617	//     },
29618	//     "shipmentTypes": {
29619	//       "description": "Obtains order returns that match any shipment type provided in this parameter. When this parameter is not provided, order returns are obtained regardless of their shipment types.",
29620	//       "enum": [
29621	//         "BY_MAIL",
29622	//         "RETURNLESS",
29623	//         "CONTACT_CUSTOMER_SUPPORT"
29624	//       ],
29625	//       "enumDescriptions": [
29626	//         "Return shipments with type `byMail` only.",
29627	//         "Return shipments with type `returnless` only.",
29628	//         "Return shipments with type `contactCustomerSupport` only."
29629	//       ],
29630	//       "location": "query",
29631	//       "repeated": true,
29632	//       "type": "string"
29633	//     }
29634	//   },
29635	//   "path": "{merchantId}/orderreturns",
29636	//   "response": {
29637	//     "$ref": "OrderreturnsListResponse"
29638	//   },
29639	//   "scopes": [
29640	//     "https://www.googleapis.com/auth/content"
29641	//   ]
29642	// }
29643
29644}
29645
29646// Pages invokes f for each page of results.
29647// A non-nil error returned from f will halt the iteration.
29648// The provided context supersedes any context provided to the Context method.
29649func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
29650	c.ctx_ = ctx
29651	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29652	for {
29653		x, err := c.Do()
29654		if err != nil {
29655			return err
29656		}
29657		if err := f(x); err != nil {
29658			return err
29659		}
29660		if x.NextPageToken == "" {
29661			return nil
29662		}
29663		c.PageToken(x.NextPageToken)
29664	}
29665}
29666
29667// method id "content.orderreturns.process":
29668
29669type OrderreturnsProcessCall struct {
29670	s                          *APIService
29671	merchantId                 uint64
29672	returnId                   string
29673	orderreturnsprocessrequest *OrderreturnsProcessRequest
29674	urlParams_                 gensupport.URLParams
29675	ctx_                       context.Context
29676	header_                    http.Header
29677}
29678
29679// Process: Processes return in your Merchant Center account.
29680//
29681// - merchantId: The ID of the account that manages the order. This
29682//   cannot be a multi-client account.
29683// - returnId: The ID of the return.
29684func (r *OrderreturnsService) Process(merchantId uint64, returnId string, orderreturnsprocessrequest *OrderreturnsProcessRequest) *OrderreturnsProcessCall {
29685	c := &OrderreturnsProcessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29686	c.merchantId = merchantId
29687	c.returnId = returnId
29688	c.orderreturnsprocessrequest = orderreturnsprocessrequest
29689	return c
29690}
29691
29692// Fields allows partial responses to be retrieved. See
29693// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29694// for more information.
29695func (c *OrderreturnsProcessCall) Fields(s ...googleapi.Field) *OrderreturnsProcessCall {
29696	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29697	return c
29698}
29699
29700// Context sets the context to be used in this call's Do method. Any
29701// pending HTTP request will be aborted if the provided context is
29702// canceled.
29703func (c *OrderreturnsProcessCall) Context(ctx context.Context) *OrderreturnsProcessCall {
29704	c.ctx_ = ctx
29705	return c
29706}
29707
29708// Header returns an http.Header that can be modified by the caller to
29709// add HTTP headers to the request.
29710func (c *OrderreturnsProcessCall) Header() http.Header {
29711	if c.header_ == nil {
29712		c.header_ = make(http.Header)
29713	}
29714	return c.header_
29715}
29716
29717func (c *OrderreturnsProcessCall) doRequest(alt string) (*http.Response, error) {
29718	reqHeaders := make(http.Header)
29719	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29720	for k, v := range c.header_ {
29721		reqHeaders[k] = v
29722	}
29723	reqHeaders.Set("User-Agent", c.s.userAgent())
29724	var body io.Reader = nil
29725	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsprocessrequest)
29726	if err != nil {
29727		return nil, err
29728	}
29729	reqHeaders.Set("Content-Type", "application/json")
29730	c.urlParams_.Set("alt", alt)
29731	c.urlParams_.Set("prettyPrint", "false")
29732	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/process")
29733	urls += "?" + c.urlParams_.Encode()
29734	req, err := http.NewRequest("POST", urls, body)
29735	if err != nil {
29736		return nil, err
29737	}
29738	req.Header = reqHeaders
29739	googleapi.Expand(req.URL, map[string]string{
29740		"merchantId": strconv.FormatUint(c.merchantId, 10),
29741		"returnId":   c.returnId,
29742	})
29743	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29744}
29745
29746// Do executes the "content.orderreturns.process" call.
29747// Exactly one of *OrderreturnsProcessResponse or error will be non-nil.
29748// Any non-2xx status code is an error. Response headers are in either
29749// *OrderreturnsProcessResponse.ServerResponse.Header or (if a response
29750// was returned at all) in error.(*googleapi.Error).Header. Use
29751// googleapi.IsNotModified to check whether the returned error was
29752// because http.StatusNotModified was returned.
29753func (c *OrderreturnsProcessCall) Do(opts ...googleapi.CallOption) (*OrderreturnsProcessResponse, error) {
29754	gensupport.SetOptions(c.urlParams_, opts...)
29755	res, err := c.doRequest("json")
29756	if res != nil && res.StatusCode == http.StatusNotModified {
29757		if res.Body != nil {
29758			res.Body.Close()
29759		}
29760		return nil, &googleapi.Error{
29761			Code:   res.StatusCode,
29762			Header: res.Header,
29763		}
29764	}
29765	if err != nil {
29766		return nil, err
29767	}
29768	defer googleapi.CloseBody(res)
29769	if err := googleapi.CheckResponse(res); err != nil {
29770		return nil, err
29771	}
29772	ret := &OrderreturnsProcessResponse{
29773		ServerResponse: googleapi.ServerResponse{
29774			Header:         res.Header,
29775			HTTPStatusCode: res.StatusCode,
29776		},
29777	}
29778	target := &ret
29779	if err := gensupport.DecodeResponse(target, res); err != nil {
29780		return nil, err
29781	}
29782	return ret, nil
29783	// {
29784	//   "description": "Processes return in your Merchant Center account.",
29785	//   "flatPath": "{merchantId}/orderreturns/{returnId}/process",
29786	//   "httpMethod": "POST",
29787	//   "id": "content.orderreturns.process",
29788	//   "parameterOrder": [
29789	//     "merchantId",
29790	//     "returnId"
29791	//   ],
29792	//   "parameters": {
29793	//     "merchantId": {
29794	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29795	//       "format": "uint64",
29796	//       "location": "path",
29797	//       "required": true,
29798	//       "type": "string"
29799	//     },
29800	//     "returnId": {
29801	//       "description": "The ID of the return.",
29802	//       "location": "path",
29803	//       "required": true,
29804	//       "type": "string"
29805	//     }
29806	//   },
29807	//   "path": "{merchantId}/orderreturns/{returnId}/process",
29808	//   "request": {
29809	//     "$ref": "OrderreturnsProcessRequest"
29810	//   },
29811	//   "response": {
29812	//     "$ref": "OrderreturnsProcessResponse"
29813	//   },
29814	//   "scopes": [
29815	//     "https://www.googleapis.com/auth/content"
29816	//   ]
29817	// }
29818
29819}
29820
29821// method id "content.orderreturns.labels.create":
29822
29823type OrderreturnsLabelsCreateCall struct {
29824	s                   *APIService
29825	merchantId          int64
29826	returnId            string
29827	returnshippinglabel *ReturnShippingLabel
29828	urlParams_          gensupport.URLParams
29829	ctx_                context.Context
29830	header_             http.Header
29831}
29832
29833// Create: Links a return shipping label to a return id. You can only
29834// create one return label per return id. Since the label is sent to the
29835// buyer, the linked return label cannot be updated or deleted. If you
29836// try to create multiple return shipping labels for a single return id,
29837// every create request except the first will fail.
29838//
29839// - merchantId: The merchant the Return Shipping Label belongs to.
29840// - returnId: Provide the Google-generated merchant order return ID.
29841func (r *OrderreturnsLabelsService) Create(merchantId int64, returnId string, returnshippinglabel *ReturnShippingLabel) *OrderreturnsLabelsCreateCall {
29842	c := &OrderreturnsLabelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29843	c.merchantId = merchantId
29844	c.returnId = returnId
29845	c.returnshippinglabel = returnshippinglabel
29846	return c
29847}
29848
29849// Fields allows partial responses to be retrieved. See
29850// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29851// for more information.
29852func (c *OrderreturnsLabelsCreateCall) Fields(s ...googleapi.Field) *OrderreturnsLabelsCreateCall {
29853	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29854	return c
29855}
29856
29857// Context sets the context to be used in this call's Do method. Any
29858// pending HTTP request will be aborted if the provided context is
29859// canceled.
29860func (c *OrderreturnsLabelsCreateCall) Context(ctx context.Context) *OrderreturnsLabelsCreateCall {
29861	c.ctx_ = ctx
29862	return c
29863}
29864
29865// Header returns an http.Header that can be modified by the caller to
29866// add HTTP headers to the request.
29867func (c *OrderreturnsLabelsCreateCall) Header() http.Header {
29868	if c.header_ == nil {
29869		c.header_ = make(http.Header)
29870	}
29871	return c.header_
29872}
29873
29874func (c *OrderreturnsLabelsCreateCall) doRequest(alt string) (*http.Response, error) {
29875	reqHeaders := make(http.Header)
29876	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29877	for k, v := range c.header_ {
29878		reqHeaders[k] = v
29879	}
29880	reqHeaders.Set("User-Agent", c.s.userAgent())
29881	var body io.Reader = nil
29882	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnshippinglabel)
29883	if err != nil {
29884		return nil, err
29885	}
29886	reqHeaders.Set("Content-Type", "application/json")
29887	c.urlParams_.Set("alt", alt)
29888	c.urlParams_.Set("prettyPrint", "false")
29889	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/labels")
29890	urls += "?" + c.urlParams_.Encode()
29891	req, err := http.NewRequest("POST", urls, body)
29892	if err != nil {
29893		return nil, err
29894	}
29895	req.Header = reqHeaders
29896	googleapi.Expand(req.URL, map[string]string{
29897		"merchantId": strconv.FormatInt(c.merchantId, 10),
29898		"returnId":   c.returnId,
29899	})
29900	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29901}
29902
29903// Do executes the "content.orderreturns.labels.create" call.
29904// Exactly one of *ReturnShippingLabel or error will be non-nil. Any
29905// non-2xx status code is an error. Response headers are in either
29906// *ReturnShippingLabel.ServerResponse.Header or (if a response was
29907// returned at all) in error.(*googleapi.Error).Header. Use
29908// googleapi.IsNotModified to check whether the returned error was
29909// because http.StatusNotModified was returned.
29910func (c *OrderreturnsLabelsCreateCall) Do(opts ...googleapi.CallOption) (*ReturnShippingLabel, error) {
29911	gensupport.SetOptions(c.urlParams_, opts...)
29912	res, err := c.doRequest("json")
29913	if res != nil && res.StatusCode == http.StatusNotModified {
29914		if res.Body != nil {
29915			res.Body.Close()
29916		}
29917		return nil, &googleapi.Error{
29918			Code:   res.StatusCode,
29919			Header: res.Header,
29920		}
29921	}
29922	if err != nil {
29923		return nil, err
29924	}
29925	defer googleapi.CloseBody(res)
29926	if err := googleapi.CheckResponse(res); err != nil {
29927		return nil, err
29928	}
29929	ret := &ReturnShippingLabel{
29930		ServerResponse: googleapi.ServerResponse{
29931			Header:         res.Header,
29932			HTTPStatusCode: res.StatusCode,
29933		},
29934	}
29935	target := &ret
29936	if err := gensupport.DecodeResponse(target, res); err != nil {
29937		return nil, err
29938	}
29939	return ret, nil
29940	// {
29941	//   "description": "Links a return shipping label to a return id. You can only create one return label per return id. Since the label is sent to the buyer, the linked return label cannot be updated or deleted. If you try to create multiple return shipping labels for a single return id, every create request except the first will fail.",
29942	//   "flatPath": "{merchantId}/orderreturns/{returnId}/labels",
29943	//   "httpMethod": "POST",
29944	//   "id": "content.orderreturns.labels.create",
29945	//   "parameterOrder": [
29946	//     "merchantId",
29947	//     "returnId"
29948	//   ],
29949	//   "parameters": {
29950	//     "merchantId": {
29951	//       "description": "Required. The merchant the Return Shipping Label belongs to.",
29952	//       "format": "int64",
29953	//       "location": "path",
29954	//       "required": true,
29955	//       "type": "string"
29956	//     },
29957	//     "returnId": {
29958	//       "description": "Required. Provide the Google-generated merchant order return ID.",
29959	//       "location": "path",
29960	//       "required": true,
29961	//       "type": "string"
29962	//     }
29963	//   },
29964	//   "path": "{merchantId}/orderreturns/{returnId}/labels",
29965	//   "request": {
29966	//     "$ref": "ReturnShippingLabel"
29967	//   },
29968	//   "response": {
29969	//     "$ref": "ReturnShippingLabel"
29970	//   },
29971	//   "scopes": [
29972	//     "https://www.googleapis.com/auth/content"
29973	//   ]
29974	// }
29975
29976}
29977
29978// method id "content.orders.acknowledge":
29979
29980type OrdersAcknowledgeCall struct {
29981	s                        *APIService
29982	merchantId               uint64
29983	orderId                  string
29984	ordersacknowledgerequest *OrdersAcknowledgeRequest
29985	urlParams_               gensupport.URLParams
29986	ctx_                     context.Context
29987	header_                  http.Header
29988}
29989
29990// Acknowledge: Marks an order as acknowledged.
29991//
29992// - merchantId: The ID of the account that manages the order. This
29993//   cannot be a multi-client account.
29994// - orderId: The ID of the order.
29995func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
29996	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29997	c.merchantId = merchantId
29998	c.orderId = orderId
29999	c.ordersacknowledgerequest = ordersacknowledgerequest
30000	return c
30001}
30002
30003// Fields allows partial responses to be retrieved. See
30004// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30005// for more information.
30006func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
30007	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30008	return c
30009}
30010
30011// Context sets the context to be used in this call's Do method. Any
30012// pending HTTP request will be aborted if the provided context is
30013// canceled.
30014func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
30015	c.ctx_ = ctx
30016	return c
30017}
30018
30019// Header returns an http.Header that can be modified by the caller to
30020// add HTTP headers to the request.
30021func (c *OrdersAcknowledgeCall) Header() http.Header {
30022	if c.header_ == nil {
30023		c.header_ = make(http.Header)
30024	}
30025	return c.header_
30026}
30027
30028func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
30029	reqHeaders := make(http.Header)
30030	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30031	for k, v := range c.header_ {
30032		reqHeaders[k] = v
30033	}
30034	reqHeaders.Set("User-Agent", c.s.userAgent())
30035	var body io.Reader = nil
30036	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
30037	if err != nil {
30038		return nil, err
30039	}
30040	reqHeaders.Set("Content-Type", "application/json")
30041	c.urlParams_.Set("alt", alt)
30042	c.urlParams_.Set("prettyPrint", "false")
30043	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/acknowledge")
30044	urls += "?" + c.urlParams_.Encode()
30045	req, err := http.NewRequest("POST", urls, body)
30046	if err != nil {
30047		return nil, err
30048	}
30049	req.Header = reqHeaders
30050	googleapi.Expand(req.URL, map[string]string{
30051		"merchantId": strconv.FormatUint(c.merchantId, 10),
30052		"orderId":    c.orderId,
30053	})
30054	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30055}
30056
30057// Do executes the "content.orders.acknowledge" call.
30058// Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
30059// Any non-2xx status code is an error. Response headers are in either
30060// *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
30061// was returned at all) in error.(*googleapi.Error).Header. Use
30062// googleapi.IsNotModified to check whether the returned error was
30063// because http.StatusNotModified was returned.
30064func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
30065	gensupport.SetOptions(c.urlParams_, opts...)
30066	res, err := c.doRequest("json")
30067	if res != nil && res.StatusCode == http.StatusNotModified {
30068		if res.Body != nil {
30069			res.Body.Close()
30070		}
30071		return nil, &googleapi.Error{
30072			Code:   res.StatusCode,
30073			Header: res.Header,
30074		}
30075	}
30076	if err != nil {
30077		return nil, err
30078	}
30079	defer googleapi.CloseBody(res)
30080	if err := googleapi.CheckResponse(res); err != nil {
30081		return nil, err
30082	}
30083	ret := &OrdersAcknowledgeResponse{
30084		ServerResponse: googleapi.ServerResponse{
30085			Header:         res.Header,
30086			HTTPStatusCode: res.StatusCode,
30087		},
30088	}
30089	target := &ret
30090	if err := gensupport.DecodeResponse(target, res); err != nil {
30091		return nil, err
30092	}
30093	return ret, nil
30094	// {
30095	//   "description": "Marks an order as acknowledged.",
30096	//   "flatPath": "{merchantId}/orders/{orderId}/acknowledge",
30097	//   "httpMethod": "POST",
30098	//   "id": "content.orders.acknowledge",
30099	//   "parameterOrder": [
30100	//     "merchantId",
30101	//     "orderId"
30102	//   ],
30103	//   "parameters": {
30104	//     "merchantId": {
30105	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30106	//       "format": "uint64",
30107	//       "location": "path",
30108	//       "required": true,
30109	//       "type": "string"
30110	//     },
30111	//     "orderId": {
30112	//       "description": "The ID of the order.",
30113	//       "location": "path",
30114	//       "required": true,
30115	//       "type": "string"
30116	//     }
30117	//   },
30118	//   "path": "{merchantId}/orders/{orderId}/acknowledge",
30119	//   "request": {
30120	//     "$ref": "OrdersAcknowledgeRequest"
30121	//   },
30122	//   "response": {
30123	//     "$ref": "OrdersAcknowledgeResponse"
30124	//   },
30125	//   "scopes": [
30126	//     "https://www.googleapis.com/auth/content"
30127	//   ]
30128	// }
30129
30130}
30131
30132// method id "content.orders.advancetestorder":
30133
30134type OrdersAdvancetestorderCall struct {
30135	s          *APIService
30136	merchantId uint64
30137	orderId    string
30138	urlParams_ gensupport.URLParams
30139	ctx_       context.Context
30140	header_    http.Header
30141}
30142
30143// Advancetestorder: Sandbox only. Moves a test order from state
30144// "inProgress" to state "pendingShipment".
30145//
30146// - merchantId: The ID of the account that manages the order. This
30147//   cannot be a multi-client account.
30148// - orderId: The ID of the test order to modify.
30149func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
30150	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30151	c.merchantId = merchantId
30152	c.orderId = orderId
30153	return c
30154}
30155
30156// Fields allows partial responses to be retrieved. See
30157// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30158// for more information.
30159func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
30160	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30161	return c
30162}
30163
30164// Context sets the context to be used in this call's Do method. Any
30165// pending HTTP request will be aborted if the provided context is
30166// canceled.
30167func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
30168	c.ctx_ = ctx
30169	return c
30170}
30171
30172// Header returns an http.Header that can be modified by the caller to
30173// add HTTP headers to the request.
30174func (c *OrdersAdvancetestorderCall) Header() http.Header {
30175	if c.header_ == nil {
30176		c.header_ = make(http.Header)
30177	}
30178	return c.header_
30179}
30180
30181func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
30182	reqHeaders := make(http.Header)
30183	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30184	for k, v := range c.header_ {
30185		reqHeaders[k] = v
30186	}
30187	reqHeaders.Set("User-Agent", c.s.userAgent())
30188	var body io.Reader = nil
30189	c.urlParams_.Set("alt", alt)
30190	c.urlParams_.Set("prettyPrint", "false")
30191	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/advance")
30192	urls += "?" + c.urlParams_.Encode()
30193	req, err := http.NewRequest("POST", urls, body)
30194	if err != nil {
30195		return nil, err
30196	}
30197	req.Header = reqHeaders
30198	googleapi.Expand(req.URL, map[string]string{
30199		"merchantId": strconv.FormatUint(c.merchantId, 10),
30200		"orderId":    c.orderId,
30201	})
30202	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30203}
30204
30205// Do executes the "content.orders.advancetestorder" call.
30206// Exactly one of *OrdersAdvanceTestOrderResponse or error will be
30207// non-nil. Any non-2xx status code is an error. Response headers are in
30208// either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
30209// response was returned at all) in error.(*googleapi.Error).Header. Use
30210// googleapi.IsNotModified to check whether the returned error was
30211// because http.StatusNotModified was returned.
30212func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
30213	gensupport.SetOptions(c.urlParams_, opts...)
30214	res, err := c.doRequest("json")
30215	if res != nil && res.StatusCode == http.StatusNotModified {
30216		if res.Body != nil {
30217			res.Body.Close()
30218		}
30219		return nil, &googleapi.Error{
30220			Code:   res.StatusCode,
30221			Header: res.Header,
30222		}
30223	}
30224	if err != nil {
30225		return nil, err
30226	}
30227	defer googleapi.CloseBody(res)
30228	if err := googleapi.CheckResponse(res); err != nil {
30229		return nil, err
30230	}
30231	ret := &OrdersAdvanceTestOrderResponse{
30232		ServerResponse: googleapi.ServerResponse{
30233			Header:         res.Header,
30234			HTTPStatusCode: res.StatusCode,
30235		},
30236	}
30237	target := &ret
30238	if err := gensupport.DecodeResponse(target, res); err != nil {
30239		return nil, err
30240	}
30241	return ret, nil
30242	// {
30243	//   "description": "Sandbox only. Moves a test order from state \"`inProgress`\" to state \"`pendingShipment`\".",
30244	//   "flatPath": "{merchantId}/testorders/{orderId}/advance",
30245	//   "httpMethod": "POST",
30246	//   "id": "content.orders.advancetestorder",
30247	//   "parameterOrder": [
30248	//     "merchantId",
30249	//     "orderId"
30250	//   ],
30251	//   "parameters": {
30252	//     "merchantId": {
30253	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30254	//       "format": "uint64",
30255	//       "location": "path",
30256	//       "required": true,
30257	//       "type": "string"
30258	//     },
30259	//     "orderId": {
30260	//       "description": "The ID of the test order to modify.",
30261	//       "location": "path",
30262	//       "required": true,
30263	//       "type": "string"
30264	//     }
30265	//   },
30266	//   "path": "{merchantId}/testorders/{orderId}/advance",
30267	//   "response": {
30268	//     "$ref": "OrdersAdvanceTestOrderResponse"
30269	//   },
30270	//   "scopes": [
30271	//     "https://www.googleapis.com/auth/content"
30272	//   ]
30273	// }
30274
30275}
30276
30277// method id "content.orders.cancel":
30278
30279type OrdersCancelCall struct {
30280	s                   *APIService
30281	merchantId          uint64
30282	orderId             string
30283	orderscancelrequest *OrdersCancelRequest
30284	urlParams_          gensupport.URLParams
30285	ctx_                context.Context
30286	header_             http.Header
30287}
30288
30289// Cancel: Cancels all line items in an order, making a full refund.
30290//
30291// - merchantId: The ID of the account that manages the order. This
30292//   cannot be a multi-client account.
30293// - orderId: The ID of the order to cancel.
30294func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
30295	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30296	c.merchantId = merchantId
30297	c.orderId = orderId
30298	c.orderscancelrequest = orderscancelrequest
30299	return c
30300}
30301
30302// Fields allows partial responses to be retrieved. See
30303// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30304// for more information.
30305func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
30306	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30307	return c
30308}
30309
30310// Context sets the context to be used in this call's Do method. Any
30311// pending HTTP request will be aborted if the provided context is
30312// canceled.
30313func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
30314	c.ctx_ = ctx
30315	return c
30316}
30317
30318// Header returns an http.Header that can be modified by the caller to
30319// add HTTP headers to the request.
30320func (c *OrdersCancelCall) Header() http.Header {
30321	if c.header_ == nil {
30322		c.header_ = make(http.Header)
30323	}
30324	return c.header_
30325}
30326
30327func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
30328	reqHeaders := make(http.Header)
30329	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30330	for k, v := range c.header_ {
30331		reqHeaders[k] = v
30332	}
30333	reqHeaders.Set("User-Agent", c.s.userAgent())
30334	var body io.Reader = nil
30335	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
30336	if err != nil {
30337		return nil, err
30338	}
30339	reqHeaders.Set("Content-Type", "application/json")
30340	c.urlParams_.Set("alt", alt)
30341	c.urlParams_.Set("prettyPrint", "false")
30342	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancel")
30343	urls += "?" + c.urlParams_.Encode()
30344	req, err := http.NewRequest("POST", urls, body)
30345	if err != nil {
30346		return nil, err
30347	}
30348	req.Header = reqHeaders
30349	googleapi.Expand(req.URL, map[string]string{
30350		"merchantId": strconv.FormatUint(c.merchantId, 10),
30351		"orderId":    c.orderId,
30352	})
30353	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30354}
30355
30356// Do executes the "content.orders.cancel" call.
30357// Exactly one of *OrdersCancelResponse or error will be non-nil. Any
30358// non-2xx status code is an error. Response headers are in either
30359// *OrdersCancelResponse.ServerResponse.Header or (if a response was
30360// returned at all) in error.(*googleapi.Error).Header. Use
30361// googleapi.IsNotModified to check whether the returned error was
30362// because http.StatusNotModified was returned.
30363func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
30364	gensupport.SetOptions(c.urlParams_, opts...)
30365	res, err := c.doRequest("json")
30366	if res != nil && res.StatusCode == http.StatusNotModified {
30367		if res.Body != nil {
30368			res.Body.Close()
30369		}
30370		return nil, &googleapi.Error{
30371			Code:   res.StatusCode,
30372			Header: res.Header,
30373		}
30374	}
30375	if err != nil {
30376		return nil, err
30377	}
30378	defer googleapi.CloseBody(res)
30379	if err := googleapi.CheckResponse(res); err != nil {
30380		return nil, err
30381	}
30382	ret := &OrdersCancelResponse{
30383		ServerResponse: googleapi.ServerResponse{
30384			Header:         res.Header,
30385			HTTPStatusCode: res.StatusCode,
30386		},
30387	}
30388	target := &ret
30389	if err := gensupport.DecodeResponse(target, res); err != nil {
30390		return nil, err
30391	}
30392	return ret, nil
30393	// {
30394	//   "description": "Cancels all line items in an order, making a full refund.",
30395	//   "flatPath": "{merchantId}/orders/{orderId}/cancel",
30396	//   "httpMethod": "POST",
30397	//   "id": "content.orders.cancel",
30398	//   "parameterOrder": [
30399	//     "merchantId",
30400	//     "orderId"
30401	//   ],
30402	//   "parameters": {
30403	//     "merchantId": {
30404	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30405	//       "format": "uint64",
30406	//       "location": "path",
30407	//       "required": true,
30408	//       "type": "string"
30409	//     },
30410	//     "orderId": {
30411	//       "description": "The ID of the order to cancel.",
30412	//       "location": "path",
30413	//       "required": true,
30414	//       "type": "string"
30415	//     }
30416	//   },
30417	//   "path": "{merchantId}/orders/{orderId}/cancel",
30418	//   "request": {
30419	//     "$ref": "OrdersCancelRequest"
30420	//   },
30421	//   "response": {
30422	//     "$ref": "OrdersCancelResponse"
30423	//   },
30424	//   "scopes": [
30425	//     "https://www.googleapis.com/auth/content"
30426	//   ]
30427	// }
30428
30429}
30430
30431// method id "content.orders.cancellineitem":
30432
30433type OrdersCancellineitemCall struct {
30434	s                           *APIService
30435	merchantId                  uint64
30436	orderId                     string
30437	orderscancellineitemrequest *OrdersCancelLineItemRequest
30438	urlParams_                  gensupport.URLParams
30439	ctx_                        context.Context
30440	header_                     http.Header
30441}
30442
30443// Cancellineitem: Cancels a line item, making a full refund.
30444//
30445// - merchantId: The ID of the account that manages the order. This
30446//   cannot be a multi-client account.
30447// - orderId: The ID of the order.
30448func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
30449	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30450	c.merchantId = merchantId
30451	c.orderId = orderId
30452	c.orderscancellineitemrequest = orderscancellineitemrequest
30453	return c
30454}
30455
30456// Fields allows partial responses to be retrieved. See
30457// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30458// for more information.
30459func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
30460	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30461	return c
30462}
30463
30464// Context sets the context to be used in this call's Do method. Any
30465// pending HTTP request will be aborted if the provided context is
30466// canceled.
30467func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
30468	c.ctx_ = ctx
30469	return c
30470}
30471
30472// Header returns an http.Header that can be modified by the caller to
30473// add HTTP headers to the request.
30474func (c *OrdersCancellineitemCall) Header() http.Header {
30475	if c.header_ == nil {
30476		c.header_ = make(http.Header)
30477	}
30478	return c.header_
30479}
30480
30481func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
30482	reqHeaders := make(http.Header)
30483	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30484	for k, v := range c.header_ {
30485		reqHeaders[k] = v
30486	}
30487	reqHeaders.Set("User-Agent", c.s.userAgent())
30488	var body io.Reader = nil
30489	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
30490	if err != nil {
30491		return nil, err
30492	}
30493	reqHeaders.Set("Content-Type", "application/json")
30494	c.urlParams_.Set("alt", alt)
30495	c.urlParams_.Set("prettyPrint", "false")
30496	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancelLineItem")
30497	urls += "?" + c.urlParams_.Encode()
30498	req, err := http.NewRequest("POST", urls, body)
30499	if err != nil {
30500		return nil, err
30501	}
30502	req.Header = reqHeaders
30503	googleapi.Expand(req.URL, map[string]string{
30504		"merchantId": strconv.FormatUint(c.merchantId, 10),
30505		"orderId":    c.orderId,
30506	})
30507	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30508}
30509
30510// Do executes the "content.orders.cancellineitem" call.
30511// Exactly one of *OrdersCancelLineItemResponse or error will be
30512// non-nil. Any non-2xx status code is an error. Response headers are in
30513// either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
30514// response was returned at all) in error.(*googleapi.Error).Header. Use
30515// googleapi.IsNotModified to check whether the returned error was
30516// because http.StatusNotModified was returned.
30517func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
30518	gensupport.SetOptions(c.urlParams_, opts...)
30519	res, err := c.doRequest("json")
30520	if res != nil && res.StatusCode == http.StatusNotModified {
30521		if res.Body != nil {
30522			res.Body.Close()
30523		}
30524		return nil, &googleapi.Error{
30525			Code:   res.StatusCode,
30526			Header: res.Header,
30527		}
30528	}
30529	if err != nil {
30530		return nil, err
30531	}
30532	defer googleapi.CloseBody(res)
30533	if err := googleapi.CheckResponse(res); err != nil {
30534		return nil, err
30535	}
30536	ret := &OrdersCancelLineItemResponse{
30537		ServerResponse: googleapi.ServerResponse{
30538			Header:         res.Header,
30539			HTTPStatusCode: res.StatusCode,
30540		},
30541	}
30542	target := &ret
30543	if err := gensupport.DecodeResponse(target, res); err != nil {
30544		return nil, err
30545	}
30546	return ret, nil
30547	// {
30548	//   "description": "Cancels a line item, making a full refund.",
30549	//   "flatPath": "{merchantId}/orders/{orderId}/cancelLineItem",
30550	//   "httpMethod": "POST",
30551	//   "id": "content.orders.cancellineitem",
30552	//   "parameterOrder": [
30553	//     "merchantId",
30554	//     "orderId"
30555	//   ],
30556	//   "parameters": {
30557	//     "merchantId": {
30558	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30559	//       "format": "uint64",
30560	//       "location": "path",
30561	//       "required": true,
30562	//       "type": "string"
30563	//     },
30564	//     "orderId": {
30565	//       "description": "The ID of the order.",
30566	//       "location": "path",
30567	//       "required": true,
30568	//       "type": "string"
30569	//     }
30570	//   },
30571	//   "path": "{merchantId}/orders/{orderId}/cancelLineItem",
30572	//   "request": {
30573	//     "$ref": "OrdersCancelLineItemRequest"
30574	//   },
30575	//   "response": {
30576	//     "$ref": "OrdersCancelLineItemResponse"
30577	//   },
30578	//   "scopes": [
30579	//     "https://www.googleapis.com/auth/content"
30580	//   ]
30581	// }
30582
30583}
30584
30585// method id "content.orders.canceltestorderbycustomer":
30586
30587type OrdersCanceltestorderbycustomerCall struct {
30588	s                                      *APIService
30589	merchantId                             uint64
30590	orderId                                string
30591	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
30592	urlParams_                             gensupport.URLParams
30593	ctx_                                   context.Context
30594	header_                                http.Header
30595}
30596
30597// Canceltestorderbycustomer: Sandbox only. Cancels a test order for
30598// customer-initiated cancellation.
30599//
30600// - merchantId: The ID of the account that manages the order. This
30601//   cannot be a multi-client account.
30602// - orderId: The ID of the test order to cancel.
30603func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
30604	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30605	c.merchantId = merchantId
30606	c.orderId = orderId
30607	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
30608	return c
30609}
30610
30611// Fields allows partial responses to be retrieved. See
30612// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30613// for more information.
30614func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
30615	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30616	return c
30617}
30618
30619// Context sets the context to be used in this call's Do method. Any
30620// pending HTTP request will be aborted if the provided context is
30621// canceled.
30622func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
30623	c.ctx_ = ctx
30624	return c
30625}
30626
30627// Header returns an http.Header that can be modified by the caller to
30628// add HTTP headers to the request.
30629func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
30630	if c.header_ == nil {
30631		c.header_ = make(http.Header)
30632	}
30633	return c.header_
30634}
30635
30636func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
30637	reqHeaders := make(http.Header)
30638	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30639	for k, v := range c.header_ {
30640		reqHeaders[k] = v
30641	}
30642	reqHeaders.Set("User-Agent", c.s.userAgent())
30643	var body io.Reader = nil
30644	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
30645	if err != nil {
30646		return nil, err
30647	}
30648	reqHeaders.Set("Content-Type", "application/json")
30649	c.urlParams_.Set("alt", alt)
30650	c.urlParams_.Set("prettyPrint", "false")
30651	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/cancelByCustomer")
30652	urls += "?" + c.urlParams_.Encode()
30653	req, err := http.NewRequest("POST", urls, body)
30654	if err != nil {
30655		return nil, err
30656	}
30657	req.Header = reqHeaders
30658	googleapi.Expand(req.URL, map[string]string{
30659		"merchantId": strconv.FormatUint(c.merchantId, 10),
30660		"orderId":    c.orderId,
30661	})
30662	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30663}
30664
30665// Do executes the "content.orders.canceltestorderbycustomer" call.
30666// Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
30667// be non-nil. Any non-2xx status code is an error. Response headers are
30668// in either
30669// *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
30670// a response was returned at all) in error.(*googleapi.Error).Header.
30671// Use googleapi.IsNotModified to check whether the returned error was
30672// because http.StatusNotModified was returned.
30673func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
30674	gensupport.SetOptions(c.urlParams_, opts...)
30675	res, err := c.doRequest("json")
30676	if res != nil && res.StatusCode == http.StatusNotModified {
30677		if res.Body != nil {
30678			res.Body.Close()
30679		}
30680		return nil, &googleapi.Error{
30681			Code:   res.StatusCode,
30682			Header: res.Header,
30683		}
30684	}
30685	if err != nil {
30686		return nil, err
30687	}
30688	defer googleapi.CloseBody(res)
30689	if err := googleapi.CheckResponse(res); err != nil {
30690		return nil, err
30691	}
30692	ret := &OrdersCancelTestOrderByCustomerResponse{
30693		ServerResponse: googleapi.ServerResponse{
30694			Header:         res.Header,
30695			HTTPStatusCode: res.StatusCode,
30696		},
30697	}
30698	target := &ret
30699	if err := gensupport.DecodeResponse(target, res); err != nil {
30700		return nil, err
30701	}
30702	return ret, nil
30703	// {
30704	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
30705	//   "flatPath": "{merchantId}/testorders/{orderId}/cancelByCustomer",
30706	//   "httpMethod": "POST",
30707	//   "id": "content.orders.canceltestorderbycustomer",
30708	//   "parameterOrder": [
30709	//     "merchantId",
30710	//     "orderId"
30711	//   ],
30712	//   "parameters": {
30713	//     "merchantId": {
30714	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30715	//       "format": "uint64",
30716	//       "location": "path",
30717	//       "required": true,
30718	//       "type": "string"
30719	//     },
30720	//     "orderId": {
30721	//       "description": "The ID of the test order to cancel.",
30722	//       "location": "path",
30723	//       "required": true,
30724	//       "type": "string"
30725	//     }
30726	//   },
30727	//   "path": "{merchantId}/testorders/{orderId}/cancelByCustomer",
30728	//   "request": {
30729	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
30730	//   },
30731	//   "response": {
30732	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
30733	//   },
30734	//   "scopes": [
30735	//     "https://www.googleapis.com/auth/content"
30736	//   ]
30737	// }
30738
30739}
30740
30741// method id "content.orders.captureOrder":
30742
30743type OrdersCaptureOrderCall struct {
30744	s                   *APIService
30745	merchantId          int64
30746	orderId             string
30747	captureorderrequest *CaptureOrderRequest
30748	urlParams_          gensupport.URLParams
30749	ctx_                context.Context
30750	header_             http.Header
30751}
30752
30753// CaptureOrder: Capture funds from the customer for the current order
30754// total. This method should be called after the merchant verifies that
30755// they are able and ready to start shipping the order. This method
30756// blocks until a response is received from the payment processsor. If
30757// this method succeeds, the merchant is guaranteed to receive funds for
30758// the order after shipment. If the request fails, it can be retried or
30759// the order may be cancelled. This method cannot be called after the
30760// entire order is already shipped.
30761//
30762// - merchantId: The ID of the account that manages the order. This
30763//   cannot be a multi-client account.
30764// - orderId: The ID of the Order.
30765func (r *OrdersService) CaptureOrder(merchantId int64, orderId string, captureorderrequest *CaptureOrderRequest) *OrdersCaptureOrderCall {
30766	c := &OrdersCaptureOrderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30767	c.merchantId = merchantId
30768	c.orderId = orderId
30769	c.captureorderrequest = captureorderrequest
30770	return c
30771}
30772
30773// Fields allows partial responses to be retrieved. See
30774// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30775// for more information.
30776func (c *OrdersCaptureOrderCall) Fields(s ...googleapi.Field) *OrdersCaptureOrderCall {
30777	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30778	return c
30779}
30780
30781// Context sets the context to be used in this call's Do method. Any
30782// pending HTTP request will be aborted if the provided context is
30783// canceled.
30784func (c *OrdersCaptureOrderCall) Context(ctx context.Context) *OrdersCaptureOrderCall {
30785	c.ctx_ = ctx
30786	return c
30787}
30788
30789// Header returns an http.Header that can be modified by the caller to
30790// add HTTP headers to the request.
30791func (c *OrdersCaptureOrderCall) Header() http.Header {
30792	if c.header_ == nil {
30793		c.header_ = make(http.Header)
30794	}
30795	return c.header_
30796}
30797
30798func (c *OrdersCaptureOrderCall) doRequest(alt string) (*http.Response, error) {
30799	reqHeaders := make(http.Header)
30800	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30801	for k, v := range c.header_ {
30802		reqHeaders[k] = v
30803	}
30804	reqHeaders.Set("User-Agent", c.s.userAgent())
30805	var body io.Reader = nil
30806	body, err := googleapi.WithoutDataWrapper.JSONReader(c.captureorderrequest)
30807	if err != nil {
30808		return nil, err
30809	}
30810	reqHeaders.Set("Content-Type", "application/json")
30811	c.urlParams_.Set("alt", alt)
30812	c.urlParams_.Set("prettyPrint", "false")
30813	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/captureOrder")
30814	urls += "?" + c.urlParams_.Encode()
30815	req, err := http.NewRequest("POST", urls, body)
30816	if err != nil {
30817		return nil, err
30818	}
30819	req.Header = reqHeaders
30820	googleapi.Expand(req.URL, map[string]string{
30821		"merchantId": strconv.FormatInt(c.merchantId, 10),
30822		"orderId":    c.orderId,
30823	})
30824	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30825}
30826
30827// Do executes the "content.orders.captureOrder" call.
30828// Exactly one of *CaptureOrderResponse or error will be non-nil. Any
30829// non-2xx status code is an error. Response headers are in either
30830// *CaptureOrderResponse.ServerResponse.Header or (if a response was
30831// returned at all) in error.(*googleapi.Error).Header. Use
30832// googleapi.IsNotModified to check whether the returned error was
30833// because http.StatusNotModified was returned.
30834func (c *OrdersCaptureOrderCall) Do(opts ...googleapi.CallOption) (*CaptureOrderResponse, error) {
30835	gensupport.SetOptions(c.urlParams_, opts...)
30836	res, err := c.doRequest("json")
30837	if res != nil && res.StatusCode == http.StatusNotModified {
30838		if res.Body != nil {
30839			res.Body.Close()
30840		}
30841		return nil, &googleapi.Error{
30842			Code:   res.StatusCode,
30843			Header: res.Header,
30844		}
30845	}
30846	if err != nil {
30847		return nil, err
30848	}
30849	defer googleapi.CloseBody(res)
30850	if err := googleapi.CheckResponse(res); err != nil {
30851		return nil, err
30852	}
30853	ret := &CaptureOrderResponse{
30854		ServerResponse: googleapi.ServerResponse{
30855			Header:         res.Header,
30856			HTTPStatusCode: res.StatusCode,
30857		},
30858	}
30859	target := &ret
30860	if err := gensupport.DecodeResponse(target, res); err != nil {
30861		return nil, err
30862	}
30863	return ret, nil
30864	// {
30865	//   "description": "Capture funds from the customer for the current order total. This method should be called after the merchant verifies that they are able and ready to start shipping the order. This method blocks until a response is received from the payment processsor. If this method succeeds, the merchant is guaranteed to receive funds for the order after shipment. If the request fails, it can be retried or the order may be cancelled. This method cannot be called after the entire order is already shipped.",
30866	//   "flatPath": "{merchantId}/orders/{orderId}/captureOrder",
30867	//   "httpMethod": "POST",
30868	//   "id": "content.orders.captureOrder",
30869	//   "parameterOrder": [
30870	//     "merchantId",
30871	//     "orderId"
30872	//   ],
30873	//   "parameters": {
30874	//     "merchantId": {
30875	//       "description": "Required. The ID of the account that manages the order. This cannot be a multi-client account.",
30876	//       "format": "int64",
30877	//       "location": "path",
30878	//       "required": true,
30879	//       "type": "string"
30880	//     },
30881	//     "orderId": {
30882	//       "description": "Required. The ID of the Order.",
30883	//       "location": "path",
30884	//       "required": true,
30885	//       "type": "string"
30886	//     }
30887	//   },
30888	//   "path": "{merchantId}/orders/{orderId}/captureOrder",
30889	//   "request": {
30890	//     "$ref": "CaptureOrderRequest"
30891	//   },
30892	//   "response": {
30893	//     "$ref": "CaptureOrderResponse"
30894	//   },
30895	//   "scopes": [
30896	//     "https://www.googleapis.com/auth/content"
30897	//   ]
30898	// }
30899
30900}
30901
30902// method id "content.orders.createtestorder":
30903
30904type OrdersCreatetestorderCall struct {
30905	s                            *APIService
30906	merchantId                   uint64
30907	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
30908	urlParams_                   gensupport.URLParams
30909	ctx_                         context.Context
30910	header_                      http.Header
30911}
30912
30913// Createtestorder: Sandbox only. Creates a test order.
30914//
30915// - merchantId: The ID of the account that should manage the order.
30916//   This cannot be a multi-client account.
30917func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
30918	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30919	c.merchantId = merchantId
30920	c.orderscreatetestorderrequest = orderscreatetestorderrequest
30921	return c
30922}
30923
30924// Fields allows partial responses to be retrieved. See
30925// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30926// for more information.
30927func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
30928	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30929	return c
30930}
30931
30932// Context sets the context to be used in this call's Do method. Any
30933// pending HTTP request will be aborted if the provided context is
30934// canceled.
30935func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
30936	c.ctx_ = ctx
30937	return c
30938}
30939
30940// Header returns an http.Header that can be modified by the caller to
30941// add HTTP headers to the request.
30942func (c *OrdersCreatetestorderCall) Header() http.Header {
30943	if c.header_ == nil {
30944		c.header_ = make(http.Header)
30945	}
30946	return c.header_
30947}
30948
30949func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
30950	reqHeaders := make(http.Header)
30951	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30952	for k, v := range c.header_ {
30953		reqHeaders[k] = v
30954	}
30955	reqHeaders.Set("User-Agent", c.s.userAgent())
30956	var body io.Reader = nil
30957	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
30958	if err != nil {
30959		return nil, err
30960	}
30961	reqHeaders.Set("Content-Type", "application/json")
30962	c.urlParams_.Set("alt", alt)
30963	c.urlParams_.Set("prettyPrint", "false")
30964	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders")
30965	urls += "?" + c.urlParams_.Encode()
30966	req, err := http.NewRequest("POST", urls, body)
30967	if err != nil {
30968		return nil, err
30969	}
30970	req.Header = reqHeaders
30971	googleapi.Expand(req.URL, map[string]string{
30972		"merchantId": strconv.FormatUint(c.merchantId, 10),
30973	})
30974	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30975}
30976
30977// Do executes the "content.orders.createtestorder" call.
30978// Exactly one of *OrdersCreateTestOrderResponse or error will be
30979// non-nil. Any non-2xx status code is an error. Response headers are in
30980// either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
30981// response was returned at all) in error.(*googleapi.Error).Header. Use
30982// googleapi.IsNotModified to check whether the returned error was
30983// because http.StatusNotModified was returned.
30984func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
30985	gensupport.SetOptions(c.urlParams_, opts...)
30986	res, err := c.doRequest("json")
30987	if res != nil && res.StatusCode == http.StatusNotModified {
30988		if res.Body != nil {
30989			res.Body.Close()
30990		}
30991		return nil, &googleapi.Error{
30992			Code:   res.StatusCode,
30993			Header: res.Header,
30994		}
30995	}
30996	if err != nil {
30997		return nil, err
30998	}
30999	defer googleapi.CloseBody(res)
31000	if err := googleapi.CheckResponse(res); err != nil {
31001		return nil, err
31002	}
31003	ret := &OrdersCreateTestOrderResponse{
31004		ServerResponse: googleapi.ServerResponse{
31005			Header:         res.Header,
31006			HTTPStatusCode: res.StatusCode,
31007		},
31008	}
31009	target := &ret
31010	if err := gensupport.DecodeResponse(target, res); err != nil {
31011		return nil, err
31012	}
31013	return ret, nil
31014	// {
31015	//   "description": "Sandbox only. Creates a test order.",
31016	//   "flatPath": "{merchantId}/testorders",
31017	//   "httpMethod": "POST",
31018	//   "id": "content.orders.createtestorder",
31019	//   "parameterOrder": [
31020	//     "merchantId"
31021	//   ],
31022	//   "parameters": {
31023	//     "merchantId": {
31024	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
31025	//       "format": "uint64",
31026	//       "location": "path",
31027	//       "required": true,
31028	//       "type": "string"
31029	//     }
31030	//   },
31031	//   "path": "{merchantId}/testorders",
31032	//   "request": {
31033	//     "$ref": "OrdersCreateTestOrderRequest"
31034	//   },
31035	//   "response": {
31036	//     "$ref": "OrdersCreateTestOrderResponse"
31037	//   },
31038	//   "scopes": [
31039	//     "https://www.googleapis.com/auth/content"
31040	//   ]
31041	// }
31042
31043}
31044
31045// method id "content.orders.createtestreturn":
31046
31047type OrdersCreatetestreturnCall struct {
31048	s                             *APIService
31049	merchantId                    uint64
31050	orderId                       string
31051	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
31052	urlParams_                    gensupport.URLParams
31053	ctx_                          context.Context
31054	header_                       http.Header
31055}
31056
31057// Createtestreturn: Sandbox only. Creates a test return.
31058//
31059// - merchantId: The ID of the account that manages the order. This
31060//   cannot be a multi-client account.
31061// - orderId: The ID of the order.
31062func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
31063	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31064	c.merchantId = merchantId
31065	c.orderId = orderId
31066	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
31067	return c
31068}
31069
31070// Fields allows partial responses to be retrieved. See
31071// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31072// for more information.
31073func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
31074	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31075	return c
31076}
31077
31078// Context sets the context to be used in this call's Do method. Any
31079// pending HTTP request will be aborted if the provided context is
31080// canceled.
31081func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
31082	c.ctx_ = ctx
31083	return c
31084}
31085
31086// Header returns an http.Header that can be modified by the caller to
31087// add HTTP headers to the request.
31088func (c *OrdersCreatetestreturnCall) Header() http.Header {
31089	if c.header_ == nil {
31090		c.header_ = make(http.Header)
31091	}
31092	return c.header_
31093}
31094
31095func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
31096	reqHeaders := make(http.Header)
31097	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31098	for k, v := range c.header_ {
31099		reqHeaders[k] = v
31100	}
31101	reqHeaders.Set("User-Agent", c.s.userAgent())
31102	var body io.Reader = nil
31103	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
31104	if err != nil {
31105		return nil, err
31106	}
31107	reqHeaders.Set("Content-Type", "application/json")
31108	c.urlParams_.Set("alt", alt)
31109	c.urlParams_.Set("prettyPrint", "false")
31110	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/testreturn")
31111	urls += "?" + c.urlParams_.Encode()
31112	req, err := http.NewRequest("POST", urls, body)
31113	if err != nil {
31114		return nil, err
31115	}
31116	req.Header = reqHeaders
31117	googleapi.Expand(req.URL, map[string]string{
31118		"merchantId": strconv.FormatUint(c.merchantId, 10),
31119		"orderId":    c.orderId,
31120	})
31121	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31122}
31123
31124// Do executes the "content.orders.createtestreturn" call.
31125// Exactly one of *OrdersCreateTestReturnResponse or error will be
31126// non-nil. Any non-2xx status code is an error. Response headers are in
31127// either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
31128// response was returned at all) in error.(*googleapi.Error).Header. Use
31129// googleapi.IsNotModified to check whether the returned error was
31130// because http.StatusNotModified was returned.
31131func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
31132	gensupport.SetOptions(c.urlParams_, opts...)
31133	res, err := c.doRequest("json")
31134	if res != nil && res.StatusCode == http.StatusNotModified {
31135		if res.Body != nil {
31136			res.Body.Close()
31137		}
31138		return nil, &googleapi.Error{
31139			Code:   res.StatusCode,
31140			Header: res.Header,
31141		}
31142	}
31143	if err != nil {
31144		return nil, err
31145	}
31146	defer googleapi.CloseBody(res)
31147	if err := googleapi.CheckResponse(res); err != nil {
31148		return nil, err
31149	}
31150	ret := &OrdersCreateTestReturnResponse{
31151		ServerResponse: googleapi.ServerResponse{
31152			Header:         res.Header,
31153			HTTPStatusCode: res.StatusCode,
31154		},
31155	}
31156	target := &ret
31157	if err := gensupport.DecodeResponse(target, res); err != nil {
31158		return nil, err
31159	}
31160	return ret, nil
31161	// {
31162	//   "description": "Sandbox only. Creates a test return.",
31163	//   "flatPath": "{merchantId}/orders/{orderId}/testreturn",
31164	//   "httpMethod": "POST",
31165	//   "id": "content.orders.createtestreturn",
31166	//   "parameterOrder": [
31167	//     "merchantId",
31168	//     "orderId"
31169	//   ],
31170	//   "parameters": {
31171	//     "merchantId": {
31172	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31173	//       "format": "uint64",
31174	//       "location": "path",
31175	//       "required": true,
31176	//       "type": "string"
31177	//     },
31178	//     "orderId": {
31179	//       "description": "The ID of the order.",
31180	//       "location": "path",
31181	//       "required": true,
31182	//       "type": "string"
31183	//     }
31184	//   },
31185	//   "path": "{merchantId}/orders/{orderId}/testreturn",
31186	//   "request": {
31187	//     "$ref": "OrdersCreateTestReturnRequest"
31188	//   },
31189	//   "response": {
31190	//     "$ref": "OrdersCreateTestReturnResponse"
31191	//   },
31192	//   "scopes": [
31193	//     "https://www.googleapis.com/auth/content"
31194	//   ]
31195	// }
31196
31197}
31198
31199// method id "content.orders.get":
31200
31201type OrdersGetCall struct {
31202	s            *APIService
31203	merchantId   uint64
31204	orderId      string
31205	urlParams_   gensupport.URLParams
31206	ifNoneMatch_ string
31207	ctx_         context.Context
31208	header_      http.Header
31209}
31210
31211// Get: Retrieves an order from your Merchant Center account.
31212//
31213// - merchantId: The ID of the account that manages the order. This
31214//   cannot be a multi-client account.
31215// - orderId: The ID of the order.
31216func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
31217	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31218	c.merchantId = merchantId
31219	c.orderId = orderId
31220	return c
31221}
31222
31223// Fields allows partial responses to be retrieved. See
31224// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31225// for more information.
31226func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
31227	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31228	return c
31229}
31230
31231// IfNoneMatch sets the optional parameter which makes the operation
31232// fail if the object's ETag matches the given value. This is useful for
31233// getting updates only after the object has changed since the last
31234// request. Use googleapi.IsNotModified to check whether the response
31235// error from Do is the result of In-None-Match.
31236func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
31237	c.ifNoneMatch_ = entityTag
31238	return c
31239}
31240
31241// Context sets the context to be used in this call's Do method. Any
31242// pending HTTP request will be aborted if the provided context is
31243// canceled.
31244func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
31245	c.ctx_ = ctx
31246	return c
31247}
31248
31249// Header returns an http.Header that can be modified by the caller to
31250// add HTTP headers to the request.
31251func (c *OrdersGetCall) Header() http.Header {
31252	if c.header_ == nil {
31253		c.header_ = make(http.Header)
31254	}
31255	return c.header_
31256}
31257
31258func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
31259	reqHeaders := make(http.Header)
31260	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31261	for k, v := range c.header_ {
31262		reqHeaders[k] = v
31263	}
31264	reqHeaders.Set("User-Agent", c.s.userAgent())
31265	if c.ifNoneMatch_ != "" {
31266		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31267	}
31268	var body io.Reader = nil
31269	c.urlParams_.Set("alt", alt)
31270	c.urlParams_.Set("prettyPrint", "false")
31271	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}")
31272	urls += "?" + c.urlParams_.Encode()
31273	req, err := http.NewRequest("GET", urls, body)
31274	if err != nil {
31275		return nil, err
31276	}
31277	req.Header = reqHeaders
31278	googleapi.Expand(req.URL, map[string]string{
31279		"merchantId": strconv.FormatUint(c.merchantId, 10),
31280		"orderId":    c.orderId,
31281	})
31282	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31283}
31284
31285// Do executes the "content.orders.get" call.
31286// Exactly one of *Order or error will be non-nil. Any non-2xx status
31287// code is an error. Response headers are in either
31288// *Order.ServerResponse.Header or (if a response was returned at all)
31289// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
31290// check whether the returned error was because http.StatusNotModified
31291// was returned.
31292func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
31293	gensupport.SetOptions(c.urlParams_, opts...)
31294	res, err := c.doRequest("json")
31295	if res != nil && res.StatusCode == http.StatusNotModified {
31296		if res.Body != nil {
31297			res.Body.Close()
31298		}
31299		return nil, &googleapi.Error{
31300			Code:   res.StatusCode,
31301			Header: res.Header,
31302		}
31303	}
31304	if err != nil {
31305		return nil, err
31306	}
31307	defer googleapi.CloseBody(res)
31308	if err := googleapi.CheckResponse(res); err != nil {
31309		return nil, err
31310	}
31311	ret := &Order{
31312		ServerResponse: googleapi.ServerResponse{
31313			Header:         res.Header,
31314			HTTPStatusCode: res.StatusCode,
31315		},
31316	}
31317	target := &ret
31318	if err := gensupport.DecodeResponse(target, res); err != nil {
31319		return nil, err
31320	}
31321	return ret, nil
31322	// {
31323	//   "description": "Retrieves an order from your Merchant Center account.",
31324	//   "flatPath": "{merchantId}/orders/{orderId}",
31325	//   "httpMethod": "GET",
31326	//   "id": "content.orders.get",
31327	//   "parameterOrder": [
31328	//     "merchantId",
31329	//     "orderId"
31330	//   ],
31331	//   "parameters": {
31332	//     "merchantId": {
31333	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31334	//       "format": "uint64",
31335	//       "location": "path",
31336	//       "required": true,
31337	//       "type": "string"
31338	//     },
31339	//     "orderId": {
31340	//       "description": "The ID of the order.",
31341	//       "location": "path",
31342	//       "required": true,
31343	//       "type": "string"
31344	//     }
31345	//   },
31346	//   "path": "{merchantId}/orders/{orderId}",
31347	//   "response": {
31348	//     "$ref": "Order"
31349	//   },
31350	//   "scopes": [
31351	//     "https://www.googleapis.com/auth/content"
31352	//   ]
31353	// }
31354
31355}
31356
31357// method id "content.orders.getbymerchantorderid":
31358
31359type OrdersGetbymerchantorderidCall struct {
31360	s               *APIService
31361	merchantId      uint64
31362	merchantOrderId string
31363	urlParams_      gensupport.URLParams
31364	ifNoneMatch_    string
31365	ctx_            context.Context
31366	header_         http.Header
31367}
31368
31369// Getbymerchantorderid: Retrieves an order using merchant order ID.
31370//
31371// - merchantId: The ID of the account that manages the order. This
31372//   cannot be a multi-client account.
31373// - merchantOrderId: The merchant order ID to be looked for.
31374func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
31375	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31376	c.merchantId = merchantId
31377	c.merchantOrderId = merchantOrderId
31378	return c
31379}
31380
31381// Fields allows partial responses to be retrieved. See
31382// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31383// for more information.
31384func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
31385	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31386	return c
31387}
31388
31389// IfNoneMatch sets the optional parameter which makes the operation
31390// fail if the object's ETag matches the given value. This is useful for
31391// getting updates only after the object has changed since the last
31392// request. Use googleapi.IsNotModified to check whether the response
31393// error from Do is the result of In-None-Match.
31394func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
31395	c.ifNoneMatch_ = entityTag
31396	return c
31397}
31398
31399// Context sets the context to be used in this call's Do method. Any
31400// pending HTTP request will be aborted if the provided context is
31401// canceled.
31402func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
31403	c.ctx_ = ctx
31404	return c
31405}
31406
31407// Header returns an http.Header that can be modified by the caller to
31408// add HTTP headers to the request.
31409func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
31410	if c.header_ == nil {
31411		c.header_ = make(http.Header)
31412	}
31413	return c.header_
31414}
31415
31416func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
31417	reqHeaders := make(http.Header)
31418	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31419	for k, v := range c.header_ {
31420		reqHeaders[k] = v
31421	}
31422	reqHeaders.Set("User-Agent", c.s.userAgent())
31423	if c.ifNoneMatch_ != "" {
31424		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31425	}
31426	var body io.Reader = nil
31427	c.urlParams_.Set("alt", alt)
31428	c.urlParams_.Set("prettyPrint", "false")
31429	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordersbymerchantid/{merchantOrderId}")
31430	urls += "?" + c.urlParams_.Encode()
31431	req, err := http.NewRequest("GET", urls, body)
31432	if err != nil {
31433		return nil, err
31434	}
31435	req.Header = reqHeaders
31436	googleapi.Expand(req.URL, map[string]string{
31437		"merchantId":      strconv.FormatUint(c.merchantId, 10),
31438		"merchantOrderId": c.merchantOrderId,
31439	})
31440	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31441}
31442
31443// Do executes the "content.orders.getbymerchantorderid" call.
31444// Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
31445// non-nil. Any non-2xx status code is an error. Response headers are in
31446// either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
31447// (if a response was returned at all) in
31448// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31449// whether the returned error was because http.StatusNotModified was
31450// returned.
31451func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
31452	gensupport.SetOptions(c.urlParams_, opts...)
31453	res, err := c.doRequest("json")
31454	if res != nil && res.StatusCode == http.StatusNotModified {
31455		if res.Body != nil {
31456			res.Body.Close()
31457		}
31458		return nil, &googleapi.Error{
31459			Code:   res.StatusCode,
31460			Header: res.Header,
31461		}
31462	}
31463	if err != nil {
31464		return nil, err
31465	}
31466	defer googleapi.CloseBody(res)
31467	if err := googleapi.CheckResponse(res); err != nil {
31468		return nil, err
31469	}
31470	ret := &OrdersGetByMerchantOrderIdResponse{
31471		ServerResponse: googleapi.ServerResponse{
31472			Header:         res.Header,
31473			HTTPStatusCode: res.StatusCode,
31474		},
31475	}
31476	target := &ret
31477	if err := gensupport.DecodeResponse(target, res); err != nil {
31478		return nil, err
31479	}
31480	return ret, nil
31481	// {
31482	//   "description": "Retrieves an order using merchant order ID.",
31483	//   "flatPath": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
31484	//   "httpMethod": "GET",
31485	//   "id": "content.orders.getbymerchantorderid",
31486	//   "parameterOrder": [
31487	//     "merchantId",
31488	//     "merchantOrderId"
31489	//   ],
31490	//   "parameters": {
31491	//     "merchantId": {
31492	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31493	//       "format": "uint64",
31494	//       "location": "path",
31495	//       "required": true,
31496	//       "type": "string"
31497	//     },
31498	//     "merchantOrderId": {
31499	//       "description": "The merchant order ID to be looked for.",
31500	//       "location": "path",
31501	//       "required": true,
31502	//       "type": "string"
31503	//     }
31504	//   },
31505	//   "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
31506	//   "response": {
31507	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
31508	//   },
31509	//   "scopes": [
31510	//     "https://www.googleapis.com/auth/content"
31511	//   ]
31512	// }
31513
31514}
31515
31516// method id "content.orders.gettestordertemplate":
31517
31518type OrdersGettestordertemplateCall struct {
31519	s            *APIService
31520	merchantId   uint64
31521	templateName string
31522	urlParams_   gensupport.URLParams
31523	ifNoneMatch_ string
31524	ctx_         context.Context
31525	header_      http.Header
31526}
31527
31528// Gettestordertemplate: Sandbox only. Retrieves an order template that
31529// can be used to quickly create a new order in sandbox.
31530//
31531// - merchantId: The ID of the account that should manage the order.
31532//   This cannot be a multi-client account.
31533// - templateName: The name of the template to retrieve.
31534func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
31535	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31536	c.merchantId = merchantId
31537	c.templateName = templateName
31538	return c
31539}
31540
31541// Country sets the optional parameter "country": The country of the
31542// template to retrieve. Defaults to `US`.
31543func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
31544	c.urlParams_.Set("country", country)
31545	return c
31546}
31547
31548// Fields allows partial responses to be retrieved. See
31549// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31550// for more information.
31551func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
31552	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31553	return c
31554}
31555
31556// IfNoneMatch sets the optional parameter which makes the operation
31557// fail if the object's ETag matches the given value. This is useful for
31558// getting updates only after the object has changed since the last
31559// request. Use googleapi.IsNotModified to check whether the response
31560// error from Do is the result of In-None-Match.
31561func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
31562	c.ifNoneMatch_ = entityTag
31563	return c
31564}
31565
31566// Context sets the context to be used in this call's Do method. Any
31567// pending HTTP request will be aborted if the provided context is
31568// canceled.
31569func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
31570	c.ctx_ = ctx
31571	return c
31572}
31573
31574// Header returns an http.Header that can be modified by the caller to
31575// add HTTP headers to the request.
31576func (c *OrdersGettestordertemplateCall) Header() http.Header {
31577	if c.header_ == nil {
31578		c.header_ = make(http.Header)
31579	}
31580	return c.header_
31581}
31582
31583func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
31584	reqHeaders := make(http.Header)
31585	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31586	for k, v := range c.header_ {
31587		reqHeaders[k] = v
31588	}
31589	reqHeaders.Set("User-Agent", c.s.userAgent())
31590	if c.ifNoneMatch_ != "" {
31591		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31592	}
31593	var body io.Reader = nil
31594	c.urlParams_.Set("alt", alt)
31595	c.urlParams_.Set("prettyPrint", "false")
31596	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testordertemplates/{templateName}")
31597	urls += "?" + c.urlParams_.Encode()
31598	req, err := http.NewRequest("GET", urls, body)
31599	if err != nil {
31600		return nil, err
31601	}
31602	req.Header = reqHeaders
31603	googleapi.Expand(req.URL, map[string]string{
31604		"merchantId":   strconv.FormatUint(c.merchantId, 10),
31605		"templateName": c.templateName,
31606	})
31607	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31608}
31609
31610// Do executes the "content.orders.gettestordertemplate" call.
31611// Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
31612// non-nil. Any non-2xx status code is an error. Response headers are in
31613// either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
31614// (if a response was returned at all) in
31615// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31616// whether the returned error was because http.StatusNotModified was
31617// returned.
31618func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
31619	gensupport.SetOptions(c.urlParams_, opts...)
31620	res, err := c.doRequest("json")
31621	if res != nil && res.StatusCode == http.StatusNotModified {
31622		if res.Body != nil {
31623			res.Body.Close()
31624		}
31625		return nil, &googleapi.Error{
31626			Code:   res.StatusCode,
31627			Header: res.Header,
31628		}
31629	}
31630	if err != nil {
31631		return nil, err
31632	}
31633	defer googleapi.CloseBody(res)
31634	if err := googleapi.CheckResponse(res); err != nil {
31635		return nil, err
31636	}
31637	ret := &OrdersGetTestOrderTemplateResponse{
31638		ServerResponse: googleapi.ServerResponse{
31639			Header:         res.Header,
31640			HTTPStatusCode: res.StatusCode,
31641		},
31642	}
31643	target := &ret
31644	if err := gensupport.DecodeResponse(target, res); err != nil {
31645		return nil, err
31646	}
31647	return ret, nil
31648	// {
31649	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
31650	//   "flatPath": "{merchantId}/testordertemplates/{templateName}",
31651	//   "httpMethod": "GET",
31652	//   "id": "content.orders.gettestordertemplate",
31653	//   "parameterOrder": [
31654	//     "merchantId",
31655	//     "templateName"
31656	//   ],
31657	//   "parameters": {
31658	//     "country": {
31659	//       "description": "The country of the template to retrieve. Defaults to `US`.",
31660	//       "location": "query",
31661	//       "type": "string"
31662	//     },
31663	//     "merchantId": {
31664	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
31665	//       "format": "uint64",
31666	//       "location": "path",
31667	//       "required": true,
31668	//       "type": "string"
31669	//     },
31670	//     "templateName": {
31671	//       "description": "The name of the template to retrieve.",
31672	//       "enum": [
31673	//         "TEMPLATE1",
31674	//         "TEMPLATE2",
31675	//         "TEMPLATE1A",
31676	//         "TEMPLATE1B",
31677	//         "TEMPLATE3",
31678	//         "TEMPLATE4"
31679	//       ],
31680	//       "enumDescriptions": [
31681	//         "Get `template1`.",
31682	//         "Get `template2`.",
31683	//         "Get `template1A`.",
31684	//         "Get `template1B`.",
31685	//         "Get `template3`.",
31686	//         "Get `template4`."
31687	//       ],
31688	//       "location": "path",
31689	//       "required": true,
31690	//       "type": "string"
31691	//     }
31692	//   },
31693	//   "path": "{merchantId}/testordertemplates/{templateName}",
31694	//   "response": {
31695	//     "$ref": "OrdersGetTestOrderTemplateResponse"
31696	//   },
31697	//   "scopes": [
31698	//     "https://www.googleapis.com/auth/content"
31699	//   ]
31700	// }
31701
31702}
31703
31704// method id "content.orders.instorerefundlineitem":
31705
31706type OrdersInstorerefundlineitemCall struct {
31707	s                                  *APIService
31708	merchantId                         uint64
31709	orderId                            string
31710	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
31711	urlParams_                         gensupport.URLParams
31712	ctx_                               context.Context
31713	header_                            http.Header
31714}
31715
31716// Instorerefundlineitem: Deprecated. Notifies that item return and
31717// refund was handled directly by merchant outside of Google payments
31718// processing (e.g. cash refund done in store). Note: We recommend
31719// calling the returnrefundlineitem method to refund in-store returns.
31720// We will issue the refund directly to the customer. This helps to
31721// prevent possible differences arising between merchant and Google
31722// transaction records. We also recommend having the point of sale
31723// system communicate with Google to ensure that customers do not
31724// receive a double refund by first refunding via Google then via an
31725// in-store return.
31726//
31727// - merchantId: The ID of the account that manages the order. This
31728//   cannot be a multi-client account.
31729// - orderId: The ID of the order.
31730func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
31731	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31732	c.merchantId = merchantId
31733	c.orderId = orderId
31734	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
31735	return c
31736}
31737
31738// Fields allows partial responses to be retrieved. See
31739// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31740// for more information.
31741func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
31742	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31743	return c
31744}
31745
31746// Context sets the context to be used in this call's Do method. Any
31747// pending HTTP request will be aborted if the provided context is
31748// canceled.
31749func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
31750	c.ctx_ = ctx
31751	return c
31752}
31753
31754// Header returns an http.Header that can be modified by the caller to
31755// add HTTP headers to the request.
31756func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
31757	if c.header_ == nil {
31758		c.header_ = make(http.Header)
31759	}
31760	return c.header_
31761}
31762
31763func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
31764	reqHeaders := make(http.Header)
31765	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31766	for k, v := range c.header_ {
31767		reqHeaders[k] = v
31768	}
31769	reqHeaders.Set("User-Agent", c.s.userAgent())
31770	var body io.Reader = nil
31771	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
31772	if err != nil {
31773		return nil, err
31774	}
31775	reqHeaders.Set("Content-Type", "application/json")
31776	c.urlParams_.Set("alt", alt)
31777	c.urlParams_.Set("prettyPrint", "false")
31778	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/inStoreRefundLineItem")
31779	urls += "?" + c.urlParams_.Encode()
31780	req, err := http.NewRequest("POST", urls, body)
31781	if err != nil {
31782		return nil, err
31783	}
31784	req.Header = reqHeaders
31785	googleapi.Expand(req.URL, map[string]string{
31786		"merchantId": strconv.FormatUint(c.merchantId, 10),
31787		"orderId":    c.orderId,
31788	})
31789	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31790}
31791
31792// Do executes the "content.orders.instorerefundlineitem" call.
31793// Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
31794// non-nil. Any non-2xx status code is an error. Response headers are in
31795// either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
31796// (if a response was returned at all) in
31797// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31798// whether the returned error was because http.StatusNotModified was
31799// returned.
31800func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, 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 := &OrdersInStoreRefundLineItemResponse{
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": "Deprecated. Notifies that item return and refund was handled directly by merchant outside of Google payments processing (e.g. cash refund done in store). Note: We recommend calling the returnrefundlineitem method to refund in-store returns. We will issue the refund directly to the customer. This helps to prevent possible differences arising between merchant and Google transaction records. We also recommend having the point of sale system communicate with Google to ensure that customers do not receive a double refund by first refunding via Google then via an in-store return.",
31832	//   "flatPath": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
31833	//   "httpMethod": "POST",
31834	//   "id": "content.orders.instorerefundlineitem",
31835	//   "parameterOrder": [
31836	//     "merchantId",
31837	//     "orderId"
31838	//   ],
31839	//   "parameters": {
31840	//     "merchantId": {
31841	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31842	//       "format": "uint64",
31843	//       "location": "path",
31844	//       "required": true,
31845	//       "type": "string"
31846	//     },
31847	//     "orderId": {
31848	//       "description": "The ID of the order.",
31849	//       "location": "path",
31850	//       "required": true,
31851	//       "type": "string"
31852	//     }
31853	//   },
31854	//   "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
31855	//   "request": {
31856	//     "$ref": "OrdersInStoreRefundLineItemRequest"
31857	//   },
31858	//   "response": {
31859	//     "$ref": "OrdersInStoreRefundLineItemResponse"
31860	//   },
31861	//   "scopes": [
31862	//     "https://www.googleapis.com/auth/content"
31863	//   ]
31864	// }
31865
31866}
31867
31868// method id "content.orders.list":
31869
31870type OrdersListCall struct {
31871	s            *APIService
31872	merchantId   uint64
31873	urlParams_   gensupport.URLParams
31874	ifNoneMatch_ string
31875	ctx_         context.Context
31876	header_      http.Header
31877}
31878
31879// List: Lists the orders in your Merchant Center account.
31880//
31881// - merchantId: The ID of the account that manages the order. This
31882//   cannot be a multi-client account.
31883func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
31884	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31885	c.merchantId = merchantId
31886	return c
31887}
31888
31889// Acknowledged sets the optional parameter "acknowledged": Obtains
31890// orders that match the acknowledgement status. When set to true,
31891// obtains orders that have been acknowledged. When false, obtains
31892// orders that have not been acknowledged. We recommend using this
31893// filter set to `false`, in conjunction with the `acknowledge` call,
31894// such that only un-acknowledged orders are returned.
31895func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
31896	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
31897	return c
31898}
31899
31900// MaxResults sets the optional parameter "maxResults": The maximum
31901// number of orders to return in the response, used for paging. The
31902// default value is 25 orders per page, and the maximum allowed value is
31903// 250 orders per page.
31904func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
31905	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
31906	return c
31907}
31908
31909// OrderBy sets the optional parameter "orderBy": Order results by
31910// placement date in descending or ascending order. Acceptable values
31911// are: - placedDateAsc - placedDateDesc
31912func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
31913	c.urlParams_.Set("orderBy", orderBy)
31914	return c
31915}
31916
31917// PageToken sets the optional parameter "pageToken": The token returned
31918// by the previous request.
31919func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
31920	c.urlParams_.Set("pageToken", pageToken)
31921	return c
31922}
31923
31924// PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
31925// orders placed before this date (exclusively), in ISO 8601 format.
31926func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
31927	c.urlParams_.Set("placedDateEnd", placedDateEnd)
31928	return c
31929}
31930
31931// PlacedDateStart sets the optional parameter "placedDateStart":
31932// Obtains orders placed after this date (inclusively), in ISO 8601
31933// format.
31934func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
31935	c.urlParams_.Set("placedDateStart", placedDateStart)
31936	return c
31937}
31938
31939// Statuses sets the optional parameter "statuses": Obtains orders that
31940// match any of the specified statuses. Please note that `active` is a
31941// shortcut for `pendingShipment` and `partiallyShipped`, and
31942// `completed` is a shortcut for `shipped`, `partiallyDelivered`,
31943// `delivered`, `partiallyReturned`, `returned`, and `canceled`.
31944//
31945// Possible values:
31946//   "ACTIVE" - Return orders with status `active`. The `active` status
31947// includes `pendingShipment` and `partiallyShipped` orders.
31948//   "COMPLETED" - Return orders with status `completed`. The
31949// `completed` status includes `shipped`, `partiallyDelivered`,
31950// `delivered`, `partiallyReturned`, `returned`, and `canceled` orders.
31951//   "CANCELED" - Return orders with status `canceled`.
31952//   "IN_PROGRESS" - Return orders with status `inProgress`.
31953//   "PENDING_SHIPMENT" - Return orders with status `pendingShipment`.
31954//   "PARTIALLY_SHIPPED" - Return orders with status `partiallyShipped`.
31955//   "SHIPPED" - Return orders with status `shipped`.
31956//   "PARTIALLY_DELIVERED" - Return orders with status
31957// `partiallyDelivered`.
31958//   "DELIVERED" - Return orders with status `delivered`.
31959//   "PARTIALLY_RETURNED" - Return orders with status
31960// `partiallyReturned`.
31961//   "RETURNED" - Return orders with status `returned`.
31962func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
31963	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
31964	return c
31965}
31966
31967// Fields allows partial responses to be retrieved. See
31968// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31969// for more information.
31970func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
31971	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31972	return c
31973}
31974
31975// IfNoneMatch sets the optional parameter which makes the operation
31976// fail if the object's ETag matches the given value. This is useful for
31977// getting updates only after the object has changed since the last
31978// request. Use googleapi.IsNotModified to check whether the response
31979// error from Do is the result of In-None-Match.
31980func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
31981	c.ifNoneMatch_ = entityTag
31982	return c
31983}
31984
31985// Context sets the context to be used in this call's Do method. Any
31986// pending HTTP request will be aborted if the provided context is
31987// canceled.
31988func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
31989	c.ctx_ = ctx
31990	return c
31991}
31992
31993// Header returns an http.Header that can be modified by the caller to
31994// add HTTP headers to the request.
31995func (c *OrdersListCall) Header() http.Header {
31996	if c.header_ == nil {
31997		c.header_ = make(http.Header)
31998	}
31999	return c.header_
32000}
32001
32002func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
32003	reqHeaders := make(http.Header)
32004	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32005	for k, v := range c.header_ {
32006		reqHeaders[k] = v
32007	}
32008	reqHeaders.Set("User-Agent", c.s.userAgent())
32009	if c.ifNoneMatch_ != "" {
32010		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32011	}
32012	var body io.Reader = nil
32013	c.urlParams_.Set("alt", alt)
32014	c.urlParams_.Set("prettyPrint", "false")
32015	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders")
32016	urls += "?" + c.urlParams_.Encode()
32017	req, err := http.NewRequest("GET", urls, body)
32018	if err != nil {
32019		return nil, err
32020	}
32021	req.Header = reqHeaders
32022	googleapi.Expand(req.URL, map[string]string{
32023		"merchantId": strconv.FormatUint(c.merchantId, 10),
32024	})
32025	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32026}
32027
32028// Do executes the "content.orders.list" call.
32029// Exactly one of *OrdersListResponse or error will be non-nil. Any
32030// non-2xx status code is an error. Response headers are in either
32031// *OrdersListResponse.ServerResponse.Header or (if a response was
32032// returned at all) in error.(*googleapi.Error).Header. Use
32033// googleapi.IsNotModified to check whether the returned error was
32034// because http.StatusNotModified was returned.
32035func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
32036	gensupport.SetOptions(c.urlParams_, opts...)
32037	res, err := c.doRequest("json")
32038	if res != nil && res.StatusCode == http.StatusNotModified {
32039		if res.Body != nil {
32040			res.Body.Close()
32041		}
32042		return nil, &googleapi.Error{
32043			Code:   res.StatusCode,
32044			Header: res.Header,
32045		}
32046	}
32047	if err != nil {
32048		return nil, err
32049	}
32050	defer googleapi.CloseBody(res)
32051	if err := googleapi.CheckResponse(res); err != nil {
32052		return nil, err
32053	}
32054	ret := &OrdersListResponse{
32055		ServerResponse: googleapi.ServerResponse{
32056			Header:         res.Header,
32057			HTTPStatusCode: res.StatusCode,
32058		},
32059	}
32060	target := &ret
32061	if err := gensupport.DecodeResponse(target, res); err != nil {
32062		return nil, err
32063	}
32064	return ret, nil
32065	// {
32066	//   "description": "Lists the orders in your Merchant Center account.",
32067	//   "flatPath": "{merchantId}/orders",
32068	//   "httpMethod": "GET",
32069	//   "id": "content.orders.list",
32070	//   "parameterOrder": [
32071	//     "merchantId"
32072	//   ],
32073	//   "parameters": {
32074	//     "acknowledged": {
32075	//       "description": "Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged. We recommend using this filter set to `false`, in conjunction with the `acknowledge` call, such that only un-acknowledged orders are returned. ",
32076	//       "location": "query",
32077	//       "type": "boolean"
32078	//     },
32079	//     "maxResults": {
32080	//       "description": "The maximum number of orders to return in the response, used for paging. The default value is 25 orders per page, and the maximum allowed value is 250 orders per page.",
32081	//       "format": "uint32",
32082	//       "location": "query",
32083	//       "type": "integer"
32084	//     },
32085	//     "merchantId": {
32086	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32087	//       "format": "uint64",
32088	//       "location": "path",
32089	//       "required": true,
32090	//       "type": "string"
32091	//     },
32092	//     "orderBy": {
32093	//       "description": "Order results by placement date in descending or ascending order. Acceptable values are: - placedDateAsc - placedDateDesc ",
32094	//       "location": "query",
32095	//       "type": "string"
32096	//     },
32097	//     "pageToken": {
32098	//       "description": "The token returned by the previous request.",
32099	//       "location": "query",
32100	//       "type": "string"
32101	//     },
32102	//     "placedDateEnd": {
32103	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
32104	//       "location": "query",
32105	//       "type": "string"
32106	//     },
32107	//     "placedDateStart": {
32108	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
32109	//       "location": "query",
32110	//       "type": "string"
32111	//     },
32112	//     "statuses": {
32113	//       "description": "Obtains orders that match any of the specified statuses. Please note that `active` is a shortcut for `pendingShipment` and `partiallyShipped`, and `completed` is a shortcut for `shipped`, `partiallyDelivered`, `delivered`, `partiallyReturned`, `returned`, and `canceled`.",
32114	//       "enum": [
32115	//         "ACTIVE",
32116	//         "COMPLETED",
32117	//         "CANCELED",
32118	//         "IN_PROGRESS",
32119	//         "PENDING_SHIPMENT",
32120	//         "PARTIALLY_SHIPPED",
32121	//         "SHIPPED",
32122	//         "PARTIALLY_DELIVERED",
32123	//         "DELIVERED",
32124	//         "PARTIALLY_RETURNED",
32125	//         "RETURNED"
32126	//       ],
32127	//       "enumDescriptions": [
32128	//         "Return orders with status `active`. The `active` status includes `pendingShipment` and `partiallyShipped` orders.",
32129	//         "Return orders with status `completed`. The `completed` status includes `shipped`, `partiallyDelivered`, `delivered`, `partiallyReturned`, `returned`, and `canceled` orders.",
32130	//         "Return orders with status `canceled`.",
32131	//         "Return orders with status `inProgress`.",
32132	//         "Return orders with status `pendingShipment`.",
32133	//         "Return orders with status `partiallyShipped`.",
32134	//         "Return orders with status `shipped`.",
32135	//         "Return orders with status `partiallyDelivered`.",
32136	//         "Return orders with status `delivered`.",
32137	//         "Return orders with status `partiallyReturned`.",
32138	//         "Return orders with status `returned`."
32139	//       ],
32140	//       "location": "query",
32141	//       "repeated": true,
32142	//       "type": "string"
32143	//     }
32144	//   },
32145	//   "path": "{merchantId}/orders",
32146	//   "response": {
32147	//     "$ref": "OrdersListResponse"
32148	//   },
32149	//   "scopes": [
32150	//     "https://www.googleapis.com/auth/content"
32151	//   ]
32152	// }
32153
32154}
32155
32156// Pages invokes f for each page of results.
32157// A non-nil error returned from f will halt the iteration.
32158// The provided context supersedes any context provided to the Context method.
32159func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
32160	c.ctx_ = ctx
32161	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32162	for {
32163		x, err := c.Do()
32164		if err != nil {
32165			return err
32166		}
32167		if err := f(x); err != nil {
32168			return err
32169		}
32170		if x.NextPageToken == "" {
32171			return nil
32172		}
32173		c.PageToken(x.NextPageToken)
32174	}
32175}
32176
32177// method id "content.orders.refunditem":
32178
32179type OrdersRefunditemCall struct {
32180	s                       *APIService
32181	merchantId              uint64
32182	orderId                 string
32183	ordersrefunditemrequest *OrdersRefundItemRequest
32184	urlParams_              gensupport.URLParams
32185	ctx_                    context.Context
32186	header_                 http.Header
32187}
32188
32189// Refunditem: Issues a partial or total refund for items and shipment.
32190//
32191// - merchantId: The ID of the account that manages the order. This
32192//   cannot be a multi-client account.
32193// - orderId: The ID of the order to refund.
32194func (r *OrdersService) Refunditem(merchantId uint64, orderId string, ordersrefunditemrequest *OrdersRefundItemRequest) *OrdersRefunditemCall {
32195	c := &OrdersRefunditemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32196	c.merchantId = merchantId
32197	c.orderId = orderId
32198	c.ordersrefunditemrequest = ordersrefunditemrequest
32199	return c
32200}
32201
32202// Fields allows partial responses to be retrieved. See
32203// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32204// for more information.
32205func (c *OrdersRefunditemCall) Fields(s ...googleapi.Field) *OrdersRefunditemCall {
32206	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32207	return c
32208}
32209
32210// Context sets the context to be used in this call's Do method. Any
32211// pending HTTP request will be aborted if the provided context is
32212// canceled.
32213func (c *OrdersRefunditemCall) Context(ctx context.Context) *OrdersRefunditemCall {
32214	c.ctx_ = ctx
32215	return c
32216}
32217
32218// Header returns an http.Header that can be modified by the caller to
32219// add HTTP headers to the request.
32220func (c *OrdersRefunditemCall) Header() http.Header {
32221	if c.header_ == nil {
32222		c.header_ = make(http.Header)
32223	}
32224	return c.header_
32225}
32226
32227func (c *OrdersRefunditemCall) doRequest(alt string) (*http.Response, error) {
32228	reqHeaders := make(http.Header)
32229	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32230	for k, v := range c.header_ {
32231		reqHeaders[k] = v
32232	}
32233	reqHeaders.Set("User-Agent", c.s.userAgent())
32234	var body io.Reader = nil
32235	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefunditemrequest)
32236	if err != nil {
32237		return nil, err
32238	}
32239	reqHeaders.Set("Content-Type", "application/json")
32240	c.urlParams_.Set("alt", alt)
32241	c.urlParams_.Set("prettyPrint", "false")
32242	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refunditem")
32243	urls += "?" + c.urlParams_.Encode()
32244	req, err := http.NewRequest("POST", urls, body)
32245	if err != nil {
32246		return nil, err
32247	}
32248	req.Header = reqHeaders
32249	googleapi.Expand(req.URL, map[string]string{
32250		"merchantId": strconv.FormatUint(c.merchantId, 10),
32251		"orderId":    c.orderId,
32252	})
32253	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32254}
32255
32256// Do executes the "content.orders.refunditem" call.
32257// Exactly one of *OrdersRefundItemResponse or error will be non-nil.
32258// Any non-2xx status code is an error. Response headers are in either
32259// *OrdersRefundItemResponse.ServerResponse.Header or (if a response was
32260// returned at all) in error.(*googleapi.Error).Header. Use
32261// googleapi.IsNotModified to check whether the returned error was
32262// because http.StatusNotModified was returned.
32263func (c *OrdersRefunditemCall) Do(opts ...googleapi.CallOption) (*OrdersRefundItemResponse, error) {
32264	gensupport.SetOptions(c.urlParams_, opts...)
32265	res, err := c.doRequest("json")
32266	if res != nil && res.StatusCode == http.StatusNotModified {
32267		if res.Body != nil {
32268			res.Body.Close()
32269		}
32270		return nil, &googleapi.Error{
32271			Code:   res.StatusCode,
32272			Header: res.Header,
32273		}
32274	}
32275	if err != nil {
32276		return nil, err
32277	}
32278	defer googleapi.CloseBody(res)
32279	if err := googleapi.CheckResponse(res); err != nil {
32280		return nil, err
32281	}
32282	ret := &OrdersRefundItemResponse{
32283		ServerResponse: googleapi.ServerResponse{
32284			Header:         res.Header,
32285			HTTPStatusCode: res.StatusCode,
32286		},
32287	}
32288	target := &ret
32289	if err := gensupport.DecodeResponse(target, res); err != nil {
32290		return nil, err
32291	}
32292	return ret, nil
32293	// {
32294	//   "description": "Issues a partial or total refund for items and shipment.",
32295	//   "flatPath": "{merchantId}/orders/{orderId}/refunditem",
32296	//   "httpMethod": "POST",
32297	//   "id": "content.orders.refunditem",
32298	//   "parameterOrder": [
32299	//     "merchantId",
32300	//     "orderId"
32301	//   ],
32302	//   "parameters": {
32303	//     "merchantId": {
32304	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32305	//       "format": "uint64",
32306	//       "location": "path",
32307	//       "required": true,
32308	//       "type": "string"
32309	//     },
32310	//     "orderId": {
32311	//       "description": "The ID of the order to refund.",
32312	//       "location": "path",
32313	//       "required": true,
32314	//       "type": "string"
32315	//     }
32316	//   },
32317	//   "path": "{merchantId}/orders/{orderId}/refunditem",
32318	//   "request": {
32319	//     "$ref": "OrdersRefundItemRequest"
32320	//   },
32321	//   "response": {
32322	//     "$ref": "OrdersRefundItemResponse"
32323	//   },
32324	//   "scopes": [
32325	//     "https://www.googleapis.com/auth/content"
32326	//   ]
32327	// }
32328
32329}
32330
32331// method id "content.orders.refundorder":
32332
32333type OrdersRefundorderCall struct {
32334	s                        *APIService
32335	merchantId               uint64
32336	orderId                  string
32337	ordersrefundorderrequest *OrdersRefundOrderRequest
32338	urlParams_               gensupport.URLParams
32339	ctx_                     context.Context
32340	header_                  http.Header
32341}
32342
32343// Refundorder: Issues a partial or total refund for an order.
32344//
32345// - merchantId: The ID of the account that manages the order. This
32346//   cannot be a multi-client account.
32347// - orderId: The ID of the order to refund.
32348func (r *OrdersService) Refundorder(merchantId uint64, orderId string, ordersrefundorderrequest *OrdersRefundOrderRequest) *OrdersRefundorderCall {
32349	c := &OrdersRefundorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32350	c.merchantId = merchantId
32351	c.orderId = orderId
32352	c.ordersrefundorderrequest = ordersrefundorderrequest
32353	return c
32354}
32355
32356// Fields allows partial responses to be retrieved. See
32357// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32358// for more information.
32359func (c *OrdersRefundorderCall) Fields(s ...googleapi.Field) *OrdersRefundorderCall {
32360	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32361	return c
32362}
32363
32364// Context sets the context to be used in this call's Do method. Any
32365// pending HTTP request will be aborted if the provided context is
32366// canceled.
32367func (c *OrdersRefundorderCall) Context(ctx context.Context) *OrdersRefundorderCall {
32368	c.ctx_ = ctx
32369	return c
32370}
32371
32372// Header returns an http.Header that can be modified by the caller to
32373// add HTTP headers to the request.
32374func (c *OrdersRefundorderCall) Header() http.Header {
32375	if c.header_ == nil {
32376		c.header_ = make(http.Header)
32377	}
32378	return c.header_
32379}
32380
32381func (c *OrdersRefundorderCall) doRequest(alt string) (*http.Response, error) {
32382	reqHeaders := make(http.Header)
32383	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32384	for k, v := range c.header_ {
32385		reqHeaders[k] = v
32386	}
32387	reqHeaders.Set("User-Agent", c.s.userAgent())
32388	var body io.Reader = nil
32389	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefundorderrequest)
32390	if err != nil {
32391		return nil, err
32392	}
32393	reqHeaders.Set("Content-Type", "application/json")
32394	c.urlParams_.Set("alt", alt)
32395	c.urlParams_.Set("prettyPrint", "false")
32396	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refundorder")
32397	urls += "?" + c.urlParams_.Encode()
32398	req, err := http.NewRequest("POST", urls, body)
32399	if err != nil {
32400		return nil, err
32401	}
32402	req.Header = reqHeaders
32403	googleapi.Expand(req.URL, map[string]string{
32404		"merchantId": strconv.FormatUint(c.merchantId, 10),
32405		"orderId":    c.orderId,
32406	})
32407	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32408}
32409
32410// Do executes the "content.orders.refundorder" call.
32411// Exactly one of *OrdersRefundOrderResponse or error will be non-nil.
32412// Any non-2xx status code is an error. Response headers are in either
32413// *OrdersRefundOrderResponse.ServerResponse.Header or (if a response
32414// was returned at all) in error.(*googleapi.Error).Header. Use
32415// googleapi.IsNotModified to check whether the returned error was
32416// because http.StatusNotModified was returned.
32417func (c *OrdersRefundorderCall) Do(opts ...googleapi.CallOption) (*OrdersRefundOrderResponse, error) {
32418	gensupport.SetOptions(c.urlParams_, opts...)
32419	res, err := c.doRequest("json")
32420	if res != nil && res.StatusCode == http.StatusNotModified {
32421		if res.Body != nil {
32422			res.Body.Close()
32423		}
32424		return nil, &googleapi.Error{
32425			Code:   res.StatusCode,
32426			Header: res.Header,
32427		}
32428	}
32429	if err != nil {
32430		return nil, err
32431	}
32432	defer googleapi.CloseBody(res)
32433	if err := googleapi.CheckResponse(res); err != nil {
32434		return nil, err
32435	}
32436	ret := &OrdersRefundOrderResponse{
32437		ServerResponse: googleapi.ServerResponse{
32438			Header:         res.Header,
32439			HTTPStatusCode: res.StatusCode,
32440		},
32441	}
32442	target := &ret
32443	if err := gensupport.DecodeResponse(target, res); err != nil {
32444		return nil, err
32445	}
32446	return ret, nil
32447	// {
32448	//   "description": "Issues a partial or total refund for an order.",
32449	//   "flatPath": "{merchantId}/orders/{orderId}/refundorder",
32450	//   "httpMethod": "POST",
32451	//   "id": "content.orders.refundorder",
32452	//   "parameterOrder": [
32453	//     "merchantId",
32454	//     "orderId"
32455	//   ],
32456	//   "parameters": {
32457	//     "merchantId": {
32458	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32459	//       "format": "uint64",
32460	//       "location": "path",
32461	//       "required": true,
32462	//       "type": "string"
32463	//     },
32464	//     "orderId": {
32465	//       "description": "The ID of the order to refund.",
32466	//       "location": "path",
32467	//       "required": true,
32468	//       "type": "string"
32469	//     }
32470	//   },
32471	//   "path": "{merchantId}/orders/{orderId}/refundorder",
32472	//   "request": {
32473	//     "$ref": "OrdersRefundOrderRequest"
32474	//   },
32475	//   "response": {
32476	//     "$ref": "OrdersRefundOrderResponse"
32477	//   },
32478	//   "scopes": [
32479	//     "https://www.googleapis.com/auth/content"
32480	//   ]
32481	// }
32482
32483}
32484
32485// method id "content.orders.rejectreturnlineitem":
32486
32487type OrdersRejectreturnlineitemCall struct {
32488	s                                 *APIService
32489	merchantId                        uint64
32490	orderId                           string
32491	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
32492	urlParams_                        gensupport.URLParams
32493	ctx_                              context.Context
32494	header_                           http.Header
32495}
32496
32497// Rejectreturnlineitem: Rejects return on an line item.
32498//
32499// - merchantId: The ID of the account that manages the order. This
32500//   cannot be a multi-client account.
32501// - orderId: The ID of the order.
32502func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
32503	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32504	c.merchantId = merchantId
32505	c.orderId = orderId
32506	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
32507	return c
32508}
32509
32510// Fields allows partial responses to be retrieved. See
32511// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32512// for more information.
32513func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
32514	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32515	return c
32516}
32517
32518// Context sets the context to be used in this call's Do method. Any
32519// pending HTTP request will be aborted if the provided context is
32520// canceled.
32521func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
32522	c.ctx_ = ctx
32523	return c
32524}
32525
32526// Header returns an http.Header that can be modified by the caller to
32527// add HTTP headers to the request.
32528func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
32529	if c.header_ == nil {
32530		c.header_ = make(http.Header)
32531	}
32532	return c.header_
32533}
32534
32535func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
32536	reqHeaders := make(http.Header)
32537	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32538	for k, v := range c.header_ {
32539		reqHeaders[k] = v
32540	}
32541	reqHeaders.Set("User-Agent", c.s.userAgent())
32542	var body io.Reader = nil
32543	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
32544	if err != nil {
32545		return nil, err
32546	}
32547	reqHeaders.Set("Content-Type", "application/json")
32548	c.urlParams_.Set("alt", alt)
32549	c.urlParams_.Set("prettyPrint", "false")
32550	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/rejectReturnLineItem")
32551	urls += "?" + c.urlParams_.Encode()
32552	req, err := http.NewRequest("POST", urls, body)
32553	if err != nil {
32554		return nil, err
32555	}
32556	req.Header = reqHeaders
32557	googleapi.Expand(req.URL, map[string]string{
32558		"merchantId": strconv.FormatUint(c.merchantId, 10),
32559		"orderId":    c.orderId,
32560	})
32561	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32562}
32563
32564// Do executes the "content.orders.rejectreturnlineitem" call.
32565// Exactly one of *OrdersRejectReturnLineItemResponse or error will be
32566// non-nil. Any non-2xx status code is an error. Response headers are in
32567// either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
32568// (if a response was returned at all) in
32569// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32570// whether the returned error was because http.StatusNotModified was
32571// returned.
32572func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
32573	gensupport.SetOptions(c.urlParams_, opts...)
32574	res, err := c.doRequest("json")
32575	if res != nil && res.StatusCode == http.StatusNotModified {
32576		if res.Body != nil {
32577			res.Body.Close()
32578		}
32579		return nil, &googleapi.Error{
32580			Code:   res.StatusCode,
32581			Header: res.Header,
32582		}
32583	}
32584	if err != nil {
32585		return nil, err
32586	}
32587	defer googleapi.CloseBody(res)
32588	if err := googleapi.CheckResponse(res); err != nil {
32589		return nil, err
32590	}
32591	ret := &OrdersRejectReturnLineItemResponse{
32592		ServerResponse: googleapi.ServerResponse{
32593			Header:         res.Header,
32594			HTTPStatusCode: res.StatusCode,
32595		},
32596	}
32597	target := &ret
32598	if err := gensupport.DecodeResponse(target, res); err != nil {
32599		return nil, err
32600	}
32601	return ret, nil
32602	// {
32603	//   "description": "Rejects return on an line item.",
32604	//   "flatPath": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
32605	//   "httpMethod": "POST",
32606	//   "id": "content.orders.rejectreturnlineitem",
32607	//   "parameterOrder": [
32608	//     "merchantId",
32609	//     "orderId"
32610	//   ],
32611	//   "parameters": {
32612	//     "merchantId": {
32613	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32614	//       "format": "uint64",
32615	//       "location": "path",
32616	//       "required": true,
32617	//       "type": "string"
32618	//     },
32619	//     "orderId": {
32620	//       "description": "The ID of the order.",
32621	//       "location": "path",
32622	//       "required": true,
32623	//       "type": "string"
32624	//     }
32625	//   },
32626	//   "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
32627	//   "request": {
32628	//     "$ref": "OrdersRejectReturnLineItemRequest"
32629	//   },
32630	//   "response": {
32631	//     "$ref": "OrdersRejectReturnLineItemResponse"
32632	//   },
32633	//   "scopes": [
32634	//     "https://www.googleapis.com/auth/content"
32635	//   ]
32636	// }
32637
32638}
32639
32640// method id "content.orders.returnrefundlineitem":
32641
32642type OrdersReturnrefundlineitemCall struct {
32643	s                                 *APIService
32644	merchantId                        uint64
32645	orderId                           string
32646	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
32647	urlParams_                        gensupport.URLParams
32648	ctx_                              context.Context
32649	header_                           http.Header
32650}
32651
32652// Returnrefundlineitem: Returns and refunds a line item. Note that this
32653// method can only be called on fully shipped orders. Please also note
32654// that the Orderreturns API is the preferred way to handle returns
32655// after you receive a return from a customer. You can use
32656// Orderreturns.list or Orderreturns.get to search for the return, and
32657// then use Orderreturns.processreturn to issue the refund. If the
32658// return cannot be found, then we recommend using this API to issue a
32659// refund.
32660//
32661// - merchantId: The ID of the account that manages the order. This
32662//   cannot be a multi-client account.
32663// - orderId: The ID of the order.
32664func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
32665	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32666	c.merchantId = merchantId
32667	c.orderId = orderId
32668	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
32669	return c
32670}
32671
32672// Fields allows partial responses to be retrieved. See
32673// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32674// for more information.
32675func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
32676	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32677	return c
32678}
32679
32680// Context sets the context to be used in this call's Do method. Any
32681// pending HTTP request will be aborted if the provided context is
32682// canceled.
32683func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
32684	c.ctx_ = ctx
32685	return c
32686}
32687
32688// Header returns an http.Header that can be modified by the caller to
32689// add HTTP headers to the request.
32690func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
32691	if c.header_ == nil {
32692		c.header_ = make(http.Header)
32693	}
32694	return c.header_
32695}
32696
32697func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
32698	reqHeaders := make(http.Header)
32699	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32700	for k, v := range c.header_ {
32701		reqHeaders[k] = v
32702	}
32703	reqHeaders.Set("User-Agent", c.s.userAgent())
32704	var body io.Reader = nil
32705	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
32706	if err != nil {
32707		return nil, err
32708	}
32709	reqHeaders.Set("Content-Type", "application/json")
32710	c.urlParams_.Set("alt", alt)
32711	c.urlParams_.Set("prettyPrint", "false")
32712	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnRefundLineItem")
32713	urls += "?" + c.urlParams_.Encode()
32714	req, err := http.NewRequest("POST", urls, body)
32715	if err != nil {
32716		return nil, err
32717	}
32718	req.Header = reqHeaders
32719	googleapi.Expand(req.URL, map[string]string{
32720		"merchantId": strconv.FormatUint(c.merchantId, 10),
32721		"orderId":    c.orderId,
32722	})
32723	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32724}
32725
32726// Do executes the "content.orders.returnrefundlineitem" call.
32727// Exactly one of *OrdersReturnRefundLineItemResponse or error will be
32728// non-nil. Any non-2xx status code is an error. Response headers are in
32729// either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
32730// (if a response was returned at all) in
32731// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32732// whether the returned error was because http.StatusNotModified was
32733// returned.
32734func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
32735	gensupport.SetOptions(c.urlParams_, opts...)
32736	res, err := c.doRequest("json")
32737	if res != nil && res.StatusCode == http.StatusNotModified {
32738		if res.Body != nil {
32739			res.Body.Close()
32740		}
32741		return nil, &googleapi.Error{
32742			Code:   res.StatusCode,
32743			Header: res.Header,
32744		}
32745	}
32746	if err != nil {
32747		return nil, err
32748	}
32749	defer googleapi.CloseBody(res)
32750	if err := googleapi.CheckResponse(res); err != nil {
32751		return nil, err
32752	}
32753	ret := &OrdersReturnRefundLineItemResponse{
32754		ServerResponse: googleapi.ServerResponse{
32755			Header:         res.Header,
32756			HTTPStatusCode: res.StatusCode,
32757		},
32758	}
32759	target := &ret
32760	if err := gensupport.DecodeResponse(target, res); err != nil {
32761		return nil, err
32762	}
32763	return ret, nil
32764	// {
32765	//   "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders. Please also note that the Orderreturns API is the preferred way to handle returns after you receive a return from a customer. You can use Orderreturns.list or Orderreturns.get to search for the return, and then use Orderreturns.processreturn to issue the refund. If the return cannot be found, then we recommend using this API to issue a refund.",
32766	//   "flatPath": "{merchantId}/orders/{orderId}/returnRefundLineItem",
32767	//   "httpMethod": "POST",
32768	//   "id": "content.orders.returnrefundlineitem",
32769	//   "parameterOrder": [
32770	//     "merchantId",
32771	//     "orderId"
32772	//   ],
32773	//   "parameters": {
32774	//     "merchantId": {
32775	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32776	//       "format": "uint64",
32777	//       "location": "path",
32778	//       "required": true,
32779	//       "type": "string"
32780	//     },
32781	//     "orderId": {
32782	//       "description": "The ID of the order.",
32783	//       "location": "path",
32784	//       "required": true,
32785	//       "type": "string"
32786	//     }
32787	//   },
32788	//   "path": "{merchantId}/orders/{orderId}/returnRefundLineItem",
32789	//   "request": {
32790	//     "$ref": "OrdersReturnRefundLineItemRequest"
32791	//   },
32792	//   "response": {
32793	//     "$ref": "OrdersReturnRefundLineItemResponse"
32794	//   },
32795	//   "scopes": [
32796	//     "https://www.googleapis.com/auth/content"
32797	//   ]
32798	// }
32799
32800}
32801
32802// method id "content.orders.setlineitemmetadata":
32803
32804type OrdersSetlineitemmetadataCall struct {
32805	s                                *APIService
32806	merchantId                       uint64
32807	orderId                          string
32808	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
32809	urlParams_                       gensupport.URLParams
32810	ctx_                             context.Context
32811	header_                          http.Header
32812}
32813
32814// Setlineitemmetadata: Sets (or overrides if it already exists)
32815// merchant provided annotations in the form of key-value pairs. A
32816// common use case would be to supply us with additional structured
32817// information about a line item that cannot be provided via other
32818// methods. Submitted key-value pairs can be retrieved as part of the
32819// orders resource.
32820//
32821// - merchantId: The ID of the account that manages the order. This
32822//   cannot be a multi-client account.
32823// - orderId: The ID of the order.
32824func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
32825	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32826	c.merchantId = merchantId
32827	c.orderId = orderId
32828	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
32829	return c
32830}
32831
32832// Fields allows partial responses to be retrieved. See
32833// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32834// for more information.
32835func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
32836	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32837	return c
32838}
32839
32840// Context sets the context to be used in this call's Do method. Any
32841// pending HTTP request will be aborted if the provided context is
32842// canceled.
32843func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
32844	c.ctx_ = ctx
32845	return c
32846}
32847
32848// Header returns an http.Header that can be modified by the caller to
32849// add HTTP headers to the request.
32850func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
32851	if c.header_ == nil {
32852		c.header_ = make(http.Header)
32853	}
32854	return c.header_
32855}
32856
32857func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
32858	reqHeaders := make(http.Header)
32859	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32860	for k, v := range c.header_ {
32861		reqHeaders[k] = v
32862	}
32863	reqHeaders.Set("User-Agent", c.s.userAgent())
32864	var body io.Reader = nil
32865	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
32866	if err != nil {
32867		return nil, err
32868	}
32869	reqHeaders.Set("Content-Type", "application/json")
32870	c.urlParams_.Set("alt", alt)
32871	c.urlParams_.Set("prettyPrint", "false")
32872	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/setLineItemMetadata")
32873	urls += "?" + c.urlParams_.Encode()
32874	req, err := http.NewRequest("POST", urls, body)
32875	if err != nil {
32876		return nil, err
32877	}
32878	req.Header = reqHeaders
32879	googleapi.Expand(req.URL, map[string]string{
32880		"merchantId": strconv.FormatUint(c.merchantId, 10),
32881		"orderId":    c.orderId,
32882	})
32883	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32884}
32885
32886// Do executes the "content.orders.setlineitemmetadata" call.
32887// Exactly one of *OrdersSetLineItemMetadataResponse or error will be
32888// non-nil. Any non-2xx status code is an error. Response headers are in
32889// either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
32890// (if a response was returned at all) in
32891// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32892// whether the returned error was because http.StatusNotModified was
32893// returned.
32894func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
32895	gensupport.SetOptions(c.urlParams_, opts...)
32896	res, err := c.doRequest("json")
32897	if res != nil && res.StatusCode == http.StatusNotModified {
32898		if res.Body != nil {
32899			res.Body.Close()
32900		}
32901		return nil, &googleapi.Error{
32902			Code:   res.StatusCode,
32903			Header: res.Header,
32904		}
32905	}
32906	if err != nil {
32907		return nil, err
32908	}
32909	defer googleapi.CloseBody(res)
32910	if err := googleapi.CheckResponse(res); err != nil {
32911		return nil, err
32912	}
32913	ret := &OrdersSetLineItemMetadataResponse{
32914		ServerResponse: googleapi.ServerResponse{
32915			Header:         res.Header,
32916			HTTPStatusCode: res.StatusCode,
32917		},
32918	}
32919	target := &ret
32920	if err := gensupport.DecodeResponse(target, res); err != nil {
32921		return nil, err
32922	}
32923	return ret, nil
32924	// {
32925	//   "description": "Sets (or overrides if it already exists) merchant provided annotations in the form of key-value pairs. A common use case would be to supply us with additional structured information about a line item that cannot be provided via other methods. Submitted key-value pairs can be retrieved as part of the orders resource.",
32926	//   "flatPath": "{merchantId}/orders/{orderId}/setLineItemMetadata",
32927	//   "httpMethod": "POST",
32928	//   "id": "content.orders.setlineitemmetadata",
32929	//   "parameterOrder": [
32930	//     "merchantId",
32931	//     "orderId"
32932	//   ],
32933	//   "parameters": {
32934	//     "merchantId": {
32935	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32936	//       "format": "uint64",
32937	//       "location": "path",
32938	//       "required": true,
32939	//       "type": "string"
32940	//     },
32941	//     "orderId": {
32942	//       "description": "The ID of the order.",
32943	//       "location": "path",
32944	//       "required": true,
32945	//       "type": "string"
32946	//     }
32947	//   },
32948	//   "path": "{merchantId}/orders/{orderId}/setLineItemMetadata",
32949	//   "request": {
32950	//     "$ref": "OrdersSetLineItemMetadataRequest"
32951	//   },
32952	//   "response": {
32953	//     "$ref": "OrdersSetLineItemMetadataResponse"
32954	//   },
32955	//   "scopes": [
32956	//     "https://www.googleapis.com/auth/content"
32957	//   ]
32958	// }
32959
32960}
32961
32962// method id "content.orders.shiplineitems":
32963
32964type OrdersShiplineitemsCall struct {
32965	s                          *APIService
32966	merchantId                 uint64
32967	orderId                    string
32968	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
32969	urlParams_                 gensupport.URLParams
32970	ctx_                       context.Context
32971	header_                    http.Header
32972}
32973
32974// Shiplineitems: Marks line item(s) as shipped.
32975//
32976// - merchantId: The ID of the account that manages the order. This
32977//   cannot be a multi-client account.
32978// - orderId: The ID of the order.
32979func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
32980	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32981	c.merchantId = merchantId
32982	c.orderId = orderId
32983	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
32984	return c
32985}
32986
32987// Fields allows partial responses to be retrieved. See
32988// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32989// for more information.
32990func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
32991	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32992	return c
32993}
32994
32995// Context sets the context to be used in this call's Do method. Any
32996// pending HTTP request will be aborted if the provided context is
32997// canceled.
32998func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
32999	c.ctx_ = ctx
33000	return c
33001}
33002
33003// Header returns an http.Header that can be modified by the caller to
33004// add HTTP headers to the request.
33005func (c *OrdersShiplineitemsCall) Header() http.Header {
33006	if c.header_ == nil {
33007		c.header_ = make(http.Header)
33008	}
33009	return c.header_
33010}
33011
33012func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
33013	reqHeaders := make(http.Header)
33014	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33015	for k, v := range c.header_ {
33016		reqHeaders[k] = v
33017	}
33018	reqHeaders.Set("User-Agent", c.s.userAgent())
33019	var body io.Reader = nil
33020	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
33021	if err != nil {
33022		return nil, err
33023	}
33024	reqHeaders.Set("Content-Type", "application/json")
33025	c.urlParams_.Set("alt", alt)
33026	c.urlParams_.Set("prettyPrint", "false")
33027	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/shipLineItems")
33028	urls += "?" + c.urlParams_.Encode()
33029	req, err := http.NewRequest("POST", urls, body)
33030	if err != nil {
33031		return nil, err
33032	}
33033	req.Header = reqHeaders
33034	googleapi.Expand(req.URL, map[string]string{
33035		"merchantId": strconv.FormatUint(c.merchantId, 10),
33036		"orderId":    c.orderId,
33037	})
33038	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33039}
33040
33041// Do executes the "content.orders.shiplineitems" call.
33042// Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
33043// Any non-2xx status code is an error. Response headers are in either
33044// *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
33045// was returned at all) in error.(*googleapi.Error).Header. Use
33046// googleapi.IsNotModified to check whether the returned error was
33047// because http.StatusNotModified was returned.
33048func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
33049	gensupport.SetOptions(c.urlParams_, opts...)
33050	res, err := c.doRequest("json")
33051	if res != nil && res.StatusCode == http.StatusNotModified {
33052		if res.Body != nil {
33053			res.Body.Close()
33054		}
33055		return nil, &googleapi.Error{
33056			Code:   res.StatusCode,
33057			Header: res.Header,
33058		}
33059	}
33060	if err != nil {
33061		return nil, err
33062	}
33063	defer googleapi.CloseBody(res)
33064	if err := googleapi.CheckResponse(res); err != nil {
33065		return nil, err
33066	}
33067	ret := &OrdersShipLineItemsResponse{
33068		ServerResponse: googleapi.ServerResponse{
33069			Header:         res.Header,
33070			HTTPStatusCode: res.StatusCode,
33071		},
33072	}
33073	target := &ret
33074	if err := gensupport.DecodeResponse(target, res); err != nil {
33075		return nil, err
33076	}
33077	return ret, nil
33078	// {
33079	//   "description": "Marks line item(s) as shipped.",
33080	//   "flatPath": "{merchantId}/orders/{orderId}/shipLineItems",
33081	//   "httpMethod": "POST",
33082	//   "id": "content.orders.shiplineitems",
33083	//   "parameterOrder": [
33084	//     "merchantId",
33085	//     "orderId"
33086	//   ],
33087	//   "parameters": {
33088	//     "merchantId": {
33089	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33090	//       "format": "uint64",
33091	//       "location": "path",
33092	//       "required": true,
33093	//       "type": "string"
33094	//     },
33095	//     "orderId": {
33096	//       "description": "The ID of the order.",
33097	//       "location": "path",
33098	//       "required": true,
33099	//       "type": "string"
33100	//     }
33101	//   },
33102	//   "path": "{merchantId}/orders/{orderId}/shipLineItems",
33103	//   "request": {
33104	//     "$ref": "OrdersShipLineItemsRequest"
33105	//   },
33106	//   "response": {
33107	//     "$ref": "OrdersShipLineItemsResponse"
33108	//   },
33109	//   "scopes": [
33110	//     "https://www.googleapis.com/auth/content"
33111	//   ]
33112	// }
33113
33114}
33115
33116// method id "content.orders.updatelineitemshippingdetails":
33117
33118type OrdersUpdatelineitemshippingdetailsCall struct {
33119	s                                          *APIService
33120	merchantId                                 uint64
33121	orderId                                    string
33122	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
33123	urlParams_                                 gensupport.URLParams
33124	ctx_                                       context.Context
33125	header_                                    http.Header
33126}
33127
33128// Updatelineitemshippingdetails: Updates ship by and delivery by dates
33129// for a line item.
33130//
33131// - merchantId: The ID of the account that manages the order. This
33132//   cannot be a multi-client account.
33133// - orderId: The ID of the order.
33134func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
33135	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33136	c.merchantId = merchantId
33137	c.orderId = orderId
33138	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
33139	return c
33140}
33141
33142// Fields allows partial responses to be retrieved. See
33143// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33144// for more information.
33145func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
33146	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33147	return c
33148}
33149
33150// Context sets the context to be used in this call's Do method. Any
33151// pending HTTP request will be aborted if the provided context is
33152// canceled.
33153func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
33154	c.ctx_ = ctx
33155	return c
33156}
33157
33158// Header returns an http.Header that can be modified by the caller to
33159// add HTTP headers to the request.
33160func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
33161	if c.header_ == nil {
33162		c.header_ = make(http.Header)
33163	}
33164	return c.header_
33165}
33166
33167func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
33168	reqHeaders := make(http.Header)
33169	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33170	for k, v := range c.header_ {
33171		reqHeaders[k] = v
33172	}
33173	reqHeaders.Set("User-Agent", c.s.userAgent())
33174	var body io.Reader = nil
33175	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
33176	if err != nil {
33177		return nil, err
33178	}
33179	reqHeaders.Set("Content-Type", "application/json")
33180	c.urlParams_.Set("alt", alt)
33181	c.urlParams_.Set("prettyPrint", "false")
33182	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
33183	urls += "?" + c.urlParams_.Encode()
33184	req, err := http.NewRequest("POST", urls, body)
33185	if err != nil {
33186		return nil, err
33187	}
33188	req.Header = reqHeaders
33189	googleapi.Expand(req.URL, map[string]string{
33190		"merchantId": strconv.FormatUint(c.merchantId, 10),
33191		"orderId":    c.orderId,
33192	})
33193	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33194}
33195
33196// Do executes the "content.orders.updatelineitemshippingdetails" call.
33197// Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
33198// will be non-nil. Any non-2xx status code is an error. Response
33199// headers are in either
33200// *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
33201// (if a response was returned at all) in
33202// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33203// whether the returned error was because http.StatusNotModified was
33204// returned.
33205func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
33206	gensupport.SetOptions(c.urlParams_, opts...)
33207	res, err := c.doRequest("json")
33208	if res != nil && res.StatusCode == http.StatusNotModified {
33209		if res.Body != nil {
33210			res.Body.Close()
33211		}
33212		return nil, &googleapi.Error{
33213			Code:   res.StatusCode,
33214			Header: res.Header,
33215		}
33216	}
33217	if err != nil {
33218		return nil, err
33219	}
33220	defer googleapi.CloseBody(res)
33221	if err := googleapi.CheckResponse(res); err != nil {
33222		return nil, err
33223	}
33224	ret := &OrdersUpdateLineItemShippingDetailsResponse{
33225		ServerResponse: googleapi.ServerResponse{
33226			Header:         res.Header,
33227			HTTPStatusCode: res.StatusCode,
33228		},
33229	}
33230	target := &ret
33231	if err := gensupport.DecodeResponse(target, res); err != nil {
33232		return nil, err
33233	}
33234	return ret, nil
33235	// {
33236	//   "description": "Updates ship by and delivery by dates for a line item.",
33237	//   "flatPath": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
33238	//   "httpMethod": "POST",
33239	//   "id": "content.orders.updatelineitemshippingdetails",
33240	//   "parameterOrder": [
33241	//     "merchantId",
33242	//     "orderId"
33243	//   ],
33244	//   "parameters": {
33245	//     "merchantId": {
33246	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33247	//       "format": "uint64",
33248	//       "location": "path",
33249	//       "required": true,
33250	//       "type": "string"
33251	//     },
33252	//     "orderId": {
33253	//       "description": "The ID of the order.",
33254	//       "location": "path",
33255	//       "required": true,
33256	//       "type": "string"
33257	//     }
33258	//   },
33259	//   "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
33260	//   "request": {
33261	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
33262	//   },
33263	//   "response": {
33264	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
33265	//   },
33266	//   "scopes": [
33267	//     "https://www.googleapis.com/auth/content"
33268	//   ]
33269	// }
33270
33271}
33272
33273// method id "content.orders.updatemerchantorderid":
33274
33275type OrdersUpdatemerchantorderidCall struct {
33276	s                                  *APIService
33277	merchantId                         uint64
33278	orderId                            string
33279	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
33280	urlParams_                         gensupport.URLParams
33281	ctx_                               context.Context
33282	header_                            http.Header
33283}
33284
33285// Updatemerchantorderid: Updates the merchant order ID for a given
33286// order.
33287//
33288// - merchantId: The ID of the account that manages the order. This
33289//   cannot be a multi-client account.
33290// - orderId: The ID of the order.
33291func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
33292	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33293	c.merchantId = merchantId
33294	c.orderId = orderId
33295	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
33296	return c
33297}
33298
33299// Fields allows partial responses to be retrieved. See
33300// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33301// for more information.
33302func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
33303	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33304	return c
33305}
33306
33307// Context sets the context to be used in this call's Do method. Any
33308// pending HTTP request will be aborted if the provided context is
33309// canceled.
33310func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
33311	c.ctx_ = ctx
33312	return c
33313}
33314
33315// Header returns an http.Header that can be modified by the caller to
33316// add HTTP headers to the request.
33317func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
33318	if c.header_ == nil {
33319		c.header_ = make(http.Header)
33320	}
33321	return c.header_
33322}
33323
33324func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
33325	reqHeaders := make(http.Header)
33326	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33327	for k, v := range c.header_ {
33328		reqHeaders[k] = v
33329	}
33330	reqHeaders.Set("User-Agent", c.s.userAgent())
33331	var body io.Reader = nil
33332	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
33333	if err != nil {
33334		return nil, err
33335	}
33336	reqHeaders.Set("Content-Type", "application/json")
33337	c.urlParams_.Set("alt", alt)
33338	c.urlParams_.Set("prettyPrint", "false")
33339	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateMerchantOrderId")
33340	urls += "?" + c.urlParams_.Encode()
33341	req, err := http.NewRequest("POST", urls, body)
33342	if err != nil {
33343		return nil, err
33344	}
33345	req.Header = reqHeaders
33346	googleapi.Expand(req.URL, map[string]string{
33347		"merchantId": strconv.FormatUint(c.merchantId, 10),
33348		"orderId":    c.orderId,
33349	})
33350	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33351}
33352
33353// Do executes the "content.orders.updatemerchantorderid" call.
33354// Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
33355// non-nil. Any non-2xx status code is an error. Response headers are in
33356// either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
33357// (if a response was returned at all) in
33358// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33359// whether the returned error was because http.StatusNotModified was
33360// returned.
33361func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
33362	gensupport.SetOptions(c.urlParams_, opts...)
33363	res, err := c.doRequest("json")
33364	if res != nil && res.StatusCode == http.StatusNotModified {
33365		if res.Body != nil {
33366			res.Body.Close()
33367		}
33368		return nil, &googleapi.Error{
33369			Code:   res.StatusCode,
33370			Header: res.Header,
33371		}
33372	}
33373	if err != nil {
33374		return nil, err
33375	}
33376	defer googleapi.CloseBody(res)
33377	if err := googleapi.CheckResponse(res); err != nil {
33378		return nil, err
33379	}
33380	ret := &OrdersUpdateMerchantOrderIdResponse{
33381		ServerResponse: googleapi.ServerResponse{
33382			Header:         res.Header,
33383			HTTPStatusCode: res.StatusCode,
33384		},
33385	}
33386	target := &ret
33387	if err := gensupport.DecodeResponse(target, res); err != nil {
33388		return nil, err
33389	}
33390	return ret, nil
33391	// {
33392	//   "description": "Updates the merchant order ID for a given order.",
33393	//   "flatPath": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
33394	//   "httpMethod": "POST",
33395	//   "id": "content.orders.updatemerchantorderid",
33396	//   "parameterOrder": [
33397	//     "merchantId",
33398	//     "orderId"
33399	//   ],
33400	//   "parameters": {
33401	//     "merchantId": {
33402	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33403	//       "format": "uint64",
33404	//       "location": "path",
33405	//       "required": true,
33406	//       "type": "string"
33407	//     },
33408	//     "orderId": {
33409	//       "description": "The ID of the order.",
33410	//       "location": "path",
33411	//       "required": true,
33412	//       "type": "string"
33413	//     }
33414	//   },
33415	//   "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
33416	//   "request": {
33417	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
33418	//   },
33419	//   "response": {
33420	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
33421	//   },
33422	//   "scopes": [
33423	//     "https://www.googleapis.com/auth/content"
33424	//   ]
33425	// }
33426
33427}
33428
33429// method id "content.orders.updateshipment":
33430
33431type OrdersUpdateshipmentCall struct {
33432	s                           *APIService
33433	merchantId                  uint64
33434	orderId                     string
33435	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
33436	urlParams_                  gensupport.URLParams
33437	ctx_                        context.Context
33438	header_                     http.Header
33439}
33440
33441// Updateshipment: Updates a shipment's status, carrier, and/or tracking
33442// ID.
33443//
33444// - merchantId: The ID of the account that manages the order. This
33445//   cannot be a multi-client account.
33446// - orderId: The ID of the order.
33447func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
33448	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33449	c.merchantId = merchantId
33450	c.orderId = orderId
33451	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
33452	return c
33453}
33454
33455// Fields allows partial responses to be retrieved. See
33456// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33457// for more information.
33458func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
33459	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33460	return c
33461}
33462
33463// Context sets the context to be used in this call's Do method. Any
33464// pending HTTP request will be aborted if the provided context is
33465// canceled.
33466func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
33467	c.ctx_ = ctx
33468	return c
33469}
33470
33471// Header returns an http.Header that can be modified by the caller to
33472// add HTTP headers to the request.
33473func (c *OrdersUpdateshipmentCall) Header() http.Header {
33474	if c.header_ == nil {
33475		c.header_ = make(http.Header)
33476	}
33477	return c.header_
33478}
33479
33480func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
33481	reqHeaders := make(http.Header)
33482	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33483	for k, v := range c.header_ {
33484		reqHeaders[k] = v
33485	}
33486	reqHeaders.Set("User-Agent", c.s.userAgent())
33487	var body io.Reader = nil
33488	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
33489	if err != nil {
33490		return nil, err
33491	}
33492	reqHeaders.Set("Content-Type", "application/json")
33493	c.urlParams_.Set("alt", alt)
33494	c.urlParams_.Set("prettyPrint", "false")
33495	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateShipment")
33496	urls += "?" + c.urlParams_.Encode()
33497	req, err := http.NewRequest("POST", urls, body)
33498	if err != nil {
33499		return nil, err
33500	}
33501	req.Header = reqHeaders
33502	googleapi.Expand(req.URL, map[string]string{
33503		"merchantId": strconv.FormatUint(c.merchantId, 10),
33504		"orderId":    c.orderId,
33505	})
33506	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33507}
33508
33509// Do executes the "content.orders.updateshipment" call.
33510// Exactly one of *OrdersUpdateShipmentResponse or error will be
33511// non-nil. Any non-2xx status code is an error. Response headers are in
33512// either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
33513// response was returned at all) in error.(*googleapi.Error).Header. Use
33514// googleapi.IsNotModified to check whether the returned error was
33515// because http.StatusNotModified was returned.
33516func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
33517	gensupport.SetOptions(c.urlParams_, opts...)
33518	res, err := c.doRequest("json")
33519	if res != nil && res.StatusCode == http.StatusNotModified {
33520		if res.Body != nil {
33521			res.Body.Close()
33522		}
33523		return nil, &googleapi.Error{
33524			Code:   res.StatusCode,
33525			Header: res.Header,
33526		}
33527	}
33528	if err != nil {
33529		return nil, err
33530	}
33531	defer googleapi.CloseBody(res)
33532	if err := googleapi.CheckResponse(res); err != nil {
33533		return nil, err
33534	}
33535	ret := &OrdersUpdateShipmentResponse{
33536		ServerResponse: googleapi.ServerResponse{
33537			Header:         res.Header,
33538			HTTPStatusCode: res.StatusCode,
33539		},
33540	}
33541	target := &ret
33542	if err := gensupport.DecodeResponse(target, res); err != nil {
33543		return nil, err
33544	}
33545	return ret, nil
33546	// {
33547	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
33548	//   "flatPath": "{merchantId}/orders/{orderId}/updateShipment",
33549	//   "httpMethod": "POST",
33550	//   "id": "content.orders.updateshipment",
33551	//   "parameterOrder": [
33552	//     "merchantId",
33553	//     "orderId"
33554	//   ],
33555	//   "parameters": {
33556	//     "merchantId": {
33557	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33558	//       "format": "uint64",
33559	//       "location": "path",
33560	//       "required": true,
33561	//       "type": "string"
33562	//     },
33563	//     "orderId": {
33564	//       "description": "The ID of the order.",
33565	//       "location": "path",
33566	//       "required": true,
33567	//       "type": "string"
33568	//     }
33569	//   },
33570	//   "path": "{merchantId}/orders/{orderId}/updateShipment",
33571	//   "request": {
33572	//     "$ref": "OrdersUpdateShipmentRequest"
33573	//   },
33574	//   "response": {
33575	//     "$ref": "OrdersUpdateShipmentResponse"
33576	//   },
33577	//   "scopes": [
33578	//     "https://www.googleapis.com/auth/content"
33579	//   ]
33580	// }
33581
33582}
33583
33584// method id "content.ordertrackingsignals.create":
33585
33586type OrdertrackingsignalsCreateCall struct {
33587	s                   *APIService
33588	merchantId          int64
33589	ordertrackingsignal *OrderTrackingSignal
33590	urlParams_          gensupport.URLParams
33591	ctx_                context.Context
33592	header_             http.Header
33593}
33594
33595// Create: Creates new order tracking signal.
33596//
33597// - merchantId: The ID of the merchant for which the order signal is
33598//   created.
33599func (r *OrdertrackingsignalsService) Create(merchantId int64, ordertrackingsignal *OrderTrackingSignal) *OrdertrackingsignalsCreateCall {
33600	c := &OrdertrackingsignalsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33601	c.merchantId = merchantId
33602	c.ordertrackingsignal = ordertrackingsignal
33603	return c
33604}
33605
33606// Fields allows partial responses to be retrieved. See
33607// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33608// for more information.
33609func (c *OrdertrackingsignalsCreateCall) Fields(s ...googleapi.Field) *OrdertrackingsignalsCreateCall {
33610	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33611	return c
33612}
33613
33614// Context sets the context to be used in this call's Do method. Any
33615// pending HTTP request will be aborted if the provided context is
33616// canceled.
33617func (c *OrdertrackingsignalsCreateCall) Context(ctx context.Context) *OrdertrackingsignalsCreateCall {
33618	c.ctx_ = ctx
33619	return c
33620}
33621
33622// Header returns an http.Header that can be modified by the caller to
33623// add HTTP headers to the request.
33624func (c *OrdertrackingsignalsCreateCall) Header() http.Header {
33625	if c.header_ == nil {
33626		c.header_ = make(http.Header)
33627	}
33628	return c.header_
33629}
33630
33631func (c *OrdertrackingsignalsCreateCall) doRequest(alt string) (*http.Response, error) {
33632	reqHeaders := make(http.Header)
33633	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33634	for k, v := range c.header_ {
33635		reqHeaders[k] = v
33636	}
33637	reqHeaders.Set("User-Agent", c.s.userAgent())
33638	var body io.Reader = nil
33639	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordertrackingsignal)
33640	if err != nil {
33641		return nil, err
33642	}
33643	reqHeaders.Set("Content-Type", "application/json")
33644	c.urlParams_.Set("alt", alt)
33645	c.urlParams_.Set("prettyPrint", "false")
33646	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordertrackingsignals")
33647	urls += "?" + c.urlParams_.Encode()
33648	req, err := http.NewRequest("POST", urls, body)
33649	if err != nil {
33650		return nil, err
33651	}
33652	req.Header = reqHeaders
33653	googleapi.Expand(req.URL, map[string]string{
33654		"merchantId": strconv.FormatInt(c.merchantId, 10),
33655	})
33656	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33657}
33658
33659// Do executes the "content.ordertrackingsignals.create" call.
33660// Exactly one of *OrderTrackingSignal or error will be non-nil. Any
33661// non-2xx status code is an error. Response headers are in either
33662// *OrderTrackingSignal.ServerResponse.Header or (if a response was
33663// returned at all) in error.(*googleapi.Error).Header. Use
33664// googleapi.IsNotModified to check whether the returned error was
33665// because http.StatusNotModified was returned.
33666func (c *OrdertrackingsignalsCreateCall) Do(opts ...googleapi.CallOption) (*OrderTrackingSignal, error) {
33667	gensupport.SetOptions(c.urlParams_, opts...)
33668	res, err := c.doRequest("json")
33669	if res != nil && res.StatusCode == http.StatusNotModified {
33670		if res.Body != nil {
33671			res.Body.Close()
33672		}
33673		return nil, &googleapi.Error{
33674			Code:   res.StatusCode,
33675			Header: res.Header,
33676		}
33677	}
33678	if err != nil {
33679		return nil, err
33680	}
33681	defer googleapi.CloseBody(res)
33682	if err := googleapi.CheckResponse(res); err != nil {
33683		return nil, err
33684	}
33685	ret := &OrderTrackingSignal{
33686		ServerResponse: googleapi.ServerResponse{
33687			Header:         res.Header,
33688			HTTPStatusCode: res.StatusCode,
33689		},
33690	}
33691	target := &ret
33692	if err := gensupport.DecodeResponse(target, res); err != nil {
33693		return nil, err
33694	}
33695	return ret, nil
33696	// {
33697	//   "description": "Creates new order tracking signal.",
33698	//   "flatPath": "{merchantId}/ordertrackingsignals",
33699	//   "httpMethod": "POST",
33700	//   "id": "content.ordertrackingsignals.create",
33701	//   "parameterOrder": [
33702	//     "merchantId"
33703	//   ],
33704	//   "parameters": {
33705	//     "merchantId": {
33706	//       "description": "The ID of the merchant for which the order signal is created.",
33707	//       "format": "int64",
33708	//       "location": "path",
33709	//       "required": true,
33710	//       "type": "string"
33711	//     }
33712	//   },
33713	//   "path": "{merchantId}/ordertrackingsignals",
33714	//   "request": {
33715	//     "$ref": "OrderTrackingSignal"
33716	//   },
33717	//   "response": {
33718	//     "$ref": "OrderTrackingSignal"
33719	//   },
33720	//   "scopes": [
33721	//     "https://www.googleapis.com/auth/content"
33722	//   ]
33723	// }
33724
33725}
33726
33727// method id "content.pos.custombatch":
33728
33729type PosCustombatchCall struct {
33730	s                     *APIService
33731	poscustombatchrequest *PosCustomBatchRequest
33732	urlParams_            gensupport.URLParams
33733	ctx_                  context.Context
33734	header_               http.Header
33735}
33736
33737// Custombatch: Batches multiple POS-related calls in a single request.
33738func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
33739	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33740	c.poscustombatchrequest = poscustombatchrequest
33741	return c
33742}
33743
33744// Fields allows partial responses to be retrieved. See
33745// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33746// for more information.
33747func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
33748	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33749	return c
33750}
33751
33752// Context sets the context to be used in this call's Do method. Any
33753// pending HTTP request will be aborted if the provided context is
33754// canceled.
33755func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
33756	c.ctx_ = ctx
33757	return c
33758}
33759
33760// Header returns an http.Header that can be modified by the caller to
33761// add HTTP headers to the request.
33762func (c *PosCustombatchCall) Header() http.Header {
33763	if c.header_ == nil {
33764		c.header_ = make(http.Header)
33765	}
33766	return c.header_
33767}
33768
33769func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
33770	reqHeaders := make(http.Header)
33771	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33772	for k, v := range c.header_ {
33773		reqHeaders[k] = v
33774	}
33775	reqHeaders.Set("User-Agent", c.s.userAgent())
33776	var body io.Reader = nil
33777	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
33778	if err != nil {
33779		return nil, err
33780	}
33781	reqHeaders.Set("Content-Type", "application/json")
33782	c.urlParams_.Set("alt", alt)
33783	c.urlParams_.Set("prettyPrint", "false")
33784	urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch")
33785	urls += "?" + c.urlParams_.Encode()
33786	req, err := http.NewRequest("POST", urls, body)
33787	if err != nil {
33788		return nil, err
33789	}
33790	req.Header = reqHeaders
33791	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33792}
33793
33794// Do executes the "content.pos.custombatch" call.
33795// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
33796// non-2xx status code is an error. Response headers are in either
33797// *PosCustomBatchResponse.ServerResponse.Header or (if a response was
33798// returned at all) in error.(*googleapi.Error).Header. Use
33799// googleapi.IsNotModified to check whether the returned error was
33800// because http.StatusNotModified was returned.
33801func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
33802	gensupport.SetOptions(c.urlParams_, opts...)
33803	res, err := c.doRequest("json")
33804	if res != nil && res.StatusCode == http.StatusNotModified {
33805		if res.Body != nil {
33806			res.Body.Close()
33807		}
33808		return nil, &googleapi.Error{
33809			Code:   res.StatusCode,
33810			Header: res.Header,
33811		}
33812	}
33813	if err != nil {
33814		return nil, err
33815	}
33816	defer googleapi.CloseBody(res)
33817	if err := googleapi.CheckResponse(res); err != nil {
33818		return nil, err
33819	}
33820	ret := &PosCustomBatchResponse{
33821		ServerResponse: googleapi.ServerResponse{
33822			Header:         res.Header,
33823			HTTPStatusCode: res.StatusCode,
33824		},
33825	}
33826	target := &ret
33827	if err := gensupport.DecodeResponse(target, res); err != nil {
33828		return nil, err
33829	}
33830	return ret, nil
33831	// {
33832	//   "description": "Batches multiple POS-related calls in a single request.",
33833	//   "flatPath": "pos/batch",
33834	//   "httpMethod": "POST",
33835	//   "id": "content.pos.custombatch",
33836	//   "parameterOrder": [],
33837	//   "parameters": {},
33838	//   "path": "pos/batch",
33839	//   "request": {
33840	//     "$ref": "PosCustomBatchRequest"
33841	//   },
33842	//   "response": {
33843	//     "$ref": "PosCustomBatchResponse"
33844	//   },
33845	//   "scopes": [
33846	//     "https://www.googleapis.com/auth/content"
33847	//   ]
33848	// }
33849
33850}
33851
33852// method id "content.pos.delete":
33853
33854type PosDeleteCall struct {
33855	s                *APIService
33856	merchantId       uint64
33857	targetMerchantId uint64
33858	storeCode        string
33859	urlParams_       gensupport.URLParams
33860	ctx_             context.Context
33861	header_          http.Header
33862}
33863
33864// Delete: Deletes a store for the given merchant.
33865//
33866// - merchantId: The ID of the POS or inventory data provider.
33867// - storeCode: A store code that is unique per merchant.
33868// - targetMerchantId: The ID of the target merchant.
33869func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
33870	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33871	c.merchantId = merchantId
33872	c.targetMerchantId = targetMerchantId
33873	c.storeCode = storeCode
33874	return c
33875}
33876
33877// Fields allows partial responses to be retrieved. See
33878// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33879// for more information.
33880func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
33881	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33882	return c
33883}
33884
33885// Context sets the context to be used in this call's Do method. Any
33886// pending HTTP request will be aborted if the provided context is
33887// canceled.
33888func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
33889	c.ctx_ = ctx
33890	return c
33891}
33892
33893// Header returns an http.Header that can be modified by the caller to
33894// add HTTP headers to the request.
33895func (c *PosDeleteCall) Header() http.Header {
33896	if c.header_ == nil {
33897		c.header_ = make(http.Header)
33898	}
33899	return c.header_
33900}
33901
33902func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
33903	reqHeaders := make(http.Header)
33904	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33905	for k, v := range c.header_ {
33906		reqHeaders[k] = v
33907	}
33908	reqHeaders.Set("User-Agent", c.s.userAgent())
33909	var body io.Reader = nil
33910	c.urlParams_.Set("alt", alt)
33911	c.urlParams_.Set("prettyPrint", "false")
33912	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
33913	urls += "?" + c.urlParams_.Encode()
33914	req, err := http.NewRequest("DELETE", urls, body)
33915	if err != nil {
33916		return nil, err
33917	}
33918	req.Header = reqHeaders
33919	googleapi.Expand(req.URL, map[string]string{
33920		"merchantId":       strconv.FormatUint(c.merchantId, 10),
33921		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
33922		"storeCode":        c.storeCode,
33923	})
33924	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33925}
33926
33927// Do executes the "content.pos.delete" call.
33928func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
33929	gensupport.SetOptions(c.urlParams_, opts...)
33930	res, err := c.doRequest("json")
33931	if err != nil {
33932		return err
33933	}
33934	defer googleapi.CloseBody(res)
33935	if err := googleapi.CheckResponse(res); err != nil {
33936		return err
33937	}
33938	return nil
33939	// {
33940	//   "description": "Deletes a store for the given merchant.",
33941	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
33942	//   "httpMethod": "DELETE",
33943	//   "id": "content.pos.delete",
33944	//   "parameterOrder": [
33945	//     "merchantId",
33946	//     "targetMerchantId",
33947	//     "storeCode"
33948	//   ],
33949	//   "parameters": {
33950	//     "merchantId": {
33951	//       "description": "The ID of the POS or inventory data provider.",
33952	//       "format": "uint64",
33953	//       "location": "path",
33954	//       "required": true,
33955	//       "type": "string"
33956	//     },
33957	//     "storeCode": {
33958	//       "description": "A store code that is unique per merchant.",
33959	//       "location": "path",
33960	//       "required": true,
33961	//       "type": "string"
33962	//     },
33963	//     "targetMerchantId": {
33964	//       "description": "The ID of the target merchant.",
33965	//       "format": "uint64",
33966	//       "location": "path",
33967	//       "required": true,
33968	//       "type": "string"
33969	//     }
33970	//   },
33971	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
33972	//   "scopes": [
33973	//     "https://www.googleapis.com/auth/content"
33974	//   ]
33975	// }
33976
33977}
33978
33979// method id "content.pos.get":
33980
33981type PosGetCall struct {
33982	s                *APIService
33983	merchantId       uint64
33984	targetMerchantId uint64
33985	storeCode        string
33986	urlParams_       gensupport.URLParams
33987	ifNoneMatch_     string
33988	ctx_             context.Context
33989	header_          http.Header
33990}
33991
33992// Get: Retrieves information about the given store.
33993//
33994// - merchantId: The ID of the POS or inventory data provider.
33995// - storeCode: A store code that is unique per merchant.
33996// - targetMerchantId: The ID of the target merchant.
33997func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
33998	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33999	c.merchantId = merchantId
34000	c.targetMerchantId = targetMerchantId
34001	c.storeCode = storeCode
34002	return c
34003}
34004
34005// Fields allows partial responses to be retrieved. See
34006// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34007// for more information.
34008func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
34009	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34010	return c
34011}
34012
34013// IfNoneMatch sets the optional parameter which makes the operation
34014// fail if the object's ETag matches the given value. This is useful for
34015// getting updates only after the object has changed since the last
34016// request. Use googleapi.IsNotModified to check whether the response
34017// error from Do is the result of In-None-Match.
34018func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
34019	c.ifNoneMatch_ = entityTag
34020	return c
34021}
34022
34023// Context sets the context to be used in this call's Do method. Any
34024// pending HTTP request will be aborted if the provided context is
34025// canceled.
34026func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
34027	c.ctx_ = ctx
34028	return c
34029}
34030
34031// Header returns an http.Header that can be modified by the caller to
34032// add HTTP headers to the request.
34033func (c *PosGetCall) Header() http.Header {
34034	if c.header_ == nil {
34035		c.header_ = make(http.Header)
34036	}
34037	return c.header_
34038}
34039
34040func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
34041	reqHeaders := make(http.Header)
34042	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34043	for k, v := range c.header_ {
34044		reqHeaders[k] = v
34045	}
34046	reqHeaders.Set("User-Agent", c.s.userAgent())
34047	if c.ifNoneMatch_ != "" {
34048		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34049	}
34050	var body io.Reader = nil
34051	c.urlParams_.Set("alt", alt)
34052	c.urlParams_.Set("prettyPrint", "false")
34053	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
34054	urls += "?" + c.urlParams_.Encode()
34055	req, err := http.NewRequest("GET", urls, body)
34056	if err != nil {
34057		return nil, err
34058	}
34059	req.Header = reqHeaders
34060	googleapi.Expand(req.URL, map[string]string{
34061		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34062		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34063		"storeCode":        c.storeCode,
34064	})
34065	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34066}
34067
34068// Do executes the "content.pos.get" call.
34069// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
34070// code is an error. Response headers are in either
34071// *PosStore.ServerResponse.Header or (if a response was returned at
34072// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
34073// to check whether the returned error was because
34074// http.StatusNotModified was returned.
34075func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
34076	gensupport.SetOptions(c.urlParams_, opts...)
34077	res, err := c.doRequest("json")
34078	if res != nil && res.StatusCode == http.StatusNotModified {
34079		if res.Body != nil {
34080			res.Body.Close()
34081		}
34082		return nil, &googleapi.Error{
34083			Code:   res.StatusCode,
34084			Header: res.Header,
34085		}
34086	}
34087	if err != nil {
34088		return nil, err
34089	}
34090	defer googleapi.CloseBody(res)
34091	if err := googleapi.CheckResponse(res); err != nil {
34092		return nil, err
34093	}
34094	ret := &PosStore{
34095		ServerResponse: googleapi.ServerResponse{
34096			Header:         res.Header,
34097			HTTPStatusCode: res.StatusCode,
34098		},
34099	}
34100	target := &ret
34101	if err := gensupport.DecodeResponse(target, res); err != nil {
34102		return nil, err
34103	}
34104	return ret, nil
34105	// {
34106	//   "description": "Retrieves information about the given store.",
34107	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
34108	//   "httpMethod": "GET",
34109	//   "id": "content.pos.get",
34110	//   "parameterOrder": [
34111	//     "merchantId",
34112	//     "targetMerchantId",
34113	//     "storeCode"
34114	//   ],
34115	//   "parameters": {
34116	//     "merchantId": {
34117	//       "description": "The ID of the POS or inventory data provider.",
34118	//       "format": "uint64",
34119	//       "location": "path",
34120	//       "required": true,
34121	//       "type": "string"
34122	//     },
34123	//     "storeCode": {
34124	//       "description": "A store code that is unique per merchant.",
34125	//       "location": "path",
34126	//       "required": true,
34127	//       "type": "string"
34128	//     },
34129	//     "targetMerchantId": {
34130	//       "description": "The ID of the target merchant.",
34131	//       "format": "uint64",
34132	//       "location": "path",
34133	//       "required": true,
34134	//       "type": "string"
34135	//     }
34136	//   },
34137	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
34138	//   "response": {
34139	//     "$ref": "PosStore"
34140	//   },
34141	//   "scopes": [
34142	//     "https://www.googleapis.com/auth/content"
34143	//   ]
34144	// }
34145
34146}
34147
34148// method id "content.pos.insert":
34149
34150type PosInsertCall struct {
34151	s                *APIService
34152	merchantId       uint64
34153	targetMerchantId uint64
34154	posstore         *PosStore
34155	urlParams_       gensupport.URLParams
34156	ctx_             context.Context
34157	header_          http.Header
34158}
34159
34160// Insert: Creates a store for the given merchant.
34161//
34162// - merchantId: The ID of the POS or inventory data provider.
34163// - targetMerchantId: The ID of the target merchant.
34164func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
34165	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34166	c.merchantId = merchantId
34167	c.targetMerchantId = targetMerchantId
34168	c.posstore = posstore
34169	return c
34170}
34171
34172// Fields allows partial responses to be retrieved. See
34173// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34174// for more information.
34175func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
34176	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34177	return c
34178}
34179
34180// Context sets the context to be used in this call's Do method. Any
34181// pending HTTP request will be aborted if the provided context is
34182// canceled.
34183func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
34184	c.ctx_ = ctx
34185	return c
34186}
34187
34188// Header returns an http.Header that can be modified by the caller to
34189// add HTTP headers to the request.
34190func (c *PosInsertCall) Header() http.Header {
34191	if c.header_ == nil {
34192		c.header_ = make(http.Header)
34193	}
34194	return c.header_
34195}
34196
34197func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
34198	reqHeaders := make(http.Header)
34199	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34200	for k, v := range c.header_ {
34201		reqHeaders[k] = v
34202	}
34203	reqHeaders.Set("User-Agent", c.s.userAgent())
34204	var body io.Reader = nil
34205	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
34206	if err != nil {
34207		return nil, err
34208	}
34209	reqHeaders.Set("Content-Type", "application/json")
34210	c.urlParams_.Set("alt", alt)
34211	c.urlParams_.Set("prettyPrint", "false")
34212	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
34213	urls += "?" + c.urlParams_.Encode()
34214	req, err := http.NewRequest("POST", urls, body)
34215	if err != nil {
34216		return nil, err
34217	}
34218	req.Header = reqHeaders
34219	googleapi.Expand(req.URL, map[string]string{
34220		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34221		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34222	})
34223	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34224}
34225
34226// Do executes the "content.pos.insert" call.
34227// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
34228// code is an error. Response headers are in either
34229// *PosStore.ServerResponse.Header or (if a response was returned at
34230// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
34231// to check whether the returned error was because
34232// http.StatusNotModified was returned.
34233func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
34234	gensupport.SetOptions(c.urlParams_, opts...)
34235	res, err := c.doRequest("json")
34236	if res != nil && res.StatusCode == http.StatusNotModified {
34237		if res.Body != nil {
34238			res.Body.Close()
34239		}
34240		return nil, &googleapi.Error{
34241			Code:   res.StatusCode,
34242			Header: res.Header,
34243		}
34244	}
34245	if err != nil {
34246		return nil, err
34247	}
34248	defer googleapi.CloseBody(res)
34249	if err := googleapi.CheckResponse(res); err != nil {
34250		return nil, err
34251	}
34252	ret := &PosStore{
34253		ServerResponse: googleapi.ServerResponse{
34254			Header:         res.Header,
34255			HTTPStatusCode: res.StatusCode,
34256		},
34257	}
34258	target := &ret
34259	if err := gensupport.DecodeResponse(target, res); err != nil {
34260		return nil, err
34261	}
34262	return ret, nil
34263	// {
34264	//   "description": "Creates a store for the given merchant.",
34265	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
34266	//   "httpMethod": "POST",
34267	//   "id": "content.pos.insert",
34268	//   "parameterOrder": [
34269	//     "merchantId",
34270	//     "targetMerchantId"
34271	//   ],
34272	//   "parameters": {
34273	//     "merchantId": {
34274	//       "description": "The ID of the POS or inventory data provider.",
34275	//       "format": "uint64",
34276	//       "location": "path",
34277	//       "required": true,
34278	//       "type": "string"
34279	//     },
34280	//     "targetMerchantId": {
34281	//       "description": "The ID of the target merchant.",
34282	//       "format": "uint64",
34283	//       "location": "path",
34284	//       "required": true,
34285	//       "type": "string"
34286	//     }
34287	//   },
34288	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
34289	//   "request": {
34290	//     "$ref": "PosStore"
34291	//   },
34292	//   "response": {
34293	//     "$ref": "PosStore"
34294	//   },
34295	//   "scopes": [
34296	//     "https://www.googleapis.com/auth/content"
34297	//   ]
34298	// }
34299
34300}
34301
34302// method id "content.pos.inventory":
34303
34304type PosInventoryCall struct {
34305	s                   *APIService
34306	merchantId          uint64
34307	targetMerchantId    uint64
34308	posinventoryrequest *PosInventoryRequest
34309	urlParams_          gensupport.URLParams
34310	ctx_                context.Context
34311	header_             http.Header
34312}
34313
34314// Inventory: Submit inventory for the given merchant.
34315//
34316// - merchantId: The ID of the POS or inventory data provider.
34317// - targetMerchantId: The ID of the target merchant.
34318func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
34319	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34320	c.merchantId = merchantId
34321	c.targetMerchantId = targetMerchantId
34322	c.posinventoryrequest = posinventoryrequest
34323	return c
34324}
34325
34326// Fields allows partial responses to be retrieved. See
34327// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34328// for more information.
34329func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
34330	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34331	return c
34332}
34333
34334// Context sets the context to be used in this call's Do method. Any
34335// pending HTTP request will be aborted if the provided context is
34336// canceled.
34337func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
34338	c.ctx_ = ctx
34339	return c
34340}
34341
34342// Header returns an http.Header that can be modified by the caller to
34343// add HTTP headers to the request.
34344func (c *PosInventoryCall) Header() http.Header {
34345	if c.header_ == nil {
34346		c.header_ = make(http.Header)
34347	}
34348	return c.header_
34349}
34350
34351func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
34352	reqHeaders := make(http.Header)
34353	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34354	for k, v := range c.header_ {
34355		reqHeaders[k] = v
34356	}
34357	reqHeaders.Set("User-Agent", c.s.userAgent())
34358	var body io.Reader = nil
34359	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
34360	if err != nil {
34361		return nil, err
34362	}
34363	reqHeaders.Set("Content-Type", "application/json")
34364	c.urlParams_.Set("alt", alt)
34365	c.urlParams_.Set("prettyPrint", "false")
34366	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory")
34367	urls += "?" + c.urlParams_.Encode()
34368	req, err := http.NewRequest("POST", urls, body)
34369	if err != nil {
34370		return nil, err
34371	}
34372	req.Header = reqHeaders
34373	googleapi.Expand(req.URL, map[string]string{
34374		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34375		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34376	})
34377	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34378}
34379
34380// Do executes the "content.pos.inventory" call.
34381// Exactly one of *PosInventoryResponse or error will be non-nil. Any
34382// non-2xx status code is an error. Response headers are in either
34383// *PosInventoryResponse.ServerResponse.Header or (if a response was
34384// returned at all) in error.(*googleapi.Error).Header. Use
34385// googleapi.IsNotModified to check whether the returned error was
34386// because http.StatusNotModified was returned.
34387func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
34388	gensupport.SetOptions(c.urlParams_, opts...)
34389	res, err := c.doRequest("json")
34390	if res != nil && res.StatusCode == http.StatusNotModified {
34391		if res.Body != nil {
34392			res.Body.Close()
34393		}
34394		return nil, &googleapi.Error{
34395			Code:   res.StatusCode,
34396			Header: res.Header,
34397		}
34398	}
34399	if err != nil {
34400		return nil, err
34401	}
34402	defer googleapi.CloseBody(res)
34403	if err := googleapi.CheckResponse(res); err != nil {
34404		return nil, err
34405	}
34406	ret := &PosInventoryResponse{
34407		ServerResponse: googleapi.ServerResponse{
34408			Header:         res.Header,
34409			HTTPStatusCode: res.StatusCode,
34410		},
34411	}
34412	target := &ret
34413	if err := gensupport.DecodeResponse(target, res); err != nil {
34414		return nil, err
34415	}
34416	return ret, nil
34417	// {
34418	//   "description": "Submit inventory for the given merchant.",
34419	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/inventory",
34420	//   "httpMethod": "POST",
34421	//   "id": "content.pos.inventory",
34422	//   "parameterOrder": [
34423	//     "merchantId",
34424	//     "targetMerchantId"
34425	//   ],
34426	//   "parameters": {
34427	//     "merchantId": {
34428	//       "description": "The ID of the POS or inventory data provider.",
34429	//       "format": "uint64",
34430	//       "location": "path",
34431	//       "required": true,
34432	//       "type": "string"
34433	//     },
34434	//     "targetMerchantId": {
34435	//       "description": "The ID of the target merchant.",
34436	//       "format": "uint64",
34437	//       "location": "path",
34438	//       "required": true,
34439	//       "type": "string"
34440	//     }
34441	//   },
34442	//   "path": "{merchantId}/pos/{targetMerchantId}/inventory",
34443	//   "request": {
34444	//     "$ref": "PosInventoryRequest"
34445	//   },
34446	//   "response": {
34447	//     "$ref": "PosInventoryResponse"
34448	//   },
34449	//   "scopes": [
34450	//     "https://www.googleapis.com/auth/content"
34451	//   ]
34452	// }
34453
34454}
34455
34456// method id "content.pos.list":
34457
34458type PosListCall struct {
34459	s                *APIService
34460	merchantId       uint64
34461	targetMerchantId uint64
34462	urlParams_       gensupport.URLParams
34463	ifNoneMatch_     string
34464	ctx_             context.Context
34465	header_          http.Header
34466}
34467
34468// List: Lists the stores of the target merchant.
34469//
34470// - merchantId: The ID of the POS or inventory data provider.
34471// - targetMerchantId: The ID of the target merchant.
34472func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
34473	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34474	c.merchantId = merchantId
34475	c.targetMerchantId = targetMerchantId
34476	return c
34477}
34478
34479// Fields allows partial responses to be retrieved. See
34480// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34481// for more information.
34482func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
34483	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34484	return c
34485}
34486
34487// IfNoneMatch sets the optional parameter which makes the operation
34488// fail if the object's ETag matches the given value. This is useful for
34489// getting updates only after the object has changed since the last
34490// request. Use googleapi.IsNotModified to check whether the response
34491// error from Do is the result of In-None-Match.
34492func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
34493	c.ifNoneMatch_ = entityTag
34494	return c
34495}
34496
34497// Context sets the context to be used in this call's Do method. Any
34498// pending HTTP request will be aborted if the provided context is
34499// canceled.
34500func (c *PosListCall) Context(ctx context.Context) *PosListCall {
34501	c.ctx_ = ctx
34502	return c
34503}
34504
34505// Header returns an http.Header that can be modified by the caller to
34506// add HTTP headers to the request.
34507func (c *PosListCall) Header() http.Header {
34508	if c.header_ == nil {
34509		c.header_ = make(http.Header)
34510	}
34511	return c.header_
34512}
34513
34514func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
34515	reqHeaders := make(http.Header)
34516	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34517	for k, v := range c.header_ {
34518		reqHeaders[k] = v
34519	}
34520	reqHeaders.Set("User-Agent", c.s.userAgent())
34521	if c.ifNoneMatch_ != "" {
34522		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34523	}
34524	var body io.Reader = nil
34525	c.urlParams_.Set("alt", alt)
34526	c.urlParams_.Set("prettyPrint", "false")
34527	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
34528	urls += "?" + c.urlParams_.Encode()
34529	req, err := http.NewRequest("GET", urls, body)
34530	if err != nil {
34531		return nil, err
34532	}
34533	req.Header = reqHeaders
34534	googleapi.Expand(req.URL, map[string]string{
34535		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34536		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34537	})
34538	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34539}
34540
34541// Do executes the "content.pos.list" call.
34542// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
34543// status code is an error. Response headers are in either
34544// *PosListResponse.ServerResponse.Header or (if a response was returned
34545// at all) in error.(*googleapi.Error).Header. Use
34546// googleapi.IsNotModified to check whether the returned error was
34547// because http.StatusNotModified was returned.
34548func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
34549	gensupport.SetOptions(c.urlParams_, opts...)
34550	res, err := c.doRequest("json")
34551	if res != nil && res.StatusCode == http.StatusNotModified {
34552		if res.Body != nil {
34553			res.Body.Close()
34554		}
34555		return nil, &googleapi.Error{
34556			Code:   res.StatusCode,
34557			Header: res.Header,
34558		}
34559	}
34560	if err != nil {
34561		return nil, err
34562	}
34563	defer googleapi.CloseBody(res)
34564	if err := googleapi.CheckResponse(res); err != nil {
34565		return nil, err
34566	}
34567	ret := &PosListResponse{
34568		ServerResponse: googleapi.ServerResponse{
34569			Header:         res.Header,
34570			HTTPStatusCode: res.StatusCode,
34571		},
34572	}
34573	target := &ret
34574	if err := gensupport.DecodeResponse(target, res); err != nil {
34575		return nil, err
34576	}
34577	return ret, nil
34578	// {
34579	//   "description": "Lists the stores of the target merchant.",
34580	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
34581	//   "httpMethod": "GET",
34582	//   "id": "content.pos.list",
34583	//   "parameterOrder": [
34584	//     "merchantId",
34585	//     "targetMerchantId"
34586	//   ],
34587	//   "parameters": {
34588	//     "merchantId": {
34589	//       "description": "The ID of the POS or inventory data provider.",
34590	//       "format": "uint64",
34591	//       "location": "path",
34592	//       "required": true,
34593	//       "type": "string"
34594	//     },
34595	//     "targetMerchantId": {
34596	//       "description": "The ID of the target merchant.",
34597	//       "format": "uint64",
34598	//       "location": "path",
34599	//       "required": true,
34600	//       "type": "string"
34601	//     }
34602	//   },
34603	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
34604	//   "response": {
34605	//     "$ref": "PosListResponse"
34606	//   },
34607	//   "scopes": [
34608	//     "https://www.googleapis.com/auth/content"
34609	//   ]
34610	// }
34611
34612}
34613
34614// method id "content.pos.sale":
34615
34616type PosSaleCall struct {
34617	s                *APIService
34618	merchantId       uint64
34619	targetMerchantId uint64
34620	possalerequest   *PosSaleRequest
34621	urlParams_       gensupport.URLParams
34622	ctx_             context.Context
34623	header_          http.Header
34624}
34625
34626// Sale: Submit a sale event for the given merchant.
34627//
34628// - merchantId: The ID of the POS or inventory data provider.
34629// - targetMerchantId: The ID of the target merchant.
34630func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
34631	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34632	c.merchantId = merchantId
34633	c.targetMerchantId = targetMerchantId
34634	c.possalerequest = possalerequest
34635	return c
34636}
34637
34638// Fields allows partial responses to be retrieved. See
34639// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34640// for more information.
34641func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
34642	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34643	return c
34644}
34645
34646// Context sets the context to be used in this call's Do method. Any
34647// pending HTTP request will be aborted if the provided context is
34648// canceled.
34649func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
34650	c.ctx_ = ctx
34651	return c
34652}
34653
34654// Header returns an http.Header that can be modified by the caller to
34655// add HTTP headers to the request.
34656func (c *PosSaleCall) Header() http.Header {
34657	if c.header_ == nil {
34658		c.header_ = make(http.Header)
34659	}
34660	return c.header_
34661}
34662
34663func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
34664	reqHeaders := make(http.Header)
34665	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34666	for k, v := range c.header_ {
34667		reqHeaders[k] = v
34668	}
34669	reqHeaders.Set("User-Agent", c.s.userAgent())
34670	var body io.Reader = nil
34671	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
34672	if err != nil {
34673		return nil, err
34674	}
34675	reqHeaders.Set("Content-Type", "application/json")
34676	c.urlParams_.Set("alt", alt)
34677	c.urlParams_.Set("prettyPrint", "false")
34678	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale")
34679	urls += "?" + c.urlParams_.Encode()
34680	req, err := http.NewRequest("POST", urls, body)
34681	if err != nil {
34682		return nil, err
34683	}
34684	req.Header = reqHeaders
34685	googleapi.Expand(req.URL, map[string]string{
34686		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34687		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34688	})
34689	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34690}
34691
34692// Do executes the "content.pos.sale" call.
34693// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
34694// status code is an error. Response headers are in either
34695// *PosSaleResponse.ServerResponse.Header or (if a response was returned
34696// at all) in error.(*googleapi.Error).Header. Use
34697// googleapi.IsNotModified to check whether the returned error was
34698// because http.StatusNotModified was returned.
34699func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) {
34700	gensupport.SetOptions(c.urlParams_, opts...)
34701	res, err := c.doRequest("json")
34702	if res != nil && res.StatusCode == http.StatusNotModified {
34703		if res.Body != nil {
34704			res.Body.Close()
34705		}
34706		return nil, &googleapi.Error{
34707			Code:   res.StatusCode,
34708			Header: res.Header,
34709		}
34710	}
34711	if err != nil {
34712		return nil, err
34713	}
34714	defer googleapi.CloseBody(res)
34715	if err := googleapi.CheckResponse(res); err != nil {
34716		return nil, err
34717	}
34718	ret := &PosSaleResponse{
34719		ServerResponse: googleapi.ServerResponse{
34720			Header:         res.Header,
34721			HTTPStatusCode: res.StatusCode,
34722		},
34723	}
34724	target := &ret
34725	if err := gensupport.DecodeResponse(target, res); err != nil {
34726		return nil, err
34727	}
34728	return ret, nil
34729	// {
34730	//   "description": "Submit a sale event for the given merchant.",
34731	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/sale",
34732	//   "httpMethod": "POST",
34733	//   "id": "content.pos.sale",
34734	//   "parameterOrder": [
34735	//     "merchantId",
34736	//     "targetMerchantId"
34737	//   ],
34738	//   "parameters": {
34739	//     "merchantId": {
34740	//       "description": "The ID of the POS or inventory data provider.",
34741	//       "format": "uint64",
34742	//       "location": "path",
34743	//       "required": true,
34744	//       "type": "string"
34745	//     },
34746	//     "targetMerchantId": {
34747	//       "description": "The ID of the target merchant.",
34748	//       "format": "uint64",
34749	//       "location": "path",
34750	//       "required": true,
34751	//       "type": "string"
34752	//     }
34753	//   },
34754	//   "path": "{merchantId}/pos/{targetMerchantId}/sale",
34755	//   "request": {
34756	//     "$ref": "PosSaleRequest"
34757	//   },
34758	//   "response": {
34759	//     "$ref": "PosSaleResponse"
34760	//   },
34761	//   "scopes": [
34762	//     "https://www.googleapis.com/auth/content"
34763	//   ]
34764	// }
34765
34766}
34767
34768// method id "content.products.custombatch":
34769
34770type ProductsCustombatchCall struct {
34771	s                          *APIService
34772	productscustombatchrequest *ProductsCustomBatchRequest
34773	urlParams_                 gensupport.URLParams
34774	ctx_                       context.Context
34775	header_                    http.Header
34776}
34777
34778// Custombatch: Retrieves, inserts, and deletes multiple products in a
34779// single request.
34780func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
34781	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34782	c.productscustombatchrequest = productscustombatchrequest
34783	return c
34784}
34785
34786// Fields allows partial responses to be retrieved. See
34787// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34788// for more information.
34789func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
34790	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34791	return c
34792}
34793
34794// Context sets the context to be used in this call's Do method. Any
34795// pending HTTP request will be aborted if the provided context is
34796// canceled.
34797func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
34798	c.ctx_ = ctx
34799	return c
34800}
34801
34802// Header returns an http.Header that can be modified by the caller to
34803// add HTTP headers to the request.
34804func (c *ProductsCustombatchCall) Header() http.Header {
34805	if c.header_ == nil {
34806		c.header_ = make(http.Header)
34807	}
34808	return c.header_
34809}
34810
34811func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
34812	reqHeaders := make(http.Header)
34813	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34814	for k, v := range c.header_ {
34815		reqHeaders[k] = v
34816	}
34817	reqHeaders.Set("User-Agent", c.s.userAgent())
34818	var body io.Reader = nil
34819	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
34820	if err != nil {
34821		return nil, err
34822	}
34823	reqHeaders.Set("Content-Type", "application/json")
34824	c.urlParams_.Set("alt", alt)
34825	c.urlParams_.Set("prettyPrint", "false")
34826	urls := googleapi.ResolveRelative(c.s.BasePath, "products/batch")
34827	urls += "?" + c.urlParams_.Encode()
34828	req, err := http.NewRequest("POST", urls, body)
34829	if err != nil {
34830		return nil, err
34831	}
34832	req.Header = reqHeaders
34833	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34834}
34835
34836// Do executes the "content.products.custombatch" call.
34837// Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
34838// Any non-2xx status code is an error. Response headers are in either
34839// *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
34840// was returned at all) in error.(*googleapi.Error).Header. Use
34841// googleapi.IsNotModified to check whether the returned error was
34842// because http.StatusNotModified was returned.
34843func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
34844	gensupport.SetOptions(c.urlParams_, opts...)
34845	res, err := c.doRequest("json")
34846	if res != nil && res.StatusCode == http.StatusNotModified {
34847		if res.Body != nil {
34848			res.Body.Close()
34849		}
34850		return nil, &googleapi.Error{
34851			Code:   res.StatusCode,
34852			Header: res.Header,
34853		}
34854	}
34855	if err != nil {
34856		return nil, err
34857	}
34858	defer googleapi.CloseBody(res)
34859	if err := googleapi.CheckResponse(res); err != nil {
34860		return nil, err
34861	}
34862	ret := &ProductsCustomBatchResponse{
34863		ServerResponse: googleapi.ServerResponse{
34864			Header:         res.Header,
34865			HTTPStatusCode: res.StatusCode,
34866		},
34867	}
34868	target := &ret
34869	if err := gensupport.DecodeResponse(target, res); err != nil {
34870		return nil, err
34871	}
34872	return ret, nil
34873	// {
34874	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
34875	//   "flatPath": "products/batch",
34876	//   "httpMethod": "POST",
34877	//   "id": "content.products.custombatch",
34878	//   "parameterOrder": [],
34879	//   "parameters": {},
34880	//   "path": "products/batch",
34881	//   "request": {
34882	//     "$ref": "ProductsCustomBatchRequest"
34883	//   },
34884	//   "response": {
34885	//     "$ref": "ProductsCustomBatchResponse"
34886	//   },
34887	//   "scopes": [
34888	//     "https://www.googleapis.com/auth/content"
34889	//   ]
34890	// }
34891
34892}
34893
34894// method id "content.products.delete":
34895
34896type ProductsDeleteCall struct {
34897	s          *APIService
34898	merchantId uint64
34899	productId  string
34900	urlParams_ gensupport.URLParams
34901	ctx_       context.Context
34902	header_    http.Header
34903}
34904
34905// Delete: Deletes a product from your Merchant Center account.
34906//
34907// - merchantId: The ID of the account that contains the product. This
34908//   account cannot be a multi-client account.
34909// - productId: The REST ID of the product.
34910func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
34911	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34912	c.merchantId = merchantId
34913	c.productId = productId
34914	return c
34915}
34916
34917// FeedId sets the optional parameter "feedId": The Content API
34918// Supplemental Feed ID. If present then product deletion applies to the
34919// data in a supplemental feed. If absent, entire product will be
34920// deleted.
34921func (c *ProductsDeleteCall) FeedId(feedId uint64) *ProductsDeleteCall {
34922	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
34923	return c
34924}
34925
34926// Fields allows partial responses to be retrieved. See
34927// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34928// for more information.
34929func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
34930	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34931	return c
34932}
34933
34934// Context sets the context to be used in this call's Do method. Any
34935// pending HTTP request will be aborted if the provided context is
34936// canceled.
34937func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
34938	c.ctx_ = ctx
34939	return c
34940}
34941
34942// Header returns an http.Header that can be modified by the caller to
34943// add HTTP headers to the request.
34944func (c *ProductsDeleteCall) Header() http.Header {
34945	if c.header_ == nil {
34946		c.header_ = make(http.Header)
34947	}
34948	return c.header_
34949}
34950
34951func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
34952	reqHeaders := make(http.Header)
34953	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34954	for k, v := range c.header_ {
34955		reqHeaders[k] = v
34956	}
34957	reqHeaders.Set("User-Agent", c.s.userAgent())
34958	var body io.Reader = nil
34959	c.urlParams_.Set("alt", alt)
34960	c.urlParams_.Set("prettyPrint", "false")
34961	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
34962	urls += "?" + c.urlParams_.Encode()
34963	req, err := http.NewRequest("DELETE", urls, body)
34964	if err != nil {
34965		return nil, err
34966	}
34967	req.Header = reqHeaders
34968	googleapi.Expand(req.URL, map[string]string{
34969		"merchantId": strconv.FormatUint(c.merchantId, 10),
34970		"productId":  c.productId,
34971	})
34972	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34973}
34974
34975// Do executes the "content.products.delete" call.
34976func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
34977	gensupport.SetOptions(c.urlParams_, opts...)
34978	res, err := c.doRequest("json")
34979	if err != nil {
34980		return err
34981	}
34982	defer googleapi.CloseBody(res)
34983	if err := googleapi.CheckResponse(res); err != nil {
34984		return err
34985	}
34986	return nil
34987	// {
34988	//   "description": "Deletes a product from your Merchant Center account.",
34989	//   "flatPath": "{merchantId}/products/{productId}",
34990	//   "httpMethod": "DELETE",
34991	//   "id": "content.products.delete",
34992	//   "parameterOrder": [
34993	//     "merchantId",
34994	//     "productId"
34995	//   ],
34996	//   "parameters": {
34997	//     "feedId": {
34998	//       "description": "The Content API Supplemental Feed ID. If present then product deletion applies to the data in a supplemental feed. If absent, entire product will be deleted.",
34999	//       "format": "uint64",
35000	//       "location": "query",
35001	//       "type": "string"
35002	//     },
35003	//     "merchantId": {
35004	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35005	//       "format": "uint64",
35006	//       "location": "path",
35007	//       "required": true,
35008	//       "type": "string"
35009	//     },
35010	//     "productId": {
35011	//       "description": "The REST ID of the product.",
35012	//       "location": "path",
35013	//       "required": true,
35014	//       "type": "string"
35015	//     }
35016	//   },
35017	//   "path": "{merchantId}/products/{productId}",
35018	//   "scopes": [
35019	//     "https://www.googleapis.com/auth/content"
35020	//   ]
35021	// }
35022
35023}
35024
35025// method id "content.products.get":
35026
35027type ProductsGetCall struct {
35028	s            *APIService
35029	merchantId   uint64
35030	productId    string
35031	urlParams_   gensupport.URLParams
35032	ifNoneMatch_ string
35033	ctx_         context.Context
35034	header_      http.Header
35035}
35036
35037// Get: Retrieves a product from your Merchant Center account.
35038//
35039// - merchantId: The ID of the account that contains the product. This
35040//   account cannot be a multi-client account.
35041// - productId: The REST ID of the product.
35042func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
35043	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35044	c.merchantId = merchantId
35045	c.productId = productId
35046	return c
35047}
35048
35049// Fields allows partial responses to be retrieved. See
35050// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35051// for more information.
35052func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
35053	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35054	return c
35055}
35056
35057// IfNoneMatch sets the optional parameter which makes the operation
35058// fail if the object's ETag matches the given value. This is useful for
35059// getting updates only after the object has changed since the last
35060// request. Use googleapi.IsNotModified to check whether the response
35061// error from Do is the result of In-None-Match.
35062func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
35063	c.ifNoneMatch_ = entityTag
35064	return c
35065}
35066
35067// Context sets the context to be used in this call's Do method. Any
35068// pending HTTP request will be aborted if the provided context is
35069// canceled.
35070func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
35071	c.ctx_ = ctx
35072	return c
35073}
35074
35075// Header returns an http.Header that can be modified by the caller to
35076// add HTTP headers to the request.
35077func (c *ProductsGetCall) Header() http.Header {
35078	if c.header_ == nil {
35079		c.header_ = make(http.Header)
35080	}
35081	return c.header_
35082}
35083
35084func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
35085	reqHeaders := make(http.Header)
35086	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
35087	for k, v := range c.header_ {
35088		reqHeaders[k] = v
35089	}
35090	reqHeaders.Set("User-Agent", c.s.userAgent())
35091	if c.ifNoneMatch_ != "" {
35092		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35093	}
35094	var body io.Reader = nil
35095	c.urlParams_.Set("alt", alt)
35096	c.urlParams_.Set("prettyPrint", "false")
35097	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
35098	urls += "?" + c.urlParams_.Encode()
35099	req, err := http.NewRequest("GET", urls, body)
35100	if err != nil {
35101		return nil, err
35102	}
35103	req.Header = reqHeaders
35104	googleapi.Expand(req.URL, map[string]string{
35105		"merchantId": strconv.FormatUint(c.merchantId, 10),
35106		"productId":  c.productId,
35107	})
35108	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35109}
35110
35111// Do executes the "content.products.get" call.
35112// Exactly one of *Product or error will be non-nil. Any non-2xx status
35113// code is an error. Response headers are in either
35114// *Product.ServerResponse.Header or (if a response was returned at all)
35115// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
35116// check whether the returned error was because http.StatusNotModified
35117// was returned.
35118func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
35119	gensupport.SetOptions(c.urlParams_, opts...)
35120	res, err := c.doRequest("json")
35121	if res != nil && res.StatusCode == http.StatusNotModified {
35122		if res.Body != nil {
35123			res.Body.Close()
35124		}
35125		return nil, &googleapi.Error{
35126			Code:   res.StatusCode,
35127			Header: res.Header,
35128		}
35129	}
35130	if err != nil {
35131		return nil, err
35132	}
35133	defer googleapi.CloseBody(res)
35134	if err := googleapi.CheckResponse(res); err != nil {
35135		return nil, err
35136	}
35137	ret := &Product{
35138		ServerResponse: googleapi.ServerResponse{
35139			Header:         res.Header,
35140			HTTPStatusCode: res.StatusCode,
35141		},
35142	}
35143	target := &ret
35144	if err := gensupport.DecodeResponse(target, res); err != nil {
35145		return nil, err
35146	}
35147	return ret, nil
35148	// {
35149	//   "description": "Retrieves a product from your Merchant Center account.",
35150	//   "flatPath": "{merchantId}/products/{productId}",
35151	//   "httpMethod": "GET",
35152	//   "id": "content.products.get",
35153	//   "parameterOrder": [
35154	//     "merchantId",
35155	//     "productId"
35156	//   ],
35157	//   "parameters": {
35158	//     "merchantId": {
35159	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35160	//       "format": "uint64",
35161	//       "location": "path",
35162	//       "required": true,
35163	//       "type": "string"
35164	//     },
35165	//     "productId": {
35166	//       "description": "The REST ID of the product.",
35167	//       "location": "path",
35168	//       "required": true,
35169	//       "type": "string"
35170	//     }
35171	//   },
35172	//   "path": "{merchantId}/products/{productId}",
35173	//   "response": {
35174	//     "$ref": "Product"
35175	//   },
35176	//   "scopes": [
35177	//     "https://www.googleapis.com/auth/content"
35178	//   ]
35179	// }
35180
35181}
35182
35183// method id "content.products.insert":
35184
35185type ProductsInsertCall struct {
35186	s          *APIService
35187	merchantId uint64
35188	product    *Product
35189	urlParams_ gensupport.URLParams
35190	ctx_       context.Context
35191	header_    http.Header
35192}
35193
35194// Insert: Uploads a product to your Merchant Center account. If an item
35195// with the same channel, contentLanguage, offerId, and targetCountry
35196// already exists, this method updates that entry.
35197//
35198// - merchantId: The ID of the account that contains the product. This
35199//   account cannot be a multi-client account.
35200func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
35201	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35202	c.merchantId = merchantId
35203	c.product = product
35204	return c
35205}
35206
35207// FeedId sets the optional parameter "feedId": The Content API
35208// Supplemental Feed ID. If present then product insertion applies to
35209// the data in a supplemental feed.
35210func (c *ProductsInsertCall) FeedId(feedId uint64) *ProductsInsertCall {
35211	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
35212	return c
35213}
35214
35215// Fields allows partial responses to be retrieved. See
35216// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35217// for more information.
35218func (c *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
35219	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35220	return c
35221}
35222
35223// Context sets the context to be used in this call's Do method. Any
35224// pending HTTP request will be aborted if the provided context is
35225// canceled.
35226func (c *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
35227	c.ctx_ = ctx
35228	return c
35229}
35230
35231// Header returns an http.Header that can be modified by the caller to
35232// add HTTP headers to the request.
35233func (c *ProductsInsertCall) Header() http.Header {
35234	if c.header_ == nil {
35235		c.header_ = make(http.Header)
35236	}
35237	return c.header_
35238}
35239
35240func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
35241	reqHeaders := make(http.Header)
35242	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
35243	for k, v := range c.header_ {
35244		reqHeaders[k] = v
35245	}
35246	reqHeaders.Set("User-Agent", c.s.userAgent())
35247	var body io.Reader = nil
35248	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
35249	if err != nil {
35250		return nil, err
35251	}
35252	reqHeaders.Set("Content-Type", "application/json")
35253	c.urlParams_.Set("alt", alt)
35254	c.urlParams_.Set("prettyPrint", "false")
35255	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
35256	urls += "?" + c.urlParams_.Encode()
35257	req, err := http.NewRequest("POST", urls, body)
35258	if err != nil {
35259		return nil, err
35260	}
35261	req.Header = reqHeaders
35262	googleapi.Expand(req.URL, map[string]string{
35263		"merchantId": strconv.FormatUint(c.merchantId, 10),
35264	})
35265	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35266}
35267
35268// Do executes the "content.products.insert" call.
35269// Exactly one of *Product or error will be non-nil. Any non-2xx status
35270// code is an error. Response headers are in either
35271// *Product.ServerResponse.Header or (if a response was returned at all)
35272// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
35273// check whether the returned error was because http.StatusNotModified
35274// was returned.
35275func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
35276	gensupport.SetOptions(c.urlParams_, opts...)
35277	res, err := c.doRequest("json")
35278	if res != nil && res.StatusCode == http.StatusNotModified {
35279		if res.Body != nil {
35280			res.Body.Close()
35281		}
35282		return nil, &googleapi.Error{
35283			Code:   res.StatusCode,
35284			Header: res.Header,
35285		}
35286	}
35287	if err != nil {
35288		return nil, err
35289	}
35290	defer googleapi.CloseBody(res)
35291	if err := googleapi.CheckResponse(res); err != nil {
35292		return nil, err
35293	}
35294	ret := &Product{
35295		ServerResponse: googleapi.ServerResponse{
35296			Header:         res.Header,
35297			HTTPStatusCode: res.StatusCode,
35298		},
35299	}
35300	target := &ret
35301	if err := gensupport.DecodeResponse(target, res); err != nil {
35302		return nil, err
35303	}
35304	return ret, nil
35305	// {
35306	//   "description": "Uploads a product to your Merchant Center account. If an item with the same channel, contentLanguage, offerId, and targetCountry already exists, this method updates that entry.",
35307	//   "flatPath": "{merchantId}/products",
35308	//   "httpMethod": "POST",
35309	//   "id": "content.products.insert",
35310	//   "parameterOrder": [
35311	//     "merchantId"
35312	//   ],
35313	//   "parameters": {
35314	//     "feedId": {
35315	//       "description": "The Content API Supplemental Feed ID. If present then product insertion applies to the data in a supplemental feed.",
35316	//       "format": "uint64",
35317	//       "location": "query",
35318	//       "type": "string"
35319	//     },
35320	//     "merchantId": {
35321	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35322	//       "format": "uint64",
35323	//       "location": "path",
35324	//       "required": true,
35325	//       "type": "string"
35326	//     }
35327	//   },
35328	//   "path": "{merchantId}/products",
35329	//   "request": {
35330	//     "$ref": "Product"
35331	//   },
35332	//   "response": {
35333	//     "$ref": "Product"
35334	//   },
35335	//   "scopes": [
35336	//     "https://www.googleapis.com/auth/content"
35337	//   ]
35338	// }
35339
35340}
35341
35342// method id "content.products.list":
35343
35344type ProductsListCall struct {
35345	s            *APIService
35346	merchantId   uint64
35347	urlParams_   gensupport.URLParams
35348	ifNoneMatch_ string
35349	ctx_         context.Context
35350	header_      http.Header
35351}
35352
35353// List: Lists the products in your Merchant Center account. The
35354// response might contain fewer items than specified by maxResults. Rely
35355// on nextPageToken to determine if there are more items to be
35356// requested.
35357//
35358// - merchantId: The ID of the account that contains the products. This
35359//   account cannot be a multi-client account.
35360func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
35361	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35362	c.merchantId = merchantId
35363	return c
35364}
35365
35366// MaxResults sets the optional parameter "maxResults": The maximum
35367// number of products to return in the response, used for paging.
35368func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
35369	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
35370	return c
35371}
35372
35373// PageToken sets the optional parameter "pageToken": The token returned
35374// by the previous request.
35375func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
35376	c.urlParams_.Set("pageToken", pageToken)
35377	return c
35378}
35379
35380// Fields allows partial responses to be retrieved. See
35381// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35382// for more information.
35383func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
35384	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35385	return c
35386}
35387
35388// IfNoneMatch sets the optional parameter which makes the operation
35389// fail if the object's ETag matches the given value. This is useful for
35390// getting updates only after the object has changed since the last
35391// request. Use googleapi.IsNotModified to check whether the response
35392// error from Do is the result of In-None-Match.
35393func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
35394	c.ifNoneMatch_ = entityTag
35395	return c
35396}
35397
35398// Context sets the context to be used in this call's Do method. Any
35399// pending HTTP request will be aborted if the provided context is
35400// canceled.
35401func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
35402	c.ctx_ = ctx
35403	return c
35404}
35405
35406// Header returns an http.Header that can be modified by the caller to
35407// add HTTP headers to the request.
35408func (c *ProductsListCall) Header() http.Header {
35409	if c.header_ == nil {
35410		c.header_ = make(http.Header)
35411	}
35412	return c.header_
35413}
35414
35415func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
35416	reqHeaders := make(http.Header)
35417	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
35418	for k, v := range c.header_ {
35419		reqHeaders[k] = v
35420	}
35421	reqHeaders.Set("User-Agent", c.s.userAgent())
35422	if c.ifNoneMatch_ != "" {
35423		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35424	}
35425	var body io.Reader = nil
35426	c.urlParams_.Set("alt", alt)
35427	c.urlParams_.Set("prettyPrint", "false")
35428	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
35429	urls += "?" + c.urlParams_.Encode()
35430	req, err := http.NewRequest("GET", urls, body)
35431	if err != nil {
35432		return nil, err
35433	}
35434	req.Header = reqHeaders
35435	googleapi.Expand(req.URL, map[string]string{
35436		"merchantId": strconv.FormatUint(c.merchantId, 10),
35437	})
35438	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35439}
35440
35441// Do executes the "content.products.list" call.
35442// Exactly one of *ProductsListResponse or error will be non-nil. Any
35443// non-2xx status code is an error. Response headers are in either
35444// *ProductsListResponse.ServerResponse.Header or (if a response was
35445// returned at all) in error.(*googleapi.Error).Header. Use
35446// googleapi.IsNotModified to check whether the returned error was
35447// because http.StatusNotModified was returned.
35448func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
35449	gensupport.SetOptions(c.urlParams_, opts...)
35450	res, err := c.doRequest("json")
35451	if res != nil && res.StatusCode == http.StatusNotModified {
35452		if res.Body != nil {
35453			res.Body.Close()
35454		}
35455		return nil, &googleapi.Error{
35456			Code:   res.StatusCode,
35457			Header: res.Header,
35458		}
35459	}
35460	if err != nil {
35461		return nil, err
35462	}
35463	defer googleapi.CloseBody(res)
35464	if err := googleapi.CheckResponse(res); err != nil {
35465		return nil, err
35466	}
35467	ret := &ProductsListResponse{
35468		ServerResponse: googleapi.ServerResponse{
35469			Header:         res.Header,
35470			HTTPStatusCode: res.StatusCode,
35471		},
35472	}
35473	target := &ret
35474	if err := gensupport.DecodeResponse(target, res); err != nil {
35475		return nil, err
35476	}
35477	return ret, nil
35478	// {
35479	//   "description": "Lists the products in your Merchant Center account. The response might contain fewer items than specified by maxResults. Rely on nextPageToken to determine if there are more items to be requested.",
35480	//   "flatPath": "{merchantId}/products",
35481	//   "httpMethod": "GET",
35482	//   "id": "content.products.list",
35483	//   "parameterOrder": [
35484	//     "merchantId"
35485	//   ],
35486	//   "parameters": {
35487	//     "maxResults": {
35488	//       "description": "The maximum number of products to return in the response, used for paging.",
35489	//       "format": "uint32",
35490	//       "location": "query",
35491	//       "type": "integer"
35492	//     },
35493	//     "merchantId": {
35494	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
35495	//       "format": "uint64",
35496	//       "location": "path",
35497	//       "required": true,
35498	//       "type": "string"
35499	//     },
35500	//     "pageToken": {
35501	//       "description": "The token returned by the previous request.",
35502	//       "location": "query",
35503	//       "type": "string"
35504	//     }
35505	//   },
35506	//   "path": "{merchantId}/products",
35507	//   "response": {
35508	//     "$ref": "ProductsListResponse"
35509	//   },
35510	//   "scopes": [
35511	//     "https://www.googleapis.com/auth/content"
35512	//   ]
35513	// }
35514
35515}
35516
35517// Pages invokes f for each page of results.
35518// A non-nil error returned from f will halt the iteration.
35519// The provided context supersedes any context provided to the Context method.
35520func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
35521	c.ctx_ = ctx
35522	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
35523	for {
35524		x, err := c.Do()
35525		if err != nil {
35526			return err
35527		}
35528		if err := f(x); err != nil {
35529			return err
35530		}
35531		if x.NextPageToken == "" {
35532			return nil
35533		}
35534		c.PageToken(x.NextPageToken)
35535	}
35536}
35537
35538// method id "content.products.update":
35539
35540type ProductsUpdateCall struct {
35541	s          *APIService
35542	merchantId uint64
35543	productId  string
35544	product    *Product
35545	urlParams_ gensupport.URLParams
35546	ctx_       context.Context
35547	header_    http.Header
35548}
35549
35550// Update: Updates an existing product in your Merchant Center account.
35551// Only updates attributes provided in the request.
35552//
35553// - merchantId: The ID of the account that contains the product. This
35554//   account cannot be a multi-client account.
35555// - productId: The REST ID of the product for which to update.
35556func (r *ProductsService) Update(merchantId uint64, productId string, product *Product) *ProductsUpdateCall {
35557	c := &ProductsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35558	c.merchantId = merchantId
35559	c.productId = productId
35560	c.product = product
35561	return c
35562}
35563
35564// UpdateMask sets the optional parameter "updateMask": The
35565// comma-separated list of product attributes to be updated. Example:
35566// "title,salePrice". Attributes specified in the update mask without
35567// a value specified in the body will be deleted from the product. Only
35568// top-level product attributes can be updated. If not defined, product
35569// attributes with set values will be updated and other attributes will
35570// stay unchanged.
35571func (c *ProductsUpdateCall) UpdateMask(updateMask string) *ProductsUpdateCall {
35572	c.urlParams_.Set("updateMask", updateMask)
35573	return c
35574}
35575
35576// Fields allows partial responses to be retrieved. See
35577// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35578// for more information.
35579func (c *ProductsUpdateCall) Fields(s ...googleapi.Field) *ProductsUpdateCall {
35580	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35581	return c
35582}
35583
35584// Context sets the context to be used in this call's Do method. Any
35585// pending HTTP request will be aborted if the provided context is
35586// canceled.
35587func (c *ProductsUpdateCall) Context(ctx context.Context) *ProductsUpdateCall {
35588	c.ctx_ = ctx
35589	return c
35590}
35591
35592// Header returns an http.Header that can be modified by the caller to
35593// add HTTP headers to the request.
35594func (c *ProductsUpdateCall) Header() http.Header {
35595	if c.header_ == nil {
35596		c.header_ = make(http.Header)
35597	}
35598	return c.header_
35599}
35600
35601func (c *ProductsUpdateCall) doRequest(alt string) (*http.Response, error) {
35602	reqHeaders := make(http.Header)
35603	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
35604	for k, v := range c.header_ {
35605		reqHeaders[k] = v
35606	}
35607	reqHeaders.Set("User-Agent", c.s.userAgent())
35608	var body io.Reader = nil
35609	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
35610	if err != nil {
35611		return nil, err
35612	}
35613	reqHeaders.Set("Content-Type", "application/json")
35614	c.urlParams_.Set("alt", alt)
35615	c.urlParams_.Set("prettyPrint", "false")
35616	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
35617	urls += "?" + c.urlParams_.Encode()
35618	req, err := http.NewRequest("PATCH", urls, body)
35619	if err != nil {
35620		return nil, err
35621	}
35622	req.Header = reqHeaders
35623	googleapi.Expand(req.URL, map[string]string{
35624		"merchantId": strconv.FormatUint(c.merchantId, 10),
35625		"productId":  c.productId,
35626	})
35627	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35628}
35629
35630// Do executes the "content.products.update" call.
35631// Exactly one of *Product or error will be non-nil. Any non-2xx status
35632// code is an error. Response headers are in either
35633// *Product.ServerResponse.Header or (if a response was returned at all)
35634// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
35635// check whether the returned error was because http.StatusNotModified
35636// was returned.
35637func (c *ProductsUpdateCall) Do(opts ...googleapi.CallOption) (*Product, error) {
35638	gensupport.SetOptions(c.urlParams_, opts...)
35639	res, err := c.doRequest("json")
35640	if res != nil && res.StatusCode == http.StatusNotModified {
35641		if res.Body != nil {
35642			res.Body.Close()
35643		}
35644		return nil, &googleapi.Error{
35645			Code:   res.StatusCode,
35646			Header: res.Header,
35647		}
35648	}
35649	if err != nil {
35650		return nil, err
35651	}
35652	defer googleapi.CloseBody(res)
35653	if err := googleapi.CheckResponse(res); err != nil {
35654		return nil, err
35655	}
35656	ret := &Product{
35657		ServerResponse: googleapi.ServerResponse{
35658			Header:         res.Header,
35659			HTTPStatusCode: res.StatusCode,
35660		},
35661	}
35662	target := &ret
35663	if err := gensupport.DecodeResponse(target, res); err != nil {
35664		return nil, err
35665	}
35666	return ret, nil
35667	// {
35668	//   "description": "Updates an existing product in your Merchant Center account. Only updates attributes provided in the request.",
35669	//   "flatPath": "{merchantId}/products/{productId}",
35670	//   "httpMethod": "PATCH",
35671	//   "id": "content.products.update",
35672	//   "parameterOrder": [
35673	//     "merchantId",
35674	//     "productId"
35675	//   ],
35676	//   "parameters": {
35677	//     "merchantId": {
35678	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35679	//       "format": "uint64",
35680	//       "location": "path",
35681	//       "required": true,
35682	//       "type": "string"
35683	//     },
35684	//     "productId": {
35685	//       "description": "The REST ID of the product for which to update.",
35686	//       "location": "path",
35687	//       "required": true,
35688	//       "type": "string"
35689	//     },
35690	//     "updateMask": {
35691	//       "description": "The comma-separated list of product attributes to be updated. Example: `\"title,salePrice\"`. Attributes specified in the update mask without a value specified in the body will be deleted from the product. Only top-level product attributes can be updated. If not defined, product attributes with set values will be updated and other attributes will stay unchanged.",
35692	//       "format": "google-fieldmask",
35693	//       "location": "query",
35694	//       "type": "string"
35695	//     }
35696	//   },
35697	//   "path": "{merchantId}/products/{productId}",
35698	//   "request": {
35699	//     "$ref": "Product"
35700	//   },
35701	//   "response": {
35702	//     "$ref": "Product"
35703	//   },
35704	//   "scopes": [
35705	//     "https://www.googleapis.com/auth/content"
35706	//   ]
35707	// }
35708
35709}
35710
35711// method id "content.productstatuses.custombatch":
35712
35713type ProductstatusesCustombatchCall struct {
35714	s                                 *APIService
35715	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
35716	urlParams_                        gensupport.URLParams
35717	ctx_                              context.Context
35718	header_                           http.Header
35719}
35720
35721// Custombatch: Gets the statuses of multiple products in a single
35722// request.
35723func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
35724	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35725	c.productstatusescustombatchrequest = productstatusescustombatchrequest
35726	return c
35727}
35728
35729// Fields allows partial responses to be retrieved. See
35730// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35731// for more information.
35732func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
35733	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35734	return c
35735}
35736
35737// Context sets the context to be used in this call's Do method. Any
35738// pending HTTP request will be aborted if the provided context is
35739// canceled.
35740func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
35741	c.ctx_ = ctx
35742	return c
35743}
35744
35745// Header returns an http.Header that can be modified by the caller to
35746// add HTTP headers to the request.
35747func (c *ProductstatusesCustombatchCall) Header() http.Header {
35748	if c.header_ == nil {
35749		c.header_ = make(http.Header)
35750	}
35751	return c.header_
35752}
35753
35754func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
35755	reqHeaders := make(http.Header)
35756	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
35757	for k, v := range c.header_ {
35758		reqHeaders[k] = v
35759	}
35760	reqHeaders.Set("User-Agent", c.s.userAgent())
35761	var body io.Reader = nil
35762	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
35763	if err != nil {
35764		return nil, err
35765	}
35766	reqHeaders.Set("Content-Type", "application/json")
35767	c.urlParams_.Set("alt", alt)
35768	c.urlParams_.Set("prettyPrint", "false")
35769	urls := googleapi.ResolveRelative(c.s.BasePath, "productstatuses/batch")
35770	urls += "?" + c.urlParams_.Encode()
35771	req, err := http.NewRequest("POST", urls, body)
35772	if err != nil {
35773		return nil, err
35774	}
35775	req.Header = reqHeaders
35776	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35777}
35778
35779// Do executes the "content.productstatuses.custombatch" call.
35780// Exactly one of *ProductstatusesCustomBatchResponse or error will be
35781// non-nil. Any non-2xx status code is an error. Response headers are in
35782// either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
35783// (if a response was returned at all) in
35784// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
35785// whether the returned error was because http.StatusNotModified was
35786// returned.
35787func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
35788	gensupport.SetOptions(c.urlParams_, opts...)
35789	res, err := c.doRequest("json")
35790	if res != nil && res.StatusCode == http.StatusNotModified {
35791		if res.Body != nil {
35792			res.Body.Close()
35793		}
35794		return nil, &googleapi.Error{
35795			Code:   res.StatusCode,
35796			Header: res.Header,
35797		}
35798	}
35799	if err != nil {
35800		return nil, err
35801	}
35802	defer googleapi.CloseBody(res)
35803	if err := googleapi.CheckResponse(res); err != nil {
35804		return nil, err
35805	}
35806	ret := &ProductstatusesCustomBatchResponse{
35807		ServerResponse: googleapi.ServerResponse{
35808			Header:         res.Header,
35809			HTTPStatusCode: res.StatusCode,
35810		},
35811	}
35812	target := &ret
35813	if err := gensupport.DecodeResponse(target, res); err != nil {
35814		return nil, err
35815	}
35816	return ret, nil
35817	// {
35818	//   "description": "Gets the statuses of multiple products in a single request.",
35819	//   "flatPath": "productstatuses/batch",
35820	//   "httpMethod": "POST",
35821	//   "id": "content.productstatuses.custombatch",
35822	//   "parameterOrder": [],
35823	//   "parameters": {},
35824	//   "path": "productstatuses/batch",
35825	//   "request": {
35826	//     "$ref": "ProductstatusesCustomBatchRequest"
35827	//   },
35828	//   "response": {
35829	//     "$ref": "ProductstatusesCustomBatchResponse"
35830	//   },
35831	//   "scopes": [
35832	//     "https://www.googleapis.com/auth/content"
35833	//   ]
35834	// }
35835
35836}
35837
35838// method id "content.productstatuses.get":
35839
35840type ProductstatusesGetCall struct {
35841	s            *APIService
35842	merchantId   uint64
35843	productId    string
35844	urlParams_   gensupport.URLParams
35845	ifNoneMatch_ string
35846	ctx_         context.Context
35847	header_      http.Header
35848}
35849
35850// Get: Gets the status of a product from your Merchant Center account.
35851//
35852// - merchantId: The ID of the account that contains the product. This
35853//   account cannot be a multi-client account.
35854// - productId: The REST ID of the product.
35855func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
35856	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35857	c.merchantId = merchantId
35858	c.productId = productId
35859	return c
35860}
35861
35862// Destinations sets the optional parameter "destinations": If set, only
35863// issues for the specified destinations are returned, otherwise only
35864// issues for the Shopping destination.
35865func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
35866	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
35867	return c
35868}
35869
35870// Fields allows partial responses to be retrieved. See
35871// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35872// for more information.
35873func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
35874	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35875	return c
35876}
35877
35878// IfNoneMatch sets the optional parameter which makes the operation
35879// fail if the object's ETag matches the given value. This is useful for
35880// getting updates only after the object has changed since the last
35881// request. Use googleapi.IsNotModified to check whether the response
35882// error from Do is the result of In-None-Match.
35883func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
35884	c.ifNoneMatch_ = entityTag
35885	return c
35886}
35887
35888// Context sets the context to be used in this call's Do method. Any
35889// pending HTTP request will be aborted if the provided context is
35890// canceled.
35891func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
35892	c.ctx_ = ctx
35893	return c
35894}
35895
35896// Header returns an http.Header that can be modified by the caller to
35897// add HTTP headers to the request.
35898func (c *ProductstatusesGetCall) Header() http.Header {
35899	if c.header_ == nil {
35900		c.header_ = make(http.Header)
35901	}
35902	return c.header_
35903}
35904
35905func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
35906	reqHeaders := make(http.Header)
35907	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
35908	for k, v := range c.header_ {
35909		reqHeaders[k] = v
35910	}
35911	reqHeaders.Set("User-Agent", c.s.userAgent())
35912	if c.ifNoneMatch_ != "" {
35913		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35914	}
35915	var body io.Reader = nil
35916	c.urlParams_.Set("alt", alt)
35917	c.urlParams_.Set("prettyPrint", "false")
35918	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}")
35919	urls += "?" + c.urlParams_.Encode()
35920	req, err := http.NewRequest("GET", urls, body)
35921	if err != nil {
35922		return nil, err
35923	}
35924	req.Header = reqHeaders
35925	googleapi.Expand(req.URL, map[string]string{
35926		"merchantId": strconv.FormatUint(c.merchantId, 10),
35927		"productId":  c.productId,
35928	})
35929	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35930}
35931
35932// Do executes the "content.productstatuses.get" call.
35933// Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
35934// status code is an error. Response headers are in either
35935// *ProductStatus.ServerResponse.Header or (if a response was returned
35936// at all) in error.(*googleapi.Error).Header. Use
35937// googleapi.IsNotModified to check whether the returned error was
35938// because http.StatusNotModified was returned.
35939func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
35940	gensupport.SetOptions(c.urlParams_, opts...)
35941	res, err := c.doRequest("json")
35942	if res != nil && res.StatusCode == http.StatusNotModified {
35943		if res.Body != nil {
35944			res.Body.Close()
35945		}
35946		return nil, &googleapi.Error{
35947			Code:   res.StatusCode,
35948			Header: res.Header,
35949		}
35950	}
35951	if err != nil {
35952		return nil, err
35953	}
35954	defer googleapi.CloseBody(res)
35955	if err := googleapi.CheckResponse(res); err != nil {
35956		return nil, err
35957	}
35958	ret := &ProductStatus{
35959		ServerResponse: googleapi.ServerResponse{
35960			Header:         res.Header,
35961			HTTPStatusCode: res.StatusCode,
35962		},
35963	}
35964	target := &ret
35965	if err := gensupport.DecodeResponse(target, res); err != nil {
35966		return nil, err
35967	}
35968	return ret, nil
35969	// {
35970	//   "description": "Gets the status of a product from your Merchant Center account.",
35971	//   "flatPath": "{merchantId}/productstatuses/{productId}",
35972	//   "httpMethod": "GET",
35973	//   "id": "content.productstatuses.get",
35974	//   "parameterOrder": [
35975	//     "merchantId",
35976	//     "productId"
35977	//   ],
35978	//   "parameters": {
35979	//     "destinations": {
35980	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
35981	//       "location": "query",
35982	//       "repeated": true,
35983	//       "type": "string"
35984	//     },
35985	//     "merchantId": {
35986	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35987	//       "format": "uint64",
35988	//       "location": "path",
35989	//       "required": true,
35990	//       "type": "string"
35991	//     },
35992	//     "productId": {
35993	//       "description": "The REST ID of the product.",
35994	//       "location": "path",
35995	//       "required": true,
35996	//       "type": "string"
35997	//     }
35998	//   },
35999	//   "path": "{merchantId}/productstatuses/{productId}",
36000	//   "response": {
36001	//     "$ref": "ProductStatus"
36002	//   },
36003	//   "scopes": [
36004	//     "https://www.googleapis.com/auth/content"
36005	//   ]
36006	// }
36007
36008}
36009
36010// method id "content.productstatuses.list":
36011
36012type ProductstatusesListCall struct {
36013	s            *APIService
36014	merchantId   uint64
36015	urlParams_   gensupport.URLParams
36016	ifNoneMatch_ string
36017	ctx_         context.Context
36018	header_      http.Header
36019}
36020
36021// List: Lists the statuses of the products in your Merchant Center
36022// account.
36023//
36024// - merchantId: The ID of the account that contains the products. This
36025//   account cannot be a multi-client account.
36026func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
36027	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36028	c.merchantId = merchantId
36029	return c
36030}
36031
36032// Destinations sets the optional parameter "destinations": If set, only
36033// issues for the specified destinations are returned, otherwise only
36034// issues for the Shopping destination.
36035func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
36036	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
36037	return c
36038}
36039
36040// MaxResults sets the optional parameter "maxResults": The maximum
36041// number of product statuses to return in the response, used for
36042// paging.
36043func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
36044	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
36045	return c
36046}
36047
36048// PageToken sets the optional parameter "pageToken": The token returned
36049// by the previous request.
36050func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
36051	c.urlParams_.Set("pageToken", pageToken)
36052	return c
36053}
36054
36055// Fields allows partial responses to be retrieved. See
36056// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36057// for more information.
36058func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
36059	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36060	return c
36061}
36062
36063// IfNoneMatch sets the optional parameter which makes the operation
36064// fail if the object's ETag matches the given value. This is useful for
36065// getting updates only after the object has changed since the last
36066// request. Use googleapi.IsNotModified to check whether the response
36067// error from Do is the result of In-None-Match.
36068func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
36069	c.ifNoneMatch_ = entityTag
36070	return c
36071}
36072
36073// Context sets the context to be used in this call's Do method. Any
36074// pending HTTP request will be aborted if the provided context is
36075// canceled.
36076func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
36077	c.ctx_ = ctx
36078	return c
36079}
36080
36081// Header returns an http.Header that can be modified by the caller to
36082// add HTTP headers to the request.
36083func (c *ProductstatusesListCall) Header() http.Header {
36084	if c.header_ == nil {
36085		c.header_ = make(http.Header)
36086	}
36087	return c.header_
36088}
36089
36090func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
36091	reqHeaders := make(http.Header)
36092	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
36093	for k, v := range c.header_ {
36094		reqHeaders[k] = v
36095	}
36096	reqHeaders.Set("User-Agent", c.s.userAgent())
36097	if c.ifNoneMatch_ != "" {
36098		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36099	}
36100	var body io.Reader = nil
36101	c.urlParams_.Set("alt", alt)
36102	c.urlParams_.Set("prettyPrint", "false")
36103	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses")
36104	urls += "?" + c.urlParams_.Encode()
36105	req, err := http.NewRequest("GET", urls, body)
36106	if err != nil {
36107		return nil, err
36108	}
36109	req.Header = reqHeaders
36110	googleapi.Expand(req.URL, map[string]string{
36111		"merchantId": strconv.FormatUint(c.merchantId, 10),
36112	})
36113	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36114}
36115
36116// Do executes the "content.productstatuses.list" call.
36117// Exactly one of *ProductstatusesListResponse or error will be non-nil.
36118// Any non-2xx status code is an error. Response headers are in either
36119// *ProductstatusesListResponse.ServerResponse.Header or (if a response
36120// was returned at all) in error.(*googleapi.Error).Header. Use
36121// googleapi.IsNotModified to check whether the returned error was
36122// because http.StatusNotModified was returned.
36123func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
36124	gensupport.SetOptions(c.urlParams_, opts...)
36125	res, err := c.doRequest("json")
36126	if res != nil && res.StatusCode == http.StatusNotModified {
36127		if res.Body != nil {
36128			res.Body.Close()
36129		}
36130		return nil, &googleapi.Error{
36131			Code:   res.StatusCode,
36132			Header: res.Header,
36133		}
36134	}
36135	if err != nil {
36136		return nil, err
36137	}
36138	defer googleapi.CloseBody(res)
36139	if err := googleapi.CheckResponse(res); err != nil {
36140		return nil, err
36141	}
36142	ret := &ProductstatusesListResponse{
36143		ServerResponse: googleapi.ServerResponse{
36144			Header:         res.Header,
36145			HTTPStatusCode: res.StatusCode,
36146		},
36147	}
36148	target := &ret
36149	if err := gensupport.DecodeResponse(target, res); err != nil {
36150		return nil, err
36151	}
36152	return ret, nil
36153	// {
36154	//   "description": "Lists the statuses of the products in your Merchant Center account.",
36155	//   "flatPath": "{merchantId}/productstatuses",
36156	//   "httpMethod": "GET",
36157	//   "id": "content.productstatuses.list",
36158	//   "parameterOrder": [
36159	//     "merchantId"
36160	//   ],
36161	//   "parameters": {
36162	//     "destinations": {
36163	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
36164	//       "location": "query",
36165	//       "repeated": true,
36166	//       "type": "string"
36167	//     },
36168	//     "maxResults": {
36169	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
36170	//       "format": "uint32",
36171	//       "location": "query",
36172	//       "type": "integer"
36173	//     },
36174	//     "merchantId": {
36175	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
36176	//       "format": "uint64",
36177	//       "location": "path",
36178	//       "required": true,
36179	//       "type": "string"
36180	//     },
36181	//     "pageToken": {
36182	//       "description": "The token returned by the previous request.",
36183	//       "location": "query",
36184	//       "type": "string"
36185	//     }
36186	//   },
36187	//   "path": "{merchantId}/productstatuses",
36188	//   "response": {
36189	//     "$ref": "ProductstatusesListResponse"
36190	//   },
36191	//   "scopes": [
36192	//     "https://www.googleapis.com/auth/content"
36193	//   ]
36194	// }
36195
36196}
36197
36198// Pages invokes f for each page of results.
36199// A non-nil error returned from f will halt the iteration.
36200// The provided context supersedes any context provided to the Context method.
36201func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
36202	c.ctx_ = ctx
36203	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
36204	for {
36205		x, err := c.Do()
36206		if err != nil {
36207			return err
36208		}
36209		if err := f(x); err != nil {
36210			return err
36211		}
36212		if x.NextPageToken == "" {
36213			return nil
36214		}
36215		c.PageToken(x.NextPageToken)
36216	}
36217}
36218
36219// method id "content.productstatuses.repricingreports.list":
36220
36221type ProductstatusesRepricingreportsListCall struct {
36222	s            *APIService
36223	merchantId   int64
36224	productId    string
36225	urlParams_   gensupport.URLParams
36226	ifNoneMatch_ string
36227	ctx_         context.Context
36228	header_      http.Header
36229}
36230
36231// List: Lists the metrics report for a given Repricing product.
36232//
36233// - merchantId: Id of the merchant who owns the Repricing rule.
36234// - productId: Id of the Repricing product. Also known as the REST_ID
36235//   (https://developers.google.com/shopping-content/reference/rest/v2.1/products#Product.FIELDS.id).
36236func (r *ProductstatusesRepricingreportsService) List(merchantId int64, productId string) *ProductstatusesRepricingreportsListCall {
36237	c := &ProductstatusesRepricingreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36238	c.merchantId = merchantId
36239	c.productId = productId
36240	return c
36241}
36242
36243// EndDate sets the optional parameter "endDate": Gets Repricing reports
36244// on and before this date in the merchant's timezone. You can only
36245// retrieve data up to 7 days ago (default) or earlier. Format is
36246// YYYY-MM-DD.
36247func (c *ProductstatusesRepricingreportsListCall) EndDate(endDate string) *ProductstatusesRepricingreportsListCall {
36248	c.urlParams_.Set("endDate", endDate)
36249	return c
36250}
36251
36252// PageSize sets the optional parameter "pageSize": Maximum number of
36253// days of reports to return. There can be more than one rule report
36254// returned per day. For example, if 3 rule types got applied to the
36255// same product within a 24-hour period, then a page_size of 1 will
36256// return 3 rule reports. The page size defaults to 50 and values above
36257// 1000 are coerced to 1000. This service may return fewer days of
36258// reports than this value, for example, if the time between your start
36259// and end date is less than the page size.
36260func (c *ProductstatusesRepricingreportsListCall) PageSize(pageSize int64) *ProductstatusesRepricingreportsListCall {
36261	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
36262	return c
36263}
36264
36265// PageToken sets the optional parameter "pageToken": Token (if
36266// provided) to retrieve the subsequent page. All other parameters must
36267// match the original call that provided the page token.
36268func (c *ProductstatusesRepricingreportsListCall) PageToken(pageToken string) *ProductstatusesRepricingreportsListCall {
36269	c.urlParams_.Set("pageToken", pageToken)
36270	return c
36271}
36272
36273// RuleId sets the optional parameter "ruleId": Id of the Repricing
36274// rule. If specified, only gets this rule's reports.
36275func (c *ProductstatusesRepricingreportsListCall) RuleId(ruleId string) *ProductstatusesRepricingreportsListCall {
36276	c.urlParams_.Set("ruleId", ruleId)
36277	return c
36278}
36279
36280// StartDate sets the optional parameter "startDate": Gets Repricing
36281// reports on and after this date in the merchant's timezone, up to one
36282// year ago. Do not use a start date later than 7 days ago (default).
36283// Format is YYYY-MM-DD.
36284func (c *ProductstatusesRepricingreportsListCall) StartDate(startDate string) *ProductstatusesRepricingreportsListCall {
36285	c.urlParams_.Set("startDate", startDate)
36286	return c
36287}
36288
36289// Fields allows partial responses to be retrieved. See
36290// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36291// for more information.
36292func (c *ProductstatusesRepricingreportsListCall) Fields(s ...googleapi.Field) *ProductstatusesRepricingreportsListCall {
36293	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36294	return c
36295}
36296
36297// IfNoneMatch sets the optional parameter which makes the operation
36298// fail if the object's ETag matches the given value. This is useful for
36299// getting updates only after the object has changed since the last
36300// request. Use googleapi.IsNotModified to check whether the response
36301// error from Do is the result of In-None-Match.
36302func (c *ProductstatusesRepricingreportsListCall) IfNoneMatch(entityTag string) *ProductstatusesRepricingreportsListCall {
36303	c.ifNoneMatch_ = entityTag
36304	return c
36305}
36306
36307// Context sets the context to be used in this call's Do method. Any
36308// pending HTTP request will be aborted if the provided context is
36309// canceled.
36310func (c *ProductstatusesRepricingreportsListCall) Context(ctx context.Context) *ProductstatusesRepricingreportsListCall {
36311	c.ctx_ = ctx
36312	return c
36313}
36314
36315// Header returns an http.Header that can be modified by the caller to
36316// add HTTP headers to the request.
36317func (c *ProductstatusesRepricingreportsListCall) Header() http.Header {
36318	if c.header_ == nil {
36319		c.header_ = make(http.Header)
36320	}
36321	return c.header_
36322}
36323
36324func (c *ProductstatusesRepricingreportsListCall) doRequest(alt string) (*http.Response, error) {
36325	reqHeaders := make(http.Header)
36326	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
36327	for k, v := range c.header_ {
36328		reqHeaders[k] = v
36329	}
36330	reqHeaders.Set("User-Agent", c.s.userAgent())
36331	if c.ifNoneMatch_ != "" {
36332		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36333	}
36334	var body io.Reader = nil
36335	c.urlParams_.Set("alt", alt)
36336	c.urlParams_.Set("prettyPrint", "false")
36337	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}/repricingreports")
36338	urls += "?" + c.urlParams_.Encode()
36339	req, err := http.NewRequest("GET", urls, body)
36340	if err != nil {
36341		return nil, err
36342	}
36343	req.Header = reqHeaders
36344	googleapi.Expand(req.URL, map[string]string{
36345		"merchantId": strconv.FormatInt(c.merchantId, 10),
36346		"productId":  c.productId,
36347	})
36348	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36349}
36350
36351// Do executes the "content.productstatuses.repricingreports.list" call.
36352// Exactly one of *ListRepricingProductReportsResponse or error will be
36353// non-nil. Any non-2xx status code is an error. Response headers are in
36354// either *ListRepricingProductReportsResponse.ServerResponse.Header or
36355// (if a response was returned at all) in
36356// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
36357// whether the returned error was because http.StatusNotModified was
36358// returned.
36359func (c *ProductstatusesRepricingreportsListCall) Do(opts ...googleapi.CallOption) (*ListRepricingProductReportsResponse, error) {
36360	gensupport.SetOptions(c.urlParams_, opts...)
36361	res, err := c.doRequest("json")
36362	if res != nil && res.StatusCode == http.StatusNotModified {
36363		if res.Body != nil {
36364			res.Body.Close()
36365		}
36366		return nil, &googleapi.Error{
36367			Code:   res.StatusCode,
36368			Header: res.Header,
36369		}
36370	}
36371	if err != nil {
36372		return nil, err
36373	}
36374	defer googleapi.CloseBody(res)
36375	if err := googleapi.CheckResponse(res); err != nil {
36376		return nil, err
36377	}
36378	ret := &ListRepricingProductReportsResponse{
36379		ServerResponse: googleapi.ServerResponse{
36380			Header:         res.Header,
36381			HTTPStatusCode: res.StatusCode,
36382		},
36383	}
36384	target := &ret
36385	if err := gensupport.DecodeResponse(target, res); err != nil {
36386		return nil, err
36387	}
36388	return ret, nil
36389	// {
36390	//   "description": "Lists the metrics report for a given Repricing product.",
36391	//   "flatPath": "{merchantId}/productstatuses/{productId}/repricingreports",
36392	//   "httpMethod": "GET",
36393	//   "id": "content.productstatuses.repricingreports.list",
36394	//   "parameterOrder": [
36395	//     "merchantId",
36396	//     "productId"
36397	//   ],
36398	//   "parameters": {
36399	//     "endDate": {
36400	//       "description": "Gets Repricing reports on and before this date in the merchant's timezone. You can only retrieve data up to 7 days ago (default) or earlier. Format is YYYY-MM-DD.",
36401	//       "location": "query",
36402	//       "type": "string"
36403	//     },
36404	//     "merchantId": {
36405	//       "description": "Required. Id of the merchant who owns the Repricing rule.",
36406	//       "format": "int64",
36407	//       "location": "path",
36408	//       "required": true,
36409	//       "type": "string"
36410	//     },
36411	//     "pageSize": {
36412	//       "description": "Maximum number of days of reports to return. There can be more than one rule report returned per day. For example, if 3 rule types got applied to the same product within a 24-hour period, then a page_size of 1 will return 3 rule reports. The page size defaults to 50 and values above 1000 are coerced to 1000. This service may return fewer days of reports than this value, for example, if the time between your start and end date is less than the page size.",
36413	//       "format": "int32",
36414	//       "location": "query",
36415	//       "type": "integer"
36416	//     },
36417	//     "pageToken": {
36418	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
36419	//       "location": "query",
36420	//       "type": "string"
36421	//     },
36422	//     "productId": {
36423	//       "description": "Required. Id of the Repricing product. Also known as the [REST_ID](https://developers.google.com/shopping-content/reference/rest/v2.1/products#Product.FIELDS.id)",
36424	//       "location": "path",
36425	//       "required": true,
36426	//       "type": "string"
36427	//     },
36428	//     "ruleId": {
36429	//       "description": "Id of the Repricing rule. If specified, only gets this rule's reports.",
36430	//       "location": "query",
36431	//       "type": "string"
36432	//     },
36433	//     "startDate": {
36434	//       "description": "Gets Repricing reports on and after this date in the merchant's timezone, up to one year ago. Do not use a start date later than 7 days ago (default). Format is YYYY-MM-DD.",
36435	//       "location": "query",
36436	//       "type": "string"
36437	//     }
36438	//   },
36439	//   "path": "{merchantId}/productstatuses/{productId}/repricingreports",
36440	//   "response": {
36441	//     "$ref": "ListRepricingProductReportsResponse"
36442	//   },
36443	//   "scopes": [
36444	//     "https://www.googleapis.com/auth/content"
36445	//   ]
36446	// }
36447
36448}
36449
36450// Pages invokes f for each page of results.
36451// A non-nil error returned from f will halt the iteration.
36452// The provided context supersedes any context provided to the Context method.
36453func (c *ProductstatusesRepricingreportsListCall) Pages(ctx context.Context, f func(*ListRepricingProductReportsResponse) error) error {
36454	c.ctx_ = ctx
36455	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
36456	for {
36457		x, err := c.Do()
36458		if err != nil {
36459			return err
36460		}
36461		if err := f(x); err != nil {
36462			return err
36463		}
36464		if x.NextPageToken == "" {
36465			return nil
36466		}
36467		c.PageToken(x.NextPageToken)
36468	}
36469}
36470
36471// method id "content.promotions.create":
36472
36473type PromotionsCreateCall struct {
36474	s          *APIService
36475	merchantId int64
36476	promotion  *Promotion
36477	urlParams_ gensupport.URLParams
36478	ctx_       context.Context
36479	header_    http.Header
36480}
36481
36482// Create: Inserts a promotion for your Merchant Center account. If the
36483// promotion already exists, then it will update the promotion instead.
36484//
36485// - merchantId: The ID of the account that contains the collection.
36486func (r *PromotionsService) Create(merchantId int64, promotion *Promotion) *PromotionsCreateCall {
36487	c := &PromotionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36488	c.merchantId = merchantId
36489	c.promotion = promotion
36490	return c
36491}
36492
36493// Fields allows partial responses to be retrieved. See
36494// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36495// for more information.
36496func (c *PromotionsCreateCall) Fields(s ...googleapi.Field) *PromotionsCreateCall {
36497	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36498	return c
36499}
36500
36501// Context sets the context to be used in this call's Do method. Any
36502// pending HTTP request will be aborted if the provided context is
36503// canceled.
36504func (c *PromotionsCreateCall) Context(ctx context.Context) *PromotionsCreateCall {
36505	c.ctx_ = ctx
36506	return c
36507}
36508
36509// Header returns an http.Header that can be modified by the caller to
36510// add HTTP headers to the request.
36511func (c *PromotionsCreateCall) Header() http.Header {
36512	if c.header_ == nil {
36513		c.header_ = make(http.Header)
36514	}
36515	return c.header_
36516}
36517
36518func (c *PromotionsCreateCall) doRequest(alt string) (*http.Response, error) {
36519	reqHeaders := make(http.Header)
36520	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
36521	for k, v := range c.header_ {
36522		reqHeaders[k] = v
36523	}
36524	reqHeaders.Set("User-Agent", c.s.userAgent())
36525	var body io.Reader = nil
36526	body, err := googleapi.WithoutDataWrapper.JSONReader(c.promotion)
36527	if err != nil {
36528		return nil, err
36529	}
36530	reqHeaders.Set("Content-Type", "application/json")
36531	c.urlParams_.Set("alt", alt)
36532	c.urlParams_.Set("prettyPrint", "false")
36533	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/promotions")
36534	urls += "?" + c.urlParams_.Encode()
36535	req, err := http.NewRequest("POST", urls, body)
36536	if err != nil {
36537		return nil, err
36538	}
36539	req.Header = reqHeaders
36540	googleapi.Expand(req.URL, map[string]string{
36541		"merchantId": strconv.FormatInt(c.merchantId, 10),
36542	})
36543	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36544}
36545
36546// Do executes the "content.promotions.create" call.
36547// Exactly one of *Promotion or error will be non-nil. Any non-2xx
36548// status code is an error. Response headers are in either
36549// *Promotion.ServerResponse.Header or (if a response was returned at
36550// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
36551// to check whether the returned error was because
36552// http.StatusNotModified was returned.
36553func (c *PromotionsCreateCall) Do(opts ...googleapi.CallOption) (*Promotion, error) {
36554	gensupport.SetOptions(c.urlParams_, opts...)
36555	res, err := c.doRequest("json")
36556	if res != nil && res.StatusCode == http.StatusNotModified {
36557		if res.Body != nil {
36558			res.Body.Close()
36559		}
36560		return nil, &googleapi.Error{
36561			Code:   res.StatusCode,
36562			Header: res.Header,
36563		}
36564	}
36565	if err != nil {
36566		return nil, err
36567	}
36568	defer googleapi.CloseBody(res)
36569	if err := googleapi.CheckResponse(res); err != nil {
36570		return nil, err
36571	}
36572	ret := &Promotion{
36573		ServerResponse: googleapi.ServerResponse{
36574			Header:         res.Header,
36575			HTTPStatusCode: res.StatusCode,
36576		},
36577	}
36578	target := &ret
36579	if err := gensupport.DecodeResponse(target, res); err != nil {
36580		return nil, err
36581	}
36582	return ret, nil
36583	// {
36584	//   "description": "Inserts a promotion for your Merchant Center account. If the promotion already exists, then it will update the promotion instead.",
36585	//   "flatPath": "{merchantId}/promotions",
36586	//   "httpMethod": "POST",
36587	//   "id": "content.promotions.create",
36588	//   "parameterOrder": [
36589	//     "merchantId"
36590	//   ],
36591	//   "parameters": {
36592	//     "merchantId": {
36593	//       "description": "Required. The ID of the account that contains the collection.",
36594	//       "format": "int64",
36595	//       "location": "path",
36596	//       "required": true,
36597	//       "type": "string"
36598	//     }
36599	//   },
36600	//   "path": "{merchantId}/promotions",
36601	//   "request": {
36602	//     "$ref": "Promotion"
36603	//   },
36604	//   "response": {
36605	//     "$ref": "Promotion"
36606	//   },
36607	//   "scopes": [
36608	//     "https://www.googleapis.com/auth/content"
36609	//   ]
36610	// }
36611
36612}
36613
36614// method id "content.pubsubnotificationsettings.get":
36615
36616type PubsubnotificationsettingsGetCall struct {
36617	s            *APIService
36618	merchantId   uint64
36619	urlParams_   gensupport.URLParams
36620	ifNoneMatch_ string
36621	ctx_         context.Context
36622	header_      http.Header
36623}
36624
36625// Get: Retrieves a Merchant Center account's pubsub notification
36626// settings.
36627//
36628// - merchantId: The ID of the account for which to get pubsub
36629//   notification settings.
36630func (r *PubsubnotificationsettingsService) Get(merchantId uint64) *PubsubnotificationsettingsGetCall {
36631	c := &PubsubnotificationsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36632	c.merchantId = merchantId
36633	return c
36634}
36635
36636// Fields allows partial responses to be retrieved. See
36637// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36638// for more information.
36639func (c *PubsubnotificationsettingsGetCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsGetCall {
36640	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36641	return c
36642}
36643
36644// IfNoneMatch sets the optional parameter which makes the operation
36645// fail if the object's ETag matches the given value. This is useful for
36646// getting updates only after the object has changed since the last
36647// request. Use googleapi.IsNotModified to check whether the response
36648// error from Do is the result of In-None-Match.
36649func (c *PubsubnotificationsettingsGetCall) IfNoneMatch(entityTag string) *PubsubnotificationsettingsGetCall {
36650	c.ifNoneMatch_ = entityTag
36651	return c
36652}
36653
36654// Context sets the context to be used in this call's Do method. Any
36655// pending HTTP request will be aborted if the provided context is
36656// canceled.
36657func (c *PubsubnotificationsettingsGetCall) Context(ctx context.Context) *PubsubnotificationsettingsGetCall {
36658	c.ctx_ = ctx
36659	return c
36660}
36661
36662// Header returns an http.Header that can be modified by the caller to
36663// add HTTP headers to the request.
36664func (c *PubsubnotificationsettingsGetCall) Header() http.Header {
36665	if c.header_ == nil {
36666		c.header_ = make(http.Header)
36667	}
36668	return c.header_
36669}
36670
36671func (c *PubsubnotificationsettingsGetCall) doRequest(alt string) (*http.Response, error) {
36672	reqHeaders := make(http.Header)
36673	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
36674	for k, v := range c.header_ {
36675		reqHeaders[k] = v
36676	}
36677	reqHeaders.Set("User-Agent", c.s.userAgent())
36678	if c.ifNoneMatch_ != "" {
36679		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36680	}
36681	var body io.Reader = nil
36682	c.urlParams_.Set("alt", alt)
36683	c.urlParams_.Set("prettyPrint", "false")
36684	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pubsubnotificationsettings")
36685	urls += "?" + c.urlParams_.Encode()
36686	req, err := http.NewRequest("GET", urls, body)
36687	if err != nil {
36688		return nil, err
36689	}
36690	req.Header = reqHeaders
36691	googleapi.Expand(req.URL, map[string]string{
36692		"merchantId": strconv.FormatUint(c.merchantId, 10),
36693	})
36694	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36695}
36696
36697// Do executes the "content.pubsubnotificationsettings.get" call.
36698// Exactly one of *PubsubNotificationSettings or error will be non-nil.
36699// Any non-2xx status code is an error. Response headers are in either
36700// *PubsubNotificationSettings.ServerResponse.Header or (if a response
36701// was returned at all) in error.(*googleapi.Error).Header. Use
36702// googleapi.IsNotModified to check whether the returned error was
36703// because http.StatusNotModified was returned.
36704func (c *PubsubnotificationsettingsGetCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
36705	gensupport.SetOptions(c.urlParams_, opts...)
36706	res, err := c.doRequest("json")
36707	if res != nil && res.StatusCode == http.StatusNotModified {
36708		if res.Body != nil {
36709			res.Body.Close()
36710		}
36711		return nil, &googleapi.Error{
36712			Code:   res.StatusCode,
36713			Header: res.Header,
36714		}
36715	}
36716	if err != nil {
36717		return nil, err
36718	}
36719	defer googleapi.CloseBody(res)
36720	if err := googleapi.CheckResponse(res); err != nil {
36721		return nil, err
36722	}
36723	ret := &PubsubNotificationSettings{
36724		ServerResponse: googleapi.ServerResponse{
36725			Header:         res.Header,
36726			HTTPStatusCode: res.StatusCode,
36727		},
36728	}
36729	target := &ret
36730	if err := gensupport.DecodeResponse(target, res); err != nil {
36731		return nil, err
36732	}
36733	return ret, nil
36734	// {
36735	//   "description": "Retrieves a Merchant Center account's pubsub notification settings.",
36736	//   "flatPath": "{merchantId}/pubsubnotificationsettings",
36737	//   "httpMethod": "GET",
36738	//   "id": "content.pubsubnotificationsettings.get",
36739	//   "parameterOrder": [
36740	//     "merchantId"
36741	//   ],
36742	//   "parameters": {
36743	//     "merchantId": {
36744	//       "description": "The ID of the account for which to get pubsub notification settings.",
36745	//       "format": "uint64",
36746	//       "location": "path",
36747	//       "required": true,
36748	//       "type": "string"
36749	//     }
36750	//   },
36751	//   "path": "{merchantId}/pubsubnotificationsettings",
36752	//   "response": {
36753	//     "$ref": "PubsubNotificationSettings"
36754	//   },
36755	//   "scopes": [
36756	//     "https://www.googleapis.com/auth/content"
36757	//   ]
36758	// }
36759
36760}
36761
36762// method id "content.pubsubnotificationsettings.update":
36763
36764type PubsubnotificationsettingsUpdateCall struct {
36765	s                          *APIService
36766	merchantId                 uint64
36767	pubsubnotificationsettings *PubsubNotificationSettings
36768	urlParams_                 gensupport.URLParams
36769	ctx_                       context.Context
36770	header_                    http.Header
36771}
36772
36773// Update: Register a Merchant Center account for pubsub notifications.
36774// Note that cloud topic name should not be provided as part of the
36775// request.
36776//
36777// - merchantId: The ID of the account.
36778func (r *PubsubnotificationsettingsService) Update(merchantId uint64, pubsubnotificationsettings *PubsubNotificationSettings) *PubsubnotificationsettingsUpdateCall {
36779	c := &PubsubnotificationsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36780	c.merchantId = merchantId
36781	c.pubsubnotificationsettings = pubsubnotificationsettings
36782	return c
36783}
36784
36785// Fields allows partial responses to be retrieved. See
36786// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36787// for more information.
36788func (c *PubsubnotificationsettingsUpdateCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsUpdateCall {
36789	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36790	return c
36791}
36792
36793// Context sets the context to be used in this call's Do method. Any
36794// pending HTTP request will be aborted if the provided context is
36795// canceled.
36796func (c *PubsubnotificationsettingsUpdateCall) Context(ctx context.Context) *PubsubnotificationsettingsUpdateCall {
36797	c.ctx_ = ctx
36798	return c
36799}
36800
36801// Header returns an http.Header that can be modified by the caller to
36802// add HTTP headers to the request.
36803func (c *PubsubnotificationsettingsUpdateCall) Header() http.Header {
36804	if c.header_ == nil {
36805		c.header_ = make(http.Header)
36806	}
36807	return c.header_
36808}
36809
36810func (c *PubsubnotificationsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
36811	reqHeaders := make(http.Header)
36812	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
36813	for k, v := range c.header_ {
36814		reqHeaders[k] = v
36815	}
36816	reqHeaders.Set("User-Agent", c.s.userAgent())
36817	var body io.Reader = nil
36818	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pubsubnotificationsettings)
36819	if err != nil {
36820		return nil, err
36821	}
36822	reqHeaders.Set("Content-Type", "application/json")
36823	c.urlParams_.Set("alt", alt)
36824	c.urlParams_.Set("prettyPrint", "false")
36825	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pubsubnotificationsettings")
36826	urls += "?" + c.urlParams_.Encode()
36827	req, err := http.NewRequest("PUT", urls, body)
36828	if err != nil {
36829		return nil, err
36830	}
36831	req.Header = reqHeaders
36832	googleapi.Expand(req.URL, map[string]string{
36833		"merchantId": strconv.FormatUint(c.merchantId, 10),
36834	})
36835	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36836}
36837
36838// Do executes the "content.pubsubnotificationsettings.update" call.
36839// Exactly one of *PubsubNotificationSettings or error will be non-nil.
36840// Any non-2xx status code is an error. Response headers are in either
36841// *PubsubNotificationSettings.ServerResponse.Header or (if a response
36842// was returned at all) in error.(*googleapi.Error).Header. Use
36843// googleapi.IsNotModified to check whether the returned error was
36844// because http.StatusNotModified was returned.
36845func (c *PubsubnotificationsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
36846	gensupport.SetOptions(c.urlParams_, opts...)
36847	res, err := c.doRequest("json")
36848	if res != nil && res.StatusCode == http.StatusNotModified {
36849		if res.Body != nil {
36850			res.Body.Close()
36851		}
36852		return nil, &googleapi.Error{
36853			Code:   res.StatusCode,
36854			Header: res.Header,
36855		}
36856	}
36857	if err != nil {
36858		return nil, err
36859	}
36860	defer googleapi.CloseBody(res)
36861	if err := googleapi.CheckResponse(res); err != nil {
36862		return nil, err
36863	}
36864	ret := &PubsubNotificationSettings{
36865		ServerResponse: googleapi.ServerResponse{
36866			Header:         res.Header,
36867			HTTPStatusCode: res.StatusCode,
36868		},
36869	}
36870	target := &ret
36871	if err := gensupport.DecodeResponse(target, res); err != nil {
36872		return nil, err
36873	}
36874	return ret, nil
36875	// {
36876	//   "description": "Register a Merchant Center account for pubsub notifications. Note that cloud topic name should not be provided as part of the request.",
36877	//   "flatPath": "{merchantId}/pubsubnotificationsettings",
36878	//   "httpMethod": "PUT",
36879	//   "id": "content.pubsubnotificationsettings.update",
36880	//   "parameterOrder": [
36881	//     "merchantId"
36882	//   ],
36883	//   "parameters": {
36884	//     "merchantId": {
36885	//       "description": "The ID of the account.",
36886	//       "format": "uint64",
36887	//       "location": "path",
36888	//       "required": true,
36889	//       "type": "string"
36890	//     }
36891	//   },
36892	//   "path": "{merchantId}/pubsubnotificationsettings",
36893	//   "request": {
36894	//     "$ref": "PubsubNotificationSettings"
36895	//   },
36896	//   "response": {
36897	//     "$ref": "PubsubNotificationSettings"
36898	//   },
36899	//   "scopes": [
36900	//     "https://www.googleapis.com/auth/content"
36901	//   ]
36902	// }
36903
36904}
36905
36906// method id "content.regionalinventory.custombatch":
36907
36908type RegionalinventoryCustombatchCall struct {
36909	s                                   *APIService
36910	regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest
36911	urlParams_                          gensupport.URLParams
36912	ctx_                                context.Context
36913	header_                             http.Header
36914}
36915
36916// Custombatch: Updates regional inventory for multiple products or
36917// regions in a single request.
36918func (r *RegionalinventoryService) Custombatch(regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest) *RegionalinventoryCustombatchCall {
36919	c := &RegionalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36920	c.regionalinventorycustombatchrequest = regionalinventorycustombatchrequest
36921	return c
36922}
36923
36924// Fields allows partial responses to be retrieved. See
36925// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36926// for more information.
36927func (c *RegionalinventoryCustombatchCall) Fields(s ...googleapi.Field) *RegionalinventoryCustombatchCall {
36928	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36929	return c
36930}
36931
36932// Context sets the context to be used in this call's Do method. Any
36933// pending HTTP request will be aborted if the provided context is
36934// canceled.
36935func (c *RegionalinventoryCustombatchCall) Context(ctx context.Context) *RegionalinventoryCustombatchCall {
36936	c.ctx_ = ctx
36937	return c
36938}
36939
36940// Header returns an http.Header that can be modified by the caller to
36941// add HTTP headers to the request.
36942func (c *RegionalinventoryCustombatchCall) Header() http.Header {
36943	if c.header_ == nil {
36944		c.header_ = make(http.Header)
36945	}
36946	return c.header_
36947}
36948
36949func (c *RegionalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
36950	reqHeaders := make(http.Header)
36951	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
36952	for k, v := range c.header_ {
36953		reqHeaders[k] = v
36954	}
36955	reqHeaders.Set("User-Agent", c.s.userAgent())
36956	var body io.Reader = nil
36957	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventorycustombatchrequest)
36958	if err != nil {
36959		return nil, err
36960	}
36961	reqHeaders.Set("Content-Type", "application/json")
36962	c.urlParams_.Set("alt", alt)
36963	c.urlParams_.Set("prettyPrint", "false")
36964	urls := googleapi.ResolveRelative(c.s.BasePath, "regionalinventory/batch")
36965	urls += "?" + c.urlParams_.Encode()
36966	req, err := http.NewRequest("POST", urls, body)
36967	if err != nil {
36968		return nil, err
36969	}
36970	req.Header = reqHeaders
36971	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36972}
36973
36974// Do executes the "content.regionalinventory.custombatch" call.
36975// Exactly one of *RegionalinventoryCustomBatchResponse or error will be
36976// non-nil. Any non-2xx status code is an error. Response headers are in
36977// either *RegionalinventoryCustomBatchResponse.ServerResponse.Header or
36978// (if a response was returned at all) in
36979// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
36980// whether the returned error was because http.StatusNotModified was
36981// returned.
36982func (c *RegionalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*RegionalinventoryCustomBatchResponse, error) {
36983	gensupport.SetOptions(c.urlParams_, opts...)
36984	res, err := c.doRequest("json")
36985	if res != nil && res.StatusCode == http.StatusNotModified {
36986		if res.Body != nil {
36987			res.Body.Close()
36988		}
36989		return nil, &googleapi.Error{
36990			Code:   res.StatusCode,
36991			Header: res.Header,
36992		}
36993	}
36994	if err != nil {
36995		return nil, err
36996	}
36997	defer googleapi.CloseBody(res)
36998	if err := googleapi.CheckResponse(res); err != nil {
36999		return nil, err
37000	}
37001	ret := &RegionalinventoryCustomBatchResponse{
37002		ServerResponse: googleapi.ServerResponse{
37003			Header:         res.Header,
37004			HTTPStatusCode: res.StatusCode,
37005		},
37006	}
37007	target := &ret
37008	if err := gensupport.DecodeResponse(target, res); err != nil {
37009		return nil, err
37010	}
37011	return ret, nil
37012	// {
37013	//   "description": "Updates regional inventory for multiple products or regions in a single request.",
37014	//   "flatPath": "regionalinventory/batch",
37015	//   "httpMethod": "POST",
37016	//   "id": "content.regionalinventory.custombatch",
37017	//   "parameterOrder": [],
37018	//   "parameters": {},
37019	//   "path": "regionalinventory/batch",
37020	//   "request": {
37021	//     "$ref": "RegionalinventoryCustomBatchRequest"
37022	//   },
37023	//   "response": {
37024	//     "$ref": "RegionalinventoryCustomBatchResponse"
37025	//   },
37026	//   "scopes": [
37027	//     "https://www.googleapis.com/auth/content"
37028	//   ]
37029	// }
37030
37031}
37032
37033// method id "content.regionalinventory.insert":
37034
37035type RegionalinventoryInsertCall struct {
37036	s                 *APIService
37037	merchantId        uint64
37038	productId         string
37039	regionalinventory *RegionalInventory
37040	urlParams_        gensupport.URLParams
37041	ctx_              context.Context
37042	header_           http.Header
37043}
37044
37045// Insert: Update the regional inventory of a product in your Merchant
37046// Center account. If a regional inventory with the same region ID
37047// already exists, this method updates that entry.
37048//
37049// - merchantId: The ID of the account that contains the product. This
37050//   account cannot be a multi-client account.
37051// - productId: The REST ID of the product for which to update the
37052//   regional inventory.
37053func (r *RegionalinventoryService) Insert(merchantId uint64, productId string, regionalinventory *RegionalInventory) *RegionalinventoryInsertCall {
37054	c := &RegionalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37055	c.merchantId = merchantId
37056	c.productId = productId
37057	c.regionalinventory = regionalinventory
37058	return c
37059}
37060
37061// Fields allows partial responses to be retrieved. See
37062// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37063// for more information.
37064func (c *RegionalinventoryInsertCall) Fields(s ...googleapi.Field) *RegionalinventoryInsertCall {
37065	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37066	return c
37067}
37068
37069// Context sets the context to be used in this call's Do method. Any
37070// pending HTTP request will be aborted if the provided context is
37071// canceled.
37072func (c *RegionalinventoryInsertCall) Context(ctx context.Context) *RegionalinventoryInsertCall {
37073	c.ctx_ = ctx
37074	return c
37075}
37076
37077// Header returns an http.Header that can be modified by the caller to
37078// add HTTP headers to the request.
37079func (c *RegionalinventoryInsertCall) Header() http.Header {
37080	if c.header_ == nil {
37081		c.header_ = make(http.Header)
37082	}
37083	return c.header_
37084}
37085
37086func (c *RegionalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
37087	reqHeaders := make(http.Header)
37088	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
37089	for k, v := range c.header_ {
37090		reqHeaders[k] = v
37091	}
37092	reqHeaders.Set("User-Agent", c.s.userAgent())
37093	var body io.Reader = nil
37094	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventory)
37095	if err != nil {
37096		return nil, err
37097	}
37098	reqHeaders.Set("Content-Type", "application/json")
37099	c.urlParams_.Set("alt", alt)
37100	c.urlParams_.Set("prettyPrint", "false")
37101	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/regionalinventory")
37102	urls += "?" + c.urlParams_.Encode()
37103	req, err := http.NewRequest("POST", urls, body)
37104	if err != nil {
37105		return nil, err
37106	}
37107	req.Header = reqHeaders
37108	googleapi.Expand(req.URL, map[string]string{
37109		"merchantId": strconv.FormatUint(c.merchantId, 10),
37110		"productId":  c.productId,
37111	})
37112	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37113}
37114
37115// Do executes the "content.regionalinventory.insert" call.
37116// Exactly one of *RegionalInventory or error will be non-nil. Any
37117// non-2xx status code is an error. Response headers are in either
37118// *RegionalInventory.ServerResponse.Header or (if a response was
37119// returned at all) in error.(*googleapi.Error).Header. Use
37120// googleapi.IsNotModified to check whether the returned error was
37121// because http.StatusNotModified was returned.
37122func (c *RegionalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*RegionalInventory, error) {
37123	gensupport.SetOptions(c.urlParams_, opts...)
37124	res, err := c.doRequest("json")
37125	if res != nil && res.StatusCode == http.StatusNotModified {
37126		if res.Body != nil {
37127			res.Body.Close()
37128		}
37129		return nil, &googleapi.Error{
37130			Code:   res.StatusCode,
37131			Header: res.Header,
37132		}
37133	}
37134	if err != nil {
37135		return nil, err
37136	}
37137	defer googleapi.CloseBody(res)
37138	if err := googleapi.CheckResponse(res); err != nil {
37139		return nil, err
37140	}
37141	ret := &RegionalInventory{
37142		ServerResponse: googleapi.ServerResponse{
37143			Header:         res.Header,
37144			HTTPStatusCode: res.StatusCode,
37145		},
37146	}
37147	target := &ret
37148	if err := gensupport.DecodeResponse(target, res); err != nil {
37149		return nil, err
37150	}
37151	return ret, nil
37152	// {
37153	//   "description": "Update the regional inventory of a product in your Merchant Center account. If a regional inventory with the same region ID already exists, this method updates that entry.",
37154	//   "flatPath": "{merchantId}/products/{productId}/regionalinventory",
37155	//   "httpMethod": "POST",
37156	//   "id": "content.regionalinventory.insert",
37157	//   "parameterOrder": [
37158	//     "merchantId",
37159	//     "productId"
37160	//   ],
37161	//   "parameters": {
37162	//     "merchantId": {
37163	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
37164	//       "format": "uint64",
37165	//       "location": "path",
37166	//       "required": true,
37167	//       "type": "string"
37168	//     },
37169	//     "productId": {
37170	//       "description": "The REST ID of the product for which to update the regional inventory.",
37171	//       "location": "path",
37172	//       "required": true,
37173	//       "type": "string"
37174	//     }
37175	//   },
37176	//   "path": "{merchantId}/products/{productId}/regionalinventory",
37177	//   "request": {
37178	//     "$ref": "RegionalInventory"
37179	//   },
37180	//   "response": {
37181	//     "$ref": "RegionalInventory"
37182	//   },
37183	//   "scopes": [
37184	//     "https://www.googleapis.com/auth/content"
37185	//   ]
37186	// }
37187
37188}
37189
37190// method id "content.regions.create":
37191
37192type RegionsCreateCall struct {
37193	s          *APIService
37194	merchantId int64
37195	region     *Region
37196	urlParams_ gensupport.URLParams
37197	ctx_       context.Context
37198	header_    http.Header
37199}
37200
37201// Create: Creates a region definition in your Merchant Center account.
37202//
37203// - merchantId: The id of the merchant for which to create region
37204//   definition.
37205func (r *RegionsService) Create(merchantId int64, region *Region) *RegionsCreateCall {
37206	c := &RegionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37207	c.merchantId = merchantId
37208	c.region = region
37209	return c
37210}
37211
37212// RegionId sets the optional parameter "regionId": Required. The id of
37213// the region to create.
37214func (c *RegionsCreateCall) RegionId(regionId string) *RegionsCreateCall {
37215	c.urlParams_.Set("regionId", regionId)
37216	return c
37217}
37218
37219// Fields allows partial responses to be retrieved. See
37220// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37221// for more information.
37222func (c *RegionsCreateCall) Fields(s ...googleapi.Field) *RegionsCreateCall {
37223	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37224	return c
37225}
37226
37227// Context sets the context to be used in this call's Do method. Any
37228// pending HTTP request will be aborted if the provided context is
37229// canceled.
37230func (c *RegionsCreateCall) Context(ctx context.Context) *RegionsCreateCall {
37231	c.ctx_ = ctx
37232	return c
37233}
37234
37235// Header returns an http.Header that can be modified by the caller to
37236// add HTTP headers to the request.
37237func (c *RegionsCreateCall) Header() http.Header {
37238	if c.header_ == nil {
37239		c.header_ = make(http.Header)
37240	}
37241	return c.header_
37242}
37243
37244func (c *RegionsCreateCall) doRequest(alt string) (*http.Response, error) {
37245	reqHeaders := make(http.Header)
37246	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
37247	for k, v := range c.header_ {
37248		reqHeaders[k] = v
37249	}
37250	reqHeaders.Set("User-Agent", c.s.userAgent())
37251	var body io.Reader = nil
37252	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
37253	if err != nil {
37254		return nil, err
37255	}
37256	reqHeaders.Set("Content-Type", "application/json")
37257	c.urlParams_.Set("alt", alt)
37258	c.urlParams_.Set("prettyPrint", "false")
37259	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions")
37260	urls += "?" + c.urlParams_.Encode()
37261	req, err := http.NewRequest("POST", urls, body)
37262	if err != nil {
37263		return nil, err
37264	}
37265	req.Header = reqHeaders
37266	googleapi.Expand(req.URL, map[string]string{
37267		"merchantId": strconv.FormatInt(c.merchantId, 10),
37268	})
37269	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37270}
37271
37272// Do executes the "content.regions.create" call.
37273// Exactly one of *Region or error will be non-nil. Any non-2xx status
37274// code is an error. Response headers are in either
37275// *Region.ServerResponse.Header or (if a response was returned at all)
37276// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
37277// check whether the returned error was because http.StatusNotModified
37278// was returned.
37279func (c *RegionsCreateCall) Do(opts ...googleapi.CallOption) (*Region, error) {
37280	gensupport.SetOptions(c.urlParams_, opts...)
37281	res, err := c.doRequest("json")
37282	if res != nil && res.StatusCode == http.StatusNotModified {
37283		if res.Body != nil {
37284			res.Body.Close()
37285		}
37286		return nil, &googleapi.Error{
37287			Code:   res.StatusCode,
37288			Header: res.Header,
37289		}
37290	}
37291	if err != nil {
37292		return nil, err
37293	}
37294	defer googleapi.CloseBody(res)
37295	if err := googleapi.CheckResponse(res); err != nil {
37296		return nil, err
37297	}
37298	ret := &Region{
37299		ServerResponse: googleapi.ServerResponse{
37300			Header:         res.Header,
37301			HTTPStatusCode: res.StatusCode,
37302		},
37303	}
37304	target := &ret
37305	if err := gensupport.DecodeResponse(target, res); err != nil {
37306		return nil, err
37307	}
37308	return ret, nil
37309	// {
37310	//   "description": "Creates a region definition in your Merchant Center account.",
37311	//   "flatPath": "{merchantId}/regions",
37312	//   "httpMethod": "POST",
37313	//   "id": "content.regions.create",
37314	//   "parameterOrder": [
37315	//     "merchantId"
37316	//   ],
37317	//   "parameters": {
37318	//     "merchantId": {
37319	//       "description": "Required. The id of the merchant for which to create region definition.",
37320	//       "format": "int64",
37321	//       "location": "path",
37322	//       "required": true,
37323	//       "type": "string"
37324	//     },
37325	//     "regionId": {
37326	//       "description": "Required. The id of the region to create.",
37327	//       "location": "query",
37328	//       "type": "string"
37329	//     }
37330	//   },
37331	//   "path": "{merchantId}/regions",
37332	//   "request": {
37333	//     "$ref": "Region"
37334	//   },
37335	//   "response": {
37336	//     "$ref": "Region"
37337	//   },
37338	//   "scopes": [
37339	//     "https://www.googleapis.com/auth/content"
37340	//   ]
37341	// }
37342
37343}
37344
37345// method id "content.regions.delete":
37346
37347type RegionsDeleteCall struct {
37348	s          *APIService
37349	merchantId int64
37350	regionId   string
37351	urlParams_ gensupport.URLParams
37352	ctx_       context.Context
37353	header_    http.Header
37354}
37355
37356// Delete: Deletes a region definition from your Merchant Center
37357// account.
37358//
37359// - merchantId: The id of the merchant for which to delete region
37360//   definition.
37361// - regionId: The id of the region to delete.
37362func (r *RegionsService) Delete(merchantId int64, regionId string) *RegionsDeleteCall {
37363	c := &RegionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37364	c.merchantId = merchantId
37365	c.regionId = regionId
37366	return c
37367}
37368
37369// Fields allows partial responses to be retrieved. See
37370// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37371// for more information.
37372func (c *RegionsDeleteCall) Fields(s ...googleapi.Field) *RegionsDeleteCall {
37373	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37374	return c
37375}
37376
37377// Context sets the context to be used in this call's Do method. Any
37378// pending HTTP request will be aborted if the provided context is
37379// canceled.
37380func (c *RegionsDeleteCall) Context(ctx context.Context) *RegionsDeleteCall {
37381	c.ctx_ = ctx
37382	return c
37383}
37384
37385// Header returns an http.Header that can be modified by the caller to
37386// add HTTP headers to the request.
37387func (c *RegionsDeleteCall) Header() http.Header {
37388	if c.header_ == nil {
37389		c.header_ = make(http.Header)
37390	}
37391	return c.header_
37392}
37393
37394func (c *RegionsDeleteCall) doRequest(alt string) (*http.Response, error) {
37395	reqHeaders := make(http.Header)
37396	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
37397	for k, v := range c.header_ {
37398		reqHeaders[k] = v
37399	}
37400	reqHeaders.Set("User-Agent", c.s.userAgent())
37401	var body io.Reader = nil
37402	c.urlParams_.Set("alt", alt)
37403	c.urlParams_.Set("prettyPrint", "false")
37404	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
37405	urls += "?" + c.urlParams_.Encode()
37406	req, err := http.NewRequest("DELETE", urls, body)
37407	if err != nil {
37408		return nil, err
37409	}
37410	req.Header = reqHeaders
37411	googleapi.Expand(req.URL, map[string]string{
37412		"merchantId": strconv.FormatInt(c.merchantId, 10),
37413		"regionId":   c.regionId,
37414	})
37415	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37416}
37417
37418// Do executes the "content.regions.delete" call.
37419func (c *RegionsDeleteCall) Do(opts ...googleapi.CallOption) error {
37420	gensupport.SetOptions(c.urlParams_, opts...)
37421	res, err := c.doRequest("json")
37422	if err != nil {
37423		return err
37424	}
37425	defer googleapi.CloseBody(res)
37426	if err := googleapi.CheckResponse(res); err != nil {
37427		return err
37428	}
37429	return nil
37430	// {
37431	//   "description": "Deletes a region definition from your Merchant Center account.",
37432	//   "flatPath": "{merchantId}/regions/{regionId}",
37433	//   "httpMethod": "DELETE",
37434	//   "id": "content.regions.delete",
37435	//   "parameterOrder": [
37436	//     "merchantId",
37437	//     "regionId"
37438	//   ],
37439	//   "parameters": {
37440	//     "merchantId": {
37441	//       "description": "Required. The id of the merchant for which to delete region definition.",
37442	//       "format": "int64",
37443	//       "location": "path",
37444	//       "required": true,
37445	//       "type": "string"
37446	//     },
37447	//     "regionId": {
37448	//       "description": "Required. The id of the region to delete.",
37449	//       "location": "path",
37450	//       "required": true,
37451	//       "type": "string"
37452	//     }
37453	//   },
37454	//   "path": "{merchantId}/regions/{regionId}",
37455	//   "scopes": [
37456	//     "https://www.googleapis.com/auth/content"
37457	//   ]
37458	// }
37459
37460}
37461
37462// method id "content.regions.get":
37463
37464type RegionsGetCall struct {
37465	s            *APIService
37466	merchantId   int64
37467	regionId     string
37468	urlParams_   gensupport.URLParams
37469	ifNoneMatch_ string
37470	ctx_         context.Context
37471	header_      http.Header
37472}
37473
37474// Get: Retrieves a region defined in your Merchant Center account.
37475//
37476// - merchantId: The id of the merchant for which to retrieve region
37477//   definition.
37478// - regionId: The id of the region to retrieve.
37479func (r *RegionsService) Get(merchantId int64, regionId string) *RegionsGetCall {
37480	c := &RegionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37481	c.merchantId = merchantId
37482	c.regionId = regionId
37483	return c
37484}
37485
37486// Fields allows partial responses to be retrieved. See
37487// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37488// for more information.
37489func (c *RegionsGetCall) Fields(s ...googleapi.Field) *RegionsGetCall {
37490	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37491	return c
37492}
37493
37494// IfNoneMatch sets the optional parameter which makes the operation
37495// fail if the object's ETag matches the given value. This is useful for
37496// getting updates only after the object has changed since the last
37497// request. Use googleapi.IsNotModified to check whether the response
37498// error from Do is the result of In-None-Match.
37499func (c *RegionsGetCall) IfNoneMatch(entityTag string) *RegionsGetCall {
37500	c.ifNoneMatch_ = entityTag
37501	return c
37502}
37503
37504// Context sets the context to be used in this call's Do method. Any
37505// pending HTTP request will be aborted if the provided context is
37506// canceled.
37507func (c *RegionsGetCall) Context(ctx context.Context) *RegionsGetCall {
37508	c.ctx_ = ctx
37509	return c
37510}
37511
37512// Header returns an http.Header that can be modified by the caller to
37513// add HTTP headers to the request.
37514func (c *RegionsGetCall) Header() http.Header {
37515	if c.header_ == nil {
37516		c.header_ = make(http.Header)
37517	}
37518	return c.header_
37519}
37520
37521func (c *RegionsGetCall) doRequest(alt string) (*http.Response, error) {
37522	reqHeaders := make(http.Header)
37523	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
37524	for k, v := range c.header_ {
37525		reqHeaders[k] = v
37526	}
37527	reqHeaders.Set("User-Agent", c.s.userAgent())
37528	if c.ifNoneMatch_ != "" {
37529		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37530	}
37531	var body io.Reader = nil
37532	c.urlParams_.Set("alt", alt)
37533	c.urlParams_.Set("prettyPrint", "false")
37534	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
37535	urls += "?" + c.urlParams_.Encode()
37536	req, err := http.NewRequest("GET", urls, body)
37537	if err != nil {
37538		return nil, err
37539	}
37540	req.Header = reqHeaders
37541	googleapi.Expand(req.URL, map[string]string{
37542		"merchantId": strconv.FormatInt(c.merchantId, 10),
37543		"regionId":   c.regionId,
37544	})
37545	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37546}
37547
37548// Do executes the "content.regions.get" call.
37549// Exactly one of *Region or error will be non-nil. Any non-2xx status
37550// code is an error. Response headers are in either
37551// *Region.ServerResponse.Header or (if a response was returned at all)
37552// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
37553// check whether the returned error was because http.StatusNotModified
37554// was returned.
37555func (c *RegionsGetCall) Do(opts ...googleapi.CallOption) (*Region, error) {
37556	gensupport.SetOptions(c.urlParams_, opts...)
37557	res, err := c.doRequest("json")
37558	if res != nil && res.StatusCode == http.StatusNotModified {
37559		if res.Body != nil {
37560			res.Body.Close()
37561		}
37562		return nil, &googleapi.Error{
37563			Code:   res.StatusCode,
37564			Header: res.Header,
37565		}
37566	}
37567	if err != nil {
37568		return nil, err
37569	}
37570	defer googleapi.CloseBody(res)
37571	if err := googleapi.CheckResponse(res); err != nil {
37572		return nil, err
37573	}
37574	ret := &Region{
37575		ServerResponse: googleapi.ServerResponse{
37576			Header:         res.Header,
37577			HTTPStatusCode: res.StatusCode,
37578		},
37579	}
37580	target := &ret
37581	if err := gensupport.DecodeResponse(target, res); err != nil {
37582		return nil, err
37583	}
37584	return ret, nil
37585	// {
37586	//   "description": "Retrieves a region defined in your Merchant Center account.",
37587	//   "flatPath": "{merchantId}/regions/{regionId}",
37588	//   "httpMethod": "GET",
37589	//   "id": "content.regions.get",
37590	//   "parameterOrder": [
37591	//     "merchantId",
37592	//     "regionId"
37593	//   ],
37594	//   "parameters": {
37595	//     "merchantId": {
37596	//       "description": "Required. The id of the merchant for which to retrieve region definition.",
37597	//       "format": "int64",
37598	//       "location": "path",
37599	//       "required": true,
37600	//       "type": "string"
37601	//     },
37602	//     "regionId": {
37603	//       "description": "Required. The id of the region to retrieve.",
37604	//       "location": "path",
37605	//       "required": true,
37606	//       "type": "string"
37607	//     }
37608	//   },
37609	//   "path": "{merchantId}/regions/{regionId}",
37610	//   "response": {
37611	//     "$ref": "Region"
37612	//   },
37613	//   "scopes": [
37614	//     "https://www.googleapis.com/auth/content"
37615	//   ]
37616	// }
37617
37618}
37619
37620// method id "content.regions.list":
37621
37622type RegionsListCall struct {
37623	s            *APIService
37624	merchantId   int64
37625	urlParams_   gensupport.URLParams
37626	ifNoneMatch_ string
37627	ctx_         context.Context
37628	header_      http.Header
37629}
37630
37631// List: Lists the regions in your Merchant Center account.
37632//
37633// - merchantId: The id of the merchant for which to list region
37634//   definitions.
37635func (r *RegionsService) List(merchantId int64) *RegionsListCall {
37636	c := &RegionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37637	c.merchantId = merchantId
37638	return c
37639}
37640
37641// PageSize sets the optional parameter "pageSize": The maximum number
37642// of regions to return. The service may return fewer than this value.
37643// If unspecified, at most 50 rules will be returned. The maximum value
37644// is 1000; values above 1000 will be coerced to 1000.
37645func (c *RegionsListCall) PageSize(pageSize int64) *RegionsListCall {
37646	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
37647	return c
37648}
37649
37650// PageToken sets the optional parameter "pageToken": A page token,
37651// received from a previous `ListRegions` call. Provide this to retrieve
37652// the subsequent page. When paginating, all other parameters provided
37653// to `ListRegions` must match the call that provided the page token.
37654func (c *RegionsListCall) PageToken(pageToken string) *RegionsListCall {
37655	c.urlParams_.Set("pageToken", pageToken)
37656	return c
37657}
37658
37659// Fields allows partial responses to be retrieved. See
37660// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37661// for more information.
37662func (c *RegionsListCall) Fields(s ...googleapi.Field) *RegionsListCall {
37663	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37664	return c
37665}
37666
37667// IfNoneMatch sets the optional parameter which makes the operation
37668// fail if the object's ETag matches the given value. This is useful for
37669// getting updates only after the object has changed since the last
37670// request. Use googleapi.IsNotModified to check whether the response
37671// error from Do is the result of In-None-Match.
37672func (c *RegionsListCall) IfNoneMatch(entityTag string) *RegionsListCall {
37673	c.ifNoneMatch_ = entityTag
37674	return c
37675}
37676
37677// Context sets the context to be used in this call's Do method. Any
37678// pending HTTP request will be aborted if the provided context is
37679// canceled.
37680func (c *RegionsListCall) Context(ctx context.Context) *RegionsListCall {
37681	c.ctx_ = ctx
37682	return c
37683}
37684
37685// Header returns an http.Header that can be modified by the caller to
37686// add HTTP headers to the request.
37687func (c *RegionsListCall) Header() http.Header {
37688	if c.header_ == nil {
37689		c.header_ = make(http.Header)
37690	}
37691	return c.header_
37692}
37693
37694func (c *RegionsListCall) doRequest(alt string) (*http.Response, error) {
37695	reqHeaders := make(http.Header)
37696	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
37697	for k, v := range c.header_ {
37698		reqHeaders[k] = v
37699	}
37700	reqHeaders.Set("User-Agent", c.s.userAgent())
37701	if c.ifNoneMatch_ != "" {
37702		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37703	}
37704	var body io.Reader = nil
37705	c.urlParams_.Set("alt", alt)
37706	c.urlParams_.Set("prettyPrint", "false")
37707	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions")
37708	urls += "?" + c.urlParams_.Encode()
37709	req, err := http.NewRequest("GET", urls, body)
37710	if err != nil {
37711		return nil, err
37712	}
37713	req.Header = reqHeaders
37714	googleapi.Expand(req.URL, map[string]string{
37715		"merchantId": strconv.FormatInt(c.merchantId, 10),
37716	})
37717	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37718}
37719
37720// Do executes the "content.regions.list" call.
37721// Exactly one of *ListRegionsResponse or error will be non-nil. Any
37722// non-2xx status code is an error. Response headers are in either
37723// *ListRegionsResponse.ServerResponse.Header or (if a response was
37724// returned at all) in error.(*googleapi.Error).Header. Use
37725// googleapi.IsNotModified to check whether the returned error was
37726// because http.StatusNotModified was returned.
37727func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*ListRegionsResponse, error) {
37728	gensupport.SetOptions(c.urlParams_, opts...)
37729	res, err := c.doRequest("json")
37730	if res != nil && res.StatusCode == http.StatusNotModified {
37731		if res.Body != nil {
37732			res.Body.Close()
37733		}
37734		return nil, &googleapi.Error{
37735			Code:   res.StatusCode,
37736			Header: res.Header,
37737		}
37738	}
37739	if err != nil {
37740		return nil, err
37741	}
37742	defer googleapi.CloseBody(res)
37743	if err := googleapi.CheckResponse(res); err != nil {
37744		return nil, err
37745	}
37746	ret := &ListRegionsResponse{
37747		ServerResponse: googleapi.ServerResponse{
37748			Header:         res.Header,
37749			HTTPStatusCode: res.StatusCode,
37750		},
37751	}
37752	target := &ret
37753	if err := gensupport.DecodeResponse(target, res); err != nil {
37754		return nil, err
37755	}
37756	return ret, nil
37757	// {
37758	//   "description": "Lists the regions in your Merchant Center account.",
37759	//   "flatPath": "{merchantId}/regions",
37760	//   "httpMethod": "GET",
37761	//   "id": "content.regions.list",
37762	//   "parameterOrder": [
37763	//     "merchantId"
37764	//   ],
37765	//   "parameters": {
37766	//     "merchantId": {
37767	//       "description": "Required. The id of the merchant for which to list region definitions.",
37768	//       "format": "int64",
37769	//       "location": "path",
37770	//       "required": true,
37771	//       "type": "string"
37772	//     },
37773	//     "pageSize": {
37774	//       "description": "The maximum number of regions to return. The service may return fewer than this value. If unspecified, at most 50 rules will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
37775	//       "format": "int32",
37776	//       "location": "query",
37777	//       "type": "integer"
37778	//     },
37779	//     "pageToken": {
37780	//       "description": "A page token, received from a previous `ListRegions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListRegions` must match the call that provided the page token.",
37781	//       "location": "query",
37782	//       "type": "string"
37783	//     }
37784	//   },
37785	//   "path": "{merchantId}/regions",
37786	//   "response": {
37787	//     "$ref": "ListRegionsResponse"
37788	//   },
37789	//   "scopes": [
37790	//     "https://www.googleapis.com/auth/content"
37791	//   ]
37792	// }
37793
37794}
37795
37796// Pages invokes f for each page of results.
37797// A non-nil error returned from f will halt the iteration.
37798// The provided context supersedes any context provided to the Context method.
37799func (c *RegionsListCall) Pages(ctx context.Context, f func(*ListRegionsResponse) error) error {
37800	c.ctx_ = ctx
37801	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
37802	for {
37803		x, err := c.Do()
37804		if err != nil {
37805			return err
37806		}
37807		if err := f(x); err != nil {
37808			return err
37809		}
37810		if x.NextPageToken == "" {
37811			return nil
37812		}
37813		c.PageToken(x.NextPageToken)
37814	}
37815}
37816
37817// method id "content.regions.patch":
37818
37819type RegionsPatchCall struct {
37820	s          *APIService
37821	merchantId int64
37822	regionId   string
37823	region     *Region
37824	urlParams_ gensupport.URLParams
37825	ctx_       context.Context
37826	header_    http.Header
37827}
37828
37829// Patch: Updates a region definition in your Merchant Center account.
37830//
37831// - merchantId: The id of the merchant for which to update region
37832//   definition.
37833// - regionId: The id of the region to update.
37834func (r *RegionsService) Patch(merchantId int64, regionId string, region *Region) *RegionsPatchCall {
37835	c := &RegionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37836	c.merchantId = merchantId
37837	c.regionId = regionId
37838	c.region = region
37839	return c
37840}
37841
37842// UpdateMask sets the optional parameter "updateMask": The
37843// comma-separated field mask indicating the fields to update. Example:
37844// "displayName,postalCodeArea.regionCode".
37845func (c *RegionsPatchCall) UpdateMask(updateMask string) *RegionsPatchCall {
37846	c.urlParams_.Set("updateMask", updateMask)
37847	return c
37848}
37849
37850// Fields allows partial responses to be retrieved. See
37851// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37852// for more information.
37853func (c *RegionsPatchCall) Fields(s ...googleapi.Field) *RegionsPatchCall {
37854	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37855	return c
37856}
37857
37858// Context sets the context to be used in this call's Do method. Any
37859// pending HTTP request will be aborted if the provided context is
37860// canceled.
37861func (c *RegionsPatchCall) Context(ctx context.Context) *RegionsPatchCall {
37862	c.ctx_ = ctx
37863	return c
37864}
37865
37866// Header returns an http.Header that can be modified by the caller to
37867// add HTTP headers to the request.
37868func (c *RegionsPatchCall) Header() http.Header {
37869	if c.header_ == nil {
37870		c.header_ = make(http.Header)
37871	}
37872	return c.header_
37873}
37874
37875func (c *RegionsPatchCall) doRequest(alt string) (*http.Response, error) {
37876	reqHeaders := make(http.Header)
37877	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
37878	for k, v := range c.header_ {
37879		reqHeaders[k] = v
37880	}
37881	reqHeaders.Set("User-Agent", c.s.userAgent())
37882	var body io.Reader = nil
37883	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
37884	if err != nil {
37885		return nil, err
37886	}
37887	reqHeaders.Set("Content-Type", "application/json")
37888	c.urlParams_.Set("alt", alt)
37889	c.urlParams_.Set("prettyPrint", "false")
37890	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
37891	urls += "?" + c.urlParams_.Encode()
37892	req, err := http.NewRequest("PATCH", urls, body)
37893	if err != nil {
37894		return nil, err
37895	}
37896	req.Header = reqHeaders
37897	googleapi.Expand(req.URL, map[string]string{
37898		"merchantId": strconv.FormatInt(c.merchantId, 10),
37899		"regionId":   c.regionId,
37900	})
37901	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37902}
37903
37904// Do executes the "content.regions.patch" call.
37905// Exactly one of *Region or error will be non-nil. Any non-2xx status
37906// code is an error. Response headers are in either
37907// *Region.ServerResponse.Header or (if a response was returned at all)
37908// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
37909// check whether the returned error was because http.StatusNotModified
37910// was returned.
37911func (c *RegionsPatchCall) Do(opts ...googleapi.CallOption) (*Region, error) {
37912	gensupport.SetOptions(c.urlParams_, opts...)
37913	res, err := c.doRequest("json")
37914	if res != nil && res.StatusCode == http.StatusNotModified {
37915		if res.Body != nil {
37916			res.Body.Close()
37917		}
37918		return nil, &googleapi.Error{
37919			Code:   res.StatusCode,
37920			Header: res.Header,
37921		}
37922	}
37923	if err != nil {
37924		return nil, err
37925	}
37926	defer googleapi.CloseBody(res)
37927	if err := googleapi.CheckResponse(res); err != nil {
37928		return nil, err
37929	}
37930	ret := &Region{
37931		ServerResponse: googleapi.ServerResponse{
37932			Header:         res.Header,
37933			HTTPStatusCode: res.StatusCode,
37934		},
37935	}
37936	target := &ret
37937	if err := gensupport.DecodeResponse(target, res); err != nil {
37938		return nil, err
37939	}
37940	return ret, nil
37941	// {
37942	//   "description": "Updates a region definition in your Merchant Center account.",
37943	//   "flatPath": "{merchantId}/regions/{regionId}",
37944	//   "httpMethod": "PATCH",
37945	//   "id": "content.regions.patch",
37946	//   "parameterOrder": [
37947	//     "merchantId",
37948	//     "regionId"
37949	//   ],
37950	//   "parameters": {
37951	//     "merchantId": {
37952	//       "description": "Required. The id of the merchant for which to update region definition.",
37953	//       "format": "int64",
37954	//       "location": "path",
37955	//       "required": true,
37956	//       "type": "string"
37957	//     },
37958	//     "regionId": {
37959	//       "description": "Required. The id of the region to update.",
37960	//       "location": "path",
37961	//       "required": true,
37962	//       "type": "string"
37963	//     },
37964	//     "updateMask": {
37965	//       "description": "Optional. The comma-separated field mask indicating the fields to update. Example: `\"displayName,postalCodeArea.regionCode\"`.",
37966	//       "format": "google-fieldmask",
37967	//       "location": "query",
37968	//       "type": "string"
37969	//     }
37970	//   },
37971	//   "path": "{merchantId}/regions/{regionId}",
37972	//   "request": {
37973	//     "$ref": "Region"
37974	//   },
37975	//   "response": {
37976	//     "$ref": "Region"
37977	//   },
37978	//   "scopes": [
37979	//     "https://www.googleapis.com/auth/content"
37980	//   ]
37981	// }
37982
37983}
37984
37985// method id "content.reports.search":
37986
37987type ReportsSearchCall struct {
37988	s             *APIService
37989	merchantId    int64
37990	searchrequest *SearchRequest
37991	urlParams_    gensupport.URLParams
37992	ctx_          context.Context
37993	header_       http.Header
37994}
37995
37996// Search: Retrieves merchant performance mertrics matching the search
37997// query and optionally segmented by selected dimensions.
37998//
37999// - merchantId: Id of the merchant making the call. Must be a
38000//   standalone account or an MCA subaccount.
38001func (r *ReportsService) Search(merchantId int64, searchrequest *SearchRequest) *ReportsSearchCall {
38002	c := &ReportsSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38003	c.merchantId = merchantId
38004	c.searchrequest = searchrequest
38005	return c
38006}
38007
38008// Fields allows partial responses to be retrieved. See
38009// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38010// for more information.
38011func (c *ReportsSearchCall) Fields(s ...googleapi.Field) *ReportsSearchCall {
38012	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38013	return c
38014}
38015
38016// Context sets the context to be used in this call's Do method. Any
38017// pending HTTP request will be aborted if the provided context is
38018// canceled.
38019func (c *ReportsSearchCall) Context(ctx context.Context) *ReportsSearchCall {
38020	c.ctx_ = ctx
38021	return c
38022}
38023
38024// Header returns an http.Header that can be modified by the caller to
38025// add HTTP headers to the request.
38026func (c *ReportsSearchCall) Header() http.Header {
38027	if c.header_ == nil {
38028		c.header_ = make(http.Header)
38029	}
38030	return c.header_
38031}
38032
38033func (c *ReportsSearchCall) doRequest(alt string) (*http.Response, error) {
38034	reqHeaders := make(http.Header)
38035	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
38036	for k, v := range c.header_ {
38037		reqHeaders[k] = v
38038	}
38039	reqHeaders.Set("User-Agent", c.s.userAgent())
38040	var body io.Reader = nil
38041	body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchrequest)
38042	if err != nil {
38043		return nil, err
38044	}
38045	reqHeaders.Set("Content-Type", "application/json")
38046	c.urlParams_.Set("alt", alt)
38047	c.urlParams_.Set("prettyPrint", "false")
38048	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/reports/search")
38049	urls += "?" + c.urlParams_.Encode()
38050	req, err := http.NewRequest("POST", urls, body)
38051	if err != nil {
38052		return nil, err
38053	}
38054	req.Header = reqHeaders
38055	googleapi.Expand(req.URL, map[string]string{
38056		"merchantId": strconv.FormatInt(c.merchantId, 10),
38057	})
38058	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38059}
38060
38061// Do executes the "content.reports.search" call.
38062// Exactly one of *SearchResponse or error will be non-nil. Any non-2xx
38063// status code is an error. Response headers are in either
38064// *SearchResponse.ServerResponse.Header or (if a response was returned
38065// at all) in error.(*googleapi.Error).Header. Use
38066// googleapi.IsNotModified to check whether the returned error was
38067// because http.StatusNotModified was returned.
38068func (c *ReportsSearchCall) Do(opts ...googleapi.CallOption) (*SearchResponse, error) {
38069	gensupport.SetOptions(c.urlParams_, opts...)
38070	res, err := c.doRequest("json")
38071	if res != nil && res.StatusCode == http.StatusNotModified {
38072		if res.Body != nil {
38073			res.Body.Close()
38074		}
38075		return nil, &googleapi.Error{
38076			Code:   res.StatusCode,
38077			Header: res.Header,
38078		}
38079	}
38080	if err != nil {
38081		return nil, err
38082	}
38083	defer googleapi.CloseBody(res)
38084	if err := googleapi.CheckResponse(res); err != nil {
38085		return nil, err
38086	}
38087	ret := &SearchResponse{
38088		ServerResponse: googleapi.ServerResponse{
38089			Header:         res.Header,
38090			HTTPStatusCode: res.StatusCode,
38091		},
38092	}
38093	target := &ret
38094	if err := gensupport.DecodeResponse(target, res); err != nil {
38095		return nil, err
38096	}
38097	return ret, nil
38098	// {
38099	//   "description": "Retrieves merchant performance mertrics matching the search query and optionally segmented by selected dimensions.",
38100	//   "flatPath": "{merchantId}/reports/search",
38101	//   "httpMethod": "POST",
38102	//   "id": "content.reports.search",
38103	//   "parameterOrder": [
38104	//     "merchantId"
38105	//   ],
38106	//   "parameters": {
38107	//     "merchantId": {
38108	//       "description": "Required. Id of the merchant making the call. Must be a standalone account or an MCA subaccount.",
38109	//       "format": "int64",
38110	//       "location": "path",
38111	//       "required": true,
38112	//       "type": "string"
38113	//     }
38114	//   },
38115	//   "path": "{merchantId}/reports/search",
38116	//   "request": {
38117	//     "$ref": "SearchRequest"
38118	//   },
38119	//   "response": {
38120	//     "$ref": "SearchResponse"
38121	//   },
38122	//   "scopes": [
38123	//     "https://www.googleapis.com/auth/content"
38124	//   ]
38125	// }
38126
38127}
38128
38129// Pages invokes f for each page of results.
38130// A non-nil error returned from f will halt the iteration.
38131// The provided context supersedes any context provided to the Context method.
38132func (c *ReportsSearchCall) Pages(ctx context.Context, f func(*SearchResponse) error) error {
38133	c.ctx_ = ctx
38134	defer func(pt string) { c.searchrequest.PageToken = pt }(c.searchrequest.PageToken) // reset paging to original point
38135	for {
38136		x, err := c.Do()
38137		if err != nil {
38138			return err
38139		}
38140		if err := f(x); err != nil {
38141			return err
38142		}
38143		if x.NextPageToken == "" {
38144			return nil
38145		}
38146		c.searchrequest.PageToken = x.NextPageToken
38147	}
38148}
38149
38150// method id "content.repricingrules.create":
38151
38152type RepricingrulesCreateCall struct {
38153	s             *APIService
38154	merchantId    int64
38155	repricingrule *RepricingRule
38156	urlParams_    gensupport.URLParams
38157	ctx_          context.Context
38158	header_       http.Header
38159}
38160
38161// Create: Creates a repricing rule for your Merchant Center account.
38162//
38163// - merchantId: The id of the merchant who owns the repricing rule.
38164func (r *RepricingrulesService) Create(merchantId int64, repricingrule *RepricingRule) *RepricingrulesCreateCall {
38165	c := &RepricingrulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38166	c.merchantId = merchantId
38167	c.repricingrule = repricingrule
38168	return c
38169}
38170
38171// RuleId sets the optional parameter "ruleId": Required. The id of the
38172// rule to create.
38173func (c *RepricingrulesCreateCall) RuleId(ruleId string) *RepricingrulesCreateCall {
38174	c.urlParams_.Set("ruleId", ruleId)
38175	return c
38176}
38177
38178// Fields allows partial responses to be retrieved. See
38179// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38180// for more information.
38181func (c *RepricingrulesCreateCall) Fields(s ...googleapi.Field) *RepricingrulesCreateCall {
38182	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38183	return c
38184}
38185
38186// Context sets the context to be used in this call's Do method. Any
38187// pending HTTP request will be aborted if the provided context is
38188// canceled.
38189func (c *RepricingrulesCreateCall) Context(ctx context.Context) *RepricingrulesCreateCall {
38190	c.ctx_ = ctx
38191	return c
38192}
38193
38194// Header returns an http.Header that can be modified by the caller to
38195// add HTTP headers to the request.
38196func (c *RepricingrulesCreateCall) Header() http.Header {
38197	if c.header_ == nil {
38198		c.header_ = make(http.Header)
38199	}
38200	return c.header_
38201}
38202
38203func (c *RepricingrulesCreateCall) doRequest(alt string) (*http.Response, error) {
38204	reqHeaders := make(http.Header)
38205	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
38206	for k, v := range c.header_ {
38207		reqHeaders[k] = v
38208	}
38209	reqHeaders.Set("User-Agent", c.s.userAgent())
38210	var body io.Reader = nil
38211	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
38212	if err != nil {
38213		return nil, err
38214	}
38215	reqHeaders.Set("Content-Type", "application/json")
38216	c.urlParams_.Set("alt", alt)
38217	c.urlParams_.Set("prettyPrint", "false")
38218	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules")
38219	urls += "?" + c.urlParams_.Encode()
38220	req, err := http.NewRequest("POST", urls, body)
38221	if err != nil {
38222		return nil, err
38223	}
38224	req.Header = reqHeaders
38225	googleapi.Expand(req.URL, map[string]string{
38226		"merchantId": strconv.FormatInt(c.merchantId, 10),
38227	})
38228	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38229}
38230
38231// Do executes the "content.repricingrules.create" call.
38232// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
38233// status code is an error. Response headers are in either
38234// *RepricingRule.ServerResponse.Header or (if a response was returned
38235// at all) in error.(*googleapi.Error).Header. Use
38236// googleapi.IsNotModified to check whether the returned error was
38237// because http.StatusNotModified was returned.
38238func (c *RepricingrulesCreateCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
38239	gensupport.SetOptions(c.urlParams_, opts...)
38240	res, err := c.doRequest("json")
38241	if res != nil && res.StatusCode == http.StatusNotModified {
38242		if res.Body != nil {
38243			res.Body.Close()
38244		}
38245		return nil, &googleapi.Error{
38246			Code:   res.StatusCode,
38247			Header: res.Header,
38248		}
38249	}
38250	if err != nil {
38251		return nil, err
38252	}
38253	defer googleapi.CloseBody(res)
38254	if err := googleapi.CheckResponse(res); err != nil {
38255		return nil, err
38256	}
38257	ret := &RepricingRule{
38258		ServerResponse: googleapi.ServerResponse{
38259			Header:         res.Header,
38260			HTTPStatusCode: res.StatusCode,
38261		},
38262	}
38263	target := &ret
38264	if err := gensupport.DecodeResponse(target, res); err != nil {
38265		return nil, err
38266	}
38267	return ret, nil
38268	// {
38269	//   "description": "Creates a repricing rule for your Merchant Center account.",
38270	//   "flatPath": "{merchantId}/repricingrules",
38271	//   "httpMethod": "POST",
38272	//   "id": "content.repricingrules.create",
38273	//   "parameterOrder": [
38274	//     "merchantId"
38275	//   ],
38276	//   "parameters": {
38277	//     "merchantId": {
38278	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38279	//       "format": "int64",
38280	//       "location": "path",
38281	//       "required": true,
38282	//       "type": "string"
38283	//     },
38284	//     "ruleId": {
38285	//       "description": "Required. The id of the rule to create.",
38286	//       "location": "query",
38287	//       "type": "string"
38288	//     }
38289	//   },
38290	//   "path": "{merchantId}/repricingrules",
38291	//   "request": {
38292	//     "$ref": "RepricingRule"
38293	//   },
38294	//   "response": {
38295	//     "$ref": "RepricingRule"
38296	//   },
38297	//   "scopes": [
38298	//     "https://www.googleapis.com/auth/content"
38299	//   ]
38300	// }
38301
38302}
38303
38304// method id "content.repricingrules.delete":
38305
38306type RepricingrulesDeleteCall struct {
38307	s          *APIService
38308	merchantId int64
38309	ruleId     string
38310	urlParams_ gensupport.URLParams
38311	ctx_       context.Context
38312	header_    http.Header
38313}
38314
38315// Delete: Deletes a repricing rule in your Merchant Center account.
38316//
38317// - merchantId: The id of the merchant who owns the repricing rule.
38318// - ruleId: The id of the rule to Delete.
38319func (r *RepricingrulesService) Delete(merchantId int64, ruleId string) *RepricingrulesDeleteCall {
38320	c := &RepricingrulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38321	c.merchantId = merchantId
38322	c.ruleId = ruleId
38323	return c
38324}
38325
38326// Fields allows partial responses to be retrieved. See
38327// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38328// for more information.
38329func (c *RepricingrulesDeleteCall) Fields(s ...googleapi.Field) *RepricingrulesDeleteCall {
38330	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38331	return c
38332}
38333
38334// Context sets the context to be used in this call's Do method. Any
38335// pending HTTP request will be aborted if the provided context is
38336// canceled.
38337func (c *RepricingrulesDeleteCall) Context(ctx context.Context) *RepricingrulesDeleteCall {
38338	c.ctx_ = ctx
38339	return c
38340}
38341
38342// Header returns an http.Header that can be modified by the caller to
38343// add HTTP headers to the request.
38344func (c *RepricingrulesDeleteCall) Header() http.Header {
38345	if c.header_ == nil {
38346		c.header_ = make(http.Header)
38347	}
38348	return c.header_
38349}
38350
38351func (c *RepricingrulesDeleteCall) doRequest(alt string) (*http.Response, error) {
38352	reqHeaders := make(http.Header)
38353	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
38354	for k, v := range c.header_ {
38355		reqHeaders[k] = v
38356	}
38357	reqHeaders.Set("User-Agent", c.s.userAgent())
38358	var body io.Reader = nil
38359	c.urlParams_.Set("alt", alt)
38360	c.urlParams_.Set("prettyPrint", "false")
38361	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
38362	urls += "?" + c.urlParams_.Encode()
38363	req, err := http.NewRequest("DELETE", urls, body)
38364	if err != nil {
38365		return nil, err
38366	}
38367	req.Header = reqHeaders
38368	googleapi.Expand(req.URL, map[string]string{
38369		"merchantId": strconv.FormatInt(c.merchantId, 10),
38370		"ruleId":     c.ruleId,
38371	})
38372	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38373}
38374
38375// Do executes the "content.repricingrules.delete" call.
38376func (c *RepricingrulesDeleteCall) Do(opts ...googleapi.CallOption) error {
38377	gensupport.SetOptions(c.urlParams_, opts...)
38378	res, err := c.doRequest("json")
38379	if err != nil {
38380		return err
38381	}
38382	defer googleapi.CloseBody(res)
38383	if err := googleapi.CheckResponse(res); err != nil {
38384		return err
38385	}
38386	return nil
38387	// {
38388	//   "description": "Deletes a repricing rule in your Merchant Center account.",
38389	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
38390	//   "httpMethod": "DELETE",
38391	//   "id": "content.repricingrules.delete",
38392	//   "parameterOrder": [
38393	//     "merchantId",
38394	//     "ruleId"
38395	//   ],
38396	//   "parameters": {
38397	//     "merchantId": {
38398	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38399	//       "format": "int64",
38400	//       "location": "path",
38401	//       "required": true,
38402	//       "type": "string"
38403	//     },
38404	//     "ruleId": {
38405	//       "description": "Required. The id of the rule to Delete.",
38406	//       "location": "path",
38407	//       "required": true,
38408	//       "type": "string"
38409	//     }
38410	//   },
38411	//   "path": "{merchantId}/repricingrules/{ruleId}",
38412	//   "scopes": [
38413	//     "https://www.googleapis.com/auth/content"
38414	//   ]
38415	// }
38416
38417}
38418
38419// method id "content.repricingrules.get":
38420
38421type RepricingrulesGetCall struct {
38422	s            *APIService
38423	merchantId   int64
38424	ruleId       string
38425	urlParams_   gensupport.URLParams
38426	ifNoneMatch_ string
38427	ctx_         context.Context
38428	header_      http.Header
38429}
38430
38431// Get: Retrieves a repricing rule from your Merchant Center account.
38432//
38433// - merchantId: The id of the merchant who owns the repricing rule.
38434// - ruleId: The id of the rule to retrieve.
38435func (r *RepricingrulesService) Get(merchantId int64, ruleId string) *RepricingrulesGetCall {
38436	c := &RepricingrulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38437	c.merchantId = merchantId
38438	c.ruleId = ruleId
38439	return c
38440}
38441
38442// Fields allows partial responses to be retrieved. See
38443// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38444// for more information.
38445func (c *RepricingrulesGetCall) Fields(s ...googleapi.Field) *RepricingrulesGetCall {
38446	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38447	return c
38448}
38449
38450// IfNoneMatch sets the optional parameter which makes the operation
38451// fail if the object's ETag matches the given value. This is useful for
38452// getting updates only after the object has changed since the last
38453// request. Use googleapi.IsNotModified to check whether the response
38454// error from Do is the result of In-None-Match.
38455func (c *RepricingrulesGetCall) IfNoneMatch(entityTag string) *RepricingrulesGetCall {
38456	c.ifNoneMatch_ = entityTag
38457	return c
38458}
38459
38460// Context sets the context to be used in this call's Do method. Any
38461// pending HTTP request will be aborted if the provided context is
38462// canceled.
38463func (c *RepricingrulesGetCall) Context(ctx context.Context) *RepricingrulesGetCall {
38464	c.ctx_ = ctx
38465	return c
38466}
38467
38468// Header returns an http.Header that can be modified by the caller to
38469// add HTTP headers to the request.
38470func (c *RepricingrulesGetCall) Header() http.Header {
38471	if c.header_ == nil {
38472		c.header_ = make(http.Header)
38473	}
38474	return c.header_
38475}
38476
38477func (c *RepricingrulesGetCall) doRequest(alt string) (*http.Response, error) {
38478	reqHeaders := make(http.Header)
38479	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
38480	for k, v := range c.header_ {
38481		reqHeaders[k] = v
38482	}
38483	reqHeaders.Set("User-Agent", c.s.userAgent())
38484	if c.ifNoneMatch_ != "" {
38485		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38486	}
38487	var body io.Reader = nil
38488	c.urlParams_.Set("alt", alt)
38489	c.urlParams_.Set("prettyPrint", "false")
38490	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
38491	urls += "?" + c.urlParams_.Encode()
38492	req, err := http.NewRequest("GET", urls, body)
38493	if err != nil {
38494		return nil, err
38495	}
38496	req.Header = reqHeaders
38497	googleapi.Expand(req.URL, map[string]string{
38498		"merchantId": strconv.FormatInt(c.merchantId, 10),
38499		"ruleId":     c.ruleId,
38500	})
38501	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38502}
38503
38504// Do executes the "content.repricingrules.get" call.
38505// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
38506// status code is an error. Response headers are in either
38507// *RepricingRule.ServerResponse.Header or (if a response was returned
38508// at all) in error.(*googleapi.Error).Header. Use
38509// googleapi.IsNotModified to check whether the returned error was
38510// because http.StatusNotModified was returned.
38511func (c *RepricingrulesGetCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
38512	gensupport.SetOptions(c.urlParams_, opts...)
38513	res, err := c.doRequest("json")
38514	if res != nil && res.StatusCode == http.StatusNotModified {
38515		if res.Body != nil {
38516			res.Body.Close()
38517		}
38518		return nil, &googleapi.Error{
38519			Code:   res.StatusCode,
38520			Header: res.Header,
38521		}
38522	}
38523	if err != nil {
38524		return nil, err
38525	}
38526	defer googleapi.CloseBody(res)
38527	if err := googleapi.CheckResponse(res); err != nil {
38528		return nil, err
38529	}
38530	ret := &RepricingRule{
38531		ServerResponse: googleapi.ServerResponse{
38532			Header:         res.Header,
38533			HTTPStatusCode: res.StatusCode,
38534		},
38535	}
38536	target := &ret
38537	if err := gensupport.DecodeResponse(target, res); err != nil {
38538		return nil, err
38539	}
38540	return ret, nil
38541	// {
38542	//   "description": "Retrieves a repricing rule from your Merchant Center account.",
38543	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
38544	//   "httpMethod": "GET",
38545	//   "id": "content.repricingrules.get",
38546	//   "parameterOrder": [
38547	//     "merchantId",
38548	//     "ruleId"
38549	//   ],
38550	//   "parameters": {
38551	//     "merchantId": {
38552	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38553	//       "format": "int64",
38554	//       "location": "path",
38555	//       "required": true,
38556	//       "type": "string"
38557	//     },
38558	//     "ruleId": {
38559	//       "description": "Required. The id of the rule to retrieve.",
38560	//       "location": "path",
38561	//       "required": true,
38562	//       "type": "string"
38563	//     }
38564	//   },
38565	//   "path": "{merchantId}/repricingrules/{ruleId}",
38566	//   "response": {
38567	//     "$ref": "RepricingRule"
38568	//   },
38569	//   "scopes": [
38570	//     "https://www.googleapis.com/auth/content"
38571	//   ]
38572	// }
38573
38574}
38575
38576// method id "content.repricingrules.list":
38577
38578type RepricingrulesListCall struct {
38579	s            *APIService
38580	merchantId   int64
38581	urlParams_   gensupport.URLParams
38582	ifNoneMatch_ string
38583	ctx_         context.Context
38584	header_      http.Header
38585}
38586
38587// List: Lists the repricing rules in your Merchant Center account.
38588//
38589// - merchantId: The id of the merchant who owns the repricing rule.
38590func (r *RepricingrulesService) List(merchantId int64) *RepricingrulesListCall {
38591	c := &RepricingrulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38592	c.merchantId = merchantId
38593	return c
38594}
38595
38596// CountryCode sets the optional parameter "countryCode": CLDR country
38597// code
38598// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
38599// (e.g. "US"), used as a filter on repricing rules.
38600func (c *RepricingrulesListCall) CountryCode(countryCode string) *RepricingrulesListCall {
38601	c.urlParams_.Set("countryCode", countryCode)
38602	return c
38603}
38604
38605// LanguageCode sets the optional parameter "languageCode": The
38606// two-letter ISO 639-1 language code associated with the repricing
38607// rule, used as a filter.
38608func (c *RepricingrulesListCall) LanguageCode(languageCode string) *RepricingrulesListCall {
38609	c.urlParams_.Set("languageCode", languageCode)
38610	return c
38611}
38612
38613// PageSize sets the optional parameter "pageSize": The maximum number
38614// of repricing rules to return. The service may return fewer than this
38615// value. If unspecified, at most 50 rules will be returned. The maximum
38616// value is 1000; values above 1000 will be coerced to 1000.
38617func (c *RepricingrulesListCall) PageSize(pageSize int64) *RepricingrulesListCall {
38618	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
38619	return c
38620}
38621
38622// PageToken sets the optional parameter "pageToken": A page token,
38623// received from a previous `ListRepricingRules` call. Provide this to
38624// retrieve the subsequent page. When paginating, all other parameters
38625// provided to `ListRepricingRules` must match the call that provided
38626// the page token.
38627func (c *RepricingrulesListCall) PageToken(pageToken string) *RepricingrulesListCall {
38628	c.urlParams_.Set("pageToken", pageToken)
38629	return c
38630}
38631
38632// Fields allows partial responses to be retrieved. See
38633// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38634// for more information.
38635func (c *RepricingrulesListCall) Fields(s ...googleapi.Field) *RepricingrulesListCall {
38636	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38637	return c
38638}
38639
38640// IfNoneMatch sets the optional parameter which makes the operation
38641// fail if the object's ETag matches the given value. This is useful for
38642// getting updates only after the object has changed since the last
38643// request. Use googleapi.IsNotModified to check whether the response
38644// error from Do is the result of In-None-Match.
38645func (c *RepricingrulesListCall) IfNoneMatch(entityTag string) *RepricingrulesListCall {
38646	c.ifNoneMatch_ = entityTag
38647	return c
38648}
38649
38650// Context sets the context to be used in this call's Do method. Any
38651// pending HTTP request will be aborted if the provided context is
38652// canceled.
38653func (c *RepricingrulesListCall) Context(ctx context.Context) *RepricingrulesListCall {
38654	c.ctx_ = ctx
38655	return c
38656}
38657
38658// Header returns an http.Header that can be modified by the caller to
38659// add HTTP headers to the request.
38660func (c *RepricingrulesListCall) Header() http.Header {
38661	if c.header_ == nil {
38662		c.header_ = make(http.Header)
38663	}
38664	return c.header_
38665}
38666
38667func (c *RepricingrulesListCall) doRequest(alt string) (*http.Response, error) {
38668	reqHeaders := make(http.Header)
38669	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
38670	for k, v := range c.header_ {
38671		reqHeaders[k] = v
38672	}
38673	reqHeaders.Set("User-Agent", c.s.userAgent())
38674	if c.ifNoneMatch_ != "" {
38675		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38676	}
38677	var body io.Reader = nil
38678	c.urlParams_.Set("alt", alt)
38679	c.urlParams_.Set("prettyPrint", "false")
38680	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules")
38681	urls += "?" + c.urlParams_.Encode()
38682	req, err := http.NewRequest("GET", urls, body)
38683	if err != nil {
38684		return nil, err
38685	}
38686	req.Header = reqHeaders
38687	googleapi.Expand(req.URL, map[string]string{
38688		"merchantId": strconv.FormatInt(c.merchantId, 10),
38689	})
38690	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38691}
38692
38693// Do executes the "content.repricingrules.list" call.
38694// Exactly one of *ListRepricingRulesResponse or error will be non-nil.
38695// Any non-2xx status code is an error. Response headers are in either
38696// *ListRepricingRulesResponse.ServerResponse.Header or (if a response
38697// was returned at all) in error.(*googleapi.Error).Header. Use
38698// googleapi.IsNotModified to check whether the returned error was
38699// because http.StatusNotModified was returned.
38700func (c *RepricingrulesListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRulesResponse, error) {
38701	gensupport.SetOptions(c.urlParams_, opts...)
38702	res, err := c.doRequest("json")
38703	if res != nil && res.StatusCode == http.StatusNotModified {
38704		if res.Body != nil {
38705			res.Body.Close()
38706		}
38707		return nil, &googleapi.Error{
38708			Code:   res.StatusCode,
38709			Header: res.Header,
38710		}
38711	}
38712	if err != nil {
38713		return nil, err
38714	}
38715	defer googleapi.CloseBody(res)
38716	if err := googleapi.CheckResponse(res); err != nil {
38717		return nil, err
38718	}
38719	ret := &ListRepricingRulesResponse{
38720		ServerResponse: googleapi.ServerResponse{
38721			Header:         res.Header,
38722			HTTPStatusCode: res.StatusCode,
38723		},
38724	}
38725	target := &ret
38726	if err := gensupport.DecodeResponse(target, res); err != nil {
38727		return nil, err
38728	}
38729	return ret, nil
38730	// {
38731	//   "description": "Lists the repricing rules in your Merchant Center account.",
38732	//   "flatPath": "{merchantId}/repricingrules",
38733	//   "httpMethod": "GET",
38734	//   "id": "content.repricingrules.list",
38735	//   "parameterOrder": [
38736	//     "merchantId"
38737	//   ],
38738	//   "parameters": {
38739	//     "countryCode": {
38740	//       "description": "[CLDR country code](http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml) (e.g. \"US\"), used as a filter on repricing rules.",
38741	//       "location": "query",
38742	//       "type": "string"
38743	//     },
38744	//     "languageCode": {
38745	//       "description": "The two-letter ISO 639-1 language code associated with the repricing rule, used as a filter.",
38746	//       "location": "query",
38747	//       "type": "string"
38748	//     },
38749	//     "merchantId": {
38750	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38751	//       "format": "int64",
38752	//       "location": "path",
38753	//       "required": true,
38754	//       "type": "string"
38755	//     },
38756	//     "pageSize": {
38757	//       "description": "The maximum number of repricing rules to return. The service may return fewer than this value. If unspecified, at most 50 rules will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
38758	//       "format": "int32",
38759	//       "location": "query",
38760	//       "type": "integer"
38761	//     },
38762	//     "pageToken": {
38763	//       "description": "A page token, received from a previous `ListRepricingRules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListRepricingRules` must match the call that provided the page token.",
38764	//       "location": "query",
38765	//       "type": "string"
38766	//     }
38767	//   },
38768	//   "path": "{merchantId}/repricingrules",
38769	//   "response": {
38770	//     "$ref": "ListRepricingRulesResponse"
38771	//   },
38772	//   "scopes": [
38773	//     "https://www.googleapis.com/auth/content"
38774	//   ]
38775	// }
38776
38777}
38778
38779// Pages invokes f for each page of results.
38780// A non-nil error returned from f will halt the iteration.
38781// The provided context supersedes any context provided to the Context method.
38782func (c *RepricingrulesListCall) Pages(ctx context.Context, f func(*ListRepricingRulesResponse) error) error {
38783	c.ctx_ = ctx
38784	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
38785	for {
38786		x, err := c.Do()
38787		if err != nil {
38788			return err
38789		}
38790		if err := f(x); err != nil {
38791			return err
38792		}
38793		if x.NextPageToken == "" {
38794			return nil
38795		}
38796		c.PageToken(x.NextPageToken)
38797	}
38798}
38799
38800// method id "content.repricingrules.patch":
38801
38802type RepricingrulesPatchCall struct {
38803	s             *APIService
38804	merchantId    int64
38805	ruleId        string
38806	repricingrule *RepricingRule
38807	urlParams_    gensupport.URLParams
38808	ctx_          context.Context
38809	header_       http.Header
38810}
38811
38812// Patch: Updates a repricing rule in your Merchant Center account. All
38813// mutable fields will be overwritten in each update request. In each
38814// update, you must provide all required mutable fields, or an error
38815// will be thrown. If you do not provide an optional field in the update
38816// request, if that field currently exists, it will be deleted from the
38817// rule.
38818//
38819// - merchantId: The id of the merchant who owns the repricing rule.
38820// - ruleId: The id of the rule to update.
38821func (r *RepricingrulesService) Patch(merchantId int64, ruleId string, repricingrule *RepricingRule) *RepricingrulesPatchCall {
38822	c := &RepricingrulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38823	c.merchantId = merchantId
38824	c.ruleId = ruleId
38825	c.repricingrule = repricingrule
38826	return c
38827}
38828
38829// Fields allows partial responses to be retrieved. See
38830// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38831// for more information.
38832func (c *RepricingrulesPatchCall) Fields(s ...googleapi.Field) *RepricingrulesPatchCall {
38833	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38834	return c
38835}
38836
38837// Context sets the context to be used in this call's Do method. Any
38838// pending HTTP request will be aborted if the provided context is
38839// canceled.
38840func (c *RepricingrulesPatchCall) Context(ctx context.Context) *RepricingrulesPatchCall {
38841	c.ctx_ = ctx
38842	return c
38843}
38844
38845// Header returns an http.Header that can be modified by the caller to
38846// add HTTP headers to the request.
38847func (c *RepricingrulesPatchCall) Header() http.Header {
38848	if c.header_ == nil {
38849		c.header_ = make(http.Header)
38850	}
38851	return c.header_
38852}
38853
38854func (c *RepricingrulesPatchCall) doRequest(alt string) (*http.Response, error) {
38855	reqHeaders := make(http.Header)
38856	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
38857	for k, v := range c.header_ {
38858		reqHeaders[k] = v
38859	}
38860	reqHeaders.Set("User-Agent", c.s.userAgent())
38861	var body io.Reader = nil
38862	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
38863	if err != nil {
38864		return nil, err
38865	}
38866	reqHeaders.Set("Content-Type", "application/json")
38867	c.urlParams_.Set("alt", alt)
38868	c.urlParams_.Set("prettyPrint", "false")
38869	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
38870	urls += "?" + c.urlParams_.Encode()
38871	req, err := http.NewRequest("PATCH", urls, body)
38872	if err != nil {
38873		return nil, err
38874	}
38875	req.Header = reqHeaders
38876	googleapi.Expand(req.URL, map[string]string{
38877		"merchantId": strconv.FormatInt(c.merchantId, 10),
38878		"ruleId":     c.ruleId,
38879	})
38880	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38881}
38882
38883// Do executes the "content.repricingrules.patch" call.
38884// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
38885// status code is an error. Response headers are in either
38886// *RepricingRule.ServerResponse.Header or (if a response was returned
38887// at all) in error.(*googleapi.Error).Header. Use
38888// googleapi.IsNotModified to check whether the returned error was
38889// because http.StatusNotModified was returned.
38890func (c *RepricingrulesPatchCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
38891	gensupport.SetOptions(c.urlParams_, opts...)
38892	res, err := c.doRequest("json")
38893	if res != nil && res.StatusCode == http.StatusNotModified {
38894		if res.Body != nil {
38895			res.Body.Close()
38896		}
38897		return nil, &googleapi.Error{
38898			Code:   res.StatusCode,
38899			Header: res.Header,
38900		}
38901	}
38902	if err != nil {
38903		return nil, err
38904	}
38905	defer googleapi.CloseBody(res)
38906	if err := googleapi.CheckResponse(res); err != nil {
38907		return nil, err
38908	}
38909	ret := &RepricingRule{
38910		ServerResponse: googleapi.ServerResponse{
38911			Header:         res.Header,
38912			HTTPStatusCode: res.StatusCode,
38913		},
38914	}
38915	target := &ret
38916	if err := gensupport.DecodeResponse(target, res); err != nil {
38917		return nil, err
38918	}
38919	return ret, nil
38920	// {
38921	//   "description": "Updates a repricing rule in your Merchant Center account. All mutable fields will be overwritten in each update request. In each update, you must provide all required mutable fields, or an error will be thrown. If you do not provide an optional field in the update request, if that field currently exists, it will be deleted from the rule.",
38922	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
38923	//   "httpMethod": "PATCH",
38924	//   "id": "content.repricingrules.patch",
38925	//   "parameterOrder": [
38926	//     "merchantId",
38927	//     "ruleId"
38928	//   ],
38929	//   "parameters": {
38930	//     "merchantId": {
38931	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38932	//       "format": "int64",
38933	//       "location": "path",
38934	//       "required": true,
38935	//       "type": "string"
38936	//     },
38937	//     "ruleId": {
38938	//       "description": "Required. The id of the rule to update.",
38939	//       "location": "path",
38940	//       "required": true,
38941	//       "type": "string"
38942	//     }
38943	//   },
38944	//   "path": "{merchantId}/repricingrules/{ruleId}",
38945	//   "request": {
38946	//     "$ref": "RepricingRule"
38947	//   },
38948	//   "response": {
38949	//     "$ref": "RepricingRule"
38950	//   },
38951	//   "scopes": [
38952	//     "https://www.googleapis.com/auth/content"
38953	//   ]
38954	// }
38955
38956}
38957
38958// method id "content.repricingrules.repricingreports.list":
38959
38960type RepricingrulesRepricingreportsListCall struct {
38961	s            *APIService
38962	merchantId   int64
38963	ruleId       string
38964	urlParams_   gensupport.URLParams
38965	ifNoneMatch_ string
38966	ctx_         context.Context
38967	header_      http.Header
38968}
38969
38970// List: Lists the metrics report for a given Repricing rule.
38971//
38972// - merchantId: Id of the merchant who owns the Repricing rule.
38973// - ruleId: Id of the Repricing rule.
38974func (r *RepricingrulesRepricingreportsService) List(merchantId int64, ruleId string) *RepricingrulesRepricingreportsListCall {
38975	c := &RepricingrulesRepricingreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38976	c.merchantId = merchantId
38977	c.ruleId = ruleId
38978	return c
38979}
38980
38981// EndDate sets the optional parameter "endDate": Gets Repricing reports
38982// on and before this date in the merchant's timezone. You can only
38983// retrieve data up to 7 days ago (default) or earlier. Format:
38984// YYYY-MM-DD.
38985func (c *RepricingrulesRepricingreportsListCall) EndDate(endDate string) *RepricingrulesRepricingreportsListCall {
38986	c.urlParams_.Set("endDate", endDate)
38987	return c
38988}
38989
38990// PageSize sets the optional parameter "pageSize": Maximum number of
38991// daily reports to return. Each report includes data from a single
38992// 24-hour period. The page size defaults to 50 and values above 1000
38993// are coerced to 1000. This service may return fewer days than this
38994// value, for example, if the time between your start and end date is
38995// less than page size.
38996func (c *RepricingrulesRepricingreportsListCall) PageSize(pageSize int64) *RepricingrulesRepricingreportsListCall {
38997	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
38998	return c
38999}
39000
39001// PageToken sets the optional parameter "pageToken": Token (if
39002// provided) to retrieve the subsequent page. All other parameters must
39003// match the original call that provided the page token.
39004func (c *RepricingrulesRepricingreportsListCall) PageToken(pageToken string) *RepricingrulesRepricingreportsListCall {
39005	c.urlParams_.Set("pageToken", pageToken)
39006	return c
39007}
39008
39009// StartDate sets the optional parameter "startDate": Gets Repricing
39010// reports on and after this date in the merchant's timezone, up to one
39011// year ago. Do not use a start date later than 7 days ago (default).
39012// Format: YYYY-MM-DD.
39013func (c *RepricingrulesRepricingreportsListCall) StartDate(startDate string) *RepricingrulesRepricingreportsListCall {
39014	c.urlParams_.Set("startDate", startDate)
39015	return c
39016}
39017
39018// Fields allows partial responses to be retrieved. See
39019// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39020// for more information.
39021func (c *RepricingrulesRepricingreportsListCall) Fields(s ...googleapi.Field) *RepricingrulesRepricingreportsListCall {
39022	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39023	return c
39024}
39025
39026// IfNoneMatch sets the optional parameter which makes the operation
39027// fail if the object's ETag matches the given value. This is useful for
39028// getting updates only after the object has changed since the last
39029// request. Use googleapi.IsNotModified to check whether the response
39030// error from Do is the result of In-None-Match.
39031func (c *RepricingrulesRepricingreportsListCall) IfNoneMatch(entityTag string) *RepricingrulesRepricingreportsListCall {
39032	c.ifNoneMatch_ = entityTag
39033	return c
39034}
39035
39036// Context sets the context to be used in this call's Do method. Any
39037// pending HTTP request will be aborted if the provided context is
39038// canceled.
39039func (c *RepricingrulesRepricingreportsListCall) Context(ctx context.Context) *RepricingrulesRepricingreportsListCall {
39040	c.ctx_ = ctx
39041	return c
39042}
39043
39044// Header returns an http.Header that can be modified by the caller to
39045// add HTTP headers to the request.
39046func (c *RepricingrulesRepricingreportsListCall) Header() http.Header {
39047	if c.header_ == nil {
39048		c.header_ = make(http.Header)
39049	}
39050	return c.header_
39051}
39052
39053func (c *RepricingrulesRepricingreportsListCall) doRequest(alt string) (*http.Response, error) {
39054	reqHeaders := make(http.Header)
39055	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
39056	for k, v := range c.header_ {
39057		reqHeaders[k] = v
39058	}
39059	reqHeaders.Set("User-Agent", c.s.userAgent())
39060	if c.ifNoneMatch_ != "" {
39061		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39062	}
39063	var body io.Reader = nil
39064	c.urlParams_.Set("alt", alt)
39065	c.urlParams_.Set("prettyPrint", "false")
39066	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}/repricingreports")
39067	urls += "?" + c.urlParams_.Encode()
39068	req, err := http.NewRequest("GET", urls, body)
39069	if err != nil {
39070		return nil, err
39071	}
39072	req.Header = reqHeaders
39073	googleapi.Expand(req.URL, map[string]string{
39074		"merchantId": strconv.FormatInt(c.merchantId, 10),
39075		"ruleId":     c.ruleId,
39076	})
39077	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39078}
39079
39080// Do executes the "content.repricingrules.repricingreports.list" call.
39081// Exactly one of *ListRepricingRuleReportsResponse or error will be
39082// non-nil. Any non-2xx status code is an error. Response headers are in
39083// either *ListRepricingRuleReportsResponse.ServerResponse.Header or (if
39084// a response was returned at all) in error.(*googleapi.Error).Header.
39085// Use googleapi.IsNotModified to check whether the returned error was
39086// because http.StatusNotModified was returned.
39087func (c *RepricingrulesRepricingreportsListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRuleReportsResponse, error) {
39088	gensupport.SetOptions(c.urlParams_, opts...)
39089	res, err := c.doRequest("json")
39090	if res != nil && res.StatusCode == http.StatusNotModified {
39091		if res.Body != nil {
39092			res.Body.Close()
39093		}
39094		return nil, &googleapi.Error{
39095			Code:   res.StatusCode,
39096			Header: res.Header,
39097		}
39098	}
39099	if err != nil {
39100		return nil, err
39101	}
39102	defer googleapi.CloseBody(res)
39103	if err := googleapi.CheckResponse(res); err != nil {
39104		return nil, err
39105	}
39106	ret := &ListRepricingRuleReportsResponse{
39107		ServerResponse: googleapi.ServerResponse{
39108			Header:         res.Header,
39109			HTTPStatusCode: res.StatusCode,
39110		},
39111	}
39112	target := &ret
39113	if err := gensupport.DecodeResponse(target, res); err != nil {
39114		return nil, err
39115	}
39116	return ret, nil
39117	// {
39118	//   "description": "Lists the metrics report for a given Repricing rule.",
39119	//   "flatPath": "{merchantId}/repricingrules/{ruleId}/repricingreports",
39120	//   "httpMethod": "GET",
39121	//   "id": "content.repricingrules.repricingreports.list",
39122	//   "parameterOrder": [
39123	//     "merchantId",
39124	//     "ruleId"
39125	//   ],
39126	//   "parameters": {
39127	//     "endDate": {
39128	//       "description": "Gets Repricing reports on and before this date in the merchant's timezone. You can only retrieve data up to 7 days ago (default) or earlier. Format: YYYY-MM-DD.",
39129	//       "location": "query",
39130	//       "type": "string"
39131	//     },
39132	//     "merchantId": {
39133	//       "description": "Required. Id of the merchant who owns the Repricing rule.",
39134	//       "format": "int64",
39135	//       "location": "path",
39136	//       "required": true,
39137	//       "type": "string"
39138	//     },
39139	//     "pageSize": {
39140	//       "description": "Maximum number of daily reports to return. Each report includes data from a single 24-hour period. The page size defaults to 50 and values above 1000 are coerced to 1000. This service may return fewer days than this value, for example, if the time between your start and end date is less than page size.",
39141	//       "format": "int32",
39142	//       "location": "query",
39143	//       "type": "integer"
39144	//     },
39145	//     "pageToken": {
39146	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
39147	//       "location": "query",
39148	//       "type": "string"
39149	//     },
39150	//     "ruleId": {
39151	//       "description": "Required. Id of the Repricing rule.",
39152	//       "location": "path",
39153	//       "required": true,
39154	//       "type": "string"
39155	//     },
39156	//     "startDate": {
39157	//       "description": "Gets Repricing reports on and after this date in the merchant's timezone, up to one year ago. Do not use a start date later than 7 days ago (default). Format: YYYY-MM-DD.",
39158	//       "location": "query",
39159	//       "type": "string"
39160	//     }
39161	//   },
39162	//   "path": "{merchantId}/repricingrules/{ruleId}/repricingreports",
39163	//   "response": {
39164	//     "$ref": "ListRepricingRuleReportsResponse"
39165	//   },
39166	//   "scopes": [
39167	//     "https://www.googleapis.com/auth/content"
39168	//   ]
39169	// }
39170
39171}
39172
39173// Pages invokes f for each page of results.
39174// A non-nil error returned from f will halt the iteration.
39175// The provided context supersedes any context provided to the Context method.
39176func (c *RepricingrulesRepricingreportsListCall) Pages(ctx context.Context, f func(*ListRepricingRuleReportsResponse) error) error {
39177	c.ctx_ = ctx
39178	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
39179	for {
39180		x, err := c.Do()
39181		if err != nil {
39182			return err
39183		}
39184		if err := f(x); err != nil {
39185			return err
39186		}
39187		if x.NextPageToken == "" {
39188			return nil
39189		}
39190		c.PageToken(x.NextPageToken)
39191	}
39192}
39193
39194// method id "content.returnaddress.custombatch":
39195
39196type ReturnaddressCustombatchCall struct {
39197	s                               *APIService
39198	returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest
39199	urlParams_                      gensupport.URLParams
39200	ctx_                            context.Context
39201	header_                         http.Header
39202}
39203
39204// Custombatch: Batches multiple return address related calls in a
39205// single request.
39206func (r *ReturnaddressService) Custombatch(returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest) *ReturnaddressCustombatchCall {
39207	c := &ReturnaddressCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39208	c.returnaddresscustombatchrequest = returnaddresscustombatchrequest
39209	return c
39210}
39211
39212// Fields allows partial responses to be retrieved. See
39213// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39214// for more information.
39215func (c *ReturnaddressCustombatchCall) Fields(s ...googleapi.Field) *ReturnaddressCustombatchCall {
39216	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39217	return c
39218}
39219
39220// Context sets the context to be used in this call's Do method. Any
39221// pending HTTP request will be aborted if the provided context is
39222// canceled.
39223func (c *ReturnaddressCustombatchCall) Context(ctx context.Context) *ReturnaddressCustombatchCall {
39224	c.ctx_ = ctx
39225	return c
39226}
39227
39228// Header returns an http.Header that can be modified by the caller to
39229// add HTTP headers to the request.
39230func (c *ReturnaddressCustombatchCall) Header() http.Header {
39231	if c.header_ == nil {
39232		c.header_ = make(http.Header)
39233	}
39234	return c.header_
39235}
39236
39237func (c *ReturnaddressCustombatchCall) doRequest(alt string) (*http.Response, error) {
39238	reqHeaders := make(http.Header)
39239	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
39240	for k, v := range c.header_ {
39241		reqHeaders[k] = v
39242	}
39243	reqHeaders.Set("User-Agent", c.s.userAgent())
39244	var body io.Reader = nil
39245	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddresscustombatchrequest)
39246	if err != nil {
39247		return nil, err
39248	}
39249	reqHeaders.Set("Content-Type", "application/json")
39250	c.urlParams_.Set("alt", alt)
39251	c.urlParams_.Set("prettyPrint", "false")
39252	urls := googleapi.ResolveRelative(c.s.BasePath, "returnaddress/batch")
39253	urls += "?" + c.urlParams_.Encode()
39254	req, err := http.NewRequest("POST", urls, body)
39255	if err != nil {
39256		return nil, err
39257	}
39258	req.Header = reqHeaders
39259	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39260}
39261
39262// Do executes the "content.returnaddress.custombatch" call.
39263// Exactly one of *ReturnaddressCustomBatchResponse or error will be
39264// non-nil. Any non-2xx status code is an error. Response headers are in
39265// either *ReturnaddressCustomBatchResponse.ServerResponse.Header or (if
39266// a response was returned at all) in error.(*googleapi.Error).Header.
39267// Use googleapi.IsNotModified to check whether the returned error was
39268// because http.StatusNotModified was returned.
39269func (c *ReturnaddressCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnaddressCustomBatchResponse, error) {
39270	gensupport.SetOptions(c.urlParams_, opts...)
39271	res, err := c.doRequest("json")
39272	if res != nil && res.StatusCode == http.StatusNotModified {
39273		if res.Body != nil {
39274			res.Body.Close()
39275		}
39276		return nil, &googleapi.Error{
39277			Code:   res.StatusCode,
39278			Header: res.Header,
39279		}
39280	}
39281	if err != nil {
39282		return nil, err
39283	}
39284	defer googleapi.CloseBody(res)
39285	if err := googleapi.CheckResponse(res); err != nil {
39286		return nil, err
39287	}
39288	ret := &ReturnaddressCustomBatchResponse{
39289		ServerResponse: googleapi.ServerResponse{
39290			Header:         res.Header,
39291			HTTPStatusCode: res.StatusCode,
39292		},
39293	}
39294	target := &ret
39295	if err := gensupport.DecodeResponse(target, res); err != nil {
39296		return nil, err
39297	}
39298	return ret, nil
39299	// {
39300	//   "description": "Batches multiple return address related calls in a single request.",
39301	//   "flatPath": "returnaddress/batch",
39302	//   "httpMethod": "POST",
39303	//   "id": "content.returnaddress.custombatch",
39304	//   "parameterOrder": [],
39305	//   "parameters": {},
39306	//   "path": "returnaddress/batch",
39307	//   "request": {
39308	//     "$ref": "ReturnaddressCustomBatchRequest"
39309	//   },
39310	//   "response": {
39311	//     "$ref": "ReturnaddressCustomBatchResponse"
39312	//   },
39313	//   "scopes": [
39314	//     "https://www.googleapis.com/auth/content"
39315	//   ]
39316	// }
39317
39318}
39319
39320// method id "content.returnaddress.delete":
39321
39322type ReturnaddressDeleteCall struct {
39323	s               *APIService
39324	merchantId      uint64
39325	returnAddressId string
39326	urlParams_      gensupport.URLParams
39327	ctx_            context.Context
39328	header_         http.Header
39329}
39330
39331// Delete: Deletes a return address for the given Merchant Center
39332// account.
39333//
39334// - merchantId: The Merchant Center account from which to delete the
39335//   given return address.
39336// - returnAddressId: Return address ID generated by Google.
39337func (r *ReturnaddressService) Delete(merchantId uint64, returnAddressId string) *ReturnaddressDeleteCall {
39338	c := &ReturnaddressDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39339	c.merchantId = merchantId
39340	c.returnAddressId = returnAddressId
39341	return c
39342}
39343
39344// Fields allows partial responses to be retrieved. See
39345// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39346// for more information.
39347func (c *ReturnaddressDeleteCall) Fields(s ...googleapi.Field) *ReturnaddressDeleteCall {
39348	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39349	return c
39350}
39351
39352// Context sets the context to be used in this call's Do method. Any
39353// pending HTTP request will be aborted if the provided context is
39354// canceled.
39355func (c *ReturnaddressDeleteCall) Context(ctx context.Context) *ReturnaddressDeleteCall {
39356	c.ctx_ = ctx
39357	return c
39358}
39359
39360// Header returns an http.Header that can be modified by the caller to
39361// add HTTP headers to the request.
39362func (c *ReturnaddressDeleteCall) Header() http.Header {
39363	if c.header_ == nil {
39364		c.header_ = make(http.Header)
39365	}
39366	return c.header_
39367}
39368
39369func (c *ReturnaddressDeleteCall) doRequest(alt string) (*http.Response, error) {
39370	reqHeaders := make(http.Header)
39371	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
39372	for k, v := range c.header_ {
39373		reqHeaders[k] = v
39374	}
39375	reqHeaders.Set("User-Agent", c.s.userAgent())
39376	var body io.Reader = nil
39377	c.urlParams_.Set("alt", alt)
39378	c.urlParams_.Set("prettyPrint", "false")
39379	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
39380	urls += "?" + c.urlParams_.Encode()
39381	req, err := http.NewRequest("DELETE", urls, body)
39382	if err != nil {
39383		return nil, err
39384	}
39385	req.Header = reqHeaders
39386	googleapi.Expand(req.URL, map[string]string{
39387		"merchantId":      strconv.FormatUint(c.merchantId, 10),
39388		"returnAddressId": c.returnAddressId,
39389	})
39390	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39391}
39392
39393// Do executes the "content.returnaddress.delete" call.
39394func (c *ReturnaddressDeleteCall) Do(opts ...googleapi.CallOption) error {
39395	gensupport.SetOptions(c.urlParams_, opts...)
39396	res, err := c.doRequest("json")
39397	if err != nil {
39398		return err
39399	}
39400	defer googleapi.CloseBody(res)
39401	if err := googleapi.CheckResponse(res); err != nil {
39402		return err
39403	}
39404	return nil
39405	// {
39406	//   "description": "Deletes a return address for the given Merchant Center account.",
39407	//   "flatPath": "{merchantId}/returnaddress/{returnAddressId}",
39408	//   "httpMethod": "DELETE",
39409	//   "id": "content.returnaddress.delete",
39410	//   "parameterOrder": [
39411	//     "merchantId",
39412	//     "returnAddressId"
39413	//   ],
39414	//   "parameters": {
39415	//     "merchantId": {
39416	//       "description": "The Merchant Center account from which to delete the given return address.",
39417	//       "format": "uint64",
39418	//       "location": "path",
39419	//       "required": true,
39420	//       "type": "string"
39421	//     },
39422	//     "returnAddressId": {
39423	//       "description": "Return address ID generated by Google.",
39424	//       "location": "path",
39425	//       "required": true,
39426	//       "type": "string"
39427	//     }
39428	//   },
39429	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
39430	//   "scopes": [
39431	//     "https://www.googleapis.com/auth/content"
39432	//   ]
39433	// }
39434
39435}
39436
39437// method id "content.returnaddress.get":
39438
39439type ReturnaddressGetCall struct {
39440	s               *APIService
39441	merchantId      uint64
39442	returnAddressId string
39443	urlParams_      gensupport.URLParams
39444	ifNoneMatch_    string
39445	ctx_            context.Context
39446	header_         http.Header
39447}
39448
39449// Get: Gets a return address of the Merchant Center account.
39450//
39451// - merchantId: The Merchant Center account to get a return address
39452//   for.
39453// - returnAddressId: Return address ID generated by Google.
39454func (r *ReturnaddressService) Get(merchantId uint64, returnAddressId string) *ReturnaddressGetCall {
39455	c := &ReturnaddressGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39456	c.merchantId = merchantId
39457	c.returnAddressId = returnAddressId
39458	return c
39459}
39460
39461// Fields allows partial responses to be retrieved. See
39462// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39463// for more information.
39464func (c *ReturnaddressGetCall) Fields(s ...googleapi.Field) *ReturnaddressGetCall {
39465	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39466	return c
39467}
39468
39469// IfNoneMatch sets the optional parameter which makes the operation
39470// fail if the object's ETag matches the given value. This is useful for
39471// getting updates only after the object has changed since the last
39472// request. Use googleapi.IsNotModified to check whether the response
39473// error from Do is the result of In-None-Match.
39474func (c *ReturnaddressGetCall) IfNoneMatch(entityTag string) *ReturnaddressGetCall {
39475	c.ifNoneMatch_ = entityTag
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 *ReturnaddressGetCall) Context(ctx context.Context) *ReturnaddressGetCall {
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 *ReturnaddressGetCall) Header() http.Header {
39490	if c.header_ == nil {
39491		c.header_ = make(http.Header)
39492	}
39493	return c.header_
39494}
39495
39496func (c *ReturnaddressGetCall) doRequest(alt string) (*http.Response, error) {
39497	reqHeaders := make(http.Header)
39498	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
39499	for k, v := range c.header_ {
39500		reqHeaders[k] = v
39501	}
39502	reqHeaders.Set("User-Agent", c.s.userAgent())
39503	if c.ifNoneMatch_ != "" {
39504		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39505	}
39506	var body io.Reader = nil
39507	c.urlParams_.Set("alt", alt)
39508	c.urlParams_.Set("prettyPrint", "false")
39509	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
39510	urls += "?" + c.urlParams_.Encode()
39511	req, err := http.NewRequest("GET", urls, body)
39512	if err != nil {
39513		return nil, err
39514	}
39515	req.Header = reqHeaders
39516	googleapi.Expand(req.URL, map[string]string{
39517		"merchantId":      strconv.FormatUint(c.merchantId, 10),
39518		"returnAddressId": c.returnAddressId,
39519	})
39520	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39521}
39522
39523// Do executes the "content.returnaddress.get" call.
39524// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
39525// status code is an error. Response headers are in either
39526// *ReturnAddress.ServerResponse.Header or (if a response was returned
39527// at all) in error.(*googleapi.Error).Header. Use
39528// googleapi.IsNotModified to check whether the returned error was
39529// because http.StatusNotModified was returned.
39530func (c *ReturnaddressGetCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
39531	gensupport.SetOptions(c.urlParams_, opts...)
39532	res, err := c.doRequest("json")
39533	if res != nil && res.StatusCode == http.StatusNotModified {
39534		if res.Body != nil {
39535			res.Body.Close()
39536		}
39537		return nil, &googleapi.Error{
39538			Code:   res.StatusCode,
39539			Header: res.Header,
39540		}
39541	}
39542	if err != nil {
39543		return nil, err
39544	}
39545	defer googleapi.CloseBody(res)
39546	if err := googleapi.CheckResponse(res); err != nil {
39547		return nil, err
39548	}
39549	ret := &ReturnAddress{
39550		ServerResponse: googleapi.ServerResponse{
39551			Header:         res.Header,
39552			HTTPStatusCode: res.StatusCode,
39553		},
39554	}
39555	target := &ret
39556	if err := gensupport.DecodeResponse(target, res); err != nil {
39557		return nil, err
39558	}
39559	return ret, nil
39560	// {
39561	//   "description": "Gets a return address of the Merchant Center account.",
39562	//   "flatPath": "{merchantId}/returnaddress/{returnAddressId}",
39563	//   "httpMethod": "GET",
39564	//   "id": "content.returnaddress.get",
39565	//   "parameterOrder": [
39566	//     "merchantId",
39567	//     "returnAddressId"
39568	//   ],
39569	//   "parameters": {
39570	//     "merchantId": {
39571	//       "description": "The Merchant Center account to get a return address for.",
39572	//       "format": "uint64",
39573	//       "location": "path",
39574	//       "required": true,
39575	//       "type": "string"
39576	//     },
39577	//     "returnAddressId": {
39578	//       "description": "Return address ID generated by Google.",
39579	//       "location": "path",
39580	//       "required": true,
39581	//       "type": "string"
39582	//     }
39583	//   },
39584	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
39585	//   "response": {
39586	//     "$ref": "ReturnAddress"
39587	//   },
39588	//   "scopes": [
39589	//     "https://www.googleapis.com/auth/content"
39590	//   ]
39591	// }
39592
39593}
39594
39595// method id "content.returnaddress.insert":
39596
39597type ReturnaddressInsertCall struct {
39598	s             *APIService
39599	merchantId    uint64
39600	returnaddress *ReturnAddress
39601	urlParams_    gensupport.URLParams
39602	ctx_          context.Context
39603	header_       http.Header
39604}
39605
39606// Insert: Inserts a return address for the Merchant Center account.
39607//
39608// - merchantId: The Merchant Center account to insert a return address
39609//   for.
39610func (r *ReturnaddressService) Insert(merchantId uint64, returnaddress *ReturnAddress) *ReturnaddressInsertCall {
39611	c := &ReturnaddressInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39612	c.merchantId = merchantId
39613	c.returnaddress = returnaddress
39614	return c
39615}
39616
39617// Fields allows partial responses to be retrieved. See
39618// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39619// for more information.
39620func (c *ReturnaddressInsertCall) Fields(s ...googleapi.Field) *ReturnaddressInsertCall {
39621	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39622	return c
39623}
39624
39625// Context sets the context to be used in this call's Do method. Any
39626// pending HTTP request will be aborted if the provided context is
39627// canceled.
39628func (c *ReturnaddressInsertCall) Context(ctx context.Context) *ReturnaddressInsertCall {
39629	c.ctx_ = ctx
39630	return c
39631}
39632
39633// Header returns an http.Header that can be modified by the caller to
39634// add HTTP headers to the request.
39635func (c *ReturnaddressInsertCall) Header() http.Header {
39636	if c.header_ == nil {
39637		c.header_ = make(http.Header)
39638	}
39639	return c.header_
39640}
39641
39642func (c *ReturnaddressInsertCall) doRequest(alt string) (*http.Response, error) {
39643	reqHeaders := make(http.Header)
39644	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
39645	for k, v := range c.header_ {
39646		reqHeaders[k] = v
39647	}
39648	reqHeaders.Set("User-Agent", c.s.userAgent())
39649	var body io.Reader = nil
39650	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddress)
39651	if err != nil {
39652		return nil, err
39653	}
39654	reqHeaders.Set("Content-Type", "application/json")
39655	c.urlParams_.Set("alt", alt)
39656	c.urlParams_.Set("prettyPrint", "false")
39657	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
39658	urls += "?" + c.urlParams_.Encode()
39659	req, err := http.NewRequest("POST", urls, body)
39660	if err != nil {
39661		return nil, err
39662	}
39663	req.Header = reqHeaders
39664	googleapi.Expand(req.URL, map[string]string{
39665		"merchantId": strconv.FormatUint(c.merchantId, 10),
39666	})
39667	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39668}
39669
39670// Do executes the "content.returnaddress.insert" call.
39671// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
39672// status code is an error. Response headers are in either
39673// *ReturnAddress.ServerResponse.Header or (if a response was returned
39674// at all) in error.(*googleapi.Error).Header. Use
39675// googleapi.IsNotModified to check whether the returned error was
39676// because http.StatusNotModified was returned.
39677func (c *ReturnaddressInsertCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
39678	gensupport.SetOptions(c.urlParams_, opts...)
39679	res, err := c.doRequest("json")
39680	if res != nil && res.StatusCode == http.StatusNotModified {
39681		if res.Body != nil {
39682			res.Body.Close()
39683		}
39684		return nil, &googleapi.Error{
39685			Code:   res.StatusCode,
39686			Header: res.Header,
39687		}
39688	}
39689	if err != nil {
39690		return nil, err
39691	}
39692	defer googleapi.CloseBody(res)
39693	if err := googleapi.CheckResponse(res); err != nil {
39694		return nil, err
39695	}
39696	ret := &ReturnAddress{
39697		ServerResponse: googleapi.ServerResponse{
39698			Header:         res.Header,
39699			HTTPStatusCode: res.StatusCode,
39700		},
39701	}
39702	target := &ret
39703	if err := gensupport.DecodeResponse(target, res); err != nil {
39704		return nil, err
39705	}
39706	return ret, nil
39707	// {
39708	//   "description": "Inserts a return address for the Merchant Center account.",
39709	//   "flatPath": "{merchantId}/returnaddress",
39710	//   "httpMethod": "POST",
39711	//   "id": "content.returnaddress.insert",
39712	//   "parameterOrder": [
39713	//     "merchantId"
39714	//   ],
39715	//   "parameters": {
39716	//     "merchantId": {
39717	//       "description": "The Merchant Center account to insert a return address for.",
39718	//       "format": "uint64",
39719	//       "location": "path",
39720	//       "required": true,
39721	//       "type": "string"
39722	//     }
39723	//   },
39724	//   "path": "{merchantId}/returnaddress",
39725	//   "request": {
39726	//     "$ref": "ReturnAddress"
39727	//   },
39728	//   "response": {
39729	//     "$ref": "ReturnAddress"
39730	//   },
39731	//   "scopes": [
39732	//     "https://www.googleapis.com/auth/content"
39733	//   ]
39734	// }
39735
39736}
39737
39738// method id "content.returnaddress.list":
39739
39740type ReturnaddressListCall struct {
39741	s            *APIService
39742	merchantId   uint64
39743	urlParams_   gensupport.URLParams
39744	ifNoneMatch_ string
39745	ctx_         context.Context
39746	header_      http.Header
39747}
39748
39749// List: Lists the return addresses of the Merchant Center account.
39750//
39751// - merchantId: The Merchant Center account to list return addresses
39752//   for.
39753func (r *ReturnaddressService) List(merchantId uint64) *ReturnaddressListCall {
39754	c := &ReturnaddressListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39755	c.merchantId = merchantId
39756	return c
39757}
39758
39759// Country sets the optional parameter "country": List only return
39760// addresses applicable to the given country of sale. When omitted, all
39761// return addresses are listed.
39762func (c *ReturnaddressListCall) Country(country string) *ReturnaddressListCall {
39763	c.urlParams_.Set("country", country)
39764	return c
39765}
39766
39767// MaxResults sets the optional parameter "maxResults": The maximum
39768// number of addresses in the response, used for paging.
39769func (c *ReturnaddressListCall) MaxResults(maxResults int64) *ReturnaddressListCall {
39770	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
39771	return c
39772}
39773
39774// PageToken sets the optional parameter "pageToken": The token returned
39775// by the previous request.
39776func (c *ReturnaddressListCall) PageToken(pageToken string) *ReturnaddressListCall {
39777	c.urlParams_.Set("pageToken", pageToken)
39778	return c
39779}
39780
39781// Fields allows partial responses to be retrieved. See
39782// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39783// for more information.
39784func (c *ReturnaddressListCall) Fields(s ...googleapi.Field) *ReturnaddressListCall {
39785	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39786	return c
39787}
39788
39789// IfNoneMatch sets the optional parameter which makes the operation
39790// fail if the object's ETag matches the given value. This is useful for
39791// getting updates only after the object has changed since the last
39792// request. Use googleapi.IsNotModified to check whether the response
39793// error from Do is the result of In-None-Match.
39794func (c *ReturnaddressListCall) IfNoneMatch(entityTag string) *ReturnaddressListCall {
39795	c.ifNoneMatch_ = entityTag
39796	return c
39797}
39798
39799// Context sets the context to be used in this call's Do method. Any
39800// pending HTTP request will be aborted if the provided context is
39801// canceled.
39802func (c *ReturnaddressListCall) Context(ctx context.Context) *ReturnaddressListCall {
39803	c.ctx_ = ctx
39804	return c
39805}
39806
39807// Header returns an http.Header that can be modified by the caller to
39808// add HTTP headers to the request.
39809func (c *ReturnaddressListCall) Header() http.Header {
39810	if c.header_ == nil {
39811		c.header_ = make(http.Header)
39812	}
39813	return c.header_
39814}
39815
39816func (c *ReturnaddressListCall) doRequest(alt string) (*http.Response, error) {
39817	reqHeaders := make(http.Header)
39818	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
39819	for k, v := range c.header_ {
39820		reqHeaders[k] = v
39821	}
39822	reqHeaders.Set("User-Agent", c.s.userAgent())
39823	if c.ifNoneMatch_ != "" {
39824		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39825	}
39826	var body io.Reader = nil
39827	c.urlParams_.Set("alt", alt)
39828	c.urlParams_.Set("prettyPrint", "false")
39829	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
39830	urls += "?" + c.urlParams_.Encode()
39831	req, err := http.NewRequest("GET", urls, body)
39832	if err != nil {
39833		return nil, err
39834	}
39835	req.Header = reqHeaders
39836	googleapi.Expand(req.URL, map[string]string{
39837		"merchantId": strconv.FormatUint(c.merchantId, 10),
39838	})
39839	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39840}
39841
39842// Do executes the "content.returnaddress.list" call.
39843// Exactly one of *ReturnaddressListResponse or error will be non-nil.
39844// Any non-2xx status code is an error. Response headers are in either
39845// *ReturnaddressListResponse.ServerResponse.Header or (if a response
39846// was returned at all) in error.(*googleapi.Error).Header. Use
39847// googleapi.IsNotModified to check whether the returned error was
39848// because http.StatusNotModified was returned.
39849func (c *ReturnaddressListCall) Do(opts ...googleapi.CallOption) (*ReturnaddressListResponse, error) {
39850	gensupport.SetOptions(c.urlParams_, opts...)
39851	res, err := c.doRequest("json")
39852	if res != nil && res.StatusCode == http.StatusNotModified {
39853		if res.Body != nil {
39854			res.Body.Close()
39855		}
39856		return nil, &googleapi.Error{
39857			Code:   res.StatusCode,
39858			Header: res.Header,
39859		}
39860	}
39861	if err != nil {
39862		return nil, err
39863	}
39864	defer googleapi.CloseBody(res)
39865	if err := googleapi.CheckResponse(res); err != nil {
39866		return nil, err
39867	}
39868	ret := &ReturnaddressListResponse{
39869		ServerResponse: googleapi.ServerResponse{
39870			Header:         res.Header,
39871			HTTPStatusCode: res.StatusCode,
39872		},
39873	}
39874	target := &ret
39875	if err := gensupport.DecodeResponse(target, res); err != nil {
39876		return nil, err
39877	}
39878	return ret, nil
39879	// {
39880	//   "description": "Lists the return addresses of the Merchant Center account.",
39881	//   "flatPath": "{merchantId}/returnaddress",
39882	//   "httpMethod": "GET",
39883	//   "id": "content.returnaddress.list",
39884	//   "parameterOrder": [
39885	//     "merchantId"
39886	//   ],
39887	//   "parameters": {
39888	//     "country": {
39889	//       "description": "List only return addresses applicable to the given country of sale. When omitted, all return addresses are listed.",
39890	//       "location": "query",
39891	//       "type": "string"
39892	//     },
39893	//     "maxResults": {
39894	//       "description": "The maximum number of addresses in the response, used for paging.",
39895	//       "format": "uint32",
39896	//       "location": "query",
39897	//       "type": "integer"
39898	//     },
39899	//     "merchantId": {
39900	//       "description": "The Merchant Center account to list return addresses for.",
39901	//       "format": "uint64",
39902	//       "location": "path",
39903	//       "required": true,
39904	//       "type": "string"
39905	//     },
39906	//     "pageToken": {
39907	//       "description": "The token returned by the previous request.",
39908	//       "location": "query",
39909	//       "type": "string"
39910	//     }
39911	//   },
39912	//   "path": "{merchantId}/returnaddress",
39913	//   "response": {
39914	//     "$ref": "ReturnaddressListResponse"
39915	//   },
39916	//   "scopes": [
39917	//     "https://www.googleapis.com/auth/content"
39918	//   ]
39919	// }
39920
39921}
39922
39923// Pages invokes f for each page of results.
39924// A non-nil error returned from f will halt the iteration.
39925// The provided context supersedes any context provided to the Context method.
39926func (c *ReturnaddressListCall) Pages(ctx context.Context, f func(*ReturnaddressListResponse) error) error {
39927	c.ctx_ = ctx
39928	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
39929	for {
39930		x, err := c.Do()
39931		if err != nil {
39932			return err
39933		}
39934		if err := f(x); err != nil {
39935			return err
39936		}
39937		if x.NextPageToken == "" {
39938			return nil
39939		}
39940		c.PageToken(x.NextPageToken)
39941	}
39942}
39943
39944// method id "content.returnpolicy.custombatch":
39945
39946type ReturnpolicyCustombatchCall struct {
39947	s                              *APIService
39948	returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest
39949	urlParams_                     gensupport.URLParams
39950	ctx_                           context.Context
39951	header_                        http.Header
39952}
39953
39954// Custombatch: Batches multiple return policy related calls in a single
39955// request.
39956func (r *ReturnpolicyService) Custombatch(returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest) *ReturnpolicyCustombatchCall {
39957	c := &ReturnpolicyCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39958	c.returnpolicycustombatchrequest = returnpolicycustombatchrequest
39959	return c
39960}
39961
39962// Fields allows partial responses to be retrieved. See
39963// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39964// for more information.
39965func (c *ReturnpolicyCustombatchCall) Fields(s ...googleapi.Field) *ReturnpolicyCustombatchCall {
39966	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39967	return c
39968}
39969
39970// Context sets the context to be used in this call's Do method. Any
39971// pending HTTP request will be aborted if the provided context is
39972// canceled.
39973func (c *ReturnpolicyCustombatchCall) Context(ctx context.Context) *ReturnpolicyCustombatchCall {
39974	c.ctx_ = ctx
39975	return c
39976}
39977
39978// Header returns an http.Header that can be modified by the caller to
39979// add HTTP headers to the request.
39980func (c *ReturnpolicyCustombatchCall) Header() http.Header {
39981	if c.header_ == nil {
39982		c.header_ = make(http.Header)
39983	}
39984	return c.header_
39985}
39986
39987func (c *ReturnpolicyCustombatchCall) doRequest(alt string) (*http.Response, error) {
39988	reqHeaders := make(http.Header)
39989	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
39990	for k, v := range c.header_ {
39991		reqHeaders[k] = v
39992	}
39993	reqHeaders.Set("User-Agent", c.s.userAgent())
39994	var body io.Reader = nil
39995	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicycustombatchrequest)
39996	if err != nil {
39997		return nil, err
39998	}
39999	reqHeaders.Set("Content-Type", "application/json")
40000	c.urlParams_.Set("alt", alt)
40001	c.urlParams_.Set("prettyPrint", "false")
40002	urls := googleapi.ResolveRelative(c.s.BasePath, "returnpolicy/batch")
40003	urls += "?" + c.urlParams_.Encode()
40004	req, err := http.NewRequest("POST", urls, body)
40005	if err != nil {
40006		return nil, err
40007	}
40008	req.Header = reqHeaders
40009	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40010}
40011
40012// Do executes the "content.returnpolicy.custombatch" call.
40013// Exactly one of *ReturnpolicyCustomBatchResponse or error will be
40014// non-nil. Any non-2xx status code is an error. Response headers are in
40015// either *ReturnpolicyCustomBatchResponse.ServerResponse.Header or (if
40016// a response was returned at all) in error.(*googleapi.Error).Header.
40017// Use googleapi.IsNotModified to check whether the returned error was
40018// because http.StatusNotModified was returned.
40019func (c *ReturnpolicyCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyCustomBatchResponse, error) {
40020	gensupport.SetOptions(c.urlParams_, opts...)
40021	res, err := c.doRequest("json")
40022	if res != nil && res.StatusCode == http.StatusNotModified {
40023		if res.Body != nil {
40024			res.Body.Close()
40025		}
40026		return nil, &googleapi.Error{
40027			Code:   res.StatusCode,
40028			Header: res.Header,
40029		}
40030	}
40031	if err != nil {
40032		return nil, err
40033	}
40034	defer googleapi.CloseBody(res)
40035	if err := googleapi.CheckResponse(res); err != nil {
40036		return nil, err
40037	}
40038	ret := &ReturnpolicyCustomBatchResponse{
40039		ServerResponse: googleapi.ServerResponse{
40040			Header:         res.Header,
40041			HTTPStatusCode: res.StatusCode,
40042		},
40043	}
40044	target := &ret
40045	if err := gensupport.DecodeResponse(target, res); err != nil {
40046		return nil, err
40047	}
40048	return ret, nil
40049	// {
40050	//   "description": "Batches multiple return policy related calls in a single request.",
40051	//   "flatPath": "returnpolicy/batch",
40052	//   "httpMethod": "POST",
40053	//   "id": "content.returnpolicy.custombatch",
40054	//   "parameterOrder": [],
40055	//   "parameters": {},
40056	//   "path": "returnpolicy/batch",
40057	//   "request": {
40058	//     "$ref": "ReturnpolicyCustomBatchRequest"
40059	//   },
40060	//   "response": {
40061	//     "$ref": "ReturnpolicyCustomBatchResponse"
40062	//   },
40063	//   "scopes": [
40064	//     "https://www.googleapis.com/auth/content"
40065	//   ]
40066	// }
40067
40068}
40069
40070// method id "content.returnpolicy.delete":
40071
40072type ReturnpolicyDeleteCall struct {
40073	s              *APIService
40074	merchantId     uint64
40075	returnPolicyId string
40076	urlParams_     gensupport.URLParams
40077	ctx_           context.Context
40078	header_        http.Header
40079}
40080
40081// Delete: Deletes a return policy for the given Merchant Center
40082// account.
40083//
40084// - merchantId: The Merchant Center account from which to delete the
40085//   given return policy.
40086// - returnPolicyId: Return policy ID generated by Google.
40087func (r *ReturnpolicyService) Delete(merchantId uint64, returnPolicyId string) *ReturnpolicyDeleteCall {
40088	c := &ReturnpolicyDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40089	c.merchantId = merchantId
40090	c.returnPolicyId = returnPolicyId
40091	return c
40092}
40093
40094// Fields allows partial responses to be retrieved. See
40095// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40096// for more information.
40097func (c *ReturnpolicyDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyDeleteCall {
40098	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40099	return c
40100}
40101
40102// Context sets the context to be used in this call's Do method. Any
40103// pending HTTP request will be aborted if the provided context is
40104// canceled.
40105func (c *ReturnpolicyDeleteCall) Context(ctx context.Context) *ReturnpolicyDeleteCall {
40106	c.ctx_ = ctx
40107	return c
40108}
40109
40110// Header returns an http.Header that can be modified by the caller to
40111// add HTTP headers to the request.
40112func (c *ReturnpolicyDeleteCall) Header() http.Header {
40113	if c.header_ == nil {
40114		c.header_ = make(http.Header)
40115	}
40116	return c.header_
40117}
40118
40119func (c *ReturnpolicyDeleteCall) doRequest(alt string) (*http.Response, error) {
40120	reqHeaders := make(http.Header)
40121	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
40122	for k, v := range c.header_ {
40123		reqHeaders[k] = v
40124	}
40125	reqHeaders.Set("User-Agent", c.s.userAgent())
40126	var body io.Reader = nil
40127	c.urlParams_.Set("alt", alt)
40128	c.urlParams_.Set("prettyPrint", "false")
40129	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
40130	urls += "?" + c.urlParams_.Encode()
40131	req, err := http.NewRequest("DELETE", urls, body)
40132	if err != nil {
40133		return nil, err
40134	}
40135	req.Header = reqHeaders
40136	googleapi.Expand(req.URL, map[string]string{
40137		"merchantId":     strconv.FormatUint(c.merchantId, 10),
40138		"returnPolicyId": c.returnPolicyId,
40139	})
40140	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40141}
40142
40143// Do executes the "content.returnpolicy.delete" call.
40144func (c *ReturnpolicyDeleteCall) Do(opts ...googleapi.CallOption) error {
40145	gensupport.SetOptions(c.urlParams_, opts...)
40146	res, err := c.doRequest("json")
40147	if err != nil {
40148		return err
40149	}
40150	defer googleapi.CloseBody(res)
40151	if err := googleapi.CheckResponse(res); err != nil {
40152		return err
40153	}
40154	return nil
40155	// {
40156	//   "description": "Deletes a return policy for the given Merchant Center account.",
40157	//   "flatPath": "{merchantId}/returnpolicy/{returnPolicyId}",
40158	//   "httpMethod": "DELETE",
40159	//   "id": "content.returnpolicy.delete",
40160	//   "parameterOrder": [
40161	//     "merchantId",
40162	//     "returnPolicyId"
40163	//   ],
40164	//   "parameters": {
40165	//     "merchantId": {
40166	//       "description": "The Merchant Center account from which to delete the given return policy.",
40167	//       "format": "uint64",
40168	//       "location": "path",
40169	//       "required": true,
40170	//       "type": "string"
40171	//     },
40172	//     "returnPolicyId": {
40173	//       "description": "Return policy ID generated by Google.",
40174	//       "location": "path",
40175	//       "required": true,
40176	//       "type": "string"
40177	//     }
40178	//   },
40179	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
40180	//   "scopes": [
40181	//     "https://www.googleapis.com/auth/content"
40182	//   ]
40183	// }
40184
40185}
40186
40187// method id "content.returnpolicy.get":
40188
40189type ReturnpolicyGetCall struct {
40190	s              *APIService
40191	merchantId     uint64
40192	returnPolicyId string
40193	urlParams_     gensupport.URLParams
40194	ifNoneMatch_   string
40195	ctx_           context.Context
40196	header_        http.Header
40197}
40198
40199// Get: Gets a return policy of the Merchant Center account.
40200//
40201// - merchantId: The Merchant Center account to get a return policy for.
40202// - returnPolicyId: Return policy ID generated by Google.
40203func (r *ReturnpolicyService) Get(merchantId uint64, returnPolicyId string) *ReturnpolicyGetCall {
40204	c := &ReturnpolicyGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40205	c.merchantId = merchantId
40206	c.returnPolicyId = returnPolicyId
40207	return c
40208}
40209
40210// Fields allows partial responses to be retrieved. See
40211// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40212// for more information.
40213func (c *ReturnpolicyGetCall) Fields(s ...googleapi.Field) *ReturnpolicyGetCall {
40214	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40215	return c
40216}
40217
40218// IfNoneMatch sets the optional parameter which makes the operation
40219// fail if the object's ETag matches the given value. This is useful for
40220// getting updates only after the object has changed since the last
40221// request. Use googleapi.IsNotModified to check whether the response
40222// error from Do is the result of In-None-Match.
40223func (c *ReturnpolicyGetCall) IfNoneMatch(entityTag string) *ReturnpolicyGetCall {
40224	c.ifNoneMatch_ = entityTag
40225	return c
40226}
40227
40228// Context sets the context to be used in this call's Do method. Any
40229// pending HTTP request will be aborted if the provided context is
40230// canceled.
40231func (c *ReturnpolicyGetCall) Context(ctx context.Context) *ReturnpolicyGetCall {
40232	c.ctx_ = ctx
40233	return c
40234}
40235
40236// Header returns an http.Header that can be modified by the caller to
40237// add HTTP headers to the request.
40238func (c *ReturnpolicyGetCall) Header() http.Header {
40239	if c.header_ == nil {
40240		c.header_ = make(http.Header)
40241	}
40242	return c.header_
40243}
40244
40245func (c *ReturnpolicyGetCall) doRequest(alt string) (*http.Response, error) {
40246	reqHeaders := make(http.Header)
40247	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
40248	for k, v := range c.header_ {
40249		reqHeaders[k] = v
40250	}
40251	reqHeaders.Set("User-Agent", c.s.userAgent())
40252	if c.ifNoneMatch_ != "" {
40253		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40254	}
40255	var body io.Reader = nil
40256	c.urlParams_.Set("alt", alt)
40257	c.urlParams_.Set("prettyPrint", "false")
40258	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
40259	urls += "?" + c.urlParams_.Encode()
40260	req, err := http.NewRequest("GET", urls, body)
40261	if err != nil {
40262		return nil, err
40263	}
40264	req.Header = reqHeaders
40265	googleapi.Expand(req.URL, map[string]string{
40266		"merchantId":     strconv.FormatUint(c.merchantId, 10),
40267		"returnPolicyId": c.returnPolicyId,
40268	})
40269	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40270}
40271
40272// Do executes the "content.returnpolicy.get" call.
40273// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
40274// status code is an error. Response headers are in either
40275// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
40276// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
40277// to check whether the returned error was because
40278// http.StatusNotModified was returned.
40279func (c *ReturnpolicyGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
40280	gensupport.SetOptions(c.urlParams_, opts...)
40281	res, err := c.doRequest("json")
40282	if res != nil && res.StatusCode == http.StatusNotModified {
40283		if res.Body != nil {
40284			res.Body.Close()
40285		}
40286		return nil, &googleapi.Error{
40287			Code:   res.StatusCode,
40288			Header: res.Header,
40289		}
40290	}
40291	if err != nil {
40292		return nil, err
40293	}
40294	defer googleapi.CloseBody(res)
40295	if err := googleapi.CheckResponse(res); err != nil {
40296		return nil, err
40297	}
40298	ret := &ReturnPolicy{
40299		ServerResponse: googleapi.ServerResponse{
40300			Header:         res.Header,
40301			HTTPStatusCode: res.StatusCode,
40302		},
40303	}
40304	target := &ret
40305	if err := gensupport.DecodeResponse(target, res); err != nil {
40306		return nil, err
40307	}
40308	return ret, nil
40309	// {
40310	//   "description": "Gets a return policy of the Merchant Center account.",
40311	//   "flatPath": "{merchantId}/returnpolicy/{returnPolicyId}",
40312	//   "httpMethod": "GET",
40313	//   "id": "content.returnpolicy.get",
40314	//   "parameterOrder": [
40315	//     "merchantId",
40316	//     "returnPolicyId"
40317	//   ],
40318	//   "parameters": {
40319	//     "merchantId": {
40320	//       "description": "The Merchant Center account to get a return policy for.",
40321	//       "format": "uint64",
40322	//       "location": "path",
40323	//       "required": true,
40324	//       "type": "string"
40325	//     },
40326	//     "returnPolicyId": {
40327	//       "description": "Return policy ID generated by Google.",
40328	//       "location": "path",
40329	//       "required": true,
40330	//       "type": "string"
40331	//     }
40332	//   },
40333	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
40334	//   "response": {
40335	//     "$ref": "ReturnPolicy"
40336	//   },
40337	//   "scopes": [
40338	//     "https://www.googleapis.com/auth/content"
40339	//   ]
40340	// }
40341
40342}
40343
40344// method id "content.returnpolicy.insert":
40345
40346type ReturnpolicyInsertCall struct {
40347	s            *APIService
40348	merchantId   uint64
40349	returnpolicy *ReturnPolicy
40350	urlParams_   gensupport.URLParams
40351	ctx_         context.Context
40352	header_      http.Header
40353}
40354
40355// Insert: Inserts a return policy for the Merchant Center account.
40356//
40357// - merchantId: The Merchant Center account to insert a return policy
40358//   for.
40359func (r *ReturnpolicyService) Insert(merchantId uint64, returnpolicy *ReturnPolicy) *ReturnpolicyInsertCall {
40360	c := &ReturnpolicyInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40361	c.merchantId = merchantId
40362	c.returnpolicy = returnpolicy
40363	return c
40364}
40365
40366// Fields allows partial responses to be retrieved. See
40367// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40368// for more information.
40369func (c *ReturnpolicyInsertCall) Fields(s ...googleapi.Field) *ReturnpolicyInsertCall {
40370	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40371	return c
40372}
40373
40374// Context sets the context to be used in this call's Do method. Any
40375// pending HTTP request will be aborted if the provided context is
40376// canceled.
40377func (c *ReturnpolicyInsertCall) Context(ctx context.Context) *ReturnpolicyInsertCall {
40378	c.ctx_ = ctx
40379	return c
40380}
40381
40382// Header returns an http.Header that can be modified by the caller to
40383// add HTTP headers to the request.
40384func (c *ReturnpolicyInsertCall) Header() http.Header {
40385	if c.header_ == nil {
40386		c.header_ = make(http.Header)
40387	}
40388	return c.header_
40389}
40390
40391func (c *ReturnpolicyInsertCall) doRequest(alt string) (*http.Response, error) {
40392	reqHeaders := make(http.Header)
40393	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
40394	for k, v := range c.header_ {
40395		reqHeaders[k] = v
40396	}
40397	reqHeaders.Set("User-Agent", c.s.userAgent())
40398	var body io.Reader = nil
40399	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicy)
40400	if err != nil {
40401		return nil, err
40402	}
40403	reqHeaders.Set("Content-Type", "application/json")
40404	c.urlParams_.Set("alt", alt)
40405	c.urlParams_.Set("prettyPrint", "false")
40406	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
40407	urls += "?" + c.urlParams_.Encode()
40408	req, err := http.NewRequest("POST", urls, body)
40409	if err != nil {
40410		return nil, err
40411	}
40412	req.Header = reqHeaders
40413	googleapi.Expand(req.URL, map[string]string{
40414		"merchantId": strconv.FormatUint(c.merchantId, 10),
40415	})
40416	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40417}
40418
40419// Do executes the "content.returnpolicy.insert" call.
40420// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
40421// status code is an error. Response headers are in either
40422// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
40423// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
40424// to check whether the returned error was because
40425// http.StatusNotModified was returned.
40426func (c *ReturnpolicyInsertCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
40427	gensupport.SetOptions(c.urlParams_, opts...)
40428	res, err := c.doRequest("json")
40429	if res != nil && res.StatusCode == http.StatusNotModified {
40430		if res.Body != nil {
40431			res.Body.Close()
40432		}
40433		return nil, &googleapi.Error{
40434			Code:   res.StatusCode,
40435			Header: res.Header,
40436		}
40437	}
40438	if err != nil {
40439		return nil, err
40440	}
40441	defer googleapi.CloseBody(res)
40442	if err := googleapi.CheckResponse(res); err != nil {
40443		return nil, err
40444	}
40445	ret := &ReturnPolicy{
40446		ServerResponse: googleapi.ServerResponse{
40447			Header:         res.Header,
40448			HTTPStatusCode: res.StatusCode,
40449		},
40450	}
40451	target := &ret
40452	if err := gensupport.DecodeResponse(target, res); err != nil {
40453		return nil, err
40454	}
40455	return ret, nil
40456	// {
40457	//   "description": "Inserts a return policy for the Merchant Center account.",
40458	//   "flatPath": "{merchantId}/returnpolicy",
40459	//   "httpMethod": "POST",
40460	//   "id": "content.returnpolicy.insert",
40461	//   "parameterOrder": [
40462	//     "merchantId"
40463	//   ],
40464	//   "parameters": {
40465	//     "merchantId": {
40466	//       "description": "The Merchant Center account to insert a return policy for.",
40467	//       "format": "uint64",
40468	//       "location": "path",
40469	//       "required": true,
40470	//       "type": "string"
40471	//     }
40472	//   },
40473	//   "path": "{merchantId}/returnpolicy",
40474	//   "request": {
40475	//     "$ref": "ReturnPolicy"
40476	//   },
40477	//   "response": {
40478	//     "$ref": "ReturnPolicy"
40479	//   },
40480	//   "scopes": [
40481	//     "https://www.googleapis.com/auth/content"
40482	//   ]
40483	// }
40484
40485}
40486
40487// method id "content.returnpolicy.list":
40488
40489type ReturnpolicyListCall struct {
40490	s            *APIService
40491	merchantId   uint64
40492	urlParams_   gensupport.URLParams
40493	ifNoneMatch_ string
40494	ctx_         context.Context
40495	header_      http.Header
40496}
40497
40498// List: Lists the return policies of the Merchant Center account.
40499//
40500// - merchantId: The Merchant Center account to list return policies
40501//   for.
40502func (r *ReturnpolicyService) List(merchantId uint64) *ReturnpolicyListCall {
40503	c := &ReturnpolicyListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40504	c.merchantId = merchantId
40505	return c
40506}
40507
40508// Fields allows partial responses to be retrieved. See
40509// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40510// for more information.
40511func (c *ReturnpolicyListCall) Fields(s ...googleapi.Field) *ReturnpolicyListCall {
40512	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40513	return c
40514}
40515
40516// IfNoneMatch sets the optional parameter which makes the operation
40517// fail if the object's ETag matches the given value. This is useful for
40518// getting updates only after the object has changed since the last
40519// request. Use googleapi.IsNotModified to check whether the response
40520// error from Do is the result of In-None-Match.
40521func (c *ReturnpolicyListCall) IfNoneMatch(entityTag string) *ReturnpolicyListCall {
40522	c.ifNoneMatch_ = entityTag
40523	return c
40524}
40525
40526// Context sets the context to be used in this call's Do method. Any
40527// pending HTTP request will be aborted if the provided context is
40528// canceled.
40529func (c *ReturnpolicyListCall) Context(ctx context.Context) *ReturnpolicyListCall {
40530	c.ctx_ = ctx
40531	return c
40532}
40533
40534// Header returns an http.Header that can be modified by the caller to
40535// add HTTP headers to the request.
40536func (c *ReturnpolicyListCall) Header() http.Header {
40537	if c.header_ == nil {
40538		c.header_ = make(http.Header)
40539	}
40540	return c.header_
40541}
40542
40543func (c *ReturnpolicyListCall) doRequest(alt string) (*http.Response, error) {
40544	reqHeaders := make(http.Header)
40545	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
40546	for k, v := range c.header_ {
40547		reqHeaders[k] = v
40548	}
40549	reqHeaders.Set("User-Agent", c.s.userAgent())
40550	if c.ifNoneMatch_ != "" {
40551		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40552	}
40553	var body io.Reader = nil
40554	c.urlParams_.Set("alt", alt)
40555	c.urlParams_.Set("prettyPrint", "false")
40556	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
40557	urls += "?" + c.urlParams_.Encode()
40558	req, err := http.NewRequest("GET", urls, body)
40559	if err != nil {
40560		return nil, err
40561	}
40562	req.Header = reqHeaders
40563	googleapi.Expand(req.URL, map[string]string{
40564		"merchantId": strconv.FormatUint(c.merchantId, 10),
40565	})
40566	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40567}
40568
40569// Do executes the "content.returnpolicy.list" call.
40570// Exactly one of *ReturnpolicyListResponse or error will be non-nil.
40571// Any non-2xx status code is an error. Response headers are in either
40572// *ReturnpolicyListResponse.ServerResponse.Header or (if a response was
40573// returned at all) in error.(*googleapi.Error).Header. Use
40574// googleapi.IsNotModified to check whether the returned error was
40575// because http.StatusNotModified was returned.
40576func (c *ReturnpolicyListCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyListResponse, error) {
40577	gensupport.SetOptions(c.urlParams_, opts...)
40578	res, err := c.doRequest("json")
40579	if res != nil && res.StatusCode == http.StatusNotModified {
40580		if res.Body != nil {
40581			res.Body.Close()
40582		}
40583		return nil, &googleapi.Error{
40584			Code:   res.StatusCode,
40585			Header: res.Header,
40586		}
40587	}
40588	if err != nil {
40589		return nil, err
40590	}
40591	defer googleapi.CloseBody(res)
40592	if err := googleapi.CheckResponse(res); err != nil {
40593		return nil, err
40594	}
40595	ret := &ReturnpolicyListResponse{
40596		ServerResponse: googleapi.ServerResponse{
40597			Header:         res.Header,
40598			HTTPStatusCode: res.StatusCode,
40599		},
40600	}
40601	target := &ret
40602	if err := gensupport.DecodeResponse(target, res); err != nil {
40603		return nil, err
40604	}
40605	return ret, nil
40606	// {
40607	//   "description": "Lists the return policies of the Merchant Center account.",
40608	//   "flatPath": "{merchantId}/returnpolicy",
40609	//   "httpMethod": "GET",
40610	//   "id": "content.returnpolicy.list",
40611	//   "parameterOrder": [
40612	//     "merchantId"
40613	//   ],
40614	//   "parameters": {
40615	//     "merchantId": {
40616	//       "description": "The Merchant Center account to list return policies for.",
40617	//       "format": "uint64",
40618	//       "location": "path",
40619	//       "required": true,
40620	//       "type": "string"
40621	//     }
40622	//   },
40623	//   "path": "{merchantId}/returnpolicy",
40624	//   "response": {
40625	//     "$ref": "ReturnpolicyListResponse"
40626	//   },
40627	//   "scopes": [
40628	//     "https://www.googleapis.com/auth/content"
40629	//   ]
40630	// }
40631
40632}
40633
40634// method id "content.returnpolicyonline.create":
40635
40636type ReturnpolicyonlineCreateCall struct {
40637	s                  *APIService
40638	merchantId         int64
40639	returnpolicyonline *ReturnPolicyOnline
40640	urlParams_         gensupport.URLParams
40641	ctx_               context.Context
40642	header_            http.Header
40643}
40644
40645// Create: Creates a new return policy.
40646//
40647// - merchantId: The id of the merchant for which to retrieve the return
40648//   policy online object.
40649func (r *ReturnpolicyonlineService) Create(merchantId int64, returnpolicyonline *ReturnPolicyOnline) *ReturnpolicyonlineCreateCall {
40650	c := &ReturnpolicyonlineCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40651	c.merchantId = merchantId
40652	c.returnpolicyonline = returnpolicyonline
40653	return c
40654}
40655
40656// Fields allows partial responses to be retrieved. See
40657// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40658// for more information.
40659func (c *ReturnpolicyonlineCreateCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineCreateCall {
40660	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40661	return c
40662}
40663
40664// Context sets the context to be used in this call's Do method. Any
40665// pending HTTP request will be aborted if the provided context is
40666// canceled.
40667func (c *ReturnpolicyonlineCreateCall) Context(ctx context.Context) *ReturnpolicyonlineCreateCall {
40668	c.ctx_ = ctx
40669	return c
40670}
40671
40672// Header returns an http.Header that can be modified by the caller to
40673// add HTTP headers to the request.
40674func (c *ReturnpolicyonlineCreateCall) Header() http.Header {
40675	if c.header_ == nil {
40676		c.header_ = make(http.Header)
40677	}
40678	return c.header_
40679}
40680
40681func (c *ReturnpolicyonlineCreateCall) doRequest(alt string) (*http.Response, error) {
40682	reqHeaders := make(http.Header)
40683	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
40684	for k, v := range c.header_ {
40685		reqHeaders[k] = v
40686	}
40687	reqHeaders.Set("User-Agent", c.s.userAgent())
40688	var body io.Reader = nil
40689	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicyonline)
40690	if err != nil {
40691		return nil, err
40692	}
40693	reqHeaders.Set("Content-Type", "application/json")
40694	c.urlParams_.Set("alt", alt)
40695	c.urlParams_.Set("prettyPrint", "false")
40696	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline")
40697	urls += "?" + c.urlParams_.Encode()
40698	req, err := http.NewRequest("POST", urls, body)
40699	if err != nil {
40700		return nil, err
40701	}
40702	req.Header = reqHeaders
40703	googleapi.Expand(req.URL, map[string]string{
40704		"merchantId": strconv.FormatInt(c.merchantId, 10),
40705	})
40706	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40707}
40708
40709// Do executes the "content.returnpolicyonline.create" call.
40710// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
40711// non-2xx status code is an error. Response headers are in either
40712// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
40713// returned at all) in error.(*googleapi.Error).Header. Use
40714// googleapi.IsNotModified to check whether the returned error was
40715// because http.StatusNotModified was returned.
40716func (c *ReturnpolicyonlineCreateCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
40717	gensupport.SetOptions(c.urlParams_, opts...)
40718	res, err := c.doRequest("json")
40719	if res != nil && res.StatusCode == http.StatusNotModified {
40720		if res.Body != nil {
40721			res.Body.Close()
40722		}
40723		return nil, &googleapi.Error{
40724			Code:   res.StatusCode,
40725			Header: res.Header,
40726		}
40727	}
40728	if err != nil {
40729		return nil, err
40730	}
40731	defer googleapi.CloseBody(res)
40732	if err := googleapi.CheckResponse(res); err != nil {
40733		return nil, err
40734	}
40735	ret := &ReturnPolicyOnline{
40736		ServerResponse: googleapi.ServerResponse{
40737			Header:         res.Header,
40738			HTTPStatusCode: res.StatusCode,
40739		},
40740	}
40741	target := &ret
40742	if err := gensupport.DecodeResponse(target, res); err != nil {
40743		return nil, err
40744	}
40745	return ret, nil
40746	// {
40747	//   "description": "Creates a new return policy.",
40748	//   "flatPath": "{merchantId}/returnpolicyonline",
40749	//   "httpMethod": "POST",
40750	//   "id": "content.returnpolicyonline.create",
40751	//   "parameterOrder": [
40752	//     "merchantId"
40753	//   ],
40754	//   "parameters": {
40755	//     "merchantId": {
40756	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
40757	//       "format": "int64",
40758	//       "location": "path",
40759	//       "required": true,
40760	//       "type": "string"
40761	//     }
40762	//   },
40763	//   "path": "{merchantId}/returnpolicyonline",
40764	//   "request": {
40765	//     "$ref": "ReturnPolicyOnline"
40766	//   },
40767	//   "response": {
40768	//     "$ref": "ReturnPolicyOnline"
40769	//   },
40770	//   "scopes": [
40771	//     "https://www.googleapis.com/auth/content"
40772	//   ]
40773	// }
40774
40775}
40776
40777// method id "content.returnpolicyonline.delete":
40778
40779type ReturnpolicyonlineDeleteCall struct {
40780	s              *APIService
40781	merchantId     int64
40782	returnPolicyId string
40783	urlParams_     gensupport.URLParams
40784	ctx_           context.Context
40785	header_        http.Header
40786}
40787
40788// Delete: Deletes an existing return policy.
40789//
40790// - merchantId: The id of the merchant for which to retrieve the return
40791//   policy online object.
40792// - returnPolicyId: The id of the return policy to delete.
40793func (r *ReturnpolicyonlineService) Delete(merchantId int64, returnPolicyId string) *ReturnpolicyonlineDeleteCall {
40794	c := &ReturnpolicyonlineDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40795	c.merchantId = merchantId
40796	c.returnPolicyId = returnPolicyId
40797	return c
40798}
40799
40800// Fields allows partial responses to be retrieved. See
40801// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40802// for more information.
40803func (c *ReturnpolicyonlineDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineDeleteCall {
40804	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40805	return c
40806}
40807
40808// Context sets the context to be used in this call's Do method. Any
40809// pending HTTP request will be aborted if the provided context is
40810// canceled.
40811func (c *ReturnpolicyonlineDeleteCall) Context(ctx context.Context) *ReturnpolicyonlineDeleteCall {
40812	c.ctx_ = ctx
40813	return c
40814}
40815
40816// Header returns an http.Header that can be modified by the caller to
40817// add HTTP headers to the request.
40818func (c *ReturnpolicyonlineDeleteCall) Header() http.Header {
40819	if c.header_ == nil {
40820		c.header_ = make(http.Header)
40821	}
40822	return c.header_
40823}
40824
40825func (c *ReturnpolicyonlineDeleteCall) doRequest(alt string) (*http.Response, error) {
40826	reqHeaders := make(http.Header)
40827	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
40828	for k, v := range c.header_ {
40829		reqHeaders[k] = v
40830	}
40831	reqHeaders.Set("User-Agent", c.s.userAgent())
40832	var body io.Reader = nil
40833	c.urlParams_.Set("alt", alt)
40834	c.urlParams_.Set("prettyPrint", "false")
40835	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
40836	urls += "?" + c.urlParams_.Encode()
40837	req, err := http.NewRequest("DELETE", urls, body)
40838	if err != nil {
40839		return nil, err
40840	}
40841	req.Header = reqHeaders
40842	googleapi.Expand(req.URL, map[string]string{
40843		"merchantId":     strconv.FormatInt(c.merchantId, 10),
40844		"returnPolicyId": c.returnPolicyId,
40845	})
40846	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40847}
40848
40849// Do executes the "content.returnpolicyonline.delete" call.
40850func (c *ReturnpolicyonlineDeleteCall) Do(opts ...googleapi.CallOption) error {
40851	gensupport.SetOptions(c.urlParams_, opts...)
40852	res, err := c.doRequest("json")
40853	if err != nil {
40854		return err
40855	}
40856	defer googleapi.CloseBody(res)
40857	if err := googleapi.CheckResponse(res); err != nil {
40858		return err
40859	}
40860	return nil
40861	// {
40862	//   "description": "Deletes an existing return policy.",
40863	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
40864	//   "httpMethod": "DELETE",
40865	//   "id": "content.returnpolicyonline.delete",
40866	//   "parameterOrder": [
40867	//     "merchantId",
40868	//     "returnPolicyId"
40869	//   ],
40870	//   "parameters": {
40871	//     "merchantId": {
40872	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
40873	//       "format": "int64",
40874	//       "location": "path",
40875	//       "required": true,
40876	//       "type": "string"
40877	//     },
40878	//     "returnPolicyId": {
40879	//       "description": "Required. The id of the return policy to delete.",
40880	//       "location": "path",
40881	//       "required": true,
40882	//       "type": "string"
40883	//     }
40884	//   },
40885	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
40886	//   "scopes": [
40887	//     "https://www.googleapis.com/auth/content"
40888	//   ]
40889	// }
40890
40891}
40892
40893// method id "content.returnpolicyonline.get":
40894
40895type ReturnpolicyonlineGetCall struct {
40896	s              *APIService
40897	merchantId     int64
40898	returnPolicyId string
40899	urlParams_     gensupport.URLParams
40900	ifNoneMatch_   string
40901	ctx_           context.Context
40902	header_        http.Header
40903}
40904
40905// Get: Gets an existing return policy.
40906//
40907// - merchantId: The id of the merchant for which to retrieve the return
40908//   policy online object.
40909// - returnPolicyId: The id of the return policy to retrieve.
40910func (r *ReturnpolicyonlineService) Get(merchantId int64, returnPolicyId string) *ReturnpolicyonlineGetCall {
40911	c := &ReturnpolicyonlineGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40912	c.merchantId = merchantId
40913	c.returnPolicyId = returnPolicyId
40914	return c
40915}
40916
40917// Fields allows partial responses to be retrieved. See
40918// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40919// for more information.
40920func (c *ReturnpolicyonlineGetCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineGetCall {
40921	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40922	return c
40923}
40924
40925// IfNoneMatch sets the optional parameter which makes the operation
40926// fail if the object's ETag matches the given value. This is useful for
40927// getting updates only after the object has changed since the last
40928// request. Use googleapi.IsNotModified to check whether the response
40929// error from Do is the result of In-None-Match.
40930func (c *ReturnpolicyonlineGetCall) IfNoneMatch(entityTag string) *ReturnpolicyonlineGetCall {
40931	c.ifNoneMatch_ = entityTag
40932	return c
40933}
40934
40935// Context sets the context to be used in this call's Do method. Any
40936// pending HTTP request will be aborted if the provided context is
40937// canceled.
40938func (c *ReturnpolicyonlineGetCall) Context(ctx context.Context) *ReturnpolicyonlineGetCall {
40939	c.ctx_ = ctx
40940	return c
40941}
40942
40943// Header returns an http.Header that can be modified by the caller to
40944// add HTTP headers to the request.
40945func (c *ReturnpolicyonlineGetCall) Header() http.Header {
40946	if c.header_ == nil {
40947		c.header_ = make(http.Header)
40948	}
40949	return c.header_
40950}
40951
40952func (c *ReturnpolicyonlineGetCall) doRequest(alt string) (*http.Response, error) {
40953	reqHeaders := make(http.Header)
40954	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
40955	for k, v := range c.header_ {
40956		reqHeaders[k] = v
40957	}
40958	reqHeaders.Set("User-Agent", c.s.userAgent())
40959	if c.ifNoneMatch_ != "" {
40960		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40961	}
40962	var body io.Reader = nil
40963	c.urlParams_.Set("alt", alt)
40964	c.urlParams_.Set("prettyPrint", "false")
40965	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
40966	urls += "?" + c.urlParams_.Encode()
40967	req, err := http.NewRequest("GET", urls, body)
40968	if err != nil {
40969		return nil, err
40970	}
40971	req.Header = reqHeaders
40972	googleapi.Expand(req.URL, map[string]string{
40973		"merchantId":     strconv.FormatInt(c.merchantId, 10),
40974		"returnPolicyId": c.returnPolicyId,
40975	})
40976	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40977}
40978
40979// Do executes the "content.returnpolicyonline.get" call.
40980// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
40981// non-2xx status code is an error. Response headers are in either
40982// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
40983// returned at all) in error.(*googleapi.Error).Header. Use
40984// googleapi.IsNotModified to check whether the returned error was
40985// because http.StatusNotModified was returned.
40986func (c *ReturnpolicyonlineGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
40987	gensupport.SetOptions(c.urlParams_, opts...)
40988	res, err := c.doRequest("json")
40989	if res != nil && res.StatusCode == http.StatusNotModified {
40990		if res.Body != nil {
40991			res.Body.Close()
40992		}
40993		return nil, &googleapi.Error{
40994			Code:   res.StatusCode,
40995			Header: res.Header,
40996		}
40997	}
40998	if err != nil {
40999		return nil, err
41000	}
41001	defer googleapi.CloseBody(res)
41002	if err := googleapi.CheckResponse(res); err != nil {
41003		return nil, err
41004	}
41005	ret := &ReturnPolicyOnline{
41006		ServerResponse: googleapi.ServerResponse{
41007			Header:         res.Header,
41008			HTTPStatusCode: res.StatusCode,
41009		},
41010	}
41011	target := &ret
41012	if err := gensupport.DecodeResponse(target, res); err != nil {
41013		return nil, err
41014	}
41015	return ret, nil
41016	// {
41017	//   "description": "Gets an existing return policy.",
41018	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41019	//   "httpMethod": "GET",
41020	//   "id": "content.returnpolicyonline.get",
41021	//   "parameterOrder": [
41022	//     "merchantId",
41023	//     "returnPolicyId"
41024	//   ],
41025	//   "parameters": {
41026	//     "merchantId": {
41027	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
41028	//       "format": "int64",
41029	//       "location": "path",
41030	//       "required": true,
41031	//       "type": "string"
41032	//     },
41033	//     "returnPolicyId": {
41034	//       "description": "Required. The id of the return policy to retrieve.",
41035	//       "location": "path",
41036	//       "required": true,
41037	//       "type": "string"
41038	//     }
41039	//   },
41040	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41041	//   "response": {
41042	//     "$ref": "ReturnPolicyOnline"
41043	//   },
41044	//   "scopes": [
41045	//     "https://www.googleapis.com/auth/content"
41046	//   ]
41047	// }
41048
41049}
41050
41051// method id "content.returnpolicyonline.list":
41052
41053type ReturnpolicyonlineListCall struct {
41054	s            *APIService
41055	merchantId   int64
41056	urlParams_   gensupport.URLParams
41057	ifNoneMatch_ string
41058	ctx_         context.Context
41059	header_      http.Header
41060}
41061
41062// List: Lists all existing return policies.
41063//
41064// - merchantId: The id of the merchant for which to retrieve the return
41065//   policy online object.
41066func (r *ReturnpolicyonlineService) List(merchantId int64) *ReturnpolicyonlineListCall {
41067	c := &ReturnpolicyonlineListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41068	c.merchantId = merchantId
41069	return c
41070}
41071
41072// Fields allows partial responses to be retrieved. See
41073// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41074// for more information.
41075func (c *ReturnpolicyonlineListCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineListCall {
41076	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41077	return c
41078}
41079
41080// IfNoneMatch sets the optional parameter which makes the operation
41081// fail if the object's ETag matches the given value. This is useful for
41082// getting updates only after the object has changed since the last
41083// request. Use googleapi.IsNotModified to check whether the response
41084// error from Do is the result of In-None-Match.
41085func (c *ReturnpolicyonlineListCall) IfNoneMatch(entityTag string) *ReturnpolicyonlineListCall {
41086	c.ifNoneMatch_ = entityTag
41087	return c
41088}
41089
41090// Context sets the context to be used in this call's Do method. Any
41091// pending HTTP request will be aborted if the provided context is
41092// canceled.
41093func (c *ReturnpolicyonlineListCall) Context(ctx context.Context) *ReturnpolicyonlineListCall {
41094	c.ctx_ = ctx
41095	return c
41096}
41097
41098// Header returns an http.Header that can be modified by the caller to
41099// add HTTP headers to the request.
41100func (c *ReturnpolicyonlineListCall) Header() http.Header {
41101	if c.header_ == nil {
41102		c.header_ = make(http.Header)
41103	}
41104	return c.header_
41105}
41106
41107func (c *ReturnpolicyonlineListCall) doRequest(alt string) (*http.Response, error) {
41108	reqHeaders := make(http.Header)
41109	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
41110	for k, v := range c.header_ {
41111		reqHeaders[k] = v
41112	}
41113	reqHeaders.Set("User-Agent", c.s.userAgent())
41114	if c.ifNoneMatch_ != "" {
41115		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41116	}
41117	var body io.Reader = nil
41118	c.urlParams_.Set("alt", alt)
41119	c.urlParams_.Set("prettyPrint", "false")
41120	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline")
41121	urls += "?" + c.urlParams_.Encode()
41122	req, err := http.NewRequest("GET", urls, body)
41123	if err != nil {
41124		return nil, err
41125	}
41126	req.Header = reqHeaders
41127	googleapi.Expand(req.URL, map[string]string{
41128		"merchantId": strconv.FormatInt(c.merchantId, 10),
41129	})
41130	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41131}
41132
41133// Do executes the "content.returnpolicyonline.list" call.
41134// Exactly one of *ListReturnPolicyOnlineResponse or error will be
41135// non-nil. Any non-2xx status code is an error. Response headers are in
41136// either *ListReturnPolicyOnlineResponse.ServerResponse.Header or (if a
41137// response was returned at all) in error.(*googleapi.Error).Header. Use
41138// googleapi.IsNotModified to check whether the returned error was
41139// because http.StatusNotModified was returned.
41140func (c *ReturnpolicyonlineListCall) Do(opts ...googleapi.CallOption) (*ListReturnPolicyOnlineResponse, error) {
41141	gensupport.SetOptions(c.urlParams_, opts...)
41142	res, err := c.doRequest("json")
41143	if res != nil && res.StatusCode == http.StatusNotModified {
41144		if res.Body != nil {
41145			res.Body.Close()
41146		}
41147		return nil, &googleapi.Error{
41148			Code:   res.StatusCode,
41149			Header: res.Header,
41150		}
41151	}
41152	if err != nil {
41153		return nil, err
41154	}
41155	defer googleapi.CloseBody(res)
41156	if err := googleapi.CheckResponse(res); err != nil {
41157		return nil, err
41158	}
41159	ret := &ListReturnPolicyOnlineResponse{
41160		ServerResponse: googleapi.ServerResponse{
41161			Header:         res.Header,
41162			HTTPStatusCode: res.StatusCode,
41163		},
41164	}
41165	target := &ret
41166	if err := gensupport.DecodeResponse(target, res); err != nil {
41167		return nil, err
41168	}
41169	return ret, nil
41170	// {
41171	//   "description": "Lists all existing return policies.",
41172	//   "flatPath": "{merchantId}/returnpolicyonline",
41173	//   "httpMethod": "GET",
41174	//   "id": "content.returnpolicyonline.list",
41175	//   "parameterOrder": [
41176	//     "merchantId"
41177	//   ],
41178	//   "parameters": {
41179	//     "merchantId": {
41180	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
41181	//       "format": "int64",
41182	//       "location": "path",
41183	//       "required": true,
41184	//       "type": "string"
41185	//     }
41186	//   },
41187	//   "path": "{merchantId}/returnpolicyonline",
41188	//   "response": {
41189	//     "$ref": "ListReturnPolicyOnlineResponse"
41190	//   },
41191	//   "scopes": [
41192	//     "https://www.googleapis.com/auth/content"
41193	//   ]
41194	// }
41195
41196}
41197
41198// method id "content.returnpolicyonline.patch":
41199
41200type ReturnpolicyonlinePatchCall struct {
41201	s                  *APIService
41202	merchantId         int64
41203	returnPolicyId     string
41204	returnpolicyonline *ReturnPolicyOnline
41205	urlParams_         gensupport.URLParams
41206	ctx_               context.Context
41207	header_            http.Header
41208}
41209
41210// Patch: Updates an existing return policy.
41211//
41212// - merchantId: The id of the merchant for which to retrieve the return
41213//   policy online object.
41214// - returnPolicyId: The id of the return policy to update.
41215func (r *ReturnpolicyonlineService) Patch(merchantId int64, returnPolicyId string, returnpolicyonline *ReturnPolicyOnline) *ReturnpolicyonlinePatchCall {
41216	c := &ReturnpolicyonlinePatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41217	c.merchantId = merchantId
41218	c.returnPolicyId = returnPolicyId
41219	c.returnpolicyonline = returnpolicyonline
41220	return c
41221}
41222
41223// Fields allows partial responses to be retrieved. See
41224// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41225// for more information.
41226func (c *ReturnpolicyonlinePatchCall) Fields(s ...googleapi.Field) *ReturnpolicyonlinePatchCall {
41227	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41228	return c
41229}
41230
41231// Context sets the context to be used in this call's Do method. Any
41232// pending HTTP request will be aborted if the provided context is
41233// canceled.
41234func (c *ReturnpolicyonlinePatchCall) Context(ctx context.Context) *ReturnpolicyonlinePatchCall {
41235	c.ctx_ = ctx
41236	return c
41237}
41238
41239// Header returns an http.Header that can be modified by the caller to
41240// add HTTP headers to the request.
41241func (c *ReturnpolicyonlinePatchCall) Header() http.Header {
41242	if c.header_ == nil {
41243		c.header_ = make(http.Header)
41244	}
41245	return c.header_
41246}
41247
41248func (c *ReturnpolicyonlinePatchCall) doRequest(alt string) (*http.Response, error) {
41249	reqHeaders := make(http.Header)
41250	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
41251	for k, v := range c.header_ {
41252		reqHeaders[k] = v
41253	}
41254	reqHeaders.Set("User-Agent", c.s.userAgent())
41255	var body io.Reader = nil
41256	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicyonline)
41257	if err != nil {
41258		return nil, err
41259	}
41260	reqHeaders.Set("Content-Type", "application/json")
41261	c.urlParams_.Set("alt", alt)
41262	c.urlParams_.Set("prettyPrint", "false")
41263	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
41264	urls += "?" + c.urlParams_.Encode()
41265	req, err := http.NewRequest("PATCH", urls, body)
41266	if err != nil {
41267		return nil, err
41268	}
41269	req.Header = reqHeaders
41270	googleapi.Expand(req.URL, map[string]string{
41271		"merchantId":     strconv.FormatInt(c.merchantId, 10),
41272		"returnPolicyId": c.returnPolicyId,
41273	})
41274	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41275}
41276
41277// Do executes the "content.returnpolicyonline.patch" call.
41278// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
41279// non-2xx status code is an error. Response headers are in either
41280// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
41281// returned at all) in error.(*googleapi.Error).Header. Use
41282// googleapi.IsNotModified to check whether the returned error was
41283// because http.StatusNotModified was returned.
41284func (c *ReturnpolicyonlinePatchCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
41285	gensupport.SetOptions(c.urlParams_, opts...)
41286	res, err := c.doRequest("json")
41287	if res != nil && res.StatusCode == http.StatusNotModified {
41288		if res.Body != nil {
41289			res.Body.Close()
41290		}
41291		return nil, &googleapi.Error{
41292			Code:   res.StatusCode,
41293			Header: res.Header,
41294		}
41295	}
41296	if err != nil {
41297		return nil, err
41298	}
41299	defer googleapi.CloseBody(res)
41300	if err := googleapi.CheckResponse(res); err != nil {
41301		return nil, err
41302	}
41303	ret := &ReturnPolicyOnline{
41304		ServerResponse: googleapi.ServerResponse{
41305			Header:         res.Header,
41306			HTTPStatusCode: res.StatusCode,
41307		},
41308	}
41309	target := &ret
41310	if err := gensupport.DecodeResponse(target, res); err != nil {
41311		return nil, err
41312	}
41313	return ret, nil
41314	// {
41315	//   "description": "Updates an existing return policy.",
41316	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41317	//   "httpMethod": "PATCH",
41318	//   "id": "content.returnpolicyonline.patch",
41319	//   "parameterOrder": [
41320	//     "merchantId",
41321	//     "returnPolicyId"
41322	//   ],
41323	//   "parameters": {
41324	//     "merchantId": {
41325	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
41326	//       "format": "int64",
41327	//       "location": "path",
41328	//       "required": true,
41329	//       "type": "string"
41330	//     },
41331	//     "returnPolicyId": {
41332	//       "description": "Required. The id of the return policy to update.",
41333	//       "location": "path",
41334	//       "required": true,
41335	//       "type": "string"
41336	//     }
41337	//   },
41338	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41339	//   "request": {
41340	//     "$ref": "ReturnPolicyOnline"
41341	//   },
41342	//   "response": {
41343	//     "$ref": "ReturnPolicyOnline"
41344	//   },
41345	//   "scopes": [
41346	//     "https://www.googleapis.com/auth/content"
41347	//   ]
41348	// }
41349
41350}
41351
41352// method id "content.settlementreports.get":
41353
41354type SettlementreportsGetCall struct {
41355	s            *APIService
41356	merchantId   uint64
41357	settlementId string
41358	urlParams_   gensupport.URLParams
41359	ifNoneMatch_ string
41360	ctx_         context.Context
41361	header_      http.Header
41362}
41363
41364// Get: Retrieves a settlement report from your Merchant Center account.
41365//
41366// - merchantId: The Merchant Center account of the settlement report.
41367// - settlementId: The Google-provided ID of the settlement.
41368func (r *SettlementreportsService) Get(merchantId uint64, settlementId string) *SettlementreportsGetCall {
41369	c := &SettlementreportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41370	c.merchantId = merchantId
41371	c.settlementId = settlementId
41372	return c
41373}
41374
41375// Fields allows partial responses to be retrieved. See
41376// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41377// for more information.
41378func (c *SettlementreportsGetCall) Fields(s ...googleapi.Field) *SettlementreportsGetCall {
41379	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41380	return c
41381}
41382
41383// IfNoneMatch sets the optional parameter which makes the operation
41384// fail if the object's ETag matches the given value. This is useful for
41385// getting updates only after the object has changed since the last
41386// request. Use googleapi.IsNotModified to check whether the response
41387// error from Do is the result of In-None-Match.
41388func (c *SettlementreportsGetCall) IfNoneMatch(entityTag string) *SettlementreportsGetCall {
41389	c.ifNoneMatch_ = entityTag
41390	return c
41391}
41392
41393// Context sets the context to be used in this call's Do method. Any
41394// pending HTTP request will be aborted if the provided context is
41395// canceled.
41396func (c *SettlementreportsGetCall) Context(ctx context.Context) *SettlementreportsGetCall {
41397	c.ctx_ = ctx
41398	return c
41399}
41400
41401// Header returns an http.Header that can be modified by the caller to
41402// add HTTP headers to the request.
41403func (c *SettlementreportsGetCall) Header() http.Header {
41404	if c.header_ == nil {
41405		c.header_ = make(http.Header)
41406	}
41407	return c.header_
41408}
41409
41410func (c *SettlementreportsGetCall) doRequest(alt string) (*http.Response, error) {
41411	reqHeaders := make(http.Header)
41412	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
41413	for k, v := range c.header_ {
41414		reqHeaders[k] = v
41415	}
41416	reqHeaders.Set("User-Agent", c.s.userAgent())
41417	if c.ifNoneMatch_ != "" {
41418		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41419	}
41420	var body io.Reader = nil
41421	c.urlParams_.Set("alt", alt)
41422	c.urlParams_.Set("prettyPrint", "false")
41423	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports/{settlementId}")
41424	urls += "?" + c.urlParams_.Encode()
41425	req, err := http.NewRequest("GET", urls, body)
41426	if err != nil {
41427		return nil, err
41428	}
41429	req.Header = reqHeaders
41430	googleapi.Expand(req.URL, map[string]string{
41431		"merchantId":   strconv.FormatUint(c.merchantId, 10),
41432		"settlementId": c.settlementId,
41433	})
41434	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41435}
41436
41437// Do executes the "content.settlementreports.get" call.
41438// Exactly one of *SettlementReport or error will be non-nil. Any
41439// non-2xx status code is an error. Response headers are in either
41440// *SettlementReport.ServerResponse.Header or (if a response was
41441// returned at all) in error.(*googleapi.Error).Header. Use
41442// googleapi.IsNotModified to check whether the returned error was
41443// because http.StatusNotModified was returned.
41444func (c *SettlementreportsGetCall) Do(opts ...googleapi.CallOption) (*SettlementReport, error) {
41445	gensupport.SetOptions(c.urlParams_, opts...)
41446	res, err := c.doRequest("json")
41447	if res != nil && res.StatusCode == http.StatusNotModified {
41448		if res.Body != nil {
41449			res.Body.Close()
41450		}
41451		return nil, &googleapi.Error{
41452			Code:   res.StatusCode,
41453			Header: res.Header,
41454		}
41455	}
41456	if err != nil {
41457		return nil, err
41458	}
41459	defer googleapi.CloseBody(res)
41460	if err := googleapi.CheckResponse(res); err != nil {
41461		return nil, err
41462	}
41463	ret := &SettlementReport{
41464		ServerResponse: googleapi.ServerResponse{
41465			Header:         res.Header,
41466			HTTPStatusCode: res.StatusCode,
41467		},
41468	}
41469	target := &ret
41470	if err := gensupport.DecodeResponse(target, res); err != nil {
41471		return nil, err
41472	}
41473	return ret, nil
41474	// {
41475	//   "description": "Retrieves a settlement report from your Merchant Center account.",
41476	//   "flatPath": "{merchantId}/settlementreports/{settlementId}",
41477	//   "httpMethod": "GET",
41478	//   "id": "content.settlementreports.get",
41479	//   "parameterOrder": [
41480	//     "merchantId",
41481	//     "settlementId"
41482	//   ],
41483	//   "parameters": {
41484	//     "merchantId": {
41485	//       "description": "The Merchant Center account of the settlement report.",
41486	//       "format": "uint64",
41487	//       "location": "path",
41488	//       "required": true,
41489	//       "type": "string"
41490	//     },
41491	//     "settlementId": {
41492	//       "description": "The Google-provided ID of the settlement.",
41493	//       "location": "path",
41494	//       "required": true,
41495	//       "type": "string"
41496	//     }
41497	//   },
41498	//   "path": "{merchantId}/settlementreports/{settlementId}",
41499	//   "response": {
41500	//     "$ref": "SettlementReport"
41501	//   },
41502	//   "scopes": [
41503	//     "https://www.googleapis.com/auth/content"
41504	//   ]
41505	// }
41506
41507}
41508
41509// method id "content.settlementreports.list":
41510
41511type SettlementreportsListCall struct {
41512	s            *APIService
41513	merchantId   uint64
41514	urlParams_   gensupport.URLParams
41515	ifNoneMatch_ string
41516	ctx_         context.Context
41517	header_      http.Header
41518}
41519
41520// List: Retrieves a list of settlement reports from your Merchant
41521// Center account.
41522//
41523// - merchantId: The Merchant Center account to list settlements for.
41524func (r *SettlementreportsService) List(merchantId uint64) *SettlementreportsListCall {
41525	c := &SettlementreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41526	c.merchantId = merchantId
41527	return c
41528}
41529
41530// MaxResults sets the optional parameter "maxResults": The maximum
41531// number of settlements to return in the response, used for paging. The
41532// default value is 200 returns per page, and the maximum allowed value
41533// is 5000 returns per page.
41534func (c *SettlementreportsListCall) MaxResults(maxResults int64) *SettlementreportsListCall {
41535	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
41536	return c
41537}
41538
41539// PageToken sets the optional parameter "pageToken": The token returned
41540// by the previous request.
41541func (c *SettlementreportsListCall) PageToken(pageToken string) *SettlementreportsListCall {
41542	c.urlParams_.Set("pageToken", pageToken)
41543	return c
41544}
41545
41546// TransferEndDate sets the optional parameter "transferEndDate":
41547// Obtains settlements which have transactions before this date
41548// (inclusively), in ISO 8601 format.
41549func (c *SettlementreportsListCall) TransferEndDate(transferEndDate string) *SettlementreportsListCall {
41550	c.urlParams_.Set("transferEndDate", transferEndDate)
41551	return c
41552}
41553
41554// TransferStartDate sets the optional parameter "transferStartDate":
41555// Obtains settlements which have transactions after this date
41556// (inclusively), in ISO 8601 format.
41557func (c *SettlementreportsListCall) TransferStartDate(transferStartDate string) *SettlementreportsListCall {
41558	c.urlParams_.Set("transferStartDate", transferStartDate)
41559	return c
41560}
41561
41562// Fields allows partial responses to be retrieved. See
41563// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41564// for more information.
41565func (c *SettlementreportsListCall) Fields(s ...googleapi.Field) *SettlementreportsListCall {
41566	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41567	return c
41568}
41569
41570// IfNoneMatch sets the optional parameter which makes the operation
41571// fail if the object's ETag matches the given value. This is useful for
41572// getting updates only after the object has changed since the last
41573// request. Use googleapi.IsNotModified to check whether the response
41574// error from Do is the result of In-None-Match.
41575func (c *SettlementreportsListCall) IfNoneMatch(entityTag string) *SettlementreportsListCall {
41576	c.ifNoneMatch_ = entityTag
41577	return c
41578}
41579
41580// Context sets the context to be used in this call's Do method. Any
41581// pending HTTP request will be aborted if the provided context is
41582// canceled.
41583func (c *SettlementreportsListCall) Context(ctx context.Context) *SettlementreportsListCall {
41584	c.ctx_ = ctx
41585	return c
41586}
41587
41588// Header returns an http.Header that can be modified by the caller to
41589// add HTTP headers to the request.
41590func (c *SettlementreportsListCall) Header() http.Header {
41591	if c.header_ == nil {
41592		c.header_ = make(http.Header)
41593	}
41594	return c.header_
41595}
41596
41597func (c *SettlementreportsListCall) doRequest(alt string) (*http.Response, error) {
41598	reqHeaders := make(http.Header)
41599	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
41600	for k, v := range c.header_ {
41601		reqHeaders[k] = v
41602	}
41603	reqHeaders.Set("User-Agent", c.s.userAgent())
41604	if c.ifNoneMatch_ != "" {
41605		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41606	}
41607	var body io.Reader = nil
41608	c.urlParams_.Set("alt", alt)
41609	c.urlParams_.Set("prettyPrint", "false")
41610	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports")
41611	urls += "?" + c.urlParams_.Encode()
41612	req, err := http.NewRequest("GET", urls, body)
41613	if err != nil {
41614		return nil, err
41615	}
41616	req.Header = reqHeaders
41617	googleapi.Expand(req.URL, map[string]string{
41618		"merchantId": strconv.FormatUint(c.merchantId, 10),
41619	})
41620	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41621}
41622
41623// Do executes the "content.settlementreports.list" call.
41624// Exactly one of *SettlementreportsListResponse or error will be
41625// non-nil. Any non-2xx status code is an error. Response headers are in
41626// either *SettlementreportsListResponse.ServerResponse.Header or (if a
41627// response was returned at all) in error.(*googleapi.Error).Header. Use
41628// googleapi.IsNotModified to check whether the returned error was
41629// because http.StatusNotModified was returned.
41630func (c *SettlementreportsListCall) Do(opts ...googleapi.CallOption) (*SettlementreportsListResponse, error) {
41631	gensupport.SetOptions(c.urlParams_, opts...)
41632	res, err := c.doRequest("json")
41633	if res != nil && res.StatusCode == http.StatusNotModified {
41634		if res.Body != nil {
41635			res.Body.Close()
41636		}
41637		return nil, &googleapi.Error{
41638			Code:   res.StatusCode,
41639			Header: res.Header,
41640		}
41641	}
41642	if err != nil {
41643		return nil, err
41644	}
41645	defer googleapi.CloseBody(res)
41646	if err := googleapi.CheckResponse(res); err != nil {
41647		return nil, err
41648	}
41649	ret := &SettlementreportsListResponse{
41650		ServerResponse: googleapi.ServerResponse{
41651			Header:         res.Header,
41652			HTTPStatusCode: res.StatusCode,
41653		},
41654	}
41655	target := &ret
41656	if err := gensupport.DecodeResponse(target, res); err != nil {
41657		return nil, err
41658	}
41659	return ret, nil
41660	// {
41661	//   "description": "Retrieves a list of settlement reports from your Merchant Center account.",
41662	//   "flatPath": "{merchantId}/settlementreports",
41663	//   "httpMethod": "GET",
41664	//   "id": "content.settlementreports.list",
41665	//   "parameterOrder": [
41666	//     "merchantId"
41667	//   ],
41668	//   "parameters": {
41669	//     "maxResults": {
41670	//       "description": "The maximum number of settlements to return in the response, used for paging. The default value is 200 returns per page, and the maximum allowed value is 5000 returns per page.",
41671	//       "format": "uint32",
41672	//       "location": "query",
41673	//       "type": "integer"
41674	//     },
41675	//     "merchantId": {
41676	//       "description": "The Merchant Center account to list settlements for.",
41677	//       "format": "uint64",
41678	//       "location": "path",
41679	//       "required": true,
41680	//       "type": "string"
41681	//     },
41682	//     "pageToken": {
41683	//       "description": "The token returned by the previous request.",
41684	//       "location": "query",
41685	//       "type": "string"
41686	//     },
41687	//     "transferEndDate": {
41688	//       "description": "Obtains settlements which have transactions before this date (inclusively), in ISO 8601 format.",
41689	//       "location": "query",
41690	//       "type": "string"
41691	//     },
41692	//     "transferStartDate": {
41693	//       "description": "Obtains settlements which have transactions after this date (inclusively), in ISO 8601 format.",
41694	//       "location": "query",
41695	//       "type": "string"
41696	//     }
41697	//   },
41698	//   "path": "{merchantId}/settlementreports",
41699	//   "response": {
41700	//     "$ref": "SettlementreportsListResponse"
41701	//   },
41702	//   "scopes": [
41703	//     "https://www.googleapis.com/auth/content"
41704	//   ]
41705	// }
41706
41707}
41708
41709// Pages invokes f for each page of results.
41710// A non-nil error returned from f will halt the iteration.
41711// The provided context supersedes any context provided to the Context method.
41712func (c *SettlementreportsListCall) Pages(ctx context.Context, f func(*SettlementreportsListResponse) error) error {
41713	c.ctx_ = ctx
41714	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
41715	for {
41716		x, err := c.Do()
41717		if err != nil {
41718			return err
41719		}
41720		if err := f(x); err != nil {
41721			return err
41722		}
41723		if x.NextPageToken == "" {
41724			return nil
41725		}
41726		c.PageToken(x.NextPageToken)
41727	}
41728}
41729
41730// method id "content.settlementtransactions.list":
41731
41732type SettlementtransactionsListCall struct {
41733	s            *APIService
41734	merchantId   uint64
41735	settlementId string
41736	urlParams_   gensupport.URLParams
41737	ifNoneMatch_ string
41738	ctx_         context.Context
41739	header_      http.Header
41740}
41741
41742// List: Retrieves a list of transactions for the settlement.
41743//
41744// - merchantId: The Merchant Center account to list transactions for.
41745// - settlementId: The Google-provided ID of the settlement.
41746func (r *SettlementtransactionsService) List(merchantId uint64, settlementId string) *SettlementtransactionsListCall {
41747	c := &SettlementtransactionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41748	c.merchantId = merchantId
41749	c.settlementId = settlementId
41750	return c
41751}
41752
41753// MaxResults sets the optional parameter "maxResults": The maximum
41754// number of transactions to return in the response, used for paging.
41755// The default value is 200 transactions per page, and the maximum
41756// allowed value is 5000 transactions per page.
41757func (c *SettlementtransactionsListCall) MaxResults(maxResults int64) *SettlementtransactionsListCall {
41758	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
41759	return c
41760}
41761
41762// PageToken sets the optional parameter "pageToken": The token returned
41763// by the previous request.
41764func (c *SettlementtransactionsListCall) PageToken(pageToken string) *SettlementtransactionsListCall {
41765	c.urlParams_.Set("pageToken", pageToken)
41766	return c
41767}
41768
41769// TransactionIds sets the optional parameter "transactionIds": The list
41770// of transactions to return. If not set, all transactions will be
41771// returned.
41772func (c *SettlementtransactionsListCall) TransactionIds(transactionIds ...string) *SettlementtransactionsListCall {
41773	c.urlParams_.SetMulti("transactionIds", append([]string{}, transactionIds...))
41774	return c
41775}
41776
41777// Fields allows partial responses to be retrieved. See
41778// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41779// for more information.
41780func (c *SettlementtransactionsListCall) Fields(s ...googleapi.Field) *SettlementtransactionsListCall {
41781	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41782	return c
41783}
41784
41785// IfNoneMatch sets the optional parameter which makes the operation
41786// fail if the object's ETag matches the given value. This is useful for
41787// getting updates only after the object has changed since the last
41788// request. Use googleapi.IsNotModified to check whether the response
41789// error from Do is the result of In-None-Match.
41790func (c *SettlementtransactionsListCall) IfNoneMatch(entityTag string) *SettlementtransactionsListCall {
41791	c.ifNoneMatch_ = entityTag
41792	return c
41793}
41794
41795// Context sets the context to be used in this call's Do method. Any
41796// pending HTTP request will be aborted if the provided context is
41797// canceled.
41798func (c *SettlementtransactionsListCall) Context(ctx context.Context) *SettlementtransactionsListCall {
41799	c.ctx_ = ctx
41800	return c
41801}
41802
41803// Header returns an http.Header that can be modified by the caller to
41804// add HTTP headers to the request.
41805func (c *SettlementtransactionsListCall) Header() http.Header {
41806	if c.header_ == nil {
41807		c.header_ = make(http.Header)
41808	}
41809	return c.header_
41810}
41811
41812func (c *SettlementtransactionsListCall) doRequest(alt string) (*http.Response, error) {
41813	reqHeaders := make(http.Header)
41814	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
41815	for k, v := range c.header_ {
41816		reqHeaders[k] = v
41817	}
41818	reqHeaders.Set("User-Agent", c.s.userAgent())
41819	if c.ifNoneMatch_ != "" {
41820		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41821	}
41822	var body io.Reader = nil
41823	c.urlParams_.Set("alt", alt)
41824	c.urlParams_.Set("prettyPrint", "false")
41825	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports/{settlementId}/transactions")
41826	urls += "?" + c.urlParams_.Encode()
41827	req, err := http.NewRequest("GET", urls, body)
41828	if err != nil {
41829		return nil, err
41830	}
41831	req.Header = reqHeaders
41832	googleapi.Expand(req.URL, map[string]string{
41833		"merchantId":   strconv.FormatUint(c.merchantId, 10),
41834		"settlementId": c.settlementId,
41835	})
41836	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41837}
41838
41839// Do executes the "content.settlementtransactions.list" call.
41840// Exactly one of *SettlementtransactionsListResponse or error will be
41841// non-nil. Any non-2xx status code is an error. Response headers are in
41842// either *SettlementtransactionsListResponse.ServerResponse.Header or
41843// (if a response was returned at all) in
41844// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
41845// whether the returned error was because http.StatusNotModified was
41846// returned.
41847func (c *SettlementtransactionsListCall) Do(opts ...googleapi.CallOption) (*SettlementtransactionsListResponse, error) {
41848	gensupport.SetOptions(c.urlParams_, opts...)
41849	res, err := c.doRequest("json")
41850	if res != nil && res.StatusCode == http.StatusNotModified {
41851		if res.Body != nil {
41852			res.Body.Close()
41853		}
41854		return nil, &googleapi.Error{
41855			Code:   res.StatusCode,
41856			Header: res.Header,
41857		}
41858	}
41859	if err != nil {
41860		return nil, err
41861	}
41862	defer googleapi.CloseBody(res)
41863	if err := googleapi.CheckResponse(res); err != nil {
41864		return nil, err
41865	}
41866	ret := &SettlementtransactionsListResponse{
41867		ServerResponse: googleapi.ServerResponse{
41868			Header:         res.Header,
41869			HTTPStatusCode: res.StatusCode,
41870		},
41871	}
41872	target := &ret
41873	if err := gensupport.DecodeResponse(target, res); err != nil {
41874		return nil, err
41875	}
41876	return ret, nil
41877	// {
41878	//   "description": "Retrieves a list of transactions for the settlement.",
41879	//   "flatPath": "{merchantId}/settlementreports/{settlementId}/transactions",
41880	//   "httpMethod": "GET",
41881	//   "id": "content.settlementtransactions.list",
41882	//   "parameterOrder": [
41883	//     "merchantId",
41884	//     "settlementId"
41885	//   ],
41886	//   "parameters": {
41887	//     "maxResults": {
41888	//       "description": "The maximum number of transactions to return in the response, used for paging. The default value is 200 transactions per page, and the maximum allowed value is 5000 transactions per page.",
41889	//       "format": "uint32",
41890	//       "location": "query",
41891	//       "type": "integer"
41892	//     },
41893	//     "merchantId": {
41894	//       "description": "The Merchant Center account to list transactions for.",
41895	//       "format": "uint64",
41896	//       "location": "path",
41897	//       "required": true,
41898	//       "type": "string"
41899	//     },
41900	//     "pageToken": {
41901	//       "description": "The token returned by the previous request.",
41902	//       "location": "query",
41903	//       "type": "string"
41904	//     },
41905	//     "settlementId": {
41906	//       "description": "The Google-provided ID of the settlement.",
41907	//       "location": "path",
41908	//       "required": true,
41909	//       "type": "string"
41910	//     },
41911	//     "transactionIds": {
41912	//       "description": "The list of transactions to return. If not set, all transactions will be returned.",
41913	//       "location": "query",
41914	//       "repeated": true,
41915	//       "type": "string"
41916	//     }
41917	//   },
41918	//   "path": "{merchantId}/settlementreports/{settlementId}/transactions",
41919	//   "response": {
41920	//     "$ref": "SettlementtransactionsListResponse"
41921	//   },
41922	//   "scopes": [
41923	//     "https://www.googleapis.com/auth/content"
41924	//   ]
41925	// }
41926
41927}
41928
41929// Pages invokes f for each page of results.
41930// A non-nil error returned from f will halt the iteration.
41931// The provided context supersedes any context provided to the Context method.
41932func (c *SettlementtransactionsListCall) Pages(ctx context.Context, f func(*SettlementtransactionsListResponse) error) error {
41933	c.ctx_ = ctx
41934	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
41935	for {
41936		x, err := c.Do()
41937		if err != nil {
41938			return err
41939		}
41940		if err := f(x); err != nil {
41941			return err
41942		}
41943		if x.NextPageToken == "" {
41944			return nil
41945		}
41946		c.PageToken(x.NextPageToken)
41947	}
41948}
41949
41950// method id "content.shippingsettings.custombatch":
41951
41952type ShippingsettingsCustombatchCall struct {
41953	s                                  *APIService
41954	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
41955	urlParams_                         gensupport.URLParams
41956	ctx_                               context.Context
41957	header_                            http.Header
41958}
41959
41960// Custombatch: Retrieves and updates the shipping settings of multiple
41961// accounts in a single request.
41962func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
41963	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41964	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
41965	return c
41966}
41967
41968// Fields allows partial responses to be retrieved. See
41969// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41970// for more information.
41971func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
41972	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41973	return c
41974}
41975
41976// Context sets the context to be used in this call's Do method. Any
41977// pending HTTP request will be aborted if the provided context is
41978// canceled.
41979func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
41980	c.ctx_ = ctx
41981	return c
41982}
41983
41984// Header returns an http.Header that can be modified by the caller to
41985// add HTTP headers to the request.
41986func (c *ShippingsettingsCustombatchCall) Header() http.Header {
41987	if c.header_ == nil {
41988		c.header_ = make(http.Header)
41989	}
41990	return c.header_
41991}
41992
41993func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
41994	reqHeaders := make(http.Header)
41995	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
41996	for k, v := range c.header_ {
41997		reqHeaders[k] = v
41998	}
41999	reqHeaders.Set("User-Agent", c.s.userAgent())
42000	var body io.Reader = nil
42001	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
42002	if err != nil {
42003		return nil, err
42004	}
42005	reqHeaders.Set("Content-Type", "application/json")
42006	c.urlParams_.Set("alt", alt)
42007	c.urlParams_.Set("prettyPrint", "false")
42008	urls := googleapi.ResolveRelative(c.s.BasePath, "shippingsettings/batch")
42009	urls += "?" + c.urlParams_.Encode()
42010	req, err := http.NewRequest("POST", urls, body)
42011	if err != nil {
42012		return nil, err
42013	}
42014	req.Header = reqHeaders
42015	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42016}
42017
42018// Do executes the "content.shippingsettings.custombatch" call.
42019// Exactly one of *ShippingsettingsCustomBatchResponse or error will be
42020// non-nil. Any non-2xx status code is an error. Response headers are in
42021// either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
42022// (if a response was returned at all) in
42023// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
42024// whether the returned error was because http.StatusNotModified was
42025// returned.
42026func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
42027	gensupport.SetOptions(c.urlParams_, opts...)
42028	res, err := c.doRequest("json")
42029	if res != nil && res.StatusCode == http.StatusNotModified {
42030		if res.Body != nil {
42031			res.Body.Close()
42032		}
42033		return nil, &googleapi.Error{
42034			Code:   res.StatusCode,
42035			Header: res.Header,
42036		}
42037	}
42038	if err != nil {
42039		return nil, err
42040	}
42041	defer googleapi.CloseBody(res)
42042	if err := googleapi.CheckResponse(res); err != nil {
42043		return nil, err
42044	}
42045	ret := &ShippingsettingsCustomBatchResponse{
42046		ServerResponse: googleapi.ServerResponse{
42047			Header:         res.Header,
42048			HTTPStatusCode: res.StatusCode,
42049		},
42050	}
42051	target := &ret
42052	if err := gensupport.DecodeResponse(target, res); err != nil {
42053		return nil, err
42054	}
42055	return ret, nil
42056	// {
42057	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
42058	//   "flatPath": "shippingsettings/batch",
42059	//   "httpMethod": "POST",
42060	//   "id": "content.shippingsettings.custombatch",
42061	//   "parameterOrder": [],
42062	//   "parameters": {},
42063	//   "path": "shippingsettings/batch",
42064	//   "request": {
42065	//     "$ref": "ShippingsettingsCustomBatchRequest"
42066	//   },
42067	//   "response": {
42068	//     "$ref": "ShippingsettingsCustomBatchResponse"
42069	//   },
42070	//   "scopes": [
42071	//     "https://www.googleapis.com/auth/content"
42072	//   ]
42073	// }
42074
42075}
42076
42077// method id "content.shippingsettings.get":
42078
42079type ShippingsettingsGetCall struct {
42080	s            *APIService
42081	merchantId   uint64
42082	accountId    uint64
42083	urlParams_   gensupport.URLParams
42084	ifNoneMatch_ string
42085	ctx_         context.Context
42086	header_      http.Header
42087}
42088
42089// Get: Retrieves the shipping settings of the account.
42090//
42091// - accountId: The ID of the account for which to get/update shipping
42092//   settings.
42093// - merchantId: The ID of the managing account. If this parameter is
42094//   not the same as accountId, then this account must be a multi-client
42095//   account and `accountId` must be the ID of a sub-account of this
42096//   account.
42097func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
42098	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42099	c.merchantId = merchantId
42100	c.accountId = accountId
42101	return c
42102}
42103
42104// Fields allows partial responses to be retrieved. See
42105// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42106// for more information.
42107func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
42108	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42109	return c
42110}
42111
42112// IfNoneMatch sets the optional parameter which makes the operation
42113// fail if the object's ETag matches the given value. This is useful for
42114// getting updates only after the object has changed since the last
42115// request. Use googleapi.IsNotModified to check whether the response
42116// error from Do is the result of In-None-Match.
42117func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
42118	c.ifNoneMatch_ = entityTag
42119	return c
42120}
42121
42122// Context sets the context to be used in this call's Do method. Any
42123// pending HTTP request will be aborted if the provided context is
42124// canceled.
42125func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
42126	c.ctx_ = ctx
42127	return c
42128}
42129
42130// Header returns an http.Header that can be modified by the caller to
42131// add HTTP headers to the request.
42132func (c *ShippingsettingsGetCall) Header() http.Header {
42133	if c.header_ == nil {
42134		c.header_ = make(http.Header)
42135	}
42136	return c.header_
42137}
42138
42139func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
42140	reqHeaders := make(http.Header)
42141	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
42142	for k, v := range c.header_ {
42143		reqHeaders[k] = v
42144	}
42145	reqHeaders.Set("User-Agent", c.s.userAgent())
42146	if c.ifNoneMatch_ != "" {
42147		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42148	}
42149	var body io.Reader = nil
42150	c.urlParams_.Set("alt", alt)
42151	c.urlParams_.Set("prettyPrint", "false")
42152	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
42153	urls += "?" + c.urlParams_.Encode()
42154	req, err := http.NewRequest("GET", urls, body)
42155	if err != nil {
42156		return nil, err
42157	}
42158	req.Header = reqHeaders
42159	googleapi.Expand(req.URL, map[string]string{
42160		"merchantId": strconv.FormatUint(c.merchantId, 10),
42161		"accountId":  strconv.FormatUint(c.accountId, 10),
42162	})
42163	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42164}
42165
42166// Do executes the "content.shippingsettings.get" call.
42167// Exactly one of *ShippingSettings or error will be non-nil. Any
42168// non-2xx status code is an error. Response headers are in either
42169// *ShippingSettings.ServerResponse.Header or (if a response was
42170// returned at all) in error.(*googleapi.Error).Header. Use
42171// googleapi.IsNotModified to check whether the returned error was
42172// because http.StatusNotModified was returned.
42173func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
42174	gensupport.SetOptions(c.urlParams_, opts...)
42175	res, err := c.doRequest("json")
42176	if res != nil && res.StatusCode == http.StatusNotModified {
42177		if res.Body != nil {
42178			res.Body.Close()
42179		}
42180		return nil, &googleapi.Error{
42181			Code:   res.StatusCode,
42182			Header: res.Header,
42183		}
42184	}
42185	if err != nil {
42186		return nil, err
42187	}
42188	defer googleapi.CloseBody(res)
42189	if err := googleapi.CheckResponse(res); err != nil {
42190		return nil, err
42191	}
42192	ret := &ShippingSettings{
42193		ServerResponse: googleapi.ServerResponse{
42194			Header:         res.Header,
42195			HTTPStatusCode: res.StatusCode,
42196		},
42197	}
42198	target := &ret
42199	if err := gensupport.DecodeResponse(target, res); err != nil {
42200		return nil, err
42201	}
42202	return ret, nil
42203	// {
42204	//   "description": "Retrieves the shipping settings of the account.",
42205	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
42206	//   "httpMethod": "GET",
42207	//   "id": "content.shippingsettings.get",
42208	//   "parameterOrder": [
42209	//     "merchantId",
42210	//     "accountId"
42211	//   ],
42212	//   "parameters": {
42213	//     "accountId": {
42214	//       "description": "The ID of the account for which to get/update shipping settings.",
42215	//       "format": "uint64",
42216	//       "location": "path",
42217	//       "required": true,
42218	//       "type": "string"
42219	//     },
42220	//     "merchantId": {
42221	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
42222	//       "format": "uint64",
42223	//       "location": "path",
42224	//       "required": true,
42225	//       "type": "string"
42226	//     }
42227	//   },
42228	//   "path": "{merchantId}/shippingsettings/{accountId}",
42229	//   "response": {
42230	//     "$ref": "ShippingSettings"
42231	//   },
42232	//   "scopes": [
42233	//     "https://www.googleapis.com/auth/content"
42234	//   ]
42235	// }
42236
42237}
42238
42239// method id "content.shippingsettings.getsupportedcarriers":
42240
42241type ShippingsettingsGetsupportedcarriersCall struct {
42242	s            *APIService
42243	merchantId   uint64
42244	urlParams_   gensupport.URLParams
42245	ifNoneMatch_ string
42246	ctx_         context.Context
42247	header_      http.Header
42248}
42249
42250// Getsupportedcarriers: Retrieves supported carriers and carrier
42251// services for an account.
42252//
42253// - merchantId: The ID of the account for which to retrieve the
42254//   supported carriers.
42255func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
42256	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42257	c.merchantId = merchantId
42258	return c
42259}
42260
42261// Fields allows partial responses to be retrieved. See
42262// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42263// for more information.
42264func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
42265	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42266	return c
42267}
42268
42269// IfNoneMatch sets the optional parameter which makes the operation
42270// fail if the object's ETag matches the given value. This is useful for
42271// getting updates only after the object has changed since the last
42272// request. Use googleapi.IsNotModified to check whether the response
42273// error from Do is the result of In-None-Match.
42274func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
42275	c.ifNoneMatch_ = entityTag
42276	return c
42277}
42278
42279// Context sets the context to be used in this call's Do method. Any
42280// pending HTTP request will be aborted if the provided context is
42281// canceled.
42282func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
42283	c.ctx_ = ctx
42284	return c
42285}
42286
42287// Header returns an http.Header that can be modified by the caller to
42288// add HTTP headers to the request.
42289func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
42290	if c.header_ == nil {
42291		c.header_ = make(http.Header)
42292	}
42293	return c.header_
42294}
42295
42296func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
42297	reqHeaders := make(http.Header)
42298	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
42299	for k, v := range c.header_ {
42300		reqHeaders[k] = v
42301	}
42302	reqHeaders.Set("User-Agent", c.s.userAgent())
42303	if c.ifNoneMatch_ != "" {
42304		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42305	}
42306	var body io.Reader = nil
42307	c.urlParams_.Set("alt", alt)
42308	c.urlParams_.Set("prettyPrint", "false")
42309	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedCarriers")
42310	urls += "?" + c.urlParams_.Encode()
42311	req, err := http.NewRequest("GET", urls, body)
42312	if err != nil {
42313		return nil, err
42314	}
42315	req.Header = reqHeaders
42316	googleapi.Expand(req.URL, map[string]string{
42317		"merchantId": strconv.FormatUint(c.merchantId, 10),
42318	})
42319	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42320}
42321
42322// Do executes the "content.shippingsettings.getsupportedcarriers" call.
42323// Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
42324// will be non-nil. Any non-2xx status code is an error. Response
42325// headers are in either
42326// *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
42327// or (if a response was returned at all) in
42328// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
42329// whether the returned error was because http.StatusNotModified was
42330// returned.
42331func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
42332	gensupport.SetOptions(c.urlParams_, opts...)
42333	res, err := c.doRequest("json")
42334	if res != nil && res.StatusCode == http.StatusNotModified {
42335		if res.Body != nil {
42336			res.Body.Close()
42337		}
42338		return nil, &googleapi.Error{
42339			Code:   res.StatusCode,
42340			Header: res.Header,
42341		}
42342	}
42343	if err != nil {
42344		return nil, err
42345	}
42346	defer googleapi.CloseBody(res)
42347	if err := googleapi.CheckResponse(res); err != nil {
42348		return nil, err
42349	}
42350	ret := &ShippingsettingsGetSupportedCarriersResponse{
42351		ServerResponse: googleapi.ServerResponse{
42352			Header:         res.Header,
42353			HTTPStatusCode: res.StatusCode,
42354		},
42355	}
42356	target := &ret
42357	if err := gensupport.DecodeResponse(target, res); err != nil {
42358		return nil, err
42359	}
42360	return ret, nil
42361	// {
42362	//   "description": "Retrieves supported carriers and carrier services for an account.",
42363	//   "flatPath": "{merchantId}/supportedCarriers",
42364	//   "httpMethod": "GET",
42365	//   "id": "content.shippingsettings.getsupportedcarriers",
42366	//   "parameterOrder": [
42367	//     "merchantId"
42368	//   ],
42369	//   "parameters": {
42370	//     "merchantId": {
42371	//       "description": "The ID of the account for which to retrieve the supported carriers.",
42372	//       "format": "uint64",
42373	//       "location": "path",
42374	//       "required": true,
42375	//       "type": "string"
42376	//     }
42377	//   },
42378	//   "path": "{merchantId}/supportedCarriers",
42379	//   "response": {
42380	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
42381	//   },
42382	//   "scopes": [
42383	//     "https://www.googleapis.com/auth/content"
42384	//   ]
42385	// }
42386
42387}
42388
42389// method id "content.shippingsettings.getsupportedholidays":
42390
42391type ShippingsettingsGetsupportedholidaysCall struct {
42392	s            *APIService
42393	merchantId   uint64
42394	urlParams_   gensupport.URLParams
42395	ifNoneMatch_ string
42396	ctx_         context.Context
42397	header_      http.Header
42398}
42399
42400// Getsupportedholidays: Retrieves supported holidays for an account.
42401//
42402// - merchantId: The ID of the account for which to retrieve the
42403//   supported holidays.
42404func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
42405	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42406	c.merchantId = merchantId
42407	return c
42408}
42409
42410// Fields allows partial responses to be retrieved. See
42411// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42412// for more information.
42413func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
42414	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42415	return c
42416}
42417
42418// IfNoneMatch sets the optional parameter which makes the operation
42419// fail if the object's ETag matches the given value. This is useful for
42420// getting updates only after the object has changed since the last
42421// request. Use googleapi.IsNotModified to check whether the response
42422// error from Do is the result of In-None-Match.
42423func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
42424	c.ifNoneMatch_ = entityTag
42425	return c
42426}
42427
42428// Context sets the context to be used in this call's Do method. Any
42429// pending HTTP request will be aborted if the provided context is
42430// canceled.
42431func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
42432	c.ctx_ = ctx
42433	return c
42434}
42435
42436// Header returns an http.Header that can be modified by the caller to
42437// add HTTP headers to the request.
42438func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
42439	if c.header_ == nil {
42440		c.header_ = make(http.Header)
42441	}
42442	return c.header_
42443}
42444
42445func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
42446	reqHeaders := make(http.Header)
42447	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
42448	for k, v := range c.header_ {
42449		reqHeaders[k] = v
42450	}
42451	reqHeaders.Set("User-Agent", c.s.userAgent())
42452	if c.ifNoneMatch_ != "" {
42453		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42454	}
42455	var body io.Reader = nil
42456	c.urlParams_.Set("alt", alt)
42457	c.urlParams_.Set("prettyPrint", "false")
42458	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedHolidays")
42459	urls += "?" + c.urlParams_.Encode()
42460	req, err := http.NewRequest("GET", urls, body)
42461	if err != nil {
42462		return nil, err
42463	}
42464	req.Header = reqHeaders
42465	googleapi.Expand(req.URL, map[string]string{
42466		"merchantId": strconv.FormatUint(c.merchantId, 10),
42467	})
42468	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42469}
42470
42471// Do executes the "content.shippingsettings.getsupportedholidays" call.
42472// Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
42473// will be non-nil. Any non-2xx status code is an error. Response
42474// headers are in either
42475// *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
42476// or (if a response was returned at all) in
42477// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
42478// whether the returned error was because http.StatusNotModified was
42479// returned.
42480func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
42481	gensupport.SetOptions(c.urlParams_, opts...)
42482	res, err := c.doRequest("json")
42483	if res != nil && res.StatusCode == http.StatusNotModified {
42484		if res.Body != nil {
42485			res.Body.Close()
42486		}
42487		return nil, &googleapi.Error{
42488			Code:   res.StatusCode,
42489			Header: res.Header,
42490		}
42491	}
42492	if err != nil {
42493		return nil, err
42494	}
42495	defer googleapi.CloseBody(res)
42496	if err := googleapi.CheckResponse(res); err != nil {
42497		return nil, err
42498	}
42499	ret := &ShippingsettingsGetSupportedHolidaysResponse{
42500		ServerResponse: googleapi.ServerResponse{
42501			Header:         res.Header,
42502			HTTPStatusCode: res.StatusCode,
42503		},
42504	}
42505	target := &ret
42506	if err := gensupport.DecodeResponse(target, res); err != nil {
42507		return nil, err
42508	}
42509	return ret, nil
42510	// {
42511	//   "description": "Retrieves supported holidays for an account.",
42512	//   "flatPath": "{merchantId}/supportedHolidays",
42513	//   "httpMethod": "GET",
42514	//   "id": "content.shippingsettings.getsupportedholidays",
42515	//   "parameterOrder": [
42516	//     "merchantId"
42517	//   ],
42518	//   "parameters": {
42519	//     "merchantId": {
42520	//       "description": "The ID of the account for which to retrieve the supported holidays.",
42521	//       "format": "uint64",
42522	//       "location": "path",
42523	//       "required": true,
42524	//       "type": "string"
42525	//     }
42526	//   },
42527	//   "path": "{merchantId}/supportedHolidays",
42528	//   "response": {
42529	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
42530	//   },
42531	//   "scopes": [
42532	//     "https://www.googleapis.com/auth/content"
42533	//   ]
42534	// }
42535
42536}
42537
42538// method id "content.shippingsettings.getsupportedpickupservices":
42539
42540type ShippingsettingsGetsupportedpickupservicesCall struct {
42541	s            *APIService
42542	merchantId   uint64
42543	urlParams_   gensupport.URLParams
42544	ifNoneMatch_ string
42545	ctx_         context.Context
42546	header_      http.Header
42547}
42548
42549// Getsupportedpickupservices: Retrieves supported pickup services for
42550// an account.
42551//
42552// - merchantId: The ID of the account for which to retrieve the
42553//   supported pickup services.
42554func (r *ShippingsettingsService) Getsupportedpickupservices(merchantId uint64) *ShippingsettingsGetsupportedpickupservicesCall {
42555	c := &ShippingsettingsGetsupportedpickupservicesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42556	c.merchantId = merchantId
42557	return c
42558}
42559
42560// Fields allows partial responses to be retrieved. See
42561// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42562// for more information.
42563func (c *ShippingsettingsGetsupportedpickupservicesCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedpickupservicesCall {
42564	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42565	return c
42566}
42567
42568// IfNoneMatch sets the optional parameter which makes the operation
42569// fail if the object's ETag matches the given value. This is useful for
42570// getting updates only after the object has changed since the last
42571// request. Use googleapi.IsNotModified to check whether the response
42572// error from Do is the result of In-None-Match.
42573func (c *ShippingsettingsGetsupportedpickupservicesCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedpickupservicesCall {
42574	c.ifNoneMatch_ = entityTag
42575	return c
42576}
42577
42578// Context sets the context to be used in this call's Do method. Any
42579// pending HTTP request will be aborted if the provided context is
42580// canceled.
42581func (c *ShippingsettingsGetsupportedpickupservicesCall) Context(ctx context.Context) *ShippingsettingsGetsupportedpickupservicesCall {
42582	c.ctx_ = ctx
42583	return c
42584}
42585
42586// Header returns an http.Header that can be modified by the caller to
42587// add HTTP headers to the request.
42588func (c *ShippingsettingsGetsupportedpickupservicesCall) Header() http.Header {
42589	if c.header_ == nil {
42590		c.header_ = make(http.Header)
42591	}
42592	return c.header_
42593}
42594
42595func (c *ShippingsettingsGetsupportedpickupservicesCall) doRequest(alt string) (*http.Response, error) {
42596	reqHeaders := make(http.Header)
42597	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
42598	for k, v := range c.header_ {
42599		reqHeaders[k] = v
42600	}
42601	reqHeaders.Set("User-Agent", c.s.userAgent())
42602	if c.ifNoneMatch_ != "" {
42603		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42604	}
42605	var body io.Reader = nil
42606	c.urlParams_.Set("alt", alt)
42607	c.urlParams_.Set("prettyPrint", "false")
42608	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedPickupServices")
42609	urls += "?" + c.urlParams_.Encode()
42610	req, err := http.NewRequest("GET", urls, body)
42611	if err != nil {
42612		return nil, err
42613	}
42614	req.Header = reqHeaders
42615	googleapi.Expand(req.URL, map[string]string{
42616		"merchantId": strconv.FormatUint(c.merchantId, 10),
42617	})
42618	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42619}
42620
42621// Do executes the "content.shippingsettings.getsupportedpickupservices" call.
42622// Exactly one of *ShippingsettingsGetSupportedPickupServicesResponse or
42623// error will be non-nil. Any non-2xx status code is an error. Response
42624// headers are in either
42625// *ShippingsettingsGetSupportedPickupServicesResponse.ServerResponse.Hea
42626// der or (if a response was returned at all) in
42627// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
42628// whether the returned error was because http.StatusNotModified was
42629// returned.
42630func (c *ShippingsettingsGetsupportedpickupservicesCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedPickupServicesResponse, error) {
42631	gensupport.SetOptions(c.urlParams_, opts...)
42632	res, err := c.doRequest("json")
42633	if res != nil && res.StatusCode == http.StatusNotModified {
42634		if res.Body != nil {
42635			res.Body.Close()
42636		}
42637		return nil, &googleapi.Error{
42638			Code:   res.StatusCode,
42639			Header: res.Header,
42640		}
42641	}
42642	if err != nil {
42643		return nil, err
42644	}
42645	defer googleapi.CloseBody(res)
42646	if err := googleapi.CheckResponse(res); err != nil {
42647		return nil, err
42648	}
42649	ret := &ShippingsettingsGetSupportedPickupServicesResponse{
42650		ServerResponse: googleapi.ServerResponse{
42651			Header:         res.Header,
42652			HTTPStatusCode: res.StatusCode,
42653		},
42654	}
42655	target := &ret
42656	if err := gensupport.DecodeResponse(target, res); err != nil {
42657		return nil, err
42658	}
42659	return ret, nil
42660	// {
42661	//   "description": "Retrieves supported pickup services for an account.",
42662	//   "flatPath": "{merchantId}/supportedPickupServices",
42663	//   "httpMethod": "GET",
42664	//   "id": "content.shippingsettings.getsupportedpickupservices",
42665	//   "parameterOrder": [
42666	//     "merchantId"
42667	//   ],
42668	//   "parameters": {
42669	//     "merchantId": {
42670	//       "description": "The ID of the account for which to retrieve the supported pickup services.",
42671	//       "format": "uint64",
42672	//       "location": "path",
42673	//       "required": true,
42674	//       "type": "string"
42675	//     }
42676	//   },
42677	//   "path": "{merchantId}/supportedPickupServices",
42678	//   "response": {
42679	//     "$ref": "ShippingsettingsGetSupportedPickupServicesResponse"
42680	//   },
42681	//   "scopes": [
42682	//     "https://www.googleapis.com/auth/content"
42683	//   ]
42684	// }
42685
42686}
42687
42688// method id "content.shippingsettings.list":
42689
42690type ShippingsettingsListCall struct {
42691	s            *APIService
42692	merchantId   uint64
42693	urlParams_   gensupport.URLParams
42694	ifNoneMatch_ string
42695	ctx_         context.Context
42696	header_      http.Header
42697}
42698
42699// List: Lists the shipping settings of the sub-accounts in your
42700// Merchant Center account.
42701//
42702// - merchantId: The ID of the managing account. This must be a
42703//   multi-client account.
42704func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
42705	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42706	c.merchantId = merchantId
42707	return c
42708}
42709
42710// MaxResults sets the optional parameter "maxResults": The maximum
42711// number of shipping settings to return in the response, used for
42712// paging.
42713func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
42714	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
42715	return c
42716}
42717
42718// PageToken sets the optional parameter "pageToken": The token returned
42719// by the previous request.
42720func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
42721	c.urlParams_.Set("pageToken", pageToken)
42722	return c
42723}
42724
42725// Fields allows partial responses to be retrieved. See
42726// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42727// for more information.
42728func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
42729	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42730	return c
42731}
42732
42733// IfNoneMatch sets the optional parameter which makes the operation
42734// fail if the object's ETag matches the given value. This is useful for
42735// getting updates only after the object has changed since the last
42736// request. Use googleapi.IsNotModified to check whether the response
42737// error from Do is the result of In-None-Match.
42738func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
42739	c.ifNoneMatch_ = entityTag
42740	return c
42741}
42742
42743// Context sets the context to be used in this call's Do method. Any
42744// pending HTTP request will be aborted if the provided context is
42745// canceled.
42746func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
42747	c.ctx_ = ctx
42748	return c
42749}
42750
42751// Header returns an http.Header that can be modified by the caller to
42752// add HTTP headers to the request.
42753func (c *ShippingsettingsListCall) Header() http.Header {
42754	if c.header_ == nil {
42755		c.header_ = make(http.Header)
42756	}
42757	return c.header_
42758}
42759
42760func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
42761	reqHeaders := make(http.Header)
42762	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
42763	for k, v := range c.header_ {
42764		reqHeaders[k] = v
42765	}
42766	reqHeaders.Set("User-Agent", c.s.userAgent())
42767	if c.ifNoneMatch_ != "" {
42768		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42769	}
42770	var body io.Reader = nil
42771	c.urlParams_.Set("alt", alt)
42772	c.urlParams_.Set("prettyPrint", "false")
42773	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings")
42774	urls += "?" + c.urlParams_.Encode()
42775	req, err := http.NewRequest("GET", urls, body)
42776	if err != nil {
42777		return nil, err
42778	}
42779	req.Header = reqHeaders
42780	googleapi.Expand(req.URL, map[string]string{
42781		"merchantId": strconv.FormatUint(c.merchantId, 10),
42782	})
42783	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42784}
42785
42786// Do executes the "content.shippingsettings.list" call.
42787// Exactly one of *ShippingsettingsListResponse or error will be
42788// non-nil. Any non-2xx status code is an error. Response headers are in
42789// either *ShippingsettingsListResponse.ServerResponse.Header or (if a
42790// response was returned at all) in error.(*googleapi.Error).Header. Use
42791// googleapi.IsNotModified to check whether the returned error was
42792// because http.StatusNotModified was returned.
42793func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
42794	gensupport.SetOptions(c.urlParams_, opts...)
42795	res, err := c.doRequest("json")
42796	if res != nil && res.StatusCode == http.StatusNotModified {
42797		if res.Body != nil {
42798			res.Body.Close()
42799		}
42800		return nil, &googleapi.Error{
42801			Code:   res.StatusCode,
42802			Header: res.Header,
42803		}
42804	}
42805	if err != nil {
42806		return nil, err
42807	}
42808	defer googleapi.CloseBody(res)
42809	if err := googleapi.CheckResponse(res); err != nil {
42810		return nil, err
42811	}
42812	ret := &ShippingsettingsListResponse{
42813		ServerResponse: googleapi.ServerResponse{
42814			Header:         res.Header,
42815			HTTPStatusCode: res.StatusCode,
42816		},
42817	}
42818	target := &ret
42819	if err := gensupport.DecodeResponse(target, res); err != nil {
42820		return nil, err
42821	}
42822	return ret, nil
42823	// {
42824	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
42825	//   "flatPath": "{merchantId}/shippingsettings",
42826	//   "httpMethod": "GET",
42827	//   "id": "content.shippingsettings.list",
42828	//   "parameterOrder": [
42829	//     "merchantId"
42830	//   ],
42831	//   "parameters": {
42832	//     "maxResults": {
42833	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
42834	//       "format": "uint32",
42835	//       "location": "query",
42836	//       "type": "integer"
42837	//     },
42838	//     "merchantId": {
42839	//       "description": "The ID of the managing account. This must be a multi-client account.",
42840	//       "format": "uint64",
42841	//       "location": "path",
42842	//       "required": true,
42843	//       "type": "string"
42844	//     },
42845	//     "pageToken": {
42846	//       "description": "The token returned by the previous request.",
42847	//       "location": "query",
42848	//       "type": "string"
42849	//     }
42850	//   },
42851	//   "path": "{merchantId}/shippingsettings",
42852	//   "response": {
42853	//     "$ref": "ShippingsettingsListResponse"
42854	//   },
42855	//   "scopes": [
42856	//     "https://www.googleapis.com/auth/content"
42857	//   ]
42858	// }
42859
42860}
42861
42862// Pages invokes f for each page of results.
42863// A non-nil error returned from f will halt the iteration.
42864// The provided context supersedes any context provided to the Context method.
42865func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
42866	c.ctx_ = ctx
42867	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
42868	for {
42869		x, err := c.Do()
42870		if err != nil {
42871			return err
42872		}
42873		if err := f(x); err != nil {
42874			return err
42875		}
42876		if x.NextPageToken == "" {
42877			return nil
42878		}
42879		c.PageToken(x.NextPageToken)
42880	}
42881}
42882
42883// method id "content.shippingsettings.update":
42884
42885type ShippingsettingsUpdateCall struct {
42886	s                *APIService
42887	merchantId       uint64
42888	accountId        uint64
42889	shippingsettings *ShippingSettings
42890	urlParams_       gensupport.URLParams
42891	ctx_             context.Context
42892	header_          http.Header
42893}
42894
42895// Update: Updates the shipping settings of the account. Any fields that
42896// are not provided are deleted from the resource.
42897//
42898// - accountId: The ID of the account for which to get/update shipping
42899//   settings.
42900// - merchantId: The ID of the managing account. If this parameter is
42901//   not the same as accountId, then this account must be a multi-client
42902//   account and `accountId` must be the ID of a sub-account of this
42903//   account.
42904func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
42905	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42906	c.merchantId = merchantId
42907	c.accountId = accountId
42908	c.shippingsettings = shippingsettings
42909	return c
42910}
42911
42912// Fields allows partial responses to be retrieved. See
42913// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42914// for more information.
42915func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
42916	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42917	return c
42918}
42919
42920// Context sets the context to be used in this call's Do method. Any
42921// pending HTTP request will be aborted if the provided context is
42922// canceled.
42923func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
42924	c.ctx_ = ctx
42925	return c
42926}
42927
42928// Header returns an http.Header that can be modified by the caller to
42929// add HTTP headers to the request.
42930func (c *ShippingsettingsUpdateCall) Header() http.Header {
42931	if c.header_ == nil {
42932		c.header_ = make(http.Header)
42933	}
42934	return c.header_
42935}
42936
42937func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
42938	reqHeaders := make(http.Header)
42939	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
42940	for k, v := range c.header_ {
42941		reqHeaders[k] = v
42942	}
42943	reqHeaders.Set("User-Agent", c.s.userAgent())
42944	var body io.Reader = nil
42945	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
42946	if err != nil {
42947		return nil, err
42948	}
42949	reqHeaders.Set("Content-Type", "application/json")
42950	c.urlParams_.Set("alt", alt)
42951	c.urlParams_.Set("prettyPrint", "false")
42952	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
42953	urls += "?" + c.urlParams_.Encode()
42954	req, err := http.NewRequest("PUT", urls, body)
42955	if err != nil {
42956		return nil, err
42957	}
42958	req.Header = reqHeaders
42959	googleapi.Expand(req.URL, map[string]string{
42960		"merchantId": strconv.FormatUint(c.merchantId, 10),
42961		"accountId":  strconv.FormatUint(c.accountId, 10),
42962	})
42963	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42964}
42965
42966// Do executes the "content.shippingsettings.update" call.
42967// Exactly one of *ShippingSettings or error will be non-nil. Any
42968// non-2xx status code is an error. Response headers are in either
42969// *ShippingSettings.ServerResponse.Header or (if a response was
42970// returned at all) in error.(*googleapi.Error).Header. Use
42971// googleapi.IsNotModified to check whether the returned error was
42972// because http.StatusNotModified was returned.
42973func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
42974	gensupport.SetOptions(c.urlParams_, opts...)
42975	res, err := c.doRequest("json")
42976	if res != nil && res.StatusCode == http.StatusNotModified {
42977		if res.Body != nil {
42978			res.Body.Close()
42979		}
42980		return nil, &googleapi.Error{
42981			Code:   res.StatusCode,
42982			Header: res.Header,
42983		}
42984	}
42985	if err != nil {
42986		return nil, err
42987	}
42988	defer googleapi.CloseBody(res)
42989	if err := googleapi.CheckResponse(res); err != nil {
42990		return nil, err
42991	}
42992	ret := &ShippingSettings{
42993		ServerResponse: googleapi.ServerResponse{
42994			Header:         res.Header,
42995			HTTPStatusCode: res.StatusCode,
42996		},
42997	}
42998	target := &ret
42999	if err := gensupport.DecodeResponse(target, res); err != nil {
43000		return nil, err
43001	}
43002	return ret, nil
43003	// {
43004	//   "description": "Updates the shipping settings of the account. Any fields that are not provided are deleted from the resource.",
43005	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
43006	//   "httpMethod": "PUT",
43007	//   "id": "content.shippingsettings.update",
43008	//   "parameterOrder": [
43009	//     "merchantId",
43010	//     "accountId"
43011	//   ],
43012	//   "parameters": {
43013	//     "accountId": {
43014	//       "description": "The ID of the account for which to get/update shipping settings.",
43015	//       "format": "uint64",
43016	//       "location": "path",
43017	//       "required": true,
43018	//       "type": "string"
43019	//     },
43020	//     "merchantId": {
43021	//       "description": "The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and `accountId` must be the ID of a sub-account of this account.",
43022	//       "format": "uint64",
43023	//       "location": "path",
43024	//       "required": true,
43025	//       "type": "string"
43026	//     }
43027	//   },
43028	//   "path": "{merchantId}/shippingsettings/{accountId}",
43029	//   "request": {
43030	//     "$ref": "ShippingSettings"
43031	//   },
43032	//   "response": {
43033	//     "$ref": "ShippingSettings"
43034	//   },
43035	//   "scopes": [
43036	//     "https://www.googleapis.com/auth/content"
43037	//   ]
43038	// }
43039
43040}
43041
43042// method id "content.shoppingadsprogram.get":
43043
43044type ShoppingadsprogramGetCall struct {
43045	s            *APIService
43046	merchantId   int64
43047	urlParams_   gensupport.URLParams
43048	ifNoneMatch_ string
43049	ctx_         context.Context
43050	header_      http.Header
43051}
43052
43053// Get: Retrieves the status and review eligibility for the Shopping Ads
43054// program.
43055//
43056// - merchantId: The ID of the account.
43057func (r *ShoppingadsprogramService) Get(merchantId int64) *ShoppingadsprogramGetCall {
43058	c := &ShoppingadsprogramGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43059	c.merchantId = merchantId
43060	return c
43061}
43062
43063// Fields allows partial responses to be retrieved. See
43064// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43065// for more information.
43066func (c *ShoppingadsprogramGetCall) Fields(s ...googleapi.Field) *ShoppingadsprogramGetCall {
43067	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43068	return c
43069}
43070
43071// IfNoneMatch sets the optional parameter which makes the operation
43072// fail if the object's ETag matches the given value. This is useful for
43073// getting updates only after the object has changed since the last
43074// request. Use googleapi.IsNotModified to check whether the response
43075// error from Do is the result of In-None-Match.
43076func (c *ShoppingadsprogramGetCall) IfNoneMatch(entityTag string) *ShoppingadsprogramGetCall {
43077	c.ifNoneMatch_ = entityTag
43078	return c
43079}
43080
43081// Context sets the context to be used in this call's Do method. Any
43082// pending HTTP request will be aborted if the provided context is
43083// canceled.
43084func (c *ShoppingadsprogramGetCall) Context(ctx context.Context) *ShoppingadsprogramGetCall {
43085	c.ctx_ = ctx
43086	return c
43087}
43088
43089// Header returns an http.Header that can be modified by the caller to
43090// add HTTP headers to the request.
43091func (c *ShoppingadsprogramGetCall) Header() http.Header {
43092	if c.header_ == nil {
43093		c.header_ = make(http.Header)
43094	}
43095	return c.header_
43096}
43097
43098func (c *ShoppingadsprogramGetCall) doRequest(alt string) (*http.Response, error) {
43099	reqHeaders := make(http.Header)
43100	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
43101	for k, v := range c.header_ {
43102		reqHeaders[k] = v
43103	}
43104	reqHeaders.Set("User-Agent", c.s.userAgent())
43105	if c.ifNoneMatch_ != "" {
43106		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
43107	}
43108	var body io.Reader = nil
43109	c.urlParams_.Set("alt", alt)
43110	c.urlParams_.Set("prettyPrint", "false")
43111	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shoppingadsprogram")
43112	urls += "?" + c.urlParams_.Encode()
43113	req, err := http.NewRequest("GET", urls, body)
43114	if err != nil {
43115		return nil, err
43116	}
43117	req.Header = reqHeaders
43118	googleapi.Expand(req.URL, map[string]string{
43119		"merchantId": strconv.FormatInt(c.merchantId, 10),
43120	})
43121	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43122}
43123
43124// Do executes the "content.shoppingadsprogram.get" call.
43125// Exactly one of *ShoppingAdsProgramStatus or error will be non-nil.
43126// Any non-2xx status code is an error. Response headers are in either
43127// *ShoppingAdsProgramStatus.ServerResponse.Header or (if a response was
43128// returned at all) in error.(*googleapi.Error).Header. Use
43129// googleapi.IsNotModified to check whether the returned error was
43130// because http.StatusNotModified was returned.
43131func (c *ShoppingadsprogramGetCall) Do(opts ...googleapi.CallOption) (*ShoppingAdsProgramStatus, error) {
43132	gensupport.SetOptions(c.urlParams_, opts...)
43133	res, err := c.doRequest("json")
43134	if res != nil && res.StatusCode == http.StatusNotModified {
43135		if res.Body != nil {
43136			res.Body.Close()
43137		}
43138		return nil, &googleapi.Error{
43139			Code:   res.StatusCode,
43140			Header: res.Header,
43141		}
43142	}
43143	if err != nil {
43144		return nil, err
43145	}
43146	defer googleapi.CloseBody(res)
43147	if err := googleapi.CheckResponse(res); err != nil {
43148		return nil, err
43149	}
43150	ret := &ShoppingAdsProgramStatus{
43151		ServerResponse: googleapi.ServerResponse{
43152			Header:         res.Header,
43153			HTTPStatusCode: res.StatusCode,
43154		},
43155	}
43156	target := &ret
43157	if err := gensupport.DecodeResponse(target, res); err != nil {
43158		return nil, err
43159	}
43160	return ret, nil
43161	// {
43162	//   "description": "Retrieves the status and review eligibility for the Shopping Ads program.",
43163	//   "flatPath": "{merchantId}/shoppingadsprogram",
43164	//   "httpMethod": "GET",
43165	//   "id": "content.shoppingadsprogram.get",
43166	//   "parameterOrder": [
43167	//     "merchantId"
43168	//   ],
43169	//   "parameters": {
43170	//     "merchantId": {
43171	//       "description": "Required. The ID of the account.",
43172	//       "format": "int64",
43173	//       "location": "path",
43174	//       "required": true,
43175	//       "type": "string"
43176	//     }
43177	//   },
43178	//   "path": "{merchantId}/shoppingadsprogram",
43179	//   "response": {
43180	//     "$ref": "ShoppingAdsProgramStatus"
43181	//   },
43182	//   "scopes": [
43183	//     "https://www.googleapis.com/auth/content"
43184	//   ]
43185	// }
43186
43187}
43188
43189// method id "content.shoppingadsprogram.requestreview":
43190
43191type ShoppingadsprogramRequestreviewCall struct {
43192	s                               *APIService
43193	merchantId                      int64
43194	requestreviewshoppingadsrequest *RequestReviewShoppingAdsRequest
43195	urlParams_                      gensupport.URLParams
43196	ctx_                            context.Context
43197	header_                         http.Header
43198}
43199
43200// Requestreview: Requests a review for Shopping Ads program in the
43201// provided country.
43202//
43203// - merchantId: The ID of the account.
43204func (r *ShoppingadsprogramService) Requestreview(merchantId int64, requestreviewshoppingadsrequest *RequestReviewShoppingAdsRequest) *ShoppingadsprogramRequestreviewCall {
43205	c := &ShoppingadsprogramRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43206	c.merchantId = merchantId
43207	c.requestreviewshoppingadsrequest = requestreviewshoppingadsrequest
43208	return c
43209}
43210
43211// Fields allows partial responses to be retrieved. See
43212// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43213// for more information.
43214func (c *ShoppingadsprogramRequestreviewCall) Fields(s ...googleapi.Field) *ShoppingadsprogramRequestreviewCall {
43215	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43216	return c
43217}
43218
43219// Context sets the context to be used in this call's Do method. Any
43220// pending HTTP request will be aborted if the provided context is
43221// canceled.
43222func (c *ShoppingadsprogramRequestreviewCall) Context(ctx context.Context) *ShoppingadsprogramRequestreviewCall {
43223	c.ctx_ = ctx
43224	return c
43225}
43226
43227// Header returns an http.Header that can be modified by the caller to
43228// add HTTP headers to the request.
43229func (c *ShoppingadsprogramRequestreviewCall) Header() http.Header {
43230	if c.header_ == nil {
43231		c.header_ = make(http.Header)
43232	}
43233	return c.header_
43234}
43235
43236func (c *ShoppingadsprogramRequestreviewCall) doRequest(alt string) (*http.Response, error) {
43237	reqHeaders := make(http.Header)
43238	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
43239	for k, v := range c.header_ {
43240		reqHeaders[k] = v
43241	}
43242	reqHeaders.Set("User-Agent", c.s.userAgent())
43243	var body io.Reader = nil
43244	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewshoppingadsrequest)
43245	if err != nil {
43246		return nil, err
43247	}
43248	reqHeaders.Set("Content-Type", "application/json")
43249	c.urlParams_.Set("alt", alt)
43250	c.urlParams_.Set("prettyPrint", "false")
43251	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shoppingadsprogram/requestreview")
43252	urls += "?" + c.urlParams_.Encode()
43253	req, err := http.NewRequest("POST", urls, body)
43254	if err != nil {
43255		return nil, err
43256	}
43257	req.Header = reqHeaders
43258	googleapi.Expand(req.URL, map[string]string{
43259		"merchantId": strconv.FormatInt(c.merchantId, 10),
43260	})
43261	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43262}
43263
43264// Do executes the "content.shoppingadsprogram.requestreview" call.
43265func (c *ShoppingadsprogramRequestreviewCall) Do(opts ...googleapi.CallOption) error {
43266	gensupport.SetOptions(c.urlParams_, opts...)
43267	res, err := c.doRequest("json")
43268	if err != nil {
43269		return err
43270	}
43271	defer googleapi.CloseBody(res)
43272	if err := googleapi.CheckResponse(res); err != nil {
43273		return err
43274	}
43275	return nil
43276	// {
43277	//   "description": "Requests a review for Shopping Ads program in the provided country.",
43278	//   "flatPath": "{merchantId}/shoppingadsprogram/requestreview",
43279	//   "httpMethod": "POST",
43280	//   "id": "content.shoppingadsprogram.requestreview",
43281	//   "parameterOrder": [
43282	//     "merchantId"
43283	//   ],
43284	//   "parameters": {
43285	//     "merchantId": {
43286	//       "description": "Required. The ID of the account.",
43287	//       "format": "int64",
43288	//       "location": "path",
43289	//       "required": true,
43290	//       "type": "string"
43291	//     }
43292	//   },
43293	//   "path": "{merchantId}/shoppingadsprogram/requestreview",
43294	//   "request": {
43295	//     "$ref": "RequestReviewShoppingAdsRequest"
43296	//   },
43297	//   "scopes": [
43298	//     "https://www.googleapis.com/auth/content"
43299	//   ]
43300	// }
43301
43302}
43303