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.Liasettings = NewLiasettingsService(s)
129	s.Localinventory = NewLocalinventoryService(s)
130	s.Orderinvoices = NewOrderinvoicesService(s)
131	s.Orderreports = NewOrderreportsService(s)
132	s.Orderreturns = NewOrderreturnsService(s)
133	s.Orders = NewOrdersService(s)
134	s.Ordertrackingsignals = NewOrdertrackingsignalsService(s)
135	s.Pos = NewPosService(s)
136	s.Products = NewProductsService(s)
137	s.Productstatuses = NewProductstatusesService(s)
138	s.Pubsubnotificationsettings = NewPubsubnotificationsettingsService(s)
139	s.Regionalinventory = NewRegionalinventoryService(s)
140	s.Regions = NewRegionsService(s)
141	s.Reports = NewReportsService(s)
142	s.Repricingrules = NewRepricingrulesService(s)
143	s.Returnaddress = NewReturnaddressService(s)
144	s.Returnpolicy = NewReturnpolicyService(s)
145	s.Returnpolicyonline = NewReturnpolicyonlineService(s)
146	s.Settlementreports = NewSettlementreportsService(s)
147	s.Settlementtransactions = NewSettlementtransactionsService(s)
148	s.Shippingsettings = NewShippingsettingsService(s)
149	return s, nil
150}
151
152type APIService struct {
153	client    *http.Client
154	BasePath  string // API endpoint base URL
155	UserAgent string // optional additional User-Agent fragment
156
157	Accounts *AccountsService
158
159	Accountstatuses *AccountstatusesService
160
161	Accounttax *AccounttaxService
162
163	Buyongoogleprograms *BuyongoogleprogramsService
164
165	Collections *CollectionsService
166
167	Collectionstatuses *CollectionstatusesService
168
169	Csses *CssesService
170
171	Datafeeds *DatafeedsService
172
173	Datafeedstatuses *DatafeedstatusesService
174
175	Liasettings *LiasettingsService
176
177	Localinventory *LocalinventoryService
178
179	Orderinvoices *OrderinvoicesService
180
181	Orderreports *OrderreportsService
182
183	Orderreturns *OrderreturnsService
184
185	Orders *OrdersService
186
187	Ordertrackingsignals *OrdertrackingsignalsService
188
189	Pos *PosService
190
191	Products *ProductsService
192
193	Productstatuses *ProductstatusesService
194
195	Pubsubnotificationsettings *PubsubnotificationsettingsService
196
197	Regionalinventory *RegionalinventoryService
198
199	Regions *RegionsService
200
201	Reports *ReportsService
202
203	Repricingrules *RepricingrulesService
204
205	Returnaddress *ReturnaddressService
206
207	Returnpolicy *ReturnpolicyService
208
209	Returnpolicyonline *ReturnpolicyonlineService
210
211	Settlementreports *SettlementreportsService
212
213	Settlementtransactions *SettlementtransactionsService
214
215	Shippingsettings *ShippingsettingsService
216}
217
218func (s *APIService) userAgent() string {
219	if s.UserAgent == "" {
220		return googleapi.UserAgent
221	}
222	return googleapi.UserAgent + " " + s.UserAgent
223}
224
225func NewAccountsService(s *APIService) *AccountsService {
226	rs := &AccountsService{s: s}
227	rs.Credentials = NewAccountsCredentialsService(s)
228	rs.Labels = NewAccountsLabelsService(s)
229	rs.Returncarrier = NewAccountsReturncarrierService(s)
230	return rs
231}
232
233type AccountsService struct {
234	s *APIService
235
236	Credentials *AccountsCredentialsService
237
238	Labels *AccountsLabelsService
239
240	Returncarrier *AccountsReturncarrierService
241}
242
243func NewAccountsCredentialsService(s *APIService) *AccountsCredentialsService {
244	rs := &AccountsCredentialsService{s: s}
245	return rs
246}
247
248type AccountsCredentialsService struct {
249	s *APIService
250}
251
252func NewAccountsLabelsService(s *APIService) *AccountsLabelsService {
253	rs := &AccountsLabelsService{s: s}
254	return rs
255}
256
257type AccountsLabelsService struct {
258	s *APIService
259}
260
261func NewAccountsReturncarrierService(s *APIService) *AccountsReturncarrierService {
262	rs := &AccountsReturncarrierService{s: s}
263	return rs
264}
265
266type AccountsReturncarrierService struct {
267	s *APIService
268}
269
270func NewAccountstatusesService(s *APIService) *AccountstatusesService {
271	rs := &AccountstatusesService{s: s}
272	return rs
273}
274
275type AccountstatusesService struct {
276	s *APIService
277}
278
279func NewAccounttaxService(s *APIService) *AccounttaxService {
280	rs := &AccounttaxService{s: s}
281	return rs
282}
283
284type AccounttaxService struct {
285	s *APIService
286}
287
288func NewBuyongoogleprogramsService(s *APIService) *BuyongoogleprogramsService {
289	rs := &BuyongoogleprogramsService{s: s}
290	return rs
291}
292
293type BuyongoogleprogramsService struct {
294	s *APIService
295}
296
297func NewCollectionsService(s *APIService) *CollectionsService {
298	rs := &CollectionsService{s: s}
299	return rs
300}
301
302type CollectionsService struct {
303	s *APIService
304}
305
306func NewCollectionstatusesService(s *APIService) *CollectionstatusesService {
307	rs := &CollectionstatusesService{s: s}
308	return rs
309}
310
311type CollectionstatusesService struct {
312	s *APIService
313}
314
315func NewCssesService(s *APIService) *CssesService {
316	rs := &CssesService{s: s}
317	return rs
318}
319
320type CssesService struct {
321	s *APIService
322}
323
324func NewDatafeedsService(s *APIService) *DatafeedsService {
325	rs := &DatafeedsService{s: s}
326	return rs
327}
328
329type DatafeedsService struct {
330	s *APIService
331}
332
333func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
334	rs := &DatafeedstatusesService{s: s}
335	return rs
336}
337
338type DatafeedstatusesService struct {
339	s *APIService
340}
341
342func NewLiasettingsService(s *APIService) *LiasettingsService {
343	rs := &LiasettingsService{s: s}
344	return rs
345}
346
347type LiasettingsService struct {
348	s *APIService
349}
350
351func NewLocalinventoryService(s *APIService) *LocalinventoryService {
352	rs := &LocalinventoryService{s: s}
353	return rs
354}
355
356type LocalinventoryService struct {
357	s *APIService
358}
359
360func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
361	rs := &OrderinvoicesService{s: s}
362	return rs
363}
364
365type OrderinvoicesService struct {
366	s *APIService
367}
368
369func NewOrderreportsService(s *APIService) *OrderreportsService {
370	rs := &OrderreportsService{s: s}
371	return rs
372}
373
374type OrderreportsService struct {
375	s *APIService
376}
377
378func NewOrderreturnsService(s *APIService) *OrderreturnsService {
379	rs := &OrderreturnsService{s: s}
380	return rs
381}
382
383type OrderreturnsService struct {
384	s *APIService
385}
386
387func NewOrdersService(s *APIService) *OrdersService {
388	rs := &OrdersService{s: s}
389	return rs
390}
391
392type OrdersService struct {
393	s *APIService
394}
395
396func NewOrdertrackingsignalsService(s *APIService) *OrdertrackingsignalsService {
397	rs := &OrdertrackingsignalsService{s: s}
398	return rs
399}
400
401type OrdertrackingsignalsService struct {
402	s *APIService
403}
404
405func NewPosService(s *APIService) *PosService {
406	rs := &PosService{s: s}
407	return rs
408}
409
410type PosService struct {
411	s *APIService
412}
413
414func NewProductsService(s *APIService) *ProductsService {
415	rs := &ProductsService{s: s}
416	return rs
417}
418
419type ProductsService struct {
420	s *APIService
421}
422
423func NewProductstatusesService(s *APIService) *ProductstatusesService {
424	rs := &ProductstatusesService{s: s}
425	rs.Repricingreports = NewProductstatusesRepricingreportsService(s)
426	return rs
427}
428
429type ProductstatusesService struct {
430	s *APIService
431
432	Repricingreports *ProductstatusesRepricingreportsService
433}
434
435func NewProductstatusesRepricingreportsService(s *APIService) *ProductstatusesRepricingreportsService {
436	rs := &ProductstatusesRepricingreportsService{s: s}
437	return rs
438}
439
440type ProductstatusesRepricingreportsService struct {
441	s *APIService
442}
443
444func NewPubsubnotificationsettingsService(s *APIService) *PubsubnotificationsettingsService {
445	rs := &PubsubnotificationsettingsService{s: s}
446	return rs
447}
448
449type PubsubnotificationsettingsService struct {
450	s *APIService
451}
452
453func NewRegionalinventoryService(s *APIService) *RegionalinventoryService {
454	rs := &RegionalinventoryService{s: s}
455	return rs
456}
457
458type RegionalinventoryService struct {
459	s *APIService
460}
461
462func NewRegionsService(s *APIService) *RegionsService {
463	rs := &RegionsService{s: s}
464	return rs
465}
466
467type RegionsService struct {
468	s *APIService
469}
470
471func NewReportsService(s *APIService) *ReportsService {
472	rs := &ReportsService{s: s}
473	return rs
474}
475
476type ReportsService struct {
477	s *APIService
478}
479
480func NewRepricingrulesService(s *APIService) *RepricingrulesService {
481	rs := &RepricingrulesService{s: s}
482	rs.Repricingreports = NewRepricingrulesRepricingreportsService(s)
483	return rs
484}
485
486type RepricingrulesService struct {
487	s *APIService
488
489	Repricingreports *RepricingrulesRepricingreportsService
490}
491
492func NewRepricingrulesRepricingreportsService(s *APIService) *RepricingrulesRepricingreportsService {
493	rs := &RepricingrulesRepricingreportsService{s: s}
494	return rs
495}
496
497type RepricingrulesRepricingreportsService struct {
498	s *APIService
499}
500
501func NewReturnaddressService(s *APIService) *ReturnaddressService {
502	rs := &ReturnaddressService{s: s}
503	return rs
504}
505
506type ReturnaddressService struct {
507	s *APIService
508}
509
510func NewReturnpolicyService(s *APIService) *ReturnpolicyService {
511	rs := &ReturnpolicyService{s: s}
512	return rs
513}
514
515type ReturnpolicyService struct {
516	s *APIService
517}
518
519func NewReturnpolicyonlineService(s *APIService) *ReturnpolicyonlineService {
520	rs := &ReturnpolicyonlineService{s: s}
521	return rs
522}
523
524type ReturnpolicyonlineService struct {
525	s *APIService
526}
527
528func NewSettlementreportsService(s *APIService) *SettlementreportsService {
529	rs := &SettlementreportsService{s: s}
530	return rs
531}
532
533type SettlementreportsService struct {
534	s *APIService
535}
536
537func NewSettlementtransactionsService(s *APIService) *SettlementtransactionsService {
538	rs := &SettlementtransactionsService{s: s}
539	return rs
540}
541
542type SettlementtransactionsService struct {
543	s *APIService
544}
545
546func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
547	rs := &ShippingsettingsService{s: s}
548	return rs
549}
550
551type ShippingsettingsService struct {
552	s *APIService
553}
554
555// Account: Account data. After the creation of a new account it may
556// take a few minutes before it is fully operational. The methods
557// delete, insert, and update require the admin role.
558type Account struct {
559	// AdsLinks: Linked Ads accounts that are active or pending approval. To
560	// create a new link request, add a new link with status `active` to the
561	// list. It will remain in a `pending` state until approved or rejected
562	// either in the Ads interface or through the AdWords API. To delete an
563	// active link, or to cancel a link request, remove it from the list.
564	AdsLinks []*AccountAdsLink `json:"adsLinks,omitempty"`
565
566	// AdultContent: Indicates whether the merchant sells adult content.
567	AdultContent bool `json:"adultContent,omitempty"`
568
569	// AutomaticLabelIds: Automatically created label IDs that are assigned
570	// to the account by CSS Center.
571	AutomaticLabelIds googleapi.Uint64s `json:"automaticLabelIds,omitempty"`
572
573	// BusinessInformation: The business information of the account.
574	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
575
576	// CssId: ID of CSS the account belongs to.
577	CssId uint64 `json:"cssId,omitempty,string"`
578
579	// GoogleMyBusinessLink: The GMB account which is linked or in the
580	// process of being linked with the Merchant Center account.
581	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
582
583	// Id: Required for update. Merchant Center account ID.
584	Id uint64 `json:"id,omitempty,string"`
585
586	// Kind: Identifies what kind of resource this is. Value: the fixed
587	// string "content#account"
588	Kind string `json:"kind,omitempty"`
589
590	// LabelIds: Manually created label IDs that are assigned to the account
591	// by CSS.
592	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
593
594	// Name: Required. Display name for the account.
595	Name string `json:"name,omitempty"`
596
597	// SellerId: Client-specific, locally-unique, internal ID for the child
598	// account.
599	SellerId string `json:"sellerId,omitempty"`
600
601	// Users: Users with access to the account. Every account (except for
602	// subaccounts) must have at least one admin user.
603	Users []*AccountUser `json:"users,omitempty"`
604
605	// WebsiteUrl: The merchant's website.
606	WebsiteUrl string `json:"websiteUrl,omitempty"`
607
608	// YoutubeChannelLinks: Linked YouTube channels that are active or
609	// pending approval. To create a new link request, add a new link with
610	// status `active` to the list. It will remain in a `pending` state
611	// until approved or rejected in the YT Creator Studio interface. To
612	// delete an active link, or to cancel a link request, remove it from
613	// the list.
614	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
615
616	// ServerResponse contains the HTTP response code and headers from the
617	// server.
618	googleapi.ServerResponse `json:"-"`
619
620	// ForceSendFields is a list of field names (e.g. "AdsLinks") to
621	// unconditionally include in API requests. By default, fields with
622	// empty values are omitted from API requests. However, any non-pointer,
623	// non-interface field appearing in ForceSendFields will be sent to the
624	// server regardless of whether the field is empty or not. This may be
625	// used to include empty fields in Patch requests.
626	ForceSendFields []string `json:"-"`
627
628	// NullFields is a list of field names (e.g. "AdsLinks") to include in
629	// API requests with the JSON null value. By default, fields with empty
630	// values are omitted from API requests. However, any field with an
631	// empty value appearing in NullFields will be sent to the server as
632	// null. It is an error if a field in this list has a non-empty value.
633	// This may be used to include null fields in Patch requests.
634	NullFields []string `json:"-"`
635}
636
637func (s *Account) MarshalJSON() ([]byte, error) {
638	type NoMethod Account
639	raw := NoMethod(*s)
640	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
641}
642
643type AccountAddress struct {
644	// Country: CLDR country code (e.g. "US"). This value cannot be set for
645	// a sub-account of an MCA. All MCA sub-accounts inherit the country of
646	// their parent MCA.
647	Country string `json:"country,omitempty"`
648
649	// Locality: City, town or commune. May also include dependent
650	// localities or sublocalities (e.g. neighborhoods or suburbs).
651	Locality string `json:"locality,omitempty"`
652
653	// PostalCode: Postal code or ZIP (e.g. "94043").
654	PostalCode string `json:"postalCode,omitempty"`
655
656	// Region: Top-level administrative subdivision of the country. For
657	// example, a state like California ("CA") or a province like Quebec
658	// ("QC").
659	Region string `json:"region,omitempty"`
660
661	// StreetAddress: Street-level part of the address.
662	StreetAddress string `json:"streetAddress,omitempty"`
663
664	// ForceSendFields is a list of field names (e.g. "Country") to
665	// unconditionally include in API requests. By default, fields with
666	// empty values are omitted from API requests. However, any non-pointer,
667	// non-interface field appearing in ForceSendFields will be sent to the
668	// server regardless of whether the field is empty or not. This may be
669	// used to include empty fields in Patch requests.
670	ForceSendFields []string `json:"-"`
671
672	// NullFields is a list of field names (e.g. "Country") to include in
673	// API requests with the JSON null value. By default, fields with empty
674	// values are omitted from API requests. However, any field with an
675	// empty value appearing in NullFields will be sent to the server as
676	// null. It is an error if a field in this list has a non-empty value.
677	// This may be used to include null fields in Patch requests.
678	NullFields []string `json:"-"`
679}
680
681func (s *AccountAddress) MarshalJSON() ([]byte, error) {
682	type NoMethod AccountAddress
683	raw := NoMethod(*s)
684	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
685}
686
687type AccountAdsLink struct {
688	// AdsId: Customer ID of the Ads account.
689	AdsId uint64 `json:"adsId,omitempty,string"`
690
691	// Status: Status of the link between this Merchant Center account and
692	// the Ads account. Upon retrieval, it represents the actual status of
693	// the link and can be either `active` if it was approved in Google Ads
694	// or `pending` if it's pending approval. Upon insertion, it represents
695	// the *intended* status of the link. Re-uploading a link with status
696	// `active` when it's still pending or with status `pending` when it's
697	// already active will have no effect: the status will remain unchanged.
698	// Re-uploading a link with deprecated status `inactive` is equivalent
699	// to not submitting the link at all and will delete the link if it was
700	// active or cancel the link request if it was pending. Acceptable
701	// values are: - "active" - "pending"
702	Status string `json:"status,omitempty"`
703
704	// ForceSendFields is a list of field names (e.g. "AdsId") to
705	// unconditionally include in API requests. By default, fields with
706	// empty values are omitted from API requests. However, any non-pointer,
707	// non-interface field appearing in ForceSendFields will be sent to the
708	// server regardless of whether the field is empty or not. This may be
709	// used to include empty fields in Patch requests.
710	ForceSendFields []string `json:"-"`
711
712	// NullFields is a list of field names (e.g. "AdsId") to include in API
713	// requests with the JSON null value. By default, fields with empty
714	// values are omitted from API requests. However, any field with an
715	// empty value appearing in NullFields will be sent to the server as
716	// null. It is an error if a field in this list has a non-empty value.
717	// This may be used to include null fields in Patch requests.
718	NullFields []string `json:"-"`
719}
720
721func (s *AccountAdsLink) MarshalJSON() ([]byte, error) {
722	type NoMethod AccountAdsLink
723	raw := NoMethod(*s)
724	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
725}
726
727type AccountBusinessInformation struct {
728	// Address: The address of the business.
729	Address *AccountAddress `json:"address,omitempty"`
730
731	// CustomerService: The customer service information of the business.
732	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
733
734	// PhoneNumber: The phone number of the business.
735	PhoneNumber string `json:"phoneNumber,omitempty"`
736
737	// ForceSendFields is a list of field names (e.g. "Address") to
738	// unconditionally include in API requests. By default, fields with
739	// empty values are omitted from API requests. However, any non-pointer,
740	// non-interface field appearing in ForceSendFields will be sent to the
741	// server regardless of whether the field is empty or not. This may be
742	// used to include empty fields in Patch requests.
743	ForceSendFields []string `json:"-"`
744
745	// NullFields is a list of field names (e.g. "Address") to include in
746	// API requests with the JSON null value. By default, fields with empty
747	// values are omitted from API requests. However, any field with an
748	// empty value appearing in NullFields will be sent to the server as
749	// null. It is an error if a field in this list has a non-empty value.
750	// This may be used to include null fields in Patch requests.
751	NullFields []string `json:"-"`
752}
753
754func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
755	type NoMethod AccountBusinessInformation
756	raw := NoMethod(*s)
757	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
758}
759
760// AccountCredentials: Credentials allowing Google to call a partner's
761// API on behalf of a merchant.
762type AccountCredentials struct {
763	// AccessToken: An OAuth access token.
764	AccessToken string `json:"accessToken,omitempty"`
765
766	// ExpiresIn: The amount of time, in seconds, after which the access
767	// token is no longer valid.
768	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
769
770	// Purpose: Indicates to Google how Google should use these OAuth
771	// tokens.
772	//
773	// Possible values:
774	//   "ACCOUNT_CREDENTIALS_PURPOSE_UNSPECIFIED" - Unknown purpose.
775	//   "SHOPIFY_ORDER_MANAGEMENT" - The credentials allow Google to manage
776	// Shopify orders on behalf of the merchant.
777	Purpose string `json:"purpose,omitempty"`
778
779	// ServerResponse contains the HTTP response code and headers from the
780	// server.
781	googleapi.ServerResponse `json:"-"`
782
783	// ForceSendFields is a list of field names (e.g. "AccessToken") to
784	// unconditionally include in API requests. By default, fields with
785	// empty values are omitted from API requests. However, any non-pointer,
786	// non-interface field appearing in ForceSendFields will be sent to the
787	// server regardless of whether the field is empty or not. This may be
788	// used to include empty fields in Patch requests.
789	ForceSendFields []string `json:"-"`
790
791	// NullFields is a list of field names (e.g. "AccessToken") to include
792	// in API requests with the JSON null value. By default, fields with
793	// empty values are omitted from API requests. However, any field with
794	// an empty value appearing in NullFields will be sent to the server as
795	// null. It is an error if a field in this list has a non-empty value.
796	// This may be used to include null fields in Patch requests.
797	NullFields []string `json:"-"`
798}
799
800func (s *AccountCredentials) MarshalJSON() ([]byte, error) {
801	type NoMethod AccountCredentials
802	raw := NoMethod(*s)
803	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
804}
805
806type AccountCustomerService struct {
807	// Email: Customer service email.
808	Email string `json:"email,omitempty"`
809
810	// PhoneNumber: Customer service phone number.
811	PhoneNumber string `json:"phoneNumber,omitempty"`
812
813	// Url: Customer service URL.
814	Url string `json:"url,omitempty"`
815
816	// ForceSendFields is a list of field names (e.g. "Email") to
817	// unconditionally include in API requests. By default, fields with
818	// empty values are omitted from API requests. However, any non-pointer,
819	// non-interface field appearing in ForceSendFields will be sent to the
820	// server regardless of whether the field is empty or not. This may be
821	// used to include empty fields in Patch requests.
822	ForceSendFields []string `json:"-"`
823
824	// NullFields is a list of field names (e.g. "Email") to include in API
825	// requests with the JSON null value. By default, fields with empty
826	// values are omitted from API requests. However, any field with an
827	// empty value appearing in NullFields will be sent to the server as
828	// null. It is an error if a field in this list has a non-empty value.
829	// This may be used to include null fields in Patch requests.
830	NullFields []string `json:"-"`
831}
832
833func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
834	type NoMethod AccountCustomerService
835	raw := NoMethod(*s)
836	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
837}
838
839type AccountGoogleMyBusinessLink struct {
840	// GmbAccountId: The ID of the GMB account. If this is provided, then
841	// `gmbEmail` is ignored. The value of this field should match the
842	// `accountId` used by the GMB API.
843	GmbAccountId string `json:"gmbAccountId,omitempty"`
844
845	// GmbEmail: The GMB email address of which a specific account within a
846	// GMB account. A sample account within a GMB account could be a
847	// business account with set of locations, managed under the GMB
848	// account.
849	GmbEmail string `json:"gmbEmail,omitempty"`
850
851	// Status: Status of the link between this Merchant Center account and
852	// the GMB account. Acceptable values are: - "active" - "pending"
853	Status string `json:"status,omitempty"`
854
855	// ForceSendFields is a list of field names (e.g. "GmbAccountId") to
856	// unconditionally include in API requests. By default, fields with
857	// empty values are omitted from API requests. However, any non-pointer,
858	// non-interface field appearing in ForceSendFields will be sent to the
859	// server regardless of whether the field is empty or not. This may be
860	// used to include empty fields in Patch requests.
861	ForceSendFields []string `json:"-"`
862
863	// NullFields is a list of field names (e.g. "GmbAccountId") to include
864	// in API requests with the JSON null value. By default, fields with
865	// empty values are omitted from API requests. However, any field with
866	// an empty value appearing in NullFields will be sent to the server as
867	// null. It is an error if a field in this list has a non-empty value.
868	// This may be used to include null fields in Patch requests.
869	NullFields []string `json:"-"`
870}
871
872func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
873	type NoMethod AccountGoogleMyBusinessLink
874	raw := NoMethod(*s)
875	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
876}
877
878type AccountIdentifier struct {
879	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
880	// (in that case, it represents the aggregator of the subaccount).
881	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
882
883	// MerchantId: The merchant account ID, set for individual accounts and
884	// subaccounts.
885	MerchantId uint64 `json:"merchantId,omitempty,string"`
886
887	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
888	// unconditionally include in API requests. By default, fields with
889	// empty values are omitted from API requests. However, any non-pointer,
890	// non-interface field appearing in ForceSendFields will be sent to the
891	// server regardless of whether the field is empty or not. This may be
892	// used to include empty fields in Patch requests.
893	ForceSendFields []string `json:"-"`
894
895	// NullFields is a list of field names (e.g. "AggregatorId") to include
896	// in API requests with the JSON null value. By default, fields with
897	// empty values are omitted from API requests. However, any field with
898	// an empty value appearing in NullFields will be sent to the server as
899	// null. It is an error if a field in this list has a non-empty value.
900	// This may be used to include null fields in Patch requests.
901	NullFields []string `json:"-"`
902}
903
904func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
905	type NoMethod AccountIdentifier
906	raw := NoMethod(*s)
907	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
908}
909
910// AccountLabel: Label assigned by CSS domain or CSS group to one of its
911// sub-accounts.
912type AccountLabel struct {
913	// AccountId: Immutable. The ID of account this label belongs to.
914	AccountId int64 `json:"accountId,omitempty,string"`
915
916	// Description: The description of this label.
917	Description string `json:"description,omitempty"`
918
919	// LabelId: Output only. The ID of the label.
920	LabelId int64 `json:"labelId,omitempty,string"`
921
922	// LabelType: Output only. The type of this label.
923	//
924	// Possible values:
925	//   "LABEL_TYPE_UNSPECIFIED" - Unknown label type.
926	//   "MANUAL" - Indicates that the label was created manually.
927	//   "AUTOMATIC" - Indicates that the label was created automatically by
928	// CSS Center.
929	LabelType string `json:"labelType,omitempty"`
930
931	// Name: The display name of this label.
932	Name string `json:"name,omitempty"`
933
934	// ServerResponse contains the HTTP response code and headers from the
935	// server.
936	googleapi.ServerResponse `json:"-"`
937
938	// ForceSendFields is a list of field names (e.g. "AccountId") to
939	// unconditionally include in API requests. By default, fields with
940	// empty values are omitted from API requests. However, any non-pointer,
941	// non-interface field appearing in ForceSendFields will be sent to the
942	// server regardless of whether the field is empty or not. This may be
943	// used to include empty fields in Patch requests.
944	ForceSendFields []string `json:"-"`
945
946	// NullFields is a list of field names (e.g. "AccountId") to include in
947	// API requests with the JSON null value. By default, fields with empty
948	// values are omitted from API requests. However, any field with an
949	// empty value appearing in NullFields will be sent to the server as
950	// null. It is an error if a field in this list has a non-empty value.
951	// This may be used to include null fields in Patch requests.
952	NullFields []string `json:"-"`
953}
954
955func (s *AccountLabel) MarshalJSON() ([]byte, error) {
956	type NoMethod AccountLabel
957	raw := NoMethod(*s)
958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
959}
960
961// AccountReturnCarrier:  The return carrier information. This service
962// is designed for merchants enrolled in the Buy on Google program.
963type AccountReturnCarrier struct {
964	// CarrierAccountId: Output only. Immutable. The Google-provided unique
965	// carrier ID, used to update the resource.
966	CarrierAccountId int64 `json:"carrierAccountId,omitempty,string"`
967
968	// CarrierAccountName: Name of the carrier account.
969	CarrierAccountName string `json:"carrierAccountName,omitempty"`
970
971	// CarrierAccountNumber: Number of the carrier account.
972	CarrierAccountNumber string `json:"carrierAccountNumber,omitempty"`
973
974	// CarrierCode: The carrier code enum. Accepts the values FEDEX or UPS.
975	//
976	// Possible values:
977	//   "CARRIER_CODE_UNSPECIFIED" - Carrier not specified
978	//   "FEDEX" - FedEx carrier
979	//   "UPS" - UPS carrier
980	CarrierCode string `json:"carrierCode,omitempty"`
981
982	// ServerResponse contains the HTTP response code and headers from the
983	// server.
984	googleapi.ServerResponse `json:"-"`
985
986	// ForceSendFields is a list of field names (e.g. "CarrierAccountId") to
987	// unconditionally include in API requests. By default, fields with
988	// empty values are omitted from API requests. However, any non-pointer,
989	// non-interface field appearing in ForceSendFields will be sent to the
990	// server regardless of whether the field is empty or not. This may be
991	// used to include empty fields in Patch requests.
992	ForceSendFields []string `json:"-"`
993
994	// NullFields is a list of field names (e.g. "CarrierAccountId") to
995	// include in API requests with the JSON null value. By default, fields
996	// with empty values are omitted from API requests. However, any field
997	// with an empty value appearing in NullFields will be sent to the
998	// server as null. It is an error if a field in this list has a
999	// non-empty value. This may be used to include null fields in Patch
1000	// requests.
1001	NullFields []string `json:"-"`
1002}
1003
1004func (s *AccountReturnCarrier) MarshalJSON() ([]byte, error) {
1005	type NoMethod AccountReturnCarrier
1006	raw := NoMethod(*s)
1007	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1008}
1009
1010// AccountStatus: The status of an account, i.e., information about its
1011// products, which is computed offline and not returned immediately at
1012// insertion time.
1013type AccountStatus struct {
1014	// AccountId: The ID of the account for which the status is reported.
1015	AccountId string `json:"accountId,omitempty"`
1016
1017	// AccountLevelIssues: A list of account level issues.
1018	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
1019
1020	// Kind: Identifies what kind of resource this is. Value: the fixed
1021	// string "content#accountStatus"
1022	Kind string `json:"kind,omitempty"`
1023
1024	// Products: List of product-related data by channel, destination, and
1025	// country. Data in this field may be delayed by up to 30 minutes.
1026	Products []*AccountStatusProducts `json:"products,omitempty"`
1027
1028	// WebsiteClaimed: Whether the account's website is claimed or not.
1029	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
1030
1031	// ServerResponse contains the HTTP response code and headers from the
1032	// server.
1033	googleapi.ServerResponse `json:"-"`
1034
1035	// ForceSendFields is a list of field names (e.g. "AccountId") to
1036	// unconditionally include in API requests. By default, fields with
1037	// empty values are omitted from API requests. However, any non-pointer,
1038	// non-interface field appearing in ForceSendFields will be sent to the
1039	// server regardless of whether the field is empty or not. This may be
1040	// used to include empty fields in Patch requests.
1041	ForceSendFields []string `json:"-"`
1042
1043	// NullFields is a list of field names (e.g. "AccountId") to include in
1044	// API requests with the JSON null value. By default, fields with empty
1045	// values are omitted from API requests. However, any field with an
1046	// empty value appearing in NullFields will be sent to the server as
1047	// null. It is an error if a field in this list has a non-empty value.
1048	// This may be used to include null fields in Patch requests.
1049	NullFields []string `json:"-"`
1050}
1051
1052func (s *AccountStatus) MarshalJSON() ([]byte, error) {
1053	type NoMethod AccountStatus
1054	raw := NoMethod(*s)
1055	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1056}
1057
1058type AccountStatusAccountLevelIssue struct {
1059	// Country: Country for which this issue is reported.
1060	Country string `json:"country,omitempty"`
1061
1062	// Destination: The destination the issue applies to. If this field is
1063	// empty then the issue applies to all available destinations.
1064	Destination string `json:"destination,omitempty"`
1065
1066	// Detail: Additional details about the issue.
1067	Detail string `json:"detail,omitempty"`
1068
1069	// Documentation: The URL of a web page to help resolving this issue.
1070	Documentation string `json:"documentation,omitempty"`
1071
1072	// Id: Issue identifier.
1073	Id string `json:"id,omitempty"`
1074
1075	// Severity: Severity of the issue. Acceptable values are: -
1076	// "critical" - "error" - "suggestion"
1077	Severity string `json:"severity,omitempty"`
1078
1079	// Title: Short description of the issue.
1080	Title string `json:"title,omitempty"`
1081
1082	// ForceSendFields is a list of field names (e.g. "Country") to
1083	// unconditionally include in API requests. By default, fields with
1084	// empty values are omitted from API requests. However, any non-pointer,
1085	// non-interface field appearing in ForceSendFields will be sent to the
1086	// server regardless of whether the field is empty or not. This may be
1087	// used to include empty fields in Patch requests.
1088	ForceSendFields []string `json:"-"`
1089
1090	// NullFields is a list of field names (e.g. "Country") to include in
1091	// API requests with the JSON null value. By default, fields with empty
1092	// values are omitted from API requests. However, any field with an
1093	// empty value appearing in NullFields will be sent to the server as
1094	// null. It is an error if a field in this list has a non-empty value.
1095	// This may be used to include null fields in Patch requests.
1096	NullFields []string `json:"-"`
1097}
1098
1099func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
1100	type NoMethod AccountStatusAccountLevelIssue
1101	raw := NoMethod(*s)
1102	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1103}
1104
1105type AccountStatusItemLevelIssue struct {
1106	// AttributeName: The attribute's name, if the issue is caused by a
1107	// single attribute.
1108	AttributeName string `json:"attributeName,omitempty"`
1109
1110	// Code: The error code of the issue.
1111	Code string `json:"code,omitempty"`
1112
1113	// Description: A short issue description in English.
1114	Description string `json:"description,omitempty"`
1115
1116	// Detail: A detailed issue description in English.
1117	Detail string `json:"detail,omitempty"`
1118
1119	// Documentation: The URL of a web page to help with resolving this
1120	// issue.
1121	Documentation string `json:"documentation,omitempty"`
1122
1123	// NumItems: Number of items with this issue.
1124	NumItems int64 `json:"numItems,omitempty,string"`
1125
1126	// Resolution: Whether the issue can be resolved by the merchant.
1127	Resolution string `json:"resolution,omitempty"`
1128
1129	// Servability: How this issue affects serving of the offer.
1130	Servability string `json:"servability,omitempty"`
1131
1132	// ForceSendFields is a list of field names (e.g. "AttributeName") to
1133	// unconditionally include in API requests. By default, fields with
1134	// empty values are omitted from API requests. However, any non-pointer,
1135	// non-interface field appearing in ForceSendFields will be sent to the
1136	// server regardless of whether the field is empty or not. This may be
1137	// used to include empty fields in Patch requests.
1138	ForceSendFields []string `json:"-"`
1139
1140	// NullFields is a list of field names (e.g. "AttributeName") to include
1141	// in API requests with the JSON null value. By default, fields with
1142	// empty values are omitted from API requests. However, any field with
1143	// an empty value appearing in NullFields will be sent to the server as
1144	// null. It is an error if a field in this list has a non-empty value.
1145	// This may be used to include null fields in Patch requests.
1146	NullFields []string `json:"-"`
1147}
1148
1149func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
1150	type NoMethod AccountStatusItemLevelIssue
1151	raw := NoMethod(*s)
1152	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1153}
1154
1155type AccountStatusProducts struct {
1156	// Channel: The channel the data applies to. Acceptable values are: -
1157	// "local" - "online"
1158	Channel string `json:"channel,omitempty"`
1159
1160	// Country: The country the data applies to.
1161	Country string `json:"country,omitempty"`
1162
1163	// Destination: The destination the data applies to.
1164	Destination string `json:"destination,omitempty"`
1165
1166	// ItemLevelIssues: List of item-level issues.
1167	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
1168
1169	// Statistics: Aggregated product statistics.
1170	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
1171
1172	// ForceSendFields is a list of field names (e.g. "Channel") to
1173	// unconditionally include in API requests. By default, fields with
1174	// empty values are omitted from API requests. However, any non-pointer,
1175	// non-interface field appearing in ForceSendFields will be sent to the
1176	// server regardless of whether the field is empty or not. This may be
1177	// used to include empty fields in Patch requests.
1178	ForceSendFields []string `json:"-"`
1179
1180	// NullFields is a list of field names (e.g. "Channel") to include in
1181	// API requests with the JSON null value. By default, fields with empty
1182	// values are omitted from API requests. However, any field with an
1183	// empty value appearing in NullFields will be sent to the server as
1184	// null. It is an error if a field in this list has a non-empty value.
1185	// This may be used to include null fields in Patch requests.
1186	NullFields []string `json:"-"`
1187}
1188
1189func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
1190	type NoMethod AccountStatusProducts
1191	raw := NoMethod(*s)
1192	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1193}
1194
1195type AccountStatusStatistics struct {
1196	// Active: Number of active offers.
1197	Active int64 `json:"active,omitempty,string"`
1198
1199	// Disapproved: Number of disapproved offers.
1200	Disapproved int64 `json:"disapproved,omitempty,string"`
1201
1202	// Expiring: Number of expiring offers.
1203	Expiring int64 `json:"expiring,omitempty,string"`
1204
1205	// Pending: Number of pending offers.
1206	Pending int64 `json:"pending,omitempty,string"`
1207
1208	// ForceSendFields is a list of field names (e.g. "Active") to
1209	// unconditionally include in API requests. By default, fields with
1210	// empty values are omitted from API requests. However, any non-pointer,
1211	// non-interface field appearing in ForceSendFields will be sent to the
1212	// server regardless of whether the field is empty or not. This may be
1213	// used to include empty fields in Patch requests.
1214	ForceSendFields []string `json:"-"`
1215
1216	// NullFields is a list of field names (e.g. "Active") to include in API
1217	// requests with the JSON null value. By default, fields with empty
1218	// values are omitted from API requests. However, any field with an
1219	// empty value appearing in NullFields will be sent to the server as
1220	// null. It is an error if a field in this list has a non-empty value.
1221	// This may be used to include null fields in Patch requests.
1222	NullFields []string `json:"-"`
1223}
1224
1225func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
1226	type NoMethod AccountStatusStatistics
1227	raw := NoMethod(*s)
1228	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1229}
1230
1231// AccountTax: The tax settings of a merchant account. All methods
1232// require the admin role.
1233type AccountTax struct {
1234	// AccountId: Required. The ID of the account to which these account tax
1235	// settings belong.
1236	AccountId uint64 `json:"accountId,omitempty,string"`
1237
1238	// Kind: Identifies what kind of resource this is. Value: the fixed
1239	// string "content#accountTax".
1240	Kind string `json:"kind,omitempty"`
1241
1242	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
1243	// reversible). Defining no rules is equivalent to not charging tax at
1244	// all.
1245	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
1246
1247	// ServerResponse contains the HTTP response code and headers from the
1248	// server.
1249	googleapi.ServerResponse `json:"-"`
1250
1251	// ForceSendFields is a list of field names (e.g. "AccountId") to
1252	// unconditionally include in API requests. By default, fields with
1253	// empty values are omitted from API requests. However, any non-pointer,
1254	// non-interface field appearing in ForceSendFields will be sent to the
1255	// server regardless of whether the field is empty or not. This may be
1256	// used to include empty fields in Patch requests.
1257	ForceSendFields []string `json:"-"`
1258
1259	// NullFields is a list of field names (e.g. "AccountId") to include in
1260	// API requests with the JSON null value. By default, fields with empty
1261	// values are omitted from API requests. However, any field with an
1262	// empty value appearing in NullFields will be sent to the server as
1263	// null. It is an error if a field in this list has a non-empty value.
1264	// This may be used to include null fields in Patch requests.
1265	NullFields []string `json:"-"`
1266}
1267
1268func (s *AccountTax) MarshalJSON() ([]byte, error) {
1269	type NoMethod AccountTax
1270	raw := NoMethod(*s)
1271	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1272}
1273
1274// AccountTaxTaxRule: Tax calculation rule to apply in a state or
1275// province (USA only).
1276type AccountTaxTaxRule struct {
1277	// Country: Country code in which tax is applicable.
1278	Country string `json:"country,omitempty"`
1279
1280	// LocationId: Required. State (or province) is which the tax is
1281	// applicable, described by its location ID (also called criteria ID).
1282	LocationId uint64 `json:"locationId,omitempty,string"`
1283
1284	// RatePercent: Explicit tax rate in percent, represented as a floating
1285	// point number without the percentage character. Must not be negative.
1286	RatePercent string `json:"ratePercent,omitempty"`
1287
1288	// ShippingTaxed: If true, shipping charges are also taxed.
1289	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
1290
1291	// UseGlobalRate: Whether the tax rate is taken from a global tax table
1292	// or specified explicitly.
1293	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
1294
1295	// ForceSendFields is a list of field names (e.g. "Country") to
1296	// unconditionally include in API requests. By default, fields with
1297	// empty values are omitted from API requests. However, any non-pointer,
1298	// non-interface field appearing in ForceSendFields will be sent to the
1299	// server regardless of whether the field is empty or not. This may be
1300	// used to include empty fields in Patch requests.
1301	ForceSendFields []string `json:"-"`
1302
1303	// NullFields is a list of field names (e.g. "Country") to include in
1304	// API requests with the JSON null value. By default, fields with empty
1305	// values are omitted from API requests. However, any field with an
1306	// empty value appearing in NullFields will be sent to the server as
1307	// null. It is an error if a field in this list has a non-empty value.
1308	// This may be used to include null fields in Patch requests.
1309	NullFields []string `json:"-"`
1310}
1311
1312func (s *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
1313	type NoMethod AccountTaxTaxRule
1314	raw := NoMethod(*s)
1315	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1316}
1317
1318type AccountUser struct {
1319	// Admin: Whether user is an admin.
1320	Admin bool `json:"admin,omitempty"`
1321
1322	// EmailAddress: User's email address.
1323	EmailAddress string `json:"emailAddress,omitempty"`
1324
1325	// OrderManager: Whether user is an order manager.
1326	OrderManager bool `json:"orderManager,omitempty"`
1327
1328	// PaymentsAnalyst: Whether user can access payment statements.
1329	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
1330
1331	// PaymentsManager: Whether user can manage payment settings.
1332	PaymentsManager bool `json:"paymentsManager,omitempty"`
1333
1334	// ForceSendFields is a list of field names (e.g. "Admin") to
1335	// unconditionally include in API requests. By default, fields with
1336	// empty values are omitted from API requests. However, any non-pointer,
1337	// non-interface field appearing in ForceSendFields will be sent to the
1338	// server regardless of whether the field is empty or not. This may be
1339	// used to include empty fields in Patch requests.
1340	ForceSendFields []string `json:"-"`
1341
1342	// NullFields is a list of field names (e.g. "Admin") to include in API
1343	// requests with the JSON null value. By default, fields with empty
1344	// values are omitted from API requests. However, any field with an
1345	// empty value appearing in NullFields will be sent to the server as
1346	// null. It is an error if a field in this list has a non-empty value.
1347	// This may be used to include null fields in Patch requests.
1348	NullFields []string `json:"-"`
1349}
1350
1351func (s *AccountUser) MarshalJSON() ([]byte, error) {
1352	type NoMethod AccountUser
1353	raw := NoMethod(*s)
1354	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1355}
1356
1357type AccountYouTubeChannelLink struct {
1358	// ChannelId: Channel ID.
1359	ChannelId string `json:"channelId,omitempty"`
1360
1361	// Status: Status of the link between this Merchant Center account and
1362	// the YouTube channel. Upon retrieval, it represents the actual status
1363	// of the link and can be either `active` if it was approved in YT
1364	// Creator Studio or `pending` if it's pending approval. Upon insertion,
1365	// it represents the *intended* status of the link. Re-uploading a link
1366	// with status `active` when it's still pending or with status `pending`
1367	// when it's already active will have no effect: the status will remain
1368	// unchanged. Re-uploading a link with deprecated status `inactive` is
1369	// equivalent to not submitting the link at all and will delete the link
1370	// if it was active or cancel the link request if it was pending.
1371	Status string `json:"status,omitempty"`
1372
1373	// ForceSendFields is a list of field names (e.g. "ChannelId") to
1374	// unconditionally include in API requests. By default, fields with
1375	// empty values are omitted from API requests. However, any non-pointer,
1376	// non-interface field appearing in ForceSendFields will be sent to the
1377	// server regardless of whether the field is empty or not. This may be
1378	// used to include empty fields in Patch requests.
1379	ForceSendFields []string `json:"-"`
1380
1381	// NullFields is a list of field names (e.g. "ChannelId") to include in
1382	// API requests with the JSON null value. By default, fields with empty
1383	// values are omitted from API requests. However, any field with an
1384	// empty value appearing in NullFields will be sent to the server as
1385	// null. It is an error if a field in this list has a non-empty value.
1386	// This may be used to include null fields in Patch requests.
1387	NullFields []string `json:"-"`
1388}
1389
1390func (s *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
1391	type NoMethod AccountYouTubeChannelLink
1392	raw := NoMethod(*s)
1393	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1394}
1395
1396type AccountsAuthInfoResponse struct {
1397	// AccountIdentifiers: The account identifiers corresponding to the
1398	// authenticated user. - For an individual account: only the merchant ID
1399	// is defined - For an aggregator: only the aggregator ID is defined -
1400	// For a subaccount of an MCA: both the merchant ID and the aggregator
1401	// ID are defined.
1402	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
1403
1404	// Kind: Identifies what kind of resource this is. Value: the fixed
1405	// string "content#accountsAuthInfoResponse".
1406	Kind string `json:"kind,omitempty"`
1407
1408	// ServerResponse contains the HTTP response code and headers from the
1409	// server.
1410	googleapi.ServerResponse `json:"-"`
1411
1412	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
1413	// to unconditionally include in API requests. By default, fields with
1414	// empty values are omitted from API requests. However, any non-pointer,
1415	// non-interface field appearing in ForceSendFields will be sent to the
1416	// server regardless of whether the field is empty or not. This may be
1417	// used to include empty fields in Patch requests.
1418	ForceSendFields []string `json:"-"`
1419
1420	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
1421	// include in API requests with the JSON null value. By default, fields
1422	// with empty values are omitted from API requests. However, any field
1423	// with an empty value appearing in NullFields will be sent to the
1424	// server as null. It is an error if a field in this list has a
1425	// non-empty value. This may be used to include null fields in Patch
1426	// requests.
1427	NullFields []string `json:"-"`
1428}
1429
1430func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
1431	type NoMethod AccountsAuthInfoResponse
1432	raw := NoMethod(*s)
1433	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1434}
1435
1436type AccountsClaimWebsiteResponse struct {
1437	// Kind: Identifies what kind of resource this is. Value: the fixed
1438	// string "content#accountsClaimWebsiteResponse".
1439	Kind string `json:"kind,omitempty"`
1440
1441	// ServerResponse contains the HTTP response code and headers from the
1442	// server.
1443	googleapi.ServerResponse `json:"-"`
1444
1445	// ForceSendFields is a list of field names (e.g. "Kind") to
1446	// unconditionally include in API requests. By default, fields with
1447	// empty values are omitted from API requests. However, any non-pointer,
1448	// non-interface field appearing in ForceSendFields will be sent to the
1449	// server regardless of whether the field is empty or not. This may be
1450	// used to include empty fields in Patch requests.
1451	ForceSendFields []string `json:"-"`
1452
1453	// NullFields is a list of field names (e.g. "Kind") to include in API
1454	// requests with the JSON null value. By default, fields with empty
1455	// values are omitted from API requests. However, any field with an
1456	// empty value appearing in NullFields will be sent to the server as
1457	// null. It is an error if a field in this list has a non-empty value.
1458	// This may be used to include null fields in Patch requests.
1459	NullFields []string `json:"-"`
1460}
1461
1462func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
1463	type NoMethod AccountsClaimWebsiteResponse
1464	raw := NoMethod(*s)
1465	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1466}
1467
1468type AccountsCustomBatchRequest struct {
1469	// Entries: The request entries to be processed in the batch.
1470	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
1471
1472	// ForceSendFields is a list of field names (e.g. "Entries") to
1473	// unconditionally include in API requests. By default, fields with
1474	// empty values are omitted from API requests. However, any non-pointer,
1475	// non-interface field appearing in ForceSendFields will be sent to the
1476	// server regardless of whether the field is empty or not. This may be
1477	// used to include empty fields in Patch requests.
1478	ForceSendFields []string `json:"-"`
1479
1480	// NullFields is a list of field names (e.g. "Entries") to include in
1481	// API requests with the JSON null value. By default, fields with empty
1482	// values are omitted from API requests. However, any field with an
1483	// empty value appearing in NullFields will be sent to the server as
1484	// null. It is an error if a field in this list has a non-empty value.
1485	// This may be used to include null fields in Patch requests.
1486	NullFields []string `json:"-"`
1487}
1488
1489func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
1490	type NoMethod AccountsCustomBatchRequest
1491	raw := NoMethod(*s)
1492	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1493}
1494
1495// AccountsCustomBatchRequestEntry: A batch entry encoding a single
1496// non-batch accounts request.
1497type AccountsCustomBatchRequestEntry struct {
1498	// Account: The account to create or update. Only defined if the method
1499	// is `insert` or `update`.
1500	Account *Account `json:"account,omitempty"`
1501
1502	// AccountId: The ID of the targeted account. Only defined if the method
1503	// is not `insert`.
1504	AccountId uint64 `json:"accountId,omitempty,string"`
1505
1506	// BatchId: An entry ID, unique within the batch request.
1507	BatchId int64 `json:"batchId,omitempty"`
1508
1509	// Force: Whether the account should be deleted if the account has
1510	// offers. Only applicable if the method is `delete`.
1511	Force bool `json:"force,omitempty"`
1512
1513	// LabelIds: Label IDs for the 'updatelabels' request.
1514	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1515
1516	// LinkRequest: Details about the `link` request.
1517	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
1518
1519	// MerchantId: The ID of the managing account.
1520	MerchantId uint64 `json:"merchantId,omitempty,string"`
1521
1522	// Method: The method of the batch entry. Acceptable values are: -
1523	// "claimWebsite" - "delete" - "get" - "insert" - "link" -
1524	// "update"
1525	Method string `json:"method,omitempty"`
1526
1527	// Overwrite: Only applicable if the method is `claimwebsite`. Indicates
1528	// whether or not to take the claim from another account in case there
1529	// is a conflict.
1530	Overwrite bool `json:"overwrite,omitempty"`
1531
1532	// View: Controls which fields are visible. Only applicable if the
1533	// method is 'get'.
1534	View string `json:"view,omitempty"`
1535
1536	// ForceSendFields is a list of field names (e.g. "Account") to
1537	// unconditionally include in API requests. By default, fields with
1538	// empty values are omitted from API requests. However, any non-pointer,
1539	// non-interface field appearing in ForceSendFields will be sent to the
1540	// server regardless of whether the field is empty or not. This may be
1541	// used to include empty fields in Patch requests.
1542	ForceSendFields []string `json:"-"`
1543
1544	// NullFields is a list of field names (e.g. "Account") to include in
1545	// API requests with the JSON null value. By default, fields with empty
1546	// values are omitted from API requests. However, any field with an
1547	// empty value appearing in NullFields will be sent to the server as
1548	// null. It is an error if a field in this list has a non-empty value.
1549	// This may be used to include null fields in Patch requests.
1550	NullFields []string `json:"-"`
1551}
1552
1553func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1554	type NoMethod AccountsCustomBatchRequestEntry
1555	raw := NoMethod(*s)
1556	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1557}
1558
1559type AccountsCustomBatchRequestEntryLinkRequest struct {
1560	// Action: Action to perform for this link. The "request" action is
1561	// only available to select merchants. Acceptable values are: -
1562	// "approve" - "remove" - "request"
1563	Action string `json:"action,omitempty"`
1564
1565	// LinkType: Type of the link between the two accounts. Acceptable
1566	// values are: - "channelPartner" - "eCommercePlatform"
1567	LinkType string `json:"linkType,omitempty"`
1568
1569	// LinkedAccountId: The ID of the linked account.
1570	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1571
1572	// Services: Provided services. Acceptable values are: -
1573	// "shoppingAdsProductManagement" -
1574	// "shoppingActionsProductManagement" -
1575	// "shoppingActionsOrderManagement"
1576	Services []string `json:"services,omitempty"`
1577
1578	// ForceSendFields is a list of field names (e.g. "Action") to
1579	// unconditionally include in API requests. By default, fields with
1580	// empty values are omitted from API requests. However, any non-pointer,
1581	// non-interface field appearing in ForceSendFields will be sent to the
1582	// server regardless of whether the field is empty or not. This may be
1583	// used to include empty fields in Patch requests.
1584	ForceSendFields []string `json:"-"`
1585
1586	// NullFields is a list of field names (e.g. "Action") to include in API
1587	// requests with the JSON null value. By default, fields with empty
1588	// values are omitted from API requests. However, any field with an
1589	// empty value appearing in NullFields will be sent to the server as
1590	// null. It is an error if a field in this list has a non-empty value.
1591	// This may be used to include null fields in Patch requests.
1592	NullFields []string `json:"-"`
1593}
1594
1595func (s *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
1596	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
1597	raw := NoMethod(*s)
1598	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1599}
1600
1601type AccountsCustomBatchResponse struct {
1602	// Entries: The result of the execution of the batch requests.
1603	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
1604
1605	// Kind: Identifies what kind of resource this is. Value: the fixed
1606	// string "content#accountsCustomBatchResponse".
1607	Kind string `json:"kind,omitempty"`
1608
1609	// ServerResponse contains the HTTP response code and headers from the
1610	// server.
1611	googleapi.ServerResponse `json:"-"`
1612
1613	// ForceSendFields is a list of field names (e.g. "Entries") to
1614	// unconditionally include in API requests. By default, fields with
1615	// empty values are omitted from API requests. However, any non-pointer,
1616	// non-interface field appearing in ForceSendFields will be sent to the
1617	// server regardless of whether the field is empty or not. This may be
1618	// used to include empty fields in Patch requests.
1619	ForceSendFields []string `json:"-"`
1620
1621	// NullFields is a list of field names (e.g. "Entries") to include in
1622	// API requests with the JSON null value. By default, fields with empty
1623	// values are omitted from API requests. However, any field with an
1624	// empty value appearing in NullFields will be sent to the server as
1625	// null. It is an error if a field in this list has a non-empty value.
1626	// This may be used to include null fields in Patch requests.
1627	NullFields []string `json:"-"`
1628}
1629
1630func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
1631	type NoMethod AccountsCustomBatchResponse
1632	raw := NoMethod(*s)
1633	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1634}
1635
1636// AccountsCustomBatchResponseEntry: A batch entry encoding a single
1637// non-batch accounts response.
1638type AccountsCustomBatchResponseEntry struct {
1639	// Account: The retrieved, created, or updated account. Not defined if
1640	// the method was `delete`, `claimwebsite` or `link`.
1641	Account *Account `json:"account,omitempty"`
1642
1643	// BatchId: The ID of the request entry this entry responds to.
1644	BatchId int64 `json:"batchId,omitempty"`
1645
1646	// Errors: A list of errors defined if and only if the request failed.
1647	Errors *Errors `json:"errors,omitempty"`
1648
1649	// Kind: Identifies what kind of resource this is. Value: the fixed
1650	// string "content#accountsCustomBatchResponseEntry"
1651	Kind string `json:"kind,omitempty"`
1652
1653	// ForceSendFields is a list of field names (e.g. "Account") to
1654	// unconditionally include in API requests. By default, fields with
1655	// empty values are omitted from API requests. However, any non-pointer,
1656	// non-interface field appearing in ForceSendFields will be sent to the
1657	// server regardless of whether the field is empty or not. This may be
1658	// used to include empty fields in Patch requests.
1659	ForceSendFields []string `json:"-"`
1660
1661	// NullFields is a list of field names (e.g. "Account") to include in
1662	// API requests with the JSON null value. By default, fields with empty
1663	// values are omitted from API requests. However, any field with an
1664	// empty value appearing in NullFields will be sent to the server as
1665	// null. It is an error if a field in this list has a non-empty value.
1666	// This may be used to include null fields in Patch requests.
1667	NullFields []string `json:"-"`
1668}
1669
1670func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1671	type NoMethod AccountsCustomBatchResponseEntry
1672	raw := NoMethod(*s)
1673	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1674}
1675
1676type AccountsLinkRequest struct {
1677	// Action: Action to perform for this link. The "request" action is
1678	// only available to select merchants. Acceptable values are: -
1679	// "approve" - "remove" - "request"
1680	Action string `json:"action,omitempty"`
1681
1682	// LinkType: Type of the link between the two accounts. Acceptable
1683	// values are: - "channelPartner" - "eCommercePlatform"
1684	LinkType string `json:"linkType,omitempty"`
1685
1686	// LinkedAccountId: The ID of the linked account.
1687	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1688
1689	// Services:  Acceptable values are: - "shoppingAdsProductManagement"
1690	// - "shoppingActionsProductManagement" -
1691	// "shoppingActionsOrderManagement"
1692	Services []string `json:"services,omitempty"`
1693
1694	// ForceSendFields is a list of field names (e.g. "Action") to
1695	// unconditionally include in API requests. By default, fields with
1696	// empty values are omitted from API requests. However, any non-pointer,
1697	// non-interface field appearing in ForceSendFields will be sent to the
1698	// server regardless of whether the field is empty or not. This may be
1699	// used to include empty fields in Patch requests.
1700	ForceSendFields []string `json:"-"`
1701
1702	// NullFields is a list of field names (e.g. "Action") to include in API
1703	// requests with the JSON null value. By default, fields with empty
1704	// values are omitted from API requests. However, any field with an
1705	// empty value appearing in NullFields will be sent to the server as
1706	// null. It is an error if a field in this list has a non-empty value.
1707	// This may be used to include null fields in Patch requests.
1708	NullFields []string `json:"-"`
1709}
1710
1711func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
1712	type NoMethod AccountsLinkRequest
1713	raw := NoMethod(*s)
1714	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1715}
1716
1717type AccountsLinkResponse struct {
1718	// Kind: Identifies what kind of resource this is. Value: the fixed
1719	// string "content#accountsLinkResponse".
1720	Kind string `json:"kind,omitempty"`
1721
1722	// ServerResponse contains the HTTP response code and headers from the
1723	// server.
1724	googleapi.ServerResponse `json:"-"`
1725
1726	// ForceSendFields is a list of field names (e.g. "Kind") to
1727	// unconditionally include in API requests. By default, fields with
1728	// empty values are omitted from API requests. However, any non-pointer,
1729	// non-interface field appearing in ForceSendFields will be sent to the
1730	// server regardless of whether the field is empty or not. This may be
1731	// used to include empty fields in Patch requests.
1732	ForceSendFields []string `json:"-"`
1733
1734	// NullFields is a list of field names (e.g. "Kind") to include in API
1735	// requests with the JSON null value. By default, fields with empty
1736	// values are omitted from API requests. However, any field with an
1737	// empty value appearing in NullFields will be sent to the server as
1738	// null. It is an error if a field in this list has a non-empty value.
1739	// This may be used to include null fields in Patch requests.
1740	NullFields []string `json:"-"`
1741}
1742
1743func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
1744	type NoMethod AccountsLinkResponse
1745	raw := NoMethod(*s)
1746	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1747}
1748
1749type AccountsListLinksResponse struct {
1750	// Kind: Identifies what kind of resource this is. Value: the fixed
1751	// string "content#accountsListLinksResponse".
1752	Kind string `json:"kind,omitempty"`
1753
1754	// Links: The list of available links.
1755	Links []*LinkedAccount `json:"links,omitempty"`
1756
1757	// NextPageToken: The token for the retrieval of the next page of links.
1758	NextPageToken string `json:"nextPageToken,omitempty"`
1759
1760	// ServerResponse contains the HTTP response code and headers from the
1761	// server.
1762	googleapi.ServerResponse `json:"-"`
1763
1764	// ForceSendFields is a list of field names (e.g. "Kind") to
1765	// unconditionally include in API requests. By default, fields with
1766	// empty values are omitted from API requests. However, any non-pointer,
1767	// non-interface field appearing in ForceSendFields will be sent to the
1768	// server regardless of whether the field is empty or not. This may be
1769	// used to include empty fields in Patch requests.
1770	ForceSendFields []string `json:"-"`
1771
1772	// NullFields is a list of field names (e.g. "Kind") to include in API
1773	// requests with the JSON null value. By default, fields with empty
1774	// values are omitted from API requests. However, any field with an
1775	// empty value appearing in NullFields will be sent to the server as
1776	// null. It is an error if a field in this list has a non-empty value.
1777	// This may be used to include null fields in Patch requests.
1778	NullFields []string `json:"-"`
1779}
1780
1781func (s *AccountsListLinksResponse) MarshalJSON() ([]byte, error) {
1782	type NoMethod AccountsListLinksResponse
1783	raw := NoMethod(*s)
1784	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1785}
1786
1787type AccountsListResponse struct {
1788	// Kind: Identifies what kind of resource this is. Value: the fixed
1789	// string "content#accountsListResponse".
1790	Kind string `json:"kind,omitempty"`
1791
1792	// NextPageToken: The token for the retrieval of the next page of
1793	// accounts.
1794	NextPageToken string `json:"nextPageToken,omitempty"`
1795
1796	Resources []*Account `json:"resources,omitempty"`
1797
1798	// ServerResponse contains the HTTP response code and headers from the
1799	// server.
1800	googleapi.ServerResponse `json:"-"`
1801
1802	// ForceSendFields is a list of field names (e.g. "Kind") to
1803	// unconditionally include in API requests. By default, fields with
1804	// empty values are omitted from API requests. However, any non-pointer,
1805	// non-interface field appearing in ForceSendFields will be sent to the
1806	// server regardless of whether the field is empty or not. This may be
1807	// used to include empty fields in Patch requests.
1808	ForceSendFields []string `json:"-"`
1809
1810	// NullFields is a list of field names (e.g. "Kind") to include in API
1811	// requests with the JSON null value. By default, fields with empty
1812	// values are omitted from API requests. However, any field with an
1813	// empty value appearing in NullFields will be sent to the server as
1814	// null. It is an error if a field in this list has a non-empty value.
1815	// This may be used to include null fields in Patch requests.
1816	NullFields []string `json:"-"`
1817}
1818
1819func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1820	type NoMethod AccountsListResponse
1821	raw := NoMethod(*s)
1822	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1823}
1824
1825type AccountsUpdateLabelsRequest struct {
1826	// LabelIds: The IDs of labels that should be assigned to the account.
1827	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1828
1829	// ForceSendFields is a list of field names (e.g. "LabelIds") to
1830	// unconditionally include in API requests. By default, fields with
1831	// empty values are omitted from API requests. However, any non-pointer,
1832	// non-interface field appearing in ForceSendFields will be sent to the
1833	// server regardless of whether the field is empty or not. This may be
1834	// used to include empty fields in Patch requests.
1835	ForceSendFields []string `json:"-"`
1836
1837	// NullFields is a list of field names (e.g. "LabelIds") to include in
1838	// API requests with the JSON null value. By default, fields with empty
1839	// values are omitted from API requests. However, any field with an
1840	// empty value appearing in NullFields will be sent to the server as
1841	// null. It is an error if a field in this list has a non-empty value.
1842	// This may be used to include null fields in Patch requests.
1843	NullFields []string `json:"-"`
1844}
1845
1846func (s *AccountsUpdateLabelsRequest) MarshalJSON() ([]byte, error) {
1847	type NoMethod AccountsUpdateLabelsRequest
1848	raw := NoMethod(*s)
1849	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1850}
1851
1852type AccountsUpdateLabelsResponse struct {
1853	// Kind: Identifies what kind of resource this is. Value: the fixed
1854	// string "content#accountsUpdateLabelsResponse".
1855	Kind string `json:"kind,omitempty"`
1856
1857	// ServerResponse contains the HTTP response code and headers from the
1858	// server.
1859	googleapi.ServerResponse `json:"-"`
1860
1861	// ForceSendFields is a list of field names (e.g. "Kind") to
1862	// unconditionally include in API requests. By default, fields with
1863	// empty values are omitted from API requests. However, any non-pointer,
1864	// non-interface field appearing in ForceSendFields will be sent to the
1865	// server regardless of whether the field is empty or not. This may be
1866	// used to include empty fields in Patch requests.
1867	ForceSendFields []string `json:"-"`
1868
1869	// NullFields is a list of field names (e.g. "Kind") to include in API
1870	// requests with the JSON null value. By default, fields with empty
1871	// values are omitted from API requests. However, any field with an
1872	// empty value appearing in NullFields will be sent to the server as
1873	// null. It is an error if a field in this list has a non-empty value.
1874	// This may be used to include null fields in Patch requests.
1875	NullFields []string `json:"-"`
1876}
1877
1878func (s *AccountsUpdateLabelsResponse) MarshalJSON() ([]byte, error) {
1879	type NoMethod AccountsUpdateLabelsResponse
1880	raw := NoMethod(*s)
1881	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1882}
1883
1884type AccountstatusesCustomBatchRequest struct {
1885	// Entries: The request entries to be processed in the batch.
1886	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
1887
1888	// ForceSendFields is a list of field names (e.g. "Entries") to
1889	// unconditionally include in API requests. By default, fields with
1890	// empty values are omitted from API requests. However, any non-pointer,
1891	// non-interface field appearing in ForceSendFields will be sent to the
1892	// server regardless of whether the field is empty or not. This may be
1893	// used to include empty fields in Patch requests.
1894	ForceSendFields []string `json:"-"`
1895
1896	// NullFields is a list of field names (e.g. "Entries") to include in
1897	// API requests with the JSON null value. By default, fields with empty
1898	// values are omitted from API requests. However, any field with an
1899	// empty value appearing in NullFields will be sent to the server as
1900	// null. It is an error if a field in this list has a non-empty value.
1901	// This may be used to include null fields in Patch requests.
1902	NullFields []string `json:"-"`
1903}
1904
1905func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
1906	type NoMethod AccountstatusesCustomBatchRequest
1907	raw := NoMethod(*s)
1908	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1909}
1910
1911// AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
1912// single non-batch accountstatuses request.
1913type AccountstatusesCustomBatchRequestEntry struct {
1914	// AccountId: The ID of the (sub-)account whose status to get.
1915	AccountId uint64 `json:"accountId,omitempty,string"`
1916
1917	// BatchId: An entry ID, unique within the batch request.
1918	BatchId int64 `json:"batchId,omitempty"`
1919
1920	// Destinations: If set, only issues for the specified destinations are
1921	// returned, otherwise only issues for the Shopping destination.
1922	Destinations []string `json:"destinations,omitempty"`
1923
1924	// MerchantId: The ID of the managing account.
1925	MerchantId uint64 `json:"merchantId,omitempty,string"`
1926
1927	// Method: The method of the batch entry. Acceptable values are: -
1928	// "get"
1929	Method string `json:"method,omitempty"`
1930
1931	// ForceSendFields is a list of field names (e.g. "AccountId") to
1932	// unconditionally include in API requests. By default, fields with
1933	// empty values are omitted from API requests. However, any non-pointer,
1934	// non-interface field appearing in ForceSendFields will be sent to the
1935	// server regardless of whether the field is empty or not. This may be
1936	// used to include empty fields in Patch requests.
1937	ForceSendFields []string `json:"-"`
1938
1939	// NullFields is a list of field names (e.g. "AccountId") to include in
1940	// API requests with the JSON null value. By default, fields with empty
1941	// values are omitted from API requests. However, any field with an
1942	// empty value appearing in NullFields will be sent to the server as
1943	// null. It is an error if a field in this list has a non-empty value.
1944	// This may be used to include null fields in Patch requests.
1945	NullFields []string `json:"-"`
1946}
1947
1948func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1949	type NoMethod AccountstatusesCustomBatchRequestEntry
1950	raw := NoMethod(*s)
1951	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1952}
1953
1954type AccountstatusesCustomBatchResponse struct {
1955	// Entries: The result of the execution of the batch requests.
1956	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
1957
1958	// Kind: Identifies what kind of resource this is. Value: the fixed
1959	// string "content#accountstatusesCustomBatchResponse".
1960	Kind string `json:"kind,omitempty"`
1961
1962	// ServerResponse contains the HTTP response code and headers from the
1963	// server.
1964	googleapi.ServerResponse `json:"-"`
1965
1966	// ForceSendFields is a list of field names (e.g. "Entries") to
1967	// unconditionally include in API requests. By default, fields with
1968	// empty values are omitted from API requests. However, any non-pointer,
1969	// non-interface field appearing in ForceSendFields will be sent to the
1970	// server regardless of whether the field is empty or not. This may be
1971	// used to include empty fields in Patch requests.
1972	ForceSendFields []string `json:"-"`
1973
1974	// NullFields is a list of field names (e.g. "Entries") to include in
1975	// API requests with the JSON null value. By default, fields with empty
1976	// values are omitted from API requests. However, any field with an
1977	// empty value appearing in NullFields will be sent to the server as
1978	// null. It is an error if a field in this list has a non-empty value.
1979	// This may be used to include null fields in Patch requests.
1980	NullFields []string `json:"-"`
1981}
1982
1983func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
1984	type NoMethod AccountstatusesCustomBatchResponse
1985	raw := NoMethod(*s)
1986	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1987}
1988
1989// AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
1990// single non-batch accountstatuses response.
1991type AccountstatusesCustomBatchResponseEntry struct {
1992	// AccountStatus: The requested account status. Defined if and only if
1993	// the request was successful.
1994	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
1995
1996	// BatchId: The ID of the request entry this entry responds to.
1997	BatchId int64 `json:"batchId,omitempty"`
1998
1999	// Errors: A list of errors defined if and only if the request failed.
2000	Errors *Errors `json:"errors,omitempty"`
2001
2002	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
2003	// unconditionally include in API requests. By default, fields with
2004	// empty values are omitted from API requests. However, any non-pointer,
2005	// non-interface field appearing in ForceSendFields will be sent to the
2006	// server regardless of whether the field is empty or not. This may be
2007	// used to include empty fields in Patch requests.
2008	ForceSendFields []string `json:"-"`
2009
2010	// NullFields is a list of field names (e.g. "AccountStatus") to include
2011	// in API requests with the JSON null value. By default, fields with
2012	// empty values are omitted from API requests. However, any field with
2013	// an empty value appearing in NullFields will be sent to the server as
2014	// null. It is an error if a field in this list has a non-empty value.
2015	// This may be used to include null fields in Patch requests.
2016	NullFields []string `json:"-"`
2017}
2018
2019func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2020	type NoMethod AccountstatusesCustomBatchResponseEntry
2021	raw := NoMethod(*s)
2022	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2023}
2024
2025type AccountstatusesListResponse struct {
2026	// Kind: Identifies what kind of resource this is. Value: the fixed
2027	// string "content#accountstatusesListResponse".
2028	Kind string `json:"kind,omitempty"`
2029
2030	// NextPageToken: The token for the retrieval of the next page of
2031	// account statuses.
2032	NextPageToken string `json:"nextPageToken,omitempty"`
2033
2034	Resources []*AccountStatus `json:"resources,omitempty"`
2035
2036	// ServerResponse contains the HTTP response code and headers from the
2037	// server.
2038	googleapi.ServerResponse `json:"-"`
2039
2040	// ForceSendFields is a list of field names (e.g. "Kind") to
2041	// unconditionally include in API requests. By default, fields with
2042	// empty values are omitted from API requests. However, any non-pointer,
2043	// non-interface field appearing in ForceSendFields will be sent to the
2044	// server regardless of whether the field is empty or not. This may be
2045	// used to include empty fields in Patch requests.
2046	ForceSendFields []string `json:"-"`
2047
2048	// NullFields is a list of field names (e.g. "Kind") to include in API
2049	// requests with the JSON null value. By default, fields with empty
2050	// values are omitted from API requests. However, any field with an
2051	// empty value appearing in NullFields will be sent to the server as
2052	// null. It is an error if a field in this list has a non-empty value.
2053	// This may be used to include null fields in Patch requests.
2054	NullFields []string `json:"-"`
2055}
2056
2057func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
2058	type NoMethod AccountstatusesListResponse
2059	raw := NoMethod(*s)
2060	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2061}
2062
2063type AccounttaxCustomBatchRequest struct {
2064	// Entries: The request entries to be processed in the batch.
2065	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
2066
2067	// ForceSendFields is a list of field names (e.g. "Entries") to
2068	// unconditionally include in API requests. By default, fields with
2069	// empty values are omitted from API requests. However, any non-pointer,
2070	// non-interface field appearing in ForceSendFields will be sent to the
2071	// server regardless of whether the field is empty or not. This may be
2072	// used to include empty fields in Patch requests.
2073	ForceSendFields []string `json:"-"`
2074
2075	// NullFields is a list of field names (e.g. "Entries") to include in
2076	// API requests with the JSON null value. By default, fields with empty
2077	// values are omitted from API requests. However, any field with an
2078	// empty value appearing in NullFields will be sent to the server as
2079	// null. It is an error if a field in this list has a non-empty value.
2080	// This may be used to include null fields in Patch requests.
2081	NullFields []string `json:"-"`
2082}
2083
2084func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
2085	type NoMethod AccounttaxCustomBatchRequest
2086	raw := NoMethod(*s)
2087	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2088}
2089
2090// AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
2091// non-batch accounttax request.
2092type AccounttaxCustomBatchRequestEntry struct {
2093	// AccountId: The ID of the account for which to get/update account tax
2094	// settings.
2095	AccountId uint64 `json:"accountId,omitempty,string"`
2096
2097	// AccountTax: The account tax settings to update. Only defined if the
2098	// method is `update`.
2099	AccountTax *AccountTax `json:"accountTax,omitempty"`
2100
2101	// BatchId: An entry ID, unique within the batch request.
2102	BatchId int64 `json:"batchId,omitempty"`
2103
2104	// MerchantId: The ID of the managing account.
2105	MerchantId uint64 `json:"merchantId,omitempty,string"`
2106
2107	// Method: The method of the batch entry. Acceptable values are: -
2108	// "get" - "update"
2109	Method string `json:"method,omitempty"`
2110
2111	// ForceSendFields is a list of field names (e.g. "AccountId") to
2112	// unconditionally include in API requests. By default, fields with
2113	// empty values are omitted from API requests. However, any non-pointer,
2114	// non-interface field appearing in ForceSendFields will be sent to the
2115	// server regardless of whether the field is empty or not. This may be
2116	// used to include empty fields in Patch requests.
2117	ForceSendFields []string `json:"-"`
2118
2119	// NullFields is a list of field names (e.g. "AccountId") to include in
2120	// API requests with the JSON null value. By default, fields with empty
2121	// values are omitted from API requests. However, any field with an
2122	// empty value appearing in NullFields will be sent to the server as
2123	// null. It is an error if a field in this list has a non-empty value.
2124	// This may be used to include null fields in Patch requests.
2125	NullFields []string `json:"-"`
2126}
2127
2128func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2129	type NoMethod AccounttaxCustomBatchRequestEntry
2130	raw := NoMethod(*s)
2131	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2132}
2133
2134type AccounttaxCustomBatchResponse struct {
2135	// Entries: The result of the execution of the batch requests.
2136	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
2137
2138	// Kind: Identifies what kind of resource this is. Value: the fixed
2139	// string "content#accounttaxCustomBatchResponse".
2140	Kind string `json:"kind,omitempty"`
2141
2142	// ServerResponse contains the HTTP response code and headers from the
2143	// server.
2144	googleapi.ServerResponse `json:"-"`
2145
2146	// ForceSendFields is a list of field names (e.g. "Entries") to
2147	// unconditionally include in API requests. By default, fields with
2148	// empty values are omitted from API requests. However, any non-pointer,
2149	// non-interface field appearing in ForceSendFields will be sent to the
2150	// server regardless of whether the field is empty or not. This may be
2151	// used to include empty fields in Patch requests.
2152	ForceSendFields []string `json:"-"`
2153
2154	// NullFields is a list of field names (e.g. "Entries") to include in
2155	// API requests with the JSON null value. By default, fields with empty
2156	// values are omitted from API requests. However, any field with an
2157	// empty value appearing in NullFields will be sent to the server as
2158	// null. It is an error if a field in this list has a non-empty value.
2159	// This may be used to include null fields in Patch requests.
2160	NullFields []string `json:"-"`
2161}
2162
2163func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
2164	type NoMethod AccounttaxCustomBatchResponse
2165	raw := NoMethod(*s)
2166	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2167}
2168
2169// AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
2170// non-batch accounttax response.
2171type AccounttaxCustomBatchResponseEntry struct {
2172	// AccountTax: The retrieved or updated account tax settings.
2173	AccountTax *AccountTax `json:"accountTax,omitempty"`
2174
2175	// BatchId: The ID of the request entry this entry responds to.
2176	BatchId int64 `json:"batchId,omitempty"`
2177
2178	// Errors: A list of errors defined if and only if the request failed.
2179	Errors *Errors `json:"errors,omitempty"`
2180
2181	// Kind: Identifies what kind of resource this is. Value: the fixed
2182	// string "content#accounttaxCustomBatchResponseEntry"
2183	Kind string `json:"kind,omitempty"`
2184
2185	// ForceSendFields is a list of field names (e.g. "AccountTax") to
2186	// unconditionally include in API requests. By default, fields with
2187	// empty values are omitted from API requests. However, any non-pointer,
2188	// non-interface field appearing in ForceSendFields will be sent to the
2189	// server regardless of whether the field is empty or not. This may be
2190	// used to include empty fields in Patch requests.
2191	ForceSendFields []string `json:"-"`
2192
2193	// NullFields is a list of field names (e.g. "AccountTax") to include in
2194	// API requests with the JSON null value. By default, fields with empty
2195	// values are omitted from API requests. However, any field with an
2196	// empty value appearing in NullFields will be sent to the server as
2197	// null. It is an error if a field in this list has a non-empty value.
2198	// This may be used to include null fields in Patch requests.
2199	NullFields []string `json:"-"`
2200}
2201
2202func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2203	type NoMethod AccounttaxCustomBatchResponseEntry
2204	raw := NoMethod(*s)
2205	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2206}
2207
2208type AccounttaxListResponse struct {
2209	// Kind: Identifies what kind of resource this is. Value: the fixed
2210	// string "content#accounttaxListResponse".
2211	Kind string `json:"kind,omitempty"`
2212
2213	// NextPageToken: The token for the retrieval of the next page of
2214	// account tax settings.
2215	NextPageToken string `json:"nextPageToken,omitempty"`
2216
2217	Resources []*AccountTax `json:"resources,omitempty"`
2218
2219	// ServerResponse contains the HTTP response code and headers from the
2220	// server.
2221	googleapi.ServerResponse `json:"-"`
2222
2223	// ForceSendFields is a list of field names (e.g. "Kind") to
2224	// unconditionally include in API requests. By default, fields with
2225	// empty values are omitted from API requests. However, any non-pointer,
2226	// non-interface field appearing in ForceSendFields will be sent to the
2227	// server regardless of whether the field is empty or not. This may be
2228	// used to include empty fields in Patch requests.
2229	ForceSendFields []string `json:"-"`
2230
2231	// NullFields is a list of field names (e.g. "Kind") to include in API
2232	// requests with the JSON null value. By default, fields with empty
2233	// values are omitted from API requests. However, any field with an
2234	// empty value appearing in NullFields will be sent to the server as
2235	// null. It is an error if a field in this list has a non-empty value.
2236	// This may be used to include null fields in Patch requests.
2237	NullFields []string `json:"-"`
2238}
2239
2240func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
2241	type NoMethod AccounttaxListResponse
2242	raw := NoMethod(*s)
2243	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2244}
2245
2246type Amount struct {
2247	// PriceAmount: [required] The pre-tax or post-tax price depending on
2248	// the location of the order.
2249	PriceAmount *Price `json:"priceAmount,omitempty"`
2250
2251	// TaxAmount: [required] Tax value.
2252	TaxAmount *Price `json:"taxAmount,omitempty"`
2253
2254	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
2255	// unconditionally include in API requests. By default, fields with
2256	// empty values are omitted from API requests. However, any non-pointer,
2257	// non-interface field appearing in ForceSendFields will be sent to the
2258	// server regardless of whether the field is empty or not. This may be
2259	// used to include empty fields in Patch requests.
2260	ForceSendFields []string `json:"-"`
2261
2262	// NullFields is a list of field names (e.g. "PriceAmount") to include
2263	// in API requests with the JSON null value. By default, fields with
2264	// empty values are omitted from API requests. However, any field with
2265	// an empty value appearing in NullFields will be sent to the server as
2266	// null. It is an error if a field in this list has a non-empty value.
2267	// This may be used to include null fields in Patch requests.
2268	NullFields []string `json:"-"`
2269}
2270
2271func (s *Amount) MarshalJSON() ([]byte, error) {
2272	type NoMethod Amount
2273	raw := NoMethod(*s)
2274	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2275}
2276
2277type BusinessDayConfig struct {
2278	// BusinessDays: Regular business days. May not be empty.
2279	BusinessDays []string `json:"businessDays,omitempty"`
2280
2281	// ForceSendFields is a list of field names (e.g. "BusinessDays") to
2282	// unconditionally include in API requests. By default, fields with
2283	// empty values are omitted from API requests. However, any non-pointer,
2284	// non-interface field appearing in ForceSendFields will be sent to the
2285	// server regardless of whether the field is empty or not. This may be
2286	// used to include empty fields in Patch requests.
2287	ForceSendFields []string `json:"-"`
2288
2289	// NullFields is a list of field names (e.g. "BusinessDays") to include
2290	// in API requests with the JSON null value. By default, fields with
2291	// empty values are omitted from API requests. However, any field with
2292	// an empty value appearing in NullFields will be sent to the server as
2293	// null. It is an error if a field in this list has a non-empty value.
2294	// This may be used to include null fields in Patch requests.
2295	NullFields []string `json:"-"`
2296}
2297
2298func (s *BusinessDayConfig) MarshalJSON() ([]byte, error) {
2299	type NoMethod BusinessDayConfig
2300	raw := NoMethod(*s)
2301	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2302}
2303
2304// BuyOnGoogleProgramStatus: Response message for the GetProgramStatus
2305// method.
2306type BuyOnGoogleProgramStatus struct {
2307	// CustomerServicePendingEmail: The customer service pending email.
2308	CustomerServicePendingEmail string `json:"customerServicePendingEmail,omitempty"`
2309
2310	// CustomerServiceVerifiedEmail: The customer service verified email.
2311	CustomerServiceVerifiedEmail string `json:"customerServiceVerifiedEmail,omitempty"`
2312
2313	// ParticipationStage: The current participation stage for the program.
2314	//
2315	// Possible values:
2316	//   "PROGRAM_PARTICIPATION_STAGE_UNSPECIFIED" - Default value when
2317	// participation stage is not set.
2318	//   "NOT_ELIGIBLE" - Merchant is not eligible for onboarding to a given
2319	// program in a specific region code.
2320	//   "ELIGIBLE" - Merchant is eligible for onboarding to a given program
2321	// in a specific region code.
2322	//   "ONBOARDING" - Merchant is onboarding to a given program in a
2323	// specific region code.
2324	//   "ACTIVE" - Merchant's program participation is active for a
2325	// specific region code.
2326	//   "PAUSED" - Participation has been paused.
2327	ParticipationStage string `json:"participationStage,omitempty"`
2328
2329	// ServerResponse contains the HTTP response code and headers from the
2330	// server.
2331	googleapi.ServerResponse `json:"-"`
2332
2333	// ForceSendFields is a list of field names (e.g.
2334	// "CustomerServicePendingEmail") to unconditionally include in API
2335	// requests. By default, fields with empty values are omitted from API
2336	// requests. However, any non-pointer, non-interface field appearing in
2337	// ForceSendFields will be sent to the server regardless of whether the
2338	// field is empty or not. This may be used to include empty fields in
2339	// Patch requests.
2340	ForceSendFields []string `json:"-"`
2341
2342	// NullFields is a list of field names (e.g.
2343	// "CustomerServicePendingEmail") to include in API requests with the
2344	// JSON null value. By default, fields with empty values are omitted
2345	// from API requests. However, any field with an empty value appearing
2346	// in NullFields will be sent to the server as null. It is an error if a
2347	// field in this list has a non-empty value. This may be used to include
2348	// null fields in Patch requests.
2349	NullFields []string `json:"-"`
2350}
2351
2352func (s *BuyOnGoogleProgramStatus) MarshalJSON() ([]byte, error) {
2353	type NoMethod BuyOnGoogleProgramStatus
2354	raw := NoMethod(*s)
2355	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2356}
2357
2358type CarrierRate struct {
2359	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list
2360	// of supported carriers can be retrieved via the `getSupportedCarriers`
2361	// method. Required.
2362	CarrierName string `json:"carrierName,omitempty"`
2363
2364	// CarrierService: Carrier service, such as "ground" or "2 days".
2365	// The list of supported services for a carrier can be retrieved via the
2366	// `getSupportedCarriers` method. Required.
2367	CarrierService string `json:"carrierService,omitempty"`
2368
2369	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
2370	// example `{ "value": "1", "currency" : "USD" }` adds $1 to the rate,
2371	// `{ "value": "-3", "currency" : "USD" }` removes $3 from the rate.
2372	// Optional.
2373	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
2374
2375	// Name: Name of the carrier rate. Must be unique per rate group.
2376	// Required.
2377	Name string `json:"name,omitempty"`
2378
2379	// OriginPostalCode: Shipping origin for this carrier rate. Required.
2380	OriginPostalCode string `json:"originPostalCode,omitempty"`
2381
2382	// PercentageAdjustment: Multiplicative shipping rate modifier as a
2383	// number in decimal notation. Can be negative. For example "5.4"
2384	// increases the rate by 5.4%, "-3" decreases the rate by 3%.
2385	// Optional.
2386	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
2387
2388	// ForceSendFields is a list of field names (e.g. "CarrierName") to
2389	// unconditionally include in API requests. By default, fields with
2390	// empty values are omitted from API requests. However, any non-pointer,
2391	// non-interface field appearing in ForceSendFields will be sent to the
2392	// server regardless of whether the field is empty or not. This may be
2393	// used to include empty fields in Patch requests.
2394	ForceSendFields []string `json:"-"`
2395
2396	// NullFields is a list of field names (e.g. "CarrierName") to include
2397	// in API requests with the JSON null value. By default, fields with
2398	// empty values are omitted from API requests. However, any field with
2399	// an empty value appearing in NullFields will be sent to the server as
2400	// null. It is an error if a field in this list has a non-empty value.
2401	// This may be used to include null fields in Patch requests.
2402	NullFields []string `json:"-"`
2403}
2404
2405func (s *CarrierRate) MarshalJSON() ([]byte, error) {
2406	type NoMethod CarrierRate
2407	raw := NoMethod(*s)
2408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2409}
2410
2411type CarriersCarrier struct {
2412	// Country: The CLDR country code of the carrier (e.g., "US"). Always
2413	// present.
2414	Country string `json:"country,omitempty"`
2415
2416	// Name: The name of the carrier (e.g., "UPS"). Always present.
2417	Name string `json:"name,omitempty"`
2418
2419	// Services: A list of supported services (e.g., "ground") for that
2420	// carrier. Contains at least one service.
2421	Services []string `json:"services,omitempty"`
2422
2423	// ForceSendFields is a list of field names (e.g. "Country") to
2424	// unconditionally include in API requests. By default, fields with
2425	// empty values are omitted from API requests. However, any non-pointer,
2426	// non-interface field appearing in ForceSendFields will be sent to the
2427	// server regardless of whether the field is empty or not. This may be
2428	// used to include empty fields in Patch requests.
2429	ForceSendFields []string `json:"-"`
2430
2431	// NullFields is a list of field names (e.g. "Country") to include in
2432	// API requests with the JSON null value. By default, fields with empty
2433	// values are omitted from API requests. However, any field with an
2434	// empty value appearing in NullFields will be sent to the server as
2435	// null. It is an error if a field in this list has a non-empty value.
2436	// This may be used to include null fields in Patch requests.
2437	NullFields []string `json:"-"`
2438}
2439
2440func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
2441	type NoMethod CarriersCarrier
2442	raw := NoMethod(*s)
2443	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2444}
2445
2446// Collection: The collection message.
2447type Collection struct {
2448	// CustomLabel0: Label that you assign to a collection to help organize
2449	// bidding and reporting in Shopping campaigns. Custom label
2450	// (https://support.google.com/merchants/answer/9674217)
2451	CustomLabel0 string `json:"customLabel0,omitempty"`
2452
2453	// CustomLabel1: Label that you assign to a collection to help organize
2454	// bidding and reporting in Shopping campaigns.
2455	CustomLabel1 string `json:"customLabel1,omitempty"`
2456
2457	// CustomLabel2: Label that you assign to a collection to help organize
2458	// bidding and reporting in Shopping campaigns.
2459	CustomLabel2 string `json:"customLabel2,omitempty"`
2460
2461	// CustomLabel3: Label that you assign to a collection to help organize
2462	// bidding and reporting in Shopping campaigns.
2463	CustomLabel3 string `json:"customLabel3,omitempty"`
2464
2465	// CustomLabel4: Label that you assign to a collection to help organize
2466	// bidding and reporting in Shopping campaigns.
2467	CustomLabel4 string `json:"customLabel4,omitempty"`
2468
2469	// FeaturedProduct: This identifies one or more products associated with
2470	// the collection. Used as a lookup to the corresponding product ID in
2471	// your product feeds. Provide a maximum of 100 featuredProduct (for
2472	// collections). Provide up to 10 featuredProduct (for Shoppable Images
2473	// only) with ID and X and Y coordinates. featured_product attribute
2474	// (https://support.google.com/merchants/answer/9703736)
2475	FeaturedProduct []*CollectionFeaturedProduct `json:"featuredProduct,omitempty"`
2476
2477	// Headline: Your collection's name. headline attribute
2478	// (https://support.google.com/merchants/answer/9673580)
2479	Headline []string `json:"headline,omitempty"`
2480
2481	// Id: Required. The REST ID of the collection. Content API methods that
2482	// operate on collections take this as their collectionId parameter. The
2483	// REST ID for a collection is of the form collectionId. id attribute
2484	// (https://support.google.com/merchants/answer/9649290)
2485	Id string `json:"id,omitempty"`
2486
2487	// ImageLink: The URL of a collection’s image. image_link attribute
2488	// (https://support.google.com/merchants/answer/9703236)
2489	ImageLink []string `json:"imageLink,omitempty"`
2490
2491	// Language: The language of a collection and the language of any
2492	// featured products linked to the collection. language attribute
2493	// (https://support.google.com/merchants/answer/9673781)
2494	Language string `json:"language,omitempty"`
2495
2496	// Link: A collection’s landing page. URL directly linking to your
2497	// collection's page on your website. link attribute
2498	// (https://support.google.com/merchants/answer/9673983)
2499	Link string `json:"link,omitempty"`
2500
2501	// MobileLink: A collection’s mobile-optimized landing page when you
2502	// have a different URL for mobile and desktop traffic. mobile_link
2503	// attribute (https://support.google.com/merchants/answer/9646123)
2504	MobileLink string `json:"mobileLink,omitempty"`
2505
2506	// ProductCountry: product_country attribute
2507	// (https://support.google.com/merchants/answer/9674155)
2508	ProductCountry string `json:"productCountry,omitempty"`
2509
2510	// ServerResponse contains the HTTP response code and headers from the
2511	// server.
2512	googleapi.ServerResponse `json:"-"`
2513
2514	// ForceSendFields is a list of field names (e.g. "CustomLabel0") to
2515	// unconditionally include in API requests. By default, fields with
2516	// empty values are omitted from API requests. However, any non-pointer,
2517	// non-interface field appearing in ForceSendFields will be sent to the
2518	// server regardless of whether the field is empty or not. This may be
2519	// used to include empty fields in Patch requests.
2520	ForceSendFields []string `json:"-"`
2521
2522	// NullFields is a list of field names (e.g. "CustomLabel0") to include
2523	// in API requests with the JSON null value. By default, fields with
2524	// empty values are omitted from API requests. However, any field with
2525	// an empty value appearing in NullFields will be sent to the server as
2526	// null. It is an error if a field in this list has a non-empty value.
2527	// This may be used to include null fields in Patch requests.
2528	NullFields []string `json:"-"`
2529}
2530
2531func (s *Collection) MarshalJSON() ([]byte, error) {
2532	type NoMethod Collection
2533	raw := NoMethod(*s)
2534	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2535}
2536
2537// CollectionFeaturedProduct: The message for FeaturedProduct.
2538// FeaturedProduct (https://support.google.com/merchants/answer/9703736)
2539type CollectionFeaturedProduct struct {
2540	// OfferId: The unique identifier for the product item.
2541	OfferId string `json:"offerId,omitempty"`
2542
2543	// X: Required. X-coordinate of the product callout on the Shoppable
2544	// Image.
2545	X float64 `json:"x,omitempty"`
2546
2547	// Y: Required. Y-coordinate of the product callout on the Shoppable
2548	// Image.
2549	Y float64 `json:"y,omitempty"`
2550
2551	// ForceSendFields is a list of field names (e.g. "OfferId") to
2552	// unconditionally include in API requests. By default, fields with
2553	// empty values are omitted from API requests. However, any non-pointer,
2554	// non-interface field appearing in ForceSendFields will be sent to the
2555	// server regardless of whether the field is empty or not. This may be
2556	// used to include empty fields in Patch requests.
2557	ForceSendFields []string `json:"-"`
2558
2559	// NullFields is a list of field names (e.g. "OfferId") to include in
2560	// API requests with the JSON null value. By default, fields with empty
2561	// values are omitted from API requests. However, any field with an
2562	// empty value appearing in NullFields will be sent to the server as
2563	// null. It is an error if a field in this list has a non-empty value.
2564	// This may be used to include null fields in Patch requests.
2565	NullFields []string `json:"-"`
2566}
2567
2568func (s *CollectionFeaturedProduct) MarshalJSON() ([]byte, error) {
2569	type NoMethod CollectionFeaturedProduct
2570	raw := NoMethod(*s)
2571	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2572}
2573
2574func (s *CollectionFeaturedProduct) UnmarshalJSON(data []byte) error {
2575	type NoMethod CollectionFeaturedProduct
2576	var s1 struct {
2577		X gensupport.JSONFloat64 `json:"x"`
2578		Y gensupport.JSONFloat64 `json:"y"`
2579		*NoMethod
2580	}
2581	s1.NoMethod = (*NoMethod)(s)
2582	if err := json.Unmarshal(data, &s1); err != nil {
2583		return err
2584	}
2585	s.X = float64(s1.X)
2586	s.Y = float64(s1.Y)
2587	return nil
2588}
2589
2590// CollectionStatus: The collectionstatus message.
2591type CollectionStatus struct {
2592	// CollectionLevelIssuses: A list of all issues associated with the
2593	// collection.
2594	CollectionLevelIssuses []*CollectionStatusItemLevelIssue `json:"collectionLevelIssuses,omitempty"`
2595
2596	// CreationDate: Date on which the collection has been created in ISO
2597	// 8601 (http://en.wikipedia.org/wiki/ISO_8601) format: Date, time, and
2598	// offset, e.g. "2020-01-02T09:00:00+01:00" or "2020-01-02T09:00:00Z"
2599	CreationDate string `json:"creationDate,omitempty"`
2600
2601	// DestinationStatuses: The intended destinations for the collection.
2602	DestinationStatuses []*CollectionStatusDestinationStatus `json:"destinationStatuses,omitempty"`
2603
2604	// Id: Required. The ID of the collection for which status is reported.
2605	Id string `json:"id,omitempty"`
2606
2607	// LastUpdateDate: Date on which the collection has been last updated in
2608	// ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601) format: Date, time,
2609	// and offset, e.g. "2020-01-02T09:00:00+01:00" or
2610	// "2020-01-02T09:00:00Z"
2611	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
2612
2613	// ServerResponse contains the HTTP response code and headers from the
2614	// server.
2615	googleapi.ServerResponse `json:"-"`
2616
2617	// ForceSendFields is a list of field names (e.g.
2618	// "CollectionLevelIssuses") to unconditionally include in API requests.
2619	// By default, fields with empty values are omitted from API requests.
2620	// However, any non-pointer, non-interface field appearing in
2621	// ForceSendFields will be sent to the server regardless of whether the
2622	// field is empty or not. This may be used to include empty fields in
2623	// Patch requests.
2624	ForceSendFields []string `json:"-"`
2625
2626	// NullFields is a list of field names (e.g. "CollectionLevelIssuses")
2627	// to include in API requests with the JSON null value. By default,
2628	// fields with empty values are omitted from API requests. However, any
2629	// field with an empty value appearing in NullFields will be sent to the
2630	// server as null. It is an error if a field in this list has a
2631	// non-empty value. This may be used to include null fields in Patch
2632	// requests.
2633	NullFields []string `json:"-"`
2634}
2635
2636func (s *CollectionStatus) MarshalJSON() ([]byte, error) {
2637	type NoMethod CollectionStatus
2638	raw := NoMethod(*s)
2639	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2640}
2641
2642// CollectionStatusDestinationStatus: Destination status message.
2643type CollectionStatusDestinationStatus struct {
2644	// Destination: The name of the destination
2645	Destination string `json:"destination,omitempty"`
2646
2647	// Status: The status for the specified destination.
2648	Status string `json:"status,omitempty"`
2649
2650	// ForceSendFields is a list of field names (e.g. "Destination") to
2651	// unconditionally include in API requests. By default, fields with
2652	// empty values are omitted from API requests. However, any non-pointer,
2653	// non-interface field appearing in ForceSendFields will be sent to the
2654	// server regardless of whether the field is empty or not. This may be
2655	// used to include empty fields in Patch requests.
2656	ForceSendFields []string `json:"-"`
2657
2658	// NullFields is a list of field names (e.g. "Destination") to include
2659	// in API requests with the JSON null value. By default, fields with
2660	// empty values are omitted from API requests. However, any field with
2661	// an empty value appearing in NullFields will be sent to the server as
2662	// null. It is an error if a field in this list has a non-empty value.
2663	// This may be used to include null fields in Patch requests.
2664	NullFields []string `json:"-"`
2665}
2666
2667func (s *CollectionStatusDestinationStatus) MarshalJSON() ([]byte, error) {
2668	type NoMethod CollectionStatusDestinationStatus
2669	raw := NoMethod(*s)
2670	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2671}
2672
2673// CollectionStatusItemLevelIssue: Issue associated with the collection.
2674type CollectionStatusItemLevelIssue struct {
2675	// AttributeName: The attribute's name, if the issue is caused by a
2676	// single attribute.
2677	AttributeName string `json:"attributeName,omitempty"`
2678
2679	// Code: The error code of the issue.
2680	Code string `json:"code,omitempty"`
2681
2682	// Description: A short issue description in English.
2683	Description string `json:"description,omitempty"`
2684
2685	// Destination: The destination the issue applies to.
2686	Destination string `json:"destination,omitempty"`
2687
2688	// Detail: A detailed issue description in English.
2689	Detail string `json:"detail,omitempty"`
2690
2691	// Documentation: The URL of a web page to help with resolving this
2692	// issue.
2693	Documentation string `json:"documentation,omitempty"`
2694
2695	// Resolution: Whether the issue can be resolved by the merchant.
2696	Resolution string `json:"resolution,omitempty"`
2697
2698	// Servability: How this issue affects the serving of the collection.
2699	Servability string `json:"servability,omitempty"`
2700
2701	// ForceSendFields is a list of field names (e.g. "AttributeName") to
2702	// unconditionally include in API requests. By default, fields with
2703	// empty values are omitted from API requests. However, any non-pointer,
2704	// non-interface field appearing in ForceSendFields will be sent to the
2705	// server regardless of whether the field is empty or not. This may be
2706	// used to include empty fields in Patch requests.
2707	ForceSendFields []string `json:"-"`
2708
2709	// NullFields is a list of field names (e.g. "AttributeName") 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 *CollectionStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
2719	type NoMethod CollectionStatusItemLevelIssue
2720	raw := NoMethod(*s)
2721	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2722}
2723
2724// Css: Information about CSS domain.
2725type Css struct {
2726	// CssDomainId: Output only. Immutable. The CSS domain ID.
2727	CssDomainId int64 `json:"cssDomainId,omitempty,string"`
2728
2729	// CssGroupId: Output only. Immutable. The ID of the CSS group this CSS
2730	// domain is affiliated with. Only populated for CSS group users.
2731	CssGroupId int64 `json:"cssGroupId,omitempty,string"`
2732
2733	// DisplayName: Output only. Immutable. The CSS domain's display name,
2734	// used when space is constrained.
2735	DisplayName string `json:"displayName,omitempty"`
2736
2737	// FullName: Output only. Immutable. The CSS domain's full name.
2738	FullName string `json:"fullName,omitempty"`
2739
2740	// HomepageUri: Output only. Immutable. The CSS domain's homepage.
2741	HomepageUri string `json:"homepageUri,omitempty"`
2742
2743	// LabelIds: A list of label IDs that are assigned to this CSS domain by
2744	// its CSS group. Only populated for CSS group users.
2745	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
2746
2747	// ServerResponse contains the HTTP response code and headers from the
2748	// server.
2749	googleapi.ServerResponse `json:"-"`
2750
2751	// ForceSendFields is a list of field names (e.g. "CssDomainId") to
2752	// unconditionally include in API requests. By default, fields with
2753	// empty values are omitted from API requests. However, any non-pointer,
2754	// non-interface field appearing in ForceSendFields will be sent to the
2755	// server regardless of whether the field is empty or not. This may be
2756	// used to include empty fields in Patch requests.
2757	ForceSendFields []string `json:"-"`
2758
2759	// NullFields is a list of field names (e.g. "CssDomainId") to include
2760	// in API requests with the JSON null value. By default, fields with
2761	// empty values are omitted from API requests. However, any field with
2762	// an empty value appearing in NullFields will be sent to the server as
2763	// null. It is an error if a field in this list has a non-empty value.
2764	// This may be used to include null fields in Patch requests.
2765	NullFields []string `json:"-"`
2766}
2767
2768func (s *Css) MarshalJSON() ([]byte, error) {
2769	type NoMethod Css
2770	raw := NoMethod(*s)
2771	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2772}
2773
2774type CustomAttribute struct {
2775	// GroupValues: Subattributes within this attribute group. Exactly one
2776	// of value or groupValues must be provided.
2777	GroupValues []*CustomAttribute `json:"groupValues,omitempty"`
2778
2779	// Name: The name of the attribute. Underscores will be replaced by
2780	// spaces upon insertion.
2781	Name string `json:"name,omitempty"`
2782
2783	// Value: The value of the attribute.
2784	Value string `json:"value,omitempty"`
2785
2786	// ForceSendFields is a list of field names (e.g. "GroupValues") to
2787	// unconditionally include in API requests. By default, fields with
2788	// empty values are omitted from API requests. However, any non-pointer,
2789	// non-interface field appearing in ForceSendFields will be sent to the
2790	// server regardless of whether the field is empty or not. This may be
2791	// used to include empty fields in Patch requests.
2792	ForceSendFields []string `json:"-"`
2793
2794	// NullFields is a list of field names (e.g. "GroupValues") to include
2795	// in API requests with the JSON null value. By default, fields with
2796	// empty values are omitted from API requests. However, any field with
2797	// an empty value appearing in NullFields will be sent to the server as
2798	// null. It is an error if a field in this list has a non-empty value.
2799	// This may be used to include null fields in Patch requests.
2800	NullFields []string `json:"-"`
2801}
2802
2803func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
2804	type NoMethod CustomAttribute
2805	raw := NoMethod(*s)
2806	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2807}
2808
2809type CustomerReturnReason struct {
2810	// Description: Description of the reason.
2811	Description string `json:"description,omitempty"`
2812
2813	// ReasonCode: Code of the return reason. Acceptable values are: -
2814	// "betterPriceFound" - "changedMind" - "damagedOrDefectiveItem" -
2815	// "didNotMatchDescription" - "doesNotFit" - "expiredItem" -
2816	// "incorrectItemReceived" - "noLongerNeeded" - "notSpecified" -
2817	// "orderedWrongItem" - "other" - "qualityNotExpected" -
2818	// "receivedTooLate" - "undeliverable"
2819	ReasonCode string `json:"reasonCode,omitempty"`
2820
2821	// ForceSendFields is a list of field names (e.g. "Description") to
2822	// unconditionally include in API requests. By default, fields with
2823	// empty values are omitted from API requests. However, any non-pointer,
2824	// non-interface field appearing in ForceSendFields will be sent to the
2825	// server regardless of whether the field is empty or not. This may be
2826	// used to include empty fields in Patch requests.
2827	ForceSendFields []string `json:"-"`
2828
2829	// NullFields is a list of field names (e.g. "Description") to include
2830	// in API requests with the JSON null value. By default, fields with
2831	// empty values are omitted from API requests. However, any field with
2832	// an empty value appearing in NullFields will be sent to the server as
2833	// null. It is an error if a field in this list has a non-empty value.
2834	// This may be used to include null fields in Patch requests.
2835	NullFields []string `json:"-"`
2836}
2837
2838func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
2839	type NoMethod CustomerReturnReason
2840	raw := NoMethod(*s)
2841	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2842}
2843
2844type CutoffTime struct {
2845	// Hour: Hour of the cutoff time until which an order has to be placed
2846	// to be processed in the same day. Required.
2847	Hour int64 `json:"hour,omitempty"`
2848
2849	// Minute: Minute of the cutoff time until which an order has to be
2850	// placed to be processed in the same day. Required.
2851	Minute int64 `json:"minute,omitempty"`
2852
2853	// Timezone: Timezone identifier for the cutoff time. A list of
2854	// identifiers can be found in the AdWords API documentation. E.g.
2855	// "Europe/Zurich". Required.
2856	Timezone string `json:"timezone,omitempty"`
2857
2858	// ForceSendFields is a list of field names (e.g. "Hour") to
2859	// unconditionally include in API requests. By default, fields with
2860	// empty values are omitted from API requests. However, any non-pointer,
2861	// non-interface field appearing in ForceSendFields will be sent to the
2862	// server regardless of whether the field is empty or not. This may be
2863	// used to include empty fields in Patch requests.
2864	ForceSendFields []string `json:"-"`
2865
2866	// NullFields is a list of field names (e.g. "Hour") to include in API
2867	// requests with the JSON null value. By default, fields with empty
2868	// values are omitted from API requests. However, any field with an
2869	// empty value appearing in NullFields will be sent to the server as
2870	// null. It is an error if a field in this list has a non-empty value.
2871	// This may be used to include null fields in Patch requests.
2872	NullFields []string `json:"-"`
2873}
2874
2875func (s *CutoffTime) MarshalJSON() ([]byte, error) {
2876	type NoMethod CutoffTime
2877	raw := NoMethod(*s)
2878	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2879}
2880
2881// Datafeed: Datafeed configuration data.
2882type Datafeed struct {
2883	// AttributeLanguage: The two-letter ISO 639-1 language in which the
2884	// attributes are defined in the data feed.
2885	AttributeLanguage string `json:"attributeLanguage,omitempty"`
2886
2887	// ContentType: Required. The type of data feed. For product inventory
2888	// feeds, only feeds for local stores, not online stores, are supported.
2889	// Acceptable values are: - "local products" - "product inventory" -
2890	// "products"
2891	ContentType string `json:"contentType,omitempty"`
2892
2893	// FetchSchedule: Fetch schedule for the feed file.
2894	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
2895
2896	// FileName: Required. The filename of the feed. All feeds must have a
2897	// unique file name.
2898	FileName string `json:"fileName,omitempty"`
2899
2900	// Format: Format of the feed file.
2901	Format *DatafeedFormat `json:"format,omitempty"`
2902
2903	// Id: Required for update. The ID of the data feed.
2904	Id int64 `json:"id,omitempty,string"`
2905
2906	// Kind: Identifies what kind of resource this is. Value: the fixed
2907	// string "content#datafeed"
2908	Kind string `json:"kind,omitempty"`
2909
2910	// Name: Required for insert. A descriptive name of the data feed.
2911	Name string `json:"name,omitempty"`
2912
2913	// Targets: The targets this feed should apply to (country, language,
2914	// destinations).
2915	Targets []*DatafeedTarget `json:"targets,omitempty"`
2916
2917	// ServerResponse contains the HTTP response code and headers from the
2918	// server.
2919	googleapi.ServerResponse `json:"-"`
2920
2921	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
2922	// to unconditionally include in API requests. By default, fields with
2923	// empty values are omitted from API requests. However, any non-pointer,
2924	// non-interface field appearing in ForceSendFields will be sent to the
2925	// server regardless of whether the field is empty or not. This may be
2926	// used to include empty fields in Patch requests.
2927	ForceSendFields []string `json:"-"`
2928
2929	// NullFields is a list of field names (e.g. "AttributeLanguage") to
2930	// include in API requests with the JSON null value. By default, fields
2931	// with empty values are omitted from API requests. However, any field
2932	// with an empty value appearing in NullFields will be sent to the
2933	// server as null. It is an error if a field in this list has a
2934	// non-empty value. This may be used to include null fields in Patch
2935	// requests.
2936	NullFields []string `json:"-"`
2937}
2938
2939func (s *Datafeed) MarshalJSON() ([]byte, error) {
2940	type NoMethod Datafeed
2941	raw := NoMethod(*s)
2942	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2943}
2944
2945// DatafeedFetchSchedule: The required fields vary based on the
2946// frequency of fetching. For a monthly fetch schedule, day_of_month and
2947// hour are required. For a weekly fetch schedule, weekday and hour are
2948// required. For a daily fetch schedule, only hour is required.
2949type DatafeedFetchSchedule struct {
2950	// DayOfMonth: The day of the month the feed file should be fetched
2951	// (1-31).
2952	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
2953
2954	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
2955	// Center will support automatic scheduled uploads using the HTTP,
2956	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
2957	// link using one of those four protocols.
2958	FetchUrl string `json:"fetchUrl,omitempty"`
2959
2960	// Hour: The hour of the day the feed file should be fetched (0-23).
2961	Hour int64 `json:"hour,omitempty"`
2962
2963	// MinuteOfHour: The minute of the hour the feed file should be fetched
2964	// (0-59). Read-only.
2965	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
2966
2967	// Password: An optional password for fetch_url.
2968	Password string `json:"password,omitempty"`
2969
2970	// Paused: Whether the scheduled fetch is paused or not.
2971	Paused bool `json:"paused,omitempty"`
2972
2973	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
2974	// "America/Los_Angeles".
2975	TimeZone string `json:"timeZone,omitempty"`
2976
2977	// Username: An optional user name for fetch_url.
2978	Username string `json:"username,omitempty"`
2979
2980	// Weekday: The day of the week the feed file should be fetched.
2981	// Acceptable values are: - "monday" - "tuesday" - "wednesday" -
2982	// "thursday" - "friday" - "saturday" - "sunday"
2983	Weekday string `json:"weekday,omitempty"`
2984
2985	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
2986	// unconditionally include in API requests. By default, fields with
2987	// empty values are omitted from API requests. However, any non-pointer,
2988	// non-interface field appearing in ForceSendFields will be sent to the
2989	// server regardless of whether the field is empty or not. This may be
2990	// used to include empty fields in Patch requests.
2991	ForceSendFields []string `json:"-"`
2992
2993	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
2994	// API requests with the JSON null value. By default, fields with empty
2995	// values are omitted from API requests. However, any field with an
2996	// empty value appearing in NullFields will be sent to the server as
2997	// null. It is an error if a field in this list has a non-empty value.
2998	// This may be used to include null fields in Patch requests.
2999	NullFields []string `json:"-"`
3000}
3001
3002func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
3003	type NoMethod DatafeedFetchSchedule
3004	raw := NoMethod(*s)
3005	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3006}
3007
3008type DatafeedFormat struct {
3009	// ColumnDelimiter: Delimiter for the separation of values in a
3010	// delimiter-separated values feed. If not specified, the delimiter will
3011	// be auto-detected. Ignored for non-DSV data feeds. Acceptable values
3012	// are: - "pipe" - "tab" - "tilde"
3013	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
3014
3015	// FileEncoding: Character encoding scheme of the data feed. If not
3016	// specified, the encoding will be auto-detected. Acceptable values are:
3017	// - "latin-1" - "utf-16be" - "utf-16le" - "utf-8" -
3018	// "windows-1252"
3019	FileEncoding string `json:"fileEncoding,omitempty"`
3020
3021	// QuotingMode: Specifies how double quotes are interpreted. If not
3022	// specified, the mode will be auto-detected. Ignored for non-DSV data
3023	// feeds. Acceptable values are: - "normal character" - "value
3024	// quoting"
3025	QuotingMode string `json:"quotingMode,omitempty"`
3026
3027	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
3028	// unconditionally include in API requests. By default, fields with
3029	// empty values are omitted from API requests. However, any non-pointer,
3030	// non-interface field appearing in ForceSendFields will be sent to the
3031	// server regardless of whether the field is empty or not. This may be
3032	// used to include empty fields in Patch requests.
3033	ForceSendFields []string `json:"-"`
3034
3035	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
3036	// include in API requests with the JSON null value. By default, fields
3037	// with empty values are omitted from API requests. However, any field
3038	// with an empty value appearing in NullFields will be sent to the
3039	// server as null. It is an error if a field in this list has a
3040	// non-empty value. This may be used to include null fields in Patch
3041	// requests.
3042	NullFields []string `json:"-"`
3043}
3044
3045func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
3046	type NoMethod DatafeedFormat
3047	raw := NoMethod(*s)
3048	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3049}
3050
3051// DatafeedStatus: The status of a datafeed, i.e., the result of the
3052// last retrieval of the datafeed computed asynchronously when the feed
3053// processing is finished.
3054type DatafeedStatus struct {
3055	// Country: The country for which the status is reported, represented as
3056	// a CLDR territory code.
3057	Country string `json:"country,omitempty"`
3058
3059	// DatafeedId: The ID of the feed for which the status is reported.
3060	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3061
3062	// Errors: The list of errors occurring in the feed.
3063	Errors []*DatafeedStatusError `json:"errors,omitempty"`
3064
3065	// ItemsTotal: The number of items in the feed that were processed.
3066	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
3067
3068	// ItemsValid: The number of items in the feed that were valid.
3069	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
3070
3071	// Kind: Identifies what kind of resource this is. Value: the fixed
3072	// string "content#datafeedStatus"
3073	Kind string `json:"kind,omitempty"`
3074
3075	// Language: The two-letter ISO 639-1 language for which the status is
3076	// reported.
3077	Language string `json:"language,omitempty"`
3078
3079	// LastUploadDate: The last date at which the feed was uploaded.
3080	LastUploadDate string `json:"lastUploadDate,omitempty"`
3081
3082	// ProcessingStatus: The processing status of the feed. Acceptable
3083	// values are: - ""failure": The feed could not be processed or all
3084	// items had errors." - "in progress": The feed is being processed. -
3085	// "none": The feed has not yet been processed. For example, a feed
3086	// that has never been uploaded will have this processing status. -
3087	// "success": The feed was processed successfully, though some items
3088	// might have had errors.
3089	ProcessingStatus string `json:"processingStatus,omitempty"`
3090
3091	// Warnings: The list of errors occurring in the feed.
3092	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
3093
3094	// ServerResponse contains the HTTP response code and headers from the
3095	// server.
3096	googleapi.ServerResponse `json:"-"`
3097
3098	// ForceSendFields is a list of field names (e.g. "Country") to
3099	// unconditionally include in API requests. By default, fields with
3100	// empty values are omitted from API requests. However, any non-pointer,
3101	// non-interface field appearing in ForceSendFields will be sent to the
3102	// server regardless of whether the field is empty or not. This may be
3103	// used to include empty fields in Patch requests.
3104	ForceSendFields []string `json:"-"`
3105
3106	// NullFields is a list of field names (e.g. "Country") to include in
3107	// API requests with the JSON null value. By default, fields with empty
3108	// values are omitted from API requests. However, any field with an
3109	// empty value appearing in NullFields will be sent to the server as
3110	// null. It is an error if a field in this list has a non-empty value.
3111	// This may be used to include null fields in Patch requests.
3112	NullFields []string `json:"-"`
3113}
3114
3115func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
3116	type NoMethod DatafeedStatus
3117	raw := NoMethod(*s)
3118	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3119}
3120
3121// DatafeedStatusError: An error occurring in the feed, like "invalid
3122// price".
3123type DatafeedStatusError struct {
3124	// Code: The code of the error, e.g., "validation/invalid_value".
3125	Code string `json:"code,omitempty"`
3126
3127	// Count: The number of occurrences of the error in the feed.
3128	Count uint64 `json:"count,omitempty,string"`
3129
3130	// Examples: A list of example occurrences of the error, grouped by
3131	// product.
3132	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
3133
3134	// Message: The error message, e.g., "Invalid price".
3135	Message string `json:"message,omitempty"`
3136
3137	// ForceSendFields is a list of field names (e.g. "Code") to
3138	// unconditionally include in API requests. By default, fields with
3139	// empty values are omitted from API requests. However, any non-pointer,
3140	// non-interface field appearing in ForceSendFields will be sent to the
3141	// server regardless of whether the field is empty or not. This may be
3142	// used to include empty fields in Patch requests.
3143	ForceSendFields []string `json:"-"`
3144
3145	// NullFields is a list of field names (e.g. "Code") to include in API
3146	// requests with the JSON null value. By default, fields with empty
3147	// values are omitted from API requests. However, any field with an
3148	// empty value appearing in NullFields will be sent to the server as
3149	// null. It is an error if a field in this list has a non-empty value.
3150	// This may be used to include null fields in Patch requests.
3151	NullFields []string `json:"-"`
3152}
3153
3154func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
3155	type NoMethod DatafeedStatusError
3156	raw := NoMethod(*s)
3157	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3158}
3159
3160// DatafeedStatusExample: An example occurrence for a particular error.
3161type DatafeedStatusExample struct {
3162	// ItemId: The ID of the example item.
3163	ItemId string `json:"itemId,omitempty"`
3164
3165	// LineNumber: Line number in the data feed where the example is found.
3166	LineNumber uint64 `json:"lineNumber,omitempty,string"`
3167
3168	// Value: The problematic value.
3169	Value string `json:"value,omitempty"`
3170
3171	// ForceSendFields is a list of field names (e.g. "ItemId") to
3172	// unconditionally include in API requests. By default, fields with
3173	// empty values are omitted from API requests. However, any non-pointer,
3174	// non-interface field appearing in ForceSendFields will be sent to the
3175	// server regardless of whether the field is empty or not. This may be
3176	// used to include empty fields in Patch requests.
3177	ForceSendFields []string `json:"-"`
3178
3179	// NullFields is a list of field names (e.g. "ItemId") to include in API
3180	// requests with the JSON null value. By default, fields with empty
3181	// values are omitted from API requests. However, any field with an
3182	// empty value appearing in NullFields will be sent to the server as
3183	// null. It is an error if a field in this list has a non-empty value.
3184	// This may be used to include null fields in Patch requests.
3185	NullFields []string `json:"-"`
3186}
3187
3188func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
3189	type NoMethod DatafeedStatusExample
3190	raw := NoMethod(*s)
3191	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3192}
3193
3194type DatafeedTarget struct {
3195	// Country: The country where the items in the feed will be included in
3196	// the search index, represented as a CLDR territory code.
3197	Country string `json:"country,omitempty"`
3198
3199	// ExcludedDestinations: The list of destinations to exclude for this
3200	// target (corresponds to unchecked check boxes in Merchant Center).
3201	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
3202
3203	// IncludedDestinations: The list of destinations to include for this
3204	// target (corresponds to checked check boxes in Merchant Center).
3205	// Default destinations are always included unless provided in
3206	// `excludedDestinations`. List of supported destinations (if available
3207	// to the account): - DisplayAds - Shopping - ShoppingActions -
3208	// SurfacesAcrossGoogle
3209	IncludedDestinations []string `json:"includedDestinations,omitempty"`
3210
3211	// Language: The two-letter ISO 639-1 language of the items in the feed.
3212	// Must be a valid language for `targets[].country`.
3213	Language string `json:"language,omitempty"`
3214
3215	// ForceSendFields is a list of field names (e.g. "Country") to
3216	// unconditionally include in API requests. By default, fields with
3217	// empty values are omitted from API requests. However, any non-pointer,
3218	// non-interface field appearing in ForceSendFields will be sent to the
3219	// server regardless of whether the field is empty or not. This may be
3220	// used to include empty fields in Patch requests.
3221	ForceSendFields []string `json:"-"`
3222
3223	// NullFields is a list of field names (e.g. "Country") to include in
3224	// API requests with the JSON null value. By default, fields with empty
3225	// values are omitted from API requests. However, any field with an
3226	// empty value appearing in NullFields will be sent to the server as
3227	// null. It is an error if a field in this list has a non-empty value.
3228	// This may be used to include null fields in Patch requests.
3229	NullFields []string `json:"-"`
3230}
3231
3232func (s *DatafeedTarget) MarshalJSON() ([]byte, error) {
3233	type NoMethod DatafeedTarget
3234	raw := NoMethod(*s)
3235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3236}
3237
3238type DatafeedsCustomBatchRequest struct {
3239	// Entries: The request entries to be processed in the batch.
3240	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
3241
3242	// ForceSendFields is a list of field names (e.g. "Entries") to
3243	// unconditionally include in API requests. By default, fields with
3244	// empty values are omitted from API requests. However, any non-pointer,
3245	// non-interface field appearing in ForceSendFields will be sent to the
3246	// server regardless of whether the field is empty or not. This may be
3247	// used to include empty fields in Patch requests.
3248	ForceSendFields []string `json:"-"`
3249
3250	// NullFields is a list of field names (e.g. "Entries") to include in
3251	// API requests with the JSON null value. By default, fields with empty
3252	// values are omitted from API requests. However, any field with an
3253	// empty value appearing in NullFields will be sent to the server as
3254	// null. It is an error if a field in this list has a non-empty value.
3255	// This may be used to include null fields in Patch requests.
3256	NullFields []string `json:"-"`
3257}
3258
3259func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
3260	type NoMethod DatafeedsCustomBatchRequest
3261	raw := NoMethod(*s)
3262	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3263}
3264
3265// DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
3266// non-batch datafeeds request.
3267type DatafeedsCustomBatchRequestEntry struct {
3268	// BatchId: An entry ID, unique within the batch request.
3269	BatchId int64 `json:"batchId,omitempty"`
3270
3271	// Datafeed: The data feed to insert.
3272	Datafeed *Datafeed `json:"datafeed,omitempty"`
3273
3274	// DatafeedId: The ID of the data feed to get, delete or fetch.
3275	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3276
3277	// MerchantId: The ID of the managing account.
3278	MerchantId uint64 `json:"merchantId,omitempty,string"`
3279
3280	// Method: The method of the batch entry. Acceptable values are: -
3281	// "delete" - "fetchNow" - "get" - "insert" - "update"
3282	Method string `json:"method,omitempty"`
3283
3284	// ForceSendFields is a list of field names (e.g. "BatchId") to
3285	// unconditionally include in API requests. By default, fields with
3286	// empty values are omitted from API requests. However, any non-pointer,
3287	// non-interface field appearing in ForceSendFields will be sent to the
3288	// server regardless of whether the field is empty or not. This may be
3289	// used to include empty fields in Patch requests.
3290	ForceSendFields []string `json:"-"`
3291
3292	// NullFields is a list of field names (e.g. "BatchId") to include in
3293	// API requests with the JSON null value. By default, fields with empty
3294	// values are omitted from API requests. However, any field with an
3295	// empty value appearing in NullFields will be sent to the server as
3296	// null. It is an error if a field in this list has a non-empty value.
3297	// This may be used to include null fields in Patch requests.
3298	NullFields []string `json:"-"`
3299}
3300
3301func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3302	type NoMethod DatafeedsCustomBatchRequestEntry
3303	raw := NoMethod(*s)
3304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3305}
3306
3307type DatafeedsCustomBatchResponse struct {
3308	// Entries: The result of the execution of the batch requests.
3309	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
3310
3311	// Kind: Identifies what kind of resource this is. Value: the fixed
3312	// string "content#datafeedsCustomBatchResponse".
3313	Kind string `json:"kind,omitempty"`
3314
3315	// ServerResponse contains the HTTP response code and headers from the
3316	// server.
3317	googleapi.ServerResponse `json:"-"`
3318
3319	// ForceSendFields is a list of field names (e.g. "Entries") to
3320	// unconditionally include in API requests. By default, fields with
3321	// empty values are omitted from API requests. However, any non-pointer,
3322	// non-interface field appearing in ForceSendFields will be sent to the
3323	// server regardless of whether the field is empty or not. This may be
3324	// used to include empty fields in Patch requests.
3325	ForceSendFields []string `json:"-"`
3326
3327	// NullFields is a list of field names (e.g. "Entries") to include in
3328	// API requests with the JSON null value. By default, fields with empty
3329	// values are omitted from API requests. However, any field with an
3330	// empty value appearing in NullFields will be sent to the server as
3331	// null. It is an error if a field in this list has a non-empty value.
3332	// This may be used to include null fields in Patch requests.
3333	NullFields []string `json:"-"`
3334}
3335
3336func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
3337	type NoMethod DatafeedsCustomBatchResponse
3338	raw := NoMethod(*s)
3339	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3340}
3341
3342// DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
3343// non-batch datafeeds response.
3344type DatafeedsCustomBatchResponseEntry struct {
3345	// BatchId: The ID of the request entry this entry responds to.
3346	BatchId int64 `json:"batchId,omitempty"`
3347
3348	// Datafeed: The requested data feed. Defined if and only if the request
3349	// was successful.
3350	Datafeed *Datafeed `json:"datafeed,omitempty"`
3351
3352	// Errors: A list of errors defined if and only if the request failed.
3353	Errors *Errors `json:"errors,omitempty"`
3354
3355	// ForceSendFields is a list of field names (e.g. "BatchId") to
3356	// unconditionally include in API requests. By default, fields with
3357	// empty values are omitted from API requests. However, any non-pointer,
3358	// non-interface field appearing in ForceSendFields will be sent to the
3359	// server regardless of whether the field is empty or not. This may be
3360	// used to include empty fields in Patch requests.
3361	ForceSendFields []string `json:"-"`
3362
3363	// NullFields is a list of field names (e.g. "BatchId") to include in
3364	// API requests with the JSON null value. By default, fields with empty
3365	// values are omitted from API requests. However, any field with an
3366	// empty value appearing in NullFields will be sent to the server as
3367	// null. It is an error if a field in this list has a non-empty value.
3368	// This may be used to include null fields in Patch requests.
3369	NullFields []string `json:"-"`
3370}
3371
3372func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3373	type NoMethod DatafeedsCustomBatchResponseEntry
3374	raw := NoMethod(*s)
3375	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3376}
3377
3378type DatafeedsFetchNowResponse struct {
3379	// Kind: Identifies what kind of resource this is. Value: the fixed
3380	// string "content#datafeedsFetchNowResponse".
3381	Kind string `json:"kind,omitempty"`
3382
3383	// ServerResponse contains the HTTP response code and headers from the
3384	// server.
3385	googleapi.ServerResponse `json:"-"`
3386
3387	// ForceSendFields is a list of field names (e.g. "Kind") to
3388	// unconditionally include in API requests. By default, fields with
3389	// empty values are omitted from API requests. However, any non-pointer,
3390	// non-interface field appearing in ForceSendFields will be sent to the
3391	// server regardless of whether the field is empty or not. This may be
3392	// used to include empty fields in Patch requests.
3393	ForceSendFields []string `json:"-"`
3394
3395	// NullFields is a list of field names (e.g. "Kind") to include in API
3396	// requests with the JSON null value. By default, fields with empty
3397	// values are omitted from API requests. However, any field with an
3398	// empty value appearing in NullFields will be sent to the server as
3399	// null. It is an error if a field in this list has a non-empty value.
3400	// This may be used to include null fields in Patch requests.
3401	NullFields []string `json:"-"`
3402}
3403
3404func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
3405	type NoMethod DatafeedsFetchNowResponse
3406	raw := NoMethod(*s)
3407	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3408}
3409
3410type DatafeedsListResponse struct {
3411	// Kind: Identifies what kind of resource this is. Value: the fixed
3412	// string "content#datafeedsListResponse".
3413	Kind string `json:"kind,omitempty"`
3414
3415	// NextPageToken: The token for the retrieval of the next page of
3416	// datafeeds.
3417	NextPageToken string `json:"nextPageToken,omitempty"`
3418
3419	Resources []*Datafeed `json:"resources,omitempty"`
3420
3421	// ServerResponse contains the HTTP response code and headers from the
3422	// server.
3423	googleapi.ServerResponse `json:"-"`
3424
3425	// ForceSendFields is a list of field names (e.g. "Kind") to
3426	// unconditionally include in API requests. By default, fields with
3427	// empty values are omitted from API requests. However, any non-pointer,
3428	// non-interface field appearing in ForceSendFields will be sent to the
3429	// server regardless of whether the field is empty or not. This may be
3430	// used to include empty fields in Patch requests.
3431	ForceSendFields []string `json:"-"`
3432
3433	// NullFields is a list of field names (e.g. "Kind") to include in API
3434	// requests with the JSON null value. By default, fields with empty
3435	// values are omitted from API requests. However, any field with an
3436	// empty value appearing in NullFields will be sent to the server as
3437	// null. It is an error if a field in this list has a non-empty value.
3438	// This may be used to include null fields in Patch requests.
3439	NullFields []string `json:"-"`
3440}
3441
3442func (s *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
3443	type NoMethod DatafeedsListResponse
3444	raw := NoMethod(*s)
3445	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3446}
3447
3448type DatafeedstatusesCustomBatchRequest struct {
3449	// Entries: The request entries to be processed in the batch.
3450	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
3451
3452	// ForceSendFields is a list of field names (e.g. "Entries") to
3453	// unconditionally include in API requests. By default, fields with
3454	// empty values are omitted from API requests. However, any non-pointer,
3455	// non-interface field appearing in ForceSendFields will be sent to the
3456	// server regardless of whether the field is empty or not. This may be
3457	// used to include empty fields in Patch requests.
3458	ForceSendFields []string `json:"-"`
3459
3460	// NullFields is a list of field names (e.g. "Entries") to include in
3461	// API requests with the JSON null value. By default, fields with empty
3462	// values are omitted from API requests. However, any field with an
3463	// empty value appearing in NullFields will be sent to the server as
3464	// null. It is an error if a field in this list has a non-empty value.
3465	// This may be used to include null fields in Patch requests.
3466	NullFields []string `json:"-"`
3467}
3468
3469func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
3470	type NoMethod DatafeedstatusesCustomBatchRequest
3471	raw := NoMethod(*s)
3472	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3473}
3474
3475// DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
3476// single non-batch datafeedstatuses request.
3477type DatafeedstatusesCustomBatchRequestEntry struct {
3478	// BatchId: An entry ID, unique within the batch request.
3479	BatchId int64 `json:"batchId,omitempty"`
3480
3481	// Country: The country for which to get the datafeed status. If this
3482	// parameter is provided then language must also be provided. Note that
3483	// for multi-target datafeeds this parameter is required.
3484	Country string `json:"country,omitempty"`
3485
3486	// DatafeedId: The ID of the data feed to get.
3487	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3488
3489	// Language: The language for which to get the datafeed status. If this
3490	// parameter is provided then country must also be provided. Note that
3491	// for multi-target datafeeds this parameter is required.
3492	Language string `json:"language,omitempty"`
3493
3494	// MerchantId: The ID of the managing account.
3495	MerchantId uint64 `json:"merchantId,omitempty,string"`
3496
3497	// Method: The method of the batch entry. Acceptable values are: -
3498	// "get"
3499	Method string `json:"method,omitempty"`
3500
3501	// ForceSendFields is a list of field names (e.g. "BatchId") to
3502	// unconditionally include in API requests. By default, fields with
3503	// empty values are omitted from API requests. However, any non-pointer,
3504	// non-interface field appearing in ForceSendFields will be sent to the
3505	// server regardless of whether the field is empty or not. This may be
3506	// used to include empty fields in Patch requests.
3507	ForceSendFields []string `json:"-"`
3508
3509	// NullFields is a list of field names (e.g. "BatchId") to include in
3510	// API requests with the JSON null value. By default, fields with empty
3511	// values are omitted from API requests. However, any field with an
3512	// empty value appearing in NullFields will be sent to the server as
3513	// null. It is an error if a field in this list has a non-empty value.
3514	// This may be used to include null fields in Patch requests.
3515	NullFields []string `json:"-"`
3516}
3517
3518func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3519	type NoMethod DatafeedstatusesCustomBatchRequestEntry
3520	raw := NoMethod(*s)
3521	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3522}
3523
3524type DatafeedstatusesCustomBatchResponse struct {
3525	// Entries: The result of the execution of the batch requests.
3526	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
3527
3528	// Kind: Identifies what kind of resource this is. Value: the fixed
3529	// string "content#datafeedstatusesCustomBatchResponse".
3530	Kind string `json:"kind,omitempty"`
3531
3532	// ServerResponse contains the HTTP response code and headers from the
3533	// server.
3534	googleapi.ServerResponse `json:"-"`
3535
3536	// ForceSendFields is a list of field names (e.g. "Entries") to
3537	// unconditionally include in API requests. By default, fields with
3538	// empty values are omitted from API requests. However, any non-pointer,
3539	// non-interface field appearing in ForceSendFields will be sent to the
3540	// server regardless of whether the field is empty or not. This may be
3541	// used to include empty fields in Patch requests.
3542	ForceSendFields []string `json:"-"`
3543
3544	// NullFields is a list of field names (e.g. "Entries") to include in
3545	// API requests with the JSON null value. By default, fields with empty
3546	// values are omitted from API requests. However, any field with an
3547	// empty value appearing in NullFields will be sent to the server as
3548	// null. It is an error if a field in this list has a non-empty value.
3549	// This may be used to include null fields in Patch requests.
3550	NullFields []string `json:"-"`
3551}
3552
3553func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
3554	type NoMethod DatafeedstatusesCustomBatchResponse
3555	raw := NoMethod(*s)
3556	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3557}
3558
3559// DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
3560// single non-batch datafeedstatuses response.
3561type DatafeedstatusesCustomBatchResponseEntry struct {
3562	// BatchId: The ID of the request entry this entry responds to.
3563	BatchId int64 `json:"batchId,omitempty"`
3564
3565	// DatafeedStatus: The requested data feed status. Defined if and only
3566	// if the request was successful.
3567	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
3568
3569	// Errors: A list of errors defined if and only if the request failed.
3570	Errors *Errors `json:"errors,omitempty"`
3571
3572	// ForceSendFields is a list of field names (e.g. "BatchId") to
3573	// unconditionally include in API requests. By default, fields with
3574	// empty values are omitted from API requests. However, any non-pointer,
3575	// non-interface field appearing in ForceSendFields will be sent to the
3576	// server regardless of whether the field is empty or not. This may be
3577	// used to include empty fields in Patch requests.
3578	ForceSendFields []string `json:"-"`
3579
3580	// NullFields is a list of field names (e.g. "BatchId") to include in
3581	// API requests with the JSON null value. By default, fields with empty
3582	// values are omitted from API requests. However, any field with an
3583	// empty value appearing in NullFields will be sent to the server as
3584	// null. It is an error if a field in this list has a non-empty value.
3585	// This may be used to include null fields in Patch requests.
3586	NullFields []string `json:"-"`
3587}
3588
3589func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3590	type NoMethod DatafeedstatusesCustomBatchResponseEntry
3591	raw := NoMethod(*s)
3592	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3593}
3594
3595type DatafeedstatusesListResponse struct {
3596	// Kind: Identifies what kind of resource this is. Value: the fixed
3597	// string "content#datafeedstatusesListResponse".
3598	Kind string `json:"kind,omitempty"`
3599
3600	// NextPageToken: The token for the retrieval of the next page of
3601	// datafeed statuses.
3602	NextPageToken string `json:"nextPageToken,omitempty"`
3603
3604	Resources []*DatafeedStatus `json:"resources,omitempty"`
3605
3606	// ServerResponse contains the HTTP response code and headers from the
3607	// server.
3608	googleapi.ServerResponse `json:"-"`
3609
3610	// ForceSendFields is a list of field names (e.g. "Kind") to
3611	// unconditionally include in API requests. By default, fields with
3612	// empty values are omitted from API requests. However, any non-pointer,
3613	// non-interface field appearing in ForceSendFields will be sent to the
3614	// server regardless of whether the field is empty or not. This may be
3615	// used to include empty fields in Patch requests.
3616	ForceSendFields []string `json:"-"`
3617
3618	// NullFields is a list of field names (e.g. "Kind") to include in API
3619	// requests with the JSON null value. By default, fields with empty
3620	// values are omitted from API requests. However, any field with an
3621	// empty value appearing in NullFields will be sent to the server as
3622	// null. It is an error if a field in this list has a non-empty value.
3623	// This may be used to include null fields in Patch requests.
3624	NullFields []string `json:"-"`
3625}
3626
3627func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
3628	type NoMethod DatafeedstatusesListResponse
3629	raw := NoMethod(*s)
3630	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3631}
3632
3633// Date: Represents a whole or partial calendar date, such as a
3634// birthday. The time of day and time zone are either specified
3635// elsewhere or are insignificant. The date is relative to the Gregorian
3636// Calendar. This can represent one of the following: * A full date,
3637// with non-zero year, month, and day values * A month and day value,
3638// with a zero year, such as an anniversary * A year on its own, with
3639// zero month and day values * A year and month value, with a zero day,
3640// such as a credit card expiration date Related types are
3641// google.type.TimeOfDay and `google.protobuf.Timestamp`.
3642type Date struct {
3643	// Day: Day of a month. Must be from 1 to 31 and valid for the year and
3644	// month, or 0 to specify a year by itself or a year and month where the
3645	// day isn't significant.
3646	Day int64 `json:"day,omitempty"`
3647
3648	// Month: Month of a year. Must be from 1 to 12, or 0 to specify a year
3649	// without a month and day.
3650	Month int64 `json:"month,omitempty"`
3651
3652	// Year: Year of the date. Must be from 1 to 9999, or 0 to specify a
3653	// date without a year.
3654	Year int64 `json:"year,omitempty"`
3655
3656	// ForceSendFields is a list of field names (e.g. "Day") to
3657	// unconditionally include in API requests. By default, fields with
3658	// empty values are omitted from API requests. However, any non-pointer,
3659	// non-interface field appearing in ForceSendFields will be sent to the
3660	// server regardless of whether the field is empty or not. This may be
3661	// used to include empty fields in Patch requests.
3662	ForceSendFields []string `json:"-"`
3663
3664	// NullFields is a list of field names (e.g. "Day") to include in API
3665	// requests with the JSON null value. By default, fields with empty
3666	// values are omitted from API requests. However, any field with an
3667	// empty value appearing in NullFields will be sent to the server as
3668	// null. It is an error if a field in this list has a non-empty value.
3669	// This may be used to include null fields in Patch requests.
3670	NullFields []string `json:"-"`
3671}
3672
3673func (s *Date) MarshalJSON() ([]byte, error) {
3674	type NoMethod Date
3675	raw := NoMethod(*s)
3676	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3677}
3678
3679// DateTime: Represents civil time (or occasionally physical time). This
3680// type can represent a civil time in one of a few possible ways: * When
3681// utc_offset is set and time_zone is unset: a civil time on a calendar
3682// day with a particular offset from UTC. * When time_zone is set and
3683// utc_offset is unset: a civil time on a calendar day in a particular
3684// time zone. * When neither time_zone nor utc_offset is set: a civil
3685// time on a calendar day in local time. The date is relative to the
3686// Proleptic Gregorian Calendar. If year is 0, the DateTime is
3687// considered not to have a specific year. month and day must have
3688// valid, non-zero values. This type may also be used to represent a
3689// physical time if all the date and time fields are set and either case
3690// of the `time_offset` oneof is set. Consider using `Timestamp` message
3691// for physical time instead. If your use case also would like to store
3692// the user's timezone, that can be done in another field. This type is
3693// more flexible than some applications may want. Make sure to document
3694// and validate your application's limitations.
3695type DateTime struct {
3696	// Day: Required. Day of month. Must be from 1 to 31 and valid for the
3697	// year and month.
3698	Day int64 `json:"day,omitempty"`
3699
3700	// Hours: Required. Hours of day in 24 hour format. Should be from 0 to
3701	// 23. An API may choose to allow the value "24:00:00" for scenarios
3702	// like business closing time.
3703	Hours int64 `json:"hours,omitempty"`
3704
3705	// Minutes: Required. Minutes of hour of day. Must be from 0 to 59.
3706	Minutes int64 `json:"minutes,omitempty"`
3707
3708	// Month: Required. Month of year. Must be from 1 to 12.
3709	Month int64 `json:"month,omitempty"`
3710
3711	// Nanos: Required. Fractions of seconds in nanoseconds. Must be from 0
3712	// to 999,999,999.
3713	Nanos int64 `json:"nanos,omitempty"`
3714
3715	// Seconds: Required. Seconds of minutes of the time. Must normally be
3716	// from 0 to 59. An API may allow the value 60 if it allows
3717	// leap-seconds.
3718	Seconds int64 `json:"seconds,omitempty"`
3719
3720	// TimeZone: Time zone.
3721	TimeZone *TimeZone `json:"timeZone,omitempty"`
3722
3723	// UtcOffset: UTC offset. Must be whole seconds, between -18 hours and
3724	// +18 hours. For example, a UTC offset of -4:00 would be represented as
3725	// { seconds: -14400 }.
3726	UtcOffset string `json:"utcOffset,omitempty"`
3727
3728	// Year: Optional. Year of date. Must be from 1 to 9999, or 0 if
3729	// specifying a datetime without a year.
3730	Year int64 `json:"year,omitempty"`
3731
3732	// ForceSendFields is a list of field names (e.g. "Day") to
3733	// unconditionally include in API requests. By default, fields with
3734	// empty values are omitted from API requests. However, any non-pointer,
3735	// non-interface field appearing in ForceSendFields will be sent to the
3736	// server regardless of whether the field is empty or not. This may be
3737	// used to include empty fields in Patch requests.
3738	ForceSendFields []string `json:"-"`
3739
3740	// NullFields is a list of field names (e.g. "Day") to include in API
3741	// requests with the JSON null value. By default, fields with empty
3742	// values are omitted from API requests. However, any field with an
3743	// empty value appearing in NullFields will be sent to the server as
3744	// null. It is an error if a field in this list has a non-empty value.
3745	// This may be used to include null fields in Patch requests.
3746	NullFields []string `json:"-"`
3747}
3748
3749func (s *DateTime) MarshalJSON() ([]byte, error) {
3750	type NoMethod DateTime
3751	raw := NoMethod(*s)
3752	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3753}
3754
3755type DeliveryTime struct {
3756	// CutoffTime: Business days cutoff time definition. If not configured
3757	// the cutoff time will be defaulted to 8AM PST.
3758	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
3759
3760	// HandlingBusinessDayConfig: The business days during which orders can
3761	// be handled. If not provided, Monday to Friday business days will be
3762	// assumed.
3763	HandlingBusinessDayConfig *BusinessDayConfig `json:"handlingBusinessDayConfig,omitempty"`
3764
3765	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
3766	// specify order cutoff times for holiday-specific shipping.
3767	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
3768
3769	// MaxHandlingTimeInDays: Maximum number of business days spent before
3770	// an order is shipped. 0 means same day shipped, 1 means next day
3771	// shipped. Must be greater than or equal to `minHandlingTimeInDays`.
3772	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
3773
3774	// MaxTransitTimeInDays: Maximum number of business days that is spent
3775	// in transit. 0 means same day delivery, 1 means next day delivery.
3776	// Must be greater than or equal to `minTransitTimeInDays`.
3777	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
3778
3779	// MinHandlingTimeInDays: Minimum number of business days spent before
3780	// an order is shipped. 0 means same day shipped, 1 means next day
3781	// shipped.
3782	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
3783
3784	// MinTransitTimeInDays: Minimum number of business days that is spent
3785	// in transit. 0 means same day delivery, 1 means next day delivery.
3786	// Either `{min,max}TransitTimeInDays` or `transitTimeTable` must be
3787	// set, but not both.
3788	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
3789
3790	// TransitBusinessDayConfig: The business days during which orders can
3791	// be in-transit. If not provided, Monday to Friday business days will
3792	// be assumed.
3793	TransitBusinessDayConfig *BusinessDayConfig `json:"transitBusinessDayConfig,omitempty"`
3794
3795	// TransitTimeTable: Transit time table, number of business days spent
3796	// in transit based on row and column dimensions. Either
3797	// `{min,max}TransitTimeInDays` or `transitTimeTable` can be set, but
3798	// not both.
3799	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
3800
3801	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
3802	// unconditionally include in API requests. By default, fields with
3803	// empty values are omitted from API requests. However, any non-pointer,
3804	// non-interface field appearing in ForceSendFields will be sent to the
3805	// server regardless of whether the field is empty or not. This may be
3806	// used to include empty fields in Patch requests.
3807	ForceSendFields []string `json:"-"`
3808
3809	// NullFields is a list of field names (e.g. "CutoffTime") to include in
3810	// API requests with the JSON null value. By default, fields with empty
3811	// values are omitted from API requests. However, any field with an
3812	// empty value appearing in NullFields will be sent to the server as
3813	// null. It is an error if a field in this list has a non-empty value.
3814	// This may be used to include null fields in Patch requests.
3815	NullFields []string `json:"-"`
3816}
3817
3818func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
3819	type NoMethod DeliveryTime
3820	raw := NoMethod(*s)
3821	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3822}
3823
3824// Error: An error returned by the API.
3825type Error struct {
3826	// Domain: The domain of the error.
3827	Domain string `json:"domain,omitempty"`
3828
3829	// Message: A description of the error.
3830	Message string `json:"message,omitempty"`
3831
3832	// Reason: The error code.
3833	Reason string `json:"reason,omitempty"`
3834
3835	// ForceSendFields is a list of field names (e.g. "Domain") to
3836	// unconditionally include in API requests. By default, fields with
3837	// empty values are omitted from API requests. However, any non-pointer,
3838	// non-interface field appearing in ForceSendFields will be sent to the
3839	// server regardless of whether the field is empty or not. This may be
3840	// used to include empty fields in Patch requests.
3841	ForceSendFields []string `json:"-"`
3842
3843	// NullFields is a list of field names (e.g. "Domain") to include in API
3844	// requests with the JSON null value. By default, fields with empty
3845	// values are omitted from API requests. However, any field with an
3846	// empty value appearing in NullFields will be sent to the server as
3847	// null. It is an error if a field in this list has a non-empty value.
3848	// This may be used to include null fields in Patch requests.
3849	NullFields []string `json:"-"`
3850}
3851
3852func (s *Error) MarshalJSON() ([]byte, error) {
3853	type NoMethod Error
3854	raw := NoMethod(*s)
3855	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3856}
3857
3858// Errors: A list of errors returned by a failed batch entry.
3859type Errors struct {
3860	// Code: The HTTP status of the first error in `errors`.
3861	Code int64 `json:"code,omitempty"`
3862
3863	// Errors: A list of errors.
3864	Errors []*Error `json:"errors,omitempty"`
3865
3866	// Message: The message of the first error in `errors`.
3867	Message string `json:"message,omitempty"`
3868
3869	// ForceSendFields is a list of field names (e.g. "Code") to
3870	// unconditionally include in API requests. By default, fields with
3871	// empty values are omitted from API requests. However, any non-pointer,
3872	// non-interface field appearing in ForceSendFields will be sent to the
3873	// server regardless of whether the field is empty or not. This may be
3874	// used to include empty fields in Patch requests.
3875	ForceSendFields []string `json:"-"`
3876
3877	// NullFields is a list of field names (e.g. "Code") to include in API
3878	// requests with the JSON null value. By default, fields with empty
3879	// values are omitted from API requests. However, any field with an
3880	// empty value appearing in NullFields will be sent to the server as
3881	// null. It is an error if a field in this list has a non-empty value.
3882	// This may be used to include null fields in Patch requests.
3883	NullFields []string `json:"-"`
3884}
3885
3886func (s *Errors) MarshalJSON() ([]byte, error) {
3887	type NoMethod Errors
3888	raw := NoMethod(*s)
3889	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3890}
3891
3892type GmbAccounts struct {
3893	// AccountId: The ID of the Merchant Center account.
3894	AccountId uint64 `json:"accountId,omitempty,string"`
3895
3896	// GmbAccounts: A list of GMB accounts which are available to the
3897	// merchant.
3898	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
3899
3900	// ForceSendFields is a list of field names (e.g. "AccountId") to
3901	// unconditionally include in API requests. By default, fields with
3902	// empty values are omitted from API requests. However, any non-pointer,
3903	// non-interface field appearing in ForceSendFields will be sent to the
3904	// server regardless of whether the field is empty or not. This may be
3905	// used to include empty fields in Patch requests.
3906	ForceSendFields []string `json:"-"`
3907
3908	// NullFields is a list of field names (e.g. "AccountId") to include in
3909	// API requests with the JSON null value. By default, fields with empty
3910	// values are omitted from API requests. However, any field with an
3911	// empty value appearing in NullFields will be sent to the server as
3912	// null. It is an error if a field in this list has a non-empty value.
3913	// This may be used to include null fields in Patch requests.
3914	NullFields []string `json:"-"`
3915}
3916
3917func (s *GmbAccounts) MarshalJSON() ([]byte, error) {
3918	type NoMethod GmbAccounts
3919	raw := NoMethod(*s)
3920	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3921}
3922
3923type GmbAccountsGmbAccount struct {
3924	// Email: The email which identifies the GMB account.
3925	Email string `json:"email,omitempty"`
3926
3927	// ListingCount: Number of listings under this account.
3928	ListingCount uint64 `json:"listingCount,omitempty,string"`
3929
3930	// Name: The name of the GMB account.
3931	Name string `json:"name,omitempty"`
3932
3933	// Type: The type of the GMB account (User or Business).
3934	Type string `json:"type,omitempty"`
3935
3936	// ForceSendFields is a list of field names (e.g. "Email") to
3937	// unconditionally include in API requests. By default, fields with
3938	// empty values are omitted from API requests. However, any non-pointer,
3939	// non-interface field appearing in ForceSendFields will be sent to the
3940	// server regardless of whether the field is empty or not. This may be
3941	// used to include empty fields in Patch requests.
3942	ForceSendFields []string `json:"-"`
3943
3944	// NullFields is a list of field names (e.g. "Email") to include in API
3945	// requests with the JSON null value. By default, fields with empty
3946	// values are omitted from API requests. However, any field with an
3947	// empty value appearing in NullFields will be sent to the server as
3948	// null. It is an error if a field in this list has a non-empty value.
3949	// This may be used to include null fields in Patch requests.
3950	NullFields []string `json:"-"`
3951}
3952
3953func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
3954	type NoMethod GmbAccountsGmbAccount
3955	raw := NoMethod(*s)
3956	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3957}
3958
3959// Headers: A non-empty list of row or column headers for a table.
3960// Exactly one of `prices`, `weights`, `numItems`,
3961// `postalCodeGroupNames`, or `location` must be set.
3962type Headers struct {
3963	// Locations: A list of location ID sets. Must be non-empty. Can only be
3964	// set if all other fields are not set.
3965	Locations []*LocationIdSet `json:"locations,omitempty"`
3966
3967	// NumberOfItems: A list of inclusive number of items upper bounds. The
3968	// last value can be "infinity". For example `["10", "50",
3969	// "infinity"]` represents the headers "<= 10 items", "<= 50 items", and
3970	// "> 50 items". Must be non-empty. Can only be set if all other fields
3971	// are not set.
3972	NumberOfItems []string `json:"numberOfItems,omitempty"`
3973
3974	// PostalCodeGroupNames: A list of postal group names. The last value
3975	// can be "all other locations". Example: `["zone 1", "zone 2", "all
3976	// other locations"]`. The referred postal code groups must match the
3977	// delivery country of the service. Must be non-empty. Can only be set
3978	// if all other fields are not set.
3979	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
3980
3981	// Prices: A list of inclusive order price upper bounds. The last
3982	// price's value can be "infinity". For example `[{"value": "10",
3983	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
3984	// "infinity", "currency": "USD"}]` represents the headers "<= $10", "<=
3985	// $500", and "> $500". All prices within a service must have the same
3986	// currency. Must be non-empty. Can only be set if all other fields are
3987	// not set.
3988	Prices []*Price `json:"prices,omitempty"`
3989
3990	// Weights: A list of inclusive order weight upper bounds. The last
3991	// weight's value can be "infinity". For example `[{"value": "10",
3992	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
3993	// "unit": "kg"}]` represents the headers "<= 10kg", "<= 50kg", and ">
3994	// 50kg". All weights within a service must have the same unit. Must be
3995	// non-empty. Can only be set if all other fields are not set.
3996	Weights []*Weight `json:"weights,omitempty"`
3997
3998	// ForceSendFields is a list of field names (e.g. "Locations") to
3999	// unconditionally include in API requests. By default, fields with
4000	// empty values are omitted from API requests. However, any non-pointer,
4001	// non-interface field appearing in ForceSendFields will be sent to the
4002	// server regardless of whether the field is empty or not. This may be
4003	// used to include empty fields in Patch requests.
4004	ForceSendFields []string `json:"-"`
4005
4006	// NullFields is a list of field names (e.g. "Locations") to include in
4007	// API requests with the JSON null value. By default, fields with empty
4008	// values are omitted from API requests. However, any field with an
4009	// empty value appearing in NullFields will be sent to the server as
4010	// null. It is an error if a field in this list has a non-empty value.
4011	// This may be used to include null fields in Patch requests.
4012	NullFields []string `json:"-"`
4013}
4014
4015func (s *Headers) MarshalJSON() ([]byte, error) {
4016	type NoMethod Headers
4017	raw := NoMethod(*s)
4018	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4019}
4020
4021type HolidayCutoff struct {
4022	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
4023	// "2016-11-29" for 29th November 2016. Required.
4024	DeadlineDate string `json:"deadlineDate,omitempty"`
4025
4026	// DeadlineHour: Hour of the day on the deadline date until which the
4027	// order has to be placed to qualify for the delivery guarantee.
4028	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
4029	// Required.
4030	DeadlineHour int64 `json:"deadlineHour,omitempty"`
4031
4032	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
4033	// of identifiers can be found in the AdWords API documentation. E.g.
4034	// "Europe/Zurich". Required.
4035	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
4036
4037	// HolidayId: Unique identifier for the holiday. Required.
4038	HolidayId string `json:"holidayId,omitempty"`
4039
4040	// VisibleFromDate: Date on which the deadline will become visible to
4041	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
4042	// 2016. Required.
4043	VisibleFromDate string `json:"visibleFromDate,omitempty"`
4044
4045	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
4046	// unconditionally include in API requests. By default, fields with
4047	// empty values are omitted from API requests. However, any non-pointer,
4048	// non-interface field appearing in ForceSendFields will be sent to the
4049	// server regardless of whether the field is empty or not. This may be
4050	// used to include empty fields in Patch requests.
4051	ForceSendFields []string `json:"-"`
4052
4053	// NullFields is a list of field names (e.g. "DeadlineDate") to include
4054	// in API requests with the JSON null value. By default, fields with
4055	// empty values are omitted from API requests. However, any field with
4056	// an empty value appearing in NullFields will be sent to the server as
4057	// null. It is an error if a field in this list has a non-empty value.
4058	// This may be used to include null fields in Patch requests.
4059	NullFields []string `json:"-"`
4060}
4061
4062func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
4063	type NoMethod HolidayCutoff
4064	raw := NoMethod(*s)
4065	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4066}
4067
4068type HolidaysHoliday struct {
4069	// CountryCode: The CLDR territory code of the country in which the
4070	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
4071	// only be configured in a shipping settings service with matching
4072	// delivery country. Always present.
4073	CountryCode string `json:"countryCode,omitempty"`
4074
4075	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
4076	// Christmas 2016. Always present.
4077	Date string `json:"date,omitempty"`
4078
4079	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
4080	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
4081	// 2016. Always present.
4082	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
4083
4084	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
4085	// timezone on the guaranteed delivery date by which the order has to
4086	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
4087	// 12 (noon), 13, ..., 23. Always present.
4088	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
4089
4090	// Id: Unique identifier for the holiday to be used when configuring
4091	// holiday cutoffs. Always present.
4092	Id string `json:"id,omitempty"`
4093
4094	// Type: The holiday type. Always present. Acceptable values are: -
4095	// "Christmas" - "Easter" - "Father's Day" - "Halloween" -
4096	// "Independence Day (USA)" - "Mother's Day" - "Thanksgiving" -
4097	// "Valentine's Day"
4098	Type string `json:"type,omitempty"`
4099
4100	// ForceSendFields is a list of field names (e.g. "CountryCode") to
4101	// unconditionally include in API requests. By default, fields with
4102	// empty values are omitted from API requests. However, any non-pointer,
4103	// non-interface field appearing in ForceSendFields will be sent to the
4104	// server regardless of whether the field is empty or not. This may be
4105	// used to include empty fields in Patch requests.
4106	ForceSendFields []string `json:"-"`
4107
4108	// NullFields is a list of field names (e.g. "CountryCode") to include
4109	// in API requests with the JSON null value. By default, fields with
4110	// empty values are omitted from API requests. However, any field with
4111	// an empty value appearing in NullFields will be sent to the server as
4112	// null. It is an error if a field in this list has a non-empty value.
4113	// This may be used to include null fields in Patch requests.
4114	NullFields []string `json:"-"`
4115}
4116
4117func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
4118	type NoMethod HolidaysHoliday
4119	raw := NoMethod(*s)
4120	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4121}
4122
4123// InapplicabilityDetails: Map of inapplicability details.
4124type InapplicabilityDetails struct {
4125	// InapplicableCount: Count of this inapplicable reason code.
4126	InapplicableCount int64 `json:"inapplicableCount,omitempty,string"`
4127
4128	// InapplicableReason: Reason code this rule was not applicable.
4129	//
4130	// Possible values:
4131	//   "INAPPLICABLE_REASON_UNSPECIFIED" - Default value. Should not be
4132	// used.
4133	//   "CANNOT_BEAT_BUYBOX_WINNER" - The rule set for this product cannot
4134	// beat the buybox winner.
4135	//   "ALREADY_WINNING_BUYBOX" - This product can already win the buybox
4136	// without rule.
4137	//   "TRIUMPHED_OVER_BY_SAME_TYPE_RULE" - Another rule of the same type
4138	// takes precedence over this one.
4139	//   "TRIUMPHED_OVER_BY_OTHER_RULE_ON_OFFER" - Another rule of a
4140	// different type takes precedence over this one.
4141	//   "RESTRICTIONS_NOT_MET" - The rule restrictions are not met. For
4142	// example, this may be the case if the calculated rule price is lower
4143	// than floor price in the restriction.
4144	//   "UNCATEGORIZED" - The reason is not categorized to any known
4145	// reason.
4146	InapplicableReason string `json:"inapplicableReason,omitempty"`
4147
4148	// ForceSendFields is a list of field names (e.g. "InapplicableCount")
4149	// to unconditionally include in API requests. By default, fields with
4150	// empty values are omitted from API requests. However, any non-pointer,
4151	// non-interface field appearing in ForceSendFields will be sent to the
4152	// server regardless of whether the field is empty or not. This may be
4153	// used to include empty fields in Patch requests.
4154	ForceSendFields []string `json:"-"`
4155
4156	// NullFields is a list of field names (e.g. "InapplicableCount") to
4157	// include in API requests with the JSON null value. By default, fields
4158	// with empty values are omitted from API requests. However, any field
4159	// with an empty value appearing in NullFields will be sent to the
4160	// server as null. It is an error if a field in this list has a
4161	// non-empty value. This may be used to include null fields in Patch
4162	// requests.
4163	NullFields []string `json:"-"`
4164}
4165
4166func (s *InapplicabilityDetails) MarshalJSON() ([]byte, error) {
4167	type NoMethod InapplicabilityDetails
4168	raw := NoMethod(*s)
4169	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4170}
4171
4172type Installment struct {
4173	// Amount: The amount the buyer has to pay per month.
4174	Amount *Price `json:"amount,omitempty"`
4175
4176	// Months: The number of installments the buyer has to pay.
4177	Months int64 `json:"months,omitempty,string"`
4178
4179	// ForceSendFields is a list of field names (e.g. "Amount") to
4180	// unconditionally include in API requests. By default, fields with
4181	// empty values are omitted from API requests. However, any non-pointer,
4182	// non-interface field appearing in ForceSendFields will be sent to the
4183	// server regardless of whether the field is empty or not. This may be
4184	// used to include empty fields in Patch requests.
4185	ForceSendFields []string `json:"-"`
4186
4187	// NullFields is a list of field names (e.g. "Amount") to include in API
4188	// requests with the JSON null value. By default, fields with empty
4189	// values are omitted from API requests. However, any field with an
4190	// empty value appearing in NullFields will be sent to the server as
4191	// null. It is an error if a field in this list has a non-empty value.
4192	// This may be used to include null fields in Patch requests.
4193	NullFields []string `json:"-"`
4194}
4195
4196func (s *Installment) MarshalJSON() ([]byte, error) {
4197	type NoMethod Installment
4198	raw := NoMethod(*s)
4199	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4200}
4201
4202type InvoiceSummary struct {
4203	// AdditionalChargeSummaries: Summary of the total amounts of the
4204	// additional charges.
4205	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
4206
4207	// ProductTotal: [required] Total price for the product.
4208	ProductTotal *Amount `json:"productTotal,omitempty"`
4209
4210	// ForceSendFields is a list of field names (e.g.
4211	// "AdditionalChargeSummaries") to unconditionally include in API
4212	// requests. By default, fields with empty values are omitted from API
4213	// requests. However, any non-pointer, non-interface field appearing in
4214	// ForceSendFields will be sent to the server regardless of whether the
4215	// field is empty or not. This may be used to include empty fields in
4216	// Patch requests.
4217	ForceSendFields []string `json:"-"`
4218
4219	// NullFields is a list of field names (e.g.
4220	// "AdditionalChargeSummaries") to include in API requests with the JSON
4221	// null value. By default, fields with empty values are omitted from API
4222	// requests. However, any field with an empty value appearing in
4223	// NullFields will be sent to the server as null. It is an error if a
4224	// field in this list has a non-empty value. This may be used to include
4225	// null fields in Patch requests.
4226	NullFields []string `json:"-"`
4227}
4228
4229func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
4230	type NoMethod InvoiceSummary
4231	raw := NoMethod(*s)
4232	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4233}
4234
4235type InvoiceSummaryAdditionalChargeSummary struct {
4236	// TotalAmount: [required] Total additional charge for this type.
4237	TotalAmount *Amount `json:"totalAmount,omitempty"`
4238
4239	// Type: [required] Type of the additional charge. Acceptable values
4240	// are: - "shipping"
4241	Type string `json:"type,omitempty"`
4242
4243	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
4244	// unconditionally include in API requests. By default, fields with
4245	// empty values are omitted from API requests. However, any non-pointer,
4246	// non-interface field appearing in ForceSendFields will be sent to the
4247	// server regardless of whether the field is empty or not. This may be
4248	// used to include empty fields in Patch requests.
4249	ForceSendFields []string `json:"-"`
4250
4251	// NullFields is a list of field names (e.g. "TotalAmount") to include
4252	// in API requests with the JSON null value. By default, fields with
4253	// empty values are omitted from API requests. However, any field with
4254	// an empty value appearing in NullFields will be sent to the server as
4255	// null. It is an error if a field in this list has a non-empty value.
4256	// This may be used to include null fields in Patch requests.
4257	NullFields []string `json:"-"`
4258}
4259
4260func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
4261	type NoMethod InvoiceSummaryAdditionalChargeSummary
4262	raw := NoMethod(*s)
4263	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4264}
4265
4266// LabelIds: The IDs of labels that should be assigned to the CSS
4267// domain.
4268type LabelIds struct {
4269	// LabelIds: The list of label IDs.
4270	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
4271
4272	// ForceSendFields is a list of field names (e.g. "LabelIds") to
4273	// unconditionally include in API requests. By default, fields with
4274	// empty values are omitted from API requests. However, any non-pointer,
4275	// non-interface field appearing in ForceSendFields will be sent to the
4276	// server regardless of whether the field is empty or not. This may be
4277	// used to include empty fields in Patch requests.
4278	ForceSendFields []string `json:"-"`
4279
4280	// NullFields is a list of field names (e.g. "LabelIds") to include in
4281	// API requests with the JSON null value. By default, fields with empty
4282	// values are omitted from API requests. However, any field with an
4283	// empty value appearing in NullFields will be sent to the server as
4284	// null. It is an error if a field in this list has a non-empty value.
4285	// This may be used to include null fields in Patch requests.
4286	NullFields []string `json:"-"`
4287}
4288
4289func (s *LabelIds) MarshalJSON() ([]byte, error) {
4290	type NoMethod LabelIds
4291	raw := NoMethod(*s)
4292	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4293}
4294
4295type LiaAboutPageSettings struct {
4296	// Status: The status of the verification process for the About page.
4297	// Acceptable values are: - "active" - "inactive" - "pending"
4298	Status string `json:"status,omitempty"`
4299
4300	// Url: The URL for the About page.
4301	Url string `json:"url,omitempty"`
4302
4303	// ForceSendFields is a list of field names (e.g. "Status") to
4304	// unconditionally include in API requests. By default, fields with
4305	// empty values are omitted from API requests. However, any non-pointer,
4306	// non-interface field appearing in ForceSendFields will be sent to the
4307	// server regardless of whether the field is empty or not. This may be
4308	// used to include empty fields in Patch requests.
4309	ForceSendFields []string `json:"-"`
4310
4311	// NullFields is a list of field names (e.g. "Status") to include in API
4312	// requests with the JSON null value. By default, fields with empty
4313	// values are omitted from API requests. However, any field with an
4314	// empty value appearing in NullFields will be sent to the server as
4315	// null. It is an error if a field in this list has a non-empty value.
4316	// This may be used to include null fields in Patch requests.
4317	NullFields []string `json:"-"`
4318}
4319
4320func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
4321	type NoMethod LiaAboutPageSettings
4322	raw := NoMethod(*s)
4323	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4324}
4325
4326type LiaCountrySettings struct {
4327	// About: The settings for the About page.
4328	About *LiaAboutPageSettings `json:"about,omitempty"`
4329
4330	// Country: Required. CLDR country code (e.g. "US").
4331	Country string `json:"country,omitempty"`
4332
4333	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
4334	// storefront" feature.
4335	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
4336
4337	// Inventory: LIA inventory verification settings.
4338	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
4339
4340	// OnDisplayToOrder: LIA "On Display To Order" settings.
4341	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
4342
4343	// PosDataProvider: The POS data provider linked with this country.
4344	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
4345
4346	// StorePickupActive: The status of the "Store pickup" feature.
4347	StorePickupActive bool `json:"storePickupActive,omitempty"`
4348
4349	// ForceSendFields is a list of field names (e.g. "About") to
4350	// unconditionally include in API requests. By default, fields with
4351	// empty values are omitted from API requests. However, any non-pointer,
4352	// non-interface field appearing in ForceSendFields will be sent to the
4353	// server regardless of whether the field is empty or not. This may be
4354	// used to include empty fields in Patch requests.
4355	ForceSendFields []string `json:"-"`
4356
4357	// NullFields is a list of field names (e.g. "About") to include in API
4358	// requests with the JSON null value. By default, fields with empty
4359	// values are omitted from API requests. However, any field with an
4360	// empty value appearing in NullFields will be sent to the server as
4361	// null. It is an error if a field in this list has a non-empty value.
4362	// This may be used to include null fields in Patch requests.
4363	NullFields []string `json:"-"`
4364}
4365
4366func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
4367	type NoMethod LiaCountrySettings
4368	raw := NoMethod(*s)
4369	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4370}
4371
4372type LiaInventorySettings struct {
4373	// InventoryVerificationContactEmail: The email of the contact for the
4374	// inventory verification process.
4375	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
4376
4377	// InventoryVerificationContactName: The name of the contact for the
4378	// inventory verification process.
4379	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
4380
4381	// InventoryVerificationContactStatus: The status of the verification
4382	// contact. Acceptable values are: - "active" - "inactive" -
4383	// "pending"
4384	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
4385
4386	// Status: The status of the inventory verification process. Acceptable
4387	// values are: - "active" - "inactive" - "pending"
4388	Status string `json:"status,omitempty"`
4389
4390	// ForceSendFields is a list of field names (e.g.
4391	// "InventoryVerificationContactEmail") to unconditionally include in
4392	// API requests. By default, fields with empty values are omitted from
4393	// API requests. However, any non-pointer, non-interface field appearing
4394	// in ForceSendFields will be sent to the server regardless of whether
4395	// the field is empty or not. This may be used to include empty fields
4396	// in Patch requests.
4397	ForceSendFields []string `json:"-"`
4398
4399	// NullFields is a list of field names (e.g.
4400	// "InventoryVerificationContactEmail") to include in API requests with
4401	// the JSON null value. By default, fields with empty values are omitted
4402	// from API requests. However, any field with an empty value appearing
4403	// in NullFields will be sent to the server as null. It is an error if a
4404	// field in this list has a non-empty value. This may be used to include
4405	// null fields in Patch requests.
4406	NullFields []string `json:"-"`
4407}
4408
4409func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
4410	type NoMethod LiaInventorySettings
4411	raw := NoMethod(*s)
4412	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4413}
4414
4415type LiaOnDisplayToOrderSettings struct {
4416	// ShippingCostPolicyUrl: Shipping cost and policy URL.
4417	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
4418
4419	// Status: The status of the ?On display to order? feature. Acceptable
4420	// values are: - "active" - "inactive" - "pending"
4421	Status string `json:"status,omitempty"`
4422
4423	// ForceSendFields is a list of field names (e.g.
4424	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
4425	// By default, fields with empty values are omitted from API requests.
4426	// However, any non-pointer, non-interface field appearing in
4427	// ForceSendFields will be sent to the server regardless of whether the
4428	// field is empty or not. This may be used to include empty fields in
4429	// Patch requests.
4430	ForceSendFields []string `json:"-"`
4431
4432	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
4433	// include in API requests with the JSON null value. By default, fields
4434	// with empty values are omitted from API requests. However, any field
4435	// with an empty value appearing in NullFields will be sent to the
4436	// server as null. It is an error if a field in this list has a
4437	// non-empty value. This may be used to include null fields in Patch
4438	// requests.
4439	NullFields []string `json:"-"`
4440}
4441
4442func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
4443	type NoMethod LiaOnDisplayToOrderSettings
4444	raw := NoMethod(*s)
4445	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4446}
4447
4448type LiaPosDataProvider struct {
4449	// PosDataProviderId: The ID of the POS data provider.
4450	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
4451
4452	// PosExternalAccountId: The account ID by which this merchant is known
4453	// to the POS data provider.
4454	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
4455
4456	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
4457	// to unconditionally include in API requests. By default, fields with
4458	// empty values are omitted from API requests. However, any non-pointer,
4459	// non-interface field appearing in ForceSendFields will be sent to the
4460	// server regardless of whether the field is empty or not. This may be
4461	// used to include empty fields in Patch requests.
4462	ForceSendFields []string `json:"-"`
4463
4464	// NullFields is a list of field names (e.g. "PosDataProviderId") to
4465	// include in API requests with the JSON null value. By default, fields
4466	// with empty values are omitted from API requests. However, any field
4467	// with an empty value appearing in NullFields will be sent to the
4468	// server as null. It is an error if a field in this list has a
4469	// non-empty value. This may be used to include null fields in Patch
4470	// requests.
4471	NullFields []string `json:"-"`
4472}
4473
4474func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
4475	type NoMethod LiaPosDataProvider
4476	raw := NoMethod(*s)
4477	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4478}
4479
4480// LiaSettings: Local Inventory ads (LIA) settings. All methods except
4481// listposdataproviders require the admin role.
4482type LiaSettings struct {
4483	// AccountId: The ID of the account to which these LIA settings belong.
4484	// Ignored upon update, always present in get request responses.
4485	AccountId uint64 `json:"accountId,omitempty,string"`
4486
4487	// CountrySettings: The LIA settings for each country.
4488	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
4489
4490	// Kind: Identifies what kind of resource this is. Value: the fixed
4491	// string "content#liaSettings"
4492	Kind string `json:"kind,omitempty"`
4493
4494	// ServerResponse contains the HTTP response code and headers from the
4495	// server.
4496	googleapi.ServerResponse `json:"-"`
4497
4498	// ForceSendFields is a list of field names (e.g. "AccountId") to
4499	// unconditionally include in API requests. By default, fields with
4500	// empty values are omitted from API requests. However, any non-pointer,
4501	// non-interface field appearing in ForceSendFields will be sent to the
4502	// server regardless of whether the field is empty or not. This may be
4503	// used to include empty fields in Patch requests.
4504	ForceSendFields []string `json:"-"`
4505
4506	// NullFields is a list of field names (e.g. "AccountId") to include in
4507	// API requests with the JSON null value. By default, fields with empty
4508	// values are omitted from API requests. However, any field with an
4509	// empty value appearing in NullFields will be sent to the server as
4510	// null. It is an error if a field in this list has a non-empty value.
4511	// This may be used to include null fields in Patch requests.
4512	NullFields []string `json:"-"`
4513}
4514
4515func (s *LiaSettings) MarshalJSON() ([]byte, error) {
4516	type NoMethod LiaSettings
4517	raw := NoMethod(*s)
4518	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4519}
4520
4521type LiasettingsCustomBatchRequest struct {
4522	// Entries: The request entries to be processed in the batch.
4523	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
4524
4525	// ForceSendFields is a list of field names (e.g. "Entries") to
4526	// unconditionally include in API requests. By default, fields with
4527	// empty values are omitted from API requests. However, any non-pointer,
4528	// non-interface field appearing in ForceSendFields will be sent to the
4529	// server regardless of whether the field is empty or not. This may be
4530	// used to include empty fields in Patch requests.
4531	ForceSendFields []string `json:"-"`
4532
4533	// NullFields is a list of field names (e.g. "Entries") to include in
4534	// API requests with the JSON null value. By default, fields with empty
4535	// values are omitted from API requests. However, any field with an
4536	// empty value appearing in NullFields will be sent to the server as
4537	// null. It is an error if a field in this list has a non-empty value.
4538	// This may be used to include null fields in Patch requests.
4539	NullFields []string `json:"-"`
4540}
4541
4542func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
4543	type NoMethod LiasettingsCustomBatchRequest
4544	raw := NoMethod(*s)
4545	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4546}
4547
4548type LiasettingsCustomBatchRequestEntry struct {
4549	// AccountId: The ID of the account for which to get/update account LIA
4550	// settings.
4551	AccountId uint64 `json:"accountId,omitempty,string"`
4552
4553	// BatchId: An entry ID, unique within the batch request.
4554	BatchId int64 `json:"batchId,omitempty"`
4555
4556	// ContactEmail: Inventory validation contact email. Required only for
4557	// SetInventoryValidationContact.
4558	ContactEmail string `json:"contactEmail,omitempty"`
4559
4560	// ContactName: Inventory validation contact name. Required only for
4561	// SetInventoryValidationContact.
4562	ContactName string `json:"contactName,omitempty"`
4563
4564	// Country: The country code. Required only for
4565	// RequestInventoryVerification.
4566	Country string `json:"country,omitempty"`
4567
4568	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
4569	GmbEmail string `json:"gmbEmail,omitempty"`
4570
4571	// LiaSettings: The account Lia settings to update. Only defined if the
4572	// method is `update`.
4573	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4574
4575	// MerchantId: The ID of the managing account.
4576	MerchantId uint64 `json:"merchantId,omitempty,string"`
4577
4578	// Method: The method of the batch entry. Acceptable values are: -
4579	// "get" - "getAccessibleGmbAccounts" - "requestGmbAccess" -
4580	// "requestInventoryVerification" -
4581	// "setInventoryVerificationContact" - "update"
4582	Method string `json:"method,omitempty"`
4583
4584	// PosDataProviderId: The ID of POS data provider. Required only for
4585	// SetPosProvider.
4586	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
4587
4588	// PosExternalAccountId: The account ID by which this merchant is known
4589	// to the POS provider.
4590	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
4591
4592	// ForceSendFields is a list of field names (e.g. "AccountId") to
4593	// unconditionally include in API requests. By default, fields with
4594	// empty values are omitted from API requests. However, any non-pointer,
4595	// non-interface field appearing in ForceSendFields will be sent to the
4596	// server regardless of whether the field is empty or not. This may be
4597	// used to include empty fields in Patch requests.
4598	ForceSendFields []string `json:"-"`
4599
4600	// NullFields is a list of field names (e.g. "AccountId") to include in
4601	// API requests with the JSON null value. By default, fields with empty
4602	// values are omitted from API requests. However, any field with an
4603	// empty value appearing in NullFields will be sent to the server as
4604	// null. It is an error if a field in this list has a non-empty value.
4605	// This may be used to include null fields in Patch requests.
4606	NullFields []string `json:"-"`
4607}
4608
4609func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
4610	type NoMethod LiasettingsCustomBatchRequestEntry
4611	raw := NoMethod(*s)
4612	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4613}
4614
4615type LiasettingsCustomBatchResponse struct {
4616	// Entries: The result of the execution of the batch requests.
4617	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
4618
4619	// Kind: Identifies what kind of resource this is. Value: the fixed
4620	// string "content#liasettingsCustomBatchResponse".
4621	Kind string `json:"kind,omitempty"`
4622
4623	// ServerResponse contains the HTTP response code and headers from the
4624	// server.
4625	googleapi.ServerResponse `json:"-"`
4626
4627	// ForceSendFields is a list of field names (e.g. "Entries") to
4628	// unconditionally include in API requests. By default, fields with
4629	// empty values are omitted from API requests. However, any non-pointer,
4630	// non-interface field appearing in ForceSendFields will be sent to the
4631	// server regardless of whether the field is empty or not. This may be
4632	// used to include empty fields in Patch requests.
4633	ForceSendFields []string `json:"-"`
4634
4635	// NullFields is a list of field names (e.g. "Entries") to include in
4636	// API requests with the JSON null value. By default, fields with empty
4637	// values are omitted from API requests. However, any field with an
4638	// empty value appearing in NullFields will be sent to the server as
4639	// null. It is an error if a field in this list has a non-empty value.
4640	// This may be used to include null fields in Patch requests.
4641	NullFields []string `json:"-"`
4642}
4643
4644func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
4645	type NoMethod LiasettingsCustomBatchResponse
4646	raw := NoMethod(*s)
4647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4648}
4649
4650type LiasettingsCustomBatchResponseEntry struct {
4651	// BatchId: The ID of the request entry to which this entry responds.
4652	BatchId int64 `json:"batchId,omitempty"`
4653
4654	// Errors: A list of errors defined if, and only if, the request failed.
4655	Errors *Errors `json:"errors,omitempty"`
4656
4657	// GmbAccounts: The list of accessible GMB accounts.
4658	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
4659
4660	// Kind: Identifies what kind of resource this is. Value: the fixed
4661	// string "content#liasettingsCustomBatchResponseEntry"
4662	Kind string `json:"kind,omitempty"`
4663
4664	// LiaSettings: The retrieved or updated Lia settings.
4665	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4666
4667	// PosDataProviders: The list of POS data providers.
4668	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4669
4670	// ForceSendFields is a list of field names (e.g. "BatchId") to
4671	// unconditionally include in API requests. By default, fields with
4672	// empty values are omitted from API requests. However, any non-pointer,
4673	// non-interface field appearing in ForceSendFields will be sent to the
4674	// server regardless of whether the field is empty or not. This may be
4675	// used to include empty fields in Patch requests.
4676	ForceSendFields []string `json:"-"`
4677
4678	// NullFields is a list of field names (e.g. "BatchId") to include in
4679	// API requests with the JSON null value. By default, fields with empty
4680	// values are omitted from API requests. However, any field with an
4681	// empty value appearing in NullFields will be sent to the server as
4682	// null. It is an error if a field in this list has a non-empty value.
4683	// This may be used to include null fields in Patch requests.
4684	NullFields []string `json:"-"`
4685}
4686
4687func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
4688	type NoMethod LiasettingsCustomBatchResponseEntry
4689	raw := NoMethod(*s)
4690	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4691}
4692
4693type LiasettingsGetAccessibleGmbAccountsResponse struct {
4694	// AccountId: The ID of the Merchant Center account.
4695	AccountId uint64 `json:"accountId,omitempty,string"`
4696
4697	// GmbAccounts: A list of GMB accounts which are available to the
4698	// merchant.
4699	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
4700
4701	// Kind: Identifies what kind of resource this is. Value: the fixed
4702	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
4703	Kind string `json:"kind,omitempty"`
4704
4705	// ServerResponse contains the HTTP response code and headers from the
4706	// server.
4707	googleapi.ServerResponse `json:"-"`
4708
4709	// ForceSendFields is a list of field names (e.g. "AccountId") to
4710	// unconditionally include in API requests. By default, fields with
4711	// empty values are omitted from API requests. However, any non-pointer,
4712	// non-interface field appearing in ForceSendFields will be sent to the
4713	// server regardless of whether the field is empty or not. This may be
4714	// used to include empty fields in Patch requests.
4715	ForceSendFields []string `json:"-"`
4716
4717	// NullFields is a list of field names (e.g. "AccountId") to include in
4718	// API requests with the JSON null value. By default, fields with empty
4719	// values are omitted from API requests. However, any field with an
4720	// empty value appearing in NullFields will be sent to the server as
4721	// null. It is an error if a field in this list has a non-empty value.
4722	// This may be used to include null fields in Patch requests.
4723	NullFields []string `json:"-"`
4724}
4725
4726func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
4727	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
4728	raw := NoMethod(*s)
4729	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4730}
4731
4732type LiasettingsListPosDataProvidersResponse struct {
4733	// Kind: Identifies what kind of resource this is. Value: the fixed
4734	// string "content#liasettingsListPosDataProvidersResponse".
4735	Kind string `json:"kind,omitempty"`
4736
4737	// PosDataProviders: The list of POS data providers for each eligible
4738	// country
4739	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4740
4741	// ServerResponse contains the HTTP response code and headers from the
4742	// server.
4743	googleapi.ServerResponse `json:"-"`
4744
4745	// ForceSendFields is a list of field names (e.g. "Kind") to
4746	// unconditionally include in API requests. By default, fields with
4747	// empty values are omitted from API requests. However, any non-pointer,
4748	// non-interface field appearing in ForceSendFields will be sent to the
4749	// server regardless of whether the field is empty or not. This may be
4750	// used to include empty fields in Patch requests.
4751	ForceSendFields []string `json:"-"`
4752
4753	// NullFields is a list of field names (e.g. "Kind") to include in API
4754	// requests with the JSON null value. By default, fields with empty
4755	// values are omitted from API requests. However, any field with an
4756	// empty value appearing in NullFields will be sent to the server as
4757	// null. It is an error if a field in this list has a non-empty value.
4758	// This may be used to include null fields in Patch requests.
4759	NullFields []string `json:"-"`
4760}
4761
4762func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
4763	type NoMethod LiasettingsListPosDataProvidersResponse
4764	raw := NoMethod(*s)
4765	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4766}
4767
4768type LiasettingsListResponse struct {
4769	// Kind: Identifies what kind of resource this is. Value: the fixed
4770	// string "content#liasettingsListResponse".
4771	Kind string `json:"kind,omitempty"`
4772
4773	// NextPageToken: The token for the retrieval of the next page of LIA
4774	// settings.
4775	NextPageToken string `json:"nextPageToken,omitempty"`
4776
4777	Resources []*LiaSettings `json:"resources,omitempty"`
4778
4779	// ServerResponse contains the HTTP response code and headers from the
4780	// server.
4781	googleapi.ServerResponse `json:"-"`
4782
4783	// ForceSendFields is a list of field names (e.g. "Kind") to
4784	// unconditionally include in API requests. By default, fields with
4785	// empty values are omitted from API requests. However, any non-pointer,
4786	// non-interface field appearing in ForceSendFields will be sent to the
4787	// server regardless of whether the field is empty or not. This may be
4788	// used to include empty fields in Patch requests.
4789	ForceSendFields []string `json:"-"`
4790
4791	// NullFields is a list of field names (e.g. "Kind") to include in API
4792	// requests with the JSON null value. By default, fields with empty
4793	// values are omitted from API requests. However, any field with an
4794	// empty value appearing in NullFields will be sent to the server as
4795	// null. It is an error if a field in this list has a non-empty value.
4796	// This may be used to include null fields in Patch requests.
4797	NullFields []string `json:"-"`
4798}
4799
4800func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
4801	type NoMethod LiasettingsListResponse
4802	raw := NoMethod(*s)
4803	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4804}
4805
4806type LiasettingsRequestGmbAccessResponse struct {
4807	// Kind: Identifies what kind of resource this is. Value: the fixed
4808	// string "content#liasettingsRequestGmbAccessResponse".
4809	Kind string `json:"kind,omitempty"`
4810
4811	// ServerResponse contains the HTTP response code and headers from the
4812	// server.
4813	googleapi.ServerResponse `json:"-"`
4814
4815	// ForceSendFields is a list of field names (e.g. "Kind") to
4816	// unconditionally include in API requests. By default, fields with
4817	// empty values are omitted from API requests. However, any non-pointer,
4818	// non-interface field appearing in ForceSendFields will be sent to the
4819	// server regardless of whether the field is empty or not. This may be
4820	// used to include empty fields in Patch requests.
4821	ForceSendFields []string `json:"-"`
4822
4823	// NullFields is a list of field names (e.g. "Kind") to include in API
4824	// requests with the JSON null value. By default, fields with empty
4825	// values are omitted from API requests. However, any field with an
4826	// empty value appearing in NullFields will be sent to the server as
4827	// null. It is an error if a field in this list has a non-empty value.
4828	// This may be used to include null fields in Patch requests.
4829	NullFields []string `json:"-"`
4830}
4831
4832func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
4833	type NoMethod LiasettingsRequestGmbAccessResponse
4834	raw := NoMethod(*s)
4835	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4836}
4837
4838type LiasettingsRequestInventoryVerificationResponse struct {
4839	// Kind: Identifies what kind of resource this is. Value: the fixed
4840	// string "content#liasettingsRequestInventoryVerificationResponse".
4841	Kind string `json:"kind,omitempty"`
4842
4843	// ServerResponse contains the HTTP response code and headers from the
4844	// server.
4845	googleapi.ServerResponse `json:"-"`
4846
4847	// ForceSendFields is a list of field names (e.g. "Kind") to
4848	// unconditionally include in API requests. By default, fields with
4849	// empty values are omitted from API requests. However, any non-pointer,
4850	// non-interface field appearing in ForceSendFields will be sent to the
4851	// server regardless of whether the field is empty or not. This may be
4852	// used to include empty fields in Patch requests.
4853	ForceSendFields []string `json:"-"`
4854
4855	// NullFields is a list of field names (e.g. "Kind") to include in API
4856	// requests with the JSON null value. By default, fields with empty
4857	// values are omitted from API requests. However, any field with an
4858	// empty value appearing in NullFields will be sent to the server as
4859	// null. It is an error if a field in this list has a non-empty value.
4860	// This may be used to include null fields in Patch requests.
4861	NullFields []string `json:"-"`
4862}
4863
4864func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
4865	type NoMethod LiasettingsRequestInventoryVerificationResponse
4866	raw := NoMethod(*s)
4867	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4868}
4869
4870type LiasettingsSetInventoryVerificationContactResponse struct {
4871	// Kind: Identifies what kind of resource this is. Value: the fixed
4872	// string "content#liasettingsSetInventoryVerificationContactResponse".
4873	Kind string `json:"kind,omitempty"`
4874
4875	// ServerResponse contains the HTTP response code and headers from the
4876	// server.
4877	googleapi.ServerResponse `json:"-"`
4878
4879	// ForceSendFields is a list of field names (e.g. "Kind") to
4880	// unconditionally include in API requests. By default, fields with
4881	// empty values are omitted from API requests. However, any non-pointer,
4882	// non-interface field appearing in ForceSendFields will be sent to the
4883	// server regardless of whether the field is empty or not. This may be
4884	// used to include empty fields in Patch requests.
4885	ForceSendFields []string `json:"-"`
4886
4887	// NullFields is a list of field names (e.g. "Kind") to include in API
4888	// requests with the JSON null value. By default, fields with empty
4889	// values are omitted from API requests. However, any field with an
4890	// empty value appearing in NullFields will be sent to the server as
4891	// null. It is an error if a field in this list has a non-empty value.
4892	// This may be used to include null fields in Patch requests.
4893	NullFields []string `json:"-"`
4894}
4895
4896func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
4897	type NoMethod LiasettingsSetInventoryVerificationContactResponse
4898	raw := NoMethod(*s)
4899	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4900}
4901
4902type LiasettingsSetPosDataProviderResponse struct {
4903	// Kind: Identifies what kind of resource this is. Value: the fixed
4904	// string "content#liasettingsSetPosDataProviderResponse".
4905	Kind string `json:"kind,omitempty"`
4906
4907	// ServerResponse contains the HTTP response code and headers from the
4908	// server.
4909	googleapi.ServerResponse `json:"-"`
4910
4911	// ForceSendFields is a list of field names (e.g. "Kind") to
4912	// unconditionally include in API requests. By default, fields with
4913	// empty values are omitted from API requests. However, any non-pointer,
4914	// non-interface field appearing in ForceSendFields will be sent to the
4915	// server regardless of whether the field is empty or not. This may be
4916	// used to include empty fields in Patch requests.
4917	ForceSendFields []string `json:"-"`
4918
4919	// NullFields is a list of field names (e.g. "Kind") to include in API
4920	// requests with the JSON null value. By default, fields with empty
4921	// values are omitted from API requests. However, any field with an
4922	// empty value appearing in NullFields will be sent to the server as
4923	// null. It is an error if a field in this list has a non-empty value.
4924	// This may be used to include null fields in Patch requests.
4925	NullFields []string `json:"-"`
4926}
4927
4928func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
4929	type NoMethod LiasettingsSetPosDataProviderResponse
4930	raw := NoMethod(*s)
4931	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4932}
4933
4934type LinkService struct {
4935	// Service: Service provided to or by the linked account. Acceptable
4936	// values are: - "shoppingActionsOrderManagement" -
4937	// "shoppingActionsProductManagement" -
4938	// "shoppingAdsProductManagement"
4939	Service string `json:"service,omitempty"`
4940
4941	// Status: Status of the link Acceptable values are: - "active" -
4942	// "inactive" - "pending"
4943	Status string `json:"status,omitempty"`
4944
4945	// ForceSendFields is a list of field names (e.g. "Service") to
4946	// unconditionally include in API requests. By default, fields with
4947	// empty values are omitted from API requests. However, any non-pointer,
4948	// non-interface field appearing in ForceSendFields will be sent to the
4949	// server regardless of whether the field is empty or not. This may be
4950	// used to include empty fields in Patch requests.
4951	ForceSendFields []string `json:"-"`
4952
4953	// NullFields is a list of field names (e.g. "Service") to include in
4954	// API requests with the JSON null value. By default, fields with empty
4955	// values are omitted from API requests. However, any field with an
4956	// empty value appearing in NullFields will be sent to the server as
4957	// null. It is an error if a field in this list has a non-empty value.
4958	// This may be used to include null fields in Patch requests.
4959	NullFields []string `json:"-"`
4960}
4961
4962func (s *LinkService) MarshalJSON() ([]byte, error) {
4963	type NoMethod LinkService
4964	raw := NoMethod(*s)
4965	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4966}
4967
4968type LinkedAccount struct {
4969	// LinkedAccountId: The ID of the linked account.
4970	LinkedAccountId string `json:"linkedAccountId,omitempty"`
4971
4972	// Services: List of provided services.
4973	Services []*LinkService `json:"services,omitempty"`
4974
4975	// ForceSendFields is a list of field names (e.g. "LinkedAccountId") to
4976	// unconditionally include in API requests. By default, fields with
4977	// empty values are omitted from API requests. However, any non-pointer,
4978	// non-interface field appearing in ForceSendFields will be sent to the
4979	// server regardless of whether the field is empty or not. This may be
4980	// used to include empty fields in Patch requests.
4981	ForceSendFields []string `json:"-"`
4982
4983	// NullFields is a list of field names (e.g. "LinkedAccountId") to
4984	// include in API requests with the JSON null value. By default, fields
4985	// with empty values are omitted from API requests. However, any field
4986	// with an empty value appearing in NullFields will be sent to the
4987	// server as null. It is an error if a field in this list has a
4988	// non-empty value. This may be used to include null fields in Patch
4989	// requests.
4990	NullFields []string `json:"-"`
4991}
4992
4993func (s *LinkedAccount) MarshalJSON() ([]byte, error) {
4994	type NoMethod LinkedAccount
4995	raw := NoMethod(*s)
4996	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4997}
4998
4999// ListAccountLabelsResponse: Response message for the
5000// `ListAccountLabels` method.
5001type ListAccountLabelsResponse struct {
5002	// AccountLabels: The labels from the specified account.
5003	AccountLabels []*AccountLabel `json:"accountLabels,omitempty"`
5004
5005	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5006	// the next page. If this field is omitted, there are no subsequent
5007	// pages.
5008	NextPageToken string `json:"nextPageToken,omitempty"`
5009
5010	// ServerResponse contains the HTTP response code and headers from the
5011	// server.
5012	googleapi.ServerResponse `json:"-"`
5013
5014	// ForceSendFields is a list of field names (e.g. "AccountLabels") to
5015	// unconditionally include in API requests. By default, fields with
5016	// empty values are omitted from API requests. However, any non-pointer,
5017	// non-interface field appearing in ForceSendFields will be sent to the
5018	// server regardless of whether the field is empty or not. This may be
5019	// used to include empty fields in Patch requests.
5020	ForceSendFields []string `json:"-"`
5021
5022	// NullFields is a list of field names (e.g. "AccountLabels") to include
5023	// in API requests with the JSON null value. By default, fields with
5024	// empty values are omitted from API requests. However, any field with
5025	// an empty value appearing in NullFields will be sent to the server as
5026	// null. It is an error if a field in this list has a non-empty value.
5027	// This may be used to include null fields in Patch requests.
5028	NullFields []string `json:"-"`
5029}
5030
5031func (s *ListAccountLabelsResponse) MarshalJSON() ([]byte, error) {
5032	type NoMethod ListAccountLabelsResponse
5033	raw := NoMethod(*s)
5034	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5035}
5036
5037// ListAccountReturnCarrierResponse: Response for listing account return
5038// carriers.
5039type ListAccountReturnCarrierResponse struct {
5040	// AccountReturnCarriers: List of all available account return carriers
5041	// for the merchant.
5042	AccountReturnCarriers []*AccountReturnCarrier `json:"accountReturnCarriers,omitempty"`
5043
5044	// ServerResponse contains the HTTP response code and headers from the
5045	// server.
5046	googleapi.ServerResponse `json:"-"`
5047
5048	// ForceSendFields is a list of field names (e.g.
5049	// "AccountReturnCarriers") to unconditionally include in API requests.
5050	// By default, fields with empty values are omitted from API requests.
5051	// However, any non-pointer, non-interface field appearing in
5052	// ForceSendFields will be sent to the server regardless of whether the
5053	// field is empty or not. This may be used to include empty fields in
5054	// Patch requests.
5055	ForceSendFields []string `json:"-"`
5056
5057	// NullFields is a list of field names (e.g. "AccountReturnCarriers") to
5058	// include in API requests with the JSON null value. By default, fields
5059	// with empty values are omitted from API requests. However, any field
5060	// with an empty value appearing in NullFields will be sent to the
5061	// server as null. It is an error if a field in this list has a
5062	// non-empty value. This may be used to include null fields in Patch
5063	// requests.
5064	NullFields []string `json:"-"`
5065}
5066
5067func (s *ListAccountReturnCarrierResponse) MarshalJSON() ([]byte, error) {
5068	type NoMethod ListAccountReturnCarrierResponse
5069	raw := NoMethod(*s)
5070	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5071}
5072
5073// ListCollectionStatusesResponse: Response message for the
5074// ListCollectionStatuses method.
5075type ListCollectionStatusesResponse struct {
5076	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5077	// the next page. If this field is omitted, there are no subsequent
5078	// pages.
5079	NextPageToken string `json:"nextPageToken,omitempty"`
5080
5081	// Resources: The collectionstatuses listed.
5082	Resources []*CollectionStatus `json:"resources,omitempty"`
5083
5084	// ServerResponse contains the HTTP response code and headers from the
5085	// server.
5086	googleapi.ServerResponse `json:"-"`
5087
5088	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5089	// unconditionally include in API requests. By default, fields with
5090	// empty values are omitted from API requests. However, any non-pointer,
5091	// non-interface field appearing in ForceSendFields will be sent to the
5092	// server regardless of whether the field is empty or not. This may be
5093	// used to include empty fields in Patch requests.
5094	ForceSendFields []string `json:"-"`
5095
5096	// NullFields is a list of field names (e.g. "NextPageToken") to include
5097	// in API requests with the JSON null value. By default, fields with
5098	// empty values are omitted from API requests. However, any field with
5099	// an empty value appearing in NullFields will be sent to the server as
5100	// null. It is an error if a field in this list has a non-empty value.
5101	// This may be used to include null fields in Patch requests.
5102	NullFields []string `json:"-"`
5103}
5104
5105func (s *ListCollectionStatusesResponse) MarshalJSON() ([]byte, error) {
5106	type NoMethod ListCollectionStatusesResponse
5107	raw := NoMethod(*s)
5108	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5109}
5110
5111// ListCollectionsResponse: Response message for the ListCollections
5112// method.
5113type ListCollectionsResponse struct {
5114	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5115	// the next page. If this field is omitted, there are no subsequent
5116	// pages.
5117	NextPageToken string `json:"nextPageToken,omitempty"`
5118
5119	// Resources: The collections listed.
5120	Resources []*Collection `json:"resources,omitempty"`
5121
5122	// ServerResponse contains the HTTP response code and headers from the
5123	// server.
5124	googleapi.ServerResponse `json:"-"`
5125
5126	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5127	// unconditionally include in API requests. By default, fields with
5128	// empty values are omitted from API requests. However, any non-pointer,
5129	// non-interface field appearing in ForceSendFields will be sent to the
5130	// server regardless of whether the field is empty or not. This may be
5131	// used to include empty fields in Patch requests.
5132	ForceSendFields []string `json:"-"`
5133
5134	// NullFields is a list of field names (e.g. "NextPageToken") to include
5135	// in API requests with the JSON null value. By default, fields with
5136	// empty values are omitted from API requests. However, any field with
5137	// an empty value appearing in NullFields will be sent to the server as
5138	// null. It is an error if a field in this list has a non-empty value.
5139	// This may be used to include null fields in Patch requests.
5140	NullFields []string `json:"-"`
5141}
5142
5143func (s *ListCollectionsResponse) MarshalJSON() ([]byte, error) {
5144	type NoMethod ListCollectionsResponse
5145	raw := NoMethod(*s)
5146	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5147}
5148
5149// ListCssesResponse: The response message for the `ListCsses` method
5150type ListCssesResponse struct {
5151	// Csses: The CSS domains affiliated with the specified CSS group.
5152	Csses []*Css `json:"csses,omitempty"`
5153
5154	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5155	// the next page. If this field is omitted, there are no subsequent
5156	// pages.
5157	NextPageToken string `json:"nextPageToken,omitempty"`
5158
5159	// ServerResponse contains the HTTP response code and headers from the
5160	// server.
5161	googleapi.ServerResponse `json:"-"`
5162
5163	// ForceSendFields is a list of field names (e.g. "Csses") to
5164	// unconditionally include in API requests. By default, fields with
5165	// empty values are omitted from API requests. However, any non-pointer,
5166	// non-interface field appearing in ForceSendFields will be sent to the
5167	// server regardless of whether the field is empty or not. This may be
5168	// used to include empty fields in Patch requests.
5169	ForceSendFields []string `json:"-"`
5170
5171	// NullFields is a list of field names (e.g. "Csses") to include in API
5172	// requests with the JSON null value. By default, fields with empty
5173	// values are omitted from API requests. However, any field with an
5174	// empty value appearing in NullFields will be sent to the server as
5175	// null. It is an error if a field in this list has a non-empty value.
5176	// This may be used to include null fields in Patch requests.
5177	NullFields []string `json:"-"`
5178}
5179
5180func (s *ListCssesResponse) MarshalJSON() ([]byte, error) {
5181	type NoMethod ListCssesResponse
5182	raw := NoMethod(*s)
5183	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5184}
5185
5186// ListRegionsResponse: Response message for the `ListRegions` method.
5187type ListRegionsResponse struct {
5188	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5189	// the next page. If this field is omitted, there are no subsequent
5190	// pages.
5191	NextPageToken string `json:"nextPageToken,omitempty"`
5192
5193	// Regions: The regions from the specified merchant.
5194	Regions []*Region `json:"regions,omitempty"`
5195
5196	// ServerResponse contains the HTTP response code and headers from the
5197	// server.
5198	googleapi.ServerResponse `json:"-"`
5199
5200	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5201	// unconditionally include in API requests. By default, fields with
5202	// empty values are omitted from API requests. However, any non-pointer,
5203	// non-interface field appearing in ForceSendFields will be sent to the
5204	// server regardless of whether the field is empty or not. This may be
5205	// used to include empty fields in Patch requests.
5206	ForceSendFields []string `json:"-"`
5207
5208	// NullFields is a list of field names (e.g. "NextPageToken") to include
5209	// in API requests with the JSON null value. By default, fields with
5210	// empty values are omitted from API requests. However, any field with
5211	// an empty value appearing in NullFields will be sent to the server as
5212	// null. It is an error if a field in this list has a non-empty value.
5213	// This may be used to include null fields in Patch requests.
5214	NullFields []string `json:"-"`
5215}
5216
5217func (s *ListRegionsResponse) MarshalJSON() ([]byte, error) {
5218	type NoMethod ListRegionsResponse
5219	raw := NoMethod(*s)
5220	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5221}
5222
5223// ListRepricingProductReportsResponse: Response message for the
5224// ListRepricingProductReports method.
5225type ListRepricingProductReportsResponse struct {
5226	// NextPageToken: A token for retrieving the next page. Its absence
5227	// means there is no subsequent page.
5228	NextPageToken string `json:"nextPageToken,omitempty"`
5229
5230	// RepricingProductReports: Periodic reports for the given Repricing
5231	// product.
5232	RepricingProductReports []*RepricingProductReport `json:"repricingProductReports,omitempty"`
5233
5234	// ServerResponse contains the HTTP response code and headers from the
5235	// server.
5236	googleapi.ServerResponse `json:"-"`
5237
5238	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5239	// unconditionally include in API requests. By default, fields with
5240	// empty values are omitted from API requests. However, any non-pointer,
5241	// non-interface field appearing in ForceSendFields will be sent to the
5242	// server regardless of whether the field is empty or not. This may be
5243	// used to include empty fields in Patch requests.
5244	ForceSendFields []string `json:"-"`
5245
5246	// NullFields is a list of field names (e.g. "NextPageToken") to include
5247	// in API requests with the JSON null value. By default, fields with
5248	// empty values are omitted from API requests. However, any field with
5249	// an empty value appearing in NullFields will be sent to the server as
5250	// null. It is an error if a field in this list has a non-empty value.
5251	// This may be used to include null fields in Patch requests.
5252	NullFields []string `json:"-"`
5253}
5254
5255func (s *ListRepricingProductReportsResponse) MarshalJSON() ([]byte, error) {
5256	type NoMethod ListRepricingProductReportsResponse
5257	raw := NoMethod(*s)
5258	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5259}
5260
5261// ListRepricingRuleReportsResponse: Response message for the
5262// ListRepricingRuleReports method.
5263type ListRepricingRuleReportsResponse struct {
5264	// NextPageToken: A token for retrieving the next page. Its absence
5265	// means there is no subsequent page.
5266	NextPageToken string `json:"nextPageToken,omitempty"`
5267
5268	// RepricingRuleReports: Daily reports for the given Repricing rule.
5269	RepricingRuleReports []*RepricingRuleReport `json:"repricingRuleReports,omitempty"`
5270
5271	// ServerResponse contains the HTTP response code and headers from the
5272	// server.
5273	googleapi.ServerResponse `json:"-"`
5274
5275	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5276	// unconditionally include in API requests. By default, fields with
5277	// empty values are omitted from API requests. However, any non-pointer,
5278	// non-interface field appearing in ForceSendFields will be sent to the
5279	// server regardless of whether the field is empty or not. This may be
5280	// used to include empty fields in Patch requests.
5281	ForceSendFields []string `json:"-"`
5282
5283	// NullFields is a list of field names (e.g. "NextPageToken") to include
5284	// in API requests with the JSON null value. By default, fields with
5285	// empty values are omitted from API requests. However, any field with
5286	// an empty value appearing in NullFields will be sent to the server as
5287	// null. It is an error if a field in this list has a non-empty value.
5288	// This may be used to include null fields in Patch requests.
5289	NullFields []string `json:"-"`
5290}
5291
5292func (s *ListRepricingRuleReportsResponse) MarshalJSON() ([]byte, error) {
5293	type NoMethod ListRepricingRuleReportsResponse
5294	raw := NoMethod(*s)
5295	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5296}
5297
5298// ListRepricingRulesResponse: Response message for the
5299// `ListRepricingRules` method.
5300type ListRepricingRulesResponse struct {
5301	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5302	// the next page. If this field is omitted, there are no subsequent
5303	// pages.
5304	NextPageToken string `json:"nextPageToken,omitempty"`
5305
5306	// RepricingRules: The rules from the specified merchant.
5307	RepricingRules []*RepricingRule `json:"repricingRules,omitempty"`
5308
5309	// ServerResponse contains the HTTP response code and headers from the
5310	// server.
5311	googleapi.ServerResponse `json:"-"`
5312
5313	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5314	// unconditionally include in API requests. By default, fields with
5315	// empty values are omitted from API requests. However, any non-pointer,
5316	// non-interface field appearing in ForceSendFields will be sent to the
5317	// server regardless of whether the field is empty or not. This may be
5318	// used to include empty fields in Patch requests.
5319	ForceSendFields []string `json:"-"`
5320
5321	// NullFields is a list of field names (e.g. "NextPageToken") to include
5322	// in API requests with the JSON null value. By default, fields with
5323	// empty values are omitted from API requests. However, any field with
5324	// an empty value appearing in NullFields will be sent to the server as
5325	// null. It is an error if a field in this list has a non-empty value.
5326	// This may be used to include null fields in Patch requests.
5327	NullFields []string `json:"-"`
5328}
5329
5330func (s *ListRepricingRulesResponse) MarshalJSON() ([]byte, error) {
5331	type NoMethod ListRepricingRulesResponse
5332	raw := NoMethod(*s)
5333	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5334}
5335
5336// ListReturnPolicyOnlineResponse: Response message for the
5337// `ListReturnPolicyOnline` method.
5338type ListReturnPolicyOnlineResponse struct {
5339	// ReturnPolicies: The retrieved return policies.
5340	ReturnPolicies []*ReturnPolicyOnline `json:"returnPolicies,omitempty"`
5341
5342	// ServerResponse contains the HTTP response code and headers from the
5343	// server.
5344	googleapi.ServerResponse `json:"-"`
5345
5346	// ForceSendFields is a list of field names (e.g. "ReturnPolicies") to
5347	// unconditionally include in API requests. By default, fields with
5348	// empty values are omitted from API requests. However, any non-pointer,
5349	// non-interface field appearing in ForceSendFields will be sent to the
5350	// server regardless of whether the field is empty or not. This may be
5351	// used to include empty fields in Patch requests.
5352	ForceSendFields []string `json:"-"`
5353
5354	// NullFields is a list of field names (e.g. "ReturnPolicies") to
5355	// include in API requests with the JSON null value. By default, fields
5356	// with empty values are omitted from API requests. However, any field
5357	// with an empty value appearing in NullFields will be sent to the
5358	// server as null. It is an error if a field in this list has a
5359	// non-empty value. This may be used to include null fields in Patch
5360	// requests.
5361	NullFields []string `json:"-"`
5362}
5363
5364func (s *ListReturnPolicyOnlineResponse) MarshalJSON() ([]byte, error) {
5365	type NoMethod ListReturnPolicyOnlineResponse
5366	raw := NoMethod(*s)
5367	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5368}
5369
5370// LocalInventory: Local inventory resource. For accepted attribute
5371// values, see the local product inventory feed specification.
5372type LocalInventory struct {
5373	// Availability: Availability of the product. For accepted attribute
5374	// values, see the local product inventory feed specification.
5375	Availability string `json:"availability,omitempty"`
5376
5377	// InstoreProductLocation: In-store product location.
5378	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
5379
5380	// Kind: Identifies what kind of resource this is. Value: the fixed
5381	// string "content#localInventory"
5382	Kind string `json:"kind,omitempty"`
5383
5384	// PickupMethod: Supported pickup method for this offer. Unless the
5385	// value is "not supported", this field must be submitted together with
5386	// `pickupSla`. For accepted attribute values, see the local product
5387	// inventory feed // specification.
5388	PickupMethod string `json:"pickupMethod,omitempty"`
5389
5390	// PickupSla: Expected date that an order will be ready for pickup
5391	// relative to the order date. Must be submitted together with
5392	// `pickupMethod`. For accepted attribute values, see the local product
5393	// inventory feed specification.
5394	PickupSla string `json:"pickupSla,omitempty"`
5395
5396	// Price: Price of the product.
5397	Price *Price `json:"price,omitempty"`
5398
5399	// Quantity: Quantity of the product. Must be nonnegative.
5400	Quantity int64 `json:"quantity,omitempty"`
5401
5402	// SalePrice: Sale price of the product. Mandatory if
5403	// `sale_price_effective_date` is defined.
5404	SalePrice *Price `json:"salePrice,omitempty"`
5405
5406	// SalePriceEffectiveDate: A date range represented by a pair of ISO
5407	// 8601 dates separated by a space, comma, or slash. Both dates may be
5408	// specified as 'null' if undecided.
5409	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
5410
5411	// StoreCode: Required. Store code of this local inventory resource.
5412	StoreCode string `json:"storeCode,omitempty"`
5413
5414	// ServerResponse contains the HTTP response code and headers from the
5415	// server.
5416	googleapi.ServerResponse `json:"-"`
5417
5418	// ForceSendFields is a list of field names (e.g. "Availability") to
5419	// unconditionally include in API requests. By default, fields with
5420	// empty values are omitted from API requests. However, any non-pointer,
5421	// non-interface field appearing in ForceSendFields will be sent to the
5422	// server regardless of whether the field is empty or not. This may be
5423	// used to include empty fields in Patch requests.
5424	ForceSendFields []string `json:"-"`
5425
5426	// NullFields is a list of field names (e.g. "Availability") to include
5427	// in API requests with the JSON null value. By default, fields with
5428	// empty values are omitted from API requests. However, any field with
5429	// an empty value appearing in NullFields will be sent to the server as
5430	// null. It is an error if a field in this list has a non-empty value.
5431	// This may be used to include null fields in Patch requests.
5432	NullFields []string `json:"-"`
5433}
5434
5435func (s *LocalInventory) MarshalJSON() ([]byte, error) {
5436	type NoMethod LocalInventory
5437	raw := NoMethod(*s)
5438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5439}
5440
5441type LocalinventoryCustomBatchRequest struct {
5442	// Entries: The request entries to be processed in the batch.
5443	Entries []*LocalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
5444
5445	// ForceSendFields is a list of field names (e.g. "Entries") to
5446	// unconditionally include in API requests. By default, fields with
5447	// empty values are omitted from API requests. However, any non-pointer,
5448	// non-interface field appearing in ForceSendFields will be sent to the
5449	// server regardless of whether the field is empty or not. This may be
5450	// used to include empty fields in Patch requests.
5451	ForceSendFields []string `json:"-"`
5452
5453	// NullFields is a list of field names (e.g. "Entries") to include in
5454	// API requests with the JSON null value. By default, fields with empty
5455	// values are omitted from API requests. However, any field with an
5456	// empty value appearing in NullFields will be sent to the server as
5457	// null. It is an error if a field in this list has a non-empty value.
5458	// This may be used to include null fields in Patch requests.
5459	NullFields []string `json:"-"`
5460}
5461
5462func (s *LocalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
5463	type NoMethod LocalinventoryCustomBatchRequest
5464	raw := NoMethod(*s)
5465	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5466}
5467
5468// LocalinventoryCustomBatchRequestEntry: Batch entry encoding a single
5469// local inventory update request.
5470type LocalinventoryCustomBatchRequestEntry struct {
5471	// BatchId: An entry ID, unique within the batch request.
5472	BatchId int64 `json:"batchId,omitempty"`
5473
5474	// LocalInventory: Local inventory of the product.
5475	LocalInventory *LocalInventory `json:"localInventory,omitempty"`
5476
5477	// MerchantId: The ID of the managing account.
5478	MerchantId uint64 `json:"merchantId,omitempty,string"`
5479
5480	// Method: Method of the batch request entry. Acceptable values are: -
5481	// "insert"
5482	Method string `json:"method,omitempty"`
5483
5484	// ProductId: The ID of the product for which to update local inventory.
5485	ProductId string `json:"productId,omitempty"`
5486
5487	// ForceSendFields is a list of field names (e.g. "BatchId") to
5488	// unconditionally include in API requests. By default, fields with
5489	// empty values are omitted from API requests. However, any non-pointer,
5490	// non-interface field appearing in ForceSendFields will be sent to the
5491	// server regardless of whether the field is empty or not. This may be
5492	// used to include empty fields in Patch requests.
5493	ForceSendFields []string `json:"-"`
5494
5495	// NullFields is a list of field names (e.g. "BatchId") to include in
5496	// API requests with the JSON null value. By default, fields with empty
5497	// values are omitted from API requests. However, any field with an
5498	// empty value appearing in NullFields will be sent to the server as
5499	// null. It is an error if a field in this list has a non-empty value.
5500	// This may be used to include null fields in Patch requests.
5501	NullFields []string `json:"-"`
5502}
5503
5504func (s *LocalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
5505	type NoMethod LocalinventoryCustomBatchRequestEntry
5506	raw := NoMethod(*s)
5507	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5508}
5509
5510type LocalinventoryCustomBatchResponse struct {
5511	// Entries: The result of the execution of the batch requests.
5512	Entries []*LocalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
5513
5514	// Kind: Identifies what kind of resource this is. Value: the fixed
5515	// string "content#localinventoryCustomBatchResponse".
5516	Kind string `json:"kind,omitempty"`
5517
5518	// ServerResponse contains the HTTP response code and headers from the
5519	// server.
5520	googleapi.ServerResponse `json:"-"`
5521
5522	// ForceSendFields is a list of field names (e.g. "Entries") to
5523	// unconditionally include in API requests. By default, fields with
5524	// empty values are omitted from API requests. However, any non-pointer,
5525	// non-interface field appearing in ForceSendFields will be sent to the
5526	// server regardless of whether the field is empty or not. This may be
5527	// used to include empty fields in Patch requests.
5528	ForceSendFields []string `json:"-"`
5529
5530	// NullFields is a list of field names (e.g. "Entries") to include in
5531	// API requests with the JSON null value. By default, fields with empty
5532	// values are omitted from API requests. However, any field with an
5533	// empty value appearing in NullFields will be sent to the server as
5534	// null. It is an error if a field in this list has a non-empty value.
5535	// This may be used to include null fields in Patch requests.
5536	NullFields []string `json:"-"`
5537}
5538
5539func (s *LocalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
5540	type NoMethod LocalinventoryCustomBatchResponse
5541	raw := NoMethod(*s)
5542	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5543}
5544
5545// LocalinventoryCustomBatchResponseEntry: Batch entry encoding a single
5546// local inventory update response.
5547type LocalinventoryCustomBatchResponseEntry struct {
5548	// BatchId: The ID of the request entry this entry responds to.
5549	BatchId int64 `json:"batchId,omitempty"`
5550
5551	// Errors: A list of errors defined if and only if the request failed.
5552	Errors *Errors `json:"errors,omitempty"`
5553
5554	// Kind: Identifies what kind of resource this is. Value: the fixed
5555	// string "content#localinventoryCustomBatchResponseEntry"
5556	Kind string `json:"kind,omitempty"`
5557
5558	// ForceSendFields is a list of field names (e.g. "BatchId") to
5559	// unconditionally include in API requests. By default, fields with
5560	// empty values are omitted from API requests. However, any non-pointer,
5561	// non-interface field appearing in ForceSendFields will be sent to the
5562	// server regardless of whether the field is empty or not. This may be
5563	// used to include empty fields in Patch requests.
5564	ForceSendFields []string `json:"-"`
5565
5566	// NullFields is a list of field names (e.g. "BatchId") to include in
5567	// API requests with the JSON null value. By default, fields with empty
5568	// values are omitted from API requests. However, any field with an
5569	// empty value appearing in NullFields will be sent to the server as
5570	// null. It is an error if a field in this list has a non-empty value.
5571	// This may be used to include null fields in Patch requests.
5572	NullFields []string `json:"-"`
5573}
5574
5575func (s *LocalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
5576	type NoMethod LocalinventoryCustomBatchResponseEntry
5577	raw := NoMethod(*s)
5578	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5579}
5580
5581type LocationIdSet struct {
5582	// LocationIds: A non-empty list of location IDs. They must all be of
5583	// the same location type (e.g., state).
5584	LocationIds []string `json:"locationIds,omitempty"`
5585
5586	// ForceSendFields is a list of field names (e.g. "LocationIds") to
5587	// unconditionally include in API requests. By default, fields with
5588	// empty values are omitted from API requests. However, any non-pointer,
5589	// non-interface field appearing in ForceSendFields will be sent to the
5590	// server regardless of whether the field is empty or not. This may be
5591	// used to include empty fields in Patch requests.
5592	ForceSendFields []string `json:"-"`
5593
5594	// NullFields is a list of field names (e.g. "LocationIds") to include
5595	// in API requests with the JSON null value. By default, fields with
5596	// empty values are omitted from API requests. However, any field with
5597	// an empty value appearing in NullFields will be sent to the server as
5598	// null. It is an error if a field in this list has a non-empty value.
5599	// This may be used to include null fields in Patch requests.
5600	NullFields []string `json:"-"`
5601}
5602
5603func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
5604	type NoMethod LocationIdSet
5605	raw := NoMethod(*s)
5606	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5607}
5608
5609type LoyaltyPoints struct {
5610	// Name: Name of loyalty points program. It is recommended to limit the
5611	// name to 12 full-width characters or 24 Roman characters.
5612	Name string `json:"name,omitempty"`
5613
5614	// PointsValue: The retailer's loyalty points in absolute value.
5615	PointsValue int64 `json:"pointsValue,omitempty,string"`
5616
5617	// Ratio: The ratio of a point when converted to currency. Google
5618	// assumes currency based on Merchant Center settings. If ratio is left
5619	// out, it defaults to 1.0.
5620	Ratio float64 `json:"ratio,omitempty"`
5621
5622	// ForceSendFields is a list of field names (e.g. "Name") to
5623	// unconditionally include in API requests. By default, fields with
5624	// empty values are omitted from API requests. However, any non-pointer,
5625	// non-interface field appearing in ForceSendFields will be sent to the
5626	// server regardless of whether the field is empty or not. This may be
5627	// used to include empty fields in Patch requests.
5628	ForceSendFields []string `json:"-"`
5629
5630	// NullFields is a list of field names (e.g. "Name") to include in API
5631	// requests with the JSON null value. By default, fields with empty
5632	// values are omitted from API requests. However, any field with an
5633	// empty value appearing in NullFields will be sent to the server as
5634	// null. It is an error if a field in this list has a non-empty value.
5635	// This may be used to include null fields in Patch requests.
5636	NullFields []string `json:"-"`
5637}
5638
5639func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
5640	type NoMethod LoyaltyPoints
5641	raw := NoMethod(*s)
5642	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5643}
5644
5645func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
5646	type NoMethod LoyaltyPoints
5647	var s1 struct {
5648		Ratio gensupport.JSONFloat64 `json:"ratio"`
5649		*NoMethod
5650	}
5651	s1.NoMethod = (*NoMethod)(s)
5652	if err := json.Unmarshal(data, &s1); err != nil {
5653		return err
5654	}
5655	s.Ratio = float64(s1.Ratio)
5656	return nil
5657}
5658
5659// MerchantOrderReturn: Order return. Production access (all methods)
5660// requires the order manager role. Sandbox access does not.
5661type MerchantOrderReturn struct {
5662	// CreationDate: The date of creation of the return, in ISO 8601 format.
5663	CreationDate string `json:"creationDate,omitempty"`
5664
5665	// MerchantOrderId: Merchant defined order ID.
5666	MerchantOrderId string `json:"merchantOrderId,omitempty"`
5667
5668	// OrderId: Google order ID.
5669	OrderId string `json:"orderId,omitempty"`
5670
5671	// OrderReturnId: Order return ID generated by Google.
5672	OrderReturnId string `json:"orderReturnId,omitempty"`
5673
5674	// ReturnItems: Items of the return.
5675	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
5676
5677	// ReturnPricingInfo: Information about shipping costs.
5678	ReturnPricingInfo *ReturnPricingInfo `json:"returnPricingInfo,omitempty"`
5679
5680	// ReturnShipments: Shipments of the return.
5681	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
5682
5683	// ServerResponse contains the HTTP response code and headers from the
5684	// server.
5685	googleapi.ServerResponse `json:"-"`
5686
5687	// ForceSendFields is a list of field names (e.g. "CreationDate") to
5688	// unconditionally include in API requests. By default, fields with
5689	// empty values are omitted from API requests. However, any non-pointer,
5690	// non-interface field appearing in ForceSendFields will be sent to the
5691	// server regardless of whether the field is empty or not. This may be
5692	// used to include empty fields in Patch requests.
5693	ForceSendFields []string `json:"-"`
5694
5695	// NullFields is a list of field names (e.g. "CreationDate") to include
5696	// in API requests with the JSON null value. By default, fields with
5697	// empty values are omitted from API requests. However, any field with
5698	// an empty value appearing in NullFields will be sent to the server as
5699	// null. It is an error if a field in this list has a non-empty value.
5700	// This may be used to include null fields in Patch requests.
5701	NullFields []string `json:"-"`
5702}
5703
5704func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
5705	type NoMethod MerchantOrderReturn
5706	raw := NoMethod(*s)
5707	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5708}
5709
5710type MerchantOrderReturnItem struct {
5711	// CustomerReturnReason: The reason that the customer chooses to return
5712	// an item.
5713	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
5714
5715	// ItemId: Product level item ID. If the returned items are of the same
5716	// product, they will have the same ID.
5717	ItemId string `json:"itemId,omitempty"`
5718
5719	// MerchantRejectionReason: The reason that the merchant chose to reject
5720	// an item return.
5721	MerchantRejectionReason *MerchantRejectionReason `json:"merchantRejectionReason,omitempty"`
5722
5723	// MerchantReturnReason: The reason that merchant chooses to accept a
5724	// return item.
5725	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
5726
5727	// Product: Product data from the time of the order placement.
5728	Product *OrderLineItemProduct `json:"product,omitempty"`
5729
5730	// RefundableAmount: Maximum amount that can be refunded for this return
5731	// item.
5732	RefundableAmount *MonetaryAmount `json:"refundableAmount,omitempty"`
5733
5734	// ReturnItemId: Unit level ID for the return item. Different units of
5735	// the same product will have different IDs.
5736	ReturnItemId string `json:"returnItemId,omitempty"`
5737
5738	// ReturnShipmentIds: IDs of the return shipments that this return item
5739	// belongs to.
5740	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
5741
5742	// ShipmentGroupId: ID of the original shipment group. Provided for
5743	// shipments with invoice support.
5744	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
5745
5746	// ShipmentUnitId: ID of the shipment unit assigned by the merchant.
5747	// Provided for shipments with invoice support.
5748	ShipmentUnitId string `json:"shipmentUnitId,omitempty"`
5749
5750	// State: State of the item. Acceptable values are: - "canceled" -
5751	// "new" - "received" - "refunded" - "rejected"
5752	State string `json:"state,omitempty"`
5753
5754	// ForceSendFields is a list of field names (e.g.
5755	// "CustomerReturnReason") to unconditionally include in API requests.
5756	// By default, fields with empty values are omitted from API requests.
5757	// However, any non-pointer, non-interface field appearing in
5758	// ForceSendFields will be sent to the server regardless of whether the
5759	// field is empty or not. This may be used to include empty fields in
5760	// Patch requests.
5761	ForceSendFields []string `json:"-"`
5762
5763	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
5764	// include in API requests with the JSON null value. By default, fields
5765	// with empty values are omitted from API requests. However, any field
5766	// with an empty value appearing in NullFields will be sent to the
5767	// server as null. It is an error if a field in this list has a
5768	// non-empty value. This may be used to include null fields in Patch
5769	// requests.
5770	NullFields []string `json:"-"`
5771}
5772
5773func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
5774	type NoMethod MerchantOrderReturnItem
5775	raw := NoMethod(*s)
5776	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5777}
5778
5779type MerchantRejectionReason struct {
5780	// Description: Description of the reason.
5781	Description string `json:"description,omitempty"`
5782
5783	// ReasonCode: Code of the rejection reason.
5784	ReasonCode string `json:"reasonCode,omitempty"`
5785
5786	// ForceSendFields is a list of field names (e.g. "Description") to
5787	// unconditionally include in API requests. By default, fields with
5788	// empty values are omitted from API requests. However, any non-pointer,
5789	// non-interface field appearing in ForceSendFields will be sent to the
5790	// server regardless of whether the field is empty or not. This may be
5791	// used to include empty fields in Patch requests.
5792	ForceSendFields []string `json:"-"`
5793
5794	// NullFields is a list of field names (e.g. "Description") to include
5795	// in API requests with the JSON null value. By default, fields with
5796	// empty values are omitted from API requests. However, any field with
5797	// an empty value appearing in NullFields will be sent to the server as
5798	// null. It is an error if a field in this list has a non-empty value.
5799	// This may be used to include null fields in Patch requests.
5800	NullFields []string `json:"-"`
5801}
5802
5803func (s *MerchantRejectionReason) MarshalJSON() ([]byte, error) {
5804	type NoMethod MerchantRejectionReason
5805	raw := NoMethod(*s)
5806	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5807}
5808
5809// Metrics: Performance metrics. Values are only set for metrics
5810// requested explicitly in the request's search query.
5811type Metrics struct {
5812	// Clicks: Number of clicks.
5813	Clicks int64 `json:"clicks,omitempty,string"`
5814
5815	// Ctr: Click-through rate - the number of clicks merchant's products
5816	// receive (clicks) divided by the number of times the products are
5817	// shown (impressions).
5818	Ctr float64 `json:"ctr,omitempty"`
5819
5820	// Impressions: Number of times merchant's products are shown.
5821	Impressions int64 `json:"impressions,omitempty,string"`
5822
5823	// ForceSendFields is a list of field names (e.g. "Clicks") to
5824	// unconditionally include in API requests. By default, fields with
5825	// empty values are omitted from API requests. However, any non-pointer,
5826	// non-interface field appearing in ForceSendFields will be sent to the
5827	// server regardless of whether the field is empty or not. This may be
5828	// used to include empty fields in Patch requests.
5829	ForceSendFields []string `json:"-"`
5830
5831	// NullFields is a list of field names (e.g. "Clicks") to include in API
5832	// requests with the JSON null value. By default, fields with empty
5833	// values are omitted from API requests. However, any field with an
5834	// empty value appearing in NullFields will be sent to the server as
5835	// null. It is an error if a field in this list has a non-empty value.
5836	// This may be used to include null fields in Patch requests.
5837	NullFields []string `json:"-"`
5838}
5839
5840func (s *Metrics) MarshalJSON() ([]byte, error) {
5841	type NoMethod Metrics
5842	raw := NoMethod(*s)
5843	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5844}
5845
5846func (s *Metrics) UnmarshalJSON(data []byte) error {
5847	type NoMethod Metrics
5848	var s1 struct {
5849		Ctr gensupport.JSONFloat64 `json:"ctr"`
5850		*NoMethod
5851	}
5852	s1.NoMethod = (*NoMethod)(s)
5853	if err := json.Unmarshal(data, &s1); err != nil {
5854		return err
5855	}
5856	s.Ctr = float64(s1.Ctr)
5857	return nil
5858}
5859
5860type MinimumOrderValueTable struct {
5861	StoreCodeSetWithMovs []*MinimumOrderValueTableStoreCodeSetWithMov `json:"storeCodeSetWithMovs,omitempty"`
5862
5863	// ForceSendFields is a list of field names (e.g.
5864	// "StoreCodeSetWithMovs") to unconditionally include in API requests.
5865	// By default, fields with empty values are omitted from API requests.
5866	// However, any non-pointer, non-interface field appearing in
5867	// ForceSendFields will be sent to the server regardless of whether the
5868	// field is empty or not. This may be used to include empty fields in
5869	// Patch requests.
5870	ForceSendFields []string `json:"-"`
5871
5872	// NullFields is a list of field names (e.g. "StoreCodeSetWithMovs") to
5873	// include in API requests with the JSON null value. By default, fields
5874	// with empty values are omitted from API requests. However, any field
5875	// with an empty value appearing in NullFields will be sent to the
5876	// server as null. It is an error if a field in this list has a
5877	// non-empty value. This may be used to include null fields in Patch
5878	// requests.
5879	NullFields []string `json:"-"`
5880}
5881
5882func (s *MinimumOrderValueTable) MarshalJSON() ([]byte, error) {
5883	type NoMethod MinimumOrderValueTable
5884	raw := NoMethod(*s)
5885	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5886}
5887
5888// MinimumOrderValueTableStoreCodeSetWithMov: A list of store code sets
5889// sharing the same minimum order value. At least two sets are required
5890// and the last one must be empty, which signifies 'MOV for all other
5891// stores'. Each store code can only appear once across all the sets.
5892// All prices within a service must have the same currency.
5893type MinimumOrderValueTableStoreCodeSetWithMov struct {
5894	// StoreCodes: A list of unique store codes or empty for the catch all.
5895	StoreCodes []string `json:"storeCodes,omitempty"`
5896
5897	// Value: The minimum order value for the given stores.
5898	Value *Price `json:"value,omitempty"`
5899
5900	// ForceSendFields is a list of field names (e.g. "StoreCodes") to
5901	// unconditionally include in API requests. By default, fields with
5902	// empty values are omitted from API requests. However, any non-pointer,
5903	// non-interface field appearing in ForceSendFields will be sent to the
5904	// server regardless of whether the field is empty or not. This may be
5905	// used to include empty fields in Patch requests.
5906	ForceSendFields []string `json:"-"`
5907
5908	// NullFields is a list of field names (e.g. "StoreCodes") to include in
5909	// API requests with the JSON null value. By default, fields with empty
5910	// values are omitted from API requests. However, any field with an
5911	// empty value appearing in NullFields will be sent to the server as
5912	// null. It is an error if a field in this list has a non-empty value.
5913	// This may be used to include null fields in Patch requests.
5914	NullFields []string `json:"-"`
5915}
5916
5917func (s *MinimumOrderValueTableStoreCodeSetWithMov) MarshalJSON() ([]byte, error) {
5918	type NoMethod MinimumOrderValueTableStoreCodeSetWithMov
5919	raw := NoMethod(*s)
5920	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5921}
5922
5923type MonetaryAmount struct {
5924	// PriceAmount: The pre-tax or post-tax price depends on the location of
5925	// the order. - For countries (e.g. US) where price attribute excludes
5926	// tax, this field corresponds to the pre-tax value. - For coutries
5927	// (e.g. France) where price attribute includes tax, this field
5928	// corresponds to the post-tax value .
5929	PriceAmount *Price `json:"priceAmount,omitempty"`
5930
5931	// TaxAmount: Tax value, present only for countries where price
5932	// attribute excludes tax (e.g. US). No tax is referenced as 0 value
5933	// with the corresponding `currency`.
5934	TaxAmount *Price `json:"taxAmount,omitempty"`
5935
5936	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
5937	// unconditionally include in API requests. By default, fields with
5938	// empty values are omitted from API requests. However, any non-pointer,
5939	// non-interface field appearing in ForceSendFields will be sent to the
5940	// server regardless of whether the field is empty or not. This may be
5941	// used to include empty fields in Patch requests.
5942	ForceSendFields []string `json:"-"`
5943
5944	// NullFields is a list of field names (e.g. "PriceAmount") to include
5945	// in API requests with the JSON null value. By default, fields with
5946	// empty values are omitted from API requests. However, any field with
5947	// an empty value appearing in NullFields will be sent to the server as
5948	// null. It is an error if a field in this list has a non-empty value.
5949	// This may be used to include null fields in Patch requests.
5950	NullFields []string `json:"-"`
5951}
5952
5953func (s *MonetaryAmount) MarshalJSON() ([]byte, error) {
5954	type NoMethod MonetaryAmount
5955	raw := NoMethod(*s)
5956	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5957}
5958
5959// OnboardBuyOnGoogleProgramRequest: Request message for the
5960// OnboardProgram method.
5961type OnboardBuyOnGoogleProgramRequest struct {
5962	// CustomerServiceEmail: The customer service email.
5963	CustomerServiceEmail string `json:"customerServiceEmail,omitempty"`
5964
5965	// ForceSendFields is a list of field names (e.g.
5966	// "CustomerServiceEmail") to unconditionally include in API requests.
5967	// By default, fields with empty values are omitted from API requests.
5968	// However, any non-pointer, non-interface field appearing in
5969	// ForceSendFields will be sent to the server regardless of whether the
5970	// field is empty or not. This may be used to include empty fields in
5971	// Patch requests.
5972	ForceSendFields []string `json:"-"`
5973
5974	// NullFields is a list of field names (e.g. "CustomerServiceEmail") to
5975	// include in API requests with the JSON null value. By default, fields
5976	// with empty values are omitted from API requests. However, any field
5977	// with an empty value appearing in NullFields will be sent to the
5978	// server as null. It is an error if a field in this list has a
5979	// non-empty value. This may be used to include null fields in Patch
5980	// requests.
5981	NullFields []string `json:"-"`
5982}
5983
5984func (s *OnboardBuyOnGoogleProgramRequest) MarshalJSON() ([]byte, error) {
5985	type NoMethod OnboardBuyOnGoogleProgramRequest
5986	raw := NoMethod(*s)
5987	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5988}
5989
5990// Order: Order. Production access (all methods) requires the order
5991// manager role. Sandbox access does not.
5992type Order struct {
5993	// Acknowledged: Whether the order was acknowledged.
5994	Acknowledged bool `json:"acknowledged,omitempty"`
5995
5996	// Annotations: List of key-value pairs that are attached to a given
5997	// order.
5998	Annotations []*OrderOrderAnnotation `json:"annotations,omitempty"`
5999
6000	// BillingAddress: The billing address.
6001	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
6002
6003	// Customer: The details of the customer who placed the order.
6004	Customer *OrderCustomer `json:"customer,omitempty"`
6005
6006	// DeliveryDetails: Delivery details for shipments of type `delivery`.
6007	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
6008
6009	// Id: The REST ID of the order. Globally unique.
6010	Id string `json:"id,omitempty"`
6011
6012	// Kind: Identifies what kind of resource this is. Value: the fixed
6013	// string "content#order"
6014	Kind string `json:"kind,omitempty"`
6015
6016	// LineItems: Line items that are ordered.
6017	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
6018
6019	MerchantId uint64 `json:"merchantId,omitempty,string"`
6020
6021	// MerchantOrderId: Merchant-provided ID of the order.
6022	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6023
6024	// NetPriceAmount: The net amount for the order (price part). For
6025	// example, if an order was originally for $100 and a refund was issued
6026	// for $20, the net amount will be $80.
6027	NetPriceAmount *Price `json:"netPriceAmount,omitempty"`
6028
6029	// NetTaxAmount: The net amount for the order (tax part). Note that in
6030	// certain cases due to taxable base adjustment `netTaxAmount` might not
6031	// match to a sum of tax field across all lineItems and refunds.
6032	NetTaxAmount *Price `json:"netTaxAmount,omitempty"`
6033
6034	// PaymentStatus: The status of the payment. Acceptable values are: -
6035	// "paymentCaptured" - "paymentRejected" - "paymentSecured" -
6036	// "pendingAuthorization"
6037	PaymentStatus string `json:"paymentStatus,omitempty"`
6038
6039	// PickupDetails: Pickup details for shipments of type `pickup`.
6040	PickupDetails *OrderPickupDetails `json:"pickupDetails,omitempty"`
6041
6042	// PlacedDate: The date when the order was placed, in ISO 8601 format.
6043	PlacedDate string `json:"placedDate,omitempty"`
6044
6045	// Promotions: Promotions associated with the order. To determine which
6046	// promotions apply to which products, check the
6047	// `Promotions[].appliedItems[].lineItemId` field against the
6048	// `LineItems[].id` field for each promotion. If a promotion is applied
6049	// to more than 1 offerId, divide the discount value by the number of
6050	// affected offers to determine how much discount to apply to each
6051	// offerId. Examples: 1. To calculate price paid by the customer for a
6052	// single line item including the discount: For each promotion, subtract
6053	// the `LineItems[].adjustments[].priceAdjustment.value` amount from the
6054	// `LineItems[].Price.value`. 2. To calculate price paid by the customer
6055	// for a single line item including the discount in case of multiple
6056	// quantity: For each promotion, divide the
6057	// `LineItems[].adjustments[].priceAdjustment.value` by the quantity of
6058	// products then subtract the resulting value from the
6059	// `LineItems[].Product.Price.value` for each quantity item. Only 1
6060	// promotion can be applied to an offerId in a given order. To refund an
6061	// item which had a promotion applied to it, make sure to refund the
6062	// amount after first subtracting the promotion discount from the item
6063	// price. More details about the program are here.
6064	Promotions []*OrderPromotion `json:"promotions,omitempty"`
6065
6066	// Refunds: Refunds for the order.
6067	Refunds []*OrderRefund `json:"refunds,omitempty"`
6068
6069	// Shipments: Shipments of the order.
6070	Shipments []*OrderShipment `json:"shipments,omitempty"`
6071
6072	// ShippingCost: The total cost of shipping for all items.
6073	ShippingCost *Price `json:"shippingCost,omitempty"`
6074
6075	// ShippingCostTax: The tax for the total shipping cost.
6076	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
6077
6078	// Status: The status of the order. Acceptable values are: -
6079	// "canceled" - "delivered" - "inProgress" -
6080	// "partiallyDelivered" - "partiallyReturned" - "partiallyShipped"
6081	// - "pendingShipment" - "returned" - "shipped"
6082	Status string `json:"status,omitempty"`
6083
6084	// TaxCollector: The party responsible for collecting and remitting
6085	// taxes. Acceptable values are: - "marketplaceFacilitator" -
6086	// "merchant"
6087	TaxCollector string `json:"taxCollector,omitempty"`
6088
6089	// ServerResponse contains the HTTP response code and headers from the
6090	// server.
6091	googleapi.ServerResponse `json:"-"`
6092
6093	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
6094	// unconditionally include in API requests. By default, fields with
6095	// empty values are omitted from API requests. However, any non-pointer,
6096	// non-interface field appearing in ForceSendFields will be sent to the
6097	// server regardless of whether the field is empty or not. This may be
6098	// used to include empty fields in Patch requests.
6099	ForceSendFields []string `json:"-"`
6100
6101	// NullFields is a list of field names (e.g. "Acknowledged") to include
6102	// in API requests with the JSON null value. By default, fields with
6103	// empty values are omitted from API requests. However, any field with
6104	// an empty value appearing in NullFields will be sent to the server as
6105	// null. It is an error if a field in this list has a non-empty value.
6106	// This may be used to include null fields in Patch requests.
6107	NullFields []string `json:"-"`
6108}
6109
6110func (s *Order) MarshalJSON() ([]byte, error) {
6111	type NoMethod Order
6112	raw := NoMethod(*s)
6113	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6114}
6115
6116type OrderAddress struct {
6117	// Country: CLDR country code (e.g. "US").
6118	Country string `json:"country,omitempty"`
6119
6120	// FullAddress: Strings representing the lines of the printed label for
6121	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
6122	// Mountain View, CA, 94043 United States
6123	FullAddress []string `json:"fullAddress,omitempty"`
6124
6125	// IsPostOfficeBox: Whether the address is a post office box.
6126	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
6127
6128	// Locality: City, town or commune. May also include dependent
6129	// localities or sublocalities (e.g. neighborhoods or suburbs).
6130	Locality string `json:"locality,omitempty"`
6131
6132	// PostalCode: Postal Code or ZIP (e.g. "94043").
6133	PostalCode string `json:"postalCode,omitempty"`
6134
6135	// RecipientName: Name of the recipient.
6136	RecipientName string `json:"recipientName,omitempty"`
6137
6138	// Region: Top-level administrative subdivision of the country. For
6139	// example, a state like California ("CA") or a province like Quebec
6140	// ("QC").
6141	Region string `json:"region,omitempty"`
6142
6143	// StreetAddress: Street-level part of the address.
6144	StreetAddress []string `json:"streetAddress,omitempty"`
6145
6146	// ForceSendFields is a list of field names (e.g. "Country") to
6147	// unconditionally include in API requests. By default, fields with
6148	// empty values are omitted from API requests. However, any non-pointer,
6149	// non-interface field appearing in ForceSendFields will be sent to the
6150	// server regardless of whether the field is empty or not. This may be
6151	// used to include empty fields in Patch requests.
6152	ForceSendFields []string `json:"-"`
6153
6154	// NullFields is a list of field names (e.g. "Country") to include in
6155	// API requests with the JSON null value. By default, fields with empty
6156	// values are omitted from API requests. However, any field with an
6157	// empty value appearing in NullFields will be sent to the server as
6158	// null. It is an error if a field in this list has a non-empty value.
6159	// This may be used to include null fields in Patch requests.
6160	NullFields []string `json:"-"`
6161}
6162
6163func (s *OrderAddress) MarshalJSON() ([]byte, error) {
6164	type NoMethod OrderAddress
6165	raw := NoMethod(*s)
6166	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6167}
6168
6169type OrderCancellation struct {
6170	// Actor: The actor that created the cancellation. Acceptable values
6171	// are: - "customer" - "googleBot" - "googleCustomerService" -
6172	// "googlePayments" - "googleSabre" - "merchant"
6173	Actor string `json:"actor,omitempty"`
6174
6175	// CreationDate: Date on which the cancellation has been created, in ISO
6176	// 8601 format.
6177	CreationDate string `json:"creationDate,omitempty"`
6178
6179	// Quantity: The quantity that was canceled.
6180	Quantity int64 `json:"quantity,omitempty"`
6181
6182	// Reason: The reason for the cancellation. Orders that are canceled
6183	// with a noInventory reason will lead to the removal of the product
6184	// from Buy on Google until you make an update to that product. This
6185	// will not affect your Shopping ads. Acceptable values are: -
6186	// "autoPostInternal" - "autoPostInvalidBillingAddress" -
6187	// "autoPostNoInventory" - "autoPostPriceError" -
6188	// "autoPostUndeliverableShippingAddress" - "couponAbuse" -
6189	// "customerCanceled" - "customerInitiatedCancel" -
6190	// "customerSupportRequested" - "failToPushOrderGoogleError" -
6191	// "failToPushOrderMerchantError" -
6192	// "failToPushOrderMerchantFulfillmentError" -
6193	// "failToPushOrderToMerchant" -
6194	// "failToPushOrderToMerchantOutOfStock" - "invalidCoupon" -
6195	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
6196	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
6197	// "paymentDeclined" - "priceError" - "returnRefundAbuse" -
6198	// "shippingPriceError" - "taxError" -
6199	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
6200	Reason string `json:"reason,omitempty"`
6201
6202	// ReasonText: The explanation of the reason.
6203	ReasonText string `json:"reasonText,omitempty"`
6204
6205	// ForceSendFields is a list of field names (e.g. "Actor") to
6206	// unconditionally include in API requests. By default, fields with
6207	// empty values are omitted from API requests. However, any non-pointer,
6208	// non-interface field appearing in ForceSendFields will be sent to the
6209	// server regardless of whether the field is empty or not. This may be
6210	// used to include empty fields in Patch requests.
6211	ForceSendFields []string `json:"-"`
6212
6213	// NullFields is a list of field names (e.g. "Actor") to include in API
6214	// requests with the JSON null value. By default, fields with empty
6215	// values are omitted from API requests. However, any field with an
6216	// empty value appearing in NullFields will be sent to the server as
6217	// null. It is an error if a field in this list has a non-empty value.
6218	// This may be used to include null fields in Patch requests.
6219	NullFields []string `json:"-"`
6220}
6221
6222func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
6223	type NoMethod OrderCancellation
6224	raw := NoMethod(*s)
6225	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6226}
6227
6228type OrderCustomer struct {
6229	// FullName: Full name of the customer.
6230	FullName string `json:"fullName,omitempty"`
6231
6232	// InvoiceReceivingEmail: Email address for the merchant to send
6233	// value-added tax or invoice documentation of the order. Only the last
6234	// document sent is made available to the customer. For more
6235	// information, see About automated VAT invoicing for Buy on Google.
6236	InvoiceReceivingEmail string `json:"invoiceReceivingEmail,omitempty"`
6237
6238	// LoyaltyInfo: Loyalty program information.
6239	LoyaltyInfo *OrderCustomerLoyaltyInfo `json:"loyaltyInfo,omitempty"`
6240
6241	// MarketingRightsInfo: Customer's marketing preferences. Contains the
6242	// marketing opt-in information that is current at the time that the
6243	// merchant call. User preference selections can change from one order
6244	// to the next so preferences must be checked with every order.
6245	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
6246
6247	// ForceSendFields is a list of field names (e.g. "FullName") to
6248	// unconditionally include in API requests. By default, fields with
6249	// empty values are omitted from API requests. However, any non-pointer,
6250	// non-interface field appearing in ForceSendFields will be sent to the
6251	// server regardless of whether the field is empty or not. This may be
6252	// used to include empty fields in Patch requests.
6253	ForceSendFields []string `json:"-"`
6254
6255	// NullFields is a list of field names (e.g. "FullName") to include in
6256	// API requests with the JSON null value. By default, fields with empty
6257	// values are omitted from API requests. However, any field with an
6258	// empty value appearing in NullFields will be sent to the server as
6259	// null. It is an error if a field in this list has a non-empty value.
6260	// This may be used to include null fields in Patch requests.
6261	NullFields []string `json:"-"`
6262}
6263
6264func (s *OrderCustomer) MarshalJSON() ([]byte, error) {
6265	type NoMethod OrderCustomer
6266	raw := NoMethod(*s)
6267	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6268}
6269
6270type OrderCustomerLoyaltyInfo struct {
6271	// LoyaltyNumber: The loyalty card/membership number.
6272	LoyaltyNumber string `json:"loyaltyNumber,omitempty"`
6273
6274	// Name: Name of card/membership holder, this field will be populated
6275	// when
6276	Name string `json:"name,omitempty"`
6277
6278	// ForceSendFields is a list of field names (e.g. "LoyaltyNumber") to
6279	// unconditionally include in API requests. By default, fields with
6280	// empty values are omitted from API requests. However, any non-pointer,
6281	// non-interface field appearing in ForceSendFields will be sent to the
6282	// server regardless of whether the field is empty or not. This may be
6283	// used to include empty fields in Patch requests.
6284	ForceSendFields []string `json:"-"`
6285
6286	// NullFields is a list of field names (e.g. "LoyaltyNumber") to include
6287	// in API requests with the JSON null value. By default, fields with
6288	// empty values are omitted from API requests. However, any field with
6289	// an empty value appearing in NullFields will be sent to the server as
6290	// null. It is an error if a field in this list has a non-empty value.
6291	// This may be used to include null fields in Patch requests.
6292	NullFields []string `json:"-"`
6293}
6294
6295func (s *OrderCustomerLoyaltyInfo) MarshalJSON() ([]byte, error) {
6296	type NoMethod OrderCustomerLoyaltyInfo
6297	raw := NoMethod(*s)
6298	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6299}
6300
6301type OrderCustomerMarketingRightsInfo struct {
6302	// ExplicitMarketingPreference: Last known customer selection regarding
6303	// marketing preferences. In certain cases this selection might not be
6304	// known, so this field would be empty. If a customer selected `granted`
6305	// in their most recent order, they can be subscribed to marketing
6306	// emails. Customers who have chosen `denied` must not be subscribed, or
6307	// must be unsubscribed if already opted-in. Acceptable values are: -
6308	// "denied" - "granted"
6309	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
6310
6311	// LastUpdatedTimestamp: Timestamp when last time marketing preference
6312	// was updated. Could be empty, if user wasn't offered a selection yet.
6313	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
6314
6315	// MarketingEmailAddress: Email address that can be used for marketing
6316	// purposes. The field may be empty even if
6317	// `explicitMarketingPreference` is 'granted'. This happens when
6318	// retrieving an old order from the customer who deleted their account.
6319	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
6320
6321	// ForceSendFields is a list of field names (e.g.
6322	// "ExplicitMarketingPreference") to unconditionally include in API
6323	// requests. By default, fields with empty values are omitted from API
6324	// requests. However, any non-pointer, non-interface field appearing in
6325	// ForceSendFields will be sent to the server regardless of whether the
6326	// field is empty or not. This may be used to include empty fields in
6327	// Patch requests.
6328	ForceSendFields []string `json:"-"`
6329
6330	// NullFields is a list of field names (e.g.
6331	// "ExplicitMarketingPreference") to include in API requests with the
6332	// JSON null value. By default, fields with empty values are omitted
6333	// from API requests. However, any field with an empty value appearing
6334	// in NullFields will be sent to the server as null. It is an error if a
6335	// field in this list has a non-empty value. This may be used to include
6336	// null fields in Patch requests.
6337	NullFields []string `json:"-"`
6338}
6339
6340func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
6341	type NoMethod OrderCustomerMarketingRightsInfo
6342	raw := NoMethod(*s)
6343	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6344}
6345
6346type OrderDeliveryDetails struct {
6347	// Address: The delivery address
6348	Address *OrderAddress `json:"address,omitempty"`
6349
6350	// PhoneNumber: The phone number of the person receiving the delivery.
6351	PhoneNumber string `json:"phoneNumber,omitempty"`
6352
6353	// ForceSendFields is a list of field names (e.g. "Address") to
6354	// unconditionally include in API requests. By default, fields with
6355	// empty values are omitted from API requests. However, any non-pointer,
6356	// non-interface field appearing in ForceSendFields will be sent to the
6357	// server regardless of whether the field is empty or not. This may be
6358	// used to include empty fields in Patch requests.
6359	ForceSendFields []string `json:"-"`
6360
6361	// NullFields is a list of field names (e.g. "Address") to include in
6362	// API requests with the JSON null value. By default, fields with empty
6363	// values are omitted from API requests. However, any field with an
6364	// empty value appearing in NullFields will be sent to the server as
6365	// null. It is an error if a field in this list has a non-empty value.
6366	// This may be used to include null fields in Patch requests.
6367	NullFields []string `json:"-"`
6368}
6369
6370func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
6371	type NoMethod OrderDeliveryDetails
6372	raw := NoMethod(*s)
6373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6374}
6375
6376type OrderLineItem struct {
6377	// Adjustments: Price and tax adjustments applied on the line item.
6378	Adjustments []*OrderLineItemAdjustment `json:"adjustments,omitempty"`
6379
6380	// Annotations: Annotations that are attached to the line item.
6381	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
6382
6383	// Cancellations: Cancellations of the line item.
6384	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
6385
6386	// Id: The ID of the line item.
6387	Id string `json:"id,omitempty"`
6388
6389	// Price: Total price for the line item. For example, if two items for
6390	// $10 are purchased, the total price will be $20.
6391	Price *Price `json:"price,omitempty"`
6392
6393	// Product: Product data as seen by customer from the time of the order
6394	// placement. Note that certain attributes values (e.g. title or gtin)
6395	// might be reformatted and no longer match values submitted via product
6396	// feed.
6397	Product *OrderLineItemProduct `json:"product,omitempty"`
6398
6399	// QuantityCanceled: Number of items canceled.
6400	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
6401
6402	// QuantityDelivered: Number of items delivered.
6403	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
6404
6405	// QuantityOrdered: Number of items ordered.
6406	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
6407
6408	// QuantityPending: Number of items pending.
6409	QuantityPending int64 `json:"quantityPending,omitempty"`
6410
6411	// QuantityReadyForPickup: Number of items ready for pickup.
6412	QuantityReadyForPickup int64 `json:"quantityReadyForPickup,omitempty"`
6413
6414	// QuantityReturned: Number of items returned.
6415	QuantityReturned int64 `json:"quantityReturned,omitempty"`
6416
6417	// QuantityShipped: Number of items shipped.
6418	QuantityShipped int64 `json:"quantityShipped,omitempty"`
6419
6420	// QuantityUndeliverable: Number of items undeliverable.
6421	QuantityUndeliverable int64 `json:"quantityUndeliverable,omitempty"`
6422
6423	// ReturnInfo: Details of the return policy for the line item.
6424	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
6425
6426	// Returns: Returns of the line item.
6427	Returns []*OrderReturn `json:"returns,omitempty"`
6428
6429	// ShippingDetails: Details of the requested shipping for the line item.
6430	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
6431
6432	// Tax: Total tax amount for the line item. For example, if two items
6433	// are purchased, and each have a cost tax of $2, the total tax amount
6434	// will be $4.
6435	Tax *Price `json:"tax,omitempty"`
6436
6437	// ForceSendFields is a list of field names (e.g. "Adjustments") to
6438	// unconditionally include in API requests. By default, fields with
6439	// empty values are omitted from API requests. However, any non-pointer,
6440	// non-interface field appearing in ForceSendFields will be sent to the
6441	// server regardless of whether the field is empty or not. This may be
6442	// used to include empty fields in Patch requests.
6443	ForceSendFields []string `json:"-"`
6444
6445	// NullFields is a list of field names (e.g. "Adjustments") to include
6446	// in API requests with the JSON null value. By default, fields with
6447	// empty values are omitted from API requests. However, any field with
6448	// an empty value appearing in NullFields will be sent to the server as
6449	// null. It is an error if a field in this list has a non-empty value.
6450	// This may be used to include null fields in Patch requests.
6451	NullFields []string `json:"-"`
6452}
6453
6454func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
6455	type NoMethod OrderLineItem
6456	raw := NoMethod(*s)
6457	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6458}
6459
6460type OrderLineItemAdjustment struct {
6461	// PriceAdjustment: Adjustment for total price of the line item.
6462	PriceAdjustment *Price `json:"priceAdjustment,omitempty"`
6463
6464	// TaxAdjustment: Adjustment for total tax of the line item.
6465	TaxAdjustment *Price `json:"taxAdjustment,omitempty"`
6466
6467	// Type: Type of this adjustment. Acceptable values are: - "promotion"
6468	Type string `json:"type,omitempty"`
6469
6470	// ForceSendFields is a list of field names (e.g. "PriceAdjustment") to
6471	// unconditionally include in API requests. By default, fields with
6472	// empty values are omitted from API requests. However, any non-pointer,
6473	// non-interface field appearing in ForceSendFields will be sent to the
6474	// server regardless of whether the field is empty or not. This may be
6475	// used to include empty fields in Patch requests.
6476	ForceSendFields []string `json:"-"`
6477
6478	// NullFields is a list of field names (e.g. "PriceAdjustment") to
6479	// include in API requests with the JSON null value. By default, fields
6480	// with empty values are omitted from API requests. However, any field
6481	// with an empty value appearing in NullFields will be sent to the
6482	// server as null. It is an error if a field in this list has a
6483	// non-empty value. This may be used to include null fields in Patch
6484	// requests.
6485	NullFields []string `json:"-"`
6486}
6487
6488func (s *OrderLineItemAdjustment) MarshalJSON() ([]byte, error) {
6489	type NoMethod OrderLineItemAdjustment
6490	raw := NoMethod(*s)
6491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6492}
6493
6494type OrderLineItemProduct struct {
6495	// Brand: Brand of the item.
6496	Brand string `json:"brand,omitempty"`
6497
6498	// Condition: Condition or state of the item. Acceptable values are: -
6499	// "new" - "refurbished" - "used"
6500	Condition string `json:"condition,omitempty"`
6501
6502	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
6503	ContentLanguage string `json:"contentLanguage,omitempty"`
6504
6505	// Fees: Associated fees at order creation time.
6506	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
6507
6508	// Gtin: Global Trade Item Number (GTIN) of the item.
6509	Gtin string `json:"gtin,omitempty"`
6510
6511	// Id: The REST ID of the product.
6512	Id string `json:"id,omitempty"`
6513
6514	// ImageLink: URL of an image of the item.
6515	ImageLink string `json:"imageLink,omitempty"`
6516
6517	// ItemGroupId: Shared identifier for all variants of the same product.
6518	ItemGroupId string `json:"itemGroupId,omitempty"`
6519
6520	// Mpn: Manufacturer Part Number (MPN) of the item.
6521	Mpn string `json:"mpn,omitempty"`
6522
6523	// OfferId: An identifier of the item.
6524	OfferId string `json:"offerId,omitempty"`
6525
6526	// Price: Price of the item.
6527	Price *Price `json:"price,omitempty"`
6528
6529	// ShownImage: URL to the cached image shown to the user when order was
6530	// placed.
6531	ShownImage string `json:"shownImage,omitempty"`
6532
6533	// TargetCountry: The CLDR territory // code of the target country of
6534	// the product.
6535	TargetCountry string `json:"targetCountry,omitempty"`
6536
6537	// Title: The title of the product.
6538	Title string `json:"title,omitempty"`
6539
6540	// VariantAttributes: Variant attributes for the item. These are
6541	// dimensions of the product, such as color, gender, material, pattern,
6542	// and size. You can find a comprehensive list of variant attributes
6543	// here.
6544	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
6545
6546	// ForceSendFields is a list of field names (e.g. "Brand") to
6547	// unconditionally include in API requests. By default, fields with
6548	// empty values are omitted from API requests. However, any non-pointer,
6549	// non-interface field appearing in ForceSendFields will be sent to the
6550	// server regardless of whether the field is empty or not. This may be
6551	// used to include empty fields in Patch requests.
6552	ForceSendFields []string `json:"-"`
6553
6554	// NullFields is a list of field names (e.g. "Brand") to include in API
6555	// requests with the JSON null value. By default, fields with empty
6556	// values are omitted from API requests. However, any field with an
6557	// empty value appearing in NullFields will be sent to the server as
6558	// null. It is an error if a field in this list has a non-empty value.
6559	// This may be used to include null fields in Patch requests.
6560	NullFields []string `json:"-"`
6561}
6562
6563func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
6564	type NoMethod OrderLineItemProduct
6565	raw := NoMethod(*s)
6566	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6567}
6568
6569type OrderLineItemProductFee struct {
6570	// Amount: Amount of the fee.
6571	Amount *Price `json:"amount,omitempty"`
6572
6573	// Name: Name of the fee.
6574	Name string `json:"name,omitempty"`
6575
6576	// ForceSendFields is a list of field names (e.g. "Amount") to
6577	// unconditionally include in API requests. By default, fields with
6578	// empty values are omitted from API requests. However, any non-pointer,
6579	// non-interface field appearing in ForceSendFields will be sent to the
6580	// server regardless of whether the field is empty or not. This may be
6581	// used to include empty fields in Patch requests.
6582	ForceSendFields []string `json:"-"`
6583
6584	// NullFields is a list of field names (e.g. "Amount") to include in API
6585	// requests with the JSON null value. By default, fields with empty
6586	// values are omitted from API requests. However, any field with an
6587	// empty value appearing in NullFields will be sent to the server as
6588	// null. It is an error if a field in this list has a non-empty value.
6589	// This may be used to include null fields in Patch requests.
6590	NullFields []string `json:"-"`
6591}
6592
6593func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
6594	type NoMethod OrderLineItemProductFee
6595	raw := NoMethod(*s)
6596	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6597}
6598
6599type OrderLineItemProductVariantAttribute struct {
6600	// Dimension: The dimension of the variant.
6601	Dimension string `json:"dimension,omitempty"`
6602
6603	// Value: The value for the dimension.
6604	Value string `json:"value,omitempty"`
6605
6606	// ForceSendFields is a list of field names (e.g. "Dimension") to
6607	// unconditionally include in API requests. By default, fields with
6608	// empty values are omitted from API requests. However, any non-pointer,
6609	// non-interface field appearing in ForceSendFields will be sent to the
6610	// server regardless of whether the field is empty or not. This may be
6611	// used to include empty fields in Patch requests.
6612	ForceSendFields []string `json:"-"`
6613
6614	// NullFields is a list of field names (e.g. "Dimension") to include in
6615	// API requests with the JSON null value. By default, fields with empty
6616	// values are omitted from API requests. However, any field with an
6617	// empty value appearing in NullFields will be sent to the server as
6618	// null. It is an error if a field in this list has a non-empty value.
6619	// This may be used to include null fields in Patch requests.
6620	NullFields []string `json:"-"`
6621}
6622
6623func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
6624	type NoMethod OrderLineItemProductVariantAttribute
6625	raw := NoMethod(*s)
6626	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6627}
6628
6629type OrderLineItemReturnInfo struct {
6630	// DaysToReturn: Required. How many days later the item can be returned.
6631	DaysToReturn int64 `json:"daysToReturn,omitempty"`
6632
6633	// IsReturnable: Required. Whether the item is returnable.
6634	IsReturnable bool `json:"isReturnable,omitempty"`
6635
6636	// PolicyUrl: Required. URL of the item return policy.
6637	PolicyUrl string `json:"policyUrl,omitempty"`
6638
6639	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
6640	// unconditionally include in API requests. By default, fields with
6641	// empty values are omitted from API requests. However, any non-pointer,
6642	// non-interface field appearing in ForceSendFields will be sent to the
6643	// server regardless of whether the field is empty or not. This may be
6644	// used to include empty fields in Patch requests.
6645	ForceSendFields []string `json:"-"`
6646
6647	// NullFields is a list of field names (e.g. "DaysToReturn") to include
6648	// in API requests with the JSON null value. By default, fields with
6649	// empty values are omitted from API requests. However, any field with
6650	// an empty value appearing in NullFields will be sent to the server as
6651	// null. It is an error if a field in this list has a non-empty value.
6652	// This may be used to include null fields in Patch requests.
6653	NullFields []string `json:"-"`
6654}
6655
6656func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
6657	type NoMethod OrderLineItemReturnInfo
6658	raw := NoMethod(*s)
6659	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6660}
6661
6662type OrderLineItemShippingDetails struct {
6663	// DeliverByDate: Required. The delivery by date, in ISO 8601 format.
6664	DeliverByDate string `json:"deliverByDate,omitempty"`
6665
6666	// Method: Required. Details of the shipping method.
6667	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
6668
6669	// PickupPromiseInMinutes: The promised time in minutes in which the
6670	// order will be ready for pickup. This only applies to
6671	// buy-online-pickup-in-store same-day order.
6672	PickupPromiseInMinutes int64 `json:"pickupPromiseInMinutes,omitempty"`
6673
6674	// ShipByDate: Required. The ship by date, in ISO 8601 format.
6675	ShipByDate string `json:"shipByDate,omitempty"`
6676
6677	// Type: Type of shipment. Indicates whether `deliveryDetails` or
6678	// `pickupDetails` is applicable for this shipment. Acceptable values
6679	// are: - "delivery" - "pickup"
6680	Type string `json:"type,omitempty"`
6681
6682	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
6683	// unconditionally include in API requests. By default, fields with
6684	// empty values are omitted from API requests. However, any non-pointer,
6685	// non-interface field appearing in ForceSendFields will be sent to the
6686	// server regardless of whether the field is empty or not. This may be
6687	// used to include empty fields in Patch requests.
6688	ForceSendFields []string `json:"-"`
6689
6690	// NullFields is a list of field names (e.g. "DeliverByDate") to include
6691	// in API requests with the JSON null value. By default, fields with
6692	// empty values are omitted from API requests. However, any field with
6693	// an empty value appearing in NullFields will be sent to the server as
6694	// null. It is an error if a field in this list has a non-empty value.
6695	// This may be used to include null fields in Patch requests.
6696	NullFields []string `json:"-"`
6697}
6698
6699func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
6700	type NoMethod OrderLineItemShippingDetails
6701	raw := NoMethod(*s)
6702	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6703}
6704
6705type OrderLineItemShippingDetailsMethod struct {
6706	// Carrier: The carrier for the shipping. Optional. See
6707	// `shipments[].carrier` for a list of acceptable values.
6708	Carrier string `json:"carrier,omitempty"`
6709
6710	// MaxDaysInTransit: Required. Maximum transit time.
6711	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
6712
6713	// MethodName: Required. The name of the shipping method.
6714	MethodName string `json:"methodName,omitempty"`
6715
6716	// MinDaysInTransit: Required. Minimum transit time.
6717	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
6718
6719	// ForceSendFields is a list of field names (e.g. "Carrier") to
6720	// unconditionally include in API requests. By default, fields with
6721	// empty values are omitted from API requests. However, any non-pointer,
6722	// non-interface field appearing in ForceSendFields will be sent to the
6723	// server regardless of whether the field is empty or not. This may be
6724	// used to include empty fields in Patch requests.
6725	ForceSendFields []string `json:"-"`
6726
6727	// NullFields is a list of field names (e.g. "Carrier") to include in
6728	// API requests with the JSON null value. By default, fields with empty
6729	// values are omitted from API requests. However, any field with an
6730	// empty value appearing in NullFields will be sent to the server as
6731	// null. It is an error if a field in this list has a non-empty value.
6732	// This may be used to include null fields in Patch requests.
6733	NullFields []string `json:"-"`
6734}
6735
6736func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
6737	type NoMethod OrderLineItemShippingDetailsMethod
6738	raw := NoMethod(*s)
6739	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6740}
6741
6742type OrderMerchantProvidedAnnotation struct {
6743	// Key: Key for additional merchant provided (as key-value pairs)
6744	// annotation about the line item.
6745	Key string `json:"key,omitempty"`
6746
6747	// Value: Value for additional merchant provided (as key-value pairs)
6748	// annotation about the line item.
6749	Value string `json:"value,omitempty"`
6750
6751	// ForceSendFields is a list of field names (e.g. "Key") to
6752	// unconditionally include in API requests. By default, fields with
6753	// empty values are omitted from API requests. However, any non-pointer,
6754	// non-interface field appearing in ForceSendFields will be sent to the
6755	// server regardless of whether the field is empty or not. This may be
6756	// used to include empty fields in Patch requests.
6757	ForceSendFields []string `json:"-"`
6758
6759	// NullFields is a list of field names (e.g. "Key") to include in API
6760	// requests with the JSON null value. By default, fields with empty
6761	// values are omitted from API requests. However, any field with an
6762	// empty value appearing in NullFields will be sent to the server as
6763	// null. It is an error if a field in this list has a non-empty value.
6764	// This may be used to include null fields in Patch requests.
6765	NullFields []string `json:"-"`
6766}
6767
6768func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
6769	type NoMethod OrderMerchantProvidedAnnotation
6770	raw := NoMethod(*s)
6771	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6772}
6773
6774type OrderOrderAnnotation struct {
6775	// Key: Key for additional google provided (as key-value pairs)
6776	// annotation.
6777	Key string `json:"key,omitempty"`
6778
6779	// Value: Value for additional google provided (as key-value pairs)
6780	// annotation.
6781	Value string `json:"value,omitempty"`
6782
6783	// ForceSendFields is a list of field names (e.g. "Key") to
6784	// unconditionally include in API requests. By default, fields with
6785	// empty values are omitted from API requests. However, any non-pointer,
6786	// non-interface field appearing in ForceSendFields will be sent to the
6787	// server regardless of whether the field is empty or not. This may be
6788	// used to include empty fields in Patch requests.
6789	ForceSendFields []string `json:"-"`
6790
6791	// NullFields is a list of field names (e.g. "Key") to include in API
6792	// requests with the JSON null value. By default, fields with empty
6793	// values are omitted from API requests. However, any field with an
6794	// empty value appearing in NullFields will be sent to the server as
6795	// null. It is an error if a field in this list has a non-empty value.
6796	// This may be used to include null fields in Patch requests.
6797	NullFields []string `json:"-"`
6798}
6799
6800func (s *OrderOrderAnnotation) MarshalJSON() ([]byte, error) {
6801	type NoMethod OrderOrderAnnotation
6802	raw := NoMethod(*s)
6803	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6804}
6805
6806type OrderPickupDetails struct {
6807	// Address: Address of the pickup location where the shipment should be
6808	// sent. Note that `recipientName` in the address is the name of the
6809	// business at the pickup location.
6810	Address *OrderAddress `json:"address,omitempty"`
6811
6812	// Collectors: Collectors authorized to pick up shipment from the pickup
6813	// location.
6814	Collectors []*OrderPickupDetailsCollector `json:"collectors,omitempty"`
6815
6816	// LocationId: ID of the pickup location.
6817	LocationId string `json:"locationId,omitempty"`
6818
6819	// PickupType: The pickup type of this order. Acceptable values are: -
6820	// "merchantStore" - "merchantStoreCurbside" -
6821	// "merchantStoreLocker" - "thirdPartyPickupPoint" -
6822	// "thirdPartyLocker"
6823	PickupType string `json:"pickupType,omitempty"`
6824
6825	// ForceSendFields is a list of field names (e.g. "Address") to
6826	// unconditionally include in API requests. By default, fields with
6827	// empty values are omitted from API requests. However, any non-pointer,
6828	// non-interface field appearing in ForceSendFields will be sent to the
6829	// server regardless of whether the field is empty or not. This may be
6830	// used to include empty fields in Patch requests.
6831	ForceSendFields []string `json:"-"`
6832
6833	// NullFields is a list of field names (e.g. "Address") to include in
6834	// API requests with the JSON null value. By default, fields with empty
6835	// values are omitted from API requests. However, any field with an
6836	// empty value appearing in NullFields will be sent to the server as
6837	// null. It is an error if a field in this list has a non-empty value.
6838	// This may be used to include null fields in Patch requests.
6839	NullFields []string `json:"-"`
6840}
6841
6842func (s *OrderPickupDetails) MarshalJSON() ([]byte, error) {
6843	type NoMethod OrderPickupDetails
6844	raw := NoMethod(*s)
6845	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6846}
6847
6848type OrderPickupDetailsCollector struct {
6849	// Name: Name of the person picking up the shipment.
6850	Name string `json:"name,omitempty"`
6851
6852	// PhoneNumber: Phone number of the person picking up the shipment.
6853	PhoneNumber string `json:"phoneNumber,omitempty"`
6854
6855	// ForceSendFields is a list of field names (e.g. "Name") to
6856	// unconditionally include in API requests. By default, fields with
6857	// empty values are omitted from API requests. However, any non-pointer,
6858	// non-interface field appearing in ForceSendFields will be sent to the
6859	// server regardless of whether the field is empty or not. This may be
6860	// used to include empty fields in Patch requests.
6861	ForceSendFields []string `json:"-"`
6862
6863	// NullFields is a list of field names (e.g. "Name") to include in API
6864	// requests with the JSON null value. By default, fields with empty
6865	// values are omitted from API requests. However, any field with an
6866	// empty value appearing in NullFields will be sent to the server as
6867	// null. It is an error if a field in this list has a non-empty value.
6868	// This may be used to include null fields in Patch requests.
6869	NullFields []string `json:"-"`
6870}
6871
6872func (s *OrderPickupDetailsCollector) MarshalJSON() ([]byte, error) {
6873	type NoMethod OrderPickupDetailsCollector
6874	raw := NoMethod(*s)
6875	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6876}
6877
6878type OrderPromotion struct {
6879	// ApplicableItems: Items that this promotion may be applied to. If
6880	// empty, there are no restrictions on applicable items and quantity.
6881	// This field will also be empty for shipping promotions because
6882	// shipping is not tied to any specific item.
6883	ApplicableItems []*OrderPromotionItem `json:"applicableItems,omitempty"`
6884
6885	// AppliedItems: Items that this promotion have been applied to. Do not
6886	// provide for `orders.createtestorder`. This field will be empty for
6887	// shipping promotions because shipping is not tied to any specific
6888	// item.
6889	AppliedItems []*OrderPromotionItem `json:"appliedItems,omitempty"`
6890
6891	// EndTime: Promotion end time in ISO 8601 format. Date, time, and
6892	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
6893	// "2020-01-02T09:00:00Z".
6894	EndTime string `json:"endTime,omitempty"`
6895
6896	// Funder: Required. The party funding the promotion. Only `merchant` is
6897	// supported for `orders.createtestorder`. Acceptable values are: -
6898	// "google" - "merchant"
6899	Funder string `json:"funder,omitempty"`
6900
6901	// MerchantPromotionId: Required. This field is used to identify
6902	// promotions within merchants' own systems.
6903	MerchantPromotionId string `json:"merchantPromotionId,omitempty"`
6904
6905	// PriceValue: Estimated discount applied to price. Amount is pre-tax or
6906	// post-tax depending on location of order.
6907	PriceValue *Price `json:"priceValue,omitempty"`
6908
6909	// ShortTitle: A short title of the promotion to be shown on the
6910	// checkout page. Do not provide for `orders.createtestorder`.
6911	ShortTitle string `json:"shortTitle,omitempty"`
6912
6913	// StartTime: Promotion start time in ISO 8601 format. Date, time, and
6914	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
6915	// "2020-01-02T09:00:00Z".
6916	StartTime string `json:"startTime,omitempty"`
6917
6918	// Subtype: Required. The category of the promotion. Only `moneyOff` is
6919	// supported for `orders.createtestorder`. Acceptable values are: -
6920	// "buyMGetMoneyOff" - "buyMGetNMoneyOff" - "buyMGetNPercentOff" -
6921	// "buyMGetPercentOff" - "freeGift" - "freeGiftWithItemId" -
6922	// "freeGiftWithValue" - "freeShippingOvernight" -
6923	// "freeShippingStandard" - "freeShippingTwoDay" - "moneyOff" -
6924	// "percentOff" - "rewardPoints" - "salePrice"
6925	Subtype string `json:"subtype,omitempty"`
6926
6927	// TaxValue: Estimated discount applied to tax (if allowed by law). Do
6928	// not provide for `orders.createtestorder`.
6929	TaxValue *Price `json:"taxValue,omitempty"`
6930
6931	// Title: Required. The title of the promotion.
6932	Title string `json:"title,omitempty"`
6933
6934	// Type: Required. The scope of the promotion. Only `product` is
6935	// supported for `orders.createtestorder`. Acceptable values are: -
6936	// "product" - "shipping"
6937	Type string `json:"type,omitempty"`
6938
6939	// ForceSendFields is a list of field names (e.g. "ApplicableItems") to
6940	// unconditionally include in API requests. By default, fields with
6941	// empty values are omitted from API requests. However, any non-pointer,
6942	// non-interface field appearing in ForceSendFields will be sent to the
6943	// server regardless of whether the field is empty or not. This may be
6944	// used to include empty fields in Patch requests.
6945	ForceSendFields []string `json:"-"`
6946
6947	// NullFields is a list of field names (e.g. "ApplicableItems") to
6948	// include in API requests with the JSON null value. By default, fields
6949	// with empty values are omitted from API requests. However, any field
6950	// with an empty value appearing in NullFields will be sent to the
6951	// server as null. It is an error if a field in this list has a
6952	// non-empty value. This may be used to include null fields in Patch
6953	// requests.
6954	NullFields []string `json:"-"`
6955}
6956
6957func (s *OrderPromotion) MarshalJSON() ([]byte, error) {
6958	type NoMethod OrderPromotion
6959	raw := NoMethod(*s)
6960	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6961}
6962
6963type OrderPromotionItem struct {
6964	// LineItemId: The line item ID of a product. Do not provide for
6965	// `orders.createtestorder`.
6966	LineItemId string `json:"lineItemId,omitempty"`
6967
6968	// OfferId: Required. Offer ID of a product. Only for
6969	// `orders.createtestorder`.
6970	OfferId string `json:"offerId,omitempty"`
6971
6972	// ProductId: `orders.createtestorder`.
6973	ProductId string `json:"productId,omitempty"`
6974
6975	// Quantity: The quantity of the associated product. Do not provide for
6976	// `orders.createtestorder`.
6977	Quantity int64 `json:"quantity,omitempty"`
6978
6979	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6980	// unconditionally include in API requests. By default, fields with
6981	// empty values are omitted from API requests. However, any non-pointer,
6982	// non-interface field appearing in ForceSendFields will be sent to the
6983	// server regardless of whether the field is empty or not. This may be
6984	// used to include empty fields in Patch requests.
6985	ForceSendFields []string `json:"-"`
6986
6987	// NullFields is a list of field names (e.g. "LineItemId") to include in
6988	// API requests with the JSON null value. By default, fields with empty
6989	// values are omitted from API requests. However, any field with an
6990	// empty value appearing in NullFields will be sent to the server as
6991	// null. It is an error if a field in this list has a non-empty value.
6992	// This may be used to include null fields in Patch requests.
6993	NullFields []string `json:"-"`
6994}
6995
6996func (s *OrderPromotionItem) MarshalJSON() ([]byte, error) {
6997	type NoMethod OrderPromotionItem
6998	raw := NoMethod(*s)
6999	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7000}
7001
7002type OrderRefund struct {
7003	// Actor: The actor that created the refund. Acceptable values are: -
7004	// "customer" - "googleBot" - "googleCustomerService" -
7005	// "googlePayments" - "googleSabre" - "merchant"
7006	Actor string `json:"actor,omitempty"`
7007
7008	// Amount: The amount that is refunded.
7009	Amount *Price `json:"amount,omitempty"`
7010
7011	// CreationDate: Date on which the item has been created, in ISO 8601
7012	// format.
7013	CreationDate string `json:"creationDate,omitempty"`
7014
7015	// Reason: The reason for the refund. Acceptable values are: -
7016	// "adjustment" - "autoPostInternal" -
7017	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
7018	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
7019	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
7020	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7021	// - "customerSupportRequested" - "deliveredLateByCarrier" -
7022	// "deliveredTooLate" - "expiredItem" -
7023	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
7024	// "failToPushOrderMerchantFulfillmentError" -
7025	// "failToPushOrderToMerchant" -
7026	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
7027	// "invalidCoupon" - "lateShipmentCredit" -
7028	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
7029	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
7030	// "paymentDeclined" - "priceAdjustment" - "priceError" -
7031	// "productArrivedDamaged" - "productNotAsDescribed" -
7032	// "promoReallocation" - "qualityNotAsExpected" -
7033	// "returnRefundAbuse" - "shippingCostAdjustment" -
7034	// "shippingPriceError" - "taxAdjustment" - "taxError" -
7035	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7036	// "wrongProductShipped"
7037	Reason string `json:"reason,omitempty"`
7038
7039	// ReasonText: The explanation of the reason.
7040	ReasonText string `json:"reasonText,omitempty"`
7041
7042	// ForceSendFields is a list of field names (e.g. "Actor") to
7043	// unconditionally include in API requests. By default, fields with
7044	// empty values are omitted from API requests. However, any non-pointer,
7045	// non-interface field appearing in ForceSendFields will be sent to the
7046	// server regardless of whether the field is empty or not. This may be
7047	// used to include empty fields in Patch requests.
7048	ForceSendFields []string `json:"-"`
7049
7050	// NullFields is a list of field names (e.g. "Actor") to include in API
7051	// requests with the JSON null value. By default, fields with empty
7052	// values are omitted from API requests. However, any field with an
7053	// empty value appearing in NullFields will be sent to the server as
7054	// null. It is an error if a field in this list has a non-empty value.
7055	// This may be used to include null fields in Patch requests.
7056	NullFields []string `json:"-"`
7057}
7058
7059func (s *OrderRefund) MarshalJSON() ([]byte, error) {
7060	type NoMethod OrderRefund
7061	raw := NoMethod(*s)
7062	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7063}
7064
7065// OrderReportDisbursement: Order disbursement. All methods require the
7066// payment analyst role.
7067type OrderReportDisbursement struct {
7068	// DisbursementAmount: The disbursement amount.
7069	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
7070
7071	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
7072	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
7073
7074	// DisbursementDate: The date the disbursement was initiated, in ISO
7075	// 8601 format.
7076	DisbursementDate string `json:"disbursementDate,omitempty"`
7077
7078	// DisbursementId: The ID of the disbursement.
7079	DisbursementId string `json:"disbursementId,omitempty"`
7080
7081	// MerchantId: The ID of the managing account.
7082	MerchantId uint64 `json:"merchantId,omitempty,string"`
7083
7084	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
7085	// to unconditionally include in API requests. By default, fields with
7086	// empty values are omitted from API requests. However, any non-pointer,
7087	// non-interface field appearing in ForceSendFields will be sent to the
7088	// server regardless of whether the field is empty or not. This may be
7089	// used to include empty fields in Patch requests.
7090	ForceSendFields []string `json:"-"`
7091
7092	// NullFields is a list of field names (e.g. "DisbursementAmount") to
7093	// include in API requests with the JSON null value. By default, fields
7094	// with empty values are omitted from API requests. However, any field
7095	// with an empty value appearing in NullFields will be sent to the
7096	// server as null. It is an error if a field in this list has a
7097	// non-empty value. This may be used to include null fields in Patch
7098	// requests.
7099	NullFields []string `json:"-"`
7100}
7101
7102func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
7103	type NoMethod OrderReportDisbursement
7104	raw := NoMethod(*s)
7105	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7106}
7107
7108type OrderReportTransaction struct {
7109	// DisbursementAmount: The disbursement amount.
7110	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
7111
7112	// DisbursementCreationDate: The date the disbursement was created, in
7113	// ISO 8601 format.
7114	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
7115
7116	// DisbursementDate: The date the disbursement was initiated, in ISO
7117	// 8601 format.
7118	DisbursementDate string `json:"disbursementDate,omitempty"`
7119
7120	// DisbursementId: The ID of the disbursement.
7121	DisbursementId string `json:"disbursementId,omitempty"`
7122
7123	// MerchantId: The ID of the managing account.
7124	MerchantId uint64 `json:"merchantId,omitempty,string"`
7125
7126	// MerchantOrderId: Merchant-provided ID of the order.
7127	MerchantOrderId string `json:"merchantOrderId,omitempty"`
7128
7129	// OrderId: The ID of the order.
7130	OrderId string `json:"orderId,omitempty"`
7131
7132	// ProductAmount: Total amount for the items.
7133	ProductAmount *ProductAmount `json:"productAmount,omitempty"`
7134
7135	// TransactionDate: The date of the transaction, in ISO 8601 format.
7136	TransactionDate string `json:"transactionDate,omitempty"`
7137
7138	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
7139	// to unconditionally include in API requests. By default, fields with
7140	// empty values are omitted from API requests. However, any non-pointer,
7141	// non-interface field appearing in ForceSendFields will be sent to the
7142	// server regardless of whether the field is empty or not. This may be
7143	// used to include empty fields in Patch requests.
7144	ForceSendFields []string `json:"-"`
7145
7146	// NullFields is a list of field names (e.g. "DisbursementAmount") to
7147	// include in API requests with the JSON null value. By default, fields
7148	// with empty values are omitted from API requests. However, any field
7149	// with an empty value appearing in NullFields will be sent to the
7150	// server as null. It is an error if a field in this list has a
7151	// non-empty value. This may be used to include null fields in Patch
7152	// requests.
7153	NullFields []string `json:"-"`
7154}
7155
7156func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
7157	type NoMethod OrderReportTransaction
7158	raw := NoMethod(*s)
7159	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7160}
7161
7162type OrderReturn struct {
7163	// Actor: The actor that created the refund. Acceptable values are: -
7164	// "customer" - "googleBot" - "googleCustomerService" -
7165	// "googlePayments" - "googleSabre" - "merchant"
7166	Actor string `json:"actor,omitempty"`
7167
7168	// CreationDate: Date on which the item has been created, in ISO 8601
7169	// format.
7170	CreationDate string `json:"creationDate,omitempty"`
7171
7172	// Quantity: Quantity that is returned.
7173	Quantity int64 `json:"quantity,omitempty"`
7174
7175	// Reason: The reason for the return. Acceptable values are: -
7176	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7177	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7178	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7179	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7180	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7181	// "wrongProductShipped"
7182	Reason string `json:"reason,omitempty"`
7183
7184	// ReasonText: The explanation of the reason.
7185	ReasonText string `json:"reasonText,omitempty"`
7186
7187	// ForceSendFields is a list of field names (e.g. "Actor") to
7188	// unconditionally include in API requests. By default, fields with
7189	// empty values are omitted from API requests. However, any non-pointer,
7190	// non-interface field appearing in ForceSendFields will be sent to the
7191	// server regardless of whether the field is empty or not. This may be
7192	// used to include empty fields in Patch requests.
7193	ForceSendFields []string `json:"-"`
7194
7195	// NullFields is a list of field names (e.g. "Actor") to include in API
7196	// requests with the JSON null value. By default, fields with empty
7197	// values are omitted from API requests. However, any field with an
7198	// empty value appearing in NullFields will be sent to the server as
7199	// null. It is an error if a field in this list has a non-empty value.
7200	// This may be used to include null fields in Patch requests.
7201	NullFields []string `json:"-"`
7202}
7203
7204func (s *OrderReturn) MarshalJSON() ([]byte, error) {
7205	type NoMethod OrderReturn
7206	raw := NoMethod(*s)
7207	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7208}
7209
7210type OrderShipment struct {
7211	// Carrier: The carrier handling the shipment. For supported carriers,
7212	// Google includes the carrier name and tracking URL in emails to
7213	// customers. For select supported carriers, Google also automatically
7214	// updates the shipment status based on the provided shipment ID.
7215	// *Note:* You can also use unsupported carriers, but emails to
7216	// customers will not include the carrier name or tracking URL, and
7217	// there will be no automatic order status updates. Supported carriers
7218	// for US are: - "ups" (United Parcel Service) *automatic status
7219	// updates* - "usps" (United States Postal Service) *automatic status
7220	// updates* - "fedex" (FedEx) *automatic status updates * - "dhl"
7221	// (DHL eCommerce) *automatic status updates* (US only) - "ontrac"
7222	// (OnTrac) *automatic status updates * - "dhl express" (DHL Express)
7223	// - "deliv" (Deliv) - "dynamex" (TForce) - "lasership"
7224	// (LaserShip) - "mpx" (Military Parcel Xpress) - "uds" (United
7225	// Delivery Service) - "efw" (Estes Forwarding Worldwide) - "jd
7226	// logistics" (JD Logistics) - "yunexpress" (YunExpress) - "china
7227	// post" (China Post) - "china ems" (China Post Express Mail Service)
7228	// - "singapore post" (Singapore Post) - "pos malaysia" (Pos
7229	// Malaysia) - "postnl" (PostNL) - "ptt" (PTT Turkish Post) -
7230	// "eub" (ePacket) - "chukou1" (Chukou1 Logistics) - "bestex"
7231	// (Best Express) - "canada post" (Canada Post) - "purolator"
7232	// (Purolator) - "canpar" (Canpar) - "india post" (India Post) -
7233	// "blue dart" (Blue Dart) - "delhivery" (Delhivery) - "dtdc"
7234	// (DTDC) - "tpc india" (TPC India) Supported carriers for FR are: -
7235	// "la poste" (La Poste) *automatic status updates * - "colissimo"
7236	// (Colissimo by La Poste) *automatic status updates* - "ups" (United
7237	// Parcel Service) *automatic status updates * - "chronopost"
7238	// (Chronopost by La Poste) - "gls" (General Logistics Systems France)
7239	// - "dpd" (DPD Group by GeoPost) - "bpost" (Belgian Post Group) -
7240	// "colis prive" (Colis Privé) - "boxtal" (Boxtal) - "geodis"
7241	// (GEODIS) - "tnt" (TNT) - "db schenker" (DB Schenker) - "aramex"
7242	// (Aramex)
7243	Carrier string `json:"carrier,omitempty"`
7244
7245	// CreationDate: Date on which the shipment has been created, in ISO
7246	// 8601 format.
7247	CreationDate string `json:"creationDate,omitempty"`
7248
7249	// DeliveryDate: Date on which the shipment has been delivered, in ISO
7250	// 8601 format. Present only if `status` is `delivered`
7251	DeliveryDate string `json:"deliveryDate,omitempty"`
7252
7253	// Id: The ID of the shipment.
7254	Id string `json:"id,omitempty"`
7255
7256	// LineItems: The line items that are shipped.
7257	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
7258
7259	// ScheduledDeliveryDetails: Delivery details of the shipment if
7260	// scheduling is needed.
7261	ScheduledDeliveryDetails *OrderShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
7262
7263	// ShipmentGroupId: The shipment group ID of the shipment. This is set
7264	// in shiplineitems request.
7265	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7266
7267	// Status: The status of the shipment. Acceptable values are: -
7268	// "delivered" - "readyForPickup" - "shipped" - "undeliverable"
7269	Status string `json:"status,omitempty"`
7270
7271	// TrackingId: The tracking ID for the shipment.
7272	TrackingId string `json:"trackingId,omitempty"`
7273
7274	// ForceSendFields is a list of field names (e.g. "Carrier") to
7275	// unconditionally include in API requests. By default, fields with
7276	// empty values are omitted from API requests. However, any non-pointer,
7277	// non-interface field appearing in ForceSendFields will be sent to the
7278	// server regardless of whether the field is empty or not. This may be
7279	// used to include empty fields in Patch requests.
7280	ForceSendFields []string `json:"-"`
7281
7282	// NullFields is a list of field names (e.g. "Carrier") to include in
7283	// API requests with the JSON null value. By default, fields with empty
7284	// values are omitted from API requests. However, any field with an
7285	// empty value appearing in NullFields will be sent to the server as
7286	// null. It is an error if a field in this list has a non-empty value.
7287	// This may be used to include null fields in Patch requests.
7288	NullFields []string `json:"-"`
7289}
7290
7291func (s *OrderShipment) MarshalJSON() ([]byte, error) {
7292	type NoMethod OrderShipment
7293	raw := NoMethod(*s)
7294	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7295}
7296
7297type OrderShipmentLineItemShipment struct {
7298	// LineItemId: The ID of the line item that is shipped. This value is
7299	// assigned by Google when an order is created. Either lineItemId or
7300	// productId is required.
7301	LineItemId string `json:"lineItemId,omitempty"`
7302
7303	// ProductId: The ID of the product to ship. This is the REST ID used in
7304	// the products service. Either lineItemId or productId is required.
7305	ProductId string `json:"productId,omitempty"`
7306
7307	// Quantity: The quantity that is shipped.
7308	Quantity int64 `json:"quantity,omitempty"`
7309
7310	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7311	// unconditionally include in API requests. By default, fields with
7312	// empty values are omitted from API requests. However, any non-pointer,
7313	// non-interface field appearing in ForceSendFields will be sent to the
7314	// server regardless of whether the field is empty or not. This may be
7315	// used to include empty fields in Patch requests.
7316	ForceSendFields []string `json:"-"`
7317
7318	// NullFields is a list of field names (e.g. "LineItemId") to include in
7319	// API requests with the JSON null value. By default, fields with empty
7320	// values are omitted from API requests. However, any field with an
7321	// empty value appearing in NullFields will be sent to the server as
7322	// null. It is an error if a field in this list has a non-empty value.
7323	// This may be used to include null fields in Patch requests.
7324	NullFields []string `json:"-"`
7325}
7326
7327func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
7328	type NoMethod OrderShipmentLineItemShipment
7329	raw := NoMethod(*s)
7330	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7331}
7332
7333type OrderShipmentScheduledDeliveryDetails struct {
7334	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
7335	// delivery. The phone number is formatted as the international notation
7336	// in ITU-T Recommendation E.123 (e.g., "+41 44 668 1800").
7337	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
7338
7339	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
7340	// 8601 format.
7341	ScheduledDate string `json:"scheduledDate,omitempty"`
7342
7343	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
7344	// to unconditionally include in API requests. By default, fields with
7345	// empty values are omitted from API requests. However, any non-pointer,
7346	// non-interface field appearing in ForceSendFields will be sent to the
7347	// server regardless of whether the field is empty or not. This may be
7348	// used to include empty fields in Patch requests.
7349	ForceSendFields []string `json:"-"`
7350
7351	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
7352	// include in API requests with the JSON null value. By default, fields
7353	// with empty values are omitted from API requests. However, any field
7354	// with an empty value appearing in NullFields will be sent to the
7355	// server as null. It is an error if a field in this list has a
7356	// non-empty value. This may be used to include null fields in Patch
7357	// requests.
7358	NullFields []string `json:"-"`
7359}
7360
7361func (s *OrderShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
7362	type NoMethod OrderShipmentScheduledDeliveryDetails
7363	raw := NoMethod(*s)
7364	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7365}
7366
7367// OrderTrackingSignal: Represents a merchant trade from which signals
7368// are extracted, e.g. shipping.
7369type OrderTrackingSignal struct {
7370	// CustomerShippingFee: The shipping fee of the order; this value should
7371	// be set to zero in the case of free shipping.
7372	CustomerShippingFee *PriceAmount `json:"customerShippingFee,omitempty"`
7373
7374	// DeliveryPostalCode: Required. The delivery postal code, as a
7375	// continuous string without spaces or dashes, e.g. "95016".
7376	DeliveryPostalCode string `json:"deliveryPostalCode,omitempty"`
7377
7378	// DeliveryRegionCode: Required. The [CLDR territory code]
7379	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
7380	// for the shipping destination.
7381	DeliveryRegionCode string `json:"deliveryRegionCode,omitempty"`
7382
7383	// LineItems: Information about line items in the order.
7384	LineItems []*OrderTrackingSignalLineItemDetails `json:"lineItems,omitempty"`
7385
7386	// MerchantId: The Google merchant ID of this order tracking signal.
7387	// This value is optional. If left unset, the caller's merchant ID is
7388	// used. You must request access in order to provide data on behalf of
7389	// another merchant. For more information, see Submitting Order Tracking
7390	// Signals (/shopping-content/guides/order-tracking-signals).
7391	MerchantId int64 `json:"merchantId,omitempty,string"`
7392
7393	// OrderCreatedTime: Required. The time when the order was created on
7394	// the merchant side. Include the year and timezone string, if
7395	// available.
7396	OrderCreatedTime *DateTime `json:"orderCreatedTime,omitempty"`
7397
7398	// OrderId: Required. The ID of the order on the merchant side.
7399	OrderId string `json:"orderId,omitempty"`
7400
7401	// OrderTrackingSignalId: Output only. The ID that uniquely identifies
7402	// this order tracking signal.
7403	OrderTrackingSignalId int64 `json:"orderTrackingSignalId,omitempty,string"`
7404
7405	// ShipmentLineItemMapping: The mapping of the line items to the
7406	// shipment information.
7407	ShipmentLineItemMapping []*OrderTrackingSignalShipmentLineItemMapping `json:"shipmentLineItemMapping,omitempty"`
7408
7409	// ShippingInfo: The shipping information for the order.
7410	ShippingInfo []*OrderTrackingSignalShippingInfo `json:"shippingInfo,omitempty"`
7411
7412	// ServerResponse contains the HTTP response code and headers from the
7413	// server.
7414	googleapi.ServerResponse `json:"-"`
7415
7416	// ForceSendFields is a list of field names (e.g. "CustomerShippingFee")
7417	// to unconditionally include in API requests. By default, fields with
7418	// empty values are omitted from API requests. However, any non-pointer,
7419	// non-interface field appearing in ForceSendFields will be sent to the
7420	// server regardless of whether the field is empty or not. This may be
7421	// used to include empty fields in Patch requests.
7422	ForceSendFields []string `json:"-"`
7423
7424	// NullFields is a list of field names (e.g. "CustomerShippingFee") to
7425	// include in API requests with the JSON null value. By default, fields
7426	// with empty values are omitted from API requests. However, any field
7427	// with an empty value appearing in NullFields will be sent to the
7428	// server as null. It is an error if a field in this list has a
7429	// non-empty value. This may be used to include null fields in Patch
7430	// requests.
7431	NullFields []string `json:"-"`
7432}
7433
7434func (s *OrderTrackingSignal) MarshalJSON() ([]byte, error) {
7435	type NoMethod OrderTrackingSignal
7436	raw := NoMethod(*s)
7437	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7438}
7439
7440// OrderTrackingSignalLineItemDetails: The line items of the order.
7441type OrderTrackingSignalLineItemDetails struct {
7442	// Gtin: The Global Trade Item Number.
7443	Gtin string `json:"gtin,omitempty"`
7444
7445	// LineItemId: Required. The ID for this line item.
7446	LineItemId string `json:"lineItemId,omitempty"`
7447
7448	// Mpn: The manufacturer part number.
7449	Mpn string `json:"mpn,omitempty"`
7450
7451	// ProductId: Required. The Content API REST ID of the product, in the
7452	// form channel:contentLanguage:targetCountry:offerId.
7453	ProductId string `json:"productId,omitempty"`
7454
7455	// Quantity: Required. The quantity of the line item in the order.
7456	Quantity int64 `json:"quantity,omitempty,string"`
7457
7458	// ForceSendFields is a list of field names (e.g. "Gtin") to
7459	// unconditionally include in API requests. By default, fields with
7460	// empty values are omitted from API requests. However, any non-pointer,
7461	// non-interface field appearing in ForceSendFields will be sent to the
7462	// server regardless of whether the field is empty or not. This may be
7463	// used to include empty fields in Patch requests.
7464	ForceSendFields []string `json:"-"`
7465
7466	// NullFields is a list of field names (e.g. "Gtin") to include in API
7467	// requests with the JSON null value. By default, fields with empty
7468	// values are omitted from API requests. However, any field with an
7469	// empty value appearing in NullFields will be sent to the server as
7470	// null. It is an error if a field in this list has a non-empty value.
7471	// This may be used to include null fields in Patch requests.
7472	NullFields []string `json:"-"`
7473}
7474
7475func (s *OrderTrackingSignalLineItemDetails) MarshalJSON() ([]byte, error) {
7476	type NoMethod OrderTrackingSignalLineItemDetails
7477	raw := NoMethod(*s)
7478	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7479}
7480
7481// OrderTrackingSignalShipmentLineItemMapping: Represents how many items
7482// are in the shipment for the given shipment_id and line_item_id.
7483type OrderTrackingSignalShipmentLineItemMapping struct {
7484	// LineItemId: Required. The line item ID.
7485	LineItemId string `json:"lineItemId,omitempty"`
7486
7487	// Quantity: Required. The line item quantity in the shipment.
7488	Quantity int64 `json:"quantity,omitempty,string"`
7489
7490	// ShipmentId: Required. The shipment ID.
7491	ShipmentId string `json:"shipmentId,omitempty"`
7492
7493	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7494	// unconditionally include in API requests. By default, fields with
7495	// empty values are omitted from API requests. However, any non-pointer,
7496	// non-interface field appearing in ForceSendFields will be sent to the
7497	// server regardless of whether the field is empty or not. This may be
7498	// used to include empty fields in Patch requests.
7499	ForceSendFields []string `json:"-"`
7500
7501	// NullFields is a list of field names (e.g. "LineItemId") to include in
7502	// API requests with the JSON null value. By default, fields with empty
7503	// values are omitted from API requests. However, any field with an
7504	// empty value appearing in NullFields will be sent to the server as
7505	// null. It is an error if a field in this list has a non-empty value.
7506	// This may be used to include null fields in Patch requests.
7507	NullFields []string `json:"-"`
7508}
7509
7510func (s *OrderTrackingSignalShipmentLineItemMapping) MarshalJSON() ([]byte, error) {
7511	type NoMethod OrderTrackingSignalShipmentLineItemMapping
7512	raw := NoMethod(*s)
7513	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7514}
7515
7516// OrderTrackingSignalShippingInfo: The shipping information for the
7517// order.
7518type OrderTrackingSignalShippingInfo struct {
7519	// ActualDeliveryTime: The time when the shipment was actually
7520	// delivered. Include the year and timezone string, if available. This
7521	// field is required, if one of the following fields is absent:
7522	// tracking_id or carrier_name.
7523	ActualDeliveryTime *DateTime `json:"actualDeliveryTime,omitempty"`
7524
7525	// CarrierName: The name of the shipping carrier for the delivery. This
7526	// field is required if one of the following fields is absent:
7527	// earliest_delivery_promise_time, latest_delivery_promise_time, and
7528	// actual_delivery_time.
7529	CarrierName string `json:"carrierName,omitempty"`
7530
7531	// CarrierServiceName: The service type for fulfillment, e.g., GROUND,
7532	// FIRST_CLASS, etc.
7533	CarrierServiceName string `json:"carrierServiceName,omitempty"`
7534
7535	// EarliestDeliveryPromiseTime: The earliest delivery promised time.
7536	// Include the year and timezone string, if available. This field is
7537	// required, if one of the following fields is absent: tracking_id or
7538	// carrier_name.
7539	EarliestDeliveryPromiseTime *DateTime `json:"earliestDeliveryPromiseTime,omitempty"`
7540
7541	// LatestDeliveryPromiseTime: The latest delivery promised time. Include
7542	// the year and timezone string, if available. This field is required,
7543	// if one of the following fields is absent: tracking_id or
7544	// carrier_name.
7545	LatestDeliveryPromiseTime *DateTime `json:"latestDeliveryPromiseTime,omitempty"`
7546
7547	// OriginPostalCode: The origin postal code, as a continuous string
7548	// without spaces or dashes, e.g. "95016".
7549	OriginPostalCode string `json:"originPostalCode,omitempty"`
7550
7551	// OriginRegionCode: The [CLDR territory code]
7552	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
7553	// for the shipping origin.
7554	OriginRegionCode string `json:"originRegionCode,omitempty"`
7555
7556	// ShipmentId: Required. The shipment ID.
7557	ShipmentId string `json:"shipmentId,omitempty"`
7558
7559	// ShippedTime: The time when the shipment was shipped. Include the year
7560	// and timezone string, if available.
7561	ShippedTime *DateTime `json:"shippedTime,omitempty"`
7562
7563	// ShippingStatus: The status of the shipment.
7564	//
7565	// Possible values:
7566	//   "SHIPPING_STATE_UNSPECIFIED" - The shipping status is not known to
7567	// merchant.
7568	//   "SHIPPED" - All items are shipped.
7569	//   "DELIVERED" - The shipment is already delivered.
7570	ShippingStatus string `json:"shippingStatus,omitempty"`
7571
7572	// TrackingId: The tracking ID of the shipment. This field is required
7573	// if one of the following fields is absent:
7574	// earliest_delivery_promise_time, latest_delivery_promise_time, and
7575	// actual_delivery_time.
7576	TrackingId string `json:"trackingId,omitempty"`
7577
7578	// ForceSendFields is a list of field names (e.g. "ActualDeliveryTime")
7579	// to unconditionally include in API requests. By default, fields with
7580	// empty values are omitted from API requests. However, any non-pointer,
7581	// non-interface field appearing in ForceSendFields will be sent to the
7582	// server regardless of whether the field is empty or not. This may be
7583	// used to include empty fields in Patch requests.
7584	ForceSendFields []string `json:"-"`
7585
7586	// NullFields is a list of field names (e.g. "ActualDeliveryTime") to
7587	// include in API requests with the JSON null value. By default, fields
7588	// with empty values are omitted from API requests. However, any field
7589	// with an empty value appearing in NullFields will be sent to the
7590	// server as null. It is an error if a field in this list has a
7591	// non-empty value. This may be used to include null fields in Patch
7592	// requests.
7593	NullFields []string `json:"-"`
7594}
7595
7596func (s *OrderTrackingSignalShippingInfo) MarshalJSON() ([]byte, error) {
7597	type NoMethod OrderTrackingSignalShippingInfo
7598	raw := NoMethod(*s)
7599	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7600}
7601
7602type OrderinvoicesCreateChargeInvoiceRequest struct {
7603	// InvoiceId: [required] The ID of the invoice.
7604	InvoiceId string `json:"invoiceId,omitempty"`
7605
7606	// InvoiceSummary: [required] Invoice summary.
7607	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
7608
7609	// LineItemInvoices: [required] Invoice details per line item.
7610	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
7611
7612	// OperationId: [required] The ID of the operation, unique across all
7613	// operations for a given order.
7614	OperationId string `json:"operationId,omitempty"`
7615
7616	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
7617	// by the merchant in the `shipLineItems` method and is used to group
7618	// multiple line items that have the same kind of shipping charges.
7619	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7620
7621	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
7622	// unconditionally include in API requests. By default, fields with
7623	// empty values are omitted from API requests. However, any non-pointer,
7624	// non-interface field appearing in ForceSendFields will be sent to the
7625	// server regardless of whether the field is empty or not. This may be
7626	// used to include empty fields in Patch requests.
7627	ForceSendFields []string `json:"-"`
7628
7629	// NullFields is a list of field names (e.g. "InvoiceId") to include in
7630	// API requests with the JSON null value. By default, fields with empty
7631	// values are omitted from API requests. However, any field with an
7632	// empty value appearing in NullFields will be sent to the server as
7633	// null. It is an error if a field in this list has a non-empty value.
7634	// This may be used to include null fields in Patch requests.
7635	NullFields []string `json:"-"`
7636}
7637
7638func (s *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
7639	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
7640	raw := NoMethod(*s)
7641	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7642}
7643
7644type OrderinvoicesCreateChargeInvoiceResponse struct {
7645	// ExecutionStatus: The status of the execution. Acceptable values are:
7646	// - "duplicate" - "executed"
7647	ExecutionStatus string `json:"executionStatus,omitempty"`
7648
7649	// Kind: Identifies what kind of resource this is. Value: the fixed
7650	// string "content#orderinvoicesCreateChargeInvoiceResponse".
7651	Kind string `json:"kind,omitempty"`
7652
7653	// ServerResponse contains the HTTP response code and headers from the
7654	// server.
7655	googleapi.ServerResponse `json:"-"`
7656
7657	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7658	// unconditionally include in API requests. By default, fields with
7659	// empty values are omitted from API requests. However, any non-pointer,
7660	// non-interface field appearing in ForceSendFields will be sent to the
7661	// server regardless of whether the field is empty or not. This may be
7662	// used to include empty fields in Patch requests.
7663	ForceSendFields []string `json:"-"`
7664
7665	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7666	// include in API requests with the JSON null value. By default, fields
7667	// with empty values are omitted from API requests. However, any field
7668	// with an empty value appearing in NullFields will be sent to the
7669	// server as null. It is an error if a field in this list has a
7670	// non-empty value. This may be used to include null fields in Patch
7671	// requests.
7672	NullFields []string `json:"-"`
7673}
7674
7675func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
7676	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
7677	raw := NoMethod(*s)
7678	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7679}
7680
7681type OrderinvoicesCreateRefundInvoiceRequest struct {
7682	// InvoiceId: [required] The ID of the invoice.
7683	InvoiceId string `json:"invoiceId,omitempty"`
7684
7685	// OperationId: [required] The ID of the operation, unique across all
7686	// operations for a given order.
7687	OperationId string `json:"operationId,omitempty"`
7688
7689	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
7690	// of `refundOnlyOption` or `returnOption` must be provided.
7691	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
7692
7693	// ReturnOption: Option to create an invoice for a refund and mark all
7694	// items within the invoice as returned. Exactly one of
7695	// `refundOnlyOption` or `returnOption` must be provided.
7696	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
7697
7698	// ShipmentInvoices: Invoice details for different shipment groups.
7699	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
7700
7701	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
7702	// unconditionally include in API requests. By default, fields with
7703	// empty values are omitted from API requests. However, any non-pointer,
7704	// non-interface field appearing in ForceSendFields will be sent to the
7705	// server regardless of whether the field is empty or not. This may be
7706	// used to include empty fields in Patch requests.
7707	ForceSendFields []string `json:"-"`
7708
7709	// NullFields is a list of field names (e.g. "InvoiceId") to include in
7710	// API requests with the JSON null value. By default, fields with empty
7711	// values are omitted from API requests. However, any field with an
7712	// empty value appearing in NullFields will be sent to the server as
7713	// null. It is an error if a field in this list has a non-empty value.
7714	// This may be used to include null fields in Patch requests.
7715	NullFields []string `json:"-"`
7716}
7717
7718func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
7719	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
7720	raw := NoMethod(*s)
7721	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7722}
7723
7724type OrderinvoicesCreateRefundInvoiceResponse struct {
7725	// ExecutionStatus: The status of the execution. Acceptable values are:
7726	// - "duplicate" - "executed"
7727	ExecutionStatus string `json:"executionStatus,omitempty"`
7728
7729	// Kind: Identifies what kind of resource this is. Value: the fixed
7730	// string "content#orderinvoicesCreateRefundInvoiceResponse".
7731	Kind string `json:"kind,omitempty"`
7732
7733	// ServerResponse contains the HTTP response code and headers from the
7734	// server.
7735	googleapi.ServerResponse `json:"-"`
7736
7737	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7738	// unconditionally include in API requests. By default, fields with
7739	// empty values are omitted from API requests. However, any non-pointer,
7740	// non-interface field appearing in ForceSendFields will be sent to the
7741	// server regardless of whether the field is empty or not. This may be
7742	// used to include empty fields in Patch requests.
7743	ForceSendFields []string `json:"-"`
7744
7745	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7746	// include in API requests with the JSON null value. By default, fields
7747	// with empty values are omitted from API requests. However, any field
7748	// with an empty value appearing in NullFields will be sent to the
7749	// server as null. It is an error if a field in this list has a
7750	// non-empty value. This may be used to include null fields in Patch
7751	// requests.
7752	NullFields []string `json:"-"`
7753}
7754
7755func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
7756	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
7757	raw := NoMethod(*s)
7758	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7759}
7760
7761type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
7762	// Description: Optional description of the refund reason.
7763	Description string `json:"description,omitempty"`
7764
7765	// Reason: [required] Reason for the refund. Acceptable values are: -
7766	// "adjustment" - "autoPostInternal" -
7767	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
7768	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
7769	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
7770	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7771	// - "customerSupportRequested" - "deliveredLateByCarrier" -
7772	// "deliveredTooLate" - "expiredItem" -
7773	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
7774	// "failToPushOrderMerchantFulfillmentError" -
7775	// "failToPushOrderToMerchant" -
7776	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
7777	// "invalidCoupon" - "lateShipmentCredit" -
7778	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
7779	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
7780	// "paymentDeclined" - "priceAdjustment" - "priceError" -
7781	// "productArrivedDamaged" - "productNotAsDescribed" -
7782	// "promoReallocation" - "qualityNotAsExpected" -
7783	// "returnRefundAbuse" - "shippingCostAdjustment" -
7784	// "shippingPriceError" - "taxAdjustment" - "taxError" -
7785	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7786	// "wrongProductShipped"
7787	Reason string `json:"reason,omitempty"`
7788
7789	// ForceSendFields is a list of field names (e.g. "Description") to
7790	// unconditionally include in API requests. By default, fields with
7791	// empty values are omitted from API requests. However, any non-pointer,
7792	// non-interface field appearing in ForceSendFields will be sent to the
7793	// server regardless of whether the field is empty or not. This may be
7794	// used to include empty fields in Patch requests.
7795	ForceSendFields []string `json:"-"`
7796
7797	// NullFields is a list of field names (e.g. "Description") to include
7798	// in API requests with the JSON null value. By default, fields with
7799	// empty values are omitted from API requests. However, any field with
7800	// an empty value appearing in NullFields will be sent to the server as
7801	// null. It is an error if a field in this list has a non-empty value.
7802	// This may be used to include null fields in Patch requests.
7803	NullFields []string `json:"-"`
7804}
7805
7806func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
7807	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
7808	raw := NoMethod(*s)
7809	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7810}
7811
7812type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
7813	// Description: Optional description of the return reason.
7814	Description string `json:"description,omitempty"`
7815
7816	// Reason: [required] Reason for the return. Acceptable values are: -
7817	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7818	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7819	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7820	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7821	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7822	// "wrongProductShipped"
7823	Reason string `json:"reason,omitempty"`
7824
7825	// ForceSendFields is a list of field names (e.g. "Description") to
7826	// unconditionally include in API requests. By default, fields with
7827	// empty values are omitted from API requests. However, any non-pointer,
7828	// non-interface field appearing in ForceSendFields will be sent to the
7829	// server regardless of whether the field is empty or not. This may be
7830	// used to include empty fields in Patch requests.
7831	ForceSendFields []string `json:"-"`
7832
7833	// NullFields is a list of field names (e.g. "Description") to include
7834	// in API requests with the JSON null value. By default, fields with
7835	// empty values are omitted from API requests. However, any field with
7836	// an empty value appearing in NullFields will be sent to the server as
7837	// null. It is an error if a field in this list has a non-empty value.
7838	// This may be used to include null fields in Patch requests.
7839	NullFields []string `json:"-"`
7840}
7841
7842func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
7843	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
7844	raw := NoMethod(*s)
7845	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7846}
7847
7848type OrderreportsListDisbursementsResponse struct {
7849	// Disbursements: The list of disbursements.
7850	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
7851
7852	// Kind: Identifies what kind of resource this is. Value: the fixed
7853	// string "content#orderreportsListDisbursementsResponse".
7854	Kind string `json:"kind,omitempty"`
7855
7856	// NextPageToken: The token for the retrieval of the next page of
7857	// disbursements.
7858	NextPageToken string `json:"nextPageToken,omitempty"`
7859
7860	// ServerResponse contains the HTTP response code and headers from the
7861	// server.
7862	googleapi.ServerResponse `json:"-"`
7863
7864	// ForceSendFields is a list of field names (e.g. "Disbursements") to
7865	// unconditionally include in API requests. By default, fields with
7866	// empty values are omitted from API requests. However, any non-pointer,
7867	// non-interface field appearing in ForceSendFields will be sent to the
7868	// server regardless of whether the field is empty or not. This may be
7869	// used to include empty fields in Patch requests.
7870	ForceSendFields []string `json:"-"`
7871
7872	// NullFields is a list of field names (e.g. "Disbursements") to include
7873	// in API requests with the JSON null value. By default, fields with
7874	// empty values are omitted from API requests. However, any field with
7875	// an empty value appearing in NullFields will be sent to the server as
7876	// null. It is an error if a field in this list has a non-empty value.
7877	// This may be used to include null fields in Patch requests.
7878	NullFields []string `json:"-"`
7879}
7880
7881func (s *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
7882	type NoMethod OrderreportsListDisbursementsResponse
7883	raw := NoMethod(*s)
7884	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7885}
7886
7887type OrderreportsListTransactionsResponse struct {
7888	// Kind: Identifies what kind of resource this is. Value: the fixed
7889	// string "content#orderreportsListTransactionsResponse".
7890	Kind string `json:"kind,omitempty"`
7891
7892	// NextPageToken: The token for the retrieval of the next page of
7893	// transactions.
7894	NextPageToken string `json:"nextPageToken,omitempty"`
7895
7896	// Transactions: The list of transactions.
7897	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
7898
7899	// ServerResponse contains the HTTP response code and headers from the
7900	// server.
7901	googleapi.ServerResponse `json:"-"`
7902
7903	// ForceSendFields is a list of field names (e.g. "Kind") to
7904	// unconditionally include in API requests. By default, fields with
7905	// empty values are omitted from API requests. However, any non-pointer,
7906	// non-interface field appearing in ForceSendFields will be sent to the
7907	// server regardless of whether the field is empty or not. This may be
7908	// used to include empty fields in Patch requests.
7909	ForceSendFields []string `json:"-"`
7910
7911	// NullFields is a list of field names (e.g. "Kind") to include in API
7912	// requests with the JSON null value. By default, fields with empty
7913	// values are omitted from API requests. However, any field with an
7914	// empty value appearing in NullFields will be sent to the server as
7915	// null. It is an error if a field in this list has a non-empty value.
7916	// This may be used to include null fields in Patch requests.
7917	NullFields []string `json:"-"`
7918}
7919
7920func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
7921	type NoMethod OrderreportsListTransactionsResponse
7922	raw := NoMethod(*s)
7923	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7924}
7925
7926type OrderreturnsAcknowledgeRequest struct {
7927	// OperationId: [required] The ID of the operation, unique across all
7928	// operations for a given order return.
7929	OperationId string `json:"operationId,omitempty"`
7930
7931	// ForceSendFields is a list of field names (e.g. "OperationId") to
7932	// unconditionally include in API requests. By default, fields with
7933	// empty values are omitted from API requests. However, any non-pointer,
7934	// non-interface field appearing in ForceSendFields will be sent to the
7935	// server regardless of whether the field is empty or not. This may be
7936	// used to include empty fields in Patch requests.
7937	ForceSendFields []string `json:"-"`
7938
7939	// NullFields is a list of field names (e.g. "OperationId") to include
7940	// in API requests with the JSON null value. By default, fields with
7941	// empty values are omitted from API requests. However, any field with
7942	// an empty value appearing in NullFields will be sent to the server as
7943	// null. It is an error if a field in this list has a non-empty value.
7944	// This may be used to include null fields in Patch requests.
7945	NullFields []string `json:"-"`
7946}
7947
7948func (s *OrderreturnsAcknowledgeRequest) MarshalJSON() ([]byte, error) {
7949	type NoMethod OrderreturnsAcknowledgeRequest
7950	raw := NoMethod(*s)
7951	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7952}
7953
7954type OrderreturnsAcknowledgeResponse struct {
7955	// ExecutionStatus: The status of the execution. Acceptable values are:
7956	// - "duplicate" - "executed"
7957	ExecutionStatus string `json:"executionStatus,omitempty"`
7958
7959	// Kind: Identifies what kind of resource this is. Value: the fixed
7960	// string "content#orderreturnsAcknowledgeResponse".
7961	Kind string `json:"kind,omitempty"`
7962
7963	// ServerResponse contains the HTTP response code and headers from the
7964	// server.
7965	googleapi.ServerResponse `json:"-"`
7966
7967	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7968	// unconditionally include in API requests. By default, fields with
7969	// empty values are omitted from API requests. However, any non-pointer,
7970	// non-interface field appearing in ForceSendFields will be sent to the
7971	// server regardless of whether the field is empty or not. This may be
7972	// used to include empty fields in Patch requests.
7973	ForceSendFields []string `json:"-"`
7974
7975	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7976	// include in API requests with the JSON null value. By default, fields
7977	// with empty values are omitted from API requests. However, any field
7978	// with an empty value appearing in NullFields will be sent to the
7979	// server as null. It is an error if a field in this list has a
7980	// non-empty value. This may be used to include null fields in Patch
7981	// requests.
7982	NullFields []string `json:"-"`
7983}
7984
7985func (s *OrderreturnsAcknowledgeResponse) MarshalJSON() ([]byte, error) {
7986	type NoMethod OrderreturnsAcknowledgeResponse
7987	raw := NoMethod(*s)
7988	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7989}
7990
7991type OrderreturnsCreateOrderReturnRequest struct {
7992	// LineItems: The list of line items to return.
7993	LineItems []*OrderreturnsLineItem `json:"lineItems,omitempty"`
7994
7995	// OperationId: The ID of the operation. Unique across all operations
7996	// for a given order.
7997	OperationId string `json:"operationId,omitempty"`
7998
7999	// OrderId: The ID of the order.
8000	OrderId string `json:"orderId,omitempty"`
8001
8002	// ReturnMethodType: The way of the package being returned.
8003	ReturnMethodType string `json:"returnMethodType,omitempty"`
8004
8005	// ForceSendFields is a list of field names (e.g. "LineItems") to
8006	// unconditionally include in API requests. By default, fields with
8007	// empty values are omitted from API requests. However, any non-pointer,
8008	// non-interface field appearing in ForceSendFields will be sent to the
8009	// server regardless of whether the field is empty or not. This may be
8010	// used to include empty fields in Patch requests.
8011	ForceSendFields []string `json:"-"`
8012
8013	// NullFields is a list of field names (e.g. "LineItems") to include in
8014	// API requests with the JSON null value. By default, fields with empty
8015	// values are omitted from API requests. However, any field with an
8016	// empty value appearing in NullFields will be sent to the server as
8017	// null. It is an error if a field in this list has a non-empty value.
8018	// This may be used to include null fields in Patch requests.
8019	NullFields []string `json:"-"`
8020}
8021
8022func (s *OrderreturnsCreateOrderReturnRequest) MarshalJSON() ([]byte, error) {
8023	type NoMethod OrderreturnsCreateOrderReturnRequest
8024	raw := NoMethod(*s)
8025	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8026}
8027
8028type OrderreturnsCreateOrderReturnResponse struct {
8029	// ExecutionStatus: The status of the execution. Acceptable values are:
8030	// - "duplicate" - "executed"
8031	ExecutionStatus string `json:"executionStatus,omitempty"`
8032
8033	// Kind: Identifies what kind of resource this is. Value: the fixed
8034	// string "content#orderreturnsCreateOrderReturnResponse".
8035	Kind string `json:"kind,omitempty"`
8036
8037	// OrderReturn: Created order return.
8038	OrderReturn *MerchantOrderReturn `json:"orderReturn,omitempty"`
8039
8040	// ServerResponse contains the HTTP response code and headers from the
8041	// server.
8042	googleapi.ServerResponse `json:"-"`
8043
8044	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8045	// unconditionally include in API requests. By default, fields with
8046	// empty values are omitted from API requests. However, any non-pointer,
8047	// non-interface field appearing in ForceSendFields will be sent to the
8048	// server regardless of whether the field is empty or not. This may be
8049	// used to include empty fields in Patch requests.
8050	ForceSendFields []string `json:"-"`
8051
8052	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8053	// include in API requests with the JSON null value. By default, fields
8054	// with empty values are omitted from API requests. However, any field
8055	// with an empty value appearing in NullFields will be sent to the
8056	// server as null. It is an error if a field in this list has a
8057	// non-empty value. This may be used to include null fields in Patch
8058	// requests.
8059	NullFields []string `json:"-"`
8060}
8061
8062func (s *OrderreturnsCreateOrderReturnResponse) MarshalJSON() ([]byte, error) {
8063	type NoMethod OrderreturnsCreateOrderReturnResponse
8064	raw := NoMethod(*s)
8065	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8066}
8067
8068type OrderreturnsLineItem struct {
8069	// LineItemId: The ID of the line item. This value is assigned by Google
8070	// when an order is created.
8071	LineItemId string `json:"lineItemId,omitempty"`
8072
8073	// Quantity: The quantity of this line item.
8074	Quantity int64 `json:"quantity,omitempty"`
8075
8076	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8077	// unconditionally include in API requests. By default, fields with
8078	// empty values are omitted from API requests. However, any non-pointer,
8079	// non-interface field appearing in ForceSendFields will be sent to the
8080	// server regardless of whether the field is empty or not. This may be
8081	// used to include empty fields in Patch requests.
8082	ForceSendFields []string `json:"-"`
8083
8084	// NullFields is a list of field names (e.g. "LineItemId") to include in
8085	// API requests with the JSON null value. By default, fields with empty
8086	// values are omitted from API requests. However, any field with an
8087	// empty value appearing in NullFields will be sent to the server as
8088	// null. It is an error if a field in this list has a non-empty value.
8089	// This may be used to include null fields in Patch requests.
8090	NullFields []string `json:"-"`
8091}
8092
8093func (s *OrderreturnsLineItem) MarshalJSON() ([]byte, error) {
8094	type NoMethod OrderreturnsLineItem
8095	raw := NoMethod(*s)
8096	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8097}
8098
8099type OrderreturnsListResponse struct {
8100	// Kind: Identifies what kind of resource this is. Value: the fixed
8101	// string "content#orderreturnsListResponse".
8102	Kind string `json:"kind,omitempty"`
8103
8104	// NextPageToken: The token for the retrieval of the next page of
8105	// returns.
8106	NextPageToken string `json:"nextPageToken,omitempty"`
8107
8108	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
8109
8110	// ServerResponse contains the HTTP response code and headers from the
8111	// server.
8112	googleapi.ServerResponse `json:"-"`
8113
8114	// ForceSendFields is a list of field names (e.g. "Kind") to
8115	// unconditionally include in API requests. By default, fields with
8116	// empty values are omitted from API requests. However, any non-pointer,
8117	// non-interface field appearing in ForceSendFields will be sent to the
8118	// server regardless of whether the field is empty or not. This may be
8119	// used to include empty fields in Patch requests.
8120	ForceSendFields []string `json:"-"`
8121
8122	// NullFields is a list of field names (e.g. "Kind") to include in API
8123	// requests with the JSON null value. By default, fields with empty
8124	// values are omitted from API requests. However, any field with an
8125	// empty value appearing in NullFields will be sent to the server as
8126	// null. It is an error if a field in this list has a non-empty value.
8127	// This may be used to include null fields in Patch requests.
8128	NullFields []string `json:"-"`
8129}
8130
8131func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
8132	type NoMethod OrderreturnsListResponse
8133	raw := NoMethod(*s)
8134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8135}
8136
8137type OrderreturnsPartialRefund struct {
8138	// PriceAmount: The pre-tax or post-tax amount to be refunded, depending
8139	// on the location of the order.
8140	PriceAmount *Price `json:"priceAmount,omitempty"`
8141
8142	// TaxAmount: Tax amount to be refunded. Note: This has different
8143	// meaning depending on the location of the order.
8144	TaxAmount *Price `json:"taxAmount,omitempty"`
8145
8146	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
8147	// unconditionally include in API requests. By default, fields with
8148	// empty values are omitted from API requests. However, any non-pointer,
8149	// non-interface field appearing in ForceSendFields will be sent to the
8150	// server regardless of whether the field is empty or not. This may be
8151	// used to include empty fields in Patch requests.
8152	ForceSendFields []string `json:"-"`
8153
8154	// NullFields is a list of field names (e.g. "PriceAmount") to include
8155	// in API requests with the JSON null value. By default, fields with
8156	// empty values are omitted from API requests. However, any field with
8157	// an empty value appearing in NullFields will be sent to the server as
8158	// null. It is an error if a field in this list has a non-empty value.
8159	// This may be used to include null fields in Patch requests.
8160	NullFields []string `json:"-"`
8161}
8162
8163func (s *OrderreturnsPartialRefund) MarshalJSON() ([]byte, error) {
8164	type NoMethod OrderreturnsPartialRefund
8165	raw := NoMethod(*s)
8166	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8167}
8168
8169type OrderreturnsProcessRequest struct {
8170	// FullChargeReturnShippingCost: Option to charge the customer return
8171	// shipping cost.
8172	FullChargeReturnShippingCost bool `json:"fullChargeReturnShippingCost,omitempty"`
8173
8174	// OperationId: [required] The ID of the operation, unique across all
8175	// operations for a given order return.
8176	OperationId string `json:"operationId,omitempty"`
8177
8178	// RefundShippingFee: Refunds for original shipping fee.
8179	RefundShippingFee *OrderreturnsRefundOperation `json:"refundShippingFee,omitempty"`
8180
8181	// ReturnItems: The list of items to return.
8182	ReturnItems []*OrderreturnsReturnItem `json:"returnItems,omitempty"`
8183
8184	// ForceSendFields is a list of field names (e.g.
8185	// "FullChargeReturnShippingCost") to unconditionally include in API
8186	// requests. By default, fields with empty values are omitted from API
8187	// requests. However, any non-pointer, non-interface field appearing in
8188	// ForceSendFields will be sent to the server regardless of whether the
8189	// field is empty or not. This may be used to include empty fields in
8190	// Patch requests.
8191	ForceSendFields []string `json:"-"`
8192
8193	// NullFields is a list of field names (e.g.
8194	// "FullChargeReturnShippingCost") to include in API requests with the
8195	// JSON null value. By default, fields with empty values are omitted
8196	// from API requests. However, any field with an empty value appearing
8197	// in NullFields will be sent to the server as null. It is an error if a
8198	// field in this list has a non-empty value. This may be used to include
8199	// null fields in Patch requests.
8200	NullFields []string `json:"-"`
8201}
8202
8203func (s *OrderreturnsProcessRequest) MarshalJSON() ([]byte, error) {
8204	type NoMethod OrderreturnsProcessRequest
8205	raw := NoMethod(*s)
8206	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8207}
8208
8209type OrderreturnsProcessResponse struct {
8210	// ExecutionStatus: The status of the execution. Acceptable values are:
8211	// - "duplicate" - "executed"
8212	ExecutionStatus string `json:"executionStatus,omitempty"`
8213
8214	// Kind: Identifies what kind of resource this is. Value: the fixed
8215	// string "content#orderreturnsProcessResponse".
8216	Kind string `json:"kind,omitempty"`
8217
8218	// ServerResponse contains the HTTP response code and headers from the
8219	// server.
8220	googleapi.ServerResponse `json:"-"`
8221
8222	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8223	// unconditionally include in API requests. By default, fields with
8224	// empty values are omitted from API requests. However, any non-pointer,
8225	// non-interface field appearing in ForceSendFields will be sent to the
8226	// server regardless of whether the field is empty or not. This may be
8227	// used to include empty fields in Patch requests.
8228	ForceSendFields []string `json:"-"`
8229
8230	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8231	// include in API requests with the JSON null value. By default, fields
8232	// with empty values are omitted from API requests. However, any field
8233	// with an empty value appearing in NullFields will be sent to the
8234	// server as null. It is an error if a field in this list has a
8235	// non-empty value. This may be used to include null fields in Patch
8236	// requests.
8237	NullFields []string `json:"-"`
8238}
8239
8240func (s *OrderreturnsProcessResponse) MarshalJSON() ([]byte, error) {
8241	type NoMethod OrderreturnsProcessResponse
8242	raw := NoMethod(*s)
8243	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8244}
8245
8246type OrderreturnsRefundOperation struct {
8247	// FullRefund: If true, the item will be fully refunded. Allowed only
8248	// when payment_type is FOP. Merchant can choose this refund option to
8249	// indicate the full remaining amount of corresponding object to be
8250	// refunded to the customer via FOP.
8251	FullRefund bool `json:"fullRefund,omitempty"`
8252
8253	// PartialRefund: If this is set, the item will be partially refunded.
8254	// Merchant can choose this refund option to specify the customized
8255	// amount that to be refunded to the customer.
8256	PartialRefund *OrderreturnsPartialRefund `json:"partialRefund,omitempty"`
8257
8258	// PaymentType: The payment way of issuing refund. Default value is
8259	// ORIGINAL_FOP if not set.
8260	PaymentType string `json:"paymentType,omitempty"`
8261
8262	// ReasonText: The explanation of the reason.
8263	ReasonText string `json:"reasonText,omitempty"`
8264
8265	// ReturnRefundReason: Code of the refund reason.
8266	ReturnRefundReason string `json:"returnRefundReason,omitempty"`
8267
8268	// ForceSendFields is a list of field names (e.g. "FullRefund") to
8269	// unconditionally include in API requests. By default, fields with
8270	// empty values are omitted from API requests. However, any non-pointer,
8271	// non-interface field appearing in ForceSendFields will be sent to the
8272	// server regardless of whether the field is empty or not. This may be
8273	// used to include empty fields in Patch requests.
8274	ForceSendFields []string `json:"-"`
8275
8276	// NullFields is a list of field names (e.g. "FullRefund") to include in
8277	// API requests with the JSON null value. By default, fields with empty
8278	// values are omitted from API requests. However, any field with an
8279	// empty value appearing in NullFields will be sent to the server as
8280	// null. It is an error if a field in this list has a non-empty value.
8281	// This may be used to include null fields in Patch requests.
8282	NullFields []string `json:"-"`
8283}
8284
8285func (s *OrderreturnsRefundOperation) MarshalJSON() ([]byte, error) {
8286	type NoMethod OrderreturnsRefundOperation
8287	raw := NoMethod(*s)
8288	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8289}
8290
8291type OrderreturnsRejectOperation struct {
8292	// Reason: The reason for the return.
8293	Reason string `json:"reason,omitempty"`
8294
8295	// ReasonText: The explanation of the reason.
8296	ReasonText string `json:"reasonText,omitempty"`
8297
8298	// ForceSendFields is a list of field names (e.g. "Reason") to
8299	// unconditionally include in API requests. By default, fields with
8300	// empty values are omitted from API requests. However, any non-pointer,
8301	// non-interface field appearing in ForceSendFields will be sent to the
8302	// server regardless of whether the field is empty or not. This may be
8303	// used to include empty fields in Patch requests.
8304	ForceSendFields []string `json:"-"`
8305
8306	// NullFields is a list of field names (e.g. "Reason") to include in API
8307	// requests with the JSON null value. By default, fields with empty
8308	// values are omitted from API requests. However, any field with an
8309	// empty value appearing in NullFields will be sent to the server as
8310	// null. It is an error if a field in this list has a non-empty value.
8311	// This may be used to include null fields in Patch requests.
8312	NullFields []string `json:"-"`
8313}
8314
8315func (s *OrderreturnsRejectOperation) MarshalJSON() ([]byte, error) {
8316	type NoMethod OrderreturnsRejectOperation
8317	raw := NoMethod(*s)
8318	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8319}
8320
8321type OrderreturnsReturnItem struct {
8322	// Refund: Refunds the item.
8323	Refund *OrderreturnsRefundOperation `json:"refund,omitempty"`
8324
8325	// Reject: Rejects the item.
8326	Reject *OrderreturnsRejectOperation `json:"reject,omitempty"`
8327
8328	// ReturnItemId: Unit level ID for the return item. Different units of
8329	// the same product will have different IDs.
8330	ReturnItemId string `json:"returnItemId,omitempty"`
8331
8332	// ForceSendFields is a list of field names (e.g. "Refund") to
8333	// unconditionally include in API requests. By default, fields with
8334	// empty values are omitted from API requests. However, any non-pointer,
8335	// non-interface field appearing in ForceSendFields will be sent to the
8336	// server regardless of whether the field is empty or not. This may be
8337	// used to include empty fields in Patch requests.
8338	ForceSendFields []string `json:"-"`
8339
8340	// NullFields is a list of field names (e.g. "Refund") to include in API
8341	// requests with the JSON null value. By default, fields with empty
8342	// values are omitted from API requests. However, any field with an
8343	// empty value appearing in NullFields will be sent to the server as
8344	// null. It is an error if a field in this list has a non-empty value.
8345	// This may be used to include null fields in Patch requests.
8346	NullFields []string `json:"-"`
8347}
8348
8349func (s *OrderreturnsReturnItem) MarshalJSON() ([]byte, error) {
8350	type NoMethod OrderreturnsReturnItem
8351	raw := NoMethod(*s)
8352	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8353}
8354
8355type OrdersAcknowledgeRequest struct {
8356	// OperationId: The ID of the operation. Unique across all operations
8357	// for a given order.
8358	OperationId string `json:"operationId,omitempty"`
8359
8360	// ForceSendFields is a list of field names (e.g. "OperationId") to
8361	// unconditionally include in API requests. By default, fields with
8362	// empty values are omitted from API requests. However, any non-pointer,
8363	// non-interface field appearing in ForceSendFields will be sent to the
8364	// server regardless of whether the field is empty or not. This may be
8365	// used to include empty fields in Patch requests.
8366	ForceSendFields []string `json:"-"`
8367
8368	// NullFields is a list of field names (e.g. "OperationId") to include
8369	// in API requests with the JSON null value. By default, fields with
8370	// empty values are omitted from API requests. However, any field with
8371	// an empty value appearing in NullFields will be sent to the server as
8372	// null. It is an error if a field in this list has a non-empty value.
8373	// This may be used to include null fields in Patch requests.
8374	NullFields []string `json:"-"`
8375}
8376
8377func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
8378	type NoMethod OrdersAcknowledgeRequest
8379	raw := NoMethod(*s)
8380	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8381}
8382
8383type OrdersAcknowledgeResponse struct {
8384	// ExecutionStatus: The status of the execution. Acceptable values are:
8385	// - "duplicate" - "executed"
8386	ExecutionStatus string `json:"executionStatus,omitempty"`
8387
8388	// Kind: Identifies what kind of resource this is. Value: the fixed
8389	// string "content#ordersAcknowledgeResponse".
8390	Kind string `json:"kind,omitempty"`
8391
8392	// ServerResponse contains the HTTP response code and headers from the
8393	// server.
8394	googleapi.ServerResponse `json:"-"`
8395
8396	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8397	// unconditionally include in API requests. By default, fields with
8398	// empty values are omitted from API requests. However, any non-pointer,
8399	// non-interface field appearing in ForceSendFields will be sent to the
8400	// server regardless of whether the field is empty or not. This may be
8401	// used to include empty fields in Patch requests.
8402	ForceSendFields []string `json:"-"`
8403
8404	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8405	// include in API requests with the JSON null value. By default, fields
8406	// with empty values are omitted from API requests. However, any field
8407	// with an empty value appearing in NullFields will be sent to the
8408	// server as null. It is an error if a field in this list has a
8409	// non-empty value. This may be used to include null fields in Patch
8410	// requests.
8411	NullFields []string `json:"-"`
8412}
8413
8414func (s *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
8415	type NoMethod OrdersAcknowledgeResponse
8416	raw := NoMethod(*s)
8417	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8418}
8419
8420type OrdersAdvanceTestOrderResponse struct {
8421	// Kind: Identifies what kind of resource this is. Value: the fixed
8422	// string "content#ordersAdvanceTestOrderResponse".
8423	Kind string `json:"kind,omitempty"`
8424
8425	// ServerResponse contains the HTTP response code and headers from the
8426	// server.
8427	googleapi.ServerResponse `json:"-"`
8428
8429	// ForceSendFields is a list of field names (e.g. "Kind") to
8430	// unconditionally include in API requests. By default, fields with
8431	// empty values are omitted from API requests. However, any non-pointer,
8432	// non-interface field appearing in ForceSendFields will be sent to the
8433	// server regardless of whether the field is empty or not. This may be
8434	// used to include empty fields in Patch requests.
8435	ForceSendFields []string `json:"-"`
8436
8437	// NullFields is a list of field names (e.g. "Kind") to include in API
8438	// requests with the JSON null value. By default, fields with empty
8439	// values are omitted from API requests. However, any field with an
8440	// empty value appearing in NullFields will be sent to the server as
8441	// null. It is an error if a field in this list has a non-empty value.
8442	// This may be used to include null fields in Patch requests.
8443	NullFields []string `json:"-"`
8444}
8445
8446func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
8447	type NoMethod OrdersAdvanceTestOrderResponse
8448	raw := NoMethod(*s)
8449	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8450}
8451
8452type OrdersCancelLineItemRequest struct {
8453	// LineItemId: The ID of the line item to cancel. Either lineItemId or
8454	// productId is required.
8455	LineItemId string `json:"lineItemId,omitempty"`
8456
8457	// OperationId: The ID of the operation. Unique across all operations
8458	// for a given order.
8459	OperationId string `json:"operationId,omitempty"`
8460
8461	// ProductId: The ID of the product to cancel. This is the REST ID used
8462	// in the products service. Either lineItemId or productId is required.
8463	ProductId string `json:"productId,omitempty"`
8464
8465	// Quantity: The quantity to cancel.
8466	Quantity int64 `json:"quantity,omitempty"`
8467
8468	// Reason: The reason for the cancellation. Acceptable values are: -
8469	// "customerInitiatedCancel" - "invalidCoupon" -
8470	// "malformedShippingAddress" - "noInventory" - "other" -
8471	// "priceError" - "shippingPriceError" - "taxError" -
8472	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
8473	Reason string `json:"reason,omitempty"`
8474
8475	// ReasonText: The explanation of the reason.
8476	ReasonText string `json:"reasonText,omitempty"`
8477
8478	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8479	// unconditionally include in API requests. By default, fields with
8480	// empty values are omitted from API requests. However, any non-pointer,
8481	// non-interface field appearing in ForceSendFields will be sent to the
8482	// server regardless of whether the field is empty or not. This may be
8483	// used to include empty fields in Patch requests.
8484	ForceSendFields []string `json:"-"`
8485
8486	// NullFields is a list of field names (e.g. "LineItemId") to include in
8487	// API requests with the JSON null value. By default, fields with empty
8488	// values are omitted from API requests. However, any field with an
8489	// empty value appearing in NullFields will be sent to the server as
8490	// null. It is an error if a field in this list has a non-empty value.
8491	// This may be used to include null fields in Patch requests.
8492	NullFields []string `json:"-"`
8493}
8494
8495func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
8496	type NoMethod OrdersCancelLineItemRequest
8497	raw := NoMethod(*s)
8498	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8499}
8500
8501type OrdersCancelLineItemResponse struct {
8502	// ExecutionStatus: The status of the execution. Acceptable values are:
8503	// - "duplicate" - "executed"
8504	ExecutionStatus string `json:"executionStatus,omitempty"`
8505
8506	// Kind: Identifies what kind of resource this is. Value: the fixed
8507	// string "content#ordersCancelLineItemResponse".
8508	Kind string `json:"kind,omitempty"`
8509
8510	// ServerResponse contains the HTTP response code and headers from the
8511	// server.
8512	googleapi.ServerResponse `json:"-"`
8513
8514	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8515	// unconditionally include in API requests. By default, fields with
8516	// empty values are omitted from API requests. However, any non-pointer,
8517	// non-interface field appearing in ForceSendFields will be sent to the
8518	// server regardless of whether the field is empty or not. This may be
8519	// used to include empty fields in Patch requests.
8520	ForceSendFields []string `json:"-"`
8521
8522	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8523	// include in API requests with the JSON null value. By default, fields
8524	// with empty values are omitted from API requests. However, any field
8525	// with an empty value appearing in NullFields will be sent to the
8526	// server as null. It is an error if a field in this list has a
8527	// non-empty value. This may be used to include null fields in Patch
8528	// requests.
8529	NullFields []string `json:"-"`
8530}
8531
8532func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
8533	type NoMethod OrdersCancelLineItemResponse
8534	raw := NoMethod(*s)
8535	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8536}
8537
8538type OrdersCancelRequest struct {
8539	// OperationId: The ID of the operation. Unique across all operations
8540	// for a given order.
8541	OperationId string `json:"operationId,omitempty"`
8542
8543	// Reason: The reason for the cancellation. Acceptable values are: -
8544	// "customerInitiatedCancel" - "invalidCoupon" -
8545	// "malformedShippingAddress" - "noInventory" - "other" -
8546	// "priceError" - "shippingPriceError" - "taxError" -
8547	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
8548	Reason string `json:"reason,omitempty"`
8549
8550	// ReasonText: The explanation of the reason.
8551	ReasonText string `json:"reasonText,omitempty"`
8552
8553	// ForceSendFields is a list of field names (e.g. "OperationId") to
8554	// unconditionally include in API requests. By default, fields with
8555	// empty values are omitted from API requests. However, any non-pointer,
8556	// non-interface field appearing in ForceSendFields will be sent to the
8557	// server regardless of whether the field is empty or not. This may be
8558	// used to include empty fields in Patch requests.
8559	ForceSendFields []string `json:"-"`
8560
8561	// NullFields is a list of field names (e.g. "OperationId") to include
8562	// in API requests with the JSON null value. By default, fields with
8563	// empty values are omitted from API requests. However, any field with
8564	// an empty value appearing in NullFields will be sent to the server as
8565	// null. It is an error if a field in this list has a non-empty value.
8566	// This may be used to include null fields in Patch requests.
8567	NullFields []string `json:"-"`
8568}
8569
8570func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
8571	type NoMethod OrdersCancelRequest
8572	raw := NoMethod(*s)
8573	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8574}
8575
8576type OrdersCancelResponse struct {
8577	// ExecutionStatus: The status of the execution. Acceptable values are:
8578	// - "duplicate" - "executed"
8579	ExecutionStatus string `json:"executionStatus,omitempty"`
8580
8581	// Kind: Identifies what kind of resource this is. Value: the fixed
8582	// string "content#ordersCancelResponse".
8583	Kind string `json:"kind,omitempty"`
8584
8585	// ServerResponse contains the HTTP response code and headers from the
8586	// server.
8587	googleapi.ServerResponse `json:"-"`
8588
8589	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8590	// unconditionally include in API requests. By default, fields with
8591	// empty values are omitted from API requests. However, any non-pointer,
8592	// non-interface field appearing in ForceSendFields will be sent to the
8593	// server regardless of whether the field is empty or not. This may be
8594	// used to include empty fields in Patch requests.
8595	ForceSendFields []string `json:"-"`
8596
8597	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8598	// include in API requests with the JSON null value. By default, fields
8599	// with empty values are omitted from API requests. However, any field
8600	// with an empty value appearing in NullFields will be sent to the
8601	// server as null. It is an error if a field in this list has a
8602	// non-empty value. This may be used to include null fields in Patch
8603	// requests.
8604	NullFields []string `json:"-"`
8605}
8606
8607func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
8608	type NoMethod OrdersCancelResponse
8609	raw := NoMethod(*s)
8610	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8611}
8612
8613type OrdersCancelTestOrderByCustomerRequest struct {
8614	// Reason: The reason for the cancellation. Acceptable values are: -
8615	// "changedMind" - "orderedWrongItem" - "other"
8616	Reason string `json:"reason,omitempty"`
8617
8618	// ForceSendFields is a list of field names (e.g. "Reason") to
8619	// unconditionally include in API requests. By default, fields with
8620	// empty values are omitted from API requests. However, any non-pointer,
8621	// non-interface field appearing in ForceSendFields will be sent to the
8622	// server regardless of whether the field is empty or not. This may be
8623	// used to include empty fields in Patch requests.
8624	ForceSendFields []string `json:"-"`
8625
8626	// NullFields is a list of field names (e.g. "Reason") to include in API
8627	// requests with the JSON null value. By default, fields with empty
8628	// values are omitted from API requests. However, any field with an
8629	// empty value appearing in NullFields will be sent to the server as
8630	// null. It is an error if a field in this list has a non-empty value.
8631	// This may be used to include null fields in Patch requests.
8632	NullFields []string `json:"-"`
8633}
8634
8635func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
8636	type NoMethod OrdersCancelTestOrderByCustomerRequest
8637	raw := NoMethod(*s)
8638	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8639}
8640
8641type OrdersCancelTestOrderByCustomerResponse struct {
8642	// Kind: Identifies what kind of resource this is. Value: the fixed
8643	// string "content#ordersCancelTestOrderByCustomerResponse".
8644	Kind string `json:"kind,omitempty"`
8645
8646	// ServerResponse contains the HTTP response code and headers from the
8647	// server.
8648	googleapi.ServerResponse `json:"-"`
8649
8650	// ForceSendFields is a list of field names (e.g. "Kind") to
8651	// unconditionally include in API requests. By default, fields with
8652	// empty values are omitted from API requests. However, any non-pointer,
8653	// non-interface field appearing in ForceSendFields will be sent to the
8654	// server regardless of whether the field is empty or not. This may be
8655	// used to include empty fields in Patch requests.
8656	ForceSendFields []string `json:"-"`
8657
8658	// NullFields is a list of field names (e.g. "Kind") to include in API
8659	// requests with the JSON null value. By default, fields with empty
8660	// values are omitted from API requests. However, any field with an
8661	// empty value appearing in NullFields will be sent to the server as
8662	// null. It is an error if a field in this list has a non-empty value.
8663	// This may be used to include null fields in Patch requests.
8664	NullFields []string `json:"-"`
8665}
8666
8667func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
8668	type NoMethod OrdersCancelTestOrderByCustomerResponse
8669	raw := NoMethod(*s)
8670	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8671}
8672
8673type OrdersCreateTestOrderRequest struct {
8674	// Country: The CLDR territory code of the country of the test order to
8675	// create. Affects the currency and addresses of orders created via
8676	// `template_name`, or the addresses of orders created via `test_order`.
8677	// Acceptable values are: - "US" - "FR" Defaults to `US`.
8678	Country string `json:"country,omitempty"`
8679
8680	// TemplateName: The test order template to use. Specify as an
8681	// alternative to `testOrder` as a shortcut for retrieving a template
8682	// and then creating an order using that template. Acceptable values
8683	// are: - "template1" - "template1a" - "template1b" -
8684	// "template2" - "template3"
8685	TemplateName string `json:"templateName,omitempty"`
8686
8687	// TestOrder: The test order to create.
8688	TestOrder *TestOrder `json:"testOrder,omitempty"`
8689
8690	// ForceSendFields is a list of field names (e.g. "Country") to
8691	// unconditionally include in API requests. By default, fields with
8692	// empty values are omitted from API requests. However, any non-pointer,
8693	// non-interface field appearing in ForceSendFields will be sent to the
8694	// server regardless of whether the field is empty or not. This may be
8695	// used to include empty fields in Patch requests.
8696	ForceSendFields []string `json:"-"`
8697
8698	// NullFields is a list of field names (e.g. "Country") to include in
8699	// API requests with the JSON null value. By default, fields with empty
8700	// values are omitted from API requests. However, any field with an
8701	// empty value appearing in NullFields will be sent to the server as
8702	// null. It is an error if a field in this list has a non-empty value.
8703	// This may be used to include null fields in Patch requests.
8704	NullFields []string `json:"-"`
8705}
8706
8707func (s *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
8708	type NoMethod OrdersCreateTestOrderRequest
8709	raw := NoMethod(*s)
8710	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8711}
8712
8713type OrdersCreateTestOrderResponse struct {
8714	// Kind: Identifies what kind of resource this is. Value: the fixed
8715	// string "content#ordersCreateTestOrderResponse".
8716	Kind string `json:"kind,omitempty"`
8717
8718	// OrderId: The ID of the newly created test order.
8719	OrderId string `json:"orderId,omitempty"`
8720
8721	// ServerResponse contains the HTTP response code and headers from the
8722	// server.
8723	googleapi.ServerResponse `json:"-"`
8724
8725	// ForceSendFields is a list of field names (e.g. "Kind") to
8726	// unconditionally include in API requests. By default, fields with
8727	// empty values are omitted from API requests. However, any non-pointer,
8728	// non-interface field appearing in ForceSendFields will be sent to the
8729	// server regardless of whether the field is empty or not. This may be
8730	// used to include empty fields in Patch requests.
8731	ForceSendFields []string `json:"-"`
8732
8733	// NullFields is a list of field names (e.g. "Kind") to include in API
8734	// requests with the JSON null value. By default, fields with empty
8735	// values are omitted from API requests. However, any field with an
8736	// empty value appearing in NullFields will be sent to the server as
8737	// null. It is an error if a field in this list has a non-empty value.
8738	// This may be used to include null fields in Patch requests.
8739	NullFields []string `json:"-"`
8740}
8741
8742func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
8743	type NoMethod OrdersCreateTestOrderResponse
8744	raw := NoMethod(*s)
8745	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8746}
8747
8748type OrdersCreateTestReturnRequest struct {
8749	// Items: Returned items.
8750	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
8751
8752	// ForceSendFields is a list of field names (e.g. "Items") to
8753	// unconditionally include in API requests. By default, fields with
8754	// empty values are omitted from API requests. However, any non-pointer,
8755	// non-interface field appearing in ForceSendFields will be sent to the
8756	// server regardless of whether the field is empty or not. This may be
8757	// used to include empty fields in Patch requests.
8758	ForceSendFields []string `json:"-"`
8759
8760	// NullFields is a list of field names (e.g. "Items") to include in API
8761	// requests with the JSON null value. By default, fields with empty
8762	// values are omitted from API requests. However, any field with an
8763	// empty value appearing in NullFields will be sent to the server as
8764	// null. It is an error if a field in this list has a non-empty value.
8765	// This may be used to include null fields in Patch requests.
8766	NullFields []string `json:"-"`
8767}
8768
8769func (s *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
8770	type NoMethod OrdersCreateTestReturnRequest
8771	raw := NoMethod(*s)
8772	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8773}
8774
8775type OrdersCreateTestReturnResponse struct {
8776	// Kind: Identifies what kind of resource this is. Value: the fixed
8777	// string "content#ordersCreateTestReturnResponse".
8778	Kind string `json:"kind,omitempty"`
8779
8780	// ReturnId: The ID of the newly created test order return.
8781	ReturnId string `json:"returnId,omitempty"`
8782
8783	// ServerResponse contains the HTTP response code and headers from the
8784	// server.
8785	googleapi.ServerResponse `json:"-"`
8786
8787	// ForceSendFields is a list of field names (e.g. "Kind") to
8788	// unconditionally include in API requests. By default, fields with
8789	// empty values are omitted from API requests. However, any non-pointer,
8790	// non-interface field appearing in ForceSendFields will be sent to the
8791	// server regardless of whether the field is empty or not. This may be
8792	// used to include empty fields in Patch requests.
8793	ForceSendFields []string `json:"-"`
8794
8795	// NullFields is a list of field names (e.g. "Kind") to include in API
8796	// requests with the JSON null value. By default, fields with empty
8797	// values are omitted from API requests. However, any field with an
8798	// empty value appearing in NullFields will be sent to the server as
8799	// null. It is an error if a field in this list has a non-empty value.
8800	// This may be used to include null fields in Patch requests.
8801	NullFields []string `json:"-"`
8802}
8803
8804func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
8805	type NoMethod OrdersCreateTestReturnResponse
8806	raw := NoMethod(*s)
8807	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8808}
8809
8810type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
8811	// LineItemId: The ID of the line item to return.
8812	LineItemId string `json:"lineItemId,omitempty"`
8813
8814	// Quantity: Quantity that is returned.
8815	Quantity int64 `json:"quantity,omitempty"`
8816
8817	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8818	// unconditionally include in API requests. By default, fields with
8819	// empty values are omitted from API requests. However, any non-pointer,
8820	// non-interface field appearing in ForceSendFields will be sent to the
8821	// server regardless of whether the field is empty or not. This may be
8822	// used to include empty fields in Patch requests.
8823	ForceSendFields []string `json:"-"`
8824
8825	// NullFields is a list of field names (e.g. "LineItemId") to include in
8826	// API requests with the JSON null value. By default, fields with empty
8827	// values are omitted from API requests. However, any field with an
8828	// empty value appearing in NullFields will be sent to the server as
8829	// null. It is an error if a field in this list has a non-empty value.
8830	// This may be used to include null fields in Patch requests.
8831	NullFields []string `json:"-"`
8832}
8833
8834func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
8835	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
8836	raw := NoMethod(*s)
8837	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8838}
8839
8840type OrdersCustomBatchRequestEntryRefundItemItem struct {
8841	// Amount: The total amount that is refunded. (e.g. refunding $5 each
8842	// for 2 products should be done by setting quantity to 2 and amount to
8843	// 10$) In case of multiple refunds, this should be the amount you
8844	// currently want to refund to the customer.
8845	Amount *MonetaryAmount `json:"amount,omitempty"`
8846
8847	// FullRefund: If true, the full item will be refunded. If this is true,
8848	// amount should not be provided and will be ignored.
8849	FullRefund bool `json:"fullRefund,omitempty"`
8850
8851	// LineItemId: The ID of the line item. Either lineItemId or productId
8852	// is required.
8853	LineItemId string `json:"lineItemId,omitempty"`
8854
8855	// ProductId: The ID of the product. This is the REST ID used in the
8856	// products service. Either lineItemId or productId is required.
8857	ProductId string `json:"productId,omitempty"`
8858
8859	// Quantity: The number of products that are refunded.
8860	Quantity int64 `json:"quantity,omitempty"`
8861
8862	// ForceSendFields is a list of field names (e.g. "Amount") to
8863	// unconditionally include in API requests. By default, fields with
8864	// empty values are omitted from API requests. However, any non-pointer,
8865	// non-interface field appearing in ForceSendFields will be sent to the
8866	// server regardless of whether the field is empty or not. This may be
8867	// used to include empty fields in Patch requests.
8868	ForceSendFields []string `json:"-"`
8869
8870	// NullFields is a list of field names (e.g. "Amount") to include in API
8871	// requests with the JSON null value. By default, fields with empty
8872	// values are omitted from API requests. However, any field with an
8873	// empty value appearing in NullFields will be sent to the server as
8874	// null. It is an error if a field in this list has a non-empty value.
8875	// This may be used to include null fields in Patch requests.
8876	NullFields []string `json:"-"`
8877}
8878
8879func (s *OrdersCustomBatchRequestEntryRefundItemItem) MarshalJSON() ([]byte, error) {
8880	type NoMethod OrdersCustomBatchRequestEntryRefundItemItem
8881	raw := NoMethod(*s)
8882	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8883}
8884
8885type OrdersCustomBatchRequestEntryRefundItemShipping struct {
8886	// Amount: The amount that is refunded. If this is not the first refund
8887	// for the shipment, this should be the newly refunded amount.
8888	Amount *Price `json:"amount,omitempty"`
8889
8890	// FullRefund: If set to true, all shipping costs for the order will be
8891	// refunded. If this is true, amount should not be provided and will be
8892	// ignored. If set to false, submit the amount of the partial shipping
8893	// refund, excluding the shipping tax. The shipping tax is calculated
8894	// and handled on Google's side.
8895	FullRefund bool `json:"fullRefund,omitempty"`
8896
8897	// ForceSendFields is a list of field names (e.g. "Amount") to
8898	// unconditionally include in API requests. By default, fields with
8899	// empty values are omitted from API requests. However, any non-pointer,
8900	// non-interface field appearing in ForceSendFields will be sent to the
8901	// server regardless of whether the field is empty or not. This may be
8902	// used to include empty fields in Patch requests.
8903	ForceSendFields []string `json:"-"`
8904
8905	// NullFields is a list of field names (e.g. "Amount") to include in API
8906	// requests with the JSON null value. By default, fields with empty
8907	// values are omitted from API requests. However, any field with an
8908	// empty value appearing in NullFields will be sent to the server as
8909	// null. It is an error if a field in this list has a non-empty value.
8910	// This may be used to include null fields in Patch requests.
8911	NullFields []string `json:"-"`
8912}
8913
8914func (s *OrdersCustomBatchRequestEntryRefundItemShipping) MarshalJSON() ([]byte, error) {
8915	type NoMethod OrdersCustomBatchRequestEntryRefundItemShipping
8916	raw := NoMethod(*s)
8917	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8918}
8919
8920type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
8921	// Carrier: The carrier handling the shipment. See `shipments[].carrier`
8922	// in the Orders resource representation for a list of acceptable
8923	// values.
8924	Carrier string `json:"carrier,omitempty"`
8925
8926	// ShipmentId: Required. The ID of the shipment. This is assigned by the
8927	// merchant and is unique to each shipment.
8928	ShipmentId string `json:"shipmentId,omitempty"`
8929
8930	// TrackingId: The tracking ID for the shipment.
8931	TrackingId string `json:"trackingId,omitempty"`
8932
8933	// ForceSendFields is a list of field names (e.g. "Carrier") to
8934	// unconditionally include in API requests. By default, fields with
8935	// empty values are omitted from API requests. However, any non-pointer,
8936	// non-interface field appearing in ForceSendFields will be sent to the
8937	// server regardless of whether the field is empty or not. This may be
8938	// used to include empty fields in Patch requests.
8939	ForceSendFields []string `json:"-"`
8940
8941	// NullFields is a list of field names (e.g. "Carrier") to include in
8942	// API requests with the JSON null value. By default, fields with empty
8943	// values are omitted from API requests. However, any field with an
8944	// empty value appearing in NullFields will be sent to the server as
8945	// null. It is an error if a field in this list has a non-empty value.
8946	// This may be used to include null fields in Patch requests.
8947	NullFields []string `json:"-"`
8948}
8949
8950func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
8951	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
8952	raw := NoMethod(*s)
8953	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8954}
8955
8956// OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails:
8957// ScheduledDeliveryDetails used to update the scheduled delivery order.
8958type OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails struct {
8959	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
8960	// delivery. The phone number should be formatted as the international
8961	// notation in
8962	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
8963
8964	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
8965	// 8601 format.
8966	ScheduledDate string `json:"scheduledDate,omitempty"`
8967
8968	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
8969	// to unconditionally include in API requests. By default, fields with
8970	// empty values are omitted from API requests. However, any non-pointer,
8971	// non-interface field appearing in ForceSendFields will be sent to the
8972	// server regardless of whether the field is empty or not. This may be
8973	// used to include empty fields in Patch requests.
8974	ForceSendFields []string `json:"-"`
8975
8976	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
8977	// include in API requests with the JSON null value. By default, fields
8978	// with empty values are omitted from API requests. However, any field
8979	// with an empty value appearing in NullFields will be sent to the
8980	// server as null. It is an error if a field in this list has a
8981	// non-empty value. This may be used to include null fields in Patch
8982	// requests.
8983	NullFields []string `json:"-"`
8984}
8985
8986func (s *OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
8987	type NoMethod OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails
8988	raw := NoMethod(*s)
8989	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8990}
8991
8992type OrdersGetByMerchantOrderIdResponse struct {
8993	// Kind: Identifies what kind of resource this is. Value: the fixed
8994	// string "content#ordersGetByMerchantOrderIdResponse".
8995	Kind string `json:"kind,omitempty"`
8996
8997	// Order: The requested order.
8998	Order *Order `json:"order,omitempty"`
8999
9000	// ServerResponse contains the HTTP response code and headers from the
9001	// server.
9002	googleapi.ServerResponse `json:"-"`
9003
9004	// ForceSendFields is a list of field names (e.g. "Kind") to
9005	// unconditionally include in API requests. By default, fields with
9006	// empty values are omitted from API requests. However, any non-pointer,
9007	// non-interface field appearing in ForceSendFields will be sent to the
9008	// server regardless of whether the field is empty or not. This may be
9009	// used to include empty fields in Patch requests.
9010	ForceSendFields []string `json:"-"`
9011
9012	// NullFields is a list of field names (e.g. "Kind") to include in API
9013	// requests with the JSON null value. By default, fields with empty
9014	// values are omitted from API requests. However, any field with an
9015	// empty value appearing in NullFields will be sent to the server as
9016	// null. It is an error if a field in this list has a non-empty value.
9017	// This may be used to include null fields in Patch requests.
9018	NullFields []string `json:"-"`
9019}
9020
9021func (s *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
9022	type NoMethod OrdersGetByMerchantOrderIdResponse
9023	raw := NoMethod(*s)
9024	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9025}
9026
9027type OrdersGetTestOrderTemplateResponse struct {
9028	// Kind: Identifies what kind of resource this is. Value: the fixed
9029	// string "content#ordersGetTestOrderTemplateResponse".
9030	Kind string `json:"kind,omitempty"`
9031
9032	// Template: The requested test order template.
9033	Template *TestOrder `json:"template,omitempty"`
9034
9035	// ServerResponse contains the HTTP response code and headers from the
9036	// server.
9037	googleapi.ServerResponse `json:"-"`
9038
9039	// ForceSendFields is a list of field names (e.g. "Kind") to
9040	// unconditionally include in API requests. By default, fields with
9041	// empty values are omitted from API requests. However, any non-pointer,
9042	// non-interface field appearing in ForceSendFields will be sent to the
9043	// server regardless of whether the field is empty or not. This may be
9044	// used to include empty fields in Patch requests.
9045	ForceSendFields []string `json:"-"`
9046
9047	// NullFields is a list of field names (e.g. "Kind") to include in API
9048	// requests with the JSON null value. By default, fields with empty
9049	// values are omitted from API requests. However, any field with an
9050	// empty value appearing in NullFields will be sent to the server as
9051	// null. It is an error if a field in this list has a non-empty value.
9052	// This may be used to include null fields in Patch requests.
9053	NullFields []string `json:"-"`
9054}
9055
9056func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
9057	type NoMethod OrdersGetTestOrderTemplateResponse
9058	raw := NoMethod(*s)
9059	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9060}
9061
9062type OrdersInStoreRefundLineItemRequest struct {
9063	// LineItemId: The ID of the line item to return. Either lineItemId or
9064	// productId is required.
9065	LineItemId string `json:"lineItemId,omitempty"`
9066
9067	// OperationId: The ID of the operation. Unique across all operations
9068	// for a given order.
9069	OperationId string `json:"operationId,omitempty"`
9070
9071	// PriceAmount: The amount to be refunded. This may be pre-tax or
9072	// post-tax depending on the location of the order. Required.
9073	PriceAmount *Price `json:"priceAmount,omitempty"`
9074
9075	// ProductId: The ID of the product to return. This is the REST ID used
9076	// in the products service. Either lineItemId or productId is required.
9077	ProductId string `json:"productId,omitempty"`
9078
9079	// Quantity: The quantity to return and refund.
9080	Quantity int64 `json:"quantity,omitempty"`
9081
9082	// Reason: The reason for the return. Acceptable values are: -
9083	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
9084	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
9085	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
9086	// - "productNotAsDescribed" - "qualityNotAsExpected" -
9087	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9088	// "wrongProductShipped"
9089	Reason string `json:"reason,omitempty"`
9090
9091	// ReasonText: The explanation of the reason.
9092	ReasonText string `json:"reasonText,omitempty"`
9093
9094	// TaxAmount: The amount of tax to be refunded. Required.
9095	TaxAmount *Price `json:"taxAmount,omitempty"`
9096
9097	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9098	// unconditionally include in API requests. By default, fields with
9099	// empty values are omitted from API requests. However, any non-pointer,
9100	// non-interface field appearing in ForceSendFields will be sent to the
9101	// server regardless of whether the field is empty or not. This may be
9102	// used to include empty fields in Patch requests.
9103	ForceSendFields []string `json:"-"`
9104
9105	// NullFields is a list of field names (e.g. "LineItemId") to include in
9106	// API requests with the JSON null value. By default, fields with empty
9107	// values are omitted from API requests. However, any field with an
9108	// empty value appearing in NullFields will be sent to the server as
9109	// null. It is an error if a field in this list has a non-empty value.
9110	// This may be used to include null fields in Patch requests.
9111	NullFields []string `json:"-"`
9112}
9113
9114func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
9115	type NoMethod OrdersInStoreRefundLineItemRequest
9116	raw := NoMethod(*s)
9117	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9118}
9119
9120type OrdersInStoreRefundLineItemResponse struct {
9121	// ExecutionStatus: The status of the execution. Acceptable values are:
9122	// - "duplicate" - "executed"
9123	ExecutionStatus string `json:"executionStatus,omitempty"`
9124
9125	// Kind: Identifies what kind of resource this is. Value: the fixed
9126	// string "content#ordersInStoreRefundLineItemResponse".
9127	Kind string `json:"kind,omitempty"`
9128
9129	// ServerResponse contains the HTTP response code and headers from the
9130	// server.
9131	googleapi.ServerResponse `json:"-"`
9132
9133	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9134	// unconditionally include in API requests. By default, fields with
9135	// empty values are omitted from API requests. However, any non-pointer,
9136	// non-interface field appearing in ForceSendFields will be sent to the
9137	// server regardless of whether the field is empty or not. This may be
9138	// used to include empty fields in Patch requests.
9139	ForceSendFields []string `json:"-"`
9140
9141	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9142	// include in API requests with the JSON null value. By default, fields
9143	// with empty values are omitted from API requests. However, any field
9144	// with an empty value appearing in NullFields will be sent to the
9145	// server as null. It is an error if a field in this list has a
9146	// non-empty value. This may be used to include null fields in Patch
9147	// requests.
9148	NullFields []string `json:"-"`
9149}
9150
9151func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
9152	type NoMethod OrdersInStoreRefundLineItemResponse
9153	raw := NoMethod(*s)
9154	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9155}
9156
9157type OrdersListResponse struct {
9158	// Kind: Identifies what kind of resource this is. Value: the fixed
9159	// string "content#ordersListResponse".
9160	Kind string `json:"kind,omitempty"`
9161
9162	// NextPageToken: The token for the retrieval of the next page of
9163	// orders.
9164	NextPageToken string `json:"nextPageToken,omitempty"`
9165
9166	Resources []*Order `json:"resources,omitempty"`
9167
9168	// ServerResponse contains the HTTP response code and headers from the
9169	// server.
9170	googleapi.ServerResponse `json:"-"`
9171
9172	// ForceSendFields is a list of field names (e.g. "Kind") to
9173	// unconditionally include in API requests. By default, fields with
9174	// empty values are omitted from API requests. However, any non-pointer,
9175	// non-interface field appearing in ForceSendFields will be sent to the
9176	// server regardless of whether the field is empty or not. This may be
9177	// used to include empty fields in Patch requests.
9178	ForceSendFields []string `json:"-"`
9179
9180	// NullFields is a list of field names (e.g. "Kind") to include in API
9181	// requests with the JSON null value. By default, fields with empty
9182	// values are omitted from API requests. However, any field with an
9183	// empty value appearing in NullFields will be sent to the server as
9184	// null. It is an error if a field in this list has a non-empty value.
9185	// This may be used to include null fields in Patch requests.
9186	NullFields []string `json:"-"`
9187}
9188
9189func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
9190	type NoMethod OrdersListResponse
9191	raw := NoMethod(*s)
9192	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9193}
9194
9195type OrdersRefundItemRequest struct {
9196	// Items: The items that are refunded. Either Item or Shipping must be
9197	// provided in the request.
9198	Items []*OrdersCustomBatchRequestEntryRefundItemItem `json:"items,omitempty"`
9199
9200	// OperationId: The ID of the operation. Unique across all operations
9201	// for a given order.
9202	OperationId string `json:"operationId,omitempty"`
9203
9204	// Reason: The reason for the refund. Acceptable values are: -
9205	// "shippingCostAdjustment" - "priceAdjustment" - "taxAdjustment"
9206	// - "feeAdjustment" - "courtesyAdjustment" - "adjustment" -
9207	// "customerCancelled" - "noInventory" - "productNotAsDescribed" -
9208	// "undeliverableShippingAddress" - "wrongProductShipped" -
9209	// "lateShipmentCredit" - "deliveredLateByCarrier" -
9210	// "productArrivedDamaged"
9211	Reason string `json:"reason,omitempty"`
9212
9213	// ReasonText: The explanation of the reason.
9214	ReasonText string `json:"reasonText,omitempty"`
9215
9216	// Shipping: The refund on shipping. Optional, but either Item or
9217	// Shipping must be provided in the request.
9218	Shipping *OrdersCustomBatchRequestEntryRefundItemShipping `json:"shipping,omitempty"`
9219
9220	// ForceSendFields is a list of field names (e.g. "Items") to
9221	// unconditionally include in API requests. By default, fields with
9222	// empty values are omitted from API requests. However, any non-pointer,
9223	// non-interface field appearing in ForceSendFields will be sent to the
9224	// server regardless of whether the field is empty or not. This may be
9225	// used to include empty fields in Patch requests.
9226	ForceSendFields []string `json:"-"`
9227
9228	// NullFields is a list of field names (e.g. "Items") to include in API
9229	// requests with the JSON null value. By default, fields with empty
9230	// values are omitted from API requests. However, any field with an
9231	// empty value appearing in NullFields will be sent to the server as
9232	// null. It is an error if a field in this list has a non-empty value.
9233	// This may be used to include null fields in Patch requests.
9234	NullFields []string `json:"-"`
9235}
9236
9237func (s *OrdersRefundItemRequest) MarshalJSON() ([]byte, error) {
9238	type NoMethod OrdersRefundItemRequest
9239	raw := NoMethod(*s)
9240	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9241}
9242
9243type OrdersRefundItemResponse struct {
9244	// ExecutionStatus: The status of the execution. Acceptable values are:
9245	// - "duplicate" - "executed"
9246	ExecutionStatus string `json:"executionStatus,omitempty"`
9247
9248	// Kind: Identifies what kind of resource this is. Value: the fixed
9249	// string "content#ordersRefundItemResponse".
9250	Kind string `json:"kind,omitempty"`
9251
9252	// ServerResponse contains the HTTP response code and headers from the
9253	// server.
9254	googleapi.ServerResponse `json:"-"`
9255
9256	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9257	// unconditionally include in API requests. By default, fields with
9258	// empty values are omitted from API requests. However, any non-pointer,
9259	// non-interface field appearing in ForceSendFields will be sent to the
9260	// server regardless of whether the field is empty or not. This may be
9261	// used to include empty fields in Patch requests.
9262	ForceSendFields []string `json:"-"`
9263
9264	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9265	// include in API requests with the JSON null value. By default, fields
9266	// with empty values are omitted from API requests. However, any field
9267	// with an empty value appearing in NullFields will be sent to the
9268	// server as null. It is an error if a field in this list has a
9269	// non-empty value. This may be used to include null fields in Patch
9270	// requests.
9271	NullFields []string `json:"-"`
9272}
9273
9274func (s *OrdersRefundItemResponse) MarshalJSON() ([]byte, error) {
9275	type NoMethod OrdersRefundItemResponse
9276	raw := NoMethod(*s)
9277	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9278}
9279
9280type OrdersRefundOrderRequest struct {
9281	// Amount: The amount that is refunded. If this is not the first refund
9282	// for the order, this should be the newly refunded amount.
9283	Amount *MonetaryAmount `json:"amount,omitempty"`
9284
9285	// FullRefund: If true, the full order will be refunded, including
9286	// shipping. If this is true, amount should not be provided and will be
9287	// ignored.
9288	FullRefund bool `json:"fullRefund,omitempty"`
9289
9290	// OperationId: The ID of the operation. Unique across all operations
9291	// for a given order.
9292	OperationId string `json:"operationId,omitempty"`
9293
9294	// Reason: The reason for the refund. Acceptable values are: -
9295	// "courtesyAdjustment" - "other"
9296	Reason string `json:"reason,omitempty"`
9297
9298	// ReasonText: The explanation of the reason.
9299	ReasonText string `json:"reasonText,omitempty"`
9300
9301	// ForceSendFields is a list of field names (e.g. "Amount") to
9302	// unconditionally include in API requests. By default, fields with
9303	// empty values are omitted from API requests. However, any non-pointer,
9304	// non-interface field appearing in ForceSendFields will be sent to the
9305	// server regardless of whether the field is empty or not. This may be
9306	// used to include empty fields in Patch requests.
9307	ForceSendFields []string `json:"-"`
9308
9309	// NullFields is a list of field names (e.g. "Amount") to include in API
9310	// requests with the JSON null value. By default, fields with empty
9311	// values are omitted from API requests. However, any field with an
9312	// empty value appearing in NullFields will be sent to the server as
9313	// null. It is an error if a field in this list has a non-empty value.
9314	// This may be used to include null fields in Patch requests.
9315	NullFields []string `json:"-"`
9316}
9317
9318func (s *OrdersRefundOrderRequest) MarshalJSON() ([]byte, error) {
9319	type NoMethod OrdersRefundOrderRequest
9320	raw := NoMethod(*s)
9321	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9322}
9323
9324type OrdersRefundOrderResponse struct {
9325	// ExecutionStatus: The status of the execution. Acceptable values are:
9326	// - "duplicate" - "executed"
9327	ExecutionStatus string `json:"executionStatus,omitempty"`
9328
9329	// Kind: Identifies what kind of resource this is. Value: the fixed
9330	// string "content#ordersRefundOrderResponse".
9331	Kind string `json:"kind,omitempty"`
9332
9333	// ServerResponse contains the HTTP response code and headers from the
9334	// server.
9335	googleapi.ServerResponse `json:"-"`
9336
9337	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9338	// unconditionally include in API requests. By default, fields with
9339	// empty values are omitted from API requests. However, any non-pointer,
9340	// non-interface field appearing in ForceSendFields will be sent to the
9341	// server regardless of whether the field is empty or not. This may be
9342	// used to include empty fields in Patch requests.
9343	ForceSendFields []string `json:"-"`
9344
9345	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9346	// include in API requests with the JSON null value. By default, fields
9347	// with empty values are omitted from API requests. However, any field
9348	// with an empty value appearing in NullFields will be sent to the
9349	// server as null. It is an error if a field in this list has a
9350	// non-empty value. This may be used to include null fields in Patch
9351	// requests.
9352	NullFields []string `json:"-"`
9353}
9354
9355func (s *OrdersRefundOrderResponse) MarshalJSON() ([]byte, error) {
9356	type NoMethod OrdersRefundOrderResponse
9357	raw := NoMethod(*s)
9358	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9359}
9360
9361type OrdersRejectReturnLineItemRequest struct {
9362	// LineItemId: The ID of the line item to return. Either lineItemId or
9363	// productId is required.
9364	LineItemId string `json:"lineItemId,omitempty"`
9365
9366	// OperationId: The ID of the operation. Unique across all operations
9367	// for a given order.
9368	OperationId string `json:"operationId,omitempty"`
9369
9370	// ProductId: The ID of the product to return. This is the REST ID used
9371	// in the products service. Either lineItemId or productId is required.
9372	ProductId string `json:"productId,omitempty"`
9373
9374	// Quantity: The quantity to return and refund.
9375	Quantity int64 `json:"quantity,omitempty"`
9376
9377	// Reason: The reason for the return. Acceptable values are: -
9378	// "damagedOrUsed" - "missingComponent" - "notEligible" -
9379	// "other" - "outOfReturnWindow"
9380	Reason string `json:"reason,omitempty"`
9381
9382	// ReasonText: The explanation of the reason.
9383	ReasonText string `json:"reasonText,omitempty"`
9384
9385	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9386	// unconditionally include in API requests. By default, fields with
9387	// empty values are omitted from API requests. However, any non-pointer,
9388	// non-interface field appearing in ForceSendFields will be sent to the
9389	// server regardless of whether the field is empty or not. This may be
9390	// used to include empty fields in Patch requests.
9391	ForceSendFields []string `json:"-"`
9392
9393	// NullFields is a list of field names (e.g. "LineItemId") to include in
9394	// API requests with the JSON null value. By default, fields with empty
9395	// values are omitted from API requests. However, any field with an
9396	// empty value appearing in NullFields will be sent to the server as
9397	// null. It is an error if a field in this list has a non-empty value.
9398	// This may be used to include null fields in Patch requests.
9399	NullFields []string `json:"-"`
9400}
9401
9402func (s *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
9403	type NoMethod OrdersRejectReturnLineItemRequest
9404	raw := NoMethod(*s)
9405	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9406}
9407
9408type OrdersRejectReturnLineItemResponse struct {
9409	// ExecutionStatus: The status of the execution. Acceptable values are:
9410	// - "duplicate" - "executed"
9411	ExecutionStatus string `json:"executionStatus,omitempty"`
9412
9413	// Kind: Identifies what kind of resource this is. Value: the fixed
9414	// string "content#ordersRejectReturnLineItemResponse".
9415	Kind string `json:"kind,omitempty"`
9416
9417	// ServerResponse contains the HTTP response code and headers from the
9418	// server.
9419	googleapi.ServerResponse `json:"-"`
9420
9421	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9422	// unconditionally include in API requests. By default, fields with
9423	// empty values are omitted from API requests. However, any non-pointer,
9424	// non-interface field appearing in ForceSendFields will be sent to the
9425	// server regardless of whether the field is empty or not. This may be
9426	// used to include empty fields in Patch requests.
9427	ForceSendFields []string `json:"-"`
9428
9429	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9430	// include in API requests with the JSON null value. By default, fields
9431	// with empty values are omitted from API requests. However, any field
9432	// with an empty value appearing in NullFields will be sent to the
9433	// server as null. It is an error if a field in this list has a
9434	// non-empty value. This may be used to include null fields in Patch
9435	// requests.
9436	NullFields []string `json:"-"`
9437}
9438
9439func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
9440	type NoMethod OrdersRejectReturnLineItemResponse
9441	raw := NoMethod(*s)
9442	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9443}
9444
9445type OrdersReturnRefundLineItemRequest struct {
9446	// LineItemId: The ID of the line item to return. Either lineItemId or
9447	// productId is required.
9448	LineItemId string `json:"lineItemId,omitempty"`
9449
9450	// OperationId: The ID of the operation. Unique across all operations
9451	// for a given order.
9452	OperationId string `json:"operationId,omitempty"`
9453
9454	// PriceAmount: The amount to be refunded. This may be pre-tax or
9455	// post-tax depending on the location of the order. If omitted,
9456	// refundless return is assumed.
9457	PriceAmount *Price `json:"priceAmount,omitempty"`
9458
9459	// ProductId: The ID of the product to return. This is the REST ID used
9460	// in the products service. Either lineItemId or productId is required.
9461	ProductId string `json:"productId,omitempty"`
9462
9463	// Quantity: The quantity to return and refund. Quantity is required.
9464	Quantity int64 `json:"quantity,omitempty"`
9465
9466	// Reason: The reason for the return. Acceptable values are: -
9467	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
9468	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
9469	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
9470	// - "productNotAsDescribed" - "qualityNotAsExpected" -
9471	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9472	// "wrongProductShipped"
9473	Reason string `json:"reason,omitempty"`
9474
9475	// ReasonText: The explanation of the reason.
9476	ReasonText string `json:"reasonText,omitempty"`
9477
9478	// TaxAmount: The amount of tax to be refunded. Optional, but if filled,
9479	// then priceAmount must be set. Calculated automatically if not
9480	// provided.
9481	TaxAmount *Price `json:"taxAmount,omitempty"`
9482
9483	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9484	// unconditionally include in API requests. By default, fields with
9485	// empty values are omitted from API requests. However, any non-pointer,
9486	// non-interface field appearing in ForceSendFields will be sent to the
9487	// server regardless of whether the field is empty or not. This may be
9488	// used to include empty fields in Patch requests.
9489	ForceSendFields []string `json:"-"`
9490
9491	// NullFields is a list of field names (e.g. "LineItemId") to include in
9492	// API requests with the JSON null value. By default, fields with empty
9493	// values are omitted from API requests. However, any field with an
9494	// empty value appearing in NullFields will be sent to the server as
9495	// null. It is an error if a field in this list has a non-empty value.
9496	// This may be used to include null fields in Patch requests.
9497	NullFields []string `json:"-"`
9498}
9499
9500func (s *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
9501	type NoMethod OrdersReturnRefundLineItemRequest
9502	raw := NoMethod(*s)
9503	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9504}
9505
9506type OrdersReturnRefundLineItemResponse struct {
9507	// ExecutionStatus: The status of the execution. Acceptable values are:
9508	// - "duplicate" - "executed"
9509	ExecutionStatus string `json:"executionStatus,omitempty"`
9510
9511	// Kind: Identifies what kind of resource this is. Value: the fixed
9512	// string "content#ordersReturnRefundLineItemResponse".
9513	Kind string `json:"kind,omitempty"`
9514
9515	// ServerResponse contains the HTTP response code and headers from the
9516	// server.
9517	googleapi.ServerResponse `json:"-"`
9518
9519	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9520	// unconditionally include in API requests. By default, fields with
9521	// empty values are omitted from API requests. However, any non-pointer,
9522	// non-interface field appearing in ForceSendFields will be sent to the
9523	// server regardless of whether the field is empty or not. This may be
9524	// used to include empty fields in Patch requests.
9525	ForceSendFields []string `json:"-"`
9526
9527	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9528	// include in API requests with the JSON null value. By default, fields
9529	// with empty values are omitted from API requests. However, any field
9530	// with an empty value appearing in NullFields will be sent to the
9531	// server as null. It is an error if a field in this list has a
9532	// non-empty value. This may be used to include null fields in Patch
9533	// requests.
9534	NullFields []string `json:"-"`
9535}
9536
9537func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
9538	type NoMethod OrdersReturnRefundLineItemResponse
9539	raw := NoMethod(*s)
9540	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9541}
9542
9543type OrdersSetLineItemMetadataRequest struct {
9544	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
9545
9546	// LineItemId: The ID of the line item to set metadata. Either
9547	// lineItemId or productId is required.
9548	LineItemId string `json:"lineItemId,omitempty"`
9549
9550	// OperationId: The ID of the operation. Unique across all operations
9551	// for a given order.
9552	OperationId string `json:"operationId,omitempty"`
9553
9554	// ProductId: The ID of the product to set metadata. This is the REST ID
9555	// used in the products service. Either lineItemId or productId is
9556	// required.
9557	ProductId string `json:"productId,omitempty"`
9558
9559	// ForceSendFields is a list of field names (e.g. "Annotations") to
9560	// unconditionally include in API requests. By default, fields with
9561	// empty values are omitted from API requests. However, any non-pointer,
9562	// non-interface field appearing in ForceSendFields will be sent to the
9563	// server regardless of whether the field is empty or not. This may be
9564	// used to include empty fields in Patch requests.
9565	ForceSendFields []string `json:"-"`
9566
9567	// NullFields is a list of field names (e.g. "Annotations") to include
9568	// in API requests with the JSON null value. By default, fields with
9569	// empty values are omitted from API requests. However, any field with
9570	// an empty value appearing in NullFields will be sent to the server as
9571	// null. It is an error if a field in this list has a non-empty value.
9572	// This may be used to include null fields in Patch requests.
9573	NullFields []string `json:"-"`
9574}
9575
9576func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
9577	type NoMethod OrdersSetLineItemMetadataRequest
9578	raw := NoMethod(*s)
9579	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9580}
9581
9582type OrdersSetLineItemMetadataResponse struct {
9583	// ExecutionStatus: The status of the execution. Acceptable values are:
9584	// - "duplicate" - "executed"
9585	ExecutionStatus string `json:"executionStatus,omitempty"`
9586
9587	// Kind: Identifies what kind of resource this is. Value: the fixed
9588	// string "content#ordersSetLineItemMetadataResponse".
9589	Kind string `json:"kind,omitempty"`
9590
9591	// ServerResponse contains the HTTP response code and headers from the
9592	// server.
9593	googleapi.ServerResponse `json:"-"`
9594
9595	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9596	// unconditionally include in API requests. By default, fields with
9597	// empty values are omitted from API requests. However, any non-pointer,
9598	// non-interface field appearing in ForceSendFields will be sent to the
9599	// server regardless of whether the field is empty or not. This may be
9600	// used to include empty fields in Patch requests.
9601	ForceSendFields []string `json:"-"`
9602
9603	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9604	// include in API requests with the JSON null value. By default, fields
9605	// with empty values are omitted from API requests. However, any field
9606	// with an empty value appearing in NullFields will be sent to the
9607	// server as null. It is an error if a field in this list has a
9608	// non-empty value. This may be used to include null fields in Patch
9609	// requests.
9610	NullFields []string `json:"-"`
9611}
9612
9613func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
9614	type NoMethod OrdersSetLineItemMetadataResponse
9615	raw := NoMethod(*s)
9616	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9617}
9618
9619type OrdersShipLineItemsRequest struct {
9620	// LineItems: Line items to ship.
9621	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
9622
9623	// OperationId: The ID of the operation. Unique across all operations
9624	// for a given order.
9625	OperationId string `json:"operationId,omitempty"`
9626
9627	// ShipmentGroupId: ID of the shipment group. Required for orders that
9628	// use the orderinvoices service.
9629	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
9630
9631	// ShipmentInfos: Shipment information. This field is repeated because a
9632	// single line item can be shipped in several packages (and have several
9633	// tracking IDs).
9634	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
9635
9636	// ForceSendFields is a list of field names (e.g. "LineItems") to
9637	// unconditionally include in API requests. By default, fields with
9638	// empty values are omitted from API requests. However, any non-pointer,
9639	// non-interface field appearing in ForceSendFields will be sent to the
9640	// server regardless of whether the field is empty or not. This may be
9641	// used to include empty fields in Patch requests.
9642	ForceSendFields []string `json:"-"`
9643
9644	// NullFields is a list of field names (e.g. "LineItems") to include in
9645	// API requests with the JSON null value. By default, fields with empty
9646	// values are omitted from API requests. However, any field with an
9647	// empty value appearing in NullFields will be sent to the server as
9648	// null. It is an error if a field in this list has a non-empty value.
9649	// This may be used to include null fields in Patch requests.
9650	NullFields []string `json:"-"`
9651}
9652
9653func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
9654	type NoMethod OrdersShipLineItemsRequest
9655	raw := NoMethod(*s)
9656	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9657}
9658
9659type OrdersShipLineItemsResponse struct {
9660	// ExecutionStatus: The status of the execution. Acceptable values are:
9661	// - "duplicate" - "executed"
9662	ExecutionStatus string `json:"executionStatus,omitempty"`
9663
9664	// Kind: Identifies what kind of resource this is. Value: the fixed
9665	// string "content#ordersShipLineItemsResponse".
9666	Kind string `json:"kind,omitempty"`
9667
9668	// ServerResponse contains the HTTP response code and headers from the
9669	// server.
9670	googleapi.ServerResponse `json:"-"`
9671
9672	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9673	// unconditionally include in API requests. By default, fields with
9674	// empty values are omitted from API requests. However, any non-pointer,
9675	// non-interface field appearing in ForceSendFields will be sent to the
9676	// server regardless of whether the field is empty or not. This may be
9677	// used to include empty fields in Patch requests.
9678	ForceSendFields []string `json:"-"`
9679
9680	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9681	// include in API requests with the JSON null value. By default, fields
9682	// with empty values are omitted from API requests. However, any field
9683	// with an empty value appearing in NullFields will be sent to the
9684	// server as null. It is an error if a field in this list has a
9685	// non-empty value. This may be used to include null fields in Patch
9686	// requests.
9687	NullFields []string `json:"-"`
9688}
9689
9690func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
9691	type NoMethod OrdersShipLineItemsResponse
9692	raw := NoMethod(*s)
9693	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9694}
9695
9696type OrdersUpdateLineItemShippingDetailsRequest struct {
9697	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
9698	// specified only ship by date is updated. Provided date should be
9699	// within 1 year timeframe and can not be a date in the past.
9700	DeliverByDate string `json:"deliverByDate,omitempty"`
9701
9702	// LineItemId: The ID of the line item to set metadata. Either
9703	// lineItemId or productId is required.
9704	LineItemId string `json:"lineItemId,omitempty"`
9705
9706	// OperationId: The ID of the operation. Unique across all operations
9707	// for a given order.
9708	OperationId string `json:"operationId,omitempty"`
9709
9710	// ProductId: The ID of the product to set metadata. This is the REST ID
9711	// used in the products service. Either lineItemId or productId is
9712	// required.
9713	ProductId string `json:"productId,omitempty"`
9714
9715	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
9716	// specified only deliver by date is updated. Provided date should be
9717	// within 1 year timeframe and can not be a date in the past.
9718	ShipByDate string `json:"shipByDate,omitempty"`
9719
9720	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
9721	// unconditionally include in API requests. By default, fields with
9722	// empty values are omitted from API requests. However, any non-pointer,
9723	// non-interface field appearing in ForceSendFields will be sent to the
9724	// server regardless of whether the field is empty or not. This may be
9725	// used to include empty fields in Patch requests.
9726	ForceSendFields []string `json:"-"`
9727
9728	// NullFields is a list of field names (e.g. "DeliverByDate") to include
9729	// in API requests with the JSON null value. By default, fields with
9730	// empty values are omitted from API requests. However, any field with
9731	// an empty value appearing in NullFields will be sent to the server as
9732	// null. It is an error if a field in this list has a non-empty value.
9733	// This may be used to include null fields in Patch requests.
9734	NullFields []string `json:"-"`
9735}
9736
9737func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
9738	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
9739	raw := NoMethod(*s)
9740	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9741}
9742
9743type OrdersUpdateLineItemShippingDetailsResponse struct {
9744	// ExecutionStatus: The status of the execution. Acceptable values are:
9745	// - "duplicate" - "executed"
9746	ExecutionStatus string `json:"executionStatus,omitempty"`
9747
9748	// Kind: Identifies what kind of resource this is. Value: the fixed
9749	// string "content#ordersUpdateLineItemShippingDetailsResponse".
9750	Kind string `json:"kind,omitempty"`
9751
9752	// ServerResponse contains the HTTP response code and headers from the
9753	// server.
9754	googleapi.ServerResponse `json:"-"`
9755
9756	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9757	// unconditionally include in API requests. By default, fields with
9758	// empty values are omitted from API requests. However, any non-pointer,
9759	// non-interface field appearing in ForceSendFields will be sent to the
9760	// server regardless of whether the field is empty or not. This may be
9761	// used to include empty fields in Patch requests.
9762	ForceSendFields []string `json:"-"`
9763
9764	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9765	// include in API requests with the JSON null value. By default, fields
9766	// with empty values are omitted from API requests. However, any field
9767	// with an empty value appearing in NullFields will be sent to the
9768	// server as null. It is an error if a field in this list has a
9769	// non-empty value. This may be used to include null fields in Patch
9770	// requests.
9771	NullFields []string `json:"-"`
9772}
9773
9774func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
9775	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
9776	raw := NoMethod(*s)
9777	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9778}
9779
9780type OrdersUpdateMerchantOrderIdRequest struct {
9781	// MerchantOrderId: The merchant order id to be assigned to the order.
9782	// Must be unique per merchant.
9783	MerchantOrderId string `json:"merchantOrderId,omitempty"`
9784
9785	// OperationId: The ID of the operation. Unique across all operations
9786	// for a given order.
9787	OperationId string `json:"operationId,omitempty"`
9788
9789	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
9790	// unconditionally include in API requests. By default, fields with
9791	// empty values are omitted from API requests. However, any non-pointer,
9792	// non-interface field appearing in ForceSendFields will be sent to the
9793	// server regardless of whether the field is empty or not. This may be
9794	// used to include empty fields in Patch requests.
9795	ForceSendFields []string `json:"-"`
9796
9797	// NullFields is a list of field names (e.g. "MerchantOrderId") to
9798	// include in API requests with the JSON null value. By default, fields
9799	// with empty values are omitted from API requests. However, any field
9800	// with an empty value appearing in NullFields will be sent to the
9801	// server as null. It is an error if a field in this list has a
9802	// non-empty value. This may be used to include null fields in Patch
9803	// requests.
9804	NullFields []string `json:"-"`
9805}
9806
9807func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
9808	type NoMethod OrdersUpdateMerchantOrderIdRequest
9809	raw := NoMethod(*s)
9810	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9811}
9812
9813type OrdersUpdateMerchantOrderIdResponse struct {
9814	// ExecutionStatus: The status of the execution. Acceptable values are:
9815	// - "duplicate" - "executed"
9816	ExecutionStatus string `json:"executionStatus,omitempty"`
9817
9818	// Kind: Identifies what kind of resource this is. Value: the fixed
9819	// string "content#ordersUpdateMerchantOrderIdResponse".
9820	Kind string `json:"kind,omitempty"`
9821
9822	// ServerResponse contains the HTTP response code and headers from the
9823	// server.
9824	googleapi.ServerResponse `json:"-"`
9825
9826	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9827	// unconditionally include in API requests. By default, fields with
9828	// empty values are omitted from API requests. However, any non-pointer,
9829	// non-interface field appearing in ForceSendFields will be sent to the
9830	// server regardless of whether the field is empty or not. This may be
9831	// used to include empty fields in Patch requests.
9832	ForceSendFields []string `json:"-"`
9833
9834	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9835	// include in API requests with the JSON null value. By default, fields
9836	// with empty values are omitted from API requests. However, any field
9837	// with an empty value appearing in NullFields will be sent to the
9838	// server as null. It is an error if a field in this list has a
9839	// non-empty value. This may be used to include null fields in Patch
9840	// requests.
9841	NullFields []string `json:"-"`
9842}
9843
9844func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
9845	type NoMethod OrdersUpdateMerchantOrderIdResponse
9846	raw := NoMethod(*s)
9847	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9848}
9849
9850type OrdersUpdateShipmentRequest struct {
9851	// Carrier: The carrier handling the shipment. Not updated if missing.
9852	// See `shipments[].carrier` in the Orders resource representation for a
9853	// list of acceptable values.
9854	Carrier string `json:"carrier,omitempty"`
9855
9856	// DeliveryDate: Date on which the shipment has been delivered, in ISO
9857	// 8601 format. Optional and can be provided only if `status` is
9858	// `delivered`.
9859	DeliveryDate string `json:"deliveryDate,omitempty"`
9860
9861	// LastPickupDate: Date after which the pickup will expire, in ISO 8601
9862	// format. Required only when order is buy-online-pickup-in-store(BOPIS)
9863	// and `status` is `ready for pickup`.
9864	LastPickupDate string `json:"lastPickupDate,omitempty"`
9865
9866	// OperationId: The ID of the operation. Unique across all operations
9867	// for a given order.
9868	OperationId string `json:"operationId,omitempty"`
9869
9870	// ReadyPickupDate: Date on which the shipment has been ready for
9871	// pickup, in ISO 8601 format. Optional and can be provided only if
9872	// `status` is `ready for pickup`.
9873	ReadyPickupDate string `json:"readyPickupDate,omitempty"`
9874
9875	// ScheduledDeliveryDetails: Delivery details of the shipment if
9876	// scheduling is needed.
9877	ScheduledDeliveryDetails *OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
9878
9879	// ShipmentId: The ID of the shipment.
9880	ShipmentId string `json:"shipmentId,omitempty"`
9881
9882	// Status: New status for the shipment. Not updated if missing.
9883	// Acceptable values are: - "delivered" - "undeliverable" -
9884	// "readyForPickup"
9885	Status string `json:"status,omitempty"`
9886
9887	// TrackingId: The tracking ID for the shipment. Not updated if missing.
9888	TrackingId string `json:"trackingId,omitempty"`
9889
9890	// UndeliveredDate: Date on which the shipment has been undeliverable,
9891	// in ISO 8601 format. Optional and can be provided only if `status` is
9892	// `undeliverable`.
9893	UndeliveredDate string `json:"undeliveredDate,omitempty"`
9894
9895	// ForceSendFields is a list of field names (e.g. "Carrier") to
9896	// unconditionally include in API requests. By default, fields with
9897	// empty values are omitted from API requests. However, any non-pointer,
9898	// non-interface field appearing in ForceSendFields will be sent to the
9899	// server regardless of whether the field is empty or not. This may be
9900	// used to include empty fields in Patch requests.
9901	ForceSendFields []string `json:"-"`
9902
9903	// NullFields is a list of field names (e.g. "Carrier") to include in
9904	// API requests with the JSON null value. By default, fields with empty
9905	// values are omitted from API requests. However, any field with an
9906	// empty value appearing in NullFields will be sent to the server as
9907	// null. It is an error if a field in this list has a non-empty value.
9908	// This may be used to include null fields in Patch requests.
9909	NullFields []string `json:"-"`
9910}
9911
9912func (s *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
9913	type NoMethod OrdersUpdateShipmentRequest
9914	raw := NoMethod(*s)
9915	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9916}
9917
9918type OrdersUpdateShipmentResponse struct {
9919	// ExecutionStatus: The status of the execution. Acceptable values are:
9920	// - "duplicate" - "executed"
9921	ExecutionStatus string `json:"executionStatus,omitempty"`
9922
9923	// Kind: Identifies what kind of resource this is. Value: the fixed
9924	// string "content#ordersUpdateShipmentResponse".
9925	Kind string `json:"kind,omitempty"`
9926
9927	// ServerResponse contains the HTTP response code and headers from the
9928	// server.
9929	googleapi.ServerResponse `json:"-"`
9930
9931	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9932	// unconditionally include in API requests. By default, fields with
9933	// empty values are omitted from API requests. However, any non-pointer,
9934	// non-interface field appearing in ForceSendFields will be sent to the
9935	// server regardless of whether the field is empty or not. This may be
9936	// used to include empty fields in Patch requests.
9937	ForceSendFields []string `json:"-"`
9938
9939	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9940	// include in API requests with the JSON null value. By default, fields
9941	// with empty values are omitted from API requests. However, any field
9942	// with an empty value appearing in NullFields will be sent to the
9943	// server as null. It is an error if a field in this list has a
9944	// non-empty value. This may be used to include null fields in Patch
9945	// requests.
9946	NullFields []string `json:"-"`
9947}
9948
9949func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
9950	type NoMethod OrdersUpdateShipmentResponse
9951	raw := NoMethod(*s)
9952	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9953}
9954
9955type PickupCarrierService struct {
9956	// CarrierName: The name of the pickup carrier (e.g., "UPS").
9957	// Required.
9958	CarrierName string `json:"carrierName,omitempty"`
9959
9960	// ServiceName: The name of the pickup service (e.g., "Access point").
9961	// Required.
9962	ServiceName string `json:"serviceName,omitempty"`
9963
9964	// ForceSendFields is a list of field names (e.g. "CarrierName") to
9965	// unconditionally include in API requests. By default, fields with
9966	// empty values are omitted from API requests. However, any non-pointer,
9967	// non-interface field appearing in ForceSendFields will be sent to the
9968	// server regardless of whether the field is empty or not. This may be
9969	// used to include empty fields in Patch requests.
9970	ForceSendFields []string `json:"-"`
9971
9972	// NullFields is a list of field names (e.g. "CarrierName") to include
9973	// in API requests with the JSON null value. By default, fields with
9974	// empty values are omitted from API requests. However, any field with
9975	// an empty value appearing in NullFields will be sent to the server as
9976	// null. It is an error if a field in this list has a non-empty value.
9977	// This may be used to include null fields in Patch requests.
9978	NullFields []string `json:"-"`
9979}
9980
9981func (s *PickupCarrierService) MarshalJSON() ([]byte, error) {
9982	type NoMethod PickupCarrierService
9983	raw := NoMethod(*s)
9984	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9985}
9986
9987type PickupServicesPickupService struct {
9988	// CarrierName: The name of the carrier (e.g., "UPS"). Always present.
9989	CarrierName string `json:"carrierName,omitempty"`
9990
9991	// Country: The CLDR country code of the carrier (e.g., "US"). Always
9992	// present.
9993	Country string `json:"country,omitempty"`
9994
9995	// ServiceName: The name of the pickup service (e.g., "Access point").
9996	// Always present.
9997	ServiceName string `json:"serviceName,omitempty"`
9998
9999	// ForceSendFields is a list of field names (e.g. "CarrierName") to
10000	// unconditionally include in API requests. By default, fields with
10001	// empty values are omitted from API requests. However, any non-pointer,
10002	// non-interface field appearing in ForceSendFields will be sent to the
10003	// server regardless of whether the field is empty or not. This may be
10004	// used to include empty fields in Patch requests.
10005	ForceSendFields []string `json:"-"`
10006
10007	// NullFields is a list of field names (e.g. "CarrierName") to include
10008	// in API requests with the JSON null value. By default, fields with
10009	// empty values are omitted from API requests. However, any field with
10010	// an empty value appearing in NullFields will be sent to the server as
10011	// null. It is an error if a field in this list has a non-empty value.
10012	// This may be used to include null fields in Patch requests.
10013	NullFields []string `json:"-"`
10014}
10015
10016func (s *PickupServicesPickupService) MarshalJSON() ([]byte, error) {
10017	type NoMethod PickupServicesPickupService
10018	raw := NoMethod(*s)
10019	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10020}
10021
10022type PosCustomBatchRequest struct {
10023	// Entries: The request entries to be processed in the batch.
10024	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
10025
10026	// ForceSendFields is a list of field names (e.g. "Entries") to
10027	// unconditionally include in API requests. By default, fields with
10028	// empty values are omitted from API requests. However, any non-pointer,
10029	// non-interface field appearing in ForceSendFields will be sent to the
10030	// server regardless of whether the field is empty or not. This may be
10031	// used to include empty fields in Patch requests.
10032	ForceSendFields []string `json:"-"`
10033
10034	// NullFields is a list of field names (e.g. "Entries") to include in
10035	// API requests with the JSON null value. By default, fields with empty
10036	// values are omitted from API requests. However, any field with an
10037	// 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 *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
10044	type NoMethod PosCustomBatchRequest
10045	raw := NoMethod(*s)
10046	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10047}
10048
10049type PosCustomBatchRequestEntry struct {
10050	// BatchId: An entry ID, unique within the batch request.
10051	BatchId int64 `json:"batchId,omitempty"`
10052
10053	// Inventory: The inventory to submit. This should be set only if the
10054	// method is `inventory`.
10055	Inventory *PosInventory `json:"inventory,omitempty"`
10056
10057	// MerchantId: The ID of the POS data provider.
10058	MerchantId uint64 `json:"merchantId,omitempty,string"`
10059
10060	// Method: The method of the batch entry. Acceptable values are: -
10061	// "delete" - "get" - "insert" - "inventory" - "sale"
10062	Method string `json:"method,omitempty"`
10063
10064	// Sale: The sale information to submit. This should be set only if the
10065	// method is `sale`.
10066	Sale *PosSale `json:"sale,omitempty"`
10067
10068	// Store: The store information to submit. This should be set only if
10069	// the method is `insert`.
10070	Store *PosStore `json:"store,omitempty"`
10071
10072	// StoreCode: The store code. This should be set only if the method is
10073	// `delete` or `get`.
10074	StoreCode string `json:"storeCode,omitempty"`
10075
10076	// TargetMerchantId: The ID of the account for which to get/submit data.
10077	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
10078
10079	// ForceSendFields is a list of field names (e.g. "BatchId") to
10080	// unconditionally include in API requests. By default, fields with
10081	// empty values are omitted from API requests. However, any non-pointer,
10082	// non-interface field appearing in ForceSendFields will be sent to the
10083	// server regardless of whether the field is empty or not. This may be
10084	// used to include empty fields in Patch requests.
10085	ForceSendFields []string `json:"-"`
10086
10087	// NullFields is a list of field names (e.g. "BatchId") to include in
10088	// API requests with the JSON null value. By default, fields with empty
10089	// values are omitted from API requests. However, any field with an
10090	// empty value appearing in NullFields will be sent to the server as
10091	// null. It is an error if a field in this list has a non-empty value.
10092	// This may be used to include null fields in Patch requests.
10093	NullFields []string `json:"-"`
10094}
10095
10096func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10097	type NoMethod PosCustomBatchRequestEntry
10098	raw := NoMethod(*s)
10099	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10100}
10101
10102type PosCustomBatchResponse struct {
10103	// Entries: The result of the execution of the batch requests.
10104	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
10105
10106	// Kind: Identifies what kind of resource this is. Value: the fixed
10107	// string "content#posCustomBatchResponse".
10108	Kind string `json:"kind,omitempty"`
10109
10110	// ServerResponse contains the HTTP response code and headers from the
10111	// server.
10112	googleapi.ServerResponse `json:"-"`
10113
10114	// ForceSendFields is a list of field names (e.g. "Entries") to
10115	// unconditionally include in API requests. By default, fields with
10116	// empty values are omitted from API requests. However, any non-pointer,
10117	// non-interface field appearing in ForceSendFields will be sent to the
10118	// server regardless of whether the field is empty or not. This may be
10119	// used to include empty fields in Patch requests.
10120	ForceSendFields []string `json:"-"`
10121
10122	// NullFields is a list of field names (e.g. "Entries") to include in
10123	// API requests with the JSON null value. By default, fields with empty
10124	// values are omitted from API requests. However, any field with an
10125	// empty value appearing in NullFields will be sent to the server as
10126	// null. It is an error if a field in this list has a non-empty value.
10127	// This may be used to include null fields in Patch requests.
10128	NullFields []string `json:"-"`
10129}
10130
10131func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
10132	type NoMethod PosCustomBatchResponse
10133	raw := NoMethod(*s)
10134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10135}
10136
10137type PosCustomBatchResponseEntry struct {
10138	// BatchId: The ID of the request entry to which this entry responds.
10139	BatchId int64 `json:"batchId,omitempty"`
10140
10141	// Errors: A list of errors defined if, and only if, the request failed.
10142	Errors *Errors `json:"errors,omitempty"`
10143
10144	// Inventory: The updated inventory information.
10145	Inventory *PosInventory `json:"inventory,omitempty"`
10146
10147	// Kind: Identifies what kind of resource this is. Value: the fixed
10148	// string "content#posCustomBatchResponseEntry"
10149	Kind string `json:"kind,omitempty"`
10150
10151	// Sale: The updated sale information.
10152	Sale *PosSale `json:"sale,omitempty"`
10153
10154	// Store: The retrieved or updated store information.
10155	Store *PosStore `json:"store,omitempty"`
10156
10157	// ForceSendFields is a list of field names (e.g. "BatchId") to
10158	// unconditionally include in API requests. By default, fields with
10159	// empty values are omitted from API requests. However, any non-pointer,
10160	// non-interface field appearing in ForceSendFields will be sent to the
10161	// server regardless of whether the field is empty or not. This may be
10162	// used to include empty fields in Patch requests.
10163	ForceSendFields []string `json:"-"`
10164
10165	// NullFields is a list of field names (e.g. "BatchId") to include in
10166	// API requests with the JSON null value. By default, fields with empty
10167	// values are omitted from API requests. However, any field with an
10168	// empty value appearing in NullFields will be sent to the server as
10169	// null. It is an error if a field in this list has a non-empty value.
10170	// This may be used to include null fields in Patch requests.
10171	NullFields []string `json:"-"`
10172}
10173
10174func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10175	type NoMethod PosCustomBatchResponseEntry
10176	raw := NoMethod(*s)
10177	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10178}
10179
10180type PosDataProviders struct {
10181	// Country: Country code.
10182	Country string `json:"country,omitempty"`
10183
10184	// PosDataProviders: A list of POS data providers.
10185	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
10186
10187	// ForceSendFields is a list of field names (e.g. "Country") to
10188	// unconditionally include in API requests. By default, fields with
10189	// empty values are omitted from API requests. However, any non-pointer,
10190	// non-interface field appearing in ForceSendFields will be sent to the
10191	// server regardless of whether the field is empty or not. This may be
10192	// used to include empty fields in Patch requests.
10193	ForceSendFields []string `json:"-"`
10194
10195	// NullFields is a list of field names (e.g. "Country") to include in
10196	// API requests with the JSON null value. By default, fields with empty
10197	// values are omitted from API requests. However, any field with an
10198	// 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 *PosDataProviders) MarshalJSON() ([]byte, error) {
10205	type NoMethod PosDataProviders
10206	raw := NoMethod(*s)
10207	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10208}
10209
10210type PosDataProvidersPosDataProvider struct {
10211	// DisplayName: The display name of Pos data Provider.
10212	DisplayName string `json:"displayName,omitempty"`
10213
10214	// FullName: The full name of this POS data Provider.
10215	FullName string `json:"fullName,omitempty"`
10216
10217	// ProviderId: The ID of the account.
10218	ProviderId uint64 `json:"providerId,omitempty,string"`
10219
10220	// ForceSendFields is a list of field names (e.g. "DisplayName") to
10221	// unconditionally include in API requests. By default, fields with
10222	// empty values are omitted from API requests. However, any non-pointer,
10223	// non-interface field appearing in ForceSendFields will be sent to the
10224	// server regardless of whether the field is empty or not. This may be
10225	// used to include empty fields in Patch requests.
10226	ForceSendFields []string `json:"-"`
10227
10228	// NullFields is a list of field names (e.g. "DisplayName") to include
10229	// in API requests with the JSON null value. By default, fields with
10230	// empty values are omitted from API requests. However, any field with
10231	// an empty value appearing in NullFields will be sent to the server as
10232	// null. It is an error if a field in this list has a non-empty value.
10233	// This may be used to include null fields in Patch requests.
10234	NullFields []string `json:"-"`
10235}
10236
10237func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
10238	type NoMethod PosDataProvidersPosDataProvider
10239	raw := NoMethod(*s)
10240	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10241}
10242
10243// PosInventory: The absolute quantity of an item available at the given
10244// store.
10245type PosInventory struct {
10246	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10247	// the item.
10248	ContentLanguage string `json:"contentLanguage,omitempty"`
10249
10250	// Gtin: Global Trade Item Number.
10251	Gtin string `json:"gtin,omitempty"`
10252
10253	// ItemId: Required. A unique identifier for the item.
10254	ItemId string `json:"itemId,omitempty"`
10255
10256	// Kind: Identifies what kind of resource this is. Value: the fixed
10257	// string "content#posInventory"
10258	Kind string `json:"kind,omitempty"`
10259
10260	// Price: Required. The current price of the item.
10261	Price *Price `json:"price,omitempty"`
10262
10263	// Quantity: Required. The available quantity of the item.
10264	Quantity int64 `json:"quantity,omitempty,string"`
10265
10266	// StoreCode: Required. The identifier of the merchant's store. Either a
10267	// `storeCode` inserted via the API or the code of the store in Google
10268	// My Business.
10269	StoreCode string `json:"storeCode,omitempty"`
10270
10271	// TargetCountry: Required. The CLDR territory code for the item.
10272	TargetCountry string `json:"targetCountry,omitempty"`
10273
10274	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10275	Timestamp string `json:"timestamp,omitempty"`
10276
10277	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10278	// unconditionally include in API requests. By default, fields with
10279	// empty values are omitted from API requests. However, any non-pointer,
10280	// non-interface field appearing in ForceSendFields will be sent to the
10281	// server regardless of whether the field is empty or not. This may be
10282	// used to include empty fields in Patch requests.
10283	ForceSendFields []string `json:"-"`
10284
10285	// NullFields is a list of field names (e.g. "ContentLanguage") to
10286	// include in API requests with the JSON null value. By default, fields
10287	// with empty values are omitted from API requests. However, any field
10288	// with an empty value appearing in NullFields will be sent to the
10289	// server as null. It is an error if a field in this list has a
10290	// non-empty value. This may be used to include null fields in Patch
10291	// requests.
10292	NullFields []string `json:"-"`
10293}
10294
10295func (s *PosInventory) MarshalJSON() ([]byte, error) {
10296	type NoMethod PosInventory
10297	raw := NoMethod(*s)
10298	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10299}
10300
10301type PosInventoryRequest struct {
10302	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10303	// the item.
10304	ContentLanguage string `json:"contentLanguage,omitempty"`
10305
10306	// Gtin: Global Trade Item Number.
10307	Gtin string `json:"gtin,omitempty"`
10308
10309	// ItemId: Required. A unique identifier for the item.
10310	ItemId string `json:"itemId,omitempty"`
10311
10312	// Price: Required. The current price of the item.
10313	Price *Price `json:"price,omitempty"`
10314
10315	// Quantity: Required. The available quantity of the item.
10316	Quantity int64 `json:"quantity,omitempty,string"`
10317
10318	// StoreCode: Required. The identifier of the merchant's store. Either a
10319	// `storeCode` inserted via the API or the code of the store in Google
10320	// My Business.
10321	StoreCode string `json:"storeCode,omitempty"`
10322
10323	// TargetCountry: Required. The CLDR territory code for the item.
10324	TargetCountry string `json:"targetCountry,omitempty"`
10325
10326	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10327	Timestamp string `json:"timestamp,omitempty"`
10328
10329	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10330	// unconditionally include in API requests. By default, fields with
10331	// empty values are omitted from API requests. However, any non-pointer,
10332	// non-interface field appearing in ForceSendFields will be sent to the
10333	// server regardless of whether the field is empty or not. This may be
10334	// used to include empty fields in Patch requests.
10335	ForceSendFields []string `json:"-"`
10336
10337	// NullFields is a list of field names (e.g. "ContentLanguage") to
10338	// include in API requests with the JSON null value. By default, fields
10339	// with empty values are omitted from API requests. However, any field
10340	// with an empty value appearing in NullFields will be sent to the
10341	// server as null. It is an error if a field in this list has a
10342	// non-empty value. This may be used to include null fields in Patch
10343	// requests.
10344	NullFields []string `json:"-"`
10345}
10346
10347func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
10348	type NoMethod PosInventoryRequest
10349	raw := NoMethod(*s)
10350	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10351}
10352
10353type PosInventoryResponse struct {
10354	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10355	// the item.
10356	ContentLanguage string `json:"contentLanguage,omitempty"`
10357
10358	// Gtin: Global Trade Item Number.
10359	Gtin string `json:"gtin,omitempty"`
10360
10361	// ItemId: Required. A unique identifier for the item.
10362	ItemId string `json:"itemId,omitempty"`
10363
10364	// Kind: Identifies what kind of resource this is. Value: the fixed
10365	// string "content#posInventoryResponse".
10366	Kind string `json:"kind,omitempty"`
10367
10368	// Price: Required. The current price of the item.
10369	Price *Price `json:"price,omitempty"`
10370
10371	// Quantity: Required. The available quantity of the item.
10372	Quantity int64 `json:"quantity,omitempty,string"`
10373
10374	// StoreCode: Required. The identifier of the merchant's store. Either a
10375	// `storeCode` inserted via the API or the code of the store in Google
10376	// My Business.
10377	StoreCode string `json:"storeCode,omitempty"`
10378
10379	// TargetCountry: Required. The CLDR territory code for the item.
10380	TargetCountry string `json:"targetCountry,omitempty"`
10381
10382	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10383	Timestamp string `json:"timestamp,omitempty"`
10384
10385	// ServerResponse contains the HTTP response code and headers from the
10386	// server.
10387	googleapi.ServerResponse `json:"-"`
10388
10389	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10390	// unconditionally include in API requests. By default, fields with
10391	// empty values are omitted from API requests. However, any non-pointer,
10392	// non-interface field appearing in ForceSendFields will be sent to the
10393	// server regardless of whether the field is empty or not. This may be
10394	// used to include empty fields in Patch requests.
10395	ForceSendFields []string `json:"-"`
10396
10397	// NullFields is a list of field names (e.g. "ContentLanguage") to
10398	// include in API requests with the JSON null value. By default, fields
10399	// with empty values are omitted from API requests. However, any field
10400	// with an empty value appearing in NullFields will be sent to the
10401	// server as null. It is an error if a field in this list has a
10402	// non-empty value. This may be used to include null fields in Patch
10403	// requests.
10404	NullFields []string `json:"-"`
10405}
10406
10407func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
10408	type NoMethod PosInventoryResponse
10409	raw := NoMethod(*s)
10410	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10411}
10412
10413type PosListResponse struct {
10414	// Kind: Identifies what kind of resource this is. Value: the fixed
10415	// string "content#posListResponse".
10416	Kind string `json:"kind,omitempty"`
10417
10418	Resources []*PosStore `json:"resources,omitempty"`
10419
10420	// ServerResponse contains the HTTP response code and headers from the
10421	// server.
10422	googleapi.ServerResponse `json:"-"`
10423
10424	// ForceSendFields is a list of field names (e.g. "Kind") to
10425	// unconditionally include in API requests. By default, fields with
10426	// empty values are omitted from API requests. However, any non-pointer,
10427	// non-interface field appearing in ForceSendFields will be sent to the
10428	// server regardless of whether the field is empty or not. This may be
10429	// used to include empty fields in Patch requests.
10430	ForceSendFields []string `json:"-"`
10431
10432	// NullFields is a list of field names (e.g. "Kind") to include in API
10433	// requests with the JSON null value. By default, fields with empty
10434	// values are omitted from API requests. However, any field with an
10435	// empty value appearing in NullFields will be sent to the server as
10436	// null. It is an error if a field in this list has a non-empty value.
10437	// This may be used to include null fields in Patch requests.
10438	NullFields []string `json:"-"`
10439}
10440
10441func (s *PosListResponse) MarshalJSON() ([]byte, error) {
10442	type NoMethod PosListResponse
10443	raw := NoMethod(*s)
10444	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10445}
10446
10447// PosSale: The change of the available quantity of an item at the given
10448// store.
10449type PosSale struct {
10450	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10451	// the item.
10452	ContentLanguage string `json:"contentLanguage,omitempty"`
10453
10454	// Gtin: Global Trade Item Number.
10455	Gtin string `json:"gtin,omitempty"`
10456
10457	// ItemId: Required. A unique identifier for the item.
10458	ItemId string `json:"itemId,omitempty"`
10459
10460	// Kind: Identifies what kind of resource this is. Value: the fixed
10461	// string "content#posSale"
10462	Kind string `json:"kind,omitempty"`
10463
10464	// Price: Required. The price of the item.
10465	Price *Price `json:"price,omitempty"`
10466
10467	// Quantity: Required. The relative change of the available quantity.
10468	// Negative for items returned.
10469	Quantity int64 `json:"quantity,omitempty,string"`
10470
10471	// SaleId: A unique ID to group items from the same sale event.
10472	SaleId string `json:"saleId,omitempty"`
10473
10474	// StoreCode: Required. The identifier of the merchant's store. Either a
10475	// `storeCode` inserted via the API or the code of the store in Google
10476	// My Business.
10477	StoreCode string `json:"storeCode,omitempty"`
10478
10479	// TargetCountry: Required. The CLDR territory code for the item.
10480	TargetCountry string `json:"targetCountry,omitempty"`
10481
10482	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10483	Timestamp string `json:"timestamp,omitempty"`
10484
10485	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10486	// unconditionally include in API requests. By default, fields with
10487	// empty values are omitted from API requests. However, any non-pointer,
10488	// non-interface field appearing in ForceSendFields will be sent to the
10489	// server regardless of whether the field is empty or not. This may be
10490	// used to include empty fields in Patch requests.
10491	ForceSendFields []string `json:"-"`
10492
10493	// NullFields is a list of field names (e.g. "ContentLanguage") to
10494	// include in API requests with the JSON null value. By default, fields
10495	// with empty values are omitted from API requests. However, any field
10496	// with an empty value appearing in NullFields will be sent to the
10497	// server as null. It is an error if a field in this list has a
10498	// non-empty value. This may be used to include null fields in Patch
10499	// requests.
10500	NullFields []string `json:"-"`
10501}
10502
10503func (s *PosSale) MarshalJSON() ([]byte, error) {
10504	type NoMethod PosSale
10505	raw := NoMethod(*s)
10506	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10507}
10508
10509type PosSaleRequest struct {
10510	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10511	// the item.
10512	ContentLanguage string `json:"contentLanguage,omitempty"`
10513
10514	// Gtin: Global Trade Item Number.
10515	Gtin string `json:"gtin,omitempty"`
10516
10517	// ItemId: Required. A unique identifier for the item.
10518	ItemId string `json:"itemId,omitempty"`
10519
10520	// Price: Required. The price of the item.
10521	Price *Price `json:"price,omitempty"`
10522
10523	// Quantity: Required. The relative change of the available quantity.
10524	// Negative for items returned.
10525	Quantity int64 `json:"quantity,omitempty,string"`
10526
10527	// SaleId: A unique ID to group items from the same sale event.
10528	SaleId string `json:"saleId,omitempty"`
10529
10530	// StoreCode: Required. The identifier of the merchant's store. Either a
10531	// `storeCode` inserted via the API or the code of the store in Google
10532	// My Business.
10533	StoreCode string `json:"storeCode,omitempty"`
10534
10535	// TargetCountry: Required. The CLDR territory code for the item.
10536	TargetCountry string `json:"targetCountry,omitempty"`
10537
10538	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10539	Timestamp string `json:"timestamp,omitempty"`
10540
10541	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10542	// unconditionally include in API requests. By default, fields with
10543	// empty values are omitted from API requests. However, any non-pointer,
10544	// non-interface field appearing in ForceSendFields will be sent to the
10545	// server regardless of whether the field is empty or not. This may be
10546	// used to include empty fields in Patch requests.
10547	ForceSendFields []string `json:"-"`
10548
10549	// NullFields is a list of field names (e.g. "ContentLanguage") to
10550	// include in API requests with the JSON null value. By default, fields
10551	// with empty values are omitted from API requests. However, any field
10552	// with an empty value appearing in NullFields will be sent to the
10553	// server as null. It is an error if a field in this list has a
10554	// non-empty value. This may be used to include null fields in Patch
10555	// requests.
10556	NullFields []string `json:"-"`
10557}
10558
10559func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
10560	type NoMethod PosSaleRequest
10561	raw := NoMethod(*s)
10562	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10563}
10564
10565type PosSaleResponse struct {
10566	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10567	// the item.
10568	ContentLanguage string `json:"contentLanguage,omitempty"`
10569
10570	// Gtin: Global Trade Item Number.
10571	Gtin string `json:"gtin,omitempty"`
10572
10573	// ItemId: Required. A unique identifier for the item.
10574	ItemId string `json:"itemId,omitempty"`
10575
10576	// Kind: Identifies what kind of resource this is. Value: the fixed
10577	// string "content#posSaleResponse".
10578	Kind string `json:"kind,omitempty"`
10579
10580	// Price: Required. The price of the item.
10581	Price *Price `json:"price,omitempty"`
10582
10583	// Quantity: Required. The relative change of the available quantity.
10584	// Negative for items returned.
10585	Quantity int64 `json:"quantity,omitempty,string"`
10586
10587	// SaleId: A unique ID to group items from the same sale event.
10588	SaleId string `json:"saleId,omitempty"`
10589
10590	// StoreCode: Required. The identifier of the merchant's store. Either a
10591	// `storeCode` inserted via the API or the code of the store in Google
10592	// My Business.
10593	StoreCode string `json:"storeCode,omitempty"`
10594
10595	// TargetCountry: Required. The CLDR territory code for the item.
10596	TargetCountry string `json:"targetCountry,omitempty"`
10597
10598	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10599	Timestamp string `json:"timestamp,omitempty"`
10600
10601	// ServerResponse contains the HTTP response code and headers from the
10602	// server.
10603	googleapi.ServerResponse `json:"-"`
10604
10605	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10606	// unconditionally include in API requests. By default, fields with
10607	// empty values are omitted from API requests. However, any non-pointer,
10608	// non-interface field appearing in ForceSendFields will be sent to the
10609	// server regardless of whether the field is empty or not. This may be
10610	// used to include empty fields in Patch requests.
10611	ForceSendFields []string `json:"-"`
10612
10613	// NullFields is a list of field names (e.g. "ContentLanguage") to
10614	// include in API requests with the JSON null value. By default, fields
10615	// with empty values are omitted from API requests. However, any field
10616	// with an empty value appearing in NullFields will be sent to the
10617	// server as null. It is an error if a field in this list has a
10618	// non-empty value. This may be used to include null fields in Patch
10619	// requests.
10620	NullFields []string `json:"-"`
10621}
10622
10623func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
10624	type NoMethod PosSaleResponse
10625	raw := NoMethod(*s)
10626	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10627}
10628
10629// PosStore: Store resource.
10630type PosStore struct {
10631	// Kind: Identifies what kind of resource this is. Value: the fixed
10632	// string "content#posStore"
10633	Kind string `json:"kind,omitempty"`
10634
10635	// StoreAddress: Required. The street address of the store.
10636	StoreAddress string `json:"storeAddress,omitempty"`
10637
10638	// StoreCode: Required. A store identifier that is unique for the given
10639	// merchant.
10640	StoreCode string `json:"storeCode,omitempty"`
10641
10642	// ServerResponse contains the HTTP response code and headers from the
10643	// server.
10644	googleapi.ServerResponse `json:"-"`
10645
10646	// ForceSendFields is a list of field names (e.g. "Kind") to
10647	// unconditionally include in API requests. By default, fields with
10648	// empty values are omitted from API requests. However, any non-pointer,
10649	// non-interface field appearing in ForceSendFields will be sent to the
10650	// server regardless of whether the field is empty or not. This may be
10651	// used to include empty fields in Patch requests.
10652	ForceSendFields []string `json:"-"`
10653
10654	// NullFields is a list of field names (e.g. "Kind") to include in API
10655	// requests with the JSON null value. By default, fields with empty
10656	// values are omitted from API requests. However, any field with an
10657	// empty value appearing in NullFields will be sent to the server as
10658	// null. It is an error if a field in this list has a non-empty value.
10659	// This may be used to include null fields in Patch requests.
10660	NullFields []string `json:"-"`
10661}
10662
10663func (s *PosStore) MarshalJSON() ([]byte, error) {
10664	type NoMethod PosStore
10665	raw := NoMethod(*s)
10666	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10667}
10668
10669type PostalCodeGroup struct {
10670	// Country: The CLDR territory code of the country the postal code group
10671	// applies to. Required.
10672	Country string `json:"country,omitempty"`
10673
10674	// Name: The name of the postal code group, referred to in headers.
10675	// Required.
10676	Name string `json:"name,omitempty"`
10677
10678	// PostalCodeRanges: A range of postal codes. Required.
10679	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
10680
10681	// ForceSendFields is a list of field names (e.g. "Country") to
10682	// unconditionally include in API requests. By default, fields with
10683	// empty values are omitted from API requests. However, any non-pointer,
10684	// non-interface field appearing in ForceSendFields will be sent to the
10685	// server regardless of whether the field is empty or not. This may be
10686	// used to include empty fields in Patch requests.
10687	ForceSendFields []string `json:"-"`
10688
10689	// NullFields is a list of field names (e.g. "Country") to include in
10690	// API requests with the JSON null value. By default, fields with empty
10691	// values are omitted from API requests. However, any field with an
10692	// empty value appearing in NullFields will be sent to the server as
10693	// null. It is an error if a field in this list has a non-empty value.
10694	// This may be used to include null fields in Patch requests.
10695	NullFields []string `json:"-"`
10696}
10697
10698func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
10699	type NoMethod PostalCodeGroup
10700	raw := NoMethod(*s)
10701	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10702}
10703
10704type PostalCodeRange struct {
10705	// PostalCodeRangeBegin: A postal code or a pattern of the form
10706	// `prefix*` denoting the inclusive lower bound of the range defining
10707	// the area. Examples values: "94108", "9410*", "9*". Required.
10708	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
10709
10710	// PostalCodeRangeEnd: A postal code or a pattern of the form `prefix*`
10711	// denoting the inclusive upper bound of the range defining the area. It
10712	// must have the same length as `postalCodeRangeBegin`: if
10713	// `postalCodeRangeBegin` is a postal code then `postalCodeRangeEnd`
10714	// must be a postal code too; if `postalCodeRangeBegin` is a pattern
10715	// then `postalCodeRangeEnd` must be a pattern with the same prefix
10716	// length. Optional: if not set, then the area is defined as being all
10717	// the postal codes matching `postalCodeRangeBegin`.
10718	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
10719
10720	// ForceSendFields is a list of field names (e.g.
10721	// "PostalCodeRangeBegin") to unconditionally include in API requests.
10722	// By default, fields with empty values are omitted from API requests.
10723	// However, any non-pointer, non-interface field appearing in
10724	// ForceSendFields will be sent to the server regardless of whether the
10725	// field is empty or not. This may be used to include empty fields in
10726	// Patch requests.
10727	ForceSendFields []string `json:"-"`
10728
10729	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
10730	// include in API requests with the JSON null value. By default, fields
10731	// with empty values are omitted from API requests. However, any field
10732	// with an empty value appearing in NullFields will be sent to the
10733	// server as null. It is an error if a field in this list has a
10734	// non-empty value. This may be used to include null fields in Patch
10735	// requests.
10736	NullFields []string `json:"-"`
10737}
10738
10739func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
10740	type NoMethod PostalCodeRange
10741	raw := NoMethod(*s)
10742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10743}
10744
10745type Price struct {
10746	// Currency: The currency of the price.
10747	Currency string `json:"currency,omitempty"`
10748
10749	// Value: The price represented as a number.
10750	Value string `json:"value,omitempty"`
10751
10752	// ForceSendFields is a list of field names (e.g. "Currency") to
10753	// unconditionally include in API requests. By default, fields with
10754	// empty values are omitted from API requests. However, any non-pointer,
10755	// non-interface field appearing in ForceSendFields will be sent to the
10756	// server regardless of whether the field is empty or not. This may be
10757	// used to include empty fields in Patch requests.
10758	ForceSendFields []string `json:"-"`
10759
10760	// NullFields is a list of field names (e.g. "Currency") to include in
10761	// API requests with the JSON null value. By default, fields with empty
10762	// values are omitted from API requests. However, any field with an
10763	// empty value appearing in NullFields will be sent to the server as
10764	// null. It is an error if a field in this list has a non-empty value.
10765	// This may be used to include null fields in Patch requests.
10766	NullFields []string `json:"-"`
10767}
10768
10769func (s *Price) MarshalJSON() ([]byte, error) {
10770	type NoMethod Price
10771	raw := NoMethod(*s)
10772	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10773}
10774
10775// PriceAmount: The price represented as a number and currency.
10776type PriceAmount struct {
10777	// Currency: The currency of the price.
10778	Currency string `json:"currency,omitempty"`
10779
10780	// Value: The price represented as a number.
10781	Value string `json:"value,omitempty"`
10782
10783	// ForceSendFields is a list of field names (e.g. "Currency") to
10784	// unconditionally include in API requests. By default, fields with
10785	// empty values are omitted from API requests. However, any non-pointer,
10786	// non-interface field appearing in ForceSendFields will be sent to the
10787	// server regardless of whether the field is empty or not. This may be
10788	// used to include empty fields in Patch requests.
10789	ForceSendFields []string `json:"-"`
10790
10791	// NullFields is a list of field names (e.g. "Currency") to include in
10792	// API requests with the JSON null value. By default, fields with empty
10793	// values are omitted from API requests. However, any field with an
10794	// empty value appearing in NullFields will be sent to the server as
10795	// null. It is an error if a field in this list has a non-empty value.
10796	// This may be used to include null fields in Patch requests.
10797	NullFields []string `json:"-"`
10798}
10799
10800func (s *PriceAmount) MarshalJSON() ([]byte, error) {
10801	type NoMethod PriceAmount
10802	raw := NoMethod(*s)
10803	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10804}
10805
10806// Product:  Required product attributes are primarily defined by the
10807// products data specification. See the Products Data Specification Help
10808// Center article for information. Some attributes are country-specific,
10809// so make sure you select the appropriate country in the drop-down
10810// selector at the top of the page. Product data. After inserting,
10811// updating, or deleting a product, it may take several minutes before
10812// changes take effect.
10813type Product struct {
10814	// AdditionalImageLinks: Additional URLs of images of the item.
10815	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
10816
10817	// AdditionalSizeType: Additional cut of the item. Used together with
10818	// size_type to represent combined size types for apparel items.
10819	AdditionalSizeType string `json:"additionalSizeType,omitempty"`
10820
10821	// AdsGrouping: Used to group items in an arbitrary way. Only for CPA%,
10822	// discouraged otherwise.
10823	AdsGrouping string `json:"adsGrouping,omitempty"`
10824
10825	// AdsLabels: Similar to ads_grouping, but only works on CPC.
10826	AdsLabels []string `json:"adsLabels,omitempty"`
10827
10828	// AdsRedirect: Allows advertisers to override the item URL when the
10829	// product is shown within the context of Product Ads.
10830	AdsRedirect string `json:"adsRedirect,omitempty"`
10831
10832	// Adult: Should be set to true if the item is targeted towards adults.
10833	Adult bool `json:"adult,omitempty"`
10834
10835	// AgeGroup: Target age group of the item.
10836	AgeGroup string `json:"ageGroup,omitempty"`
10837
10838	// Availability: Availability status of the item.
10839	Availability string `json:"availability,omitempty"`
10840
10841	// AvailabilityDate: The day a pre-ordered product becomes available for
10842	// delivery, in ISO 8601 format.
10843	AvailabilityDate string `json:"availabilityDate,omitempty"`
10844
10845	// Brand: Brand of the item.
10846	Brand string `json:"brand,omitempty"`
10847
10848	// CanonicalLink: URL for the canonical version of your item's landing
10849	// page.
10850	CanonicalLink string `json:"canonicalLink,omitempty"`
10851
10852	// Channel: Required. The item's channel (online or local). Acceptable
10853	// values are: - "local" - "online"
10854	Channel string `json:"channel,omitempty"`
10855
10856	// Color: Color of the item.
10857	Color string `json:"color,omitempty"`
10858
10859	// Condition: Condition or state of the item.
10860	Condition string `json:"condition,omitempty"`
10861
10862	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10863	// the item.
10864	ContentLanguage string `json:"contentLanguage,omitempty"`
10865
10866	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
10867	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
10868
10869	// CustomAttributes: A list of custom (merchant-provided) attributes. It
10870	// can also be used for submitting any attribute of the feed
10871	// specification in its generic form (e.g., `{ "name": "size type",
10872	// "value": "regular" }`). This is useful for submitting attributes not
10873	// explicitly exposed by the API, such as additional attributes used for
10874	// Buy on Google (formerly known as Shopping Actions).
10875	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
10876
10877	// CustomLabel0: Custom label 0 for custom grouping of items in a
10878	// Shopping campaign.
10879	CustomLabel0 string `json:"customLabel0,omitempty"`
10880
10881	// CustomLabel1: Custom label 1 for custom grouping of items in a
10882	// Shopping campaign.
10883	CustomLabel1 string `json:"customLabel1,omitempty"`
10884
10885	// CustomLabel2: Custom label 2 for custom grouping of items in a
10886	// Shopping campaign.
10887	CustomLabel2 string `json:"customLabel2,omitempty"`
10888
10889	// CustomLabel3: Custom label 3 for custom grouping of items in a
10890	// Shopping campaign.
10891	CustomLabel3 string `json:"customLabel3,omitempty"`
10892
10893	// CustomLabel4: Custom label 4 for custom grouping of items in a
10894	// Shopping campaign.
10895	CustomLabel4 string `json:"customLabel4,omitempty"`
10896
10897	// Description: Description of the item.
10898	Description string `json:"description,omitempty"`
10899
10900	// DisplayAdsId: An identifier for an item for dynamic remarketing
10901	// campaigns.
10902	DisplayAdsId string `json:"displayAdsId,omitempty"`
10903
10904	// DisplayAdsLink: URL directly to your item's landing page for dynamic
10905	// remarketing campaigns.
10906	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
10907
10908	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
10909	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
10910
10911	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
10912	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
10913
10914	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
10915	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
10916
10917	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
10918	// directive 2010/30/EU.
10919	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
10920
10921	// ExcludedDestinations: The list of destinations to exclude for this
10922	// target (corresponds to unchecked check boxes in Merchant Center).
10923	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
10924
10925	// ExpirationDate: Date on which the item should expire, as specified
10926	// upon insertion, in ISO 8601 format. The actual expiration date in
10927	// Google Shopping is exposed in `productstatuses` as
10928	// `googleExpirationDate` and might be earlier if `expirationDate` is
10929	// too far in the future.
10930	ExpirationDate string `json:"expirationDate,omitempty"`
10931
10932	// Gender: Target gender of the item.
10933	Gender string `json:"gender,omitempty"`
10934
10935	// GoogleProductCategory: Google's category of the item (see Google
10936	// product taxonomy
10937	// (https://support.google.com/merchants/answer/1705911)). When querying
10938	// products, this field will contain the user provided value. There is
10939	// currently no way to get back the auto assigned google product
10940	// categories through the API.
10941	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
10942
10943	// Gtin: Global Trade Item Number (GTIN) of the item.
10944	Gtin string `json:"gtin,omitempty"`
10945
10946	// Id: The REST ID of the product. Content API methods that operate on
10947	// products take this as their `productId` parameter. The REST ID for a
10948	// product is of the form channel:contentLanguage: targetCountry:
10949	// offerId.
10950	Id string `json:"id,omitempty"`
10951
10952	// IdentifierExists: False when the item does not have unique product
10953	// identifiers appropriate to its category, such as GTIN, MPN, and
10954	// brand. Required according to the Unique Product Identifier Rules for
10955	// all target countries except for Canada.
10956	IdentifierExists bool `json:"identifierExists,omitempty"`
10957
10958	// ImageLink: URL of an image of the item.
10959	ImageLink string `json:"imageLink,omitempty"`
10960
10961	// IncludedDestinations: The list of destinations to include for this
10962	// target (corresponds to checked check boxes in Merchant Center).
10963	// Default destinations are always included unless provided in
10964	// `excludedDestinations`.
10965	IncludedDestinations []string `json:"includedDestinations,omitempty"`
10966
10967	// Installment: Number and amount of installments to pay for an item.
10968	Installment *Installment `json:"installment,omitempty"`
10969
10970	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
10971	// a custom grouping of different products sold by a merchant for a
10972	// single price.
10973	IsBundle bool `json:"isBundle,omitempty"`
10974
10975	// ItemGroupId: Shared identifier for all variants of the same product.
10976	ItemGroupId string `json:"itemGroupId,omitempty"`
10977
10978	// Kind: Identifies what kind of resource this is. Value: the fixed
10979	// string "content#product"
10980	Kind string `json:"kind,omitempty"`
10981
10982	// Link: URL directly linking to your item's page on your website.
10983	Link string `json:"link,omitempty"`
10984
10985	// LoyaltyPoints: Loyalty points that users receive after purchasing the
10986	// item. Japan only.
10987	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
10988
10989	// Material: The material of which the item is made.
10990	Material string `json:"material,omitempty"`
10991
10992	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
10993	// EU directive 2010/30/EU.
10994	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
10995
10996	// MaxHandlingTime: Maximal product handling time (in business days).
10997	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
10998
10999	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
11000	// EU directive 2010/30/EU.
11001	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
11002
11003	// MinHandlingTime: Minimal product handling time (in business days).
11004	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
11005
11006	// MobileLink: URL for the mobile-optimized version of your item's
11007	// landing page.
11008	MobileLink string `json:"mobileLink,omitempty"`
11009
11010	// Mpn: Manufacturer Part Number (MPN) of the item.
11011	Mpn string `json:"mpn,omitempty"`
11012
11013	// Multipack: The number of identical products in a merchant-defined
11014	// multipack.
11015	Multipack int64 `json:"multipack,omitempty,string"`
11016
11017	// OfferId: Required. A unique identifier for the item. Leading and
11018	// trailing whitespaces are stripped and multiple whitespaces are
11019	// replaced by a single whitespace upon submission. Only valid unicode
11020	// characters are accepted. See the products feed specification for
11021	// details. *Note:* Content API methods that operate on products take
11022	// the REST ID of the product, *not* this identifier.
11023	OfferId string `json:"offerId,omitempty"`
11024
11025	// Pattern: The item's pattern (e.g. polka dots).
11026	Pattern string `json:"pattern,omitempty"`
11027
11028	// Price: Price of the item.
11029	Price *Price `json:"price,omitempty"`
11030
11031	// ProductDetails: Technical specification or additional product
11032	// details.
11033	ProductDetails []*ProductProductDetail `json:"productDetails,omitempty"`
11034
11035	// ProductHighlights: Bullet points describing the most relevant
11036	// highlights of a product.
11037	ProductHighlights []string `json:"productHighlights,omitempty"`
11038
11039	// ProductTypes: Categories of the item (formatted as in products data
11040	// specification).
11041	ProductTypes []string `json:"productTypes,omitempty"`
11042
11043	// PromotionIds: The unique ID of a promotion.
11044	PromotionIds []string `json:"promotionIds,omitempty"`
11045
11046	// SalePrice: Advertised sale price of the item.
11047	SalePrice *Price `json:"salePrice,omitempty"`
11048
11049	// SalePriceEffectiveDate: Date range during which the item is on sale
11050	// (see products data specification ).
11051	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
11052
11053	// SellOnGoogleQuantity: The quantity of the product that is available
11054	// for selling on Google. Supported only for online products.
11055	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
11056
11057	// Shipping: Shipping rules.
11058	Shipping []*ProductShipping `json:"shipping,omitempty"`
11059
11060	// ShippingHeight: Height of the item for shipping.
11061	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
11062
11063	// ShippingLabel: The shipping label of the product, used to group
11064	// product in account-level shipping rules.
11065	ShippingLabel string `json:"shippingLabel,omitempty"`
11066
11067	// ShippingLength: Length of the item for shipping.
11068	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
11069
11070	// ShippingWeight: Weight of the item for shipping.
11071	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
11072
11073	// ShippingWidth: Width of the item for shipping.
11074	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
11075
11076	// ShoppingAdsExcludedCountries: List of country codes (ISO 3166-1
11077	// alpha-2) to exclude the offer from Shopping Ads destination.
11078	// Countries from this list are removed from countries configured in MC
11079	// feed settings.
11080	ShoppingAdsExcludedCountries []string `json:"shoppingAdsExcludedCountries,omitempty"`
11081
11082	// SizeSystem: System in which the size is specified. Recommended for
11083	// apparel items.
11084	SizeSystem string `json:"sizeSystem,omitempty"`
11085
11086	// SizeType: The cut of the item. Recommended for apparel items.
11087	SizeType string `json:"sizeType,omitempty"`
11088
11089	// Sizes: Size of the item. Only one value is allowed. For variants with
11090	// different sizes, insert a separate product for each size with the
11091	// same `itemGroupId` value (see size definition).
11092	Sizes []string `json:"sizes,omitempty"`
11093
11094	// Source: The source of the offer, i.e., how the offer was created.
11095	// Acceptable values are: - "api" - "crawl" - "feed"
11096	Source string `json:"source,omitempty"`
11097
11098	// SubscriptionCost: Number of periods (months or years) and amount of
11099	// payment per period for an item with an associated subscription
11100	// contract.
11101	SubscriptionCost *ProductSubscriptionCost `json:"subscriptionCost,omitempty"`
11102
11103	// TargetCountry: Required. The CLDR territory code for the item.
11104	TargetCountry string `json:"targetCountry,omitempty"`
11105
11106	// TaxCategory: The tax category of the product, used to configure
11107	// detailed tax nexus in account-level tax settings.
11108	TaxCategory string `json:"taxCategory,omitempty"`
11109
11110	// Taxes: Tax information.
11111	Taxes []*ProductTax `json:"taxes,omitempty"`
11112
11113	// Title: Title of the item.
11114	Title string `json:"title,omitempty"`
11115
11116	// TransitTimeLabel: The transit time label of the product, used to
11117	// group product in account-level transit time tables.
11118	TransitTimeLabel string `json:"transitTimeLabel,omitempty"`
11119
11120	// UnitPricingBaseMeasure: The preference of the denominator of the unit
11121	// price.
11122	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
11123
11124	// UnitPricingMeasure: The measure and dimension of an item.
11125	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
11126
11127	// ServerResponse contains the HTTP response code and headers from the
11128	// server.
11129	googleapi.ServerResponse `json:"-"`
11130
11131	// ForceSendFields is a list of field names (e.g.
11132	// "AdditionalImageLinks") to unconditionally include in API requests.
11133	// By default, fields with empty values are omitted from API requests.
11134	// However, any non-pointer, non-interface field appearing in
11135	// ForceSendFields will be sent to the server regardless of whether the
11136	// field is empty or not. This may be used to include empty fields in
11137	// Patch requests.
11138	ForceSendFields []string `json:"-"`
11139
11140	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
11141	// include in API requests with the JSON null value. By default, fields
11142	// with empty values are omitted from API requests. However, any field
11143	// with an empty value appearing in NullFields will be sent to the
11144	// server as null. It is an error if a field in this list has a
11145	// non-empty value. This may be used to include null fields in Patch
11146	// requests.
11147	NullFields []string `json:"-"`
11148}
11149
11150func (s *Product) MarshalJSON() ([]byte, error) {
11151	type NoMethod Product
11152	raw := NoMethod(*s)
11153	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11154}
11155
11156func (s *Product) UnmarshalJSON(data []byte) error {
11157	type NoMethod Product
11158	var s1 struct {
11159		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
11160		*NoMethod
11161	}
11162	s1.NoMethod = (*NoMethod)(s)
11163	if err := json.Unmarshal(data, &s1); err != nil {
11164		return err
11165	}
11166	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
11167	return nil
11168}
11169
11170type ProductAmount struct {
11171	// PriceAmount: The pre-tax or post-tax price depending on the location
11172	// of the order.
11173	PriceAmount *Price `json:"priceAmount,omitempty"`
11174
11175	// RemittedTaxAmount: Remitted tax value.
11176	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
11177
11178	// TaxAmount: Tax value.
11179	TaxAmount *Price `json:"taxAmount,omitempty"`
11180
11181	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
11182	// unconditionally include in API requests. By default, fields with
11183	// empty values are omitted from API requests. However, any non-pointer,
11184	// non-interface field appearing in ForceSendFields will be sent to the
11185	// server regardless of whether the field is empty or not. This may be
11186	// used to include empty fields in Patch requests.
11187	ForceSendFields []string `json:"-"`
11188
11189	// NullFields is a list of field names (e.g. "PriceAmount") to include
11190	// in API requests with the JSON null value. By default, fields with
11191	// empty values are omitted from API requests. However, any field with
11192	// an empty value appearing in NullFields will be sent to the server as
11193	// null. It is an error if a field in this list has a non-empty value.
11194	// This may be used to include null fields in Patch requests.
11195	NullFields []string `json:"-"`
11196}
11197
11198func (s *ProductAmount) MarshalJSON() ([]byte, error) {
11199	type NoMethod ProductAmount
11200	raw := NoMethod(*s)
11201	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11202}
11203
11204type ProductProductDetail struct {
11205	// AttributeName: The name of the product detail.
11206	AttributeName string `json:"attributeName,omitempty"`
11207
11208	// AttributeValue: The value of the product detail.
11209	AttributeValue string `json:"attributeValue,omitempty"`
11210
11211	// SectionName: The section header used to group a set of product
11212	// details.
11213	SectionName string `json:"sectionName,omitempty"`
11214
11215	// ForceSendFields is a list of field names (e.g. "AttributeName") to
11216	// unconditionally include in API requests. By default, fields with
11217	// empty values are omitted from API requests. However, any non-pointer,
11218	// non-interface field appearing in ForceSendFields will be sent to the
11219	// server regardless of whether the field is empty or not. This may be
11220	// used to include empty fields in Patch requests.
11221	ForceSendFields []string `json:"-"`
11222
11223	// NullFields is a list of field names (e.g. "AttributeName") to include
11224	// in API requests with the JSON null value. By default, fields with
11225	// empty values are omitted from API requests. However, any field with
11226	// an empty value appearing in NullFields will be sent to the server as
11227	// null. It is an error if a field in this list has a non-empty value.
11228	// This may be used to include null fields in Patch requests.
11229	NullFields []string `json:"-"`
11230}
11231
11232func (s *ProductProductDetail) MarshalJSON() ([]byte, error) {
11233	type NoMethod ProductProductDetail
11234	raw := NoMethod(*s)
11235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11236}
11237
11238type ProductShipping struct {
11239	// Country: The CLDR territory code of the country to which an item will
11240	// ship.
11241	Country string `json:"country,omitempty"`
11242
11243	// LocationGroupName: The location where the shipping is applicable,
11244	// represented by a location group name.
11245	LocationGroupName string `json:"locationGroupName,omitempty"`
11246
11247	// LocationId: The numeric ID of a location that the shipping rate
11248	// applies to as defined in the AdWords API.
11249	LocationId int64 `json:"locationId,omitempty,string"`
11250
11251	// PostalCode: The postal code range that the shipping rate applies to,
11252	// represented by a postal code, a postal code prefix followed by a *
11253	// wildcard, a range between two postal codes or two postal code
11254	// prefixes of equal length.
11255	PostalCode string `json:"postalCode,omitempty"`
11256
11257	// Price: Fixed shipping price, represented as a number.
11258	Price *Price `json:"price,omitempty"`
11259
11260	// Region: The geographic region to which a shipping rate applies.
11261	Region string `json:"region,omitempty"`
11262
11263	// Service: A free-form description of the service class or delivery
11264	// speed.
11265	Service string `json:"service,omitempty"`
11266
11267	// ForceSendFields is a list of field names (e.g. "Country") to
11268	// unconditionally include in API requests. By default, fields with
11269	// empty values are omitted from API requests. However, any non-pointer,
11270	// non-interface field appearing in ForceSendFields will be sent to the
11271	// server regardless of whether the field is empty or not. This may be
11272	// used to include empty fields in Patch requests.
11273	ForceSendFields []string `json:"-"`
11274
11275	// NullFields is a list of field names (e.g. "Country") to include in
11276	// API requests with the JSON null value. By default, fields with empty
11277	// values are omitted from API requests. However, any field with an
11278	// empty value appearing in NullFields will be sent to the server as
11279	// null. It is an error if a field in this list has a non-empty value.
11280	// This may be used to include null fields in Patch requests.
11281	NullFields []string `json:"-"`
11282}
11283
11284func (s *ProductShipping) MarshalJSON() ([]byte, error) {
11285	type NoMethod ProductShipping
11286	raw := NoMethod(*s)
11287	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11288}
11289
11290type ProductShippingDimension struct {
11291	// Unit: The unit of value.
11292	Unit string `json:"unit,omitempty"`
11293
11294	// Value: The dimension of the product used to calculate the shipping
11295	// cost of the item.
11296	Value float64 `json:"value,omitempty"`
11297
11298	// ForceSendFields is a list of field names (e.g. "Unit") to
11299	// unconditionally include in API requests. By default, fields with
11300	// empty values are omitted from API requests. However, any non-pointer,
11301	// non-interface field appearing in ForceSendFields will be sent to the
11302	// server regardless of whether the field is empty or not. This may be
11303	// used to include empty fields in Patch requests.
11304	ForceSendFields []string `json:"-"`
11305
11306	// NullFields is a list of field names (e.g. "Unit") to include in API
11307	// requests with the JSON null value. By default, fields with empty
11308	// values are omitted from API requests. However, any field with an
11309	// empty value appearing in NullFields will be sent to the server as
11310	// null. It is an error if a field in this list has a non-empty value.
11311	// This may be used to include null fields in Patch requests.
11312	NullFields []string `json:"-"`
11313}
11314
11315func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
11316	type NoMethod ProductShippingDimension
11317	raw := NoMethod(*s)
11318	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11319}
11320
11321func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
11322	type NoMethod ProductShippingDimension
11323	var s1 struct {
11324		Value gensupport.JSONFloat64 `json:"value"`
11325		*NoMethod
11326	}
11327	s1.NoMethod = (*NoMethod)(s)
11328	if err := json.Unmarshal(data, &s1); err != nil {
11329		return err
11330	}
11331	s.Value = float64(s1.Value)
11332	return nil
11333}
11334
11335type ProductShippingWeight struct {
11336	// Unit: The unit of value.
11337	Unit string `json:"unit,omitempty"`
11338
11339	// Value: The weight of the product used to calculate the shipping cost
11340	// of the item.
11341	Value float64 `json:"value,omitempty"`
11342
11343	// ForceSendFields is a list of field names (e.g. "Unit") to
11344	// unconditionally include in API requests. By default, fields with
11345	// empty values are omitted from API requests. However, any non-pointer,
11346	// non-interface field appearing in ForceSendFields will be sent to the
11347	// server regardless of whether the field is empty or not. This may be
11348	// used to include empty fields in Patch requests.
11349	ForceSendFields []string `json:"-"`
11350
11351	// NullFields is a list of field names (e.g. "Unit") to include in API
11352	// requests with the JSON null value. By default, fields with empty
11353	// values are omitted from API requests. However, any field with an
11354	// empty value appearing in NullFields will be sent to the server as
11355	// null. It is an error if a field in this list has a non-empty value.
11356	// This may be used to include null fields in Patch requests.
11357	NullFields []string `json:"-"`
11358}
11359
11360func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
11361	type NoMethod ProductShippingWeight
11362	raw := NoMethod(*s)
11363	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11364}
11365
11366func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
11367	type NoMethod ProductShippingWeight
11368	var s1 struct {
11369		Value gensupport.JSONFloat64 `json:"value"`
11370		*NoMethod
11371	}
11372	s1.NoMethod = (*NoMethod)(s)
11373	if err := json.Unmarshal(data, &s1); err != nil {
11374		return err
11375	}
11376	s.Value = float64(s1.Value)
11377	return nil
11378}
11379
11380// ProductStatus: The status of a product, i.e., information about a
11381// product computed asynchronously.
11382type ProductStatus struct {
11383	// CreationDate: Date on which the item has been created, in ISO 8601
11384	// format.
11385	CreationDate string `json:"creationDate,omitempty"`
11386
11387	// DestinationStatuses: The intended destinations for the product.
11388	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
11389
11390	// GoogleExpirationDate: Date on which the item expires in Google
11391	// Shopping, in ISO 8601 format.
11392	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
11393
11394	// ItemLevelIssues: A list of all issues associated with the product.
11395	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
11396
11397	// Kind: Identifies what kind of resource this is. Value: the fixed
11398	// string "content#productStatus"
11399	Kind string `json:"kind,omitempty"`
11400
11401	// LastUpdateDate: Date on which the item has been last updated, in ISO
11402	// 8601 format.
11403	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
11404
11405	// Link: The link to the product.
11406	Link string `json:"link,omitempty"`
11407
11408	// ProductId: The ID of the product for which status is reported.
11409	ProductId string `json:"productId,omitempty"`
11410
11411	// Title: The title of the product.
11412	Title string `json:"title,omitempty"`
11413
11414	// ServerResponse contains the HTTP response code and headers from the
11415	// server.
11416	googleapi.ServerResponse `json:"-"`
11417
11418	// ForceSendFields is a list of field names (e.g. "CreationDate") to
11419	// unconditionally include in API requests. By default, fields with
11420	// empty values are omitted from API requests. However, any non-pointer,
11421	// non-interface field appearing in ForceSendFields will be sent to the
11422	// server regardless of whether the field is empty or not. This may be
11423	// used to include empty fields in Patch requests.
11424	ForceSendFields []string `json:"-"`
11425
11426	// NullFields is a list of field names (e.g. "CreationDate") to include
11427	// in API requests with the JSON null value. By default, fields with
11428	// empty values are omitted from API requests. However, any field with
11429	// an empty value appearing in NullFields will be sent to the server as
11430	// null. It is an error if a field in this list has a non-empty value.
11431	// This may be used to include null fields in Patch requests.
11432	NullFields []string `json:"-"`
11433}
11434
11435func (s *ProductStatus) MarshalJSON() ([]byte, error) {
11436	type NoMethod ProductStatus
11437	raw := NoMethod(*s)
11438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11439}
11440
11441type ProductStatusDestinationStatus struct {
11442	// ApprovedCountries: List of country codes (ISO 3166-1 alpha-2) where
11443	// the offer is approved.
11444	ApprovedCountries []string `json:"approvedCountries,omitempty"`
11445
11446	// Destination: The name of the destination
11447	Destination string `json:"destination,omitempty"`
11448
11449	// DisapprovedCountries: List of country codes (ISO 3166-1 alpha-2)
11450	// where the offer is disapproved.
11451	DisapprovedCountries []string `json:"disapprovedCountries,omitempty"`
11452
11453	// PendingCountries: List of country codes (ISO 3166-1 alpha-2) where
11454	// the offer is pending approval.
11455	PendingCountries []string `json:"pendingCountries,omitempty"`
11456
11457	// Status: Destination approval status in `targetCountry` of the offer.
11458	Status string `json:"status,omitempty"`
11459
11460	// ForceSendFields is a list of field names (e.g. "ApprovedCountries")
11461	// to unconditionally include in API requests. By default, fields with
11462	// empty values are omitted from API requests. However, any non-pointer,
11463	// non-interface field appearing in ForceSendFields will be sent to the
11464	// server regardless of whether the field is empty or not. This may be
11465	// used to include empty fields in Patch requests.
11466	ForceSendFields []string `json:"-"`
11467
11468	// NullFields is a list of field names (e.g. "ApprovedCountries") to
11469	// include in API requests with the JSON null value. By default, fields
11470	// with empty values are omitted from API requests. However, any field
11471	// with an empty value appearing in NullFields will be sent to the
11472	// server as null. It is an error if a field in this list has a
11473	// non-empty value. This may be used to include null fields in Patch
11474	// requests.
11475	NullFields []string `json:"-"`
11476}
11477
11478func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
11479	type NoMethod ProductStatusDestinationStatus
11480	raw := NoMethod(*s)
11481	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11482}
11483
11484type ProductStatusItemLevelIssue struct {
11485	// ApplicableCountries: List of country codes (ISO 3166-1 alpha-2) where
11486	// issue applies to the offer.
11487	ApplicableCountries []string `json:"applicableCountries,omitempty"`
11488
11489	// AttributeName: The attribute's name, if the issue is caused by a
11490	// single attribute.
11491	AttributeName string `json:"attributeName,omitempty"`
11492
11493	// Code: The error code of the issue.
11494	Code string `json:"code,omitempty"`
11495
11496	// Description: A short issue description in English.
11497	Description string `json:"description,omitempty"`
11498
11499	// Destination: The destination the issue applies to.
11500	Destination string `json:"destination,omitempty"`
11501
11502	// Detail: A detailed issue description in English.
11503	Detail string `json:"detail,omitempty"`
11504
11505	// Documentation: The URL of a web page to help with resolving this
11506	// issue.
11507	Documentation string `json:"documentation,omitempty"`
11508
11509	// Resolution: Whether the issue can be resolved by the merchant.
11510	Resolution string `json:"resolution,omitempty"`
11511
11512	// Servability: How this issue affects serving of the offer.
11513	Servability string `json:"servability,omitempty"`
11514
11515	// ForceSendFields is a list of field names (e.g. "ApplicableCountries")
11516	// to unconditionally include in API requests. By default, fields with
11517	// empty values are omitted from API requests. However, any non-pointer,
11518	// non-interface field appearing in ForceSendFields will be sent to the
11519	// server regardless of whether the field is empty or not. This may be
11520	// used to include empty fields in Patch requests.
11521	ForceSendFields []string `json:"-"`
11522
11523	// NullFields is a list of field names (e.g. "ApplicableCountries") to
11524	// include in API requests with the JSON null value. By default, fields
11525	// with empty values are omitted from API requests. However, any field
11526	// with an empty value appearing in NullFields will be sent to the
11527	// server as null. It is an error if a field in this list has a
11528	// non-empty value. This may be used to include null fields in Patch
11529	// requests.
11530	NullFields []string `json:"-"`
11531}
11532
11533func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
11534	type NoMethod ProductStatusItemLevelIssue
11535	raw := NoMethod(*s)
11536	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11537}
11538
11539type ProductSubscriptionCost struct {
11540	// Amount: The amount the buyer has to pay per subscription period.
11541	Amount *Price `json:"amount,omitempty"`
11542
11543	// Period: The type of subscription period.
11544	Period string `json:"period,omitempty"`
11545
11546	// PeriodLength: The number of subscription periods the buyer has to
11547	// pay.
11548	PeriodLength int64 `json:"periodLength,omitempty,string"`
11549
11550	// ForceSendFields is a list of field names (e.g. "Amount") to
11551	// unconditionally include in API requests. By default, fields with
11552	// empty values are omitted from API requests. However, any non-pointer,
11553	// non-interface field appearing in ForceSendFields will be sent to the
11554	// server regardless of whether the field is empty or not. This may be
11555	// used to include empty fields in Patch requests.
11556	ForceSendFields []string `json:"-"`
11557
11558	// NullFields is a list of field names (e.g. "Amount") to include in API
11559	// requests with the JSON null value. By default, fields with empty
11560	// values are omitted from API requests. However, any field with an
11561	// empty value appearing in NullFields will be sent to the server as
11562	// null. It is an error if a field in this list has a non-empty value.
11563	// This may be used to include null fields in Patch requests.
11564	NullFields []string `json:"-"`
11565}
11566
11567func (s *ProductSubscriptionCost) MarshalJSON() ([]byte, error) {
11568	type NoMethod ProductSubscriptionCost
11569	raw := NoMethod(*s)
11570	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11571}
11572
11573type ProductTax struct {
11574	// Country: The country within which the item is taxed, specified as a
11575	// CLDR territory code.
11576	Country string `json:"country,omitempty"`
11577
11578	// LocationId: The numeric ID of a location that the tax rate applies to
11579	// as defined in the AdWords API.
11580	LocationId int64 `json:"locationId,omitempty,string"`
11581
11582	// PostalCode: The postal code range that the tax rate applies to,
11583	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
11584	// range between two ZIP codes or two ZIP code prefixes of equal length.
11585	// Examples: 94114, 94*, 94002-95460, 94*-95*.
11586	PostalCode string `json:"postalCode,omitempty"`
11587
11588	// Rate: The percentage of tax rate that applies to the item price.
11589	Rate float64 `json:"rate,omitempty"`
11590
11591	// Region: The geographic region to which the tax rate applies.
11592	Region string `json:"region,omitempty"`
11593
11594	// TaxShip: Should be set to true if tax is charged on shipping.
11595	TaxShip bool `json:"taxShip,omitempty"`
11596
11597	// ForceSendFields is a list of field names (e.g. "Country") to
11598	// unconditionally include in API requests. By default, fields with
11599	// empty values are omitted from API requests. However, any non-pointer,
11600	// non-interface field appearing in ForceSendFields will be sent to the
11601	// server regardless of whether the field is empty or not. This may be
11602	// used to include empty fields in Patch requests.
11603	ForceSendFields []string `json:"-"`
11604
11605	// NullFields is a list of field names (e.g. "Country") to include in
11606	// API requests with the JSON null value. By default, fields with empty
11607	// values are omitted from API requests. However, any field with an
11608	// empty value appearing in NullFields will be sent to the server as
11609	// null. It is an error if a field in this list has a non-empty value.
11610	// This may be used to include null fields in Patch requests.
11611	NullFields []string `json:"-"`
11612}
11613
11614func (s *ProductTax) MarshalJSON() ([]byte, error) {
11615	type NoMethod ProductTax
11616	raw := NoMethod(*s)
11617	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11618}
11619
11620func (s *ProductTax) UnmarshalJSON(data []byte) error {
11621	type NoMethod ProductTax
11622	var s1 struct {
11623		Rate gensupport.JSONFloat64 `json:"rate"`
11624		*NoMethod
11625	}
11626	s1.NoMethod = (*NoMethod)(s)
11627	if err := json.Unmarshal(data, &s1); err != nil {
11628		return err
11629	}
11630	s.Rate = float64(s1.Rate)
11631	return nil
11632}
11633
11634type ProductUnitPricingBaseMeasure struct {
11635	// Unit: The unit of the denominator.
11636	Unit string `json:"unit,omitempty"`
11637
11638	// Value: The denominator of the unit price.
11639	Value int64 `json:"value,omitempty,string"`
11640
11641	// ForceSendFields is a list of field names (e.g. "Unit") to
11642	// unconditionally include in API requests. By default, fields with
11643	// empty values are omitted from API requests. However, any non-pointer,
11644	// non-interface field appearing in ForceSendFields will be sent to the
11645	// server regardless of whether the field is empty or not. This may be
11646	// used to include empty fields in Patch requests.
11647	ForceSendFields []string `json:"-"`
11648
11649	// NullFields is a list of field names (e.g. "Unit") to include in API
11650	// requests with the JSON null value. By default, fields with empty
11651	// values are omitted from API requests. However, any field with an
11652	// empty value appearing in NullFields will be sent to the server as
11653	// null. It is an error if a field in this list has a non-empty value.
11654	// This may be used to include null fields in Patch requests.
11655	NullFields []string `json:"-"`
11656}
11657
11658func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
11659	type NoMethod ProductUnitPricingBaseMeasure
11660	raw := NoMethod(*s)
11661	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11662}
11663
11664type ProductUnitPricingMeasure struct {
11665	// Unit: The unit of the measure.
11666	Unit string `json:"unit,omitempty"`
11667
11668	// Value: The measure of an item.
11669	Value float64 `json:"value,omitempty"`
11670
11671	// ForceSendFields is a list of field names (e.g. "Unit") to
11672	// unconditionally include in API requests. By default, fields with
11673	// empty values are omitted from API requests. However, any non-pointer,
11674	// non-interface field appearing in ForceSendFields will be sent to the
11675	// server regardless of whether the field is empty or not. This may be
11676	// used to include empty fields in Patch requests.
11677	ForceSendFields []string `json:"-"`
11678
11679	// NullFields is a list of field names (e.g. "Unit") to include in API
11680	// requests with the JSON null value. By default, fields with empty
11681	// values are omitted from API requests. However, any field with an
11682	// empty value appearing in NullFields will be sent to the server as
11683	// null. It is an error if a field in this list has a non-empty value.
11684	// This may be used to include null fields in Patch requests.
11685	NullFields []string `json:"-"`
11686}
11687
11688func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
11689	type NoMethod ProductUnitPricingMeasure
11690	raw := NoMethod(*s)
11691	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11692}
11693
11694func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
11695	type NoMethod ProductUnitPricingMeasure
11696	var s1 struct {
11697		Value gensupport.JSONFloat64 `json:"value"`
11698		*NoMethod
11699	}
11700	s1.NoMethod = (*NoMethod)(s)
11701	if err := json.Unmarshal(data, &s1); err != nil {
11702		return err
11703	}
11704	s.Value = float64(s1.Value)
11705	return nil
11706}
11707
11708type ProductsCustomBatchRequest struct {
11709	// Entries: The request entries to be processed in the batch.
11710	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
11711
11712	// ForceSendFields is a list of field names (e.g. "Entries") to
11713	// unconditionally include in API requests. By default, fields with
11714	// empty values are omitted from API requests. However, any non-pointer,
11715	// non-interface field appearing in ForceSendFields will be sent to the
11716	// server regardless of whether the field is empty or not. This may be
11717	// used to include empty fields in Patch requests.
11718	ForceSendFields []string `json:"-"`
11719
11720	// NullFields is a list of field names (e.g. "Entries") to include in
11721	// API requests with the JSON null value. By default, fields with empty
11722	// values are omitted from API requests. However, any field with an
11723	// empty value appearing in NullFields will be sent to the server as
11724	// null. It is an error if a field in this list has a non-empty value.
11725	// This may be used to include null fields in Patch requests.
11726	NullFields []string `json:"-"`
11727}
11728
11729func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
11730	type NoMethod ProductsCustomBatchRequest
11731	raw := NoMethod(*s)
11732	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11733}
11734
11735// ProductsCustomBatchRequestEntry: A batch entry encoding a single
11736// non-batch products request.
11737type ProductsCustomBatchRequestEntry struct {
11738	// BatchId: An entry ID, unique within the batch request.
11739	BatchId int64 `json:"batchId,omitempty"`
11740
11741	// FeedId: The Content API feed id.
11742	FeedId uint64 `json:"feedId,omitempty,string"`
11743
11744	// MerchantId: The ID of the managing account.
11745	MerchantId uint64 `json:"merchantId,omitempty,string"`
11746
11747	// Method: The method of the batch entry. Acceptable values are: -
11748	// "delete" - "get" - "insert"
11749	Method string `json:"method,omitempty"`
11750
11751	// Product: The product to insert. Only required if the method is
11752	// `insert`.
11753	Product *Product `json:"product,omitempty"`
11754
11755	// ProductId: The ID of the product to get or delete. Only defined if
11756	// the method is `get` or `delete`.
11757	ProductId string `json:"productId,omitempty"`
11758
11759	// ForceSendFields is a list of field names (e.g. "BatchId") to
11760	// unconditionally include in API requests. By default, fields with
11761	// empty values are omitted from API requests. However, any non-pointer,
11762	// non-interface field appearing in ForceSendFields will be sent to the
11763	// server regardless of whether the field is empty or not. This may be
11764	// used to include empty fields in Patch requests.
11765	ForceSendFields []string `json:"-"`
11766
11767	// NullFields is a list of field names (e.g. "BatchId") to include in
11768	// API requests with the JSON null value. By default, fields with empty
11769	// values are omitted from API requests. However, any field with an
11770	// empty value appearing in NullFields will be sent to the server as
11771	// null. It is an error if a field in this list has a non-empty value.
11772	// This may be used to include null fields in Patch requests.
11773	NullFields []string `json:"-"`
11774}
11775
11776func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
11777	type NoMethod ProductsCustomBatchRequestEntry
11778	raw := NoMethod(*s)
11779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11780}
11781
11782type ProductsCustomBatchResponse struct {
11783	// Entries: The result of the execution of the batch requests.
11784	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
11785
11786	// Kind: Identifies what kind of resource this is. Value: the fixed
11787	// string "content#productsCustomBatchResponse".
11788	Kind string `json:"kind,omitempty"`
11789
11790	// ServerResponse contains the HTTP response code and headers from the
11791	// server.
11792	googleapi.ServerResponse `json:"-"`
11793
11794	// ForceSendFields is a list of field names (e.g. "Entries") to
11795	// unconditionally include in API requests. By default, fields with
11796	// empty values are omitted from API requests. However, any non-pointer,
11797	// non-interface field appearing in ForceSendFields will be sent to the
11798	// server regardless of whether the field is empty or not. This may be
11799	// used to include empty fields in Patch requests.
11800	ForceSendFields []string `json:"-"`
11801
11802	// NullFields is a list of field names (e.g. "Entries") to include in
11803	// API requests with the JSON null value. By default, fields with empty
11804	// values are omitted from API requests. However, any field with an
11805	// empty value appearing in NullFields will be sent to the server as
11806	// null. It is an error if a field in this list has a non-empty value.
11807	// This may be used to include null fields in Patch requests.
11808	NullFields []string `json:"-"`
11809}
11810
11811func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
11812	type NoMethod ProductsCustomBatchResponse
11813	raw := NoMethod(*s)
11814	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11815}
11816
11817// ProductsCustomBatchResponseEntry: A batch entry encoding a single
11818// non-batch products response.
11819type ProductsCustomBatchResponseEntry struct {
11820	// BatchId: The ID of the request entry this entry responds to.
11821	BatchId int64 `json:"batchId,omitempty"`
11822
11823	// Errors: A list of errors defined if and only if the request failed.
11824	Errors *Errors `json:"errors,omitempty"`
11825
11826	// Kind: Identifies what kind of resource this is. Value: the fixed
11827	// string "content#productsCustomBatchResponseEntry"
11828	Kind string `json:"kind,omitempty"`
11829
11830	// Product: The inserted product. Only defined if the method is `insert`
11831	// and if the request was successful.
11832	Product *Product `json:"product,omitempty"`
11833
11834	// ForceSendFields is a list of field names (e.g. "BatchId") to
11835	// unconditionally include in API requests. By default, fields with
11836	// empty values are omitted from API requests. However, any non-pointer,
11837	// non-interface field appearing in ForceSendFields will be sent to the
11838	// server regardless of whether the field is empty or not. This may be
11839	// used to include empty fields in Patch requests.
11840	ForceSendFields []string `json:"-"`
11841
11842	// NullFields is a list of field names (e.g. "BatchId") to include in
11843	// API requests with the JSON null value. By default, fields with empty
11844	// values are omitted from API requests. However, any field with an
11845	// empty value appearing in NullFields will be sent to the server as
11846	// null. It is an error if a field in this list has a non-empty value.
11847	// This may be used to include null fields in Patch requests.
11848	NullFields []string `json:"-"`
11849}
11850
11851func (s *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
11852	type NoMethod ProductsCustomBatchResponseEntry
11853	raw := NoMethod(*s)
11854	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11855}
11856
11857type ProductsListResponse struct {
11858	// Kind: Identifies what kind of resource this is. Value: the fixed
11859	// string "content#productsListResponse".
11860	Kind string `json:"kind,omitempty"`
11861
11862	// NextPageToken: The token for the retrieval of the next page of
11863	// products.
11864	NextPageToken string `json:"nextPageToken,omitempty"`
11865
11866	Resources []*Product `json:"resources,omitempty"`
11867
11868	// ServerResponse contains the HTTP response code and headers from the
11869	// server.
11870	googleapi.ServerResponse `json:"-"`
11871
11872	// ForceSendFields is a list of field names (e.g. "Kind") to
11873	// unconditionally include in API requests. By default, fields with
11874	// empty values are omitted from API requests. However, any non-pointer,
11875	// non-interface field appearing in ForceSendFields will be sent to the
11876	// server regardless of whether the field is empty or not. This may be
11877	// used to include empty fields in Patch requests.
11878	ForceSendFields []string `json:"-"`
11879
11880	// NullFields is a list of field names (e.g. "Kind") to include in API
11881	// requests with the JSON null value. By default, fields with empty
11882	// values are omitted from API requests. However, any field with an
11883	// empty value appearing in NullFields will be sent to the server as
11884	// null. It is an error if a field in this list has a non-empty value.
11885	// This may be used to include null fields in Patch requests.
11886	NullFields []string `json:"-"`
11887}
11888
11889func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
11890	type NoMethod ProductsListResponse
11891	raw := NoMethod(*s)
11892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11893}
11894
11895type ProductstatusesCustomBatchRequest struct {
11896	// Entries: The request entries to be processed in the batch.
11897	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
11898
11899	// ForceSendFields is a list of field names (e.g. "Entries") to
11900	// unconditionally include in API requests. By default, fields with
11901	// empty values are omitted from API requests. However, any non-pointer,
11902	// non-interface field appearing in ForceSendFields will be sent to the
11903	// server regardless of whether the field is empty or not. This may be
11904	// used to include empty fields in Patch requests.
11905	ForceSendFields []string `json:"-"`
11906
11907	// NullFields is a list of field names (e.g. "Entries") to include in
11908	// API requests with the JSON null value. By default, fields with empty
11909	// values are omitted from API requests. However, any field with an
11910	// empty value appearing in NullFields will be sent to the server as
11911	// null. It is an error if a field in this list has a non-empty value.
11912	// This may be used to include null fields in Patch requests.
11913	NullFields []string `json:"-"`
11914}
11915
11916func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
11917	type NoMethod ProductstatusesCustomBatchRequest
11918	raw := NoMethod(*s)
11919	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11920}
11921
11922// ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
11923// single non-batch productstatuses request.
11924type ProductstatusesCustomBatchRequestEntry struct {
11925	// BatchId: An entry ID, unique within the batch request.
11926	BatchId int64 `json:"batchId,omitempty"`
11927
11928	// Destinations: If set, only issues for the specified destinations are
11929	// returned, otherwise only issues for the Shopping destination.
11930	Destinations []string `json:"destinations,omitempty"`
11931
11932	IncludeAttributes bool `json:"includeAttributes,omitempty"`
11933
11934	// MerchantId: The ID of the managing account.
11935	MerchantId uint64 `json:"merchantId,omitempty,string"`
11936
11937	// Method: The method of the batch entry. Acceptable values are: -
11938	// "get"
11939	Method string `json:"method,omitempty"`
11940
11941	// ProductId: The ID of the product whose status to get.
11942	ProductId string `json:"productId,omitempty"`
11943
11944	// ForceSendFields is a list of field names (e.g. "BatchId") to
11945	// unconditionally include in API requests. By default, fields with
11946	// empty values are omitted from API requests. However, any non-pointer,
11947	// non-interface field appearing in ForceSendFields will be sent to the
11948	// server regardless of whether the field is empty or not. This may be
11949	// used to include empty fields in Patch requests.
11950	ForceSendFields []string `json:"-"`
11951
11952	// NullFields is a list of field names (e.g. "BatchId") to include in
11953	// API requests with the JSON null value. By default, fields with empty
11954	// values are omitted from API requests. However, any field with an
11955	// empty value appearing in NullFields will be sent to the server as
11956	// null. It is an error if a field in this list has a non-empty value.
11957	// This may be used to include null fields in Patch requests.
11958	NullFields []string `json:"-"`
11959}
11960
11961func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
11962	type NoMethod ProductstatusesCustomBatchRequestEntry
11963	raw := NoMethod(*s)
11964	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11965}
11966
11967type ProductstatusesCustomBatchResponse struct {
11968	// Entries: The result of the execution of the batch requests.
11969	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
11970
11971	// Kind: Identifies what kind of resource this is. Value: the fixed
11972	// string "content#productstatusesCustomBatchResponse".
11973	Kind string `json:"kind,omitempty"`
11974
11975	// ServerResponse contains the HTTP response code and headers from the
11976	// server.
11977	googleapi.ServerResponse `json:"-"`
11978
11979	// ForceSendFields is a list of field names (e.g. "Entries") to
11980	// unconditionally include in API requests. By default, fields with
11981	// empty values are omitted from API requests. However, any non-pointer,
11982	// non-interface field appearing in ForceSendFields will be sent to the
11983	// server regardless of whether the field is empty or not. This may be
11984	// used to include empty fields in Patch requests.
11985	ForceSendFields []string `json:"-"`
11986
11987	// NullFields is a list of field names (e.g. "Entries") to include in
11988	// API requests with the JSON null value. By default, fields with empty
11989	// values are omitted from API requests. However, any field with an
11990	// empty value appearing in NullFields will be sent to the server as
11991	// null. It is an error if a field in this list has a non-empty value.
11992	// This may be used to include null fields in Patch requests.
11993	NullFields []string `json:"-"`
11994}
11995
11996func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
11997	type NoMethod ProductstatusesCustomBatchResponse
11998	raw := NoMethod(*s)
11999	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12000}
12001
12002// ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
12003// single non-batch productstatuses response.
12004type ProductstatusesCustomBatchResponseEntry struct {
12005	// BatchId: The ID of the request entry this entry responds to.
12006	BatchId int64 `json:"batchId,omitempty"`
12007
12008	// Errors: A list of errors, if the request failed.
12009	Errors *Errors `json:"errors,omitempty"`
12010
12011	// Kind: Identifies what kind of resource this is. Value: the fixed
12012	// string "content#productstatusesCustomBatchResponseEntry"
12013	Kind string `json:"kind,omitempty"`
12014
12015	// ProductStatus: The requested product status. Only defined if the
12016	// request was successful.
12017	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
12018
12019	// ForceSendFields is a list of field names (e.g. "BatchId") to
12020	// unconditionally include in API requests. By default, fields with
12021	// empty values are omitted from API requests. However, any non-pointer,
12022	// non-interface field appearing in ForceSendFields will be sent to the
12023	// server regardless of whether the field is empty or not. This may be
12024	// used to include empty fields in Patch requests.
12025	ForceSendFields []string `json:"-"`
12026
12027	// NullFields is a list of field names (e.g. "BatchId") to include in
12028	// API requests with the JSON null value. By default, fields with empty
12029	// values are omitted from API requests. However, any field with an
12030	// empty value appearing in NullFields will be sent to the server as
12031	// null. It is an error if a field in this list has a non-empty value.
12032	// This may be used to include null fields in Patch requests.
12033	NullFields []string `json:"-"`
12034}
12035
12036func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12037	type NoMethod ProductstatusesCustomBatchResponseEntry
12038	raw := NoMethod(*s)
12039	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12040}
12041
12042type ProductstatusesListResponse struct {
12043	// Kind: Identifies what kind of resource this is. Value: the fixed
12044	// string "content#productstatusesListResponse".
12045	Kind string `json:"kind,omitempty"`
12046
12047	// NextPageToken: The token for the retrieval of the next page of
12048	// products statuses.
12049	NextPageToken string `json:"nextPageToken,omitempty"`
12050
12051	Resources []*ProductStatus `json:"resources,omitempty"`
12052
12053	// ServerResponse contains the HTTP response code and headers from the
12054	// server.
12055	googleapi.ServerResponse `json:"-"`
12056
12057	// ForceSendFields is a list of field names (e.g. "Kind") to
12058	// unconditionally include in API requests. By default, fields with
12059	// empty values are omitted from API requests. However, any non-pointer,
12060	// non-interface field appearing in ForceSendFields will be sent to the
12061	// server regardless of whether the field is empty or not. This may be
12062	// used to include empty fields in Patch requests.
12063	ForceSendFields []string `json:"-"`
12064
12065	// NullFields is a list of field names (e.g. "Kind") to include in API
12066	// requests with the JSON null value. By default, fields with empty
12067	// values are omitted from API requests. However, any field with an
12068	// empty value appearing in NullFields will be sent to the server as
12069	// null. It is an error if a field in this list has a non-empty value.
12070	// This may be used to include null fields in Patch requests.
12071	NullFields []string `json:"-"`
12072}
12073
12074func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
12075	type NoMethod ProductstatusesListResponse
12076	raw := NoMethod(*s)
12077	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12078}
12079
12080// PubsubNotificationSettings: Settings for Pub/Sub notifications, all
12081// methods require that the caller is a direct user of the merchant
12082// center account.
12083type PubsubNotificationSettings struct {
12084	// CloudTopicName: Cloud pub/sub topic to which notifications are sent
12085	// (read-only).
12086	CloudTopicName string `json:"cloudTopicName,omitempty"`
12087
12088	// Kind: Identifies what kind of resource this is. Value: the fixed
12089	// string "content#pubsubNotificationSettings"
12090	Kind string `json:"kind,omitempty"`
12091
12092	// RegisteredEvents: List of event types. Acceptable values are: -
12093	// "orderPendingShipment"
12094	RegisteredEvents []string `json:"registeredEvents,omitempty"`
12095
12096	// ServerResponse contains the HTTP response code and headers from the
12097	// server.
12098	googleapi.ServerResponse `json:"-"`
12099
12100	// ForceSendFields is a list of field names (e.g. "CloudTopicName") to
12101	// unconditionally include in API requests. By default, fields with
12102	// empty values are omitted from API requests. However, any non-pointer,
12103	// non-interface field appearing in ForceSendFields will be sent to the
12104	// server regardless of whether the field is empty or not. This may be
12105	// used to include empty fields in Patch requests.
12106	ForceSendFields []string `json:"-"`
12107
12108	// NullFields is a list of field names (e.g. "CloudTopicName") to
12109	// include in API requests with the JSON null value. By default, fields
12110	// with empty values are omitted from API requests. However, any field
12111	// with an empty value appearing in NullFields will be sent to the
12112	// server as null. It is an error if a field in this list has a
12113	// non-empty value. This may be used to include null fields in Patch
12114	// requests.
12115	NullFields []string `json:"-"`
12116}
12117
12118func (s *PubsubNotificationSettings) MarshalJSON() ([]byte, error) {
12119	type NoMethod PubsubNotificationSettings
12120	raw := NoMethod(*s)
12121	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12122}
12123
12124type RateGroup struct {
12125	// ApplicableShippingLabels: A list of shipping labels defining the
12126	// products to which this rate group applies to. This is a disjunction:
12127	// only one of the labels has to match for the rate group to apply. May
12128	// only be empty for the last rate group of a service. Required.
12129	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
12130
12131	// CarrierRates: A list of carrier rates that can be referred to by
12132	// `mainTable` or `singleValue`.
12133	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
12134
12135	// MainTable: A table defining the rate group, when `singleValue` is not
12136	// expressive enough. Can only be set if `singleValue` is not set.
12137	MainTable *Table `json:"mainTable,omitempty"`
12138
12139	// Name: Name of the rate group. Optional. If set has to be unique
12140	// within shipping service.
12141	Name string `json:"name,omitempty"`
12142
12143	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
12144	// only be set if `mainTable` and `subtables` are not set.
12145	SingleValue *Value `json:"singleValue,omitempty"`
12146
12147	// Subtables: A list of subtables referred to by `mainTable`. Can only
12148	// be set if `mainTable` is set.
12149	Subtables []*Table `json:"subtables,omitempty"`
12150
12151	// ForceSendFields is a list of field names (e.g.
12152	// "ApplicableShippingLabels") to unconditionally include in API
12153	// requests. By default, fields with empty values are omitted from API
12154	// requests. However, any non-pointer, non-interface field appearing in
12155	// ForceSendFields will be sent to the server regardless of whether the
12156	// field is empty or not. This may be used to include empty fields in
12157	// Patch requests.
12158	ForceSendFields []string `json:"-"`
12159
12160	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
12161	// to include in API requests with the JSON null value. By default,
12162	// fields with empty values are omitted from API requests. However, any
12163	// field with an empty value appearing in NullFields will be sent to the
12164	// server as null. It is an error if a field in this list has a
12165	// non-empty value. This may be used to include null fields in Patch
12166	// requests.
12167	NullFields []string `json:"-"`
12168}
12169
12170func (s *RateGroup) MarshalJSON() ([]byte, error) {
12171	type NoMethod RateGroup
12172	raw := NoMethod(*s)
12173	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12174}
12175
12176type RefundReason struct {
12177	// Description: Description of the reason.
12178	Description string `json:"description,omitempty"`
12179
12180	// ReasonCode: Code of the refund reason. Acceptable values are: -
12181	// "adjustment" - "autoPostInternal" -
12182	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
12183	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
12184	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
12185	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
12186	// - "customerSupportRequested" - "deliveredLateByCarrier" -
12187	// "deliveredTooLate" - "expiredItem" -
12188	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
12189	// "failToPushOrderMerchantFulfillmentError" -
12190	// "failToPushOrderToMerchant" -
12191	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
12192	// "invalidCoupon" - "lateShipmentCredit" -
12193	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
12194	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
12195	// "paymentDeclined" - "priceAdjustment" - "priceError" -
12196	// "productArrivedDamaged" - "productNotAsDescribed" -
12197	// "promoReallocation" - "qualityNotAsExpected" -
12198	// "returnRefundAbuse" - "shippingCostAdjustment" -
12199	// "shippingPriceError" - "taxAdjustment" - "taxError" -
12200	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
12201	// "wrongProductShipped"
12202	ReasonCode string `json:"reasonCode,omitempty"`
12203
12204	// ForceSendFields is a list of field names (e.g. "Description") to
12205	// unconditionally include in API requests. By default, fields with
12206	// empty values are omitted from API requests. However, any non-pointer,
12207	// non-interface field appearing in ForceSendFields will be sent to the
12208	// server regardless of whether the field is empty or not. This may be
12209	// used to include empty fields in Patch requests.
12210	ForceSendFields []string `json:"-"`
12211
12212	// NullFields is a list of field names (e.g. "Description") to include
12213	// in API requests with the JSON null value. By default, fields with
12214	// empty values are omitted from API requests. However, any field with
12215	// an empty value appearing in NullFields will be sent to the server as
12216	// null. It is an error if a field in this list has a non-empty value.
12217	// This may be used to include null fields in Patch requests.
12218	NullFields []string `json:"-"`
12219}
12220
12221func (s *RefundReason) MarshalJSON() ([]byte, error) {
12222	type NoMethod RefundReason
12223	raw := NoMethod(*s)
12224	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12225}
12226
12227// Region: Represents a geographic region that you can use as a target
12228// with both the `RegionalInventory` and `ShippingSettings` services.
12229// You can define regions as collections of either postal codes or, in
12230// some countries, using predefined geotargets.
12231type Region struct {
12232	// DisplayName: The display name of the region.
12233	DisplayName string `json:"displayName,omitempty"`
12234
12235	// GeotargetArea: A list of geotargets that defines the region area.
12236	GeotargetArea *RegionGeoTargetArea `json:"geotargetArea,omitempty"`
12237
12238	// MerchantId: Output only. Immutable. Merchant that owns the region.
12239	MerchantId int64 `json:"merchantId,omitempty,string"`
12240
12241	// PostalCodeArea: A list of postal codes that defines the region area.
12242	PostalCodeArea *RegionPostalCodeArea `json:"postalCodeArea,omitempty"`
12243
12244	// RegionId: Output only. Immutable. The ID uniquely identifying each
12245	// region.
12246	RegionId string `json:"regionId,omitempty"`
12247
12248	// RegionalInventoryEligible: Output only. Indicates if the region is
12249	// eligible to use in the Regional Inventory configuration.
12250	RegionalInventoryEligible bool `json:"regionalInventoryEligible,omitempty"`
12251
12252	// ShippingEligible: Output only. Indicates if the region is eligible to
12253	// use in the Shipping Services configuration.
12254	ShippingEligible bool `json:"shippingEligible,omitempty"`
12255
12256	// ServerResponse contains the HTTP response code and headers from the
12257	// server.
12258	googleapi.ServerResponse `json:"-"`
12259
12260	// ForceSendFields is a list of field names (e.g. "DisplayName") to
12261	// unconditionally include in API requests. By default, fields with
12262	// empty values are omitted from API requests. However, any non-pointer,
12263	// non-interface field appearing in ForceSendFields will be sent to the
12264	// server regardless of whether the field is empty or not. This may be
12265	// used to include empty fields in Patch requests.
12266	ForceSendFields []string `json:"-"`
12267
12268	// NullFields is a list of field names (e.g. "DisplayName") to include
12269	// in API requests with the JSON null value. By default, fields with
12270	// empty values are omitted from API requests. However, any field with
12271	// an empty value appearing in NullFields will be sent to the server as
12272	// null. It is an error if a field in this list has a non-empty value.
12273	// This may be used to include null fields in Patch requests.
12274	NullFields []string `json:"-"`
12275}
12276
12277func (s *Region) MarshalJSON() ([]byte, error) {
12278	type NoMethod Region
12279	raw := NoMethod(*s)
12280	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12281}
12282
12283// RegionGeoTargetArea: A list of geotargets that defines the region
12284// area.
12285type RegionGeoTargetArea struct {
12286	// GeotargetCriteriaIds: Required. A non-empty list of location IDs
12287	// (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
12288	// They must all be of the same location type (e.g., state).
12289	GeotargetCriteriaIds googleapi.Int64s `json:"geotargetCriteriaIds,omitempty"`
12290
12291	// ForceSendFields is a list of field names (e.g.
12292	// "GeotargetCriteriaIds") to unconditionally include in API requests.
12293	// By default, fields with empty values are omitted from API requests.
12294	// However, any non-pointer, non-interface field appearing in
12295	// ForceSendFields will be sent to the server regardless of whether the
12296	// field is empty or not. This may be used to include empty fields in
12297	// Patch requests.
12298	ForceSendFields []string `json:"-"`
12299
12300	// NullFields is a list of field names (e.g. "GeotargetCriteriaIds") to
12301	// include in API requests with the JSON null value. By default, fields
12302	// with empty values are omitted from API requests. However, any field
12303	// with an empty value appearing in NullFields will be sent to the
12304	// server as null. It is an error if a field in this list has a
12305	// non-empty value. This may be used to include null fields in Patch
12306	// requests.
12307	NullFields []string `json:"-"`
12308}
12309
12310func (s *RegionGeoTargetArea) MarshalJSON() ([]byte, error) {
12311	type NoMethod RegionGeoTargetArea
12312	raw := NoMethod(*s)
12313	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12314}
12315
12316// RegionPostalCodeArea: A list of postal codes that defines the region
12317// area. Note: All regions defined using postal codes are accessible via
12318// the account's `ShippingSettings.postalCodeGroups` resource.
12319type RegionPostalCodeArea struct {
12320	// PostalCodes: Required. A range of postal codes.
12321	PostalCodes []*RegionPostalCodeAreaPostalCodeRange `json:"postalCodes,omitempty"`
12322
12323	// RegionCode: Required. CLDR territory code or the country the postal
12324	// code group applies to.
12325	RegionCode string `json:"regionCode,omitempty"`
12326
12327	// ForceSendFields is a list of field names (e.g. "PostalCodes") to
12328	// unconditionally include in API requests. By default, fields with
12329	// empty values are omitted from API requests. However, any non-pointer,
12330	// non-interface field appearing in ForceSendFields will be sent to the
12331	// server regardless of whether the field is empty or not. This may be
12332	// used to include empty fields in Patch requests.
12333	ForceSendFields []string `json:"-"`
12334
12335	// NullFields is a list of field names (e.g. "PostalCodes") to include
12336	// in API requests with the JSON null value. By default, fields with
12337	// empty values are omitted from API requests. However, any field with
12338	// an empty value appearing in NullFields will be sent to the server as
12339	// null. It is an error if a field in this list has a non-empty value.
12340	// This may be used to include null fields in Patch requests.
12341	NullFields []string `json:"-"`
12342}
12343
12344func (s *RegionPostalCodeArea) MarshalJSON() ([]byte, error) {
12345	type NoMethod RegionPostalCodeArea
12346	raw := NoMethod(*s)
12347	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12348}
12349
12350// RegionPostalCodeAreaPostalCodeRange: A range of postal codes that
12351// defines the region area.
12352type RegionPostalCodeAreaPostalCodeRange struct {
12353	// Begin: Required. A postal code or a pattern of the form prefix*
12354	// denoting the inclusive lower bound of the range defining the area.
12355	// Examples values: "94108", "9410*", "9*".
12356	Begin string `json:"begin,omitempty"`
12357
12358	// End: Optional. A postal code or a pattern of the form prefix*
12359	// denoting the inclusive upper bound of the range defining the area. It
12360	// must have the same length as postalCodeRangeBegin: if
12361	// postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be
12362	// a postal code too; if postalCodeRangeBegin is a pattern then
12363	// postalCodeRangeEnd must be a pattern with the same prefix length.
12364	// Optional: if not set, then the area is defined as being all the
12365	// postal codes matching postalCodeRangeBegin.
12366	End string `json:"end,omitempty"`
12367
12368	// ForceSendFields is a list of field names (e.g. "Begin") to
12369	// unconditionally include in API requests. By default, fields with
12370	// empty values are omitted from API requests. However, any non-pointer,
12371	// non-interface field appearing in ForceSendFields will be sent to the
12372	// server regardless of whether the field is empty or not. This may be
12373	// used to include empty fields in Patch requests.
12374	ForceSendFields []string `json:"-"`
12375
12376	// NullFields is a list of field names (e.g. "Begin") to include in API
12377	// requests with the JSON null value. By default, fields with empty
12378	// values are omitted from API requests. However, any field with an
12379	// empty value appearing in NullFields will be sent to the server as
12380	// null. It is an error if a field in this list has a non-empty value.
12381	// This may be used to include null fields in Patch requests.
12382	NullFields []string `json:"-"`
12383}
12384
12385func (s *RegionPostalCodeAreaPostalCodeRange) MarshalJSON() ([]byte, error) {
12386	type NoMethod RegionPostalCodeAreaPostalCodeRange
12387	raw := NoMethod(*s)
12388	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12389}
12390
12391// RegionalInventory: Regional inventory resource. contains the regional
12392// name and all attributes which are overridden for the specified
12393// region.
12394type RegionalInventory struct {
12395	// Availability: The availability of the product.
12396	Availability string `json:"availability,omitempty"`
12397
12398	// CustomAttributes: A list of custom (merchant-provided) attributes. It
12399	// can also be used for submitting any attribute of the feed
12400	// specification in its generic form.
12401	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
12402
12403	// Kind: Identifies what kind of resource this is. Value: the fixed
12404	// string "content#regionalInventory".
12405	Kind string `json:"kind,omitempty"`
12406
12407	// Price: The price of the product.
12408	Price *Price `json:"price,omitempty"`
12409
12410	// RegionId: The ID uniquely identifying each region.
12411	RegionId string `json:"regionId,omitempty"`
12412
12413	// SalePrice: The sale price of the product. Mandatory if
12414	// `sale_price_effective_date` is defined.
12415	SalePrice *Price `json:"salePrice,omitempty"`
12416
12417	// SalePriceEffectiveDate: A date range represented by a pair of ISO
12418	// 8601 dates separated by a space, comma, or slash. Both dates might be
12419	// specified as 'null' if undecided.
12420	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
12421
12422	// ServerResponse contains the HTTP response code and headers from the
12423	// server.
12424	googleapi.ServerResponse `json:"-"`
12425
12426	// ForceSendFields is a list of field names (e.g. "Availability") to
12427	// unconditionally include in API requests. By default, fields with
12428	// empty values are omitted from API requests. However, any non-pointer,
12429	// non-interface field appearing in ForceSendFields will be sent to the
12430	// server regardless of whether the field is empty or not. This may be
12431	// used to include empty fields in Patch requests.
12432	ForceSendFields []string `json:"-"`
12433
12434	// NullFields is a list of field names (e.g. "Availability") to include
12435	// in API requests with the JSON null value. By default, fields with
12436	// empty values are omitted from API requests. However, any field with
12437	// an empty value appearing in NullFields will be sent to the server as
12438	// null. It is an error if a field in this list has a non-empty value.
12439	// This may be used to include null fields in Patch requests.
12440	NullFields []string `json:"-"`
12441}
12442
12443func (s *RegionalInventory) MarshalJSON() ([]byte, error) {
12444	type NoMethod RegionalInventory
12445	raw := NoMethod(*s)
12446	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12447}
12448
12449type RegionalinventoryCustomBatchRequest struct {
12450	// Entries: The request entries to be processed in the batch.
12451	Entries []*RegionalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
12452
12453	// ForceSendFields is a list of field names (e.g. "Entries") to
12454	// unconditionally include in API requests. By default, fields with
12455	// empty values are omitted from API requests. However, any non-pointer,
12456	// non-interface field appearing in ForceSendFields will be sent to the
12457	// server regardless of whether the field is empty or not. This may be
12458	// used to include empty fields in Patch requests.
12459	ForceSendFields []string `json:"-"`
12460
12461	// NullFields is a list of field names (e.g. "Entries") to include in
12462	// API requests with the JSON null value. By default, fields with empty
12463	// values are omitted from API requests. However, any field with an
12464	// empty value appearing in NullFields will be sent to the server as
12465	// null. It is an error if a field in this list has a non-empty value.
12466	// This may be used to include null fields in Patch requests.
12467	NullFields []string `json:"-"`
12468}
12469
12470func (s *RegionalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
12471	type NoMethod RegionalinventoryCustomBatchRequest
12472	raw := NoMethod(*s)
12473	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12474}
12475
12476// RegionalinventoryCustomBatchRequestEntry: A batch entry encoding a
12477// single non-batch regional inventory request.
12478type RegionalinventoryCustomBatchRequestEntry struct {
12479	// BatchId: An entry ID, unique within the batch request.
12480	BatchId int64 `json:"batchId,omitempty"`
12481
12482	// MerchantId: The ID of the managing account.
12483	MerchantId uint64 `json:"merchantId,omitempty,string"`
12484
12485	// Method: Method of the batch request entry. Acceptable values are: -
12486	// "insert"
12487	Method string `json:"method,omitempty"`
12488
12489	// ProductId: The ID of the product for which to update price and
12490	// availability.
12491	ProductId string `json:"productId,omitempty"`
12492
12493	// RegionalInventory: Price and availability of the product.
12494	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
12495
12496	// ForceSendFields is a list of field names (e.g. "BatchId") to
12497	// unconditionally include in API requests. By default, fields with
12498	// empty values are omitted from API requests. However, any non-pointer,
12499	// non-interface field appearing in ForceSendFields will be sent to the
12500	// server regardless of whether the field is empty or not. This may be
12501	// used to include empty fields in Patch requests.
12502	ForceSendFields []string `json:"-"`
12503
12504	// NullFields is a list of field names (e.g. "BatchId") to include in
12505	// API requests with the JSON null value. By default, fields with empty
12506	// values are omitted from API requests. However, any field with an
12507	// empty value appearing in NullFields will be sent to the server as
12508	// null. It is an error if a field in this list has a non-empty value.
12509	// This may be used to include null fields in Patch requests.
12510	NullFields []string `json:"-"`
12511}
12512
12513func (s *RegionalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12514	type NoMethod RegionalinventoryCustomBatchRequestEntry
12515	raw := NoMethod(*s)
12516	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12517}
12518
12519type RegionalinventoryCustomBatchResponse struct {
12520	// Entries: The result of the execution of the batch requests.
12521	Entries []*RegionalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
12522
12523	// Kind: Identifies what kind of resource this is. Value: the fixed
12524	// string "content#regionalinventoryCustomBatchResponse".
12525	Kind string `json:"kind,omitempty"`
12526
12527	// ServerResponse contains the HTTP response code and headers from the
12528	// server.
12529	googleapi.ServerResponse `json:"-"`
12530
12531	// ForceSendFields is a list of field names (e.g. "Entries") to
12532	// unconditionally include in API requests. By default, fields with
12533	// empty values are omitted from API requests. However, any non-pointer,
12534	// non-interface field appearing in ForceSendFields will be sent to the
12535	// server regardless of whether the field is empty or not. This may be
12536	// used to include empty fields in Patch requests.
12537	ForceSendFields []string `json:"-"`
12538
12539	// NullFields is a list of field names (e.g. "Entries") to include in
12540	// API requests with the JSON null value. By default, fields with empty
12541	// values are omitted from API requests. However, any field with an
12542	// empty value appearing in NullFields will be sent to the server as
12543	// null. It is an error if a field in this list has a non-empty value.
12544	// This may be used to include null fields in Patch requests.
12545	NullFields []string `json:"-"`
12546}
12547
12548func (s *RegionalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
12549	type NoMethod RegionalinventoryCustomBatchResponse
12550	raw := NoMethod(*s)
12551	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12552}
12553
12554// RegionalinventoryCustomBatchResponseEntry: A batch entry encoding a
12555// single non-batch regional inventory response.
12556type RegionalinventoryCustomBatchResponseEntry struct {
12557	// BatchId: The ID of the request entry this entry responds to.
12558	BatchId int64 `json:"batchId,omitempty"`
12559
12560	// Errors: A list of errors defined if and only if the request failed.
12561	Errors *Errors `json:"errors,omitempty"`
12562
12563	// Kind: Identifies what kind of resource this is. Value: the fixed
12564	// string "content#regionalinventoryCustomBatchResponseEntry".
12565	Kind string `json:"kind,omitempty"`
12566
12567	// RegionalInventory: Price and availability of the product.
12568	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
12569
12570	// ForceSendFields is a list of field names (e.g. "BatchId") to
12571	// unconditionally include in API requests. By default, fields with
12572	// empty values are omitted from API requests. However, any non-pointer,
12573	// non-interface field appearing in ForceSendFields will be sent to the
12574	// server regardless of whether the field is empty or not. This may be
12575	// used to include empty fields in Patch requests.
12576	ForceSendFields []string `json:"-"`
12577
12578	// NullFields is a list of field names (e.g. "BatchId") to include in
12579	// API requests with the JSON null value. By default, fields with empty
12580	// values are omitted from API requests. However, any field with an
12581	// empty value appearing in NullFields will be sent to the server as
12582	// null. It is an error if a field in this list has a non-empty value.
12583	// This may be used to include null fields in Patch requests.
12584	NullFields []string `json:"-"`
12585}
12586
12587func (s *RegionalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12588	type NoMethod RegionalinventoryCustomBatchResponseEntry
12589	raw := NoMethod(*s)
12590	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12591}
12592
12593// ReportRow: Result row returned from the search query.
12594type ReportRow struct {
12595	// Metrics: Metrics requested by the merchant in the query. Metric
12596	// values are only set for metrics requested explicitly in the query.
12597	Metrics *Metrics `json:"metrics,omitempty"`
12598
12599	// Segments: Segmentation dimensions requested by the merchant in the
12600	// query. Dimension values are only set for dimensions requested
12601	// explicitly in the query.
12602	Segments *Segments `json:"segments,omitempty"`
12603
12604	// ForceSendFields is a list of field names (e.g. "Metrics") to
12605	// unconditionally include in API requests. By default, fields with
12606	// empty values are omitted from API requests. However, any non-pointer,
12607	// non-interface field appearing in ForceSendFields will be sent to the
12608	// server regardless of whether the field is empty or not. This may be
12609	// used to include empty fields in Patch requests.
12610	ForceSendFields []string `json:"-"`
12611
12612	// NullFields is a list of field names (e.g. "Metrics") to include in
12613	// API requests with the JSON null value. By default, fields with empty
12614	// values are omitted from API requests. However, any field with an
12615	// empty value appearing in NullFields will be sent to the server as
12616	// null. It is an error if a field in this list has a non-empty value.
12617	// This may be used to include null fields in Patch requests.
12618	NullFields []string `json:"-"`
12619}
12620
12621func (s *ReportRow) MarshalJSON() ([]byte, error) {
12622	type NoMethod ReportRow
12623	raw := NoMethod(*s)
12624	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12625}
12626
12627// RepricingProductReport: Resource that represents a daily Repricing
12628// product report. Each report contains stats for a single type of
12629// Repricing rule for a single product on a given day. If there are
12630// multiple rules of the same type for the product on that day, the
12631// report lists all the rules by rule ids, combines the stats, and
12632// paginates the results by date. To retrieve the stats of a particular
12633// rule, provide the rule_id in the request.
12634type RepricingProductReport struct {
12635	// ApplicationCount: Total count of Repricer applications. This value
12636	// captures how many times the rule of this type was applied to this
12637	// product during this reporting period.
12638	ApplicationCount int64 `json:"applicationCount,omitempty,string"`
12639
12640	// BuyboxWinningProductStats: Stats specific to buybox winning rules for
12641	// product report.
12642	BuyboxWinningProductStats *RepricingProductReportBuyboxWinningProductStats `json:"buyboxWinningProductStats,omitempty"`
12643
12644	// Date: Date of the stats in this report. The report starts and ends
12645	// according to the merchant's timezone.
12646	Date *Date `json:"date,omitempty"`
12647
12648	// HighWatermark: Maximum displayed price after repriced during this
12649	// reporting period.
12650	HighWatermark *PriceAmount `json:"highWatermark,omitempty"`
12651
12652	// InapplicabilityDetails: List of all reasons the rule did not apply to
12653	// the product during the specified reporting period.
12654	InapplicabilityDetails []*InapplicabilityDetails `json:"inapplicabilityDetails,omitempty"`
12655
12656	// LowWatermark: Minimum displayed price after repriced during this
12657	// reporting period.
12658	LowWatermark *PriceAmount `json:"lowWatermark,omitempty"`
12659
12660	// OrderItemCount: Total unit count of impacted products ordered while
12661	// the rule was active on the date of the report. This count includes
12662	// all orders that were started while the rule was active, even if the
12663	// rule was no longer active when the order was completed.
12664	OrderItemCount int64 `json:"orderItemCount,omitempty"`
12665
12666	// RuleIds: Ids of the Repricing rule for this report.
12667	RuleIds []string `json:"ruleIds,omitempty"`
12668
12669	// TotalGmv: Total GMV generated by impacted products while the rule was
12670	// active on the date of the report. This value includes all orders that
12671	// were started while the rule was active, even if the rule was no
12672	// longer active when the order was completed.
12673	TotalGmv *PriceAmount `json:"totalGmv,omitempty"`
12674
12675	// Type: Type of the rule.
12676	//
12677	// Possible values:
12678	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
12679	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
12680	// Google SA merchants. If this rule is chosen, repricer will adjust the
12681	// offer price based on statistical metrics (currently only min is
12682	// available) among other merchants who sell the same product. Details
12683	// need to be provdided in the RuleDefinition.
12684	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
12685	// adjust the offer price based on the offer's sale cost which is
12686	// provided by the merchant.
12687	Type string `json:"type,omitempty"`
12688
12689	// ForceSendFields is a list of field names (e.g. "ApplicationCount") to
12690	// unconditionally include in API requests. By default, fields with
12691	// empty values are omitted from API requests. However, any non-pointer,
12692	// non-interface field appearing in ForceSendFields will be sent to the
12693	// server regardless of whether the field is empty or not. This may be
12694	// used to include empty fields in Patch requests.
12695	ForceSendFields []string `json:"-"`
12696
12697	// NullFields is a list of field names (e.g. "ApplicationCount") to
12698	// include in API requests with the JSON null value. By default, fields
12699	// with empty values are omitted from API requests. However, any field
12700	// with an empty value appearing in NullFields will be sent to the
12701	// server as null. It is an error if a field in this list has a
12702	// non-empty value. This may be used to include null fields in Patch
12703	// requests.
12704	NullFields []string `json:"-"`
12705}
12706
12707func (s *RepricingProductReport) MarshalJSON() ([]byte, error) {
12708	type NoMethod RepricingProductReport
12709	raw := NoMethod(*s)
12710	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12711}
12712
12713// RepricingProductReportBuyboxWinningProductStats: Stats specific to
12714// buybox winning rules for product report.
12715type RepricingProductReportBuyboxWinningProductStats struct {
12716	// BuyboxWinsCount: Number of times this product won the buybox with
12717	// these rules during this time period.
12718	BuyboxWinsCount int64 `json:"buyboxWinsCount,omitempty"`
12719
12720	// ForceSendFields is a list of field names (e.g. "BuyboxWinsCount") to
12721	// unconditionally include in API requests. By default, fields with
12722	// empty values are omitted from API requests. However, any non-pointer,
12723	// non-interface field appearing in ForceSendFields will be sent to the
12724	// server regardless of whether the field is empty or not. This may be
12725	// used to include empty fields in Patch requests.
12726	ForceSendFields []string `json:"-"`
12727
12728	// NullFields is a list of field names (e.g. "BuyboxWinsCount") to
12729	// include in API requests with the JSON null value. By default, fields
12730	// with empty values are omitted from API requests. However, any field
12731	// with an empty value appearing in NullFields will be sent to the
12732	// server as null. It is an error if a field in this list has a
12733	// non-empty value. This may be used to include null fields in Patch
12734	// requests.
12735	NullFields []string `json:"-"`
12736}
12737
12738func (s *RepricingProductReportBuyboxWinningProductStats) MarshalJSON() ([]byte, error) {
12739	type NoMethod RepricingProductReportBuyboxWinningProductStats
12740	raw := NoMethod(*s)
12741	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12742}
12743
12744// RepricingRule: Represents a repricing rule. A repricing rule is used
12745// by shopping serving to adjust transactable offer prices if conditions
12746// are met. Next ID: 24
12747type RepricingRule struct {
12748	// CogsBasedRule: The rule definition for TYPE_COGS_BASED. Required when
12749	// the rule type is TYPE_COGS_BASED.
12750	CogsBasedRule *RepricingRuleCostOfGoodsSaleRule `json:"cogsBasedRule,omitempty"`
12751
12752	// CountryCode: Required. Immutable. CLDR country code
12753	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
12754	// (e.g. "US").
12755	CountryCode string `json:"countryCode,omitempty"`
12756
12757	// EffectiveTimePeriod: Required. Time period when the rule should take
12758	// effect.
12759	EffectiveTimePeriod *RepricingRuleEffectiveTime `json:"effectiveTimePeriod,omitempty"`
12760
12761	// EligibleOfferMatcher: Required. Match criteria for the eligible
12762	// offers.
12763	EligibleOfferMatcher *RepricingRuleEligibleOfferMatcher `json:"eligibleOfferMatcher,omitempty"`
12764
12765	// LanguageCode: Required. Immutable. The two-letter ISO 639-1 language
12766	// code associated with the repricing rule.
12767	LanguageCode string `json:"languageCode,omitempty"`
12768
12769	// MerchantId: Output only. Immutable. Merchant that owns the repricing
12770	// rule.
12771	MerchantId int64 `json:"merchantId,omitempty,string"`
12772
12773	// Paused: Represents whether a rule is paused. A paused rule will
12774	// behave like a non-paused rule within CRUD operations, with the major
12775	// difference that a paused rule will not be evaluated and will have no
12776	// effect on offers.
12777	Paused bool `json:"paused,omitempty"`
12778
12779	// Restriction: Required. Restriction of the rule appliance.
12780	Restriction *RepricingRuleRestriction `json:"restriction,omitempty"`
12781
12782	// RuleId: Output only. Immutable. The ID to uniquely identify each
12783	// repricing rule.
12784	RuleId string `json:"ruleId,omitempty"`
12785
12786	// StatsBasedRule: The rule definition for TYPE_STATS_BASED. Required
12787	// when the rule type is TYPE_STATS_BASED.
12788	StatsBasedRule *RepricingRuleStatsBasedRule `json:"statsBasedRule,omitempty"`
12789
12790	// Title: The title for the rule.
12791	Title string `json:"title,omitempty"`
12792
12793	// Type: Required. Immutable. The type of the rule.
12794	//
12795	// Possible values:
12796	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
12797	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
12798	// Google SA merchants. If this rule is chosen, repricer will adjust the
12799	// offer price based on statistical metrics (currently only min is
12800	// available) among other merchants who sell the same product. Details
12801	// need to be provdided in the RuleDefinition.
12802	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
12803	// adjust the offer price based on the offer's sale cost which is
12804	// provided by the merchant.
12805	Type string `json:"type,omitempty"`
12806
12807	// ServerResponse contains the HTTP response code and headers from the
12808	// server.
12809	googleapi.ServerResponse `json:"-"`
12810
12811	// ForceSendFields is a list of field names (e.g. "CogsBasedRule") to
12812	// unconditionally include in API requests. By default, fields with
12813	// empty values are omitted from API requests. However, any non-pointer,
12814	// non-interface field appearing in ForceSendFields will be sent to the
12815	// server regardless of whether the field is empty or not. This may be
12816	// used to include empty fields in Patch requests.
12817	ForceSendFields []string `json:"-"`
12818
12819	// NullFields is a list of field names (e.g. "CogsBasedRule") to include
12820	// in API requests with the JSON null value. By default, fields with
12821	// empty values are omitted from API requests. However, any field with
12822	// an empty value appearing in NullFields will be sent to the server as
12823	// null. It is an error if a field in this list has a non-empty value.
12824	// This may be used to include null fields in Patch requests.
12825	NullFields []string `json:"-"`
12826}
12827
12828func (s *RepricingRule) MarshalJSON() ([]byte, error) {
12829	type NoMethod RepricingRule
12830	raw := NoMethod(*s)
12831	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12832}
12833
12834// RepricingRuleCostOfGoodsSaleRule: A repricing rule that changes the
12835// sale price based on cost of goods sale.
12836type RepricingRuleCostOfGoodsSaleRule struct {
12837	// PercentageDelta: The percent change against the COGS. Ex: 20 would
12838	// mean to set the adjusted price 1.2X of the COGS data.
12839	PercentageDelta int64 `json:"percentageDelta,omitempty"`
12840
12841	// PriceDelta: The price delta against the COGS. E.g. 2 means $2 more of
12842	// the COGS.
12843	PriceDelta string `json:"priceDelta,omitempty"`
12844
12845	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
12846	// unconditionally include in API requests. By default, fields with
12847	// empty values are omitted from API requests. However, any non-pointer,
12848	// non-interface field appearing in ForceSendFields will be sent to the
12849	// server regardless of whether the field is empty or not. This may be
12850	// used to include empty fields in Patch requests.
12851	ForceSendFields []string `json:"-"`
12852
12853	// NullFields is a list of field names (e.g. "PercentageDelta") to
12854	// include in API requests with the JSON null value. By default, fields
12855	// with empty values are omitted from API requests. However, any field
12856	// with an empty value appearing in NullFields will be sent to the
12857	// server as null. It is an error if a field in this list has a
12858	// non-empty value. This may be used to include null fields in Patch
12859	// requests.
12860	NullFields []string `json:"-"`
12861}
12862
12863func (s *RepricingRuleCostOfGoodsSaleRule) MarshalJSON() ([]byte, error) {
12864	type NoMethod RepricingRuleCostOfGoodsSaleRule
12865	raw := NoMethod(*s)
12866	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12867}
12868
12869type RepricingRuleEffectiveTime struct {
12870	// FixedTimePeriods: A list of fixed time periods combined with OR. The
12871	// maximum number of entries is limited to 5.
12872	FixedTimePeriods []*RepricingRuleEffectiveTimeFixedTimePeriod `json:"fixedTimePeriods,omitempty"`
12873
12874	// ForceSendFields is a list of field names (e.g. "FixedTimePeriods") to
12875	// unconditionally include in API requests. By default, fields with
12876	// empty values are omitted from API requests. However, any non-pointer,
12877	// non-interface field appearing in ForceSendFields will be sent to the
12878	// server regardless of whether the field is empty or not. This may be
12879	// used to include empty fields in Patch requests.
12880	ForceSendFields []string `json:"-"`
12881
12882	// NullFields is a list of field names (e.g. "FixedTimePeriods") to
12883	// include in API requests with the JSON null value. By default, fields
12884	// with empty values are omitted from API requests. However, any field
12885	// with an empty value appearing in NullFields will be sent to the
12886	// server as null. It is an error if a field in this list has a
12887	// non-empty value. This may be used to include null fields in Patch
12888	// requests.
12889	NullFields []string `json:"-"`
12890}
12891
12892func (s *RepricingRuleEffectiveTime) MarshalJSON() ([]byte, error) {
12893	type NoMethod RepricingRuleEffectiveTime
12894	raw := NoMethod(*s)
12895	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12896}
12897
12898// RepricingRuleEffectiveTimeFixedTimePeriod: Definition of a fixed time
12899// period.
12900type RepricingRuleEffectiveTimeFixedTimePeriod struct {
12901	// EndTime: The end time (exclusive) of the period. It can only be hour
12902	// granularity.
12903	EndTime string `json:"endTime,omitempty"`
12904
12905	// StartTime: The start time (inclusive) of the period. It can only be
12906	// hour granularity.
12907	StartTime string `json:"startTime,omitempty"`
12908
12909	// ForceSendFields is a list of field names (e.g. "EndTime") to
12910	// unconditionally include in API requests. By default, fields with
12911	// empty values are omitted from API requests. However, any non-pointer,
12912	// non-interface field appearing in ForceSendFields will be sent to the
12913	// server regardless of whether the field is empty or not. This may be
12914	// used to include empty fields in Patch requests.
12915	ForceSendFields []string `json:"-"`
12916
12917	// NullFields is a list of field names (e.g. "EndTime") to include in
12918	// API requests with the JSON null value. By default, fields with empty
12919	// values are omitted from API requests. However, any field with an
12920	// empty value appearing in NullFields will be sent to the server as
12921	// null. It is an error if a field in this list has a non-empty value.
12922	// This may be used to include null fields in Patch requests.
12923	NullFields []string `json:"-"`
12924}
12925
12926func (s *RepricingRuleEffectiveTimeFixedTimePeriod) MarshalJSON() ([]byte, error) {
12927	type NoMethod RepricingRuleEffectiveTimeFixedTimePeriod
12928	raw := NoMethod(*s)
12929	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12930}
12931
12932// RepricingRuleEligibleOfferMatcher: Matcher that specifies eligible
12933// offers. When the USE_FEED_ATTRIBUTE option is selected, only the
12934// repricing_rule_id attribute on the product feed is used to specify
12935// offer-rule mapping. When the CUSTOM_FILTER option is selected, only
12936// the *_matcher fields are used to filter the offers for offer-rule
12937// mapping. If the CUSTOM_FILTER option is selected, an offer needs to
12938// satisfy each custom filter matcher to be eligible for a rule. Size
12939// limit: the sum of the number of entries in all the matchers should
12940// not exceed 20. For example, there can be 15 product ids and 5 brands,
12941// but not 10 product ids and 11 brands.
12942type RepricingRuleEligibleOfferMatcher struct {
12943	// BrandMatcher: Filter by the brand.
12944	BrandMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"brandMatcher,omitempty"`
12945
12946	// ItemGroupIdMatcher: Filter by the item group id.
12947	ItemGroupIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"itemGroupIdMatcher,omitempty"`
12948
12949	// MatcherOption: Determines whether to use the custom matchers or the
12950	// product feed attribute "repricing_rule_id" to specify offer-rule
12951	// mapping.
12952	//
12953	// Possible values:
12954	//   "MATCHER_OPTION_UNSPECIFIED" - Unused.
12955	//   "MATCHER_OPTION_CUSTOM_FILTER" - Use custom filters.
12956	//   "MATCHER_OPTION_USE_FEED_ATTRIBUTE" - Use repricing_rule_id feed
12957	// attribute on the product resource to specify offer-rule mapping.
12958	//   "MATCHER_OPTION_ALL_PRODUCTS" - Matching all products.
12959	MatcherOption string `json:"matcherOption,omitempty"`
12960
12961	// OfferIdMatcher: Filter by the offer id.
12962	OfferIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"offerIdMatcher,omitempty"`
12963
12964	// SkipWhenOnPromotion: When true, the rule won't be applied to offers
12965	// with active promotions.
12966	SkipWhenOnPromotion bool `json:"skipWhenOnPromotion,omitempty"`
12967
12968	// ForceSendFields is a list of field names (e.g. "BrandMatcher") to
12969	// unconditionally include in API requests. By default, fields with
12970	// empty values are omitted from API requests. However, any non-pointer,
12971	// non-interface field appearing in ForceSendFields will be sent to the
12972	// server regardless of whether the field is empty or not. This may be
12973	// used to include empty fields in Patch requests.
12974	ForceSendFields []string `json:"-"`
12975
12976	// NullFields is a list of field names (e.g. "BrandMatcher") to include
12977	// in API requests with the JSON null value. By default, fields with
12978	// empty values are omitted from API requests. However, any field with
12979	// an empty value appearing in NullFields will be sent to the server as
12980	// null. It is an error if a field in this list has a non-empty value.
12981	// This may be used to include null fields in Patch requests.
12982	NullFields []string `json:"-"`
12983}
12984
12985func (s *RepricingRuleEligibleOfferMatcher) MarshalJSON() ([]byte, error) {
12986	type NoMethod RepricingRuleEligibleOfferMatcher
12987	raw := NoMethod(*s)
12988	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12989}
12990
12991// RepricingRuleEligibleOfferMatcherStringMatcher: Matcher by string
12992// attributes.
12993type RepricingRuleEligibleOfferMatcherStringMatcher struct {
12994	// StrAttributes: String attributes, as long as such attribute of an
12995	// offer is one of the string attribute values, the offer is considered
12996	// as passing the matcher. The string matcher checks an offer for
12997	// inclusivity in the string attributes, not equality. Only literal
12998	// string matching is supported, no regex.
12999	StrAttributes []string `json:"strAttributes,omitempty"`
13000
13001	// ForceSendFields is a list of field names (e.g. "StrAttributes") to
13002	// unconditionally include in API requests. By default, fields with
13003	// empty values are omitted from API requests. However, any non-pointer,
13004	// non-interface field appearing in ForceSendFields will be sent to the
13005	// server regardless of whether the field is empty or not. This may be
13006	// used to include empty fields in Patch requests.
13007	ForceSendFields []string `json:"-"`
13008
13009	// NullFields is a list of field names (e.g. "StrAttributes") to include
13010	// in API requests with the JSON null value. By default, fields with
13011	// empty values are omitted from API requests. However, any field with
13012	// an empty value appearing in NullFields will be sent to the server as
13013	// null. It is an error if a field in this list has a non-empty value.
13014	// This may be used to include null fields in Patch requests.
13015	NullFields []string `json:"-"`
13016}
13017
13018func (s *RepricingRuleEligibleOfferMatcherStringMatcher) MarshalJSON() ([]byte, error) {
13019	type NoMethod RepricingRuleEligibleOfferMatcherStringMatcher
13020	raw := NoMethod(*s)
13021	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13022}
13023
13024// RepricingRuleReport: Resource that represents a daily Repricing rule
13025// report. Next ID: 11
13026type RepricingRuleReport struct {
13027	// BuyboxWinningRuleStats: Stats specific to buybox winning rules for
13028	// rule report.
13029	BuyboxWinningRuleStats *RepricingRuleReportBuyboxWinningRuleStats `json:"buyboxWinningRuleStats,omitempty"`
13030
13031	// Date: Date of the stats in this report. The report starts and ends
13032	// according to the merchant's timezone.
13033	Date *Date `json:"date,omitempty"`
13034
13035	// ImpactedProducts: List of product ids that are impacted by this rule
13036	// during this reporting period. Out of stock products and products not
13037	// searched for by customers are examples of non-impacted products.
13038	ImpactedProducts []string `json:"impactedProducts,omitempty"`
13039
13040	// InapplicabilityDetails: List of all reasons the rule did not apply to
13041	// the inapplicable products during the specified reporting period.
13042	InapplicabilityDetails []*InapplicabilityDetails `json:"inapplicabilityDetails,omitempty"`
13043
13044	// InapplicableProducts: List of product ids that are inapplicable to
13045	// this rule during this reporting period. To get the inapplicable
13046	// reason for a specific product, see RepricingProductReport.
13047	InapplicableProducts []string `json:"inapplicableProducts,omitempty"`
13048
13049	// OrderItemCount: Total unit count of impacted products ordered while
13050	// the rule was active on the date of the report. This count includes
13051	// all orders that were started while the rule was active, even if the
13052	// rule was no longer active when the order was completed.
13053	OrderItemCount int64 `json:"orderItemCount,omitempty"`
13054
13055	// RuleId: Id of the Repricing rule for this report.
13056	RuleId string `json:"ruleId,omitempty"`
13057
13058	// TotalGmv: Total GMV generated by impacted products while the rule was
13059	// active on the date of the report. This value includes all orders that
13060	// were started while the rule was active, even if the rule was no
13061	// longer active when the order was completed.
13062	TotalGmv *PriceAmount `json:"totalGmv,omitempty"`
13063
13064	// Type: Type of the rule.
13065	//
13066	// Possible values:
13067	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13068	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13069	// Google SA merchants. If this rule is chosen, repricer will adjust the
13070	// offer price based on statistical metrics (currently only min is
13071	// available) among other merchants who sell the same product. Details
13072	// need to be provdided in the RuleDefinition.
13073	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13074	// adjust the offer price based on the offer's sale cost which is
13075	// provided by the merchant.
13076	Type string `json:"type,omitempty"`
13077
13078	// ForceSendFields is a list of field names (e.g.
13079	// "BuyboxWinningRuleStats") to unconditionally include in API requests.
13080	// By default, fields with empty values are omitted from API requests.
13081	// However, any non-pointer, non-interface field appearing in
13082	// ForceSendFields will be sent to the server regardless of whether the
13083	// field is empty or not. This may be used to include empty fields in
13084	// Patch requests.
13085	ForceSendFields []string `json:"-"`
13086
13087	// NullFields is a list of field names (e.g. "BuyboxWinningRuleStats")
13088	// to include in API requests with the JSON null value. By default,
13089	// fields with empty values are omitted from API requests. However, any
13090	// field with an empty value appearing in NullFields will be sent to the
13091	// server as null. It is an error if a field in this list has a
13092	// non-empty value. This may be used to include null fields in Patch
13093	// requests.
13094	NullFields []string `json:"-"`
13095}
13096
13097func (s *RepricingRuleReport) MarshalJSON() ([]byte, error) {
13098	type NoMethod RepricingRuleReport
13099	raw := NoMethod(*s)
13100	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13101}
13102
13103// RepricingRuleReportBuyboxWinningRuleStats: Stats specific to buybox
13104// winning rules for rule report.
13105type RepricingRuleReportBuyboxWinningRuleStats struct {
13106	// BuyboxWonProductCount: Number of unique products that won the buybox
13107	// with this rule during this period of time.
13108	BuyboxWonProductCount int64 `json:"buyboxWonProductCount,omitempty"`
13109
13110	// ForceSendFields is a list of field names (e.g.
13111	// "BuyboxWonProductCount") to unconditionally include in API requests.
13112	// By default, fields with empty values are omitted from API requests.
13113	// However, any non-pointer, non-interface field appearing in
13114	// ForceSendFields will be sent to the server regardless of whether the
13115	// field is empty or not. This may be used to include empty fields in
13116	// Patch requests.
13117	ForceSendFields []string `json:"-"`
13118
13119	// NullFields is a list of field names (e.g. "BuyboxWonProductCount") to
13120	// include in API requests with the JSON null value. By default, fields
13121	// with empty values are omitted from API requests. However, any field
13122	// with an empty value appearing in NullFields will be sent to the
13123	// server as null. It is an error if a field in this list has a
13124	// non-empty value. This may be used to include null fields in Patch
13125	// requests.
13126	NullFields []string `json:"-"`
13127}
13128
13129func (s *RepricingRuleReportBuyboxWinningRuleStats) MarshalJSON() ([]byte, error) {
13130	type NoMethod RepricingRuleReportBuyboxWinningRuleStats
13131	raw := NoMethod(*s)
13132	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13133}
13134
13135// RepricingRuleRestriction: Definition of a rule restriction. At least
13136// one of the following needs to be true: (1) use_auto_pricing_min_price
13137// is true (2) floor.price_delta exists (3) floor.percentage_delta
13138// exists If floor.price_delta and floor.percentage_delta are both set
13139// on a rule, the highest value will be chosen by the Repricer. In other
13140// words, for a product with a price of $50, if the
13141// `floor.percentage_delta` is "-10" and the floor.price_delta is "-12",
13142// the offer price will only be lowered $5 (10% lower than the original
13143// offer price).
13144type RepricingRuleRestriction struct {
13145	// Floor: The inclusive floor lower bound. The repricing rule only
13146	// applies when new price >= floor.
13147	Floor *RepricingRuleRestrictionBoundary `json:"floor,omitempty"`
13148
13149	// UseAutoPricingMinPrice: If true, use the AUTO_PRICING_MIN_PRICE offer
13150	// attribute as the lower bound of the rule. If
13151	// use_auto_pricing_min_price is true, then only offers with
13152	// `AUTO_PRICING_MIN_PRICE` existing on the offer will get Repricer
13153	// treatment, even if a floor value is set on the rule. Also, if
13154	// use_auto_pricing_min_price is true, the floor restriction will be
13155	// ignored.
13156	UseAutoPricingMinPrice bool `json:"useAutoPricingMinPrice,omitempty"`
13157
13158	// ForceSendFields is a list of field names (e.g. "Floor") to
13159	// unconditionally include in API requests. By default, fields with
13160	// empty values are omitted from API requests. However, any non-pointer,
13161	// non-interface field appearing in ForceSendFields will be sent to the
13162	// server regardless of whether the field is empty or not. This may be
13163	// used to include empty fields in Patch requests.
13164	ForceSendFields []string `json:"-"`
13165
13166	// NullFields is a list of field names (e.g. "Floor") to include in API
13167	// requests with the JSON null value. By default, fields with empty
13168	// values are omitted from API requests. However, any field with an
13169	// empty value appearing in NullFields will be sent to the server as
13170	// null. It is an error if a field in this list has a non-empty value.
13171	// This may be used to include null fields in Patch requests.
13172	NullFields []string `json:"-"`
13173}
13174
13175func (s *RepricingRuleRestriction) MarshalJSON() ([]byte, error) {
13176	type NoMethod RepricingRuleRestriction
13177	raw := NoMethod(*s)
13178	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13179}
13180
13181// RepricingRuleRestrictionBoundary: Definition of a boundary.
13182type RepricingRuleRestrictionBoundary struct {
13183	// PercentageDelta: The percentage delta relative to the offer selling
13184	// price. This field is signed. It must be negative in floor. When it is
13185	// used in floor, it should be > -100. For example, if an offer is
13186	// selling at $10 and this field is -30 in floor, the repricing rule
13187	// only applies if the calculated new price is >= $7.
13188	PercentageDelta int64 `json:"percentageDelta,omitempty"`
13189
13190	// PriceDelta: The price micros relative to the offer selling price.
13191	// This field is signed. It must be negative in floor. For example, if
13192	// an offer is selling at $10 and this field is -$2 in floor, the
13193	// repricing rule only applies if the calculated new price is >= $8.
13194	PriceDelta string `json:"priceDelta,omitempty"`
13195
13196	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
13197	// unconditionally include in API requests. By default, fields with
13198	// empty values are omitted from API requests. However, any non-pointer,
13199	// non-interface field appearing in ForceSendFields will be sent to the
13200	// server regardless of whether the field is empty or not. This may be
13201	// used to include empty fields in Patch requests.
13202	ForceSendFields []string `json:"-"`
13203
13204	// NullFields is a list of field names (e.g. "PercentageDelta") to
13205	// include in API requests with the JSON null value. By default, fields
13206	// with empty values are omitted from API requests. However, any field
13207	// with an empty value appearing in NullFields will be sent to the
13208	// server as null. It is an error if a field in this list has a
13209	// non-empty value. This may be used to include null fields in Patch
13210	// requests.
13211	NullFields []string `json:"-"`
13212}
13213
13214func (s *RepricingRuleRestrictionBoundary) MarshalJSON() ([]byte, error) {
13215	type NoMethod RepricingRuleRestrictionBoundary
13216	raw := NoMethod(*s)
13217	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13218}
13219
13220// RepricingRuleStatsBasedRule: Definition of stats based rule.
13221type RepricingRuleStatsBasedRule struct {
13222	// PercentageDelta: The percent change against the price target. Valid
13223	// from 0 to 100 inclusively.
13224	PercentageDelta int64 `json:"percentageDelta,omitempty"`
13225
13226	// PriceDelta: The price delta against the above price target. A
13227	// positive value means the price should be adjusted to be above
13228	// statistical measure, and a negative value means below. Currency code
13229	// must not be included.
13230	PriceDelta string `json:"priceDelta,omitempty"`
13231
13232	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
13233	// unconditionally include in API requests. By default, fields with
13234	// empty values are omitted from API requests. However, any non-pointer,
13235	// non-interface field appearing in ForceSendFields will be sent to the
13236	// server regardless of whether the field is empty or not. This may be
13237	// used to include empty fields in Patch requests.
13238	ForceSendFields []string `json:"-"`
13239
13240	// NullFields is a list of field names (e.g. "PercentageDelta") to
13241	// include in API requests with the JSON null value. By default, fields
13242	// with empty values are omitted from API requests. However, any field
13243	// with an empty value appearing in NullFields will be sent to the
13244	// server as null. It is an error if a field in this list has a
13245	// non-empty value. This may be used to include null fields in Patch
13246	// requests.
13247	NullFields []string `json:"-"`
13248}
13249
13250func (s *RepricingRuleStatsBasedRule) MarshalJSON() ([]byte, error) {
13251	type NoMethod RepricingRuleStatsBasedRule
13252	raw := NoMethod(*s)
13253	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13254}
13255
13256// ReturnAddress: Return address resource.
13257type ReturnAddress struct {
13258	// Address: Required. The address.
13259	Address *ReturnAddressAddress `json:"address,omitempty"`
13260
13261	// Country: Required. The country of sale where the return address is
13262	// applicable.
13263	Country string `json:"country,omitempty"`
13264
13265	// Kind: Identifies what kind of resource this is. Value: the fixed
13266	// string "content#returnAddress"
13267	Kind string `json:"kind,omitempty"`
13268
13269	// Label: Required. The user-defined label of the return address. For
13270	// the default address, use the label "default".
13271	Label string `json:"label,omitempty"`
13272
13273	// PhoneNumber: Required. The merchant's contact phone number regarding
13274	// the return.
13275	PhoneNumber string `json:"phoneNumber,omitempty"`
13276
13277	// ReturnAddressId: Return address ID generated by Google.
13278	ReturnAddressId string `json:"returnAddressId,omitempty"`
13279
13280	// ServerResponse contains the HTTP response code and headers from the
13281	// server.
13282	googleapi.ServerResponse `json:"-"`
13283
13284	// ForceSendFields is a list of field names (e.g. "Address") to
13285	// unconditionally include in API requests. By default, fields with
13286	// empty values are omitted from API requests. However, any non-pointer,
13287	// non-interface field appearing in ForceSendFields will be sent to the
13288	// server regardless of whether the field is empty or not. This may be
13289	// used to include empty fields in Patch requests.
13290	ForceSendFields []string `json:"-"`
13291
13292	// NullFields is a list of field names (e.g. "Address") to include in
13293	// API requests with the JSON null value. By default, fields with empty
13294	// values are omitted from API requests. However, any field with an
13295	// empty value appearing in NullFields will be sent to the server as
13296	// null. It is an error if a field in this list has a non-empty value.
13297	// This may be used to include null fields in Patch requests.
13298	NullFields []string `json:"-"`
13299}
13300
13301func (s *ReturnAddress) MarshalJSON() ([]byte, error) {
13302	type NoMethod ReturnAddress
13303	raw := NoMethod(*s)
13304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13305}
13306
13307type ReturnAddressAddress struct {
13308	// Country: CLDR country code (e.g. "US").
13309	Country string `json:"country,omitempty"`
13310
13311	// Locality: City, town or commune. May also include dependent
13312	// localities or sublocalities (e.g. neighborhoods or suburbs).
13313	Locality string `json:"locality,omitempty"`
13314
13315	// PostalCode: Postal code or ZIP (e.g. "94043").
13316	PostalCode string `json:"postalCode,omitempty"`
13317
13318	// RecipientName: Name of the recipient to address returns to.
13319	RecipientName string `json:"recipientName,omitempty"`
13320
13321	// Region: Top-level administrative subdivision of the country. For
13322	// example, a state like California ("CA") or a province like Quebec
13323	// ("QC").
13324	Region string `json:"region,omitempty"`
13325
13326	// StreetAddress: Street-level part of the address. May be up to two
13327	// lines, each line specified as an array element.
13328	StreetAddress []string `json:"streetAddress,omitempty"`
13329
13330	// ForceSendFields is a list of field names (e.g. "Country") to
13331	// unconditionally include in API requests. By default, fields with
13332	// empty values are omitted from API requests. However, any non-pointer,
13333	// non-interface field appearing in ForceSendFields will be sent to the
13334	// server regardless of whether the field is empty or not. This may be
13335	// used to include empty fields in Patch requests.
13336	ForceSendFields []string `json:"-"`
13337
13338	// NullFields is a list of field names (e.g. "Country") to include in
13339	// API requests with the JSON null value. By default, fields with empty
13340	// values are omitted from API requests. However, any field with an
13341	// empty value appearing in NullFields will be sent to the server as
13342	// null. It is an error if a field in this list has a non-empty value.
13343	// This may be used to include null fields in Patch requests.
13344	NullFields []string `json:"-"`
13345}
13346
13347func (s *ReturnAddressAddress) MarshalJSON() ([]byte, error) {
13348	type NoMethod ReturnAddressAddress
13349	raw := NoMethod(*s)
13350	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13351}
13352
13353// ReturnPolicy: Return policy resource.
13354type ReturnPolicy struct {
13355	// Country: Required. The country of sale where the return policy is
13356	// applicable.
13357	Country string `json:"country,omitempty"`
13358
13359	// Kind: Identifies what kind of resource this is. Value: the fixed
13360	// string "content#returnPolicy"
13361	Kind string `json:"kind,omitempty"`
13362
13363	// Label: Required. The user-defined label of the return policy. For the
13364	// default policy, use the label "default".
13365	Label string `json:"label,omitempty"`
13366
13367	// Name: Required. The name of the policy as shown in Merchant Center.
13368	Name string `json:"name,omitempty"`
13369
13370	// NonFreeReturnReasons: Return reasons that will incur return fees.
13371	NonFreeReturnReasons []string `json:"nonFreeReturnReasons,omitempty"`
13372
13373	// Policy: Required. The policy.
13374	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
13375
13376	// ReturnPolicyId: Return policy ID generated by Google.
13377	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
13378
13379	// ReturnShippingFee: The return shipping fee that will apply to non
13380	// free return reasons.
13381	ReturnShippingFee *Price `json:"returnShippingFee,omitempty"`
13382
13383	// SeasonalOverrides: An optional list of seasonal overrides.
13384	SeasonalOverrides []*ReturnPolicySeasonalOverride `json:"seasonalOverrides,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. "Country") to
13391	// unconditionally include in API requests. By default, fields with
13392	// empty values are omitted from API requests. However, any non-pointer,
13393	// non-interface field appearing in ForceSendFields will be sent to the
13394	// server regardless of whether the field is empty or not. This may be
13395	// used to include empty fields in Patch requests.
13396	ForceSendFields []string `json:"-"`
13397
13398	// NullFields is a list of field names (e.g. "Country") 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 *ReturnPolicy) MarshalJSON() ([]byte, error) {
13408	type NoMethod ReturnPolicy
13409	raw := NoMethod(*s)
13410	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13411}
13412
13413// ReturnPolicyOnline: Return policy online object. This is currently
13414// used to represent return policies for ads and free listings programs.
13415type ReturnPolicyOnline struct {
13416	// Countries: The countries of sale where the return policy is
13417	// applicable. The values must be a valid 2 letter ISO 3166 code, e.g.
13418	// "US".
13419	Countries []string `json:"countries,omitempty"`
13420
13421	// ItemConditions: The item conditions that are accepted for returns.
13422	// This is required to not be empty unless the type of return policy is
13423	// noReturns.
13424	//
13425	// Possible values:
13426	//   "ITEM_CONDITION_UNSPECIFIED" - Default value. This value is unused.
13427	//   "NEW" - New.
13428	//   "USED" - Used.
13429	ItemConditions []string `json:"itemConditions,omitempty"`
13430
13431	// Label: The unique user-defined label of the return policy. The same
13432	// label cannot be used in different return policies for the same
13433	// country. Policies with the label 'default' will apply to all
13434	// products, unless a product specifies a return_policy_label attribute.
13435	Label string `json:"label,omitempty"`
13436
13437	// Name: The name of the policy as shown in Merchant Center.
13438	Name string `json:"name,omitempty"`
13439
13440	// Policy: The return policy.
13441	Policy *ReturnPolicyOnlinePolicy `json:"policy,omitempty"`
13442
13443	// RestockingFee: The restocking fee that applies to all return reason
13444	// categories. This would be treated as a free restocking fee if the
13445	// value is not set.
13446	RestockingFee *ReturnPolicyOnlineRestockingFee `json:"restockingFee,omitempty"`
13447
13448	// ReturnMethods: The return methods of how customers can return an
13449	// item. This value is required to not be empty unless the type of
13450	// return policy is noReturns.
13451	//
13452	// Possible values:
13453	//   "RETURN_METHOD_UNSPECIFIED" - Default value. This value is unused.
13454	//   "BY_MAIL" - By mail.
13455	//   "IN_STORE" - In store.
13456	//   "AT_A_KIOSK" - At a kiosk.
13457	ReturnMethods []string `json:"returnMethods,omitempty"`
13458
13459	// ReturnPolicyId: Output only. Return policy ID generated by Google.
13460	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
13461
13462	// ReturnPolicyUri: The return policy uri. This can used by Google to do
13463	// a sanity check for the policy.
13464	ReturnPolicyUri string `json:"returnPolicyUri,omitempty"`
13465
13466	// ReturnReasonCategoryInfo: The return reason category information.
13467	// This required to not be empty unless the type of return policy is
13468	// noReturns.
13469	ReturnReasonCategoryInfo []*ReturnPolicyOnlineReturnReasonCategoryInfo `json:"returnReasonCategoryInfo,omitempty"`
13470
13471	// ServerResponse contains the HTTP response code and headers from the
13472	// server.
13473	googleapi.ServerResponse `json:"-"`
13474
13475	// ForceSendFields is a list of field names (e.g. "Countries") to
13476	// unconditionally include in API requests. By default, fields with
13477	// empty values are omitted from API requests. However, any non-pointer,
13478	// non-interface field appearing in ForceSendFields will be sent to the
13479	// server regardless of whether the field is empty or not. This may be
13480	// used to include empty fields in Patch requests.
13481	ForceSendFields []string `json:"-"`
13482
13483	// NullFields is a list of field names (e.g. "Countries") to include in
13484	// API requests with the JSON null value. By default, fields with empty
13485	// values are omitted from API requests. However, any field with an
13486	// empty value appearing in NullFields will be sent to the server as
13487	// null. It is an error if a field in this list has a non-empty value.
13488	// This may be used to include null fields in Patch requests.
13489	NullFields []string `json:"-"`
13490}
13491
13492func (s *ReturnPolicyOnline) MarshalJSON() ([]byte, error) {
13493	type NoMethod ReturnPolicyOnline
13494	raw := NoMethod(*s)
13495	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13496}
13497
13498// ReturnPolicyOnlinePolicy: The available policies.
13499type ReturnPolicyOnlinePolicy struct {
13500	// Days: The number of days items can be returned after delivery, where
13501	// one day is defined to be 24 hours after the delivery timestamp.
13502	// Required for `numberOfDaysAfterDelivery` returns.
13503	Days int64 `json:"days,omitempty,string"`
13504
13505	// Type: Policy type.
13506	//
13507	// Possible values:
13508	//   "TYPE_UNSPECIFIED" - Default value. This value is unused.
13509	//   "NUMBER_OF_DAYS_AFTER_DELIVERY" - Number of days after a return is
13510	// delivered.
13511	//   "NO_RETURNS" - No returns.
13512	//   "LIFETIME_RETURNS" - Life time returns.
13513	Type string `json:"type,omitempty"`
13514
13515	// ForceSendFields is a list of field names (e.g. "Days") to
13516	// unconditionally include in API requests. By default, fields with
13517	// empty values are omitted from API requests. However, any non-pointer,
13518	// non-interface field appearing in ForceSendFields will be sent to the
13519	// server regardless of whether the field is empty or not. This may be
13520	// used to include empty fields in Patch requests.
13521	ForceSendFields []string `json:"-"`
13522
13523	// NullFields is a list of field names (e.g. "Days") to include in API
13524	// requests with the JSON null value. By default, fields with empty
13525	// values are omitted from API requests. However, any field with an
13526	// empty value appearing in NullFields will be sent to the server as
13527	// null. It is an error if a field in this list has a non-empty value.
13528	// This may be used to include null fields in Patch requests.
13529	NullFields []string `json:"-"`
13530}
13531
13532func (s *ReturnPolicyOnlinePolicy) MarshalJSON() ([]byte, error) {
13533	type NoMethod ReturnPolicyOnlinePolicy
13534	raw := NoMethod(*s)
13535	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13536}
13537
13538// ReturnPolicyOnlineRestockingFee: The restocking fee. This can either
13539// be a fixed fee or a micro percent.
13540type ReturnPolicyOnlineRestockingFee struct {
13541	// FixedFee: Fixed restocking fee.
13542	FixedFee *PriceAmount `json:"fixedFee,omitempty"`
13543
13544	// MicroPercent: Percent of total price in micros. 15,000,000 means 15%
13545	// of the total price would be charged.
13546	MicroPercent int64 `json:"microPercent,omitempty"`
13547
13548	// ForceSendFields is a list of field names (e.g. "FixedFee") to
13549	// unconditionally include in API requests. By default, fields with
13550	// empty values are omitted from API requests. However, any non-pointer,
13551	// non-interface field appearing in ForceSendFields will be sent to the
13552	// server regardless of whether the field is empty or not. This may be
13553	// used to include empty fields in Patch requests.
13554	ForceSendFields []string `json:"-"`
13555
13556	// NullFields is a list of field names (e.g. "FixedFee") to include in
13557	// API requests with the JSON null value. By default, fields with empty
13558	// values are omitted from API requests. However, any field with an
13559	// empty value appearing in NullFields will be sent to the server as
13560	// null. It is an error if a field in this list has a non-empty value.
13561	// This may be used to include null fields in Patch requests.
13562	NullFields []string `json:"-"`
13563}
13564
13565func (s *ReturnPolicyOnlineRestockingFee) MarshalJSON() ([]byte, error) {
13566	type NoMethod ReturnPolicyOnlineRestockingFee
13567	raw := NoMethod(*s)
13568	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13569}
13570
13571// ReturnPolicyOnlineReturnReasonCategoryInfo: The return reason
13572// category info wrapper.
13573type ReturnPolicyOnlineReturnReasonCategoryInfo struct {
13574	// ReturnLabelSource: The corresponding return label source.
13575	//
13576	// Possible values:
13577	//   "RETURN_LABEL_SOURCE_UNSPECIFIED" - Default value. This value is
13578	// unused.
13579	//   "DOWNLOAD_AND_PRINT" - Download and print the label.
13580	//   "IN_THE_BOX" - Label in the box.
13581	//   "CUSTOMER_RESPONSIBILITY" - Customers' responsibility to get the
13582	// label.
13583	ReturnLabelSource string `json:"returnLabelSource,omitempty"`
13584
13585	// ReturnReasonCategory: The return reason category.
13586	//
13587	// Possible values:
13588	//   "RETURN_REASON_CATEGORY_UNSPECIFIED" - Default value. This value is
13589	// unused.
13590	//   "BUYER_REMORSE" - Buyer remorse.
13591	//   "ITEM_DEFECT" - Item defect.
13592	ReturnReasonCategory string `json:"returnReasonCategory,omitempty"`
13593
13594	// ReturnShippingFee: The corresponding return shipping fee. This is
13595	// only applicable when returnLabelSource is not the customer's
13596	// responsibility.
13597	ReturnShippingFee *ReturnPolicyOnlineReturnShippingFee `json:"returnShippingFee,omitempty"`
13598
13599	// ForceSendFields is a list of field names (e.g. "ReturnLabelSource")
13600	// to unconditionally include in API requests. By default, fields with
13601	// empty values are omitted from API requests. However, any non-pointer,
13602	// non-interface field appearing in ForceSendFields will be sent to the
13603	// server regardless of whether the field is empty or not. This may be
13604	// used to include empty fields in Patch requests.
13605	ForceSendFields []string `json:"-"`
13606
13607	// NullFields is a list of field names (e.g. "ReturnLabelSource") to
13608	// include in API requests with the JSON null value. By default, fields
13609	// with empty values are omitted from API requests. However, any field
13610	// with an empty value appearing in NullFields will be sent to the
13611	// server as null. It is an error if a field in this list has a
13612	// non-empty value. This may be used to include null fields in Patch
13613	// requests.
13614	NullFields []string `json:"-"`
13615}
13616
13617func (s *ReturnPolicyOnlineReturnReasonCategoryInfo) MarshalJSON() ([]byte, error) {
13618	type NoMethod ReturnPolicyOnlineReturnReasonCategoryInfo
13619	raw := NoMethod(*s)
13620	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13621}
13622
13623// ReturnPolicyOnlineReturnShippingFee: The return shipping fee. This
13624// can either be a fixed fee or a boolean to indicate that the customer
13625// pays the actual shipping cost.
13626type ReturnPolicyOnlineReturnShippingFee struct {
13627	// FixedFee: Fixed return shipping fee amount. This value is only
13628	// applicable when type is FIXED. We will treat the return shipping fee
13629	// as free if type is FIXED and this value is not set.
13630	FixedFee *PriceAmount `json:"fixedFee,omitempty"`
13631
13632	// Type: Type of return shipping fee.
13633	//
13634	// Possible values:
13635	//   "TYPE_UNSPECIFIED" - Default value. This value is unused.
13636	//   "FIXED" - The return shipping fee is a fixed value.
13637	//   "CUSTOMER_PAYING_ACTUAL_FEE" - Customer will pay the actual return
13638	// shipping fee.
13639	Type string `json:"type,omitempty"`
13640
13641	// ForceSendFields is a list of field names (e.g. "FixedFee") to
13642	// unconditionally include in API requests. By default, fields with
13643	// empty values are omitted from API requests. However, any non-pointer,
13644	// non-interface field appearing in ForceSendFields will be sent to the
13645	// server regardless of whether the field is empty or not. This may be
13646	// used to include empty fields in Patch requests.
13647	ForceSendFields []string `json:"-"`
13648
13649	// NullFields is a list of field names (e.g. "FixedFee") to include in
13650	// API requests with the JSON null value. By default, fields with empty
13651	// values are omitted from API requests. However, any field with an
13652	// empty value appearing in NullFields will be sent to the server as
13653	// null. It is an error if a field in this list has a non-empty value.
13654	// This may be used to include null fields in Patch requests.
13655	NullFields []string `json:"-"`
13656}
13657
13658func (s *ReturnPolicyOnlineReturnShippingFee) MarshalJSON() ([]byte, error) {
13659	type NoMethod ReturnPolicyOnlineReturnShippingFee
13660	raw := NoMethod(*s)
13661	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13662}
13663
13664type ReturnPolicyPolicy struct {
13665	// LastReturnDate: Required. Last day for returning the items. In ISO
13666	// 8601 format. When specifying the return window like this, set the
13667	// policy type to "lastReturnDate". Use this for seasonal overrides
13668	// only.
13669	LastReturnDate string `json:"lastReturnDate,omitempty"`
13670
13671	// NumberOfDays: The number of days items can be returned after
13672	// delivery, where one day is defined to be 24 hours after the delivery
13673	// timestamp. When specifying the return window like this, set the
13674	// policy type to "numberOfDaysAfterDelivery". Acceptable values are 30,
13675	// 45, 60, 90, 100, 180, 270 and 365 for the default policy. Additional
13676	// policies further allow 14, 15, 21 and 28 days, but note that for most
13677	// items a minimum of 30 days is required for returns. Exceptions may be
13678	// made for electronics. A policy of less than 30 days can only be
13679	// applied to those items.
13680	NumberOfDays int64 `json:"numberOfDays,omitempty,string"`
13681
13682	// Type: Policy type. Use "lastReturnDate" for seasonal overrides only.
13683	// Note that for most items a minimum of 30 days is required for
13684	// returns. Exceptions may be made for electronics or non-returnable
13685	// items such as food, perishables, and living things. A policy of less
13686	// than 30 days can only be applied to those items. Acceptable values
13687	// are: - "lastReturnDate" - "lifetimeReturns" - "noReturns" -
13688	// "numberOfDaysAfterDelivery"
13689	Type string `json:"type,omitempty"`
13690
13691	// ForceSendFields is a list of field names (e.g. "LastReturnDate") to
13692	// unconditionally include in API requests. By default, fields with
13693	// empty values are omitted from API requests. However, any non-pointer,
13694	// non-interface field appearing in ForceSendFields will be sent to the
13695	// server regardless of whether the field is empty or not. This may be
13696	// used to include empty fields in Patch requests.
13697	ForceSendFields []string `json:"-"`
13698
13699	// NullFields is a list of field names (e.g. "LastReturnDate") to
13700	// include in API requests with the JSON null value. By default, fields
13701	// with empty values are omitted from API requests. However, any field
13702	// with an empty value appearing in NullFields will be sent to the
13703	// server as null. It is an error if a field in this list has a
13704	// non-empty value. This may be used to include null fields in Patch
13705	// requests.
13706	NullFields []string `json:"-"`
13707}
13708
13709func (s *ReturnPolicyPolicy) MarshalJSON() ([]byte, error) {
13710	type NoMethod ReturnPolicyPolicy
13711	raw := NoMethod(*s)
13712	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13713}
13714
13715type ReturnPolicySeasonalOverride struct {
13716	// EndDate: Required. Last day on which the override applies. In ISO
13717	// 8601 format.
13718	EndDate string `json:"endDate,omitempty"`
13719
13720	// Name: Required. The name of the seasonal override as shown in
13721	// Merchant Center.
13722	Name string `json:"name,omitempty"`
13723
13724	// Policy: Required. The policy which is in effect during that time.
13725	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
13726
13727	// StartDate: Required. First day on which the override applies. In ISO
13728	// 8601 format.
13729	StartDate string `json:"startDate,omitempty"`
13730
13731	// ForceSendFields is a list of field names (e.g. "EndDate") to
13732	// unconditionally include in API requests. By default, fields with
13733	// empty values are omitted from API requests. However, any non-pointer,
13734	// non-interface field appearing in ForceSendFields will be sent to the
13735	// server regardless of whether the field is empty or not. This may be
13736	// used to include empty fields in Patch requests.
13737	ForceSendFields []string `json:"-"`
13738
13739	// NullFields is a list of field names (e.g. "EndDate") to include in
13740	// API requests with the JSON null value. By default, fields with empty
13741	// values are omitted from API requests. However, any field with an
13742	// empty value appearing in NullFields will be sent to the server as
13743	// null. It is an error if a field in this list has a non-empty value.
13744	// This may be used to include null fields in Patch requests.
13745	NullFields []string `json:"-"`
13746}
13747
13748func (s *ReturnPolicySeasonalOverride) MarshalJSON() ([]byte, error) {
13749	type NoMethod ReturnPolicySeasonalOverride
13750	raw := NoMethod(*s)
13751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13752}
13753
13754type ReturnPricingInfo struct {
13755	// ChargeReturnShippingFee: Default option for whether merchant should
13756	// charge the customer for return shipping costs, based on customer
13757	// selected return reason and merchant's return policy for the items
13758	// being returned.
13759	ChargeReturnShippingFee bool `json:"chargeReturnShippingFee,omitempty"`
13760
13761	// MaxReturnShippingFee: Maximum return shipping costs that may be
13762	// charged to the customer depending on merchant's assessment of the
13763	// return reason and the merchant's return policy for the items being
13764	// returned.
13765	MaxReturnShippingFee *MonetaryAmount `json:"maxReturnShippingFee,omitempty"`
13766
13767	// RefundableItemsTotalAmount: Total amount that can be refunded for the
13768	// items in this return. It represents the total amount received by the
13769	// merchant for the items, after applying merchant coupons.
13770	RefundableItemsTotalAmount *MonetaryAmount `json:"refundableItemsTotalAmount,omitempty"`
13771
13772	// RefundableShippingAmount: Maximum amount that can be refunded for the
13773	// original shipping fee.
13774	RefundableShippingAmount *MonetaryAmount `json:"refundableShippingAmount,omitempty"`
13775
13776	// TotalRefundedAmount: Total amount already refunded by the merchant.
13777	// It includes all types of refunds (items, shipping, etc.) Not provided
13778	// if no refund has been applied yet.
13779	TotalRefundedAmount *MonetaryAmount `json:"totalRefundedAmount,omitempty"`
13780
13781	// ForceSendFields is a list of field names (e.g.
13782	// "ChargeReturnShippingFee") to unconditionally include in API
13783	// requests. By default, fields with empty values are omitted from API
13784	// requests. However, any non-pointer, non-interface field appearing in
13785	// ForceSendFields will be sent to the server regardless of whether the
13786	// field is empty or not. This may be used to include empty fields in
13787	// Patch requests.
13788	ForceSendFields []string `json:"-"`
13789
13790	// NullFields is a list of field names (e.g. "ChargeReturnShippingFee")
13791	// to include in API requests with the JSON null value. By default,
13792	// fields with empty values are omitted from API requests. However, any
13793	// field with an empty value appearing in NullFields will be sent to the
13794	// server as null. It is an error if a field in this list has a
13795	// non-empty value. This may be used to include null fields in Patch
13796	// requests.
13797	NullFields []string `json:"-"`
13798}
13799
13800func (s *ReturnPricingInfo) MarshalJSON() ([]byte, error) {
13801	type NoMethod ReturnPricingInfo
13802	raw := NoMethod(*s)
13803	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13804}
13805
13806type ReturnShipment struct {
13807	// CreationDate: The date of creation of the shipment, in ISO 8601
13808	// format.
13809	CreationDate string `json:"creationDate,omitempty"`
13810
13811	// DeliveryDate: The date of delivery of the shipment, in ISO 8601
13812	// format.
13813	DeliveryDate string `json:"deliveryDate,omitempty"`
13814
13815	// ReturnMethodType: Type of the return method. Acceptable values are: -
13816	// "byMail" - "contactCustomerSupport" - "returnless" -
13817	// "inStore"
13818	ReturnMethodType string `json:"returnMethodType,omitempty"`
13819
13820	// ShipmentId: Shipment ID generated by Google.
13821	ShipmentId string `json:"shipmentId,omitempty"`
13822
13823	// ShipmentTrackingInfos: Tracking information of the shipment. One
13824	// return shipment might be handled by several shipping carriers
13825	// sequentially.
13826	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
13827
13828	// ShippingDate: The date of shipping of the shipment, in ISO 8601
13829	// format.
13830	ShippingDate string `json:"shippingDate,omitempty"`
13831
13832	// State: State of the shipment. Acceptable values are: - "completed"
13833	// - "new" - "shipped" - "undeliverable" - "pending"
13834	State string `json:"state,omitempty"`
13835
13836	// ForceSendFields is a list of field names (e.g. "CreationDate") to
13837	// unconditionally include in API requests. By default, fields with
13838	// empty values are omitted from API requests. However, any non-pointer,
13839	// non-interface field appearing in ForceSendFields will be sent to the
13840	// server regardless of whether the field is empty or not. This may be
13841	// used to include empty fields in Patch requests.
13842	ForceSendFields []string `json:"-"`
13843
13844	// NullFields is a list of field names (e.g. "CreationDate") to include
13845	// in API requests with the JSON null value. By default, fields with
13846	// empty values are omitted from API requests. However, any field with
13847	// an empty value appearing in NullFields will be sent to the server as
13848	// null. It is an error if a field in this list has a non-empty value.
13849	// This may be used to include null fields in Patch requests.
13850	NullFields []string `json:"-"`
13851}
13852
13853func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
13854	type NoMethod ReturnShipment
13855	raw := NoMethod(*s)
13856	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13857}
13858
13859type ReturnaddressCustomBatchRequest struct {
13860	// Entries: The request entries to be processed in the batch.
13861	Entries []*ReturnaddressCustomBatchRequestEntry `json:"entries,omitempty"`
13862
13863	// ForceSendFields is a list of field names (e.g. "Entries") to
13864	// unconditionally include in API requests. By default, fields with
13865	// empty values are omitted from API requests. However, any non-pointer,
13866	// non-interface field appearing in ForceSendFields will be sent to the
13867	// server regardless of whether the field is empty or not. This may be
13868	// used to include empty fields in Patch requests.
13869	ForceSendFields []string `json:"-"`
13870
13871	// NullFields is a list of field names (e.g. "Entries") to include in
13872	// API requests with the JSON null value. By default, fields with empty
13873	// values are omitted from API requests. However, any field with an
13874	// empty value appearing in NullFields will be sent to the server as
13875	// null. It is an error if a field in this list has a non-empty value.
13876	// This may be used to include null fields in Patch requests.
13877	NullFields []string `json:"-"`
13878}
13879
13880func (s *ReturnaddressCustomBatchRequest) MarshalJSON() ([]byte, error) {
13881	type NoMethod ReturnaddressCustomBatchRequest
13882	raw := NoMethod(*s)
13883	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13884}
13885
13886type ReturnaddressCustomBatchRequestEntry struct {
13887	// BatchId: An entry ID, unique within the batch request.
13888	BatchId int64 `json:"batchId,omitempty"`
13889
13890	// MerchantId: The Merchant Center account ID.
13891	MerchantId uint64 `json:"merchantId,omitempty,string"`
13892
13893	// Method: Method of the batch request entry. Acceptable values are: -
13894	// "delete" - "get" - "insert"
13895	Method string `json:"method,omitempty"`
13896
13897	// ReturnAddress: The return address to submit. This should be set only
13898	// if the method is `insert`.
13899	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
13900
13901	// ReturnAddressId: The return address ID. This should be set only if
13902	// the method is `delete` or `get`.
13903	ReturnAddressId string `json:"returnAddressId,omitempty"`
13904
13905	// ForceSendFields is a list of field names (e.g. "BatchId") to
13906	// unconditionally include in API requests. By default, fields with
13907	// empty values are omitted from API requests. However, any non-pointer,
13908	// non-interface field appearing in ForceSendFields will be sent to the
13909	// server regardless of whether the field is empty or not. This may be
13910	// used to include empty fields in Patch requests.
13911	ForceSendFields []string `json:"-"`
13912
13913	// NullFields is a list of field names (e.g. "BatchId") to include in
13914	// API requests with the JSON null value. By default, fields with empty
13915	// values are omitted from API requests. However, any field with an
13916	// empty value appearing in NullFields will be sent to the server as
13917	// null. It is an error if a field in this list has a non-empty value.
13918	// This may be used to include null fields in Patch requests.
13919	NullFields []string `json:"-"`
13920}
13921
13922func (s *ReturnaddressCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
13923	type NoMethod ReturnaddressCustomBatchRequestEntry
13924	raw := NoMethod(*s)
13925	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13926}
13927
13928type ReturnaddressCustomBatchResponse struct {
13929	// Entries: The result of the execution of the batch requests.
13930	Entries []*ReturnaddressCustomBatchResponseEntry `json:"entries,omitempty"`
13931
13932	// Kind: Identifies what kind of resource this is. Value: the fixed
13933	// string "content#returnaddressCustomBatchResponse".
13934	Kind string `json:"kind,omitempty"`
13935
13936	// ServerResponse contains the HTTP response code and headers from the
13937	// server.
13938	googleapi.ServerResponse `json:"-"`
13939
13940	// ForceSendFields is a list of field names (e.g. "Entries") to
13941	// unconditionally include in API requests. By default, fields with
13942	// empty values are omitted from API requests. However, any non-pointer,
13943	// non-interface field appearing in ForceSendFields will be sent to the
13944	// server regardless of whether the field is empty or not. This may be
13945	// used to include empty fields in Patch requests.
13946	ForceSendFields []string `json:"-"`
13947
13948	// NullFields is a list of field names (e.g. "Entries") to include in
13949	// API requests with the JSON null value. By default, fields with empty
13950	// values are omitted from API requests. However, any field with an
13951	// empty value appearing in NullFields will be sent to the server as
13952	// null. It is an error if a field in this list has a non-empty value.
13953	// This may be used to include null fields in Patch requests.
13954	NullFields []string `json:"-"`
13955}
13956
13957func (s *ReturnaddressCustomBatchResponse) MarshalJSON() ([]byte, error) {
13958	type NoMethod ReturnaddressCustomBatchResponse
13959	raw := NoMethod(*s)
13960	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13961}
13962
13963type ReturnaddressCustomBatchResponseEntry struct {
13964	// BatchId: The ID of the request entry to which this entry responds.
13965	BatchId int64 `json:"batchId,omitempty"`
13966
13967	// Errors: A list of errors defined if, and only if, the request failed.
13968	Errors *Errors `json:"errors,omitempty"`
13969
13970	// Kind: Identifies what kind of resource this is. Value: the fixed
13971	// string "content#returnaddressCustomBatchResponseEntry"
13972	Kind string `json:"kind,omitempty"`
13973
13974	// ReturnAddress: The retrieved return address.
13975	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
13976
13977	// ForceSendFields is a list of field names (e.g. "BatchId") to
13978	// unconditionally include in API requests. By default, fields with
13979	// empty values are omitted from API requests. However, any non-pointer,
13980	// non-interface field appearing in ForceSendFields will be sent to the
13981	// server regardless of whether the field is empty or not. This may be
13982	// used to include empty fields in Patch requests.
13983	ForceSendFields []string `json:"-"`
13984
13985	// NullFields is a list of field names (e.g. "BatchId") to include in
13986	// API requests with the JSON null value. By default, fields with empty
13987	// values are omitted from API requests. However, any field with an
13988	// empty value appearing in NullFields will be sent to the server as
13989	// null. It is an error if a field in this list has a non-empty value.
13990	// This may be used to include null fields in Patch requests.
13991	NullFields []string `json:"-"`
13992}
13993
13994func (s *ReturnaddressCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
13995	type NoMethod ReturnaddressCustomBatchResponseEntry
13996	raw := NoMethod(*s)
13997	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13998}
13999
14000type ReturnaddressListResponse struct {
14001	// Kind: Identifies what kind of resource this is. Value: the fixed
14002	// string "content#returnaddressListResponse".
14003	Kind string `json:"kind,omitempty"`
14004
14005	// NextPageToken: The token for the retrieval of the next page of
14006	// addresses.
14007	NextPageToken string `json:"nextPageToken,omitempty"`
14008
14009	Resources []*ReturnAddress `json:"resources,omitempty"`
14010
14011	// ServerResponse contains the HTTP response code and headers from the
14012	// server.
14013	googleapi.ServerResponse `json:"-"`
14014
14015	// ForceSendFields is a list of field names (e.g. "Kind") to
14016	// unconditionally include in API requests. By default, fields with
14017	// empty values are omitted from API requests. However, any non-pointer,
14018	// non-interface field appearing in ForceSendFields will be sent to the
14019	// server regardless of whether the field is empty or not. This may be
14020	// used to include empty fields in Patch requests.
14021	ForceSendFields []string `json:"-"`
14022
14023	// NullFields is a list of field names (e.g. "Kind") to include in API
14024	// requests with the JSON null value. By default, fields with empty
14025	// values are omitted from API requests. However, any field with an
14026	// empty value appearing in NullFields will be sent to the server as
14027	// null. It is an error if a field in this list has a non-empty value.
14028	// This may be used to include null fields in Patch requests.
14029	NullFields []string `json:"-"`
14030}
14031
14032func (s *ReturnaddressListResponse) MarshalJSON() ([]byte, error) {
14033	type NoMethod ReturnaddressListResponse
14034	raw := NoMethod(*s)
14035	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14036}
14037
14038type ReturnpolicyCustomBatchRequest struct {
14039	// Entries: The request entries to be processed in the batch.
14040	Entries []*ReturnpolicyCustomBatchRequestEntry `json:"entries,omitempty"`
14041
14042	// ForceSendFields is a list of field names (e.g. "Entries") to
14043	// unconditionally include in API requests. By default, fields with
14044	// empty values are omitted from API requests. However, any non-pointer,
14045	// non-interface field appearing in ForceSendFields will be sent to the
14046	// server regardless of whether the field is empty or not. This may be
14047	// used to include empty fields in Patch requests.
14048	ForceSendFields []string `json:"-"`
14049
14050	// NullFields is a list of field names (e.g. "Entries") to include in
14051	// API requests with the JSON null value. By default, fields with empty
14052	// values are omitted from API requests. However, any field with an
14053	// empty value appearing in NullFields will be sent to the server as
14054	// null. It is an error if a field in this list has a non-empty value.
14055	// This may be used to include null fields in Patch requests.
14056	NullFields []string `json:"-"`
14057}
14058
14059func (s *ReturnpolicyCustomBatchRequest) MarshalJSON() ([]byte, error) {
14060	type NoMethod ReturnpolicyCustomBatchRequest
14061	raw := NoMethod(*s)
14062	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14063}
14064
14065type ReturnpolicyCustomBatchRequestEntry struct {
14066	// BatchId: An entry ID, unique within the batch request.
14067	BatchId int64 `json:"batchId,omitempty"`
14068
14069	// MerchantId: The Merchant Center account ID.
14070	MerchantId uint64 `json:"merchantId,omitempty,string"`
14071
14072	// Method: Method of the batch request entry. Acceptable values are: -
14073	// "delete" - "get" - "insert"
14074	Method string `json:"method,omitempty"`
14075
14076	// ReturnPolicy: The return policy to submit. This should be set only if
14077	// the method is `insert`.
14078	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
14079
14080	// ReturnPolicyId: The return policy ID. This should be set only if the
14081	// method is `delete` or `get`.
14082	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
14083
14084	// ForceSendFields is a list of field names (e.g. "BatchId") to
14085	// unconditionally include in API requests. By default, fields with
14086	// empty values are omitted from API requests. However, any non-pointer,
14087	// non-interface field appearing in ForceSendFields will be sent to the
14088	// server regardless of whether the field is empty or not. This may be
14089	// used to include empty fields in Patch requests.
14090	ForceSendFields []string `json:"-"`
14091
14092	// NullFields is a list of field names (e.g. "BatchId") to include in
14093	// API requests with the JSON null value. By default, fields with empty
14094	// values are omitted from API requests. However, any field with an
14095	// empty value appearing in NullFields will be sent to the server as
14096	// null. It is an error if a field in this list has a non-empty value.
14097	// This may be used to include null fields in Patch requests.
14098	NullFields []string `json:"-"`
14099}
14100
14101func (s *ReturnpolicyCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
14102	type NoMethod ReturnpolicyCustomBatchRequestEntry
14103	raw := NoMethod(*s)
14104	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14105}
14106
14107type ReturnpolicyCustomBatchResponse struct {
14108	// Entries: The result of the execution of the batch requests.
14109	Entries []*ReturnpolicyCustomBatchResponseEntry `json:"entries,omitempty"`
14110
14111	// Kind: Identifies what kind of resource this is. Value: the fixed
14112	// string "content#returnpolicyCustomBatchResponse".
14113	Kind string `json:"kind,omitempty"`
14114
14115	// ServerResponse contains the HTTP response code and headers from the
14116	// server.
14117	googleapi.ServerResponse `json:"-"`
14118
14119	// ForceSendFields is a list of field names (e.g. "Entries") to
14120	// unconditionally include in API requests. By default, fields with
14121	// empty values are omitted from API requests. However, any non-pointer,
14122	// non-interface field appearing in ForceSendFields will be sent to the
14123	// server regardless of whether the field is empty or not. This may be
14124	// used to include empty fields in Patch requests.
14125	ForceSendFields []string `json:"-"`
14126
14127	// NullFields is a list of field names (e.g. "Entries") to include in
14128	// API requests with the JSON null value. By default, fields with empty
14129	// values are omitted from API requests. However, any field with an
14130	// empty value appearing in NullFields will be sent to the server as
14131	// null. It is an error if a field in this list has a non-empty value.
14132	// This may be used to include null fields in Patch requests.
14133	NullFields []string `json:"-"`
14134}
14135
14136func (s *ReturnpolicyCustomBatchResponse) MarshalJSON() ([]byte, error) {
14137	type NoMethod ReturnpolicyCustomBatchResponse
14138	raw := NoMethod(*s)
14139	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14140}
14141
14142type ReturnpolicyCustomBatchResponseEntry struct {
14143	// BatchId: The ID of the request entry to which this entry responds.
14144	BatchId int64 `json:"batchId,omitempty"`
14145
14146	// Errors: A list of errors defined if, and only if, the request failed.
14147	Errors *Errors `json:"errors,omitempty"`
14148
14149	// Kind: Identifies what kind of resource this is. Value: the fixed
14150	// string "content#returnpolicyCustomBatchResponseEntry"
14151	Kind string `json:"kind,omitempty"`
14152
14153	// ReturnPolicy: The retrieved return policy.
14154	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
14155
14156	// ForceSendFields is a list of field names (e.g. "BatchId") to
14157	// unconditionally include in API requests. By default, fields with
14158	// empty values are omitted from API requests. However, any non-pointer,
14159	// non-interface field appearing in ForceSendFields will be sent to the
14160	// server regardless of whether the field is empty or not. This may be
14161	// used to include empty fields in Patch requests.
14162	ForceSendFields []string `json:"-"`
14163
14164	// NullFields is a list of field names (e.g. "BatchId") to include in
14165	// API requests with the JSON null value. By default, fields with empty
14166	// values are omitted from API requests. However, any field with an
14167	// empty value appearing in NullFields will be sent to the server as
14168	// null. It is an error if a field in this list has a non-empty value.
14169	// This may be used to include null fields in Patch requests.
14170	NullFields []string `json:"-"`
14171}
14172
14173func (s *ReturnpolicyCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
14174	type NoMethod ReturnpolicyCustomBatchResponseEntry
14175	raw := NoMethod(*s)
14176	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14177}
14178
14179type ReturnpolicyListResponse struct {
14180	// Kind: Identifies what kind of resource this is. Value: the fixed
14181	// string "content#returnpolicyListResponse".
14182	Kind string `json:"kind,omitempty"`
14183
14184	Resources []*ReturnPolicy `json:"resources,omitempty"`
14185
14186	// ServerResponse contains the HTTP response code and headers from the
14187	// server.
14188	googleapi.ServerResponse `json:"-"`
14189
14190	// ForceSendFields is a list of field names (e.g. "Kind") to
14191	// unconditionally include in API requests. By default, fields with
14192	// empty values are omitted from API requests. However, any non-pointer,
14193	// non-interface field appearing in ForceSendFields will be sent to the
14194	// server regardless of whether the field is empty or not. This may be
14195	// used to include empty fields in Patch requests.
14196	ForceSendFields []string `json:"-"`
14197
14198	// NullFields is a list of field names (e.g. "Kind") to include in API
14199	// requests with the JSON null value. By default, fields with empty
14200	// values are omitted from API requests. However, any field with an
14201	// empty value appearing in NullFields will be sent to the server as
14202	// null. It is an error if a field in this list has a non-empty value.
14203	// This may be used to include null fields in Patch requests.
14204	NullFields []string `json:"-"`
14205}
14206
14207func (s *ReturnpolicyListResponse) MarshalJSON() ([]byte, error) {
14208	type NoMethod ReturnpolicyListResponse
14209	raw := NoMethod(*s)
14210	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14211}
14212
14213type Row struct {
14214	// Cells: The list of cells that constitute the row. Must have the same
14215	// length as `columnHeaders` for two-dimensional tables, a length of 1
14216	// for one-dimensional tables. Required.
14217	Cells []*Value `json:"cells,omitempty"`
14218
14219	// ForceSendFields is a list of field names (e.g. "Cells") to
14220	// unconditionally include in API requests. By default, fields with
14221	// empty values are omitted from API requests. However, any non-pointer,
14222	// non-interface field appearing in ForceSendFields will be sent to the
14223	// server regardless of whether the field is empty or not. This may be
14224	// used to include empty fields in Patch requests.
14225	ForceSendFields []string `json:"-"`
14226
14227	// NullFields is a list of field names (e.g. "Cells") to include in API
14228	// requests with the JSON null value. By default, fields with empty
14229	// values are omitted from API requests. However, any field with an
14230	// empty value appearing in NullFields will be sent to the server as
14231	// null. It is an error if a field in this list has a non-empty value.
14232	// This may be used to include null fields in Patch requests.
14233	NullFields []string `json:"-"`
14234}
14235
14236func (s *Row) MarshalJSON() ([]byte, error) {
14237	type NoMethod Row
14238	raw := NoMethod(*s)
14239	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14240}
14241
14242// SearchRequest: Request message for the ReportService.Search method.
14243type SearchRequest struct {
14244	// PageSize: Number of ReportRows to retrieve in a single page. Defaults
14245	// to the maximum of 1000. Values above 1000 are coerced to 1000.
14246	PageSize int64 `json:"pageSize,omitempty"`
14247
14248	// PageToken: Token of the page to retrieve. If not specified, the first
14249	// page of results is returned. In order to request the next page of
14250	// results, the value obtained from `next_page_token` in the previous
14251	// response should be used.
14252	PageToken string `json:"pageToken,omitempty"`
14253
14254	// Query: Required. Query that defines performance metrics to retrieve
14255	// and dimensions according to which the metrics are to be segmented.
14256	Query string `json:"query,omitempty"`
14257
14258	// ForceSendFields is a list of field names (e.g. "PageSize") to
14259	// unconditionally include in API requests. By default, fields with
14260	// empty values are omitted from API requests. However, any non-pointer,
14261	// non-interface field appearing in ForceSendFields will be sent to the
14262	// server regardless of whether the field is empty or not. This may be
14263	// used to include empty fields in Patch requests.
14264	ForceSendFields []string `json:"-"`
14265
14266	// NullFields is a list of field names (e.g. "PageSize") to include in
14267	// API requests with the JSON null value. By default, fields with empty
14268	// values are omitted from API requests. However, any field with an
14269	// empty value appearing in NullFields will be sent to the server as
14270	// null. It is an error if a field in this list has a non-empty value.
14271	// This may be used to include null fields in Patch requests.
14272	NullFields []string `json:"-"`
14273}
14274
14275func (s *SearchRequest) MarshalJSON() ([]byte, error) {
14276	type NoMethod SearchRequest
14277	raw := NoMethod(*s)
14278	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14279}
14280
14281// SearchResponse: Response message for the ReportService.Search method.
14282type SearchResponse struct {
14283	// NextPageToken: Token which can be sent as `page_token` to retrieve
14284	// the next page. If omitted, there are no subsequent pages.
14285	NextPageToken string `json:"nextPageToken,omitempty"`
14286
14287	// Results: Rows that matched the search query.
14288	Results []*ReportRow `json:"results,omitempty"`
14289
14290	// ServerResponse contains the HTTP response code and headers from the
14291	// server.
14292	googleapi.ServerResponse `json:"-"`
14293
14294	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
14295	// unconditionally include in API requests. By default, fields with
14296	// empty values are omitted from API requests. However, any non-pointer,
14297	// non-interface field appearing in ForceSendFields will be sent to the
14298	// server regardless of whether the field is empty or not. This may be
14299	// used to include empty fields in Patch requests.
14300	ForceSendFields []string `json:"-"`
14301
14302	// NullFields is a list of field names (e.g. "NextPageToken") to include
14303	// in API requests with the JSON null value. By default, fields with
14304	// empty values are omitted from API requests. However, any field with
14305	// an empty value appearing in NullFields will be sent to the server as
14306	// null. It is an error if a field in this list has a non-empty value.
14307	// This may be used to include null fields in Patch requests.
14308	NullFields []string `json:"-"`
14309}
14310
14311func (s *SearchResponse) MarshalJSON() ([]byte, error) {
14312	type NoMethod SearchResponse
14313	raw := NoMethod(*s)
14314	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14315}
14316
14317// Segments: Dimensions according to which metrics are segmented in the
14318// response. Values of product dimensions, e.g., offer id, reflect the
14319// state of a product at the time of the corresponding event, e.g.,
14320// impression or order. Segment fields cannot be selected in queries
14321// without also selecting at least one metric field. Values are only set
14322// for dimensions requested explicitly in the request's search query.
14323// Next id: 22
14324type Segments struct {
14325	// Date: Date in the merchant timezone to which metrics apply.
14326	Date *Date `json:"date,omitempty"`
14327
14328	// OfferId: Merchant-provided id of the product.
14329	OfferId string `json:"offerId,omitempty"`
14330
14331	// Program: Program to which metrics apply, e.g., Free Product Listing.
14332	//
14333	// Possible values:
14334	//   "PROGRAM_UNSPECIFIED" - Not specified.
14335	//   "SHOPPING_ADS" - Shopping Ads.
14336	//   "FREE_PRODUCT_LISTING" - Free Product Listing.
14337	//   "FREE_LOCAL_PRODUCT_LISTING" - Free Local Product Listing.
14338	//   "BUY_ON_GOOGLE_LISTING" - Buy on Google Listing.
14339	Program string `json:"program,omitempty"`
14340
14341	// ForceSendFields is a list of field names (e.g. "Date") to
14342	// unconditionally include in API requests. By default, fields with
14343	// empty values are omitted from API requests. However, any non-pointer,
14344	// non-interface field appearing in ForceSendFields will be sent to the
14345	// server regardless of whether the field is empty or not. This may be
14346	// used to include empty fields in Patch requests.
14347	ForceSendFields []string `json:"-"`
14348
14349	// NullFields is a list of field names (e.g. "Date") to include in API
14350	// requests with the JSON null value. By default, fields with empty
14351	// values are omitted from API requests. However, any field with an
14352	// empty value appearing in NullFields will be sent to the server as
14353	// null. It is an error if a field in this list has a non-empty value.
14354	// This may be used to include null fields in Patch requests.
14355	NullFields []string `json:"-"`
14356}
14357
14358func (s *Segments) MarshalJSON() ([]byte, error) {
14359	type NoMethod Segments
14360	raw := NoMethod(*s)
14361	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14362}
14363
14364type Service struct {
14365	// Active: A boolean exposing the active status of the shipping service.
14366	// Required.
14367	Active bool `json:"active,omitempty"`
14368
14369	// Currency: The CLDR code of the currency to which this service
14370	// applies. Must match that of the prices in rate groups.
14371	Currency string `json:"currency,omitempty"`
14372
14373	// DeliveryCountry: The CLDR territory code of the country to which the
14374	// service applies. Required.
14375	DeliveryCountry string `json:"deliveryCountry,omitempty"`
14376
14377	// DeliveryTime: Time spent in various aspects from order to the
14378	// delivery of the product. Required.
14379	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
14380
14381	// Eligibility: Eligibility for this service. Acceptable values are: -
14382	// "All scenarios" - "All scenarios except Shopping Actions" -
14383	// "Shopping Actions"
14384	Eligibility string `json:"eligibility,omitempty"`
14385
14386	// MinimumOrderValue: Minimum order value for this service. If set,
14387	// indicates that customers will have to spend at least this amount. All
14388	// prices within a service must have the same currency. Cannot be set
14389	// together with minimum_order_value_table.
14390	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
14391
14392	// MinimumOrderValueTable: Table of per store minimum order values for
14393	// the pickup fulfillment type. Cannot be set together with
14394	// minimum_order_value.
14395	MinimumOrderValueTable *MinimumOrderValueTable `json:"minimumOrderValueTable,omitempty"`
14396
14397	// Name: Free-form name of the service. Must be unique within target
14398	// account. Required.
14399	Name string `json:"name,omitempty"`
14400
14401	// PickupService: The carrier-service pair delivering items to
14402	// collection points. The list of supported pickup services can be
14403	// retrieved via the `getSupportedPickupServices` method. Required if
14404	// and only if the service delivery type is `pickup`.
14405	PickupService *PickupCarrierService `json:"pickupService,omitempty"`
14406
14407	// RateGroups: Shipping rate group definitions. Only the last one is
14408	// allowed to have an empty `applicableShippingLabels`, which means
14409	// "everything else". The other `applicableShippingLabels` must not
14410	// overlap.
14411	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
14412
14413	// ShipmentType: Type of locations this service ships orders to.
14414	// Acceptable values are: - "delivery" - "pickup"
14415	ShipmentType string `json:"shipmentType,omitempty"`
14416
14417	// ForceSendFields is a list of field names (e.g. "Active") to
14418	// unconditionally include in API requests. By default, fields with
14419	// empty values are omitted from API requests. However, any non-pointer,
14420	// non-interface field appearing in ForceSendFields will be sent to the
14421	// server regardless of whether the field is empty or not. This may be
14422	// used to include empty fields in Patch requests.
14423	ForceSendFields []string `json:"-"`
14424
14425	// NullFields is a list of field names (e.g. "Active") to include in API
14426	// requests with the JSON null value. By default, fields with empty
14427	// values are omitted from API requests. However, any field with an
14428	// empty value appearing in NullFields will be sent to the server as
14429	// null. It is an error if a field in this list has a non-empty value.
14430	// This may be used to include null fields in Patch requests.
14431	NullFields []string `json:"-"`
14432}
14433
14434func (s *Service) MarshalJSON() ([]byte, error) {
14435	type NoMethod Service
14436	raw := NoMethod(*s)
14437	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14438}
14439
14440// SettlementReport:  Settlement reports detail order-level and
14441// item-level credits and debits between you and Google.
14442type SettlementReport struct {
14443	// EndDate: The end date on which all transactions are included in the
14444	// report, in ISO 8601 format.
14445	EndDate string `json:"endDate,omitempty"`
14446
14447	// Kind: Identifies what kind of resource this is. Value: the fixed
14448	// string "content#settlementReport"
14449	Kind string `json:"kind,omitempty"`
14450
14451	// PreviousBalance: The residual amount from the previous invoice. This
14452	// is set only if the previous invoices are not paid because of negative
14453	// balance.
14454	PreviousBalance *Price `json:"previousBalance,omitempty"`
14455
14456	// SettlementId: The ID of the settlement report.
14457	SettlementId string `json:"settlementId,omitempty"`
14458
14459	// StartDate: The start date on which all transactions are included in
14460	// the report, in ISO 8601 format.
14461	StartDate string `json:"startDate,omitempty"`
14462
14463	// TransferAmount: The money due to the merchant.
14464	TransferAmount *Price `json:"transferAmount,omitempty"`
14465
14466	// TransferDate: Date on which transfer for this payment was initiated
14467	// by Google, in ISO 8601 format.
14468	TransferDate string `json:"transferDate,omitempty"`
14469
14470	// TransferIds: The list of bank identifiers used for the transfer. e.g.
14471	// Trace ID for Federal Automated Clearing House (ACH). This may also be
14472	// known as the Wire ID.
14473	TransferIds []string `json:"transferIds,omitempty"`
14474
14475	// ServerResponse contains the HTTP response code and headers from the
14476	// server.
14477	googleapi.ServerResponse `json:"-"`
14478
14479	// ForceSendFields is a list of field names (e.g. "EndDate") to
14480	// unconditionally include in API requests. By default, fields with
14481	// empty values are omitted from API requests. However, any non-pointer,
14482	// non-interface field appearing in ForceSendFields will be sent to the
14483	// server regardless of whether the field is empty or not. This may be
14484	// used to include empty fields in Patch requests.
14485	ForceSendFields []string `json:"-"`
14486
14487	// NullFields is a list of field names (e.g. "EndDate") to include in
14488	// API requests with the JSON null value. By default, fields with empty
14489	// values are omitted from API requests. However, any field with an
14490	// empty value appearing in NullFields will be sent to the server as
14491	// null. It is an error if a field in this list has a non-empty value.
14492	// This may be used to include null fields in Patch requests.
14493	NullFields []string `json:"-"`
14494}
14495
14496func (s *SettlementReport) MarshalJSON() ([]byte, error) {
14497	type NoMethod SettlementReport
14498	raw := NoMethod(*s)
14499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14500}
14501
14502// SettlementTransaction: Settlement transactions give a detailed
14503// breakdown of the settlement report.
14504type SettlementTransaction struct {
14505	// Amount: The amount for the transaction.
14506	Amount *SettlementTransactionAmount `json:"amount,omitempty"`
14507
14508	// Identifiers: Identifiers of the transaction.
14509	Identifiers *SettlementTransactionIdentifiers `json:"identifiers,omitempty"`
14510
14511	// Kind: Identifies what kind of resource this is. Value: the fixed
14512	// string "content#settlementTransaction"
14513	Kind string `json:"kind,omitempty"`
14514
14515	// Transaction: Details of the transaction.
14516	Transaction *SettlementTransactionTransaction `json:"transaction,omitempty"`
14517
14518	// ForceSendFields is a list of field names (e.g. "Amount") to
14519	// unconditionally include in API requests. By default, fields with
14520	// empty values are omitted from API requests. However, any non-pointer,
14521	// non-interface field appearing in ForceSendFields will be sent to the
14522	// server regardless of whether the field is empty or not. This may be
14523	// used to include empty fields in Patch requests.
14524	ForceSendFields []string `json:"-"`
14525
14526	// NullFields is a list of field names (e.g. "Amount") to include in API
14527	// requests with the JSON null value. By default, fields with empty
14528	// values are omitted from API requests. However, any field with an
14529	// empty value appearing in NullFields will be sent to the server as
14530	// null. It is an error if a field in this list has a non-empty value.
14531	// This may be used to include null fields in Patch requests.
14532	NullFields []string `json:"-"`
14533}
14534
14535func (s *SettlementTransaction) MarshalJSON() ([]byte, error) {
14536	type NoMethod SettlementTransaction
14537	raw := NoMethod(*s)
14538	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14539}
14540
14541type SettlementTransactionAmount struct {
14542	Commission *SettlementTransactionAmountCommission `json:"commission,omitempty"`
14543
14544	// Description: The description of the event. Acceptable values are: -
14545	// "taxWithhold" - "principal" - "principalAdjustment" -
14546	// "shippingFee" - "merchantRemittedSalesTax" -
14547	// "googleRemittedSalesTax" - "merchantCoupon" -
14548	// "merchantCouponTax" - "merchantRemittedDisposalTax" -
14549	// "googleRemittedDisposalTax" - "merchantRemittedRedemptionFee" -
14550	// "googleRemittedRedemptionFee" - "eeeEcoFee" - "furnitureEcoFee"
14551	// - "copyPrivateFee" - "eeeEcoFeeCommission" -
14552	// "furnitureEcoFeeCommission" - "copyPrivateFeeCommission" -
14553	// "principalRefund" - "principalRefundTax" - "itemCommission" -
14554	// "adjustmentCommission" - "shippingFeeCommission" -
14555	// "commissionRefund" - "damaged" - "damagedOrDefectiveItem" -
14556	// "expiredItem" - "faultyItem" - "incorrectItemReceived" -
14557	// "itemMissing" - "qualityNotExpected" - "receivedTooLate" -
14558	// "storePackageMissing" - "transitPackageMissing" -
14559	// "unsuccessfulDeliveryUndeliverable" - "wrongChargeInStore" -
14560	// "wrongItem" - "returns" - "undeliverable" -
14561	// "issueRelatedRefundAndReplacementAmountDescription" -
14562	// "refundFromMerchant" - "returnLabelShippingFee" -
14563	// "lumpSumCorrection" - "pspFee"
14564	Description string `json:"description,omitempty"`
14565
14566	// TransactionAmount: The amount that contributes to the line item
14567	// price.
14568	TransactionAmount *Price `json:"transactionAmount,omitempty"`
14569
14570	// Type: The type of the amount. Acceptable values are: - "itemPrice"
14571	// - "orderPrice" - "refund" - "earlyRefund" - "courtesyRefund"
14572	// - "returnRefund" - "returnLabelShippingFeeAmount" -
14573	// "lumpSumCorrectionAmount"
14574	Type string `json:"type,omitempty"`
14575
14576	// ForceSendFields is a list of field names (e.g. "Commission") to
14577	// unconditionally include in API requests. By default, fields with
14578	// empty values are omitted from API requests. However, any non-pointer,
14579	// non-interface field appearing in ForceSendFields will be sent to the
14580	// server regardless of whether the field is empty or not. This may be
14581	// used to include empty fields in Patch requests.
14582	ForceSendFields []string `json:"-"`
14583
14584	// NullFields is a list of field names (e.g. "Commission") to include in
14585	// API requests with the JSON null value. By default, fields with empty
14586	// values are omitted from API requests. However, any field with an
14587	// empty value appearing in NullFields will be sent to the server as
14588	// null. It is an error if a field in this list has a non-empty value.
14589	// This may be used to include null fields in Patch requests.
14590	NullFields []string `json:"-"`
14591}
14592
14593func (s *SettlementTransactionAmount) MarshalJSON() ([]byte, error) {
14594	type NoMethod SettlementTransactionAmount
14595	raw := NoMethod(*s)
14596	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14597}
14598
14599type SettlementTransactionAmountCommission struct {
14600	// Category: The category of the commission. Acceptable values are: -
14601	// "animalsAndPetSupplies" - "dogCatFoodAndCatLitter" -
14602	// "apparelAndAccessories" - "shoesHandbagsAndSunglasses" -
14603	// "costumesAndAccessories" - "jewelry" - "watches" -
14604	// "hobbiesArtsAndCrafts" - "homeAndGarden" -
14605	// "entertainmentCollectibles" - "collectibleCoins" -
14606	// "sportsCollectibles" - "sportingGoods" - "toysAndGames" -
14607	// "musicalInstruments" - "giftCards" - "babyAndToddler" -
14608	// "babyFoodWipesAndDiapers" - "businessAndIndustrial" -
14609	// "camerasOpticsAndPhotography" - "consumerElectronics" -
14610	// "electronicsAccessories" - "personalComputers" -
14611	// "videoGameConsoles" - "foodAndGrocery" - "beverages" -
14612	// "tobaccoProducts" - "furniture" - "hardware" -
14613	// "buildingMaterials" - "tools" - "healthAndPersonalCare" -
14614	// "beauty" - "householdSupplies" - "kitchenAndDining" -
14615	// "majorAppliances" - "luggageAndBags" - "media" -
14616	// "officeSupplies" - "softwareAndVideoGames" -
14617	// "vehiclePartsAndAccessories" - "vehicleTiresAndWheels" -
14618	// "vehicles" - "everythingElse"
14619	Category string `json:"category,omitempty"`
14620
14621	// Rate: Rate of the commission in percentage.
14622	Rate string `json:"rate,omitempty"`
14623
14624	// ForceSendFields is a list of field names (e.g. "Category") to
14625	// unconditionally include in API requests. By default, fields with
14626	// empty values are omitted from API requests. However, any non-pointer,
14627	// non-interface field appearing in ForceSendFields will be sent to the
14628	// server regardless of whether the field is empty or not. This may be
14629	// used to include empty fields in Patch requests.
14630	ForceSendFields []string `json:"-"`
14631
14632	// NullFields is a list of field names (e.g. "Category") to include in
14633	// API requests with the JSON null value. By default, fields with empty
14634	// values are omitted from API requests. However, any field with an
14635	// empty value appearing in NullFields will be sent to the server as
14636	// null. It is an error if a field in this list has a non-empty value.
14637	// This may be used to include null fields in Patch requests.
14638	NullFields []string `json:"-"`
14639}
14640
14641func (s *SettlementTransactionAmountCommission) MarshalJSON() ([]byte, error) {
14642	type NoMethod SettlementTransactionAmountCommission
14643	raw := NoMethod(*s)
14644	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14645}
14646
14647type SettlementTransactionIdentifiers struct {
14648	// AdjustmentId: The identifier of the adjustments, if it is available.
14649	AdjustmentId string `json:"adjustmentId,omitempty"`
14650
14651	// MerchantOrderId: The merchant provided order ID.
14652	MerchantOrderId string `json:"merchantOrderId,omitempty"`
14653
14654	// OrderItemId: The identifier of the item.
14655	OrderItemId string `json:"orderItemId,omitempty"`
14656
14657	// SettlementEntryId: The unique ID of the settlement transaction entry.
14658	SettlementEntryId string `json:"settlementEntryId,omitempty"`
14659
14660	// ShipmentIds: The shipment ids for the item.
14661	ShipmentIds []string `json:"shipmentIds,omitempty"`
14662
14663	// TransactionId: The Google transaction ID.
14664	TransactionId string `json:"transactionId,omitempty"`
14665
14666	// ForceSendFields is a list of field names (e.g. "AdjustmentId") to
14667	// unconditionally include in API requests. By default, fields with
14668	// empty values are omitted from API requests. However, any non-pointer,
14669	// non-interface field appearing in ForceSendFields will be sent to the
14670	// server regardless of whether the field is empty or not. This may be
14671	// used to include empty fields in Patch requests.
14672	ForceSendFields []string `json:"-"`
14673
14674	// NullFields is a list of field names (e.g. "AdjustmentId") to include
14675	// in API requests with the JSON null value. By default, fields with
14676	// empty values are omitted from API requests. However, any field with
14677	// an empty value appearing in NullFields will be sent to the server as
14678	// null. It is an error if a field in this list has a non-empty value.
14679	// This may be used to include null fields in Patch requests.
14680	NullFields []string `json:"-"`
14681}
14682
14683func (s *SettlementTransactionIdentifiers) MarshalJSON() ([]byte, error) {
14684	type NoMethod SettlementTransactionIdentifiers
14685	raw := NoMethod(*s)
14686	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14687}
14688
14689type SettlementTransactionTransaction struct {
14690	// PostDate: The time on which the event occurred in ISO 8601 format.
14691	PostDate string `json:"postDate,omitempty"`
14692
14693	// Type: The type of the transaction that occurred. Acceptable values
14694	// are: - "order" - "reversal" - "orderRefund" -
14695	// "reversalRefund" - "issueRelatedRefundAndReplacement" -
14696	// "returnLabelShippingFeeTransaction" -
14697	// "reversalIssueRelatedRefundAndReplacement" -
14698	// "reversalReturnLabelShippingFeeTransaction" -
14699	// "lumpSumCorrectionTransaction"
14700	Type string `json:"type,omitempty"`
14701
14702	// ForceSendFields is a list of field names (e.g. "PostDate") to
14703	// unconditionally include in API requests. By default, fields with
14704	// empty values are omitted from API requests. However, any non-pointer,
14705	// non-interface field appearing in ForceSendFields will be sent to the
14706	// server regardless of whether the field is empty or not. This may be
14707	// used to include empty fields in Patch requests.
14708	ForceSendFields []string `json:"-"`
14709
14710	// NullFields is a list of field names (e.g. "PostDate") to include in
14711	// API requests with the JSON null value. By default, fields with empty
14712	// values are omitted from API requests. However, any field with an
14713	// empty value appearing in NullFields will be sent to the server as
14714	// null. It is an error if a field in this list has a non-empty value.
14715	// This may be used to include null fields in Patch requests.
14716	NullFields []string `json:"-"`
14717}
14718
14719func (s *SettlementTransactionTransaction) MarshalJSON() ([]byte, error) {
14720	type NoMethod SettlementTransactionTransaction
14721	raw := NoMethod(*s)
14722	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14723}
14724
14725type SettlementreportsListResponse struct {
14726	// Kind: Identifies what kind of resource this is. Value: the fixed
14727	// string "content#settlementreportsListResponse".
14728	Kind string `json:"kind,omitempty"`
14729
14730	// NextPageToken: The token for the retrieval of the next page of
14731	// returns.
14732	NextPageToken string `json:"nextPageToken,omitempty"`
14733
14734	Resources []*SettlementReport `json:"resources,omitempty"`
14735
14736	// ServerResponse contains the HTTP response code and headers from the
14737	// server.
14738	googleapi.ServerResponse `json:"-"`
14739
14740	// ForceSendFields is a list of field names (e.g. "Kind") to
14741	// unconditionally include in API requests. By default, fields with
14742	// empty values are omitted from API requests. However, any non-pointer,
14743	// non-interface field appearing in ForceSendFields will be sent to the
14744	// server regardless of whether the field is empty or not. This may be
14745	// used to include empty fields in Patch requests.
14746	ForceSendFields []string `json:"-"`
14747
14748	// NullFields is a list of field names (e.g. "Kind") to include in API
14749	// requests with the JSON null value. By default, fields with empty
14750	// values are omitted from API requests. However, any field with an
14751	// empty value appearing in NullFields will be sent to the server as
14752	// null. It is an error if a field in this list has a non-empty value.
14753	// This may be used to include null fields in Patch requests.
14754	NullFields []string `json:"-"`
14755}
14756
14757func (s *SettlementreportsListResponse) MarshalJSON() ([]byte, error) {
14758	type NoMethod SettlementreportsListResponse
14759	raw := NoMethod(*s)
14760	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14761}
14762
14763type SettlementtransactionsListResponse struct {
14764	// Kind: Identifies what kind of resource this is. Value: the fixed
14765	// string "content#settlementtransactionsListResponse".
14766	Kind string `json:"kind,omitempty"`
14767
14768	// NextPageToken: The token for the retrieval of the next page of
14769	// returns.
14770	NextPageToken string `json:"nextPageToken,omitempty"`
14771
14772	Resources []*SettlementTransaction `json:"resources,omitempty"`
14773
14774	// ServerResponse contains the HTTP response code and headers from the
14775	// server.
14776	googleapi.ServerResponse `json:"-"`
14777
14778	// ForceSendFields is a list of field names (e.g. "Kind") to
14779	// unconditionally include in API requests. By default, fields with
14780	// empty values are omitted from API requests. However, any non-pointer,
14781	// non-interface field appearing in ForceSendFields will be sent to the
14782	// server regardless of whether the field is empty or not. This may be
14783	// used to include empty fields in Patch requests.
14784	ForceSendFields []string `json:"-"`
14785
14786	// NullFields is a list of field names (e.g. "Kind") to include in API
14787	// requests with the JSON null value. By default, fields with empty
14788	// values are omitted from API requests. However, any field with an
14789	// empty value appearing in NullFields will be sent to the server as
14790	// null. It is an error if a field in this list has a non-empty value.
14791	// This may be used to include null fields in Patch requests.
14792	NullFields []string `json:"-"`
14793}
14794
14795func (s *SettlementtransactionsListResponse) MarshalJSON() ([]byte, error) {
14796	type NoMethod SettlementtransactionsListResponse
14797	raw := NoMethod(*s)
14798	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14799}
14800
14801type ShipmentInvoice struct {
14802	// InvoiceSummary: [required] Invoice summary.
14803	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
14804
14805	// LineItemInvoices: [required] Invoice details per line item.
14806	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
14807
14808	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
14809	// by the merchant in the `shipLineItems` method and is used to group
14810	// multiple line items that have the same kind of shipping charges.
14811	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
14812
14813	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
14814	// unconditionally include in API requests. By default, fields with
14815	// empty values are omitted from API requests. However, any non-pointer,
14816	// non-interface field appearing in ForceSendFields will be sent to the
14817	// server regardless of whether the field is empty or not. This may be
14818	// used to include empty fields in Patch requests.
14819	ForceSendFields []string `json:"-"`
14820
14821	// NullFields is a list of field names (e.g. "InvoiceSummary") to
14822	// include in API requests with the JSON null value. By default, fields
14823	// with empty values are omitted from API requests. However, any field
14824	// with an empty value appearing in NullFields will be sent to the
14825	// server as null. It is an error if a field in this list has a
14826	// non-empty value. This may be used to include null fields in Patch
14827	// requests.
14828	NullFields []string `json:"-"`
14829}
14830
14831func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
14832	type NoMethod ShipmentInvoice
14833	raw := NoMethod(*s)
14834	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14835}
14836
14837type ShipmentInvoiceLineItemInvoice struct {
14838	// LineItemId: ID of the line item. Either lineItemId or productId must
14839	// be set.
14840	LineItemId string `json:"lineItemId,omitempty"`
14841
14842	// ProductId: ID of the product. This is the REST ID used in the
14843	// products service. Either lineItemId or productId must be set.
14844	ProductId string `json:"productId,omitempty"`
14845
14846	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
14847	// merchant and defines individual quantities within a line item. The
14848	// same ID can be assigned to units that are the same while units that
14849	// differ must be assigned a different ID (for example: free or
14850	// promotional units).
14851	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
14852
14853	// UnitInvoice: [required] Invoice details for a single unit.
14854	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
14855
14856	// ForceSendFields is a list of field names (e.g. "LineItemId") to
14857	// unconditionally include in API requests. By default, fields with
14858	// empty values are omitted from API requests. However, any non-pointer,
14859	// non-interface field appearing in ForceSendFields will be sent to the
14860	// server regardless of whether the field is empty or not. This may be
14861	// used to include empty fields in Patch requests.
14862	ForceSendFields []string `json:"-"`
14863
14864	// NullFields is a list of field names (e.g. "LineItemId") to include in
14865	// API requests with the JSON null value. By default, fields with empty
14866	// values are omitted from API requests. However, any field with an
14867	// empty value appearing in NullFields will be sent to the server as
14868	// null. It is an error if a field in this list has a non-empty value.
14869	// This may be used to include null fields in Patch requests.
14870	NullFields []string `json:"-"`
14871}
14872
14873func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
14874	type NoMethod ShipmentInvoiceLineItemInvoice
14875	raw := NoMethod(*s)
14876	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14877}
14878
14879type ShipmentTrackingInfo struct {
14880	// Carrier: The shipping carrier that handles the package. Acceptable
14881	// values are: - "boxtal" - "bpost" - "chronopost" -
14882	// "colisPrive" - "colissimo" - "cxt" - "deliv" - "dhl" -
14883	// "dpd" - "dynamex" - "eCourier" - "easypost" - "efw" -
14884	// "fedex" - "fedexSmartpost" - "geodis" - "gls" -
14885	// "googleCourier" - "gsx" - "jdLogistics" - "laPoste" -
14886	// "lasership" - "manual" - "mpx" - "onTrac" - "other" -
14887	// "tnt" - "uds" - "ups" - "usps"
14888	Carrier string `json:"carrier,omitempty"`
14889
14890	// TrackingNumber: The tracking number for the package.
14891	TrackingNumber string `json:"trackingNumber,omitempty"`
14892
14893	// ForceSendFields is a list of field names (e.g. "Carrier") to
14894	// unconditionally include in API requests. By default, fields with
14895	// empty values are omitted from API requests. However, any non-pointer,
14896	// non-interface field appearing in ForceSendFields will be sent to the
14897	// server regardless of whether the field is empty or not. This may be
14898	// used to include empty fields in Patch requests.
14899	ForceSendFields []string `json:"-"`
14900
14901	// NullFields is a list of field names (e.g. "Carrier") to include in
14902	// API requests with the JSON null value. By default, fields with empty
14903	// values are omitted from API requests. However, any field with an
14904	// empty value appearing in NullFields will be sent to the server as
14905	// null. It is an error if a field in this list has a non-empty value.
14906	// This may be used to include null fields in Patch requests.
14907	NullFields []string `json:"-"`
14908}
14909
14910func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
14911	type NoMethod ShipmentTrackingInfo
14912	raw := NoMethod(*s)
14913	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14914}
14915
14916// ShippingSettings: The merchant account's shipping settings. All
14917// methods except getsupportedcarriers and getsupportedholidays require
14918// the admin role.
14919type ShippingSettings struct {
14920	// AccountId: The ID of the account to which these account shipping
14921	// settings belong. Ignored upon update, always present in get request
14922	// responses.
14923	AccountId uint64 `json:"accountId,omitempty,string"`
14924
14925	// PostalCodeGroups: A list of postal code groups that can be referred
14926	// to in `services`. Optional.
14927	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
14928
14929	// Services: The target account's list of services. Optional.
14930	Services []*Service `json:"services,omitempty"`
14931
14932	// ServerResponse contains the HTTP response code and headers from the
14933	// server.
14934	googleapi.ServerResponse `json:"-"`
14935
14936	// ForceSendFields is a list of field names (e.g. "AccountId") to
14937	// unconditionally include in API requests. By default, fields with
14938	// empty values are omitted from API requests. However, any non-pointer,
14939	// non-interface field appearing in ForceSendFields will be sent to the
14940	// server regardless of whether the field is empty or not. This may be
14941	// used to include empty fields in Patch requests.
14942	ForceSendFields []string `json:"-"`
14943
14944	// NullFields is a list of field names (e.g. "AccountId") to include in
14945	// API requests with the JSON null value. By default, fields with empty
14946	// values are omitted from API requests. However, any field with an
14947	// empty value appearing in NullFields will be sent to the server as
14948	// null. It is an error if a field in this list has a non-empty value.
14949	// This may be used to include null fields in Patch requests.
14950	NullFields []string `json:"-"`
14951}
14952
14953func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
14954	type NoMethod ShippingSettings
14955	raw := NoMethod(*s)
14956	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14957}
14958
14959type ShippingsettingsCustomBatchRequest struct {
14960	// Entries: The request entries to be processed in the batch.
14961	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
14962
14963	// ForceSendFields is a list of field names (e.g. "Entries") to
14964	// unconditionally include in API requests. By default, fields with
14965	// empty values are omitted from API requests. However, any non-pointer,
14966	// non-interface field appearing in ForceSendFields will be sent to the
14967	// server regardless of whether the field is empty or not. This may be
14968	// used to include empty fields in Patch requests.
14969	ForceSendFields []string `json:"-"`
14970
14971	// NullFields is a list of field names (e.g. "Entries") to include in
14972	// API requests with the JSON null value. By default, fields with empty
14973	// values are omitted from API requests. However, any field with an
14974	// empty value appearing in NullFields will be sent to the server as
14975	// null. It is an error if a field in this list has a non-empty value.
14976	// This may be used to include null fields in Patch requests.
14977	NullFields []string `json:"-"`
14978}
14979
14980func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
14981	type NoMethod ShippingsettingsCustomBatchRequest
14982	raw := NoMethod(*s)
14983	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14984}
14985
14986// ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
14987// single non-batch shippingsettings request.
14988type ShippingsettingsCustomBatchRequestEntry struct {
14989	// AccountId: The ID of the account for which to get/update account
14990	// shipping settings.
14991	AccountId uint64 `json:"accountId,omitempty,string"`
14992
14993	// BatchId: An entry ID, unique within the batch request.
14994	BatchId int64 `json:"batchId,omitempty"`
14995
14996	// MerchantId: The ID of the managing account.
14997	MerchantId uint64 `json:"merchantId,omitempty,string"`
14998
14999	// Method: The method of the batch entry. Acceptable values are: -
15000	// "get" - "update"
15001	Method string `json:"method,omitempty"`
15002
15003	// ShippingSettings: The account shipping settings to update. Only
15004	// defined if the method is `update`.
15005	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
15006
15007	// ForceSendFields is a list of field names (e.g. "AccountId") to
15008	// unconditionally include in API requests. By default, fields with
15009	// empty values are omitted from API requests. However, any non-pointer,
15010	// non-interface field appearing in ForceSendFields will be sent to the
15011	// server regardless of whether the field is empty or not. This may be
15012	// used to include empty fields in Patch requests.
15013	ForceSendFields []string `json:"-"`
15014
15015	// NullFields is a list of field names (e.g. "AccountId") to include in
15016	// API requests with the JSON null value. By default, fields with empty
15017	// values are omitted from API requests. However, any field with an
15018	// empty value appearing in NullFields will be sent to the server as
15019	// null. It is an error if a field in this list has a non-empty value.
15020	// This may be used to include null fields in Patch requests.
15021	NullFields []string `json:"-"`
15022}
15023
15024func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
15025	type NoMethod ShippingsettingsCustomBatchRequestEntry
15026	raw := NoMethod(*s)
15027	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15028}
15029
15030type ShippingsettingsCustomBatchResponse struct {
15031	// Entries: The result of the execution of the batch requests.
15032	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
15033
15034	// Kind: Identifies what kind of resource this is. Value: the fixed
15035	// string "content#shippingsettingsCustomBatchResponse".
15036	Kind string `json:"kind,omitempty"`
15037
15038	// ServerResponse contains the HTTP response code and headers from the
15039	// server.
15040	googleapi.ServerResponse `json:"-"`
15041
15042	// ForceSendFields is a list of field names (e.g. "Entries") to
15043	// unconditionally include in API requests. By default, fields with
15044	// empty values are omitted from API requests. However, any non-pointer,
15045	// non-interface field appearing in ForceSendFields will be sent to the
15046	// server regardless of whether the field is empty or not. This may be
15047	// used to include empty fields in Patch requests.
15048	ForceSendFields []string `json:"-"`
15049
15050	// NullFields is a list of field names (e.g. "Entries") to include in
15051	// API requests with the JSON null value. By default, fields with empty
15052	// values are omitted from API requests. However, any field with an
15053	// empty value appearing in NullFields will be sent to the server as
15054	// null. It is an error if a field in this list has a non-empty value.
15055	// This may be used to include null fields in Patch requests.
15056	NullFields []string `json:"-"`
15057}
15058
15059func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
15060	type NoMethod ShippingsettingsCustomBatchResponse
15061	raw := NoMethod(*s)
15062	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15063}
15064
15065// ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
15066// single non-batch shipping settings response.
15067type ShippingsettingsCustomBatchResponseEntry struct {
15068	// BatchId: The ID of the request entry to which this entry responds.
15069	BatchId int64 `json:"batchId,omitempty"`
15070
15071	// Errors: A list of errors defined if, and only if, the request failed.
15072	Errors *Errors `json:"errors,omitempty"`
15073
15074	// Kind: Identifies what kind of resource this is. Value: the fixed
15075	// string "content#shippingsettingsCustomBatchResponseEntry"
15076	Kind string `json:"kind,omitempty"`
15077
15078	// ShippingSettings: The retrieved or updated account shipping settings.
15079	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
15080
15081	// ForceSendFields is a list of field names (e.g. "BatchId") to
15082	// unconditionally include in API requests. By default, fields with
15083	// empty values are omitted from API requests. However, any non-pointer,
15084	// non-interface field appearing in ForceSendFields will be sent to the
15085	// server regardless of whether the field is empty or not. This may be
15086	// used to include empty fields in Patch requests.
15087	ForceSendFields []string `json:"-"`
15088
15089	// NullFields is a list of field names (e.g. "BatchId") to include in
15090	// API requests with the JSON null value. By default, fields with empty
15091	// values are omitted from API requests. However, any field with an
15092	// empty value appearing in NullFields will be sent to the server as
15093	// null. It is an error if a field in this list has a non-empty value.
15094	// This may be used to include null fields in Patch requests.
15095	NullFields []string `json:"-"`
15096}
15097
15098func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
15099	type NoMethod ShippingsettingsCustomBatchResponseEntry
15100	raw := NoMethod(*s)
15101	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15102}
15103
15104type ShippingsettingsGetSupportedCarriersResponse struct {
15105	// Carriers: A list of supported carriers. May be empty.
15106	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
15107
15108	// Kind: Identifies what kind of resource this is. Value: the fixed
15109	// string "content#shippingsettingsGetSupportedCarriersResponse".
15110	Kind string `json:"kind,omitempty"`
15111
15112	// ServerResponse contains the HTTP response code and headers from the
15113	// server.
15114	googleapi.ServerResponse `json:"-"`
15115
15116	// ForceSendFields is a list of field names (e.g. "Carriers") to
15117	// unconditionally include in API requests. By default, fields with
15118	// empty values are omitted from API requests. However, any non-pointer,
15119	// non-interface field appearing in ForceSendFields will be sent to the
15120	// server regardless of whether the field is empty or not. This may be
15121	// used to include empty fields in Patch requests.
15122	ForceSendFields []string `json:"-"`
15123
15124	// NullFields is a list of field names (e.g. "Carriers") to include in
15125	// API requests with the JSON null value. By default, fields with empty
15126	// values are omitted from API requests. However, any field with an
15127	// empty value appearing in NullFields will be sent to the server as
15128	// null. It is an error if a field in this list has a non-empty value.
15129	// This may be used to include null fields in Patch requests.
15130	NullFields []string `json:"-"`
15131}
15132
15133func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
15134	type NoMethod ShippingsettingsGetSupportedCarriersResponse
15135	raw := NoMethod(*s)
15136	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15137}
15138
15139type ShippingsettingsGetSupportedHolidaysResponse struct {
15140	// Holidays: A list of holidays applicable for delivery guarantees. May
15141	// be empty.
15142	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
15143
15144	// Kind: Identifies what kind of resource this is. Value: the fixed
15145	// string "content#shippingsettingsGetSupportedHolidaysResponse".
15146	Kind string `json:"kind,omitempty"`
15147
15148	// ServerResponse contains the HTTP response code and headers from the
15149	// server.
15150	googleapi.ServerResponse `json:"-"`
15151
15152	// ForceSendFields is a list of field names (e.g. "Holidays") to
15153	// unconditionally include in API requests. By default, fields with
15154	// empty values are omitted from API requests. However, any non-pointer,
15155	// non-interface field appearing in ForceSendFields will be sent to the
15156	// server regardless of whether the field is empty or not. This may be
15157	// used to include empty fields in Patch requests.
15158	ForceSendFields []string `json:"-"`
15159
15160	// NullFields is a list of field names (e.g. "Holidays") to include in
15161	// API requests with the JSON null value. By default, fields with empty
15162	// values are omitted from API requests. However, any field with an
15163	// empty value appearing in NullFields will be sent to the server as
15164	// null. It is an error if a field in this list has a non-empty value.
15165	// This may be used to include null fields in Patch requests.
15166	NullFields []string `json:"-"`
15167}
15168
15169func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
15170	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
15171	raw := NoMethod(*s)
15172	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15173}
15174
15175type ShippingsettingsGetSupportedPickupServicesResponse struct {
15176	// Kind: Identifies what kind of resource this is. Value: the fixed
15177	// string "content#shippingsettingsGetSupportedPickupServicesResponse".
15178	Kind string `json:"kind,omitempty"`
15179
15180	// PickupServices: A list of supported pickup services. May be empty.
15181	PickupServices []*PickupServicesPickupService `json:"pickupServices,omitempty"`
15182
15183	// ServerResponse contains the HTTP response code and headers from the
15184	// server.
15185	googleapi.ServerResponse `json:"-"`
15186
15187	// ForceSendFields is a list of field names (e.g. "Kind") to
15188	// unconditionally include in API requests. By default, fields with
15189	// empty values are omitted from API requests. However, any non-pointer,
15190	// non-interface field appearing in ForceSendFields will be sent to the
15191	// server regardless of whether the field is empty or not. This may be
15192	// used to include empty fields in Patch requests.
15193	ForceSendFields []string `json:"-"`
15194
15195	// NullFields is a list of field names (e.g. "Kind") to include in API
15196	// requests with the JSON null value. By default, fields with empty
15197	// values are omitted from API requests. However, any field with an
15198	// empty value appearing in NullFields will be sent to the server as
15199	// null. It is an error if a field in this list has a non-empty value.
15200	// This may be used to include null fields in Patch requests.
15201	NullFields []string `json:"-"`
15202}
15203
15204func (s *ShippingsettingsGetSupportedPickupServicesResponse) MarshalJSON() ([]byte, error) {
15205	type NoMethod ShippingsettingsGetSupportedPickupServicesResponse
15206	raw := NoMethod(*s)
15207	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15208}
15209
15210type ShippingsettingsListResponse struct {
15211	// Kind: Identifies what kind of resource this is. Value: the fixed
15212	// string "content#shippingsettingsListResponse".
15213	Kind string `json:"kind,omitempty"`
15214
15215	// NextPageToken: The token for the retrieval of the next page of
15216	// shipping settings.
15217	NextPageToken string `json:"nextPageToken,omitempty"`
15218
15219	Resources []*ShippingSettings `json:"resources,omitempty"`
15220
15221	// ServerResponse contains the HTTP response code and headers from the
15222	// server.
15223	googleapi.ServerResponse `json:"-"`
15224
15225	// ForceSendFields is a list of field names (e.g. "Kind") to
15226	// unconditionally include in API requests. By default, fields with
15227	// empty values are omitted from API requests. However, any non-pointer,
15228	// non-interface field appearing in ForceSendFields will be sent to the
15229	// server regardless of whether the field is empty or not. This may be
15230	// used to include empty fields in Patch requests.
15231	ForceSendFields []string `json:"-"`
15232
15233	// NullFields is a list of field names (e.g. "Kind") to include in API
15234	// 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 *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
15243	type NoMethod ShippingsettingsListResponse
15244	raw := NoMethod(*s)
15245	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15246}
15247
15248type Table struct {
15249	// ColumnHeaders: Headers of the table's columns. Optional: if not set
15250	// then the table has only one dimension.
15251	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
15252
15253	// Name: Name of the table. Required for subtables, ignored for the main
15254	// table.
15255	Name string `json:"name,omitempty"`
15256
15257	// RowHeaders: Headers of the table's rows. Required.
15258	RowHeaders *Headers `json:"rowHeaders,omitempty"`
15259
15260	// Rows: The list of rows that constitute the table. Must have the same
15261	// length as `rowHeaders`. Required.
15262	Rows []*Row `json:"rows,omitempty"`
15263
15264	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
15265	// unconditionally include in API requests. By default, fields with
15266	// empty values are omitted from API requests. However, any non-pointer,
15267	// non-interface field appearing in ForceSendFields will be sent to the
15268	// server regardless of whether the field is empty or not. This may be
15269	// used to include empty fields in Patch requests.
15270	ForceSendFields []string `json:"-"`
15271
15272	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
15273	// in API requests with the JSON null value. By default, fields with
15274	// empty values are omitted from API requests. However, any field with
15275	// an empty value appearing in NullFields will be sent to the server as
15276	// null. It is an error if a field in this list has a non-empty value.
15277	// This may be used to include null fields in Patch requests.
15278	NullFields []string `json:"-"`
15279}
15280
15281func (s *Table) MarshalJSON() ([]byte, error) {
15282	type NoMethod Table
15283	raw := NoMethod(*s)
15284	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15285}
15286
15287type TestOrder struct {
15288	// DeliveryDetails: Overrides the predefined delivery details if
15289	// provided.
15290	DeliveryDetails *TestOrderDeliveryDetails `json:"deliveryDetails,omitempty"`
15291
15292	// EnableOrderinvoices: Whether the orderinvoices service should support
15293	// this order.
15294	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
15295
15296	// Kind: Identifies what kind of resource this is. Value: the fixed
15297	// string "content#testOrder"
15298	Kind string `json:"kind,omitempty"`
15299
15300	// LineItems: Required. Line items that are ordered. At least one line
15301	// item must be provided.
15302	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
15303
15304	// NotificationMode: Restricted. Do not use.
15305	NotificationMode string `json:"notificationMode,omitempty"`
15306
15307	// PickupDetails: Overrides the predefined pickup details if provided.
15308	PickupDetails *TestOrderPickupDetails `json:"pickupDetails,omitempty"`
15309
15310	// PredefinedBillingAddress: Required. The billing address. Acceptable
15311	// values are: - "dwight" - "jim" - "pam"
15312	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
15313
15314	// PredefinedDeliveryAddress: Required. Identifier of one of the
15315	// predefined delivery addresses for the delivery. Acceptable values
15316	// are: - "dwight" - "jim" - "pam"
15317	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
15318
15319	// PredefinedEmail: Required. Email address of the customer. Acceptable
15320	// values are: - "pog.dwight.schrute@gmail.com" -
15321	// "pog.jim.halpert@gmail.com" - "penpog.pam.beesly@gmail.comding"
15322	PredefinedEmail string `json:"predefinedEmail,omitempty"`
15323
15324	// PredefinedPickupDetails: Identifier of one of the predefined pickup
15325	// details. Required for orders containing line items with shipping type
15326	// `pickup`. Acceptable values are: - "dwight" - "jim" - "pam"
15327	PredefinedPickupDetails string `json:"predefinedPickupDetails,omitempty"`
15328
15329	// Promotions: Promotions associated with the order.
15330	Promotions []*OrderPromotion `json:"promotions,omitempty"`
15331
15332	// ShippingCost: Required. The price of shipping for all items. Shipping
15333	// tax is automatically calculated for orders where marketplace
15334	// facilitator tax laws are applicable. Otherwise, tax settings from
15335	// Merchant Center are applied. Note that shipping is not taxed in
15336	// certain states.
15337	ShippingCost *Price `json:"shippingCost,omitempty"`
15338
15339	// ShippingOption: Required. The requested shipping option. Acceptable
15340	// values are: - "economy" - "expedited" - "oneDay" - "sameDay"
15341	// - "standard" - "twoDay"
15342	ShippingOption string `json:"shippingOption,omitempty"`
15343
15344	// ForceSendFields is a list of field names (e.g. "DeliveryDetails") to
15345	// unconditionally include in API requests. By default, fields with
15346	// empty values are omitted from API requests. However, any non-pointer,
15347	// non-interface field appearing in ForceSendFields will be sent to the
15348	// server regardless of whether the field is empty or not. This may be
15349	// used to include empty fields in Patch requests.
15350	ForceSendFields []string `json:"-"`
15351
15352	// NullFields is a list of field names (e.g. "DeliveryDetails") to
15353	// include in API requests with the JSON null value. By default, fields
15354	// with empty values are omitted from API requests. However, any field
15355	// with an empty value appearing in NullFields will be sent to the
15356	// server as null. It is an error if a field in this list has a
15357	// non-empty value. This may be used to include null fields in Patch
15358	// requests.
15359	NullFields []string `json:"-"`
15360}
15361
15362func (s *TestOrder) MarshalJSON() ([]byte, error) {
15363	type NoMethod TestOrder
15364	raw := NoMethod(*s)
15365	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15366}
15367
15368type TestOrderAddress struct {
15369	// Country: CLDR country code (e.g. "US").
15370	Country string `json:"country,omitempty"`
15371
15372	// FullAddress: Strings representing the lines of the printed label for
15373	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
15374	// Mountain View, CA, 94043 United States
15375	FullAddress []string `json:"fullAddress,omitempty"`
15376
15377	// IsPostOfficeBox: Whether the address is a post office box.
15378	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
15379
15380	// Locality: City, town or commune. May also include dependent
15381	// localities or sublocalities (e.g. neighborhoods or suburbs).
15382	Locality string `json:"locality,omitempty"`
15383
15384	// PostalCode: Postal Code or ZIP (e.g. "94043").
15385	PostalCode string `json:"postalCode,omitempty"`
15386
15387	// RecipientName: Name of the recipient.
15388	RecipientName string `json:"recipientName,omitempty"`
15389
15390	// Region: Top-level administrative subdivision of the country. For
15391	// example, a state like California ("CA") or a province like Quebec
15392	// ("QC").
15393	Region string `json:"region,omitempty"`
15394
15395	// StreetAddress: Street-level part of the address.
15396	StreetAddress []string `json:"streetAddress,omitempty"`
15397
15398	// ForceSendFields is a list of field names (e.g. "Country") to
15399	// unconditionally include in API requests. By default, fields with
15400	// empty values are omitted from API requests. However, any non-pointer,
15401	// non-interface field appearing in ForceSendFields will be sent to the
15402	// server regardless of whether the field is empty or not. This may be
15403	// used to include empty fields in Patch requests.
15404	ForceSendFields []string `json:"-"`
15405
15406	// NullFields is a list of field names (e.g. "Country") to include in
15407	// API requests with the JSON null value. By default, fields with empty
15408	// values are omitted from API requests. However, any field with an
15409	// empty value appearing in NullFields will be sent to the server as
15410	// null. It is an error if a field in this list has a non-empty value.
15411	// This may be used to include null fields in Patch requests.
15412	NullFields []string `json:"-"`
15413}
15414
15415func (s *TestOrderAddress) MarshalJSON() ([]byte, error) {
15416	type NoMethod TestOrderAddress
15417	raw := NoMethod(*s)
15418	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15419}
15420
15421type TestOrderDeliveryDetails struct {
15422	// Address: The delivery address
15423	Address *TestOrderAddress `json:"address,omitempty"`
15424
15425	// IsScheduledDelivery: Whether the order is scheduled delivery order.
15426	IsScheduledDelivery bool `json:"isScheduledDelivery,omitempty"`
15427
15428	// PhoneNumber: The phone number of the person receiving the delivery.
15429	PhoneNumber string `json:"phoneNumber,omitempty"`
15430
15431	// ForceSendFields is a list of field names (e.g. "Address") to
15432	// unconditionally include in API requests. By default, fields with
15433	// empty values are omitted from API requests. However, any non-pointer,
15434	// non-interface field appearing in ForceSendFields will be sent to the
15435	// server regardless of whether the field is empty or not. This may be
15436	// used to include empty fields in Patch requests.
15437	ForceSendFields []string `json:"-"`
15438
15439	// NullFields is a list of field names (e.g. "Address") to include in
15440	// API requests with the JSON null value. By default, fields with empty
15441	// values are omitted from API requests. However, any field with an
15442	// empty value appearing in NullFields will be sent to the server as
15443	// null. It is an error if a field in this list has a non-empty value.
15444	// This may be used to include null fields in Patch requests.
15445	NullFields []string `json:"-"`
15446}
15447
15448func (s *TestOrderDeliveryDetails) MarshalJSON() ([]byte, error) {
15449	type NoMethod TestOrderDeliveryDetails
15450	raw := NoMethod(*s)
15451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15452}
15453
15454type TestOrderLineItem struct {
15455	// Product: Required. Product data from the time of the order placement.
15456	Product *TestOrderLineItemProduct `json:"product,omitempty"`
15457
15458	// QuantityOrdered: Required. Number of items ordered.
15459	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
15460
15461	// ReturnInfo: Required. Details of the return policy for the line item.
15462	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
15463
15464	// ShippingDetails: Required. Details of the requested shipping for the
15465	// line item.
15466	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
15467
15468	// ForceSendFields is a list of field names (e.g. "Product") to
15469	// unconditionally include in API requests. By default, fields with
15470	// empty values are omitted from API requests. However, any non-pointer,
15471	// non-interface field appearing in ForceSendFields will be sent to the
15472	// server regardless of whether the field is empty or not. This may be
15473	// used to include empty fields in Patch requests.
15474	ForceSendFields []string `json:"-"`
15475
15476	// NullFields is a list of field names (e.g. "Product") to include in
15477	// API requests with the JSON null value. By default, fields with empty
15478	// values are omitted from API requests. However, any field with an
15479	// empty value appearing in NullFields will be sent to the server as
15480	// null. It is an error if a field in this list has a non-empty value.
15481	// This may be used to include null fields in Patch requests.
15482	NullFields []string `json:"-"`
15483}
15484
15485func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
15486	type NoMethod TestOrderLineItem
15487	raw := NoMethod(*s)
15488	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15489}
15490
15491type TestOrderLineItemProduct struct {
15492	// Brand: Required. Brand of the item.
15493	Brand string `json:"brand,omitempty"`
15494
15495	// Condition: Required. Condition or state of the item. Acceptable
15496	// values are: - "new"
15497	Condition string `json:"condition,omitempty"`
15498
15499	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
15500	// the item. Acceptable values are: - "en" - "fr"
15501	ContentLanguage string `json:"contentLanguage,omitempty"`
15502
15503	// Fees: Fees for the item. Optional.
15504	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
15505
15506	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
15507	Gtin string `json:"gtin,omitempty"`
15508
15509	// ImageLink: Required. URL of an image of the item.
15510	ImageLink string `json:"imageLink,omitempty"`
15511
15512	// ItemGroupId: Shared identifier for all variants of the same product.
15513	// Optional.
15514	ItemGroupId string `json:"itemGroupId,omitempty"`
15515
15516	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
15517	Mpn string `json:"mpn,omitempty"`
15518
15519	// OfferId: Required. An identifier of the item.
15520	OfferId string `json:"offerId,omitempty"`
15521
15522	// Price: Required. The price for the product. Tax is automatically
15523	// calculated for orders where marketplace facilitator tax laws are
15524	// applicable. Otherwise, tax settings from Merchant Center are applied.
15525	Price *Price `json:"price,omitempty"`
15526
15527	// TargetCountry: Required. The CLDR territory // code of the target
15528	// country of the product.
15529	TargetCountry string `json:"targetCountry,omitempty"`
15530
15531	// Title: Required. The title of the product.
15532	Title string `json:"title,omitempty"`
15533
15534	// VariantAttributes: Variant attributes for the item. Optional.
15535	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
15536
15537	// ForceSendFields is a list of field names (e.g. "Brand") to
15538	// unconditionally include in API requests. By default, fields with
15539	// empty values are omitted from API requests. However, any non-pointer,
15540	// non-interface field appearing in ForceSendFields will be sent to the
15541	// server regardless of whether the field is empty or not. This may be
15542	// used to include empty fields in Patch requests.
15543	ForceSendFields []string `json:"-"`
15544
15545	// NullFields is a list of field names (e.g. "Brand") to include in API
15546	// requests with the JSON null value. By default, fields with empty
15547	// values are omitted from API requests. However, any field with an
15548	// empty value appearing in NullFields will be sent to the server as
15549	// null. It is an error if a field in this list has a non-empty value.
15550	// This may be used to include null fields in Patch requests.
15551	NullFields []string `json:"-"`
15552}
15553
15554func (s *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
15555	type NoMethod TestOrderLineItemProduct
15556	raw := NoMethod(*s)
15557	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15558}
15559
15560type TestOrderPickupDetails struct {
15561	// LocationCode: Required. Code of the location defined by provider or
15562	// merchant.
15563	LocationCode string `json:"locationCode,omitempty"`
15564
15565	// PickupLocationAddress: Required. Pickup location address.
15566	PickupLocationAddress *TestOrderAddress `json:"pickupLocationAddress,omitempty"`
15567
15568	// PickupLocationType: Pickup location type. Acceptable values are: -
15569	// "locker" - "store" - "curbside"
15570	PickupLocationType string `json:"pickupLocationType,omitempty"`
15571
15572	// PickupPersons: Required. all pickup persons set by users.
15573	PickupPersons []*TestOrderPickupDetailsPickupPerson `json:"pickupPersons,omitempty"`
15574
15575	// ForceSendFields is a list of field names (e.g. "LocationCode") to
15576	// unconditionally include in API requests. By default, fields with
15577	// empty values are omitted from API requests. However, any non-pointer,
15578	// non-interface field appearing in ForceSendFields will be sent to the
15579	// server regardless of whether the field is empty or not. This may be
15580	// used to include empty fields in Patch requests.
15581	ForceSendFields []string `json:"-"`
15582
15583	// NullFields is a list of field names (e.g. "LocationCode") to include
15584	// in API requests with the JSON null value. By default, fields with
15585	// empty values are omitted from API requests. However, any field with
15586	// an empty value appearing in NullFields will be sent to the server as
15587	// null. It is an error if a field in this list has a non-empty value.
15588	// This may be used to include null fields in Patch requests.
15589	NullFields []string `json:"-"`
15590}
15591
15592func (s *TestOrderPickupDetails) MarshalJSON() ([]byte, error) {
15593	type NoMethod TestOrderPickupDetails
15594	raw := NoMethod(*s)
15595	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15596}
15597
15598type TestOrderPickupDetailsPickupPerson struct {
15599	// Name: Required. Full name of the pickup person.
15600	Name string `json:"name,omitempty"`
15601
15602	// PhoneNumber: Required. The phone number of the person picking up the
15603	// items.
15604	PhoneNumber string `json:"phoneNumber,omitempty"`
15605
15606	// ForceSendFields is a list of field names (e.g. "Name") to
15607	// unconditionally include in API requests. By default, fields with
15608	// empty values are omitted from API requests. However, any non-pointer,
15609	// non-interface field appearing in ForceSendFields will be sent to the
15610	// server regardless of whether the field is empty or not. This may be
15611	// used to include empty fields in Patch requests.
15612	ForceSendFields []string `json:"-"`
15613
15614	// NullFields is a list of field names (e.g. "Name") to include in API
15615	// requests with the JSON null value. By default, fields with empty
15616	// values are omitted from API requests. However, any field with an
15617	// empty value appearing in NullFields will be sent to the server as
15618	// null. It is an error if a field in this list has a non-empty value.
15619	// This may be used to include null fields in Patch requests.
15620	NullFields []string `json:"-"`
15621}
15622
15623func (s *TestOrderPickupDetailsPickupPerson) MarshalJSON() ([]byte, error) {
15624	type NoMethod TestOrderPickupDetailsPickupPerson
15625	raw := NoMethod(*s)
15626	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15627}
15628
15629// TimeZone: Represents a time zone from the IANA Time Zone Database
15630// (https://www.iana.org/time-zones).
15631type TimeZone struct {
15632	// Id: IANA Time Zone Database time zone, e.g. "America/New_York".
15633	Id string `json:"id,omitempty"`
15634
15635	// Version: Optional. IANA Time Zone Database version number, e.g.
15636	// "2019a".
15637	Version string `json:"version,omitempty"`
15638
15639	// ForceSendFields is a list of field names (e.g. "Id") to
15640	// unconditionally include in API requests. By default, fields with
15641	// empty values are omitted from API requests. However, any non-pointer,
15642	// non-interface field appearing in ForceSendFields will be sent to the
15643	// server regardless of whether the field is empty or not. This may be
15644	// used to include empty fields in Patch requests.
15645	ForceSendFields []string `json:"-"`
15646
15647	// NullFields is a list of field names (e.g. "Id") to include in API
15648	// requests with the JSON null value. By default, fields with empty
15649	// values are omitted from API requests. However, any field with an
15650	// empty value appearing in NullFields will be sent to the server as
15651	// null. It is an error if a field in this list has a non-empty value.
15652	// This may be used to include null fields in Patch requests.
15653	NullFields []string `json:"-"`
15654}
15655
15656func (s *TimeZone) MarshalJSON() ([]byte, error) {
15657	type NoMethod TimeZone
15658	raw := NoMethod(*s)
15659	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15660}
15661
15662type TransitTable struct {
15663	// PostalCodeGroupNames: A list of postal group names. The last value
15664	// can be "all other locations". Example: `["zone 1", "zone 2", "all
15665	// other locations"]`. The referred postal code groups must match the
15666	// delivery country of the service.
15667	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
15668
15669	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
15670
15671	// TransitTimeLabels: A list of transit time labels. The last value can
15672	// be "all other labels". Example: `["food", "electronics", "all other
15673	// labels"]`.
15674	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
15675
15676	// ForceSendFields is a list of field names (e.g.
15677	// "PostalCodeGroupNames") to unconditionally include in API requests.
15678	// By default, fields with empty values are omitted from API requests.
15679	// However, any non-pointer, non-interface field appearing in
15680	// ForceSendFields will be sent to the server regardless of whether the
15681	// field is empty or not. This may be used to include empty fields in
15682	// Patch requests.
15683	ForceSendFields []string `json:"-"`
15684
15685	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
15686	// include in API requests with the JSON null value. By default, fields
15687	// with empty values are omitted from API requests. However, any field
15688	// with an empty value appearing in NullFields will be sent to the
15689	// server as null. It is an error if a field in this list has a
15690	// non-empty value. This may be used to include null fields in Patch
15691	// requests.
15692	NullFields []string `json:"-"`
15693}
15694
15695func (s *TransitTable) MarshalJSON() ([]byte, error) {
15696	type NoMethod TransitTable
15697	raw := NoMethod(*s)
15698	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15699}
15700
15701type TransitTableTransitTimeRow struct {
15702	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
15703
15704	// ForceSendFields is a list of field names (e.g. "Values") to
15705	// unconditionally include in API requests. By default, fields with
15706	// empty values are omitted from API requests. However, any non-pointer,
15707	// non-interface field appearing in ForceSendFields will be sent to the
15708	// server regardless of whether the field is empty or not. This may be
15709	// used to include empty fields in Patch requests.
15710	ForceSendFields []string `json:"-"`
15711
15712	// NullFields is a list of field names (e.g. "Values") to include in API
15713	// requests with the JSON null value. By default, fields with empty
15714	// values are omitted from API requests. However, any field with an
15715	// empty value appearing in NullFields will be sent to the server as
15716	// null. It is an error if a field in this list has a non-empty value.
15717	// This may be used to include null fields in Patch requests.
15718	NullFields []string `json:"-"`
15719}
15720
15721func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
15722	type NoMethod TransitTableTransitTimeRow
15723	raw := NoMethod(*s)
15724	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15725}
15726
15727type TransitTableTransitTimeRowTransitTimeValue struct {
15728	// MaxTransitTimeInDays: Must be greater than or equal to
15729	// `minTransitTimeInDays`.
15730	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
15731
15732	// MinTransitTimeInDays: Transit time range (min-max) in business days.
15733	// 0 means same day delivery, 1 means next day delivery.
15734	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
15735
15736	// ForceSendFields is a list of field names (e.g.
15737	// "MaxTransitTimeInDays") to unconditionally include in API requests.
15738	// By default, fields with empty values are omitted from API requests.
15739	// However, any non-pointer, non-interface field appearing in
15740	// ForceSendFields will be sent to the server regardless of whether the
15741	// field is empty or not. This may be used to include empty fields in
15742	// Patch requests.
15743	ForceSendFields []string `json:"-"`
15744
15745	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
15746	// include in API requests with the JSON null value. By default, fields
15747	// with empty values are omitted from API requests. However, any field
15748	// with an empty value appearing in NullFields will be sent to the
15749	// server as null. It is an error if a field in this list has a
15750	// non-empty value. This may be used to include null fields in Patch
15751	// requests.
15752	NullFields []string `json:"-"`
15753}
15754
15755func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
15756	type NoMethod TransitTableTransitTimeRowTransitTimeValue
15757	raw := NoMethod(*s)
15758	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15759}
15760
15761type UnitInvoice struct {
15762	// AdditionalCharges: Additional charges for a unit, e.g. shipping
15763	// costs.
15764	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
15765
15766	// UnitPrice: [required] Pre-tax or post-tax price of the unit depending
15767	// on the locality of the order.
15768	UnitPrice *Price `json:"unitPrice,omitempty"`
15769
15770	// UnitPriceTaxes: Tax amounts to apply to the unit price.
15771	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
15772
15773	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
15774	// to unconditionally include in API requests. By default, fields with
15775	// empty values are omitted from API requests. However, any non-pointer,
15776	// non-interface field appearing in ForceSendFields will be sent to the
15777	// server regardless of whether the field is empty or not. This may be
15778	// used to include empty fields in Patch requests.
15779	ForceSendFields []string `json:"-"`
15780
15781	// NullFields is a list of field names (e.g. "AdditionalCharges") to
15782	// include in API requests with the JSON null value. By default, fields
15783	// with empty values are omitted from API requests. However, any field
15784	// with an empty value appearing in NullFields will be sent to the
15785	// server as null. It is an error if a field in this list has a
15786	// non-empty value. This may be used to include null fields in Patch
15787	// requests.
15788	NullFields []string `json:"-"`
15789}
15790
15791func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
15792	type NoMethod UnitInvoice
15793	raw := NoMethod(*s)
15794	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15795}
15796
15797type UnitInvoiceAdditionalCharge struct {
15798	// AdditionalChargeAmount: [required] Amount of the additional charge.
15799	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
15800
15801	// Type: [required] Type of the additional charge. Acceptable values
15802	// are: - "shipping"
15803	Type string `json:"type,omitempty"`
15804
15805	// ForceSendFields is a list of field names (e.g.
15806	// "AdditionalChargeAmount") to unconditionally include in API requests.
15807	// By default, fields with empty values are omitted from API requests.
15808	// However, any non-pointer, non-interface field appearing in
15809	// ForceSendFields will be sent to the server regardless of whether the
15810	// field is empty or not. This may be used to include empty fields in
15811	// Patch requests.
15812	ForceSendFields []string `json:"-"`
15813
15814	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
15815	// to include in API requests with the JSON null value. By default,
15816	// fields with empty values are omitted from API requests. However, any
15817	// field with an empty value appearing in NullFields will be sent to the
15818	// server as null. It is an error if a field in this list has a
15819	// non-empty value. This may be used to include null fields in Patch
15820	// requests.
15821	NullFields []string `json:"-"`
15822}
15823
15824func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
15825	type NoMethod UnitInvoiceAdditionalCharge
15826	raw := NoMethod(*s)
15827	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15828}
15829
15830type UnitInvoiceTaxLine struct {
15831	// TaxAmount: [required] Tax amount for the tax type.
15832	TaxAmount *Price `json:"taxAmount,omitempty"`
15833
15834	// TaxName: Optional name of the tax type. This should only be provided
15835	// if `taxType` is `otherFeeTax`.
15836	TaxName string `json:"taxName,omitempty"`
15837
15838	// TaxType: [required] Type of the tax. Acceptable values are: -
15839	// "otherFee" - "otherFeeTax" - "sales"
15840	TaxType string `json:"taxType,omitempty"`
15841
15842	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
15843	// unconditionally include in API requests. By default, fields with
15844	// empty values are omitted from API requests. However, any non-pointer,
15845	// non-interface field appearing in ForceSendFields will be sent to the
15846	// server regardless of whether the field is empty or not. This may be
15847	// used to include empty fields in Patch requests.
15848	ForceSendFields []string `json:"-"`
15849
15850	// NullFields is a list of field names (e.g. "TaxAmount") to include in
15851	// API requests with the JSON null value. By default, fields with empty
15852	// values are omitted from API requests. However, any field with an
15853	// empty value appearing in NullFields will be sent to the server as
15854	// null. It is an error if a field in this list has a non-empty value.
15855	// This may be used to include null fields in Patch requests.
15856	NullFields []string `json:"-"`
15857}
15858
15859func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
15860	type NoMethod UnitInvoiceTaxLine
15861	raw := NoMethod(*s)
15862	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15863}
15864
15865// Value: The single value of a rate group or the value of a rate group
15866// table's cell. Exactly one of `noShipping`, `flatRate`,
15867// `pricePercentage`, `carrierRateName`, `subtableName` must be set.
15868type Value struct {
15869	// CarrierRateName: The name of a carrier rate referring to a carrier
15870	// rate defined in the same rate group. Can only be set if all other
15871	// fields are not set.
15872	CarrierRateName string `json:"carrierRateName,omitempty"`
15873
15874	// FlatRate: A flat rate. Can only be set if all other fields are not
15875	// set.
15876	FlatRate *Price `json:"flatRate,omitempty"`
15877
15878	// NoShipping: If true, then the product can't ship. Must be true when
15879	// set, can only be set if all other fields are not set.
15880	NoShipping bool `json:"noShipping,omitempty"`
15881
15882	// PricePercentage: A percentage of the price represented as a number in
15883	// decimal notation (e.g., "5.4"). Can only be set if all other fields
15884	// are not set.
15885	PricePercentage string `json:"pricePercentage,omitempty"`
15886
15887	// SubtableName: The name of a subtable. Can only be set in table cells
15888	// (i.e., not for single values), and only if all other fields are not
15889	// set.
15890	SubtableName string `json:"subtableName,omitempty"`
15891
15892	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
15893	// unconditionally include in API requests. By default, fields with
15894	// empty values are omitted from API requests. However, any non-pointer,
15895	// non-interface field appearing in ForceSendFields will be sent to the
15896	// server regardless of whether the field is empty or not. This may be
15897	// used to include empty fields in Patch requests.
15898	ForceSendFields []string `json:"-"`
15899
15900	// NullFields is a list of field names (e.g. "CarrierRateName") to
15901	// include in API requests with the JSON null value. By default, fields
15902	// with empty values are omitted from API requests. However, any field
15903	// with an empty value appearing in NullFields will be sent to the
15904	// server as null. It is an error if a field in this list has a
15905	// non-empty value. This may be used to include null fields in Patch
15906	// requests.
15907	NullFields []string `json:"-"`
15908}
15909
15910func (s *Value) MarshalJSON() ([]byte, error) {
15911	type NoMethod Value
15912	raw := NoMethod(*s)
15913	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15914}
15915
15916type Weight struct {
15917	// Unit: Required. The weight unit. Acceptable values are: - "kg" -
15918	// "lb"
15919	Unit string `json:"unit,omitempty"`
15920
15921	// Value: Required. The weight represented as a number.
15922	Value string `json:"value,omitempty"`
15923
15924	// ForceSendFields is a list of field names (e.g. "Unit") to
15925	// unconditionally include in API requests. By default, fields with
15926	// empty values are omitted from API requests. However, any non-pointer,
15927	// non-interface field appearing in ForceSendFields will be sent to the
15928	// server regardless of whether the field is empty or not. This may be
15929	// used to include empty fields in Patch requests.
15930	ForceSendFields []string `json:"-"`
15931
15932	// NullFields is a list of field names (e.g. "Unit") to include in API
15933	// requests with the JSON null value. By default, fields with empty
15934	// values are omitted from API requests. However, any field with an
15935	// empty value appearing in NullFields will be sent to the server as
15936	// null. It is an error if a field in this list has a non-empty value.
15937	// This may be used to include null fields in Patch requests.
15938	NullFields []string `json:"-"`
15939}
15940
15941func (s *Weight) MarshalJSON() ([]byte, error) {
15942	type NoMethod Weight
15943	raw := NoMethod(*s)
15944	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15945}
15946
15947// method id "content.accounts.authinfo":
15948
15949type AccountsAuthinfoCall struct {
15950	s            *APIService
15951	urlParams_   gensupport.URLParams
15952	ifNoneMatch_ string
15953	ctx_         context.Context
15954	header_      http.Header
15955}
15956
15957// Authinfo: Returns information about the authenticated user.
15958func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
15959	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15960	return c
15961}
15962
15963// Fields allows partial responses to be retrieved. See
15964// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15965// for more information.
15966func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
15967	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15968	return c
15969}
15970
15971// IfNoneMatch sets the optional parameter which makes the operation
15972// fail if the object's ETag matches the given value. This is useful for
15973// getting updates only after the object has changed since the last
15974// request. Use googleapi.IsNotModified to check whether the response
15975// error from Do is the result of In-None-Match.
15976func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
15977	c.ifNoneMatch_ = entityTag
15978	return c
15979}
15980
15981// Context sets the context to be used in this call's Do method. Any
15982// pending HTTP request will be aborted if the provided context is
15983// canceled.
15984func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
15985	c.ctx_ = ctx
15986	return c
15987}
15988
15989// Header returns an http.Header that can be modified by the caller to
15990// add HTTP headers to the request.
15991func (c *AccountsAuthinfoCall) Header() http.Header {
15992	if c.header_ == nil {
15993		c.header_ = make(http.Header)
15994	}
15995	return c.header_
15996}
15997
15998func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
15999	reqHeaders := make(http.Header)
16000	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
16001	for k, v := range c.header_ {
16002		reqHeaders[k] = v
16003	}
16004	reqHeaders.Set("User-Agent", c.s.userAgent())
16005	if c.ifNoneMatch_ != "" {
16006		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16007	}
16008	var body io.Reader = nil
16009	c.urlParams_.Set("alt", alt)
16010	c.urlParams_.Set("prettyPrint", "false")
16011	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/authinfo")
16012	urls += "?" + c.urlParams_.Encode()
16013	req, err := http.NewRequest("GET", urls, body)
16014	if err != nil {
16015		return nil, err
16016	}
16017	req.Header = reqHeaders
16018	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16019}
16020
16021// Do executes the "content.accounts.authinfo" call.
16022// Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
16023// Any non-2xx status code is an error. Response headers are in either
16024// *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
16025// returned at all) in error.(*googleapi.Error).Header. Use
16026// googleapi.IsNotModified to check whether the returned error was
16027// because http.StatusNotModified was returned.
16028func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
16029	gensupport.SetOptions(c.urlParams_, opts...)
16030	res, err := c.doRequest("json")
16031	if res != nil && res.StatusCode == http.StatusNotModified {
16032		if res.Body != nil {
16033			res.Body.Close()
16034		}
16035		return nil, &googleapi.Error{
16036			Code:   res.StatusCode,
16037			Header: res.Header,
16038		}
16039	}
16040	if err != nil {
16041		return nil, err
16042	}
16043	defer googleapi.CloseBody(res)
16044	if err := googleapi.CheckResponse(res); err != nil {
16045		return nil, err
16046	}
16047	ret := &AccountsAuthInfoResponse{
16048		ServerResponse: googleapi.ServerResponse{
16049			Header:         res.Header,
16050			HTTPStatusCode: res.StatusCode,
16051		},
16052	}
16053	target := &ret
16054	if err := gensupport.DecodeResponse(target, res); err != nil {
16055		return nil, err
16056	}
16057	return ret, nil
16058	// {
16059	//   "description": "Returns information about the authenticated user.",
16060	//   "flatPath": "accounts/authinfo",
16061	//   "httpMethod": "GET",
16062	//   "id": "content.accounts.authinfo",
16063	//   "parameterOrder": [],
16064	//   "parameters": {},
16065	//   "path": "accounts/authinfo",
16066	//   "response": {
16067	//     "$ref": "AccountsAuthInfoResponse"
16068	//   },
16069	//   "scopes": [
16070	//     "https://www.googleapis.com/auth/content"
16071	//   ]
16072	// }
16073
16074}
16075
16076// method id "content.accounts.claimwebsite":
16077
16078type AccountsClaimwebsiteCall struct {
16079	s          *APIService
16080	merchantId uint64
16081	accountId  uint64
16082	urlParams_ gensupport.URLParams
16083	ctx_       context.Context
16084	header_    http.Header
16085}
16086
16087// Claimwebsite: Claims the website of a Merchant Center sub-account.
16088//
16089// - accountId: The ID of the account whose website is claimed.
16090// - merchantId: The ID of the managing account. If this parameter is
16091//   not the same as accountId, then this account must be a multi-client
16092//   account and `accountId` must be the ID of a sub-account of this
16093//   account.
16094func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
16095	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16096	c.merchantId = merchantId
16097	c.accountId = accountId
16098	return c
16099}
16100
16101// Overwrite sets the optional parameter "overwrite": Only available to
16102// selected merchants. When set to `True`, this flag removes any
16103// existing claim on the requested website by another account and
16104// replaces it with a claim from this account.
16105func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
16106	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
16107	return c
16108}
16109
16110// Fields allows partial responses to be retrieved. See
16111// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16112// for more information.
16113func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
16114	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16115	return c
16116}
16117
16118// Context sets the context to be used in this call's Do method. Any
16119// pending HTTP request will be aborted if the provided context is
16120// canceled.
16121func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
16122	c.ctx_ = ctx
16123	return c
16124}
16125
16126// Header returns an http.Header that can be modified by the caller to
16127// add HTTP headers to the request.
16128func (c *AccountsClaimwebsiteCall) Header() http.Header {
16129	if c.header_ == nil {
16130		c.header_ = make(http.Header)
16131	}
16132	return c.header_
16133}
16134
16135func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
16136	reqHeaders := make(http.Header)
16137	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
16138	for k, v := range c.header_ {
16139		reqHeaders[k] = v
16140	}
16141	reqHeaders.Set("User-Agent", c.s.userAgent())
16142	var body io.Reader = nil
16143	c.urlParams_.Set("alt", alt)
16144	c.urlParams_.Set("prettyPrint", "false")
16145	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/claimwebsite")
16146	urls += "?" + c.urlParams_.Encode()
16147	req, err := http.NewRequest("POST", urls, body)
16148	if err != nil {
16149		return nil, err
16150	}
16151	req.Header = reqHeaders
16152	googleapi.Expand(req.URL, map[string]string{
16153		"merchantId": strconv.FormatUint(c.merchantId, 10),
16154		"accountId":  strconv.FormatUint(c.accountId, 10),
16155	})
16156	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16157}
16158
16159// Do executes the "content.accounts.claimwebsite" call.
16160// Exactly one of *AccountsClaimWebsiteResponse or error will be
16161// non-nil. Any non-2xx status code is an error. Response headers are in
16162// either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
16163// response was returned at all) in error.(*googleapi.Error).Header. Use
16164// googleapi.IsNotModified to check whether the returned error was
16165// because http.StatusNotModified was returned.
16166func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
16167	gensupport.SetOptions(c.urlParams_, opts...)
16168	res, err := c.doRequest("json")
16169	if res != nil && res.StatusCode == http.StatusNotModified {
16170		if res.Body != nil {
16171			res.Body.Close()
16172		}
16173		return nil, &googleapi.Error{
16174			Code:   res.StatusCode,
16175			Header: res.Header,
16176		}
16177	}
16178	if err != nil {
16179		return nil, err
16180	}
16181	defer googleapi.CloseBody(res)
16182	if err := googleapi.CheckResponse(res); err != nil {
16183		return nil, err
16184	}
16185	ret := &AccountsClaimWebsiteResponse{
16186		ServerResponse: googleapi.ServerResponse{
16187			Header:         res.Header,
16188			HTTPStatusCode: res.StatusCode,
16189		},
16190	}
16191	target := &ret
16192	if err := gensupport.DecodeResponse(target, res); err != nil {
16193		return nil, err
16194	}
16195	return ret, nil
16196	// {
16197	//   "description": "Claims the website of a Merchant Center sub-account.",
16198	//   "flatPath": "{merchantId}/accounts/{accountId}/claimwebsite",
16199	//   "httpMethod": "POST",
16200	//   "id": "content.accounts.claimwebsite",
16201	//   "parameterOrder": [
16202	//     "merchantId",
16203	//     "accountId"
16204	//   ],
16205	//   "parameters": {
16206	//     "accountId": {
16207	//       "description": "The ID of the account whose website is claimed.",
16208	//       "format": "uint64",
16209	//       "location": "path",
16210	//       "required": true,
16211	//       "type": "string"
16212	//     },
16213	//     "merchantId": {
16214	//       "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.",
16215	//       "format": "uint64",
16216	//       "location": "path",
16217	//       "required": true,
16218	//       "type": "string"
16219	//     },
16220	//     "overwrite": {
16221	//       "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.",
16222	//       "location": "query",
16223	//       "type": "boolean"
16224	//     }
16225	//   },
16226	//   "path": "{merchantId}/accounts/{accountId}/claimwebsite",
16227	//   "response": {
16228	//     "$ref": "AccountsClaimWebsiteResponse"
16229	//   },
16230	//   "scopes": [
16231	//     "https://www.googleapis.com/auth/content"
16232	//   ]
16233	// }
16234
16235}
16236
16237// method id "content.accounts.custombatch":
16238
16239type AccountsCustombatchCall struct {
16240	s                          *APIService
16241	accountscustombatchrequest *AccountsCustomBatchRequest
16242	urlParams_                 gensupport.URLParams
16243	ctx_                       context.Context
16244	header_                    http.Header
16245}
16246
16247// Custombatch: Retrieves, inserts, updates, and deletes multiple
16248// Merchant Center (sub-)accounts in a single request.
16249func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
16250	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16251	c.accountscustombatchrequest = accountscustombatchrequest
16252	return c
16253}
16254
16255// Fields allows partial responses to be retrieved. See
16256// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16257// for more information.
16258func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
16259	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16260	return c
16261}
16262
16263// Context sets the context to be used in this call's Do method. Any
16264// pending HTTP request will be aborted if the provided context is
16265// canceled.
16266func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
16267	c.ctx_ = ctx
16268	return c
16269}
16270
16271// Header returns an http.Header that can be modified by the caller to
16272// add HTTP headers to the request.
16273func (c *AccountsCustombatchCall) Header() http.Header {
16274	if c.header_ == nil {
16275		c.header_ = make(http.Header)
16276	}
16277	return c.header_
16278}
16279
16280func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
16281	reqHeaders := make(http.Header)
16282	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
16283	for k, v := range c.header_ {
16284		reqHeaders[k] = v
16285	}
16286	reqHeaders.Set("User-Agent", c.s.userAgent())
16287	var body io.Reader = nil
16288	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
16289	if err != nil {
16290		return nil, err
16291	}
16292	reqHeaders.Set("Content-Type", "application/json")
16293	c.urlParams_.Set("alt", alt)
16294	c.urlParams_.Set("prettyPrint", "false")
16295	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/batch")
16296	urls += "?" + c.urlParams_.Encode()
16297	req, err := http.NewRequest("POST", urls, body)
16298	if err != nil {
16299		return nil, err
16300	}
16301	req.Header = reqHeaders
16302	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16303}
16304
16305// Do executes the "content.accounts.custombatch" call.
16306// Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
16307// Any non-2xx status code is an error. Response headers are in either
16308// *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
16309// was returned at all) in error.(*googleapi.Error).Header. Use
16310// googleapi.IsNotModified to check whether the returned error was
16311// because http.StatusNotModified was returned.
16312func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
16313	gensupport.SetOptions(c.urlParams_, opts...)
16314	res, err := c.doRequest("json")
16315	if res != nil && res.StatusCode == http.StatusNotModified {
16316		if res.Body != nil {
16317			res.Body.Close()
16318		}
16319		return nil, &googleapi.Error{
16320			Code:   res.StatusCode,
16321			Header: res.Header,
16322		}
16323	}
16324	if err != nil {
16325		return nil, err
16326	}
16327	defer googleapi.CloseBody(res)
16328	if err := googleapi.CheckResponse(res); err != nil {
16329		return nil, err
16330	}
16331	ret := &AccountsCustomBatchResponse{
16332		ServerResponse: googleapi.ServerResponse{
16333			Header:         res.Header,
16334			HTTPStatusCode: res.StatusCode,
16335		},
16336	}
16337	target := &ret
16338	if err := gensupport.DecodeResponse(target, res); err != nil {
16339		return nil, err
16340	}
16341	return ret, nil
16342	// {
16343	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
16344	//   "flatPath": "accounts/batch",
16345	//   "httpMethod": "POST",
16346	//   "id": "content.accounts.custombatch",
16347	//   "parameterOrder": [],
16348	//   "parameters": {},
16349	//   "path": "accounts/batch",
16350	//   "request": {
16351	//     "$ref": "AccountsCustomBatchRequest"
16352	//   },
16353	//   "response": {
16354	//     "$ref": "AccountsCustomBatchResponse"
16355	//   },
16356	//   "scopes": [
16357	//     "https://www.googleapis.com/auth/content"
16358	//   ]
16359	// }
16360
16361}
16362
16363// method id "content.accounts.delete":
16364
16365type AccountsDeleteCall struct {
16366	s          *APIService
16367	merchantId uint64
16368	accountId  uint64
16369	urlParams_ gensupport.URLParams
16370	ctx_       context.Context
16371	header_    http.Header
16372}
16373
16374// Delete: Deletes a Merchant Center sub-account.
16375//
16376// - accountId: The ID of the account.
16377// - merchantId: The ID of the managing account. This must be a
16378//   multi-client account, and accountId must be the ID of a sub-account
16379//   of this account.
16380func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
16381	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16382	c.merchantId = merchantId
16383	c.accountId = accountId
16384	return c
16385}
16386
16387// Force sets the optional parameter "force": Flag to delete
16388// sub-accounts with products. The default value is false.
16389func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
16390	c.urlParams_.Set("force", fmt.Sprint(force))
16391	return c
16392}
16393
16394// Fields allows partial responses to be retrieved. See
16395// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16396// for more information.
16397func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
16398	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16399	return c
16400}
16401
16402// Context sets the context to be used in this call's Do method. Any
16403// pending HTTP request will be aborted if the provided context is
16404// canceled.
16405func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
16406	c.ctx_ = ctx
16407	return c
16408}
16409
16410// Header returns an http.Header that can be modified by the caller to
16411// add HTTP headers to the request.
16412func (c *AccountsDeleteCall) Header() http.Header {
16413	if c.header_ == nil {
16414		c.header_ = make(http.Header)
16415	}
16416	return c.header_
16417}
16418
16419func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
16420	reqHeaders := make(http.Header)
16421	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
16422	for k, v := range c.header_ {
16423		reqHeaders[k] = v
16424	}
16425	reqHeaders.Set("User-Agent", c.s.userAgent())
16426	var body io.Reader = nil
16427	c.urlParams_.Set("alt", alt)
16428	c.urlParams_.Set("prettyPrint", "false")
16429	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
16430	urls += "?" + c.urlParams_.Encode()
16431	req, err := http.NewRequest("DELETE", urls, body)
16432	if err != nil {
16433		return nil, err
16434	}
16435	req.Header = reqHeaders
16436	googleapi.Expand(req.URL, map[string]string{
16437		"merchantId": strconv.FormatUint(c.merchantId, 10),
16438		"accountId":  strconv.FormatUint(c.accountId, 10),
16439	})
16440	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16441}
16442
16443// Do executes the "content.accounts.delete" call.
16444func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
16445	gensupport.SetOptions(c.urlParams_, opts...)
16446	res, err := c.doRequest("json")
16447	if err != nil {
16448		return err
16449	}
16450	defer googleapi.CloseBody(res)
16451	if err := googleapi.CheckResponse(res); err != nil {
16452		return err
16453	}
16454	return nil
16455	// {
16456	//   "description": "Deletes a Merchant Center sub-account.",
16457	//   "flatPath": "{merchantId}/accounts/{accountId}",
16458	//   "httpMethod": "DELETE",
16459	//   "id": "content.accounts.delete",
16460	//   "parameterOrder": [
16461	//     "merchantId",
16462	//     "accountId"
16463	//   ],
16464	//   "parameters": {
16465	//     "accountId": {
16466	//       "description": "The ID of the account.",
16467	//       "format": "uint64",
16468	//       "location": "path",
16469	//       "required": true,
16470	//       "type": "string"
16471	//     },
16472	//     "force": {
16473	//       "default": "false",
16474	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
16475	//       "location": "query",
16476	//       "type": "boolean"
16477	//     },
16478	//     "merchantId": {
16479	//       "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.",
16480	//       "format": "uint64",
16481	//       "location": "path",
16482	//       "required": true,
16483	//       "type": "string"
16484	//     }
16485	//   },
16486	//   "path": "{merchantId}/accounts/{accountId}",
16487	//   "scopes": [
16488	//     "https://www.googleapis.com/auth/content"
16489	//   ]
16490	// }
16491
16492}
16493
16494// method id "content.accounts.get":
16495
16496type AccountsGetCall struct {
16497	s            *APIService
16498	merchantId   uint64
16499	accountId    uint64
16500	urlParams_   gensupport.URLParams
16501	ifNoneMatch_ string
16502	ctx_         context.Context
16503	header_      http.Header
16504}
16505
16506// Get: Retrieves a Merchant Center account.
16507//
16508// - accountId: The ID of the account.
16509// - merchantId: The ID of the managing account. If this parameter is
16510//   not the same as accountId, then this account must be a multi-client
16511//   account and `accountId` must be the ID of a sub-account of this
16512//   account.
16513func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
16514	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16515	c.merchantId = merchantId
16516	c.accountId = accountId
16517	return c
16518}
16519
16520// View sets the optional parameter "view": Controls which fields will
16521// be populated. Acceptable values are: "merchant" and "css". The
16522// default value is "merchant".
16523//
16524// Possible values:
16525//   "MERCHANT"
16526//   "CSS"
16527func (c *AccountsGetCall) View(view string) *AccountsGetCall {
16528	c.urlParams_.Set("view", view)
16529	return c
16530}
16531
16532// Fields allows partial responses to be retrieved. See
16533// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16534// for more information.
16535func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
16536	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16537	return c
16538}
16539
16540// IfNoneMatch sets the optional parameter which makes the operation
16541// fail if the object's ETag matches the given value. This is useful for
16542// getting updates only after the object has changed since the last
16543// request. Use googleapi.IsNotModified to check whether the response
16544// error from Do is the result of In-None-Match.
16545func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
16546	c.ifNoneMatch_ = entityTag
16547	return c
16548}
16549
16550// Context sets the context to be used in this call's Do method. Any
16551// pending HTTP request will be aborted if the provided context is
16552// canceled.
16553func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
16554	c.ctx_ = ctx
16555	return c
16556}
16557
16558// Header returns an http.Header that can be modified by the caller to
16559// add HTTP headers to the request.
16560func (c *AccountsGetCall) Header() http.Header {
16561	if c.header_ == nil {
16562		c.header_ = make(http.Header)
16563	}
16564	return c.header_
16565}
16566
16567func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
16568	reqHeaders := make(http.Header)
16569	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
16570	for k, v := range c.header_ {
16571		reqHeaders[k] = v
16572	}
16573	reqHeaders.Set("User-Agent", c.s.userAgent())
16574	if c.ifNoneMatch_ != "" {
16575		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16576	}
16577	var body io.Reader = nil
16578	c.urlParams_.Set("alt", alt)
16579	c.urlParams_.Set("prettyPrint", "false")
16580	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
16581	urls += "?" + c.urlParams_.Encode()
16582	req, err := http.NewRequest("GET", urls, body)
16583	if err != nil {
16584		return nil, err
16585	}
16586	req.Header = reqHeaders
16587	googleapi.Expand(req.URL, map[string]string{
16588		"merchantId": strconv.FormatUint(c.merchantId, 10),
16589		"accountId":  strconv.FormatUint(c.accountId, 10),
16590	})
16591	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16592}
16593
16594// Do executes the "content.accounts.get" call.
16595// Exactly one of *Account or error will be non-nil. Any non-2xx status
16596// code is an error. Response headers are in either
16597// *Account.ServerResponse.Header or (if a response was returned at all)
16598// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
16599// check whether the returned error was because http.StatusNotModified
16600// was returned.
16601func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
16602	gensupport.SetOptions(c.urlParams_, opts...)
16603	res, err := c.doRequest("json")
16604	if res != nil && res.StatusCode == http.StatusNotModified {
16605		if res.Body != nil {
16606			res.Body.Close()
16607		}
16608		return nil, &googleapi.Error{
16609			Code:   res.StatusCode,
16610			Header: res.Header,
16611		}
16612	}
16613	if err != nil {
16614		return nil, err
16615	}
16616	defer googleapi.CloseBody(res)
16617	if err := googleapi.CheckResponse(res); err != nil {
16618		return nil, err
16619	}
16620	ret := &Account{
16621		ServerResponse: googleapi.ServerResponse{
16622			Header:         res.Header,
16623			HTTPStatusCode: res.StatusCode,
16624		},
16625	}
16626	target := &ret
16627	if err := gensupport.DecodeResponse(target, res); err != nil {
16628		return nil, err
16629	}
16630	return ret, nil
16631	// {
16632	//   "description": "Retrieves a Merchant Center account.",
16633	//   "flatPath": "{merchantId}/accounts/{accountId}",
16634	//   "httpMethod": "GET",
16635	//   "id": "content.accounts.get",
16636	//   "parameterOrder": [
16637	//     "merchantId",
16638	//     "accountId"
16639	//   ],
16640	//   "parameters": {
16641	//     "accountId": {
16642	//       "description": "The ID of the account.",
16643	//       "format": "uint64",
16644	//       "location": "path",
16645	//       "required": true,
16646	//       "type": "string"
16647	//     },
16648	//     "merchantId": {
16649	//       "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.",
16650	//       "format": "uint64",
16651	//       "location": "path",
16652	//       "required": true,
16653	//       "type": "string"
16654	//     },
16655	//     "view": {
16656	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
16657	//       "enum": [
16658	//         "MERCHANT",
16659	//         "CSS"
16660	//       ],
16661	//       "enumDescriptions": [
16662	//         "",
16663	//         ""
16664	//       ],
16665	//       "location": "query",
16666	//       "type": "string"
16667	//     }
16668	//   },
16669	//   "path": "{merchantId}/accounts/{accountId}",
16670	//   "response": {
16671	//     "$ref": "Account"
16672	//   },
16673	//   "scopes": [
16674	//     "https://www.googleapis.com/auth/content"
16675	//   ]
16676	// }
16677
16678}
16679
16680// method id "content.accounts.insert":
16681
16682type AccountsInsertCall struct {
16683	s          *APIService
16684	merchantId uint64
16685	account    *Account
16686	urlParams_ gensupport.URLParams
16687	ctx_       context.Context
16688	header_    http.Header
16689}
16690
16691// Insert: Creates a Merchant Center sub-account.
16692//
16693// - merchantId: The ID of the managing account. This must be a
16694//   multi-client account.
16695func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
16696	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16697	c.merchantId = merchantId
16698	c.account = account
16699	return c
16700}
16701
16702// Fields allows partial responses to be retrieved. See
16703// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16704// for more information.
16705func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
16706	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16707	return c
16708}
16709
16710// Context sets the context to be used in this call's Do method. Any
16711// pending HTTP request will be aborted if the provided context is
16712// canceled.
16713func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
16714	c.ctx_ = ctx
16715	return c
16716}
16717
16718// Header returns an http.Header that can be modified by the caller to
16719// add HTTP headers to the request.
16720func (c *AccountsInsertCall) Header() http.Header {
16721	if c.header_ == nil {
16722		c.header_ = make(http.Header)
16723	}
16724	return c.header_
16725}
16726
16727func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
16728	reqHeaders := make(http.Header)
16729	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
16730	for k, v := range c.header_ {
16731		reqHeaders[k] = v
16732	}
16733	reqHeaders.Set("User-Agent", c.s.userAgent())
16734	var body io.Reader = nil
16735	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
16736	if err != nil {
16737		return nil, err
16738	}
16739	reqHeaders.Set("Content-Type", "application/json")
16740	c.urlParams_.Set("alt", alt)
16741	c.urlParams_.Set("prettyPrint", "false")
16742	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
16743	urls += "?" + c.urlParams_.Encode()
16744	req, err := http.NewRequest("POST", urls, body)
16745	if err != nil {
16746		return nil, err
16747	}
16748	req.Header = reqHeaders
16749	googleapi.Expand(req.URL, map[string]string{
16750		"merchantId": strconv.FormatUint(c.merchantId, 10),
16751	})
16752	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16753}
16754
16755// Do executes the "content.accounts.insert" call.
16756// Exactly one of *Account or error will be non-nil. Any non-2xx status
16757// code is an error. Response headers are in either
16758// *Account.ServerResponse.Header or (if a response was returned at all)
16759// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
16760// check whether the returned error was because http.StatusNotModified
16761// was returned.
16762func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
16763	gensupport.SetOptions(c.urlParams_, opts...)
16764	res, err := c.doRequest("json")
16765	if res != nil && res.StatusCode == http.StatusNotModified {
16766		if res.Body != nil {
16767			res.Body.Close()
16768		}
16769		return nil, &googleapi.Error{
16770			Code:   res.StatusCode,
16771			Header: res.Header,
16772		}
16773	}
16774	if err != nil {
16775		return nil, err
16776	}
16777	defer googleapi.CloseBody(res)
16778	if err := googleapi.CheckResponse(res); err != nil {
16779		return nil, err
16780	}
16781	ret := &Account{
16782		ServerResponse: googleapi.ServerResponse{
16783			Header:         res.Header,
16784			HTTPStatusCode: res.StatusCode,
16785		},
16786	}
16787	target := &ret
16788	if err := gensupport.DecodeResponse(target, res); err != nil {
16789		return nil, err
16790	}
16791	return ret, nil
16792	// {
16793	//   "description": "Creates a Merchant Center sub-account.",
16794	//   "flatPath": "{merchantId}/accounts",
16795	//   "httpMethod": "POST",
16796	//   "id": "content.accounts.insert",
16797	//   "parameterOrder": [
16798	//     "merchantId"
16799	//   ],
16800	//   "parameters": {
16801	//     "merchantId": {
16802	//       "description": "The ID of the managing account. This must be a multi-client account.",
16803	//       "format": "uint64",
16804	//       "location": "path",
16805	//       "required": true,
16806	//       "type": "string"
16807	//     }
16808	//   },
16809	//   "path": "{merchantId}/accounts",
16810	//   "request": {
16811	//     "$ref": "Account"
16812	//   },
16813	//   "response": {
16814	//     "$ref": "Account"
16815	//   },
16816	//   "scopes": [
16817	//     "https://www.googleapis.com/auth/content"
16818	//   ]
16819	// }
16820
16821}
16822
16823// method id "content.accounts.link":
16824
16825type AccountsLinkCall struct {
16826	s                   *APIService
16827	merchantId          uint64
16828	accountId           uint64
16829	accountslinkrequest *AccountsLinkRequest
16830	urlParams_          gensupport.URLParams
16831	ctx_                context.Context
16832	header_             http.Header
16833}
16834
16835// Link: Performs an action on a link between two Merchant Center
16836// accounts, namely accountId and linkedAccountId.
16837//
16838// - accountId: The ID of the account that should be linked.
16839// - merchantId: The ID of the managing account. If this parameter is
16840//   not the same as accountId, then this account must be a multi-client
16841//   account and `accountId` must be the ID of a sub-account of this
16842//   account.
16843func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
16844	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16845	c.merchantId = merchantId
16846	c.accountId = accountId
16847	c.accountslinkrequest = accountslinkrequest
16848	return c
16849}
16850
16851// Fields allows partial responses to be retrieved. See
16852// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16853// for more information.
16854func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
16855	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16856	return c
16857}
16858
16859// Context sets the context to be used in this call's Do method. Any
16860// pending HTTP request will be aborted if the provided context is
16861// canceled.
16862func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
16863	c.ctx_ = ctx
16864	return c
16865}
16866
16867// Header returns an http.Header that can be modified by the caller to
16868// add HTTP headers to the request.
16869func (c *AccountsLinkCall) Header() http.Header {
16870	if c.header_ == nil {
16871		c.header_ = make(http.Header)
16872	}
16873	return c.header_
16874}
16875
16876func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
16877	reqHeaders := make(http.Header)
16878	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
16879	for k, v := range c.header_ {
16880		reqHeaders[k] = v
16881	}
16882	reqHeaders.Set("User-Agent", c.s.userAgent())
16883	var body io.Reader = nil
16884	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
16885	if err != nil {
16886		return nil, err
16887	}
16888	reqHeaders.Set("Content-Type", "application/json")
16889	c.urlParams_.Set("alt", alt)
16890	c.urlParams_.Set("prettyPrint", "false")
16891	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/link")
16892	urls += "?" + c.urlParams_.Encode()
16893	req, err := http.NewRequest("POST", urls, body)
16894	if err != nil {
16895		return nil, err
16896	}
16897	req.Header = reqHeaders
16898	googleapi.Expand(req.URL, map[string]string{
16899		"merchantId": strconv.FormatUint(c.merchantId, 10),
16900		"accountId":  strconv.FormatUint(c.accountId, 10),
16901	})
16902	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16903}
16904
16905// Do executes the "content.accounts.link" call.
16906// Exactly one of *AccountsLinkResponse or error will be non-nil. Any
16907// non-2xx status code is an error. Response headers are in either
16908// *AccountsLinkResponse.ServerResponse.Header or (if a response was
16909// returned at all) in error.(*googleapi.Error).Header. Use
16910// googleapi.IsNotModified to check whether the returned error was
16911// because http.StatusNotModified was returned.
16912func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
16913	gensupport.SetOptions(c.urlParams_, opts...)
16914	res, err := c.doRequest("json")
16915	if res != nil && res.StatusCode == http.StatusNotModified {
16916		if res.Body != nil {
16917			res.Body.Close()
16918		}
16919		return nil, &googleapi.Error{
16920			Code:   res.StatusCode,
16921			Header: res.Header,
16922		}
16923	}
16924	if err != nil {
16925		return nil, err
16926	}
16927	defer googleapi.CloseBody(res)
16928	if err := googleapi.CheckResponse(res); err != nil {
16929		return nil, err
16930	}
16931	ret := &AccountsLinkResponse{
16932		ServerResponse: googleapi.ServerResponse{
16933			Header:         res.Header,
16934			HTTPStatusCode: res.StatusCode,
16935		},
16936	}
16937	target := &ret
16938	if err := gensupport.DecodeResponse(target, res); err != nil {
16939		return nil, err
16940	}
16941	return ret, nil
16942	// {
16943	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
16944	//   "flatPath": "{merchantId}/accounts/{accountId}/link",
16945	//   "httpMethod": "POST",
16946	//   "id": "content.accounts.link",
16947	//   "parameterOrder": [
16948	//     "merchantId",
16949	//     "accountId"
16950	//   ],
16951	//   "parameters": {
16952	//     "accountId": {
16953	//       "description": "The ID of the account that should be linked.",
16954	//       "format": "uint64",
16955	//       "location": "path",
16956	//       "required": true,
16957	//       "type": "string"
16958	//     },
16959	//     "merchantId": {
16960	//       "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.",
16961	//       "format": "uint64",
16962	//       "location": "path",
16963	//       "required": true,
16964	//       "type": "string"
16965	//     }
16966	//   },
16967	//   "path": "{merchantId}/accounts/{accountId}/link",
16968	//   "request": {
16969	//     "$ref": "AccountsLinkRequest"
16970	//   },
16971	//   "response": {
16972	//     "$ref": "AccountsLinkResponse"
16973	//   },
16974	//   "scopes": [
16975	//     "https://www.googleapis.com/auth/content"
16976	//   ]
16977	// }
16978
16979}
16980
16981// method id "content.accounts.list":
16982
16983type AccountsListCall struct {
16984	s            *APIService
16985	merchantId   uint64
16986	urlParams_   gensupport.URLParams
16987	ifNoneMatch_ string
16988	ctx_         context.Context
16989	header_      http.Header
16990}
16991
16992// List: Lists the sub-accounts in your Merchant Center account.
16993//
16994// - merchantId: The ID of the managing account. This must be a
16995//   multi-client account.
16996func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
16997	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16998	c.merchantId = merchantId
16999	return c
17000}
17001
17002// Label sets the optional parameter "label": If view is set to "css",
17003// only return accounts that are assigned label with given ID.
17004func (c *AccountsListCall) Label(label uint64) *AccountsListCall {
17005	c.urlParams_.Set("label", fmt.Sprint(label))
17006	return c
17007}
17008
17009// MaxResults sets the optional parameter "maxResults": The maximum
17010// number of accounts to return in the response, used for paging.
17011func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
17012	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
17013	return c
17014}
17015
17016// PageToken sets the optional parameter "pageToken": The token returned
17017// by the previous request.
17018func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
17019	c.urlParams_.Set("pageToken", pageToken)
17020	return c
17021}
17022
17023// View sets the optional parameter "view": Controls which fields will
17024// be populated. Acceptable values are: "merchant" and "css". The
17025// default value is "merchant".
17026//
17027// Possible values:
17028//   "MERCHANT"
17029//   "CSS"
17030func (c *AccountsListCall) View(view string) *AccountsListCall {
17031	c.urlParams_.Set("view", view)
17032	return c
17033}
17034
17035// Fields allows partial responses to be retrieved. See
17036// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17037// for more information.
17038func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
17039	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17040	return c
17041}
17042
17043// IfNoneMatch sets the optional parameter which makes the operation
17044// fail if the object's ETag matches the given value. This is useful for
17045// getting updates only after the object has changed since the last
17046// request. Use googleapi.IsNotModified to check whether the response
17047// error from Do is the result of In-None-Match.
17048func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
17049	c.ifNoneMatch_ = entityTag
17050	return c
17051}
17052
17053// Context sets the context to be used in this call's Do method. Any
17054// pending HTTP request will be aborted if the provided context is
17055// canceled.
17056func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
17057	c.ctx_ = ctx
17058	return c
17059}
17060
17061// Header returns an http.Header that can be modified by the caller to
17062// add HTTP headers to the request.
17063func (c *AccountsListCall) Header() http.Header {
17064	if c.header_ == nil {
17065		c.header_ = make(http.Header)
17066	}
17067	return c.header_
17068}
17069
17070func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
17071	reqHeaders := make(http.Header)
17072	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
17073	for k, v := range c.header_ {
17074		reqHeaders[k] = v
17075	}
17076	reqHeaders.Set("User-Agent", c.s.userAgent())
17077	if c.ifNoneMatch_ != "" {
17078		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17079	}
17080	var body io.Reader = nil
17081	c.urlParams_.Set("alt", alt)
17082	c.urlParams_.Set("prettyPrint", "false")
17083	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
17084	urls += "?" + c.urlParams_.Encode()
17085	req, err := http.NewRequest("GET", urls, body)
17086	if err != nil {
17087		return nil, err
17088	}
17089	req.Header = reqHeaders
17090	googleapi.Expand(req.URL, map[string]string{
17091		"merchantId": strconv.FormatUint(c.merchantId, 10),
17092	})
17093	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17094}
17095
17096// Do executes the "content.accounts.list" call.
17097// Exactly one of *AccountsListResponse or error will be non-nil. Any
17098// non-2xx status code is an error. Response headers are in either
17099// *AccountsListResponse.ServerResponse.Header or (if a response was
17100// returned at all) in error.(*googleapi.Error).Header. Use
17101// googleapi.IsNotModified to check whether the returned error was
17102// because http.StatusNotModified was returned.
17103func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
17104	gensupport.SetOptions(c.urlParams_, opts...)
17105	res, err := c.doRequest("json")
17106	if res != nil && res.StatusCode == http.StatusNotModified {
17107		if res.Body != nil {
17108			res.Body.Close()
17109		}
17110		return nil, &googleapi.Error{
17111			Code:   res.StatusCode,
17112			Header: res.Header,
17113		}
17114	}
17115	if err != nil {
17116		return nil, err
17117	}
17118	defer googleapi.CloseBody(res)
17119	if err := googleapi.CheckResponse(res); err != nil {
17120		return nil, err
17121	}
17122	ret := &AccountsListResponse{
17123		ServerResponse: googleapi.ServerResponse{
17124			Header:         res.Header,
17125			HTTPStatusCode: res.StatusCode,
17126		},
17127	}
17128	target := &ret
17129	if err := gensupport.DecodeResponse(target, res); err != nil {
17130		return nil, err
17131	}
17132	return ret, nil
17133	// {
17134	//   "description": "Lists the sub-accounts in your Merchant Center account.",
17135	//   "flatPath": "{merchantId}/accounts",
17136	//   "httpMethod": "GET",
17137	//   "id": "content.accounts.list",
17138	//   "parameterOrder": [
17139	//     "merchantId"
17140	//   ],
17141	//   "parameters": {
17142	//     "label": {
17143	//       "description": "If view is set to \"css\", only return accounts that are assigned label with given ID.",
17144	//       "format": "uint64",
17145	//       "location": "query",
17146	//       "type": "string"
17147	//     },
17148	//     "maxResults": {
17149	//       "description": "The maximum number of accounts to return in the response, used for paging.",
17150	//       "format": "uint32",
17151	//       "location": "query",
17152	//       "type": "integer"
17153	//     },
17154	//     "merchantId": {
17155	//       "description": "The ID of the managing account. This must be a multi-client account.",
17156	//       "format": "uint64",
17157	//       "location": "path",
17158	//       "required": true,
17159	//       "type": "string"
17160	//     },
17161	//     "pageToken": {
17162	//       "description": "The token returned by the previous request.",
17163	//       "location": "query",
17164	//       "type": "string"
17165	//     },
17166	//     "view": {
17167	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
17168	//       "enum": [
17169	//         "MERCHANT",
17170	//         "CSS"
17171	//       ],
17172	//       "enumDescriptions": [
17173	//         "",
17174	//         ""
17175	//       ],
17176	//       "location": "query",
17177	//       "type": "string"
17178	//     }
17179	//   },
17180	//   "path": "{merchantId}/accounts",
17181	//   "response": {
17182	//     "$ref": "AccountsListResponse"
17183	//   },
17184	//   "scopes": [
17185	//     "https://www.googleapis.com/auth/content"
17186	//   ]
17187	// }
17188
17189}
17190
17191// Pages invokes f for each page of results.
17192// A non-nil error returned from f will halt the iteration.
17193// The provided context supersedes any context provided to the Context method.
17194func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
17195	c.ctx_ = ctx
17196	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17197	for {
17198		x, err := c.Do()
17199		if err != nil {
17200			return err
17201		}
17202		if err := f(x); err != nil {
17203			return err
17204		}
17205		if x.NextPageToken == "" {
17206			return nil
17207		}
17208		c.PageToken(x.NextPageToken)
17209	}
17210}
17211
17212// method id "content.accounts.listlinks":
17213
17214type AccountsListlinksCall struct {
17215	s            *APIService
17216	merchantId   uint64
17217	accountId    uint64
17218	urlParams_   gensupport.URLParams
17219	ifNoneMatch_ string
17220	ctx_         context.Context
17221	header_      http.Header
17222}
17223
17224// Listlinks: Returns the list of accounts linked to your Merchant
17225// Center account.
17226//
17227// - accountId: The ID of the account for which to list links.
17228// - merchantId: The ID of the managing account. If this parameter is
17229//   not the same as accountId, then this account must be a multi-client
17230//   account and `accountId` must be the ID of a sub-account of this
17231//   account.
17232func (r *AccountsService) Listlinks(merchantId uint64, accountId uint64) *AccountsListlinksCall {
17233	c := &AccountsListlinksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17234	c.merchantId = merchantId
17235	c.accountId = accountId
17236	return c
17237}
17238
17239// MaxResults sets the optional parameter "maxResults": The maximum
17240// number of links to return in the response, used for pagination.
17241func (c *AccountsListlinksCall) MaxResults(maxResults int64) *AccountsListlinksCall {
17242	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
17243	return c
17244}
17245
17246// PageToken sets the optional parameter "pageToken": The token returned
17247// by the previous request.
17248func (c *AccountsListlinksCall) PageToken(pageToken string) *AccountsListlinksCall {
17249	c.urlParams_.Set("pageToken", pageToken)
17250	return c
17251}
17252
17253// Fields allows partial responses to be retrieved. See
17254// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17255// for more information.
17256func (c *AccountsListlinksCall) Fields(s ...googleapi.Field) *AccountsListlinksCall {
17257	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17258	return c
17259}
17260
17261// IfNoneMatch sets the optional parameter which makes the operation
17262// fail if the object's ETag matches the given value. This is useful for
17263// getting updates only after the object has changed since the last
17264// request. Use googleapi.IsNotModified to check whether the response
17265// error from Do is the result of In-None-Match.
17266func (c *AccountsListlinksCall) IfNoneMatch(entityTag string) *AccountsListlinksCall {
17267	c.ifNoneMatch_ = entityTag
17268	return c
17269}
17270
17271// Context sets the context to be used in this call's Do method. Any
17272// pending HTTP request will be aborted if the provided context is
17273// canceled.
17274func (c *AccountsListlinksCall) Context(ctx context.Context) *AccountsListlinksCall {
17275	c.ctx_ = ctx
17276	return c
17277}
17278
17279// Header returns an http.Header that can be modified by the caller to
17280// add HTTP headers to the request.
17281func (c *AccountsListlinksCall) Header() http.Header {
17282	if c.header_ == nil {
17283		c.header_ = make(http.Header)
17284	}
17285	return c.header_
17286}
17287
17288func (c *AccountsListlinksCall) doRequest(alt string) (*http.Response, error) {
17289	reqHeaders := make(http.Header)
17290	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
17291	for k, v := range c.header_ {
17292		reqHeaders[k] = v
17293	}
17294	reqHeaders.Set("User-Agent", c.s.userAgent())
17295	if c.ifNoneMatch_ != "" {
17296		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17297	}
17298	var body io.Reader = nil
17299	c.urlParams_.Set("alt", alt)
17300	c.urlParams_.Set("prettyPrint", "false")
17301	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/listlinks")
17302	urls += "?" + c.urlParams_.Encode()
17303	req, err := http.NewRequest("GET", urls, body)
17304	if err != nil {
17305		return nil, err
17306	}
17307	req.Header = reqHeaders
17308	googleapi.Expand(req.URL, map[string]string{
17309		"merchantId": strconv.FormatUint(c.merchantId, 10),
17310		"accountId":  strconv.FormatUint(c.accountId, 10),
17311	})
17312	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17313}
17314
17315// Do executes the "content.accounts.listlinks" call.
17316// Exactly one of *AccountsListLinksResponse or error will be non-nil.
17317// Any non-2xx status code is an error. Response headers are in either
17318// *AccountsListLinksResponse.ServerResponse.Header or (if a response
17319// was returned at all) in error.(*googleapi.Error).Header. Use
17320// googleapi.IsNotModified to check whether the returned error was
17321// because http.StatusNotModified was returned.
17322func (c *AccountsListlinksCall) Do(opts ...googleapi.CallOption) (*AccountsListLinksResponse, error) {
17323	gensupport.SetOptions(c.urlParams_, opts...)
17324	res, err := c.doRequest("json")
17325	if res != nil && res.StatusCode == http.StatusNotModified {
17326		if res.Body != nil {
17327			res.Body.Close()
17328		}
17329		return nil, &googleapi.Error{
17330			Code:   res.StatusCode,
17331			Header: res.Header,
17332		}
17333	}
17334	if err != nil {
17335		return nil, err
17336	}
17337	defer googleapi.CloseBody(res)
17338	if err := googleapi.CheckResponse(res); err != nil {
17339		return nil, err
17340	}
17341	ret := &AccountsListLinksResponse{
17342		ServerResponse: googleapi.ServerResponse{
17343			Header:         res.Header,
17344			HTTPStatusCode: res.StatusCode,
17345		},
17346	}
17347	target := &ret
17348	if err := gensupport.DecodeResponse(target, res); err != nil {
17349		return nil, err
17350	}
17351	return ret, nil
17352	// {
17353	//   "description": "Returns the list of accounts linked to your Merchant Center account.",
17354	//   "flatPath": "{merchantId}/accounts/{accountId}/listlinks",
17355	//   "httpMethod": "GET",
17356	//   "id": "content.accounts.listlinks",
17357	//   "parameterOrder": [
17358	//     "merchantId",
17359	//     "accountId"
17360	//   ],
17361	//   "parameters": {
17362	//     "accountId": {
17363	//       "description": "The ID of the account for which to list links.",
17364	//       "format": "uint64",
17365	//       "location": "path",
17366	//       "required": true,
17367	//       "type": "string"
17368	//     },
17369	//     "maxResults": {
17370	//       "description": "The maximum number of links to return in the response, used for pagination.",
17371	//       "format": "uint32",
17372	//       "location": "query",
17373	//       "type": "integer"
17374	//     },
17375	//     "merchantId": {
17376	//       "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.",
17377	//       "format": "uint64",
17378	//       "location": "path",
17379	//       "required": true,
17380	//       "type": "string"
17381	//     },
17382	//     "pageToken": {
17383	//       "description": "The token returned by the previous request.",
17384	//       "location": "query",
17385	//       "type": "string"
17386	//     }
17387	//   },
17388	//   "path": "{merchantId}/accounts/{accountId}/listlinks",
17389	//   "response": {
17390	//     "$ref": "AccountsListLinksResponse"
17391	//   },
17392	//   "scopes": [
17393	//     "https://www.googleapis.com/auth/content"
17394	//   ]
17395	// }
17396
17397}
17398
17399// Pages invokes f for each page of results.
17400// A non-nil error returned from f will halt the iteration.
17401// The provided context supersedes any context provided to the Context method.
17402func (c *AccountsListlinksCall) Pages(ctx context.Context, f func(*AccountsListLinksResponse) error) error {
17403	c.ctx_ = ctx
17404	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17405	for {
17406		x, err := c.Do()
17407		if err != nil {
17408			return err
17409		}
17410		if err := f(x); err != nil {
17411			return err
17412		}
17413		if x.NextPageToken == "" {
17414			return nil
17415		}
17416		c.PageToken(x.NextPageToken)
17417	}
17418}
17419
17420// method id "content.accounts.update":
17421
17422type AccountsUpdateCall struct {
17423	s          *APIService
17424	merchantId uint64
17425	accountId  uint64
17426	account    *Account
17427	urlParams_ gensupport.URLParams
17428	ctx_       context.Context
17429	header_    http.Header
17430}
17431
17432// Update: Updates a Merchant Center account. Any fields that are not
17433// provided are deleted from the resource.
17434//
17435// - accountId: The ID of the account.
17436// - merchantId: The ID of the managing account. If this parameter is
17437//   not the same as accountId, then this account must be a multi-client
17438//   account and `accountId` must be the ID of a sub-account of this
17439//   account.
17440func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
17441	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17442	c.merchantId = merchantId
17443	c.accountId = accountId
17444	c.account = account
17445	return c
17446}
17447
17448// Fields allows partial responses to be retrieved. See
17449// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17450// for more information.
17451func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
17452	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17453	return c
17454}
17455
17456// Context sets the context to be used in this call's Do method. Any
17457// pending HTTP request will be aborted if the provided context is
17458// canceled.
17459func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
17460	c.ctx_ = ctx
17461	return c
17462}
17463
17464// Header returns an http.Header that can be modified by the caller to
17465// add HTTP headers to the request.
17466func (c *AccountsUpdateCall) Header() http.Header {
17467	if c.header_ == nil {
17468		c.header_ = make(http.Header)
17469	}
17470	return c.header_
17471}
17472
17473func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
17474	reqHeaders := make(http.Header)
17475	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
17476	for k, v := range c.header_ {
17477		reqHeaders[k] = v
17478	}
17479	reqHeaders.Set("User-Agent", c.s.userAgent())
17480	var body io.Reader = nil
17481	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
17482	if err != nil {
17483		return nil, err
17484	}
17485	reqHeaders.Set("Content-Type", "application/json")
17486	c.urlParams_.Set("alt", alt)
17487	c.urlParams_.Set("prettyPrint", "false")
17488	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
17489	urls += "?" + c.urlParams_.Encode()
17490	req, err := http.NewRequest("PUT", urls, body)
17491	if err != nil {
17492		return nil, err
17493	}
17494	req.Header = reqHeaders
17495	googleapi.Expand(req.URL, map[string]string{
17496		"merchantId": strconv.FormatUint(c.merchantId, 10),
17497		"accountId":  strconv.FormatUint(c.accountId, 10),
17498	})
17499	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17500}
17501
17502// Do executes the "content.accounts.update" call.
17503// Exactly one of *Account or error will be non-nil. Any non-2xx status
17504// code is an error. Response headers are in either
17505// *Account.ServerResponse.Header or (if a response was returned at all)
17506// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
17507// check whether the returned error was because http.StatusNotModified
17508// was returned.
17509func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
17510	gensupport.SetOptions(c.urlParams_, opts...)
17511	res, err := c.doRequest("json")
17512	if res != nil && res.StatusCode == http.StatusNotModified {
17513		if res.Body != nil {
17514			res.Body.Close()
17515		}
17516		return nil, &googleapi.Error{
17517			Code:   res.StatusCode,
17518			Header: res.Header,
17519		}
17520	}
17521	if err != nil {
17522		return nil, err
17523	}
17524	defer googleapi.CloseBody(res)
17525	if err := googleapi.CheckResponse(res); err != nil {
17526		return nil, err
17527	}
17528	ret := &Account{
17529		ServerResponse: googleapi.ServerResponse{
17530			Header:         res.Header,
17531			HTTPStatusCode: res.StatusCode,
17532		},
17533	}
17534	target := &ret
17535	if err := gensupport.DecodeResponse(target, res); err != nil {
17536		return nil, err
17537	}
17538	return ret, nil
17539	// {
17540	//   "description": "Updates a Merchant Center account. Any fields that are not provided are deleted from the resource.",
17541	//   "flatPath": "{merchantId}/accounts/{accountId}",
17542	//   "httpMethod": "PUT",
17543	//   "id": "content.accounts.update",
17544	//   "parameterOrder": [
17545	//     "merchantId",
17546	//     "accountId"
17547	//   ],
17548	//   "parameters": {
17549	//     "accountId": {
17550	//       "description": "The ID of the account.",
17551	//       "format": "uint64",
17552	//       "location": "path",
17553	//       "required": true,
17554	//       "type": "string"
17555	//     },
17556	//     "merchantId": {
17557	//       "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.",
17558	//       "format": "uint64",
17559	//       "location": "path",
17560	//       "required": true,
17561	//       "type": "string"
17562	//     }
17563	//   },
17564	//   "path": "{merchantId}/accounts/{accountId}",
17565	//   "request": {
17566	//     "$ref": "Account"
17567	//   },
17568	//   "response": {
17569	//     "$ref": "Account"
17570	//   },
17571	//   "scopes": [
17572	//     "https://www.googleapis.com/auth/content"
17573	//   ]
17574	// }
17575
17576}
17577
17578// method id "content.accounts.updatelabels":
17579
17580type AccountsUpdatelabelsCall struct {
17581	s                           *APIService
17582	merchantId                  uint64
17583	accountId                   uint64
17584	accountsupdatelabelsrequest *AccountsUpdateLabelsRequest
17585	urlParams_                  gensupport.URLParams
17586	ctx_                        context.Context
17587	header_                     http.Header
17588}
17589
17590// Updatelabels: Updates labels that are assigned to the Merchant Center
17591// account by CSS user.
17592//
17593// - accountId: The ID of the account whose labels are updated.
17594// - merchantId: The ID of the managing account.
17595func (r *AccountsService) Updatelabels(merchantId uint64, accountId uint64, accountsupdatelabelsrequest *AccountsUpdateLabelsRequest) *AccountsUpdatelabelsCall {
17596	c := &AccountsUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17597	c.merchantId = merchantId
17598	c.accountId = accountId
17599	c.accountsupdatelabelsrequest = accountsupdatelabelsrequest
17600	return c
17601}
17602
17603// Fields allows partial responses to be retrieved. See
17604// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17605// for more information.
17606func (c *AccountsUpdatelabelsCall) Fields(s ...googleapi.Field) *AccountsUpdatelabelsCall {
17607	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17608	return c
17609}
17610
17611// Context sets the context to be used in this call's Do method. Any
17612// pending HTTP request will be aborted if the provided context is
17613// canceled.
17614func (c *AccountsUpdatelabelsCall) Context(ctx context.Context) *AccountsUpdatelabelsCall {
17615	c.ctx_ = ctx
17616	return c
17617}
17618
17619// Header returns an http.Header that can be modified by the caller to
17620// add HTTP headers to the request.
17621func (c *AccountsUpdatelabelsCall) Header() http.Header {
17622	if c.header_ == nil {
17623		c.header_ = make(http.Header)
17624	}
17625	return c.header_
17626}
17627
17628func (c *AccountsUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
17629	reqHeaders := make(http.Header)
17630	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
17631	for k, v := range c.header_ {
17632		reqHeaders[k] = v
17633	}
17634	reqHeaders.Set("User-Agent", c.s.userAgent())
17635	var body io.Reader = nil
17636	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountsupdatelabelsrequest)
17637	if err != nil {
17638		return nil, err
17639	}
17640	reqHeaders.Set("Content-Type", "application/json")
17641	c.urlParams_.Set("alt", alt)
17642	c.urlParams_.Set("prettyPrint", "false")
17643	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/updatelabels")
17644	urls += "?" + c.urlParams_.Encode()
17645	req, err := http.NewRequest("POST", urls, body)
17646	if err != nil {
17647		return nil, err
17648	}
17649	req.Header = reqHeaders
17650	googleapi.Expand(req.URL, map[string]string{
17651		"merchantId": strconv.FormatUint(c.merchantId, 10),
17652		"accountId":  strconv.FormatUint(c.accountId, 10),
17653	})
17654	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17655}
17656
17657// Do executes the "content.accounts.updatelabels" call.
17658// Exactly one of *AccountsUpdateLabelsResponse or error will be
17659// non-nil. Any non-2xx status code is an error. Response headers are in
17660// either *AccountsUpdateLabelsResponse.ServerResponse.Header or (if a
17661// response was returned at all) in error.(*googleapi.Error).Header. Use
17662// googleapi.IsNotModified to check whether the returned error was
17663// because http.StatusNotModified was returned.
17664func (c *AccountsUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*AccountsUpdateLabelsResponse, error) {
17665	gensupport.SetOptions(c.urlParams_, opts...)
17666	res, err := c.doRequest("json")
17667	if res != nil && res.StatusCode == http.StatusNotModified {
17668		if res.Body != nil {
17669			res.Body.Close()
17670		}
17671		return nil, &googleapi.Error{
17672			Code:   res.StatusCode,
17673			Header: res.Header,
17674		}
17675	}
17676	if err != nil {
17677		return nil, err
17678	}
17679	defer googleapi.CloseBody(res)
17680	if err := googleapi.CheckResponse(res); err != nil {
17681		return nil, err
17682	}
17683	ret := &AccountsUpdateLabelsResponse{
17684		ServerResponse: googleapi.ServerResponse{
17685			Header:         res.Header,
17686			HTTPStatusCode: res.StatusCode,
17687		},
17688	}
17689	target := &ret
17690	if err := gensupport.DecodeResponse(target, res); err != nil {
17691		return nil, err
17692	}
17693	return ret, nil
17694	// {
17695	//   "description": "Updates labels that are assigned to the Merchant Center account by CSS user.",
17696	//   "flatPath": "{merchantId}/accounts/{accountId}/updatelabels",
17697	//   "httpMethod": "POST",
17698	//   "id": "content.accounts.updatelabels",
17699	//   "parameterOrder": [
17700	//     "merchantId",
17701	//     "accountId"
17702	//   ],
17703	//   "parameters": {
17704	//     "accountId": {
17705	//       "description": "The ID of the account whose labels are updated.",
17706	//       "format": "uint64",
17707	//       "location": "path",
17708	//       "required": true,
17709	//       "type": "string"
17710	//     },
17711	//     "merchantId": {
17712	//       "description": "The ID of the managing account.",
17713	//       "format": "uint64",
17714	//       "location": "path",
17715	//       "required": true,
17716	//       "type": "string"
17717	//     }
17718	//   },
17719	//   "path": "{merchantId}/accounts/{accountId}/updatelabels",
17720	//   "request": {
17721	//     "$ref": "AccountsUpdateLabelsRequest"
17722	//   },
17723	//   "response": {
17724	//     "$ref": "AccountsUpdateLabelsResponse"
17725	//   },
17726	//   "scopes": [
17727	//     "https://www.googleapis.com/auth/content"
17728	//   ]
17729	// }
17730
17731}
17732
17733// method id "content.accounts.credentials.create":
17734
17735type AccountsCredentialsCreateCall struct {
17736	s                  *APIService
17737	accountId          int64
17738	accountcredentials *AccountCredentials
17739	urlParams_         gensupport.URLParams
17740	ctx_               context.Context
17741	header_            http.Header
17742}
17743
17744// Create: Uploads credentials for the Merchant Center account. If
17745// credentials already exist for this Merchant Center account and
17746// purpose, this method updates them.
17747//
17748// - accountId: The merchant id of the account these credentials belong
17749//   to.
17750func (r *AccountsCredentialsService) Create(accountId int64, accountcredentials *AccountCredentials) *AccountsCredentialsCreateCall {
17751	c := &AccountsCredentialsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17752	c.accountId = accountId
17753	c.accountcredentials = accountcredentials
17754	return c
17755}
17756
17757// Fields allows partial responses to be retrieved. See
17758// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17759// for more information.
17760func (c *AccountsCredentialsCreateCall) Fields(s ...googleapi.Field) *AccountsCredentialsCreateCall {
17761	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17762	return c
17763}
17764
17765// Context sets the context to be used in this call's Do method. Any
17766// pending HTTP request will be aborted if the provided context is
17767// canceled.
17768func (c *AccountsCredentialsCreateCall) Context(ctx context.Context) *AccountsCredentialsCreateCall {
17769	c.ctx_ = ctx
17770	return c
17771}
17772
17773// Header returns an http.Header that can be modified by the caller to
17774// add HTTP headers to the request.
17775func (c *AccountsCredentialsCreateCall) Header() http.Header {
17776	if c.header_ == nil {
17777		c.header_ = make(http.Header)
17778	}
17779	return c.header_
17780}
17781
17782func (c *AccountsCredentialsCreateCall) doRequest(alt string) (*http.Response, error) {
17783	reqHeaders := make(http.Header)
17784	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
17785	for k, v := range c.header_ {
17786		reqHeaders[k] = v
17787	}
17788	reqHeaders.Set("User-Agent", c.s.userAgent())
17789	var body io.Reader = nil
17790	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountcredentials)
17791	if err != nil {
17792		return nil, err
17793	}
17794	reqHeaders.Set("Content-Type", "application/json")
17795	c.urlParams_.Set("alt", alt)
17796	c.urlParams_.Set("prettyPrint", "false")
17797	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/credentials")
17798	urls += "?" + c.urlParams_.Encode()
17799	req, err := http.NewRequest("POST", urls, body)
17800	if err != nil {
17801		return nil, err
17802	}
17803	req.Header = reqHeaders
17804	googleapi.Expand(req.URL, map[string]string{
17805		"accountId": strconv.FormatInt(c.accountId, 10),
17806	})
17807	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17808}
17809
17810// Do executes the "content.accounts.credentials.create" call.
17811// Exactly one of *AccountCredentials or error will be non-nil. Any
17812// non-2xx status code is an error. Response headers are in either
17813// *AccountCredentials.ServerResponse.Header or (if a response was
17814// returned at all) in error.(*googleapi.Error).Header. Use
17815// googleapi.IsNotModified to check whether the returned error was
17816// because http.StatusNotModified was returned.
17817func (c *AccountsCredentialsCreateCall) Do(opts ...googleapi.CallOption) (*AccountCredentials, error) {
17818	gensupport.SetOptions(c.urlParams_, opts...)
17819	res, err := c.doRequest("json")
17820	if res != nil && res.StatusCode == http.StatusNotModified {
17821		if res.Body != nil {
17822			res.Body.Close()
17823		}
17824		return nil, &googleapi.Error{
17825			Code:   res.StatusCode,
17826			Header: res.Header,
17827		}
17828	}
17829	if err != nil {
17830		return nil, err
17831	}
17832	defer googleapi.CloseBody(res)
17833	if err := googleapi.CheckResponse(res); err != nil {
17834		return nil, err
17835	}
17836	ret := &AccountCredentials{
17837		ServerResponse: googleapi.ServerResponse{
17838			Header:         res.Header,
17839			HTTPStatusCode: res.StatusCode,
17840		},
17841	}
17842	target := &ret
17843	if err := gensupport.DecodeResponse(target, res); err != nil {
17844		return nil, err
17845	}
17846	return ret, nil
17847	// {
17848	//   "description": "Uploads credentials for the Merchant Center account. If credentials already exist for this Merchant Center account and purpose, this method updates them.",
17849	//   "flatPath": "accounts/{accountId}/credentials",
17850	//   "httpMethod": "POST",
17851	//   "id": "content.accounts.credentials.create",
17852	//   "parameterOrder": [
17853	//     "accountId"
17854	//   ],
17855	//   "parameters": {
17856	//     "accountId": {
17857	//       "description": "Required. The merchant id of the account these credentials belong to.",
17858	//       "format": "int64",
17859	//       "location": "path",
17860	//       "required": true,
17861	//       "type": "string"
17862	//     }
17863	//   },
17864	//   "path": "accounts/{accountId}/credentials",
17865	//   "request": {
17866	//     "$ref": "AccountCredentials"
17867	//   },
17868	//   "response": {
17869	//     "$ref": "AccountCredentials"
17870	//   },
17871	//   "scopes": [
17872	//     "https://www.googleapis.com/auth/content"
17873	//   ]
17874	// }
17875
17876}
17877
17878// method id "content.accounts.labels.create":
17879
17880type AccountsLabelsCreateCall struct {
17881	s            *APIService
17882	accountId    int64
17883	accountlabel *AccountLabel
17884	urlParams_   gensupport.URLParams
17885	ctx_         context.Context
17886	header_      http.Header
17887}
17888
17889// Create: Creates a new label, not assigned to any account.
17890//
17891// - accountId: The id of the account this label belongs to.
17892func (r *AccountsLabelsService) Create(accountId int64, accountlabel *AccountLabel) *AccountsLabelsCreateCall {
17893	c := &AccountsLabelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17894	c.accountId = accountId
17895	c.accountlabel = accountlabel
17896	return c
17897}
17898
17899// Fields allows partial responses to be retrieved. See
17900// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17901// for more information.
17902func (c *AccountsLabelsCreateCall) Fields(s ...googleapi.Field) *AccountsLabelsCreateCall {
17903	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17904	return c
17905}
17906
17907// Context sets the context to be used in this call's Do method. Any
17908// pending HTTP request will be aborted if the provided context is
17909// canceled.
17910func (c *AccountsLabelsCreateCall) Context(ctx context.Context) *AccountsLabelsCreateCall {
17911	c.ctx_ = ctx
17912	return c
17913}
17914
17915// Header returns an http.Header that can be modified by the caller to
17916// add HTTP headers to the request.
17917func (c *AccountsLabelsCreateCall) Header() http.Header {
17918	if c.header_ == nil {
17919		c.header_ = make(http.Header)
17920	}
17921	return c.header_
17922}
17923
17924func (c *AccountsLabelsCreateCall) doRequest(alt string) (*http.Response, error) {
17925	reqHeaders := make(http.Header)
17926	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
17927	for k, v := range c.header_ {
17928		reqHeaders[k] = v
17929	}
17930	reqHeaders.Set("User-Agent", c.s.userAgent())
17931	var body io.Reader = nil
17932	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
17933	if err != nil {
17934		return nil, err
17935	}
17936	reqHeaders.Set("Content-Type", "application/json")
17937	c.urlParams_.Set("alt", alt)
17938	c.urlParams_.Set("prettyPrint", "false")
17939	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels")
17940	urls += "?" + c.urlParams_.Encode()
17941	req, err := http.NewRequest("POST", urls, body)
17942	if err != nil {
17943		return nil, err
17944	}
17945	req.Header = reqHeaders
17946	googleapi.Expand(req.URL, map[string]string{
17947		"accountId": strconv.FormatInt(c.accountId, 10),
17948	})
17949	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17950}
17951
17952// Do executes the "content.accounts.labels.create" call.
17953// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
17954// status code is an error. Response headers are in either
17955// *AccountLabel.ServerResponse.Header or (if a response was returned at
17956// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
17957// to check whether the returned error was because
17958// http.StatusNotModified was returned.
17959func (c *AccountsLabelsCreateCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
17960	gensupport.SetOptions(c.urlParams_, opts...)
17961	res, err := c.doRequest("json")
17962	if res != nil && res.StatusCode == http.StatusNotModified {
17963		if res.Body != nil {
17964			res.Body.Close()
17965		}
17966		return nil, &googleapi.Error{
17967			Code:   res.StatusCode,
17968			Header: res.Header,
17969		}
17970	}
17971	if err != nil {
17972		return nil, err
17973	}
17974	defer googleapi.CloseBody(res)
17975	if err := googleapi.CheckResponse(res); err != nil {
17976		return nil, err
17977	}
17978	ret := &AccountLabel{
17979		ServerResponse: googleapi.ServerResponse{
17980			Header:         res.Header,
17981			HTTPStatusCode: res.StatusCode,
17982		},
17983	}
17984	target := &ret
17985	if err := gensupport.DecodeResponse(target, res); err != nil {
17986		return nil, err
17987	}
17988	return ret, nil
17989	// {
17990	//   "description": "Creates a new label, not assigned to any account.",
17991	//   "flatPath": "accounts/{accountId}/labels",
17992	//   "httpMethod": "POST",
17993	//   "id": "content.accounts.labels.create",
17994	//   "parameterOrder": [
17995	//     "accountId"
17996	//   ],
17997	//   "parameters": {
17998	//     "accountId": {
17999	//       "description": "Required. The id of the account this label belongs to.",
18000	//       "format": "int64",
18001	//       "location": "path",
18002	//       "required": true,
18003	//       "type": "string"
18004	//     }
18005	//   },
18006	//   "path": "accounts/{accountId}/labels",
18007	//   "request": {
18008	//     "$ref": "AccountLabel"
18009	//   },
18010	//   "response": {
18011	//     "$ref": "AccountLabel"
18012	//   },
18013	//   "scopes": [
18014	//     "https://www.googleapis.com/auth/content"
18015	//   ]
18016	// }
18017
18018}
18019
18020// method id "content.accounts.labels.delete":
18021
18022type AccountsLabelsDeleteCall struct {
18023	s          *APIService
18024	accountId  int64
18025	labelId    int64
18026	urlParams_ gensupport.URLParams
18027	ctx_       context.Context
18028	header_    http.Header
18029}
18030
18031// Delete: Deletes a label and removes it from all accounts to which it
18032// was assigned.
18033//
18034// - accountId: The id of the account that owns the label.
18035// - labelId: The id of the label to delete.
18036func (r *AccountsLabelsService) Delete(accountId int64, labelId int64) *AccountsLabelsDeleteCall {
18037	c := &AccountsLabelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18038	c.accountId = accountId
18039	c.labelId = labelId
18040	return c
18041}
18042
18043// Fields allows partial responses to be retrieved. See
18044// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18045// for more information.
18046func (c *AccountsLabelsDeleteCall) Fields(s ...googleapi.Field) *AccountsLabelsDeleteCall {
18047	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18048	return c
18049}
18050
18051// Context sets the context to be used in this call's Do method. Any
18052// pending HTTP request will be aborted if the provided context is
18053// canceled.
18054func (c *AccountsLabelsDeleteCall) Context(ctx context.Context) *AccountsLabelsDeleteCall {
18055	c.ctx_ = ctx
18056	return c
18057}
18058
18059// Header returns an http.Header that can be modified by the caller to
18060// add HTTP headers to the request.
18061func (c *AccountsLabelsDeleteCall) Header() http.Header {
18062	if c.header_ == nil {
18063		c.header_ = make(http.Header)
18064	}
18065	return c.header_
18066}
18067
18068func (c *AccountsLabelsDeleteCall) doRequest(alt string) (*http.Response, error) {
18069	reqHeaders := make(http.Header)
18070	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
18071	for k, v := range c.header_ {
18072		reqHeaders[k] = v
18073	}
18074	reqHeaders.Set("User-Agent", c.s.userAgent())
18075	var body io.Reader = nil
18076	c.urlParams_.Set("alt", alt)
18077	c.urlParams_.Set("prettyPrint", "false")
18078	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels/{labelId}")
18079	urls += "?" + c.urlParams_.Encode()
18080	req, err := http.NewRequest("DELETE", urls, body)
18081	if err != nil {
18082		return nil, err
18083	}
18084	req.Header = reqHeaders
18085	googleapi.Expand(req.URL, map[string]string{
18086		"accountId": strconv.FormatInt(c.accountId, 10),
18087		"labelId":   strconv.FormatInt(c.labelId, 10),
18088	})
18089	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18090}
18091
18092// Do executes the "content.accounts.labels.delete" call.
18093func (c *AccountsLabelsDeleteCall) Do(opts ...googleapi.CallOption) error {
18094	gensupport.SetOptions(c.urlParams_, opts...)
18095	res, err := c.doRequest("json")
18096	if err != nil {
18097		return err
18098	}
18099	defer googleapi.CloseBody(res)
18100	if err := googleapi.CheckResponse(res); err != nil {
18101		return err
18102	}
18103	return nil
18104	// {
18105	//   "description": "Deletes a label and removes it from all accounts to which it was assigned.",
18106	//   "flatPath": "accounts/{accountId}/labels/{labelId}",
18107	//   "httpMethod": "DELETE",
18108	//   "id": "content.accounts.labels.delete",
18109	//   "parameterOrder": [
18110	//     "accountId",
18111	//     "labelId"
18112	//   ],
18113	//   "parameters": {
18114	//     "accountId": {
18115	//       "description": "Required. The id of the account that owns the label.",
18116	//       "format": "int64",
18117	//       "location": "path",
18118	//       "required": true,
18119	//       "type": "string"
18120	//     },
18121	//     "labelId": {
18122	//       "description": "Required. The id of the label to delete.",
18123	//       "format": "int64",
18124	//       "location": "path",
18125	//       "required": true,
18126	//       "type": "string"
18127	//     }
18128	//   },
18129	//   "path": "accounts/{accountId}/labels/{labelId}",
18130	//   "scopes": [
18131	//     "https://www.googleapis.com/auth/content"
18132	//   ]
18133	// }
18134
18135}
18136
18137// method id "content.accounts.labels.list":
18138
18139type AccountsLabelsListCall struct {
18140	s            *APIService
18141	accountId    int64
18142	urlParams_   gensupport.URLParams
18143	ifNoneMatch_ string
18144	ctx_         context.Context
18145	header_      http.Header
18146}
18147
18148// List: Lists the labels assigned to an account.
18149//
18150// - accountId: The account id for whose labels are to be listed.
18151func (r *AccountsLabelsService) List(accountId int64) *AccountsLabelsListCall {
18152	c := &AccountsLabelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18153	c.accountId = accountId
18154	return c
18155}
18156
18157// PageSize sets the optional parameter "pageSize": The maximum number
18158// of labels to return. The service may return fewer than this value. If
18159// unspecified, at most 50 labels will be returned. The maximum value is
18160// 1000; values above 1000 will be coerced to 1000.
18161func (c *AccountsLabelsListCall) PageSize(pageSize int64) *AccountsLabelsListCall {
18162	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
18163	return c
18164}
18165
18166// PageToken sets the optional parameter "pageToken": A page token,
18167// received from a previous `ListAccountLabels` call. Provide this to
18168// retrieve the subsequent page. When paginating, all other parameters
18169// provided to `ListAccountLabels` must match the call that provided the
18170// page token.
18171func (c *AccountsLabelsListCall) PageToken(pageToken string) *AccountsLabelsListCall {
18172	c.urlParams_.Set("pageToken", pageToken)
18173	return c
18174}
18175
18176// Fields allows partial responses to be retrieved. See
18177// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18178// for more information.
18179func (c *AccountsLabelsListCall) Fields(s ...googleapi.Field) *AccountsLabelsListCall {
18180	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18181	return c
18182}
18183
18184// IfNoneMatch sets the optional parameter which makes the operation
18185// fail if the object's ETag matches the given value. This is useful for
18186// getting updates only after the object has changed since the last
18187// request. Use googleapi.IsNotModified to check whether the response
18188// error from Do is the result of In-None-Match.
18189func (c *AccountsLabelsListCall) IfNoneMatch(entityTag string) *AccountsLabelsListCall {
18190	c.ifNoneMatch_ = entityTag
18191	return c
18192}
18193
18194// Context sets the context to be used in this call's Do method. Any
18195// pending HTTP request will be aborted if the provided context is
18196// canceled.
18197func (c *AccountsLabelsListCall) Context(ctx context.Context) *AccountsLabelsListCall {
18198	c.ctx_ = ctx
18199	return c
18200}
18201
18202// Header returns an http.Header that can be modified by the caller to
18203// add HTTP headers to the request.
18204func (c *AccountsLabelsListCall) Header() http.Header {
18205	if c.header_ == nil {
18206		c.header_ = make(http.Header)
18207	}
18208	return c.header_
18209}
18210
18211func (c *AccountsLabelsListCall) doRequest(alt string) (*http.Response, error) {
18212	reqHeaders := make(http.Header)
18213	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
18214	for k, v := range c.header_ {
18215		reqHeaders[k] = v
18216	}
18217	reqHeaders.Set("User-Agent", c.s.userAgent())
18218	if c.ifNoneMatch_ != "" {
18219		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18220	}
18221	var body io.Reader = nil
18222	c.urlParams_.Set("alt", alt)
18223	c.urlParams_.Set("prettyPrint", "false")
18224	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels")
18225	urls += "?" + c.urlParams_.Encode()
18226	req, err := http.NewRequest("GET", urls, body)
18227	if err != nil {
18228		return nil, err
18229	}
18230	req.Header = reqHeaders
18231	googleapi.Expand(req.URL, map[string]string{
18232		"accountId": strconv.FormatInt(c.accountId, 10),
18233	})
18234	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18235}
18236
18237// Do executes the "content.accounts.labels.list" call.
18238// Exactly one of *ListAccountLabelsResponse or error will be non-nil.
18239// Any non-2xx status code is an error. Response headers are in either
18240// *ListAccountLabelsResponse.ServerResponse.Header or (if a response
18241// was returned at all) in error.(*googleapi.Error).Header. Use
18242// googleapi.IsNotModified to check whether the returned error was
18243// because http.StatusNotModified was returned.
18244func (c *AccountsLabelsListCall) Do(opts ...googleapi.CallOption) (*ListAccountLabelsResponse, error) {
18245	gensupport.SetOptions(c.urlParams_, opts...)
18246	res, err := c.doRequest("json")
18247	if res != nil && res.StatusCode == http.StatusNotModified {
18248		if res.Body != nil {
18249			res.Body.Close()
18250		}
18251		return nil, &googleapi.Error{
18252			Code:   res.StatusCode,
18253			Header: res.Header,
18254		}
18255	}
18256	if err != nil {
18257		return nil, err
18258	}
18259	defer googleapi.CloseBody(res)
18260	if err := googleapi.CheckResponse(res); err != nil {
18261		return nil, err
18262	}
18263	ret := &ListAccountLabelsResponse{
18264		ServerResponse: googleapi.ServerResponse{
18265			Header:         res.Header,
18266			HTTPStatusCode: res.StatusCode,
18267		},
18268	}
18269	target := &ret
18270	if err := gensupport.DecodeResponse(target, res); err != nil {
18271		return nil, err
18272	}
18273	return ret, nil
18274	// {
18275	//   "description": "Lists the labels assigned to an account.",
18276	//   "flatPath": "accounts/{accountId}/labels",
18277	//   "httpMethod": "GET",
18278	//   "id": "content.accounts.labels.list",
18279	//   "parameterOrder": [
18280	//     "accountId"
18281	//   ],
18282	//   "parameters": {
18283	//     "accountId": {
18284	//       "description": "Required. The account id for whose labels are to be listed.",
18285	//       "format": "int64",
18286	//       "location": "path",
18287	//       "required": true,
18288	//       "type": "string"
18289	//     },
18290	//     "pageSize": {
18291	//       "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.",
18292	//       "format": "int32",
18293	//       "location": "query",
18294	//       "type": "integer"
18295	//     },
18296	//     "pageToken": {
18297	//       "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.",
18298	//       "location": "query",
18299	//       "type": "string"
18300	//     }
18301	//   },
18302	//   "path": "accounts/{accountId}/labels",
18303	//   "response": {
18304	//     "$ref": "ListAccountLabelsResponse"
18305	//   },
18306	//   "scopes": [
18307	//     "https://www.googleapis.com/auth/content"
18308	//   ]
18309	// }
18310
18311}
18312
18313// Pages invokes f for each page of results.
18314// A non-nil error returned from f will halt the iteration.
18315// The provided context supersedes any context provided to the Context method.
18316func (c *AccountsLabelsListCall) Pages(ctx context.Context, f func(*ListAccountLabelsResponse) error) error {
18317	c.ctx_ = ctx
18318	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18319	for {
18320		x, err := c.Do()
18321		if err != nil {
18322			return err
18323		}
18324		if err := f(x); err != nil {
18325			return err
18326		}
18327		if x.NextPageToken == "" {
18328			return nil
18329		}
18330		c.PageToken(x.NextPageToken)
18331	}
18332}
18333
18334// method id "content.accounts.labels.patch":
18335
18336type AccountsLabelsPatchCall struct {
18337	s            *APIService
18338	accountId    int64
18339	labelId      int64
18340	accountlabel *AccountLabel
18341	urlParams_   gensupport.URLParams
18342	ctx_         context.Context
18343	header_      http.Header
18344}
18345
18346// Patch: Updates a label.
18347//
18348// - accountId: The id of the account this label belongs to.
18349// - labelId: The id of the label to update.
18350func (r *AccountsLabelsService) Patch(accountId int64, labelId int64, accountlabel *AccountLabel) *AccountsLabelsPatchCall {
18351	c := &AccountsLabelsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18352	c.accountId = accountId
18353	c.labelId = labelId
18354	c.accountlabel = accountlabel
18355	return c
18356}
18357
18358// Fields allows partial responses to be retrieved. See
18359// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18360// for more information.
18361func (c *AccountsLabelsPatchCall) Fields(s ...googleapi.Field) *AccountsLabelsPatchCall {
18362	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18363	return c
18364}
18365
18366// Context sets the context to be used in this call's Do method. Any
18367// pending HTTP request will be aborted if the provided context is
18368// canceled.
18369func (c *AccountsLabelsPatchCall) Context(ctx context.Context) *AccountsLabelsPatchCall {
18370	c.ctx_ = ctx
18371	return c
18372}
18373
18374// Header returns an http.Header that can be modified by the caller to
18375// add HTTP headers to the request.
18376func (c *AccountsLabelsPatchCall) Header() http.Header {
18377	if c.header_ == nil {
18378		c.header_ = make(http.Header)
18379	}
18380	return c.header_
18381}
18382
18383func (c *AccountsLabelsPatchCall) doRequest(alt string) (*http.Response, error) {
18384	reqHeaders := make(http.Header)
18385	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
18386	for k, v := range c.header_ {
18387		reqHeaders[k] = v
18388	}
18389	reqHeaders.Set("User-Agent", c.s.userAgent())
18390	var body io.Reader = nil
18391	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
18392	if err != nil {
18393		return nil, err
18394	}
18395	reqHeaders.Set("Content-Type", "application/json")
18396	c.urlParams_.Set("alt", alt)
18397	c.urlParams_.Set("prettyPrint", "false")
18398	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels/{labelId}")
18399	urls += "?" + c.urlParams_.Encode()
18400	req, err := http.NewRequest("PATCH", urls, body)
18401	if err != nil {
18402		return nil, err
18403	}
18404	req.Header = reqHeaders
18405	googleapi.Expand(req.URL, map[string]string{
18406		"accountId": strconv.FormatInt(c.accountId, 10),
18407		"labelId":   strconv.FormatInt(c.labelId, 10),
18408	})
18409	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18410}
18411
18412// Do executes the "content.accounts.labels.patch" call.
18413// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
18414// status code is an error. Response headers are in either
18415// *AccountLabel.ServerResponse.Header or (if a response was returned at
18416// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
18417// to check whether the returned error was because
18418// http.StatusNotModified was returned.
18419func (c *AccountsLabelsPatchCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
18420	gensupport.SetOptions(c.urlParams_, opts...)
18421	res, err := c.doRequest("json")
18422	if res != nil && res.StatusCode == http.StatusNotModified {
18423		if res.Body != nil {
18424			res.Body.Close()
18425		}
18426		return nil, &googleapi.Error{
18427			Code:   res.StatusCode,
18428			Header: res.Header,
18429		}
18430	}
18431	if err != nil {
18432		return nil, err
18433	}
18434	defer googleapi.CloseBody(res)
18435	if err := googleapi.CheckResponse(res); err != nil {
18436		return nil, err
18437	}
18438	ret := &AccountLabel{
18439		ServerResponse: googleapi.ServerResponse{
18440			Header:         res.Header,
18441			HTTPStatusCode: res.StatusCode,
18442		},
18443	}
18444	target := &ret
18445	if err := gensupport.DecodeResponse(target, res); err != nil {
18446		return nil, err
18447	}
18448	return ret, nil
18449	// {
18450	//   "description": "Updates a label.",
18451	//   "flatPath": "accounts/{accountId}/labels/{labelId}",
18452	//   "httpMethod": "PATCH",
18453	//   "id": "content.accounts.labels.patch",
18454	//   "parameterOrder": [
18455	//     "accountId",
18456	//     "labelId"
18457	//   ],
18458	//   "parameters": {
18459	//     "accountId": {
18460	//       "description": "Required. The id of the account this label belongs to.",
18461	//       "format": "int64",
18462	//       "location": "path",
18463	//       "required": true,
18464	//       "type": "string"
18465	//     },
18466	//     "labelId": {
18467	//       "description": "Required. The id of the label to update.",
18468	//       "format": "int64",
18469	//       "location": "path",
18470	//       "required": true,
18471	//       "type": "string"
18472	//     }
18473	//   },
18474	//   "path": "accounts/{accountId}/labels/{labelId}",
18475	//   "request": {
18476	//     "$ref": "AccountLabel"
18477	//   },
18478	//   "response": {
18479	//     "$ref": "AccountLabel"
18480	//   },
18481	//   "scopes": [
18482	//     "https://www.googleapis.com/auth/content"
18483	//   ]
18484	// }
18485
18486}
18487
18488// method id "content.accounts.returncarrier.create":
18489
18490type AccountsReturncarrierCreateCall struct {
18491	s                    *APIService
18492	accountId            int64
18493	accountreturncarrier *AccountReturnCarrier
18494	urlParams_           gensupport.URLParams
18495	ctx_                 context.Context
18496	header_              http.Header
18497}
18498
18499// Create: Links return carrier to a merchant account.
18500//
18501// - accountId: The Merchant Center Account Id under which the Return
18502//   Carrier is to be linked.
18503func (r *AccountsReturncarrierService) Create(accountId int64, accountreturncarrier *AccountReturnCarrier) *AccountsReturncarrierCreateCall {
18504	c := &AccountsReturncarrierCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18505	c.accountId = accountId
18506	c.accountreturncarrier = accountreturncarrier
18507	return c
18508}
18509
18510// Fields allows partial responses to be retrieved. See
18511// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18512// for more information.
18513func (c *AccountsReturncarrierCreateCall) Fields(s ...googleapi.Field) *AccountsReturncarrierCreateCall {
18514	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18515	return c
18516}
18517
18518// Context sets the context to be used in this call's Do method. Any
18519// pending HTTP request will be aborted if the provided context is
18520// canceled.
18521func (c *AccountsReturncarrierCreateCall) Context(ctx context.Context) *AccountsReturncarrierCreateCall {
18522	c.ctx_ = ctx
18523	return c
18524}
18525
18526// Header returns an http.Header that can be modified by the caller to
18527// add HTTP headers to the request.
18528func (c *AccountsReturncarrierCreateCall) Header() http.Header {
18529	if c.header_ == nil {
18530		c.header_ = make(http.Header)
18531	}
18532	return c.header_
18533}
18534
18535func (c *AccountsReturncarrierCreateCall) doRequest(alt string) (*http.Response, error) {
18536	reqHeaders := make(http.Header)
18537	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
18538	for k, v := range c.header_ {
18539		reqHeaders[k] = v
18540	}
18541	reqHeaders.Set("User-Agent", c.s.userAgent())
18542	var body io.Reader = nil
18543	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountreturncarrier)
18544	if err != nil {
18545		return nil, err
18546	}
18547	reqHeaders.Set("Content-Type", "application/json")
18548	c.urlParams_.Set("alt", alt)
18549	c.urlParams_.Set("prettyPrint", "false")
18550	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier")
18551	urls += "?" + c.urlParams_.Encode()
18552	req, err := http.NewRequest("POST", urls, body)
18553	if err != nil {
18554		return nil, err
18555	}
18556	req.Header = reqHeaders
18557	googleapi.Expand(req.URL, map[string]string{
18558		"accountId": strconv.FormatInt(c.accountId, 10),
18559	})
18560	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18561}
18562
18563// Do executes the "content.accounts.returncarrier.create" call.
18564// Exactly one of *AccountReturnCarrier or error will be non-nil. Any
18565// non-2xx status code is an error. Response headers are in either
18566// *AccountReturnCarrier.ServerResponse.Header or (if a response was
18567// returned at all) in error.(*googleapi.Error).Header. Use
18568// googleapi.IsNotModified to check whether the returned error was
18569// because http.StatusNotModified was returned.
18570func (c *AccountsReturncarrierCreateCall) Do(opts ...googleapi.CallOption) (*AccountReturnCarrier, error) {
18571	gensupport.SetOptions(c.urlParams_, opts...)
18572	res, err := c.doRequest("json")
18573	if res != nil && res.StatusCode == http.StatusNotModified {
18574		if res.Body != nil {
18575			res.Body.Close()
18576		}
18577		return nil, &googleapi.Error{
18578			Code:   res.StatusCode,
18579			Header: res.Header,
18580		}
18581	}
18582	if err != nil {
18583		return nil, err
18584	}
18585	defer googleapi.CloseBody(res)
18586	if err := googleapi.CheckResponse(res); err != nil {
18587		return nil, err
18588	}
18589	ret := &AccountReturnCarrier{
18590		ServerResponse: googleapi.ServerResponse{
18591			Header:         res.Header,
18592			HTTPStatusCode: res.StatusCode,
18593		},
18594	}
18595	target := &ret
18596	if err := gensupport.DecodeResponse(target, res); err != nil {
18597		return nil, err
18598	}
18599	return ret, nil
18600	// {
18601	//   "description": "Links return carrier to a merchant account.",
18602	//   "flatPath": "accounts/{accountId}/returncarrier",
18603	//   "httpMethod": "POST",
18604	//   "id": "content.accounts.returncarrier.create",
18605	//   "parameterOrder": [
18606	//     "accountId"
18607	//   ],
18608	//   "parameters": {
18609	//     "accountId": {
18610	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
18611	//       "format": "int64",
18612	//       "location": "path",
18613	//       "required": true,
18614	//       "type": "string"
18615	//     }
18616	//   },
18617	//   "path": "accounts/{accountId}/returncarrier",
18618	//   "request": {
18619	//     "$ref": "AccountReturnCarrier"
18620	//   },
18621	//   "response": {
18622	//     "$ref": "AccountReturnCarrier"
18623	//   },
18624	//   "scopes": [
18625	//     "https://www.googleapis.com/auth/content"
18626	//   ]
18627	// }
18628
18629}
18630
18631// method id "content.accounts.returncarrier.delete":
18632
18633type AccountsReturncarrierDeleteCall struct {
18634	s                *APIService
18635	accountId        int64
18636	carrierAccountId int64
18637	urlParams_       gensupport.URLParams
18638	ctx_             context.Context
18639	header_          http.Header
18640}
18641
18642// Delete: Delete a return carrier in the merchant account.
18643//
18644// - accountId: The Merchant Center Account Id under which the Return
18645//   Carrier is to be linked.
18646// - carrierAccountId: The Google-provided unique carrier ID, used to
18647//   update the resource.
18648func (r *AccountsReturncarrierService) Delete(accountId int64, carrierAccountId int64) *AccountsReturncarrierDeleteCall {
18649	c := &AccountsReturncarrierDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18650	c.accountId = accountId
18651	c.carrierAccountId = carrierAccountId
18652	return c
18653}
18654
18655// Fields allows partial responses to be retrieved. See
18656// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18657// for more information.
18658func (c *AccountsReturncarrierDeleteCall) Fields(s ...googleapi.Field) *AccountsReturncarrierDeleteCall {
18659	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18660	return c
18661}
18662
18663// Context sets the context to be used in this call's Do method. Any
18664// pending HTTP request will be aborted if the provided context is
18665// canceled.
18666func (c *AccountsReturncarrierDeleteCall) Context(ctx context.Context) *AccountsReturncarrierDeleteCall {
18667	c.ctx_ = ctx
18668	return c
18669}
18670
18671// Header returns an http.Header that can be modified by the caller to
18672// add HTTP headers to the request.
18673func (c *AccountsReturncarrierDeleteCall) Header() http.Header {
18674	if c.header_ == nil {
18675		c.header_ = make(http.Header)
18676	}
18677	return c.header_
18678}
18679
18680func (c *AccountsReturncarrierDeleteCall) doRequest(alt string) (*http.Response, error) {
18681	reqHeaders := make(http.Header)
18682	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
18683	for k, v := range c.header_ {
18684		reqHeaders[k] = v
18685	}
18686	reqHeaders.Set("User-Agent", c.s.userAgent())
18687	var body io.Reader = nil
18688	c.urlParams_.Set("alt", alt)
18689	c.urlParams_.Set("prettyPrint", "false")
18690	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier/{carrierAccountId}")
18691	urls += "?" + c.urlParams_.Encode()
18692	req, err := http.NewRequest("DELETE", urls, body)
18693	if err != nil {
18694		return nil, err
18695	}
18696	req.Header = reqHeaders
18697	googleapi.Expand(req.URL, map[string]string{
18698		"accountId":        strconv.FormatInt(c.accountId, 10),
18699		"carrierAccountId": strconv.FormatInt(c.carrierAccountId, 10),
18700	})
18701	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18702}
18703
18704// Do executes the "content.accounts.returncarrier.delete" call.
18705func (c *AccountsReturncarrierDeleteCall) Do(opts ...googleapi.CallOption) error {
18706	gensupport.SetOptions(c.urlParams_, opts...)
18707	res, err := c.doRequest("json")
18708	if err != nil {
18709		return err
18710	}
18711	defer googleapi.CloseBody(res)
18712	if err := googleapi.CheckResponse(res); err != nil {
18713		return err
18714	}
18715	return nil
18716	// {
18717	//   "description": "Delete a return carrier in the merchant account.",
18718	//   "flatPath": "accounts/{accountId}/returncarrier/{carrierAccountId}",
18719	//   "httpMethod": "DELETE",
18720	//   "id": "content.accounts.returncarrier.delete",
18721	//   "parameterOrder": [
18722	//     "accountId",
18723	//     "carrierAccountId"
18724	//   ],
18725	//   "parameters": {
18726	//     "accountId": {
18727	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
18728	//       "format": "int64",
18729	//       "location": "path",
18730	//       "required": true,
18731	//       "type": "string"
18732	//     },
18733	//     "carrierAccountId": {
18734	//       "description": "Required. The Google-provided unique carrier ID, used to update the resource.",
18735	//       "format": "int64",
18736	//       "location": "path",
18737	//       "required": true,
18738	//       "type": "string"
18739	//     }
18740	//   },
18741	//   "path": "accounts/{accountId}/returncarrier/{carrierAccountId}",
18742	//   "scopes": [
18743	//     "https://www.googleapis.com/auth/content"
18744	//   ]
18745	// }
18746
18747}
18748
18749// method id "content.accounts.returncarrier.list":
18750
18751type AccountsReturncarrierListCall struct {
18752	s            *APIService
18753	accountId    int64
18754	urlParams_   gensupport.URLParams
18755	ifNoneMatch_ string
18756	ctx_         context.Context
18757	header_      http.Header
18758}
18759
18760// List: Lists available return carriers in the merchant account.
18761//
18762// - accountId: The Merchant Center Account Id under which the Return
18763//   Carrier is to be linked.
18764func (r *AccountsReturncarrierService) List(accountId int64) *AccountsReturncarrierListCall {
18765	c := &AccountsReturncarrierListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18766	c.accountId = accountId
18767	return c
18768}
18769
18770// Fields allows partial responses to be retrieved. See
18771// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18772// for more information.
18773func (c *AccountsReturncarrierListCall) Fields(s ...googleapi.Field) *AccountsReturncarrierListCall {
18774	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18775	return c
18776}
18777
18778// IfNoneMatch sets the optional parameter which makes the operation
18779// fail if the object's ETag matches the given value. This is useful for
18780// getting updates only after the object has changed since the last
18781// request. Use googleapi.IsNotModified to check whether the response
18782// error from Do is the result of In-None-Match.
18783func (c *AccountsReturncarrierListCall) IfNoneMatch(entityTag string) *AccountsReturncarrierListCall {
18784	c.ifNoneMatch_ = entityTag
18785	return c
18786}
18787
18788// Context sets the context to be used in this call's Do method. Any
18789// pending HTTP request will be aborted if the provided context is
18790// canceled.
18791func (c *AccountsReturncarrierListCall) Context(ctx context.Context) *AccountsReturncarrierListCall {
18792	c.ctx_ = ctx
18793	return c
18794}
18795
18796// Header returns an http.Header that can be modified by the caller to
18797// add HTTP headers to the request.
18798func (c *AccountsReturncarrierListCall) Header() http.Header {
18799	if c.header_ == nil {
18800		c.header_ = make(http.Header)
18801	}
18802	return c.header_
18803}
18804
18805func (c *AccountsReturncarrierListCall) doRequest(alt string) (*http.Response, error) {
18806	reqHeaders := make(http.Header)
18807	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
18808	for k, v := range c.header_ {
18809		reqHeaders[k] = v
18810	}
18811	reqHeaders.Set("User-Agent", c.s.userAgent())
18812	if c.ifNoneMatch_ != "" {
18813		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18814	}
18815	var body io.Reader = nil
18816	c.urlParams_.Set("alt", alt)
18817	c.urlParams_.Set("prettyPrint", "false")
18818	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier")
18819	urls += "?" + c.urlParams_.Encode()
18820	req, err := http.NewRequest("GET", urls, body)
18821	if err != nil {
18822		return nil, err
18823	}
18824	req.Header = reqHeaders
18825	googleapi.Expand(req.URL, map[string]string{
18826		"accountId": strconv.FormatInt(c.accountId, 10),
18827	})
18828	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18829}
18830
18831// Do executes the "content.accounts.returncarrier.list" call.
18832// Exactly one of *ListAccountReturnCarrierResponse or error will be
18833// non-nil. Any non-2xx status code is an error. Response headers are in
18834// either *ListAccountReturnCarrierResponse.ServerResponse.Header or (if
18835// a response was returned at all) in error.(*googleapi.Error).Header.
18836// Use googleapi.IsNotModified to check whether the returned error was
18837// because http.StatusNotModified was returned.
18838func (c *AccountsReturncarrierListCall) Do(opts ...googleapi.CallOption) (*ListAccountReturnCarrierResponse, error) {
18839	gensupport.SetOptions(c.urlParams_, opts...)
18840	res, err := c.doRequest("json")
18841	if res != nil && res.StatusCode == http.StatusNotModified {
18842		if res.Body != nil {
18843			res.Body.Close()
18844		}
18845		return nil, &googleapi.Error{
18846			Code:   res.StatusCode,
18847			Header: res.Header,
18848		}
18849	}
18850	if err != nil {
18851		return nil, err
18852	}
18853	defer googleapi.CloseBody(res)
18854	if err := googleapi.CheckResponse(res); err != nil {
18855		return nil, err
18856	}
18857	ret := &ListAccountReturnCarrierResponse{
18858		ServerResponse: googleapi.ServerResponse{
18859			Header:         res.Header,
18860			HTTPStatusCode: res.StatusCode,
18861		},
18862	}
18863	target := &ret
18864	if err := gensupport.DecodeResponse(target, res); err != nil {
18865		return nil, err
18866	}
18867	return ret, nil
18868	// {
18869	//   "description": "Lists available return carriers in the merchant account.",
18870	//   "flatPath": "accounts/{accountId}/returncarrier",
18871	//   "httpMethod": "GET",
18872	//   "id": "content.accounts.returncarrier.list",
18873	//   "parameterOrder": [
18874	//     "accountId"
18875	//   ],
18876	//   "parameters": {
18877	//     "accountId": {
18878	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
18879	//       "format": "int64",
18880	//       "location": "path",
18881	//       "required": true,
18882	//       "type": "string"
18883	//     }
18884	//   },
18885	//   "path": "accounts/{accountId}/returncarrier",
18886	//   "response": {
18887	//     "$ref": "ListAccountReturnCarrierResponse"
18888	//   },
18889	//   "scopes": [
18890	//     "https://www.googleapis.com/auth/content"
18891	//   ]
18892	// }
18893
18894}
18895
18896// method id "content.accounts.returncarrier.patch":
18897
18898type AccountsReturncarrierPatchCall struct {
18899	s                    *APIService
18900	accountId            int64
18901	carrierAccountId     int64
18902	accountreturncarrier *AccountReturnCarrier
18903	urlParams_           gensupport.URLParams
18904	ctx_                 context.Context
18905	header_              http.Header
18906}
18907
18908// Patch: Updates a return carrier in the merchant account.
18909//
18910// - accountId: The Merchant Center Account Id under which the Return
18911//   Carrier is to be linked.
18912// - carrierAccountId: The Google-provided unique carrier ID, used to
18913//   update the resource.
18914func (r *AccountsReturncarrierService) Patch(accountId int64, carrierAccountId int64, accountreturncarrier *AccountReturnCarrier) *AccountsReturncarrierPatchCall {
18915	c := &AccountsReturncarrierPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18916	c.accountId = accountId
18917	c.carrierAccountId = carrierAccountId
18918	c.accountreturncarrier = accountreturncarrier
18919	return c
18920}
18921
18922// Fields allows partial responses to be retrieved. See
18923// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18924// for more information.
18925func (c *AccountsReturncarrierPatchCall) Fields(s ...googleapi.Field) *AccountsReturncarrierPatchCall {
18926	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18927	return c
18928}
18929
18930// Context sets the context to be used in this call's Do method. Any
18931// pending HTTP request will be aborted if the provided context is
18932// canceled.
18933func (c *AccountsReturncarrierPatchCall) Context(ctx context.Context) *AccountsReturncarrierPatchCall {
18934	c.ctx_ = ctx
18935	return c
18936}
18937
18938// Header returns an http.Header that can be modified by the caller to
18939// add HTTP headers to the request.
18940func (c *AccountsReturncarrierPatchCall) Header() http.Header {
18941	if c.header_ == nil {
18942		c.header_ = make(http.Header)
18943	}
18944	return c.header_
18945}
18946
18947func (c *AccountsReturncarrierPatchCall) doRequest(alt string) (*http.Response, error) {
18948	reqHeaders := make(http.Header)
18949	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
18950	for k, v := range c.header_ {
18951		reqHeaders[k] = v
18952	}
18953	reqHeaders.Set("User-Agent", c.s.userAgent())
18954	var body io.Reader = nil
18955	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountreturncarrier)
18956	if err != nil {
18957		return nil, err
18958	}
18959	reqHeaders.Set("Content-Type", "application/json")
18960	c.urlParams_.Set("alt", alt)
18961	c.urlParams_.Set("prettyPrint", "false")
18962	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier/{carrierAccountId}")
18963	urls += "?" + c.urlParams_.Encode()
18964	req, err := http.NewRequest("PATCH", urls, body)
18965	if err != nil {
18966		return nil, err
18967	}
18968	req.Header = reqHeaders
18969	googleapi.Expand(req.URL, map[string]string{
18970		"accountId":        strconv.FormatInt(c.accountId, 10),
18971		"carrierAccountId": strconv.FormatInt(c.carrierAccountId, 10),
18972	})
18973	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18974}
18975
18976// Do executes the "content.accounts.returncarrier.patch" call.
18977// Exactly one of *AccountReturnCarrier or error will be non-nil. Any
18978// non-2xx status code is an error. Response headers are in either
18979// *AccountReturnCarrier.ServerResponse.Header or (if a response was
18980// returned at all) in error.(*googleapi.Error).Header. Use
18981// googleapi.IsNotModified to check whether the returned error was
18982// because http.StatusNotModified was returned.
18983func (c *AccountsReturncarrierPatchCall) Do(opts ...googleapi.CallOption) (*AccountReturnCarrier, error) {
18984	gensupport.SetOptions(c.urlParams_, opts...)
18985	res, err := c.doRequest("json")
18986	if res != nil && res.StatusCode == http.StatusNotModified {
18987		if res.Body != nil {
18988			res.Body.Close()
18989		}
18990		return nil, &googleapi.Error{
18991			Code:   res.StatusCode,
18992			Header: res.Header,
18993		}
18994	}
18995	if err != nil {
18996		return nil, err
18997	}
18998	defer googleapi.CloseBody(res)
18999	if err := googleapi.CheckResponse(res); err != nil {
19000		return nil, err
19001	}
19002	ret := &AccountReturnCarrier{
19003		ServerResponse: googleapi.ServerResponse{
19004			Header:         res.Header,
19005			HTTPStatusCode: res.StatusCode,
19006		},
19007	}
19008	target := &ret
19009	if err := gensupport.DecodeResponse(target, res); err != nil {
19010		return nil, err
19011	}
19012	return ret, nil
19013	// {
19014	//   "description": "Updates a return carrier in the merchant account.",
19015	//   "flatPath": "accounts/{accountId}/returncarrier/{carrierAccountId}",
19016	//   "httpMethod": "PATCH",
19017	//   "id": "content.accounts.returncarrier.patch",
19018	//   "parameterOrder": [
19019	//     "accountId",
19020	//     "carrierAccountId"
19021	//   ],
19022	//   "parameters": {
19023	//     "accountId": {
19024	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
19025	//       "format": "int64",
19026	//       "location": "path",
19027	//       "required": true,
19028	//       "type": "string"
19029	//     },
19030	//     "carrierAccountId": {
19031	//       "description": "Required. The Google-provided unique carrier ID, used to update the resource.",
19032	//       "format": "int64",
19033	//       "location": "path",
19034	//       "required": true,
19035	//       "type": "string"
19036	//     }
19037	//   },
19038	//   "path": "accounts/{accountId}/returncarrier/{carrierAccountId}",
19039	//   "request": {
19040	//     "$ref": "AccountReturnCarrier"
19041	//   },
19042	//   "response": {
19043	//     "$ref": "AccountReturnCarrier"
19044	//   },
19045	//   "scopes": [
19046	//     "https://www.googleapis.com/auth/content"
19047	//   ]
19048	// }
19049
19050}
19051
19052// method id "content.accountstatuses.custombatch":
19053
19054type AccountstatusesCustombatchCall struct {
19055	s                                 *APIService
19056	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
19057	urlParams_                        gensupport.URLParams
19058	ctx_                              context.Context
19059	header_                           http.Header
19060}
19061
19062// Custombatch: Retrieves multiple Merchant Center account statuses in a
19063// single request.
19064func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
19065	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19066	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
19067	return c
19068}
19069
19070// Fields allows partial responses to be retrieved. See
19071// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19072// for more information.
19073func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
19074	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19075	return c
19076}
19077
19078// Context sets the context to be used in this call's Do method. Any
19079// pending HTTP request will be aborted if the provided context is
19080// canceled.
19081func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
19082	c.ctx_ = ctx
19083	return c
19084}
19085
19086// Header returns an http.Header that can be modified by the caller to
19087// add HTTP headers to the request.
19088func (c *AccountstatusesCustombatchCall) Header() http.Header {
19089	if c.header_ == nil {
19090		c.header_ = make(http.Header)
19091	}
19092	return c.header_
19093}
19094
19095func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
19096	reqHeaders := make(http.Header)
19097	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
19098	for k, v := range c.header_ {
19099		reqHeaders[k] = v
19100	}
19101	reqHeaders.Set("User-Agent", c.s.userAgent())
19102	var body io.Reader = nil
19103	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
19104	if err != nil {
19105		return nil, err
19106	}
19107	reqHeaders.Set("Content-Type", "application/json")
19108	c.urlParams_.Set("alt", alt)
19109	c.urlParams_.Set("prettyPrint", "false")
19110	urls := googleapi.ResolveRelative(c.s.BasePath, "accountstatuses/batch")
19111	urls += "?" + c.urlParams_.Encode()
19112	req, err := http.NewRequest("POST", urls, body)
19113	if err != nil {
19114		return nil, err
19115	}
19116	req.Header = reqHeaders
19117	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19118}
19119
19120// Do executes the "content.accountstatuses.custombatch" call.
19121// Exactly one of *AccountstatusesCustomBatchResponse or error will be
19122// non-nil. Any non-2xx status code is an error. Response headers are in
19123// either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
19124// (if a response was returned at all) in
19125// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19126// whether the returned error was because http.StatusNotModified was
19127// returned.
19128func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
19129	gensupport.SetOptions(c.urlParams_, opts...)
19130	res, err := c.doRequest("json")
19131	if res != nil && res.StatusCode == http.StatusNotModified {
19132		if res.Body != nil {
19133			res.Body.Close()
19134		}
19135		return nil, &googleapi.Error{
19136			Code:   res.StatusCode,
19137			Header: res.Header,
19138		}
19139	}
19140	if err != nil {
19141		return nil, err
19142	}
19143	defer googleapi.CloseBody(res)
19144	if err := googleapi.CheckResponse(res); err != nil {
19145		return nil, err
19146	}
19147	ret := &AccountstatusesCustomBatchResponse{
19148		ServerResponse: googleapi.ServerResponse{
19149			Header:         res.Header,
19150			HTTPStatusCode: res.StatusCode,
19151		},
19152	}
19153	target := &ret
19154	if err := gensupport.DecodeResponse(target, res); err != nil {
19155		return nil, err
19156	}
19157	return ret, nil
19158	// {
19159	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
19160	//   "flatPath": "accountstatuses/batch",
19161	//   "httpMethod": "POST",
19162	//   "id": "content.accountstatuses.custombatch",
19163	//   "parameterOrder": [],
19164	//   "parameters": {},
19165	//   "path": "accountstatuses/batch",
19166	//   "request": {
19167	//     "$ref": "AccountstatusesCustomBatchRequest"
19168	//   },
19169	//   "response": {
19170	//     "$ref": "AccountstatusesCustomBatchResponse"
19171	//   },
19172	//   "scopes": [
19173	//     "https://www.googleapis.com/auth/content"
19174	//   ]
19175	// }
19176
19177}
19178
19179// method id "content.accountstatuses.get":
19180
19181type AccountstatusesGetCall struct {
19182	s            *APIService
19183	merchantId   uint64
19184	accountId    uint64
19185	urlParams_   gensupport.URLParams
19186	ifNoneMatch_ string
19187	ctx_         context.Context
19188	header_      http.Header
19189}
19190
19191// Get: Retrieves the status of a Merchant Center account. No
19192// itemLevelIssues are returned for multi-client accounts.
19193//
19194// - accountId: The ID of the account.
19195// - merchantId: The ID of the managing account. If this parameter is
19196//   not the same as accountId, then this account must be a multi-client
19197//   account and `accountId` must be the ID of a sub-account of this
19198//   account.
19199func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
19200	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19201	c.merchantId = merchantId
19202	c.accountId = accountId
19203	return c
19204}
19205
19206// Destinations sets the optional parameter "destinations": If set, only
19207// issues for the specified destinations are returned, otherwise only
19208// issues for the Shopping destination.
19209func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
19210	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
19211	return c
19212}
19213
19214// Fields allows partial responses to be retrieved. See
19215// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19216// for more information.
19217func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
19218	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19219	return c
19220}
19221
19222// IfNoneMatch sets the optional parameter which makes the operation
19223// fail if the object's ETag matches the given value. This is useful for
19224// getting updates only after the object has changed since the last
19225// request. Use googleapi.IsNotModified to check whether the response
19226// error from Do is the result of In-None-Match.
19227func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
19228	c.ifNoneMatch_ = entityTag
19229	return c
19230}
19231
19232// Context sets the context to be used in this call's Do method. Any
19233// pending HTTP request will be aborted if the provided context is
19234// canceled.
19235func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
19236	c.ctx_ = ctx
19237	return c
19238}
19239
19240// Header returns an http.Header that can be modified by the caller to
19241// add HTTP headers to the request.
19242func (c *AccountstatusesGetCall) Header() http.Header {
19243	if c.header_ == nil {
19244		c.header_ = make(http.Header)
19245	}
19246	return c.header_
19247}
19248
19249func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
19250	reqHeaders := make(http.Header)
19251	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
19252	for k, v := range c.header_ {
19253		reqHeaders[k] = v
19254	}
19255	reqHeaders.Set("User-Agent", c.s.userAgent())
19256	if c.ifNoneMatch_ != "" {
19257		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19258	}
19259	var body io.Reader = nil
19260	c.urlParams_.Set("alt", alt)
19261	c.urlParams_.Set("prettyPrint", "false")
19262	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses/{accountId}")
19263	urls += "?" + c.urlParams_.Encode()
19264	req, err := http.NewRequest("GET", urls, body)
19265	if err != nil {
19266		return nil, err
19267	}
19268	req.Header = reqHeaders
19269	googleapi.Expand(req.URL, map[string]string{
19270		"merchantId": strconv.FormatUint(c.merchantId, 10),
19271		"accountId":  strconv.FormatUint(c.accountId, 10),
19272	})
19273	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19274}
19275
19276// Do executes the "content.accountstatuses.get" call.
19277// Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
19278// status code is an error. Response headers are in either
19279// *AccountStatus.ServerResponse.Header or (if a response was returned
19280// at all) in error.(*googleapi.Error).Header. Use
19281// googleapi.IsNotModified to check whether the returned error was
19282// because http.StatusNotModified was returned.
19283func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
19284	gensupport.SetOptions(c.urlParams_, opts...)
19285	res, err := c.doRequest("json")
19286	if res != nil && res.StatusCode == http.StatusNotModified {
19287		if res.Body != nil {
19288			res.Body.Close()
19289		}
19290		return nil, &googleapi.Error{
19291			Code:   res.StatusCode,
19292			Header: res.Header,
19293		}
19294	}
19295	if err != nil {
19296		return nil, err
19297	}
19298	defer googleapi.CloseBody(res)
19299	if err := googleapi.CheckResponse(res); err != nil {
19300		return nil, err
19301	}
19302	ret := &AccountStatus{
19303		ServerResponse: googleapi.ServerResponse{
19304			Header:         res.Header,
19305			HTTPStatusCode: res.StatusCode,
19306		},
19307	}
19308	target := &ret
19309	if err := gensupport.DecodeResponse(target, res); err != nil {
19310		return nil, err
19311	}
19312	return ret, nil
19313	// {
19314	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
19315	//   "flatPath": "{merchantId}/accountstatuses/{accountId}",
19316	//   "httpMethod": "GET",
19317	//   "id": "content.accountstatuses.get",
19318	//   "parameterOrder": [
19319	//     "merchantId",
19320	//     "accountId"
19321	//   ],
19322	//   "parameters": {
19323	//     "accountId": {
19324	//       "description": "The ID of the account.",
19325	//       "format": "uint64",
19326	//       "location": "path",
19327	//       "required": true,
19328	//       "type": "string"
19329	//     },
19330	//     "destinations": {
19331	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
19332	//       "location": "query",
19333	//       "repeated": true,
19334	//       "type": "string"
19335	//     },
19336	//     "merchantId": {
19337	//       "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.",
19338	//       "format": "uint64",
19339	//       "location": "path",
19340	//       "required": true,
19341	//       "type": "string"
19342	//     }
19343	//   },
19344	//   "path": "{merchantId}/accountstatuses/{accountId}",
19345	//   "response": {
19346	//     "$ref": "AccountStatus"
19347	//   },
19348	//   "scopes": [
19349	//     "https://www.googleapis.com/auth/content"
19350	//   ]
19351	// }
19352
19353}
19354
19355// method id "content.accountstatuses.list":
19356
19357type AccountstatusesListCall struct {
19358	s            *APIService
19359	merchantId   uint64
19360	urlParams_   gensupport.URLParams
19361	ifNoneMatch_ string
19362	ctx_         context.Context
19363	header_      http.Header
19364}
19365
19366// List: Lists the statuses of the sub-accounts in your Merchant Center
19367// account.
19368//
19369// - merchantId: The ID of the managing account. This must be a
19370//   multi-client account.
19371func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
19372	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19373	c.merchantId = merchantId
19374	return c
19375}
19376
19377// Destinations sets the optional parameter "destinations": If set, only
19378// issues for the specified destinations are returned, otherwise only
19379// issues for the Shopping destination.
19380func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
19381	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
19382	return c
19383}
19384
19385// MaxResults sets the optional parameter "maxResults": The maximum
19386// number of account statuses to return in the response, used for
19387// paging.
19388func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
19389	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19390	return c
19391}
19392
19393// PageToken sets the optional parameter "pageToken": The token returned
19394// by the previous request.
19395func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
19396	c.urlParams_.Set("pageToken", pageToken)
19397	return c
19398}
19399
19400// Fields allows partial responses to be retrieved. See
19401// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19402// for more information.
19403func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
19404	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19405	return c
19406}
19407
19408// IfNoneMatch sets the optional parameter which makes the operation
19409// fail if the object's ETag matches the given value. This is useful for
19410// getting updates only after the object has changed since the last
19411// request. Use googleapi.IsNotModified to check whether the response
19412// error from Do is the result of In-None-Match.
19413func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
19414	c.ifNoneMatch_ = entityTag
19415	return c
19416}
19417
19418// Context sets the context to be used in this call's Do method. Any
19419// pending HTTP request will be aborted if the provided context is
19420// canceled.
19421func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
19422	c.ctx_ = ctx
19423	return c
19424}
19425
19426// Header returns an http.Header that can be modified by the caller to
19427// add HTTP headers to the request.
19428func (c *AccountstatusesListCall) Header() http.Header {
19429	if c.header_ == nil {
19430		c.header_ = make(http.Header)
19431	}
19432	return c.header_
19433}
19434
19435func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
19436	reqHeaders := make(http.Header)
19437	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
19438	for k, v := range c.header_ {
19439		reqHeaders[k] = v
19440	}
19441	reqHeaders.Set("User-Agent", c.s.userAgent())
19442	if c.ifNoneMatch_ != "" {
19443		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19444	}
19445	var body io.Reader = nil
19446	c.urlParams_.Set("alt", alt)
19447	c.urlParams_.Set("prettyPrint", "false")
19448	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses")
19449	urls += "?" + c.urlParams_.Encode()
19450	req, err := http.NewRequest("GET", urls, body)
19451	if err != nil {
19452		return nil, err
19453	}
19454	req.Header = reqHeaders
19455	googleapi.Expand(req.URL, map[string]string{
19456		"merchantId": strconv.FormatUint(c.merchantId, 10),
19457	})
19458	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19459}
19460
19461// Do executes the "content.accountstatuses.list" call.
19462// Exactly one of *AccountstatusesListResponse or error will be non-nil.
19463// Any non-2xx status code is an error. Response headers are in either
19464// *AccountstatusesListResponse.ServerResponse.Header or (if a response
19465// was returned at all) in error.(*googleapi.Error).Header. Use
19466// googleapi.IsNotModified to check whether the returned error was
19467// because http.StatusNotModified was returned.
19468func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
19469	gensupport.SetOptions(c.urlParams_, opts...)
19470	res, err := c.doRequest("json")
19471	if res != nil && res.StatusCode == http.StatusNotModified {
19472		if res.Body != nil {
19473			res.Body.Close()
19474		}
19475		return nil, &googleapi.Error{
19476			Code:   res.StatusCode,
19477			Header: res.Header,
19478		}
19479	}
19480	if err != nil {
19481		return nil, err
19482	}
19483	defer googleapi.CloseBody(res)
19484	if err := googleapi.CheckResponse(res); err != nil {
19485		return nil, err
19486	}
19487	ret := &AccountstatusesListResponse{
19488		ServerResponse: googleapi.ServerResponse{
19489			Header:         res.Header,
19490			HTTPStatusCode: res.StatusCode,
19491		},
19492	}
19493	target := &ret
19494	if err := gensupport.DecodeResponse(target, res); err != nil {
19495		return nil, err
19496	}
19497	return ret, nil
19498	// {
19499	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
19500	//   "flatPath": "{merchantId}/accountstatuses",
19501	//   "httpMethod": "GET",
19502	//   "id": "content.accountstatuses.list",
19503	//   "parameterOrder": [
19504	//     "merchantId"
19505	//   ],
19506	//   "parameters": {
19507	//     "destinations": {
19508	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
19509	//       "location": "query",
19510	//       "repeated": true,
19511	//       "type": "string"
19512	//     },
19513	//     "maxResults": {
19514	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
19515	//       "format": "uint32",
19516	//       "location": "query",
19517	//       "type": "integer"
19518	//     },
19519	//     "merchantId": {
19520	//       "description": "The ID of the managing account. This must be a multi-client account.",
19521	//       "format": "uint64",
19522	//       "location": "path",
19523	//       "required": true,
19524	//       "type": "string"
19525	//     },
19526	//     "pageToken": {
19527	//       "description": "The token returned by the previous request.",
19528	//       "location": "query",
19529	//       "type": "string"
19530	//     }
19531	//   },
19532	//   "path": "{merchantId}/accountstatuses",
19533	//   "response": {
19534	//     "$ref": "AccountstatusesListResponse"
19535	//   },
19536	//   "scopes": [
19537	//     "https://www.googleapis.com/auth/content"
19538	//   ]
19539	// }
19540
19541}
19542
19543// Pages invokes f for each page of results.
19544// A non-nil error returned from f will halt the iteration.
19545// The provided context supersedes any context provided to the Context method.
19546func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
19547	c.ctx_ = ctx
19548	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19549	for {
19550		x, err := c.Do()
19551		if err != nil {
19552			return err
19553		}
19554		if err := f(x); err != nil {
19555			return err
19556		}
19557		if x.NextPageToken == "" {
19558			return nil
19559		}
19560		c.PageToken(x.NextPageToken)
19561	}
19562}
19563
19564// method id "content.accounttax.custombatch":
19565
19566type AccounttaxCustombatchCall struct {
19567	s                            *APIService
19568	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
19569	urlParams_                   gensupport.URLParams
19570	ctx_                         context.Context
19571	header_                      http.Header
19572}
19573
19574// Custombatch: Retrieves and updates tax settings of multiple accounts
19575// in a single request.
19576func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
19577	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19578	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
19579	return c
19580}
19581
19582// Fields allows partial responses to be retrieved. See
19583// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19584// for more information.
19585func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
19586	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19587	return c
19588}
19589
19590// Context sets the context to be used in this call's Do method. Any
19591// pending HTTP request will be aborted if the provided context is
19592// canceled.
19593func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
19594	c.ctx_ = ctx
19595	return c
19596}
19597
19598// Header returns an http.Header that can be modified by the caller to
19599// add HTTP headers to the request.
19600func (c *AccounttaxCustombatchCall) Header() http.Header {
19601	if c.header_ == nil {
19602		c.header_ = make(http.Header)
19603	}
19604	return c.header_
19605}
19606
19607func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
19608	reqHeaders := make(http.Header)
19609	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
19610	for k, v := range c.header_ {
19611		reqHeaders[k] = v
19612	}
19613	reqHeaders.Set("User-Agent", c.s.userAgent())
19614	var body io.Reader = nil
19615	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
19616	if err != nil {
19617		return nil, err
19618	}
19619	reqHeaders.Set("Content-Type", "application/json")
19620	c.urlParams_.Set("alt", alt)
19621	c.urlParams_.Set("prettyPrint", "false")
19622	urls := googleapi.ResolveRelative(c.s.BasePath, "accounttax/batch")
19623	urls += "?" + c.urlParams_.Encode()
19624	req, err := http.NewRequest("POST", urls, body)
19625	if err != nil {
19626		return nil, err
19627	}
19628	req.Header = reqHeaders
19629	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19630}
19631
19632// Do executes the "content.accounttax.custombatch" call.
19633// Exactly one of *AccounttaxCustomBatchResponse or error will be
19634// non-nil. Any non-2xx status code is an error. Response headers are in
19635// either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
19636// response was returned at all) in error.(*googleapi.Error).Header. Use
19637// googleapi.IsNotModified to check whether the returned error was
19638// because http.StatusNotModified was returned.
19639func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
19640	gensupport.SetOptions(c.urlParams_, opts...)
19641	res, err := c.doRequest("json")
19642	if res != nil && res.StatusCode == http.StatusNotModified {
19643		if res.Body != nil {
19644			res.Body.Close()
19645		}
19646		return nil, &googleapi.Error{
19647			Code:   res.StatusCode,
19648			Header: res.Header,
19649		}
19650	}
19651	if err != nil {
19652		return nil, err
19653	}
19654	defer googleapi.CloseBody(res)
19655	if err := googleapi.CheckResponse(res); err != nil {
19656		return nil, err
19657	}
19658	ret := &AccounttaxCustomBatchResponse{
19659		ServerResponse: googleapi.ServerResponse{
19660			Header:         res.Header,
19661			HTTPStatusCode: res.StatusCode,
19662		},
19663	}
19664	target := &ret
19665	if err := gensupport.DecodeResponse(target, res); err != nil {
19666		return nil, err
19667	}
19668	return ret, nil
19669	// {
19670	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
19671	//   "flatPath": "accounttax/batch",
19672	//   "httpMethod": "POST",
19673	//   "id": "content.accounttax.custombatch",
19674	//   "parameterOrder": [],
19675	//   "parameters": {},
19676	//   "path": "accounttax/batch",
19677	//   "request": {
19678	//     "$ref": "AccounttaxCustomBatchRequest"
19679	//   },
19680	//   "response": {
19681	//     "$ref": "AccounttaxCustomBatchResponse"
19682	//   },
19683	//   "scopes": [
19684	//     "https://www.googleapis.com/auth/content"
19685	//   ]
19686	// }
19687
19688}
19689
19690// method id "content.accounttax.get":
19691
19692type AccounttaxGetCall struct {
19693	s            *APIService
19694	merchantId   uint64
19695	accountId    uint64
19696	urlParams_   gensupport.URLParams
19697	ifNoneMatch_ string
19698	ctx_         context.Context
19699	header_      http.Header
19700}
19701
19702// Get: Retrieves the tax settings of the account.
19703//
19704// - accountId: The ID of the account for which to get/update account
19705//   tax settings.
19706// - merchantId: The ID of the managing account. If this parameter is
19707//   not the same as accountId, then this account must be a multi-client
19708//   account and `accountId` must be the ID of a sub-account of this
19709//   account.
19710func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
19711	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19712	c.merchantId = merchantId
19713	c.accountId = accountId
19714	return c
19715}
19716
19717// Fields allows partial responses to be retrieved. See
19718// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19719// for more information.
19720func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
19721	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19722	return c
19723}
19724
19725// IfNoneMatch sets the optional parameter which makes the operation
19726// fail if the object's ETag matches the given value. This is useful for
19727// getting updates only after the object has changed since the last
19728// request. Use googleapi.IsNotModified to check whether the response
19729// error from Do is the result of In-None-Match.
19730func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
19731	c.ifNoneMatch_ = entityTag
19732	return c
19733}
19734
19735// Context sets the context to be used in this call's Do method. Any
19736// pending HTTP request will be aborted if the provided context is
19737// canceled.
19738func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
19739	c.ctx_ = ctx
19740	return c
19741}
19742
19743// Header returns an http.Header that can be modified by the caller to
19744// add HTTP headers to the request.
19745func (c *AccounttaxGetCall) Header() http.Header {
19746	if c.header_ == nil {
19747		c.header_ = make(http.Header)
19748	}
19749	return c.header_
19750}
19751
19752func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
19753	reqHeaders := make(http.Header)
19754	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
19755	for k, v := range c.header_ {
19756		reqHeaders[k] = v
19757	}
19758	reqHeaders.Set("User-Agent", c.s.userAgent())
19759	if c.ifNoneMatch_ != "" {
19760		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19761	}
19762	var body io.Reader = nil
19763	c.urlParams_.Set("alt", alt)
19764	c.urlParams_.Set("prettyPrint", "false")
19765	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
19766	urls += "?" + c.urlParams_.Encode()
19767	req, err := http.NewRequest("GET", urls, body)
19768	if err != nil {
19769		return nil, err
19770	}
19771	req.Header = reqHeaders
19772	googleapi.Expand(req.URL, map[string]string{
19773		"merchantId": strconv.FormatUint(c.merchantId, 10),
19774		"accountId":  strconv.FormatUint(c.accountId, 10),
19775	})
19776	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19777}
19778
19779// Do executes the "content.accounttax.get" call.
19780// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
19781// status code is an error. Response headers are in either
19782// *AccountTax.ServerResponse.Header or (if a response was returned at
19783// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19784// to check whether the returned error was because
19785// http.StatusNotModified was returned.
19786func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
19787	gensupport.SetOptions(c.urlParams_, opts...)
19788	res, err := c.doRequest("json")
19789	if res != nil && res.StatusCode == http.StatusNotModified {
19790		if res.Body != nil {
19791			res.Body.Close()
19792		}
19793		return nil, &googleapi.Error{
19794			Code:   res.StatusCode,
19795			Header: res.Header,
19796		}
19797	}
19798	if err != nil {
19799		return nil, err
19800	}
19801	defer googleapi.CloseBody(res)
19802	if err := googleapi.CheckResponse(res); err != nil {
19803		return nil, err
19804	}
19805	ret := &AccountTax{
19806		ServerResponse: googleapi.ServerResponse{
19807			Header:         res.Header,
19808			HTTPStatusCode: res.StatusCode,
19809		},
19810	}
19811	target := &ret
19812	if err := gensupport.DecodeResponse(target, res); err != nil {
19813		return nil, err
19814	}
19815	return ret, nil
19816	// {
19817	//   "description": "Retrieves the tax settings of the account.",
19818	//   "flatPath": "{merchantId}/accounttax/{accountId}",
19819	//   "httpMethod": "GET",
19820	//   "id": "content.accounttax.get",
19821	//   "parameterOrder": [
19822	//     "merchantId",
19823	//     "accountId"
19824	//   ],
19825	//   "parameters": {
19826	//     "accountId": {
19827	//       "description": "The ID of the account for which to get/update account tax settings.",
19828	//       "format": "uint64",
19829	//       "location": "path",
19830	//       "required": true,
19831	//       "type": "string"
19832	//     },
19833	//     "merchantId": {
19834	//       "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.",
19835	//       "format": "uint64",
19836	//       "location": "path",
19837	//       "required": true,
19838	//       "type": "string"
19839	//     }
19840	//   },
19841	//   "path": "{merchantId}/accounttax/{accountId}",
19842	//   "response": {
19843	//     "$ref": "AccountTax"
19844	//   },
19845	//   "scopes": [
19846	//     "https://www.googleapis.com/auth/content"
19847	//   ]
19848	// }
19849
19850}
19851
19852// method id "content.accounttax.list":
19853
19854type AccounttaxListCall struct {
19855	s            *APIService
19856	merchantId   uint64
19857	urlParams_   gensupport.URLParams
19858	ifNoneMatch_ string
19859	ctx_         context.Context
19860	header_      http.Header
19861}
19862
19863// List: Lists the tax settings of the sub-accounts in your Merchant
19864// Center account.
19865//
19866// - merchantId: The ID of the managing account. This must be a
19867//   multi-client account.
19868func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
19869	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19870	c.merchantId = merchantId
19871	return c
19872}
19873
19874// MaxResults sets the optional parameter "maxResults": The maximum
19875// number of tax settings to return in the response, used for paging.
19876func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
19877	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19878	return c
19879}
19880
19881// PageToken sets the optional parameter "pageToken": The token returned
19882// by the previous request.
19883func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
19884	c.urlParams_.Set("pageToken", pageToken)
19885	return c
19886}
19887
19888// Fields allows partial responses to be retrieved. See
19889// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19890// for more information.
19891func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
19892	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19893	return c
19894}
19895
19896// IfNoneMatch sets the optional parameter which makes the operation
19897// fail if the object's ETag matches the given value. This is useful for
19898// getting updates only after the object has changed since the last
19899// request. Use googleapi.IsNotModified to check whether the response
19900// error from Do is the result of In-None-Match.
19901func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
19902	c.ifNoneMatch_ = entityTag
19903	return c
19904}
19905
19906// Context sets the context to be used in this call's Do method. Any
19907// pending HTTP request will be aborted if the provided context is
19908// canceled.
19909func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
19910	c.ctx_ = ctx
19911	return c
19912}
19913
19914// Header returns an http.Header that can be modified by the caller to
19915// add HTTP headers to the request.
19916func (c *AccounttaxListCall) Header() http.Header {
19917	if c.header_ == nil {
19918		c.header_ = make(http.Header)
19919	}
19920	return c.header_
19921}
19922
19923func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
19924	reqHeaders := make(http.Header)
19925	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
19926	for k, v := range c.header_ {
19927		reqHeaders[k] = v
19928	}
19929	reqHeaders.Set("User-Agent", c.s.userAgent())
19930	if c.ifNoneMatch_ != "" {
19931		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19932	}
19933	var body io.Reader = nil
19934	c.urlParams_.Set("alt", alt)
19935	c.urlParams_.Set("prettyPrint", "false")
19936	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax")
19937	urls += "?" + c.urlParams_.Encode()
19938	req, err := http.NewRequest("GET", urls, body)
19939	if err != nil {
19940		return nil, err
19941	}
19942	req.Header = reqHeaders
19943	googleapi.Expand(req.URL, map[string]string{
19944		"merchantId": strconv.FormatUint(c.merchantId, 10),
19945	})
19946	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19947}
19948
19949// Do executes the "content.accounttax.list" call.
19950// Exactly one of *AccounttaxListResponse or error will be non-nil. Any
19951// non-2xx status code is an error. Response headers are in either
19952// *AccounttaxListResponse.ServerResponse.Header or (if a response was
19953// returned at all) in error.(*googleapi.Error).Header. Use
19954// googleapi.IsNotModified to check whether the returned error was
19955// because http.StatusNotModified was returned.
19956func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
19957	gensupport.SetOptions(c.urlParams_, opts...)
19958	res, err := c.doRequest("json")
19959	if res != nil && res.StatusCode == http.StatusNotModified {
19960		if res.Body != nil {
19961			res.Body.Close()
19962		}
19963		return nil, &googleapi.Error{
19964			Code:   res.StatusCode,
19965			Header: res.Header,
19966		}
19967	}
19968	if err != nil {
19969		return nil, err
19970	}
19971	defer googleapi.CloseBody(res)
19972	if err := googleapi.CheckResponse(res); err != nil {
19973		return nil, err
19974	}
19975	ret := &AccounttaxListResponse{
19976		ServerResponse: googleapi.ServerResponse{
19977			Header:         res.Header,
19978			HTTPStatusCode: res.StatusCode,
19979		},
19980	}
19981	target := &ret
19982	if err := gensupport.DecodeResponse(target, res); err != nil {
19983		return nil, err
19984	}
19985	return ret, nil
19986	// {
19987	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
19988	//   "flatPath": "{merchantId}/accounttax",
19989	//   "httpMethod": "GET",
19990	//   "id": "content.accounttax.list",
19991	//   "parameterOrder": [
19992	//     "merchantId"
19993	//   ],
19994	//   "parameters": {
19995	//     "maxResults": {
19996	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
19997	//       "format": "uint32",
19998	//       "location": "query",
19999	//       "type": "integer"
20000	//     },
20001	//     "merchantId": {
20002	//       "description": "The ID of the managing account. This must be a multi-client account.",
20003	//       "format": "uint64",
20004	//       "location": "path",
20005	//       "required": true,
20006	//       "type": "string"
20007	//     },
20008	//     "pageToken": {
20009	//       "description": "The token returned by the previous request.",
20010	//       "location": "query",
20011	//       "type": "string"
20012	//     }
20013	//   },
20014	//   "path": "{merchantId}/accounttax",
20015	//   "response": {
20016	//     "$ref": "AccounttaxListResponse"
20017	//   },
20018	//   "scopes": [
20019	//     "https://www.googleapis.com/auth/content"
20020	//   ]
20021	// }
20022
20023}
20024
20025// Pages invokes f for each page of results.
20026// A non-nil error returned from f will halt the iteration.
20027// The provided context supersedes any context provided to the Context method.
20028func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
20029	c.ctx_ = ctx
20030	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20031	for {
20032		x, err := c.Do()
20033		if err != nil {
20034			return err
20035		}
20036		if err := f(x); err != nil {
20037			return err
20038		}
20039		if x.NextPageToken == "" {
20040			return nil
20041		}
20042		c.PageToken(x.NextPageToken)
20043	}
20044}
20045
20046// method id "content.accounttax.update":
20047
20048type AccounttaxUpdateCall struct {
20049	s          *APIService
20050	merchantId uint64
20051	accountId  uint64
20052	accounttax *AccountTax
20053	urlParams_ gensupport.URLParams
20054	ctx_       context.Context
20055	header_    http.Header
20056}
20057
20058// Update: Updates the tax settings of the account. Any fields that are
20059// not provided are deleted from the resource.
20060//
20061// - accountId: The ID of the account for which to get/update account
20062//   tax settings.
20063// - merchantId: The ID of the managing account. If this parameter is
20064//   not the same as accountId, then this account must be a multi-client
20065//   account and `accountId` must be the ID of a sub-account of this
20066//   account.
20067func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
20068	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20069	c.merchantId = merchantId
20070	c.accountId = accountId
20071	c.accounttax = accounttax
20072	return c
20073}
20074
20075// Fields allows partial responses to be retrieved. See
20076// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20077// for more information.
20078func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
20079	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20080	return c
20081}
20082
20083// Context sets the context to be used in this call's Do method. Any
20084// pending HTTP request will be aborted if the provided context is
20085// canceled.
20086func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
20087	c.ctx_ = ctx
20088	return c
20089}
20090
20091// Header returns an http.Header that can be modified by the caller to
20092// add HTTP headers to the request.
20093func (c *AccounttaxUpdateCall) Header() http.Header {
20094	if c.header_ == nil {
20095		c.header_ = make(http.Header)
20096	}
20097	return c.header_
20098}
20099
20100func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
20101	reqHeaders := make(http.Header)
20102	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
20103	for k, v := range c.header_ {
20104		reqHeaders[k] = v
20105	}
20106	reqHeaders.Set("User-Agent", c.s.userAgent())
20107	var body io.Reader = nil
20108	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
20109	if err != nil {
20110		return nil, err
20111	}
20112	reqHeaders.Set("Content-Type", "application/json")
20113	c.urlParams_.Set("alt", alt)
20114	c.urlParams_.Set("prettyPrint", "false")
20115	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
20116	urls += "?" + c.urlParams_.Encode()
20117	req, err := http.NewRequest("PUT", urls, body)
20118	if err != nil {
20119		return nil, err
20120	}
20121	req.Header = reqHeaders
20122	googleapi.Expand(req.URL, map[string]string{
20123		"merchantId": strconv.FormatUint(c.merchantId, 10),
20124		"accountId":  strconv.FormatUint(c.accountId, 10),
20125	})
20126	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20127}
20128
20129// Do executes the "content.accounttax.update" call.
20130// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
20131// status code is an error. Response headers are in either
20132// *AccountTax.ServerResponse.Header or (if a response was returned at
20133// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20134// to check whether the returned error was because
20135// http.StatusNotModified was returned.
20136func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
20137	gensupport.SetOptions(c.urlParams_, opts...)
20138	res, err := c.doRequest("json")
20139	if res != nil && res.StatusCode == http.StatusNotModified {
20140		if res.Body != nil {
20141			res.Body.Close()
20142		}
20143		return nil, &googleapi.Error{
20144			Code:   res.StatusCode,
20145			Header: res.Header,
20146		}
20147	}
20148	if err != nil {
20149		return nil, err
20150	}
20151	defer googleapi.CloseBody(res)
20152	if err := googleapi.CheckResponse(res); err != nil {
20153		return nil, err
20154	}
20155	ret := &AccountTax{
20156		ServerResponse: googleapi.ServerResponse{
20157			Header:         res.Header,
20158			HTTPStatusCode: res.StatusCode,
20159		},
20160	}
20161	target := &ret
20162	if err := gensupport.DecodeResponse(target, res); err != nil {
20163		return nil, err
20164	}
20165	return ret, nil
20166	// {
20167	//   "description": "Updates the tax settings of the account. Any fields that are not provided are deleted from the resource.",
20168	//   "flatPath": "{merchantId}/accounttax/{accountId}",
20169	//   "httpMethod": "PUT",
20170	//   "id": "content.accounttax.update",
20171	//   "parameterOrder": [
20172	//     "merchantId",
20173	//     "accountId"
20174	//   ],
20175	//   "parameters": {
20176	//     "accountId": {
20177	//       "description": "The ID of the account for which to get/update account tax settings.",
20178	//       "format": "uint64",
20179	//       "location": "path",
20180	//       "required": true,
20181	//       "type": "string"
20182	//     },
20183	//     "merchantId": {
20184	//       "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.",
20185	//       "format": "uint64",
20186	//       "location": "path",
20187	//       "required": true,
20188	//       "type": "string"
20189	//     }
20190	//   },
20191	//   "path": "{merchantId}/accounttax/{accountId}",
20192	//   "request": {
20193	//     "$ref": "AccountTax"
20194	//   },
20195	//   "response": {
20196	//     "$ref": "AccountTax"
20197	//   },
20198	//   "scopes": [
20199	//     "https://www.googleapis.com/auth/content"
20200	//   ]
20201	// }
20202
20203}
20204
20205// method id "content.buyongoogleprograms.get":
20206
20207type BuyongoogleprogramsGetCall struct {
20208	s            *APIService
20209	merchantId   int64
20210	regionCode   string
20211	urlParams_   gensupport.URLParams
20212	ifNoneMatch_ string
20213	ctx_         context.Context
20214	header_      http.Header
20215}
20216
20217// Get: Retrieves a status of BoG program for your Merchant Center
20218// account.
20219//
20220// - merchantId: The ID of the account.
20221// - regionCode: The Program region code ISO 3166-1 alpha-2
20222//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
20223//   US is available.
20224func (r *BuyongoogleprogramsService) Get(merchantId int64, regionCode string) *BuyongoogleprogramsGetCall {
20225	c := &BuyongoogleprogramsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20226	c.merchantId = merchantId
20227	c.regionCode = regionCode
20228	return c
20229}
20230
20231// Fields allows partial responses to be retrieved. See
20232// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20233// for more information.
20234func (c *BuyongoogleprogramsGetCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsGetCall {
20235	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20236	return c
20237}
20238
20239// IfNoneMatch sets the optional parameter which makes the operation
20240// fail if the object's ETag matches the given value. This is useful for
20241// getting updates only after the object has changed since the last
20242// request. Use googleapi.IsNotModified to check whether the response
20243// error from Do is the result of In-None-Match.
20244func (c *BuyongoogleprogramsGetCall) IfNoneMatch(entityTag string) *BuyongoogleprogramsGetCall {
20245	c.ifNoneMatch_ = entityTag
20246	return c
20247}
20248
20249// Context sets the context to be used in this call's Do method. Any
20250// pending HTTP request will be aborted if the provided context is
20251// canceled.
20252func (c *BuyongoogleprogramsGetCall) Context(ctx context.Context) *BuyongoogleprogramsGetCall {
20253	c.ctx_ = ctx
20254	return c
20255}
20256
20257// Header returns an http.Header that can be modified by the caller to
20258// add HTTP headers to the request.
20259func (c *BuyongoogleprogramsGetCall) Header() http.Header {
20260	if c.header_ == nil {
20261		c.header_ = make(http.Header)
20262	}
20263	return c.header_
20264}
20265
20266func (c *BuyongoogleprogramsGetCall) doRequest(alt string) (*http.Response, error) {
20267	reqHeaders := make(http.Header)
20268	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
20269	for k, v := range c.header_ {
20270		reqHeaders[k] = v
20271	}
20272	reqHeaders.Set("User-Agent", c.s.userAgent())
20273	if c.ifNoneMatch_ != "" {
20274		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20275	}
20276	var body io.Reader = nil
20277	c.urlParams_.Set("alt", alt)
20278	c.urlParams_.Set("prettyPrint", "false")
20279	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}")
20280	urls += "?" + c.urlParams_.Encode()
20281	req, err := http.NewRequest("GET", urls, body)
20282	if err != nil {
20283		return nil, err
20284	}
20285	req.Header = reqHeaders
20286	googleapi.Expand(req.URL, map[string]string{
20287		"merchantId": strconv.FormatInt(c.merchantId, 10),
20288		"regionCode": c.regionCode,
20289	})
20290	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20291}
20292
20293// Do executes the "content.buyongoogleprograms.get" call.
20294// Exactly one of *BuyOnGoogleProgramStatus or error will be non-nil.
20295// Any non-2xx status code is an error. Response headers are in either
20296// *BuyOnGoogleProgramStatus.ServerResponse.Header or (if a response was
20297// returned at all) in error.(*googleapi.Error).Header. Use
20298// googleapi.IsNotModified to check whether the returned error was
20299// because http.StatusNotModified was returned.
20300func (c *BuyongoogleprogramsGetCall) Do(opts ...googleapi.CallOption) (*BuyOnGoogleProgramStatus, error) {
20301	gensupport.SetOptions(c.urlParams_, opts...)
20302	res, err := c.doRequest("json")
20303	if res != nil && res.StatusCode == http.StatusNotModified {
20304		if res.Body != nil {
20305			res.Body.Close()
20306		}
20307		return nil, &googleapi.Error{
20308			Code:   res.StatusCode,
20309			Header: res.Header,
20310		}
20311	}
20312	if err != nil {
20313		return nil, err
20314	}
20315	defer googleapi.CloseBody(res)
20316	if err := googleapi.CheckResponse(res); err != nil {
20317		return nil, err
20318	}
20319	ret := &BuyOnGoogleProgramStatus{
20320		ServerResponse: googleapi.ServerResponse{
20321			Header:         res.Header,
20322			HTTPStatusCode: res.StatusCode,
20323		},
20324	}
20325	target := &ret
20326	if err := gensupport.DecodeResponse(target, res); err != nil {
20327		return nil, err
20328	}
20329	return ret, nil
20330	// {
20331	//   "description": "Retrieves a status of BoG program for your Merchant Center account.",
20332	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}",
20333	//   "httpMethod": "GET",
20334	//   "id": "content.buyongoogleprograms.get",
20335	//   "parameterOrder": [
20336	//     "merchantId",
20337	//     "regionCode"
20338	//   ],
20339	//   "parameters": {
20340	//     "merchantId": {
20341	//       "description": "Required. The ID of the account.",
20342	//       "format": "int64",
20343	//       "location": "path",
20344	//       "required": true,
20345	//       "type": "string"
20346	//     },
20347	//     "regionCode": {
20348	//       "description": "The Program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
20349	//       "location": "path",
20350	//       "required": true,
20351	//       "type": "string"
20352	//     }
20353	//   },
20354	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}",
20355	//   "response": {
20356	//     "$ref": "BuyOnGoogleProgramStatus"
20357	//   },
20358	//   "scopes": [
20359	//     "https://www.googleapis.com/auth/content"
20360	//   ]
20361	// }
20362
20363}
20364
20365// method id "content.buyongoogleprograms.onboard":
20366
20367type BuyongoogleprogramsOnboardCall struct {
20368	s                                *APIService
20369	merchantId                       int64
20370	regionCode                       string
20371	onboardbuyongoogleprogramrequest *OnboardBuyOnGoogleProgramRequest
20372	urlParams_                       gensupport.URLParams
20373	ctx_                             context.Context
20374	header_                          http.Header
20375}
20376
20377// Onboard: Onboards BoG in your Merchant Center account. By using this
20378// method, you agree to the Terms of Service
20379// (https://merchants.google.com/mc/termsofservice/transactions/US/latest).
20380// Calling this method is only possible if the authenticated account is
20381// the same as the merchant id in the request. Calling this method
20382// multiple times will only accept Terms of Service if the latest
20383// version is not currently signed.
20384//
20385// - merchantId: The ID of the account.
20386// - regionCode: The program region code ISO 3166-1 alpha-2
20387//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
20388//   US is available.
20389func (r *BuyongoogleprogramsService) Onboard(merchantId int64, regionCode string, onboardbuyongoogleprogramrequest *OnboardBuyOnGoogleProgramRequest) *BuyongoogleprogramsOnboardCall {
20390	c := &BuyongoogleprogramsOnboardCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20391	c.merchantId = merchantId
20392	c.regionCode = regionCode
20393	c.onboardbuyongoogleprogramrequest = onboardbuyongoogleprogramrequest
20394	return c
20395}
20396
20397// Fields allows partial responses to be retrieved. See
20398// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20399// for more information.
20400func (c *BuyongoogleprogramsOnboardCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsOnboardCall {
20401	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20402	return c
20403}
20404
20405// Context sets the context to be used in this call's Do method. Any
20406// pending HTTP request will be aborted if the provided context is
20407// canceled.
20408func (c *BuyongoogleprogramsOnboardCall) Context(ctx context.Context) *BuyongoogleprogramsOnboardCall {
20409	c.ctx_ = ctx
20410	return c
20411}
20412
20413// Header returns an http.Header that can be modified by the caller to
20414// add HTTP headers to the request.
20415func (c *BuyongoogleprogramsOnboardCall) Header() http.Header {
20416	if c.header_ == nil {
20417		c.header_ = make(http.Header)
20418	}
20419	return c.header_
20420}
20421
20422func (c *BuyongoogleprogramsOnboardCall) doRequest(alt string) (*http.Response, error) {
20423	reqHeaders := make(http.Header)
20424	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
20425	for k, v := range c.header_ {
20426		reqHeaders[k] = v
20427	}
20428	reqHeaders.Set("User-Agent", c.s.userAgent())
20429	var body io.Reader = nil
20430	body, err := googleapi.WithoutDataWrapper.JSONReader(c.onboardbuyongoogleprogramrequest)
20431	if err != nil {
20432		return nil, err
20433	}
20434	reqHeaders.Set("Content-Type", "application/json")
20435	c.urlParams_.Set("alt", alt)
20436	c.urlParams_.Set("prettyPrint", "false")
20437	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/onboard")
20438	urls += "?" + c.urlParams_.Encode()
20439	req, err := http.NewRequest("POST", urls, body)
20440	if err != nil {
20441		return nil, err
20442	}
20443	req.Header = reqHeaders
20444	googleapi.Expand(req.URL, map[string]string{
20445		"merchantId": strconv.FormatInt(c.merchantId, 10),
20446		"regionCode": c.regionCode,
20447	})
20448	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20449}
20450
20451// Do executes the "content.buyongoogleprograms.onboard" call.
20452func (c *BuyongoogleprogramsOnboardCall) Do(opts ...googleapi.CallOption) error {
20453	gensupport.SetOptions(c.urlParams_, opts...)
20454	res, err := c.doRequest("json")
20455	if err != nil {
20456		return err
20457	}
20458	defer googleapi.CloseBody(res)
20459	if err := googleapi.CheckResponse(res); err != nil {
20460		return err
20461	}
20462	return nil
20463	// {
20464	//   "description": "Onboards BoG 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.",
20465	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/onboard",
20466	//   "httpMethod": "POST",
20467	//   "id": "content.buyongoogleprograms.onboard",
20468	//   "parameterOrder": [
20469	//     "merchantId",
20470	//     "regionCode"
20471	//   ],
20472	//   "parameters": {
20473	//     "merchantId": {
20474	//       "description": "Required. The ID of the account.",
20475	//       "format": "int64",
20476	//       "location": "path",
20477	//       "required": true,
20478	//       "type": "string"
20479	//     },
20480	//     "regionCode": {
20481	//       "description": "The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
20482	//       "location": "path",
20483	//       "required": true,
20484	//       "type": "string"
20485	//     }
20486	//   },
20487	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/onboard",
20488	//   "request": {
20489	//     "$ref": "OnboardBuyOnGoogleProgramRequest"
20490	//   },
20491	//   "scopes": [
20492	//     "https://www.googleapis.com/auth/content"
20493	//   ]
20494	// }
20495
20496}
20497
20498// method id "content.collections.create":
20499
20500type CollectionsCreateCall struct {
20501	s          *APIService
20502	merchantId int64
20503	collection *Collection
20504	urlParams_ gensupport.URLParams
20505	ctx_       context.Context
20506	header_    http.Header
20507}
20508
20509// Create: Uploads a collection to your Merchant Center account. If a
20510// collection with the same collectionId already exists, this method
20511// updates that entry. In each update, the collection is completely
20512// replaced by the fields in the body of the update request.
20513//
20514// - merchantId: The ID of the account that contains the collection.
20515//   This account cannot be a multi-client account.
20516func (r *CollectionsService) Create(merchantId int64, collection *Collection) *CollectionsCreateCall {
20517	c := &CollectionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20518	c.merchantId = merchantId
20519	c.collection = collection
20520	return c
20521}
20522
20523// Fields allows partial responses to be retrieved. See
20524// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20525// for more information.
20526func (c *CollectionsCreateCall) Fields(s ...googleapi.Field) *CollectionsCreateCall {
20527	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20528	return c
20529}
20530
20531// Context sets the context to be used in this call's Do method. Any
20532// pending HTTP request will be aborted if the provided context is
20533// canceled.
20534func (c *CollectionsCreateCall) Context(ctx context.Context) *CollectionsCreateCall {
20535	c.ctx_ = ctx
20536	return c
20537}
20538
20539// Header returns an http.Header that can be modified by the caller to
20540// add HTTP headers to the request.
20541func (c *CollectionsCreateCall) Header() http.Header {
20542	if c.header_ == nil {
20543		c.header_ = make(http.Header)
20544	}
20545	return c.header_
20546}
20547
20548func (c *CollectionsCreateCall) doRequest(alt string) (*http.Response, error) {
20549	reqHeaders := make(http.Header)
20550	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
20551	for k, v := range c.header_ {
20552		reqHeaders[k] = v
20553	}
20554	reqHeaders.Set("User-Agent", c.s.userAgent())
20555	var body io.Reader = nil
20556	body, err := googleapi.WithoutDataWrapper.JSONReader(c.collection)
20557	if err != nil {
20558		return nil, err
20559	}
20560	reqHeaders.Set("Content-Type", "application/json")
20561	c.urlParams_.Set("alt", alt)
20562	c.urlParams_.Set("prettyPrint", "false")
20563	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections")
20564	urls += "?" + c.urlParams_.Encode()
20565	req, err := http.NewRequest("POST", urls, body)
20566	if err != nil {
20567		return nil, err
20568	}
20569	req.Header = reqHeaders
20570	googleapi.Expand(req.URL, map[string]string{
20571		"merchantId": strconv.FormatInt(c.merchantId, 10),
20572	})
20573	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20574}
20575
20576// Do executes the "content.collections.create" call.
20577// Exactly one of *Collection or error will be non-nil. Any non-2xx
20578// status code is an error. Response headers are in either
20579// *Collection.ServerResponse.Header or (if a response was returned at
20580// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20581// to check whether the returned error was because
20582// http.StatusNotModified was returned.
20583func (c *CollectionsCreateCall) Do(opts ...googleapi.CallOption) (*Collection, error) {
20584	gensupport.SetOptions(c.urlParams_, opts...)
20585	res, err := c.doRequest("json")
20586	if res != nil && res.StatusCode == http.StatusNotModified {
20587		if res.Body != nil {
20588			res.Body.Close()
20589		}
20590		return nil, &googleapi.Error{
20591			Code:   res.StatusCode,
20592			Header: res.Header,
20593		}
20594	}
20595	if err != nil {
20596		return nil, err
20597	}
20598	defer googleapi.CloseBody(res)
20599	if err := googleapi.CheckResponse(res); err != nil {
20600		return nil, err
20601	}
20602	ret := &Collection{
20603		ServerResponse: googleapi.ServerResponse{
20604			Header:         res.Header,
20605			HTTPStatusCode: res.StatusCode,
20606		},
20607	}
20608	target := &ret
20609	if err := gensupport.DecodeResponse(target, res); err != nil {
20610		return nil, err
20611	}
20612	return ret, nil
20613	// {
20614	//   "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.",
20615	//   "flatPath": "{merchantId}/collections",
20616	//   "httpMethod": "POST",
20617	//   "id": "content.collections.create",
20618	//   "parameterOrder": [
20619	//     "merchantId"
20620	//   ],
20621	//   "parameters": {
20622	//     "merchantId": {
20623	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
20624	//       "format": "int64",
20625	//       "location": "path",
20626	//       "required": true,
20627	//       "type": "string"
20628	//     }
20629	//   },
20630	//   "path": "{merchantId}/collections",
20631	//   "request": {
20632	//     "$ref": "Collection"
20633	//   },
20634	//   "response": {
20635	//     "$ref": "Collection"
20636	//   },
20637	//   "scopes": [
20638	//     "https://www.googleapis.com/auth/content"
20639	//   ]
20640	// }
20641
20642}
20643
20644// method id "content.collections.delete":
20645
20646type CollectionsDeleteCall struct {
20647	s            *APIService
20648	merchantId   int64
20649	collectionId string
20650	urlParams_   gensupport.URLParams
20651	ctx_         context.Context
20652	header_      http.Header
20653}
20654
20655// Delete: Deletes a collection from your Merchant Center account.
20656//
20657// - collectionId: The collectionId of the collection. CollectionId is
20658//   the same as the REST ID of the collection.
20659// - merchantId: The ID of the account that contains the collection.
20660//   This account cannot be a multi-client account.
20661func (r *CollectionsService) Delete(merchantId int64, collectionId string) *CollectionsDeleteCall {
20662	c := &CollectionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20663	c.merchantId = merchantId
20664	c.collectionId = collectionId
20665	return c
20666}
20667
20668// Fields allows partial responses to be retrieved. See
20669// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20670// for more information.
20671func (c *CollectionsDeleteCall) Fields(s ...googleapi.Field) *CollectionsDeleteCall {
20672	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20673	return c
20674}
20675
20676// Context sets the context to be used in this call's Do method. Any
20677// pending HTTP request will be aborted if the provided context is
20678// canceled.
20679func (c *CollectionsDeleteCall) Context(ctx context.Context) *CollectionsDeleteCall {
20680	c.ctx_ = ctx
20681	return c
20682}
20683
20684// Header returns an http.Header that can be modified by the caller to
20685// add HTTP headers to the request.
20686func (c *CollectionsDeleteCall) Header() http.Header {
20687	if c.header_ == nil {
20688		c.header_ = make(http.Header)
20689	}
20690	return c.header_
20691}
20692
20693func (c *CollectionsDeleteCall) doRequest(alt string) (*http.Response, error) {
20694	reqHeaders := make(http.Header)
20695	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
20696	for k, v := range c.header_ {
20697		reqHeaders[k] = v
20698	}
20699	reqHeaders.Set("User-Agent", c.s.userAgent())
20700	var body io.Reader = nil
20701	c.urlParams_.Set("alt", alt)
20702	c.urlParams_.Set("prettyPrint", "false")
20703	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections/{collectionId}")
20704	urls += "?" + c.urlParams_.Encode()
20705	req, err := http.NewRequest("DELETE", urls, body)
20706	if err != nil {
20707		return nil, err
20708	}
20709	req.Header = reqHeaders
20710	googleapi.Expand(req.URL, map[string]string{
20711		"merchantId":   strconv.FormatInt(c.merchantId, 10),
20712		"collectionId": c.collectionId,
20713	})
20714	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20715}
20716
20717// Do executes the "content.collections.delete" call.
20718func (c *CollectionsDeleteCall) Do(opts ...googleapi.CallOption) error {
20719	gensupport.SetOptions(c.urlParams_, opts...)
20720	res, err := c.doRequest("json")
20721	if err != nil {
20722		return err
20723	}
20724	defer googleapi.CloseBody(res)
20725	if err := googleapi.CheckResponse(res); err != nil {
20726		return err
20727	}
20728	return nil
20729	// {
20730	//   "description": "Deletes a collection from your Merchant Center account.",
20731	//   "flatPath": "{merchantId}/collections/{collectionId}",
20732	//   "httpMethod": "DELETE",
20733	//   "id": "content.collections.delete",
20734	//   "parameterOrder": [
20735	//     "merchantId",
20736	//     "collectionId"
20737	//   ],
20738	//   "parameters": {
20739	//     "collectionId": {
20740	//       "description": "Required. The collectionId of the collection. CollectionId is the same as the REST ID of the collection.",
20741	//       "location": "path",
20742	//       "required": true,
20743	//       "type": "string"
20744	//     },
20745	//     "merchantId": {
20746	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
20747	//       "format": "int64",
20748	//       "location": "path",
20749	//       "required": true,
20750	//       "type": "string"
20751	//     }
20752	//   },
20753	//   "path": "{merchantId}/collections/{collectionId}",
20754	//   "scopes": [
20755	//     "https://www.googleapis.com/auth/content"
20756	//   ]
20757	// }
20758
20759}
20760
20761// method id "content.collections.get":
20762
20763type CollectionsGetCall struct {
20764	s            *APIService
20765	merchantId   int64
20766	collectionId string
20767	urlParams_   gensupport.URLParams
20768	ifNoneMatch_ string
20769	ctx_         context.Context
20770	header_      http.Header
20771}
20772
20773// Get: Retrieves a collection from your Merchant Center account.
20774//
20775// - collectionId: The REST ID of the collection.
20776// - merchantId: The ID of the account that contains the collection.
20777//   This account cannot be a multi-client account.
20778func (r *CollectionsService) Get(merchantId int64, collectionId string) *CollectionsGetCall {
20779	c := &CollectionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20780	c.merchantId = merchantId
20781	c.collectionId = collectionId
20782	return c
20783}
20784
20785// Fields allows partial responses to be retrieved. See
20786// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20787// for more information.
20788func (c *CollectionsGetCall) Fields(s ...googleapi.Field) *CollectionsGetCall {
20789	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20790	return c
20791}
20792
20793// IfNoneMatch sets the optional parameter which makes the operation
20794// fail if the object's ETag matches the given value. This is useful for
20795// getting updates only after the object has changed since the last
20796// request. Use googleapi.IsNotModified to check whether the response
20797// error from Do is the result of In-None-Match.
20798func (c *CollectionsGetCall) IfNoneMatch(entityTag string) *CollectionsGetCall {
20799	c.ifNoneMatch_ = entityTag
20800	return c
20801}
20802
20803// Context sets the context to be used in this call's Do method. Any
20804// pending HTTP request will be aborted if the provided context is
20805// canceled.
20806func (c *CollectionsGetCall) Context(ctx context.Context) *CollectionsGetCall {
20807	c.ctx_ = ctx
20808	return c
20809}
20810
20811// Header returns an http.Header that can be modified by the caller to
20812// add HTTP headers to the request.
20813func (c *CollectionsGetCall) Header() http.Header {
20814	if c.header_ == nil {
20815		c.header_ = make(http.Header)
20816	}
20817	return c.header_
20818}
20819
20820func (c *CollectionsGetCall) doRequest(alt string) (*http.Response, error) {
20821	reqHeaders := make(http.Header)
20822	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
20823	for k, v := range c.header_ {
20824		reqHeaders[k] = v
20825	}
20826	reqHeaders.Set("User-Agent", c.s.userAgent())
20827	if c.ifNoneMatch_ != "" {
20828		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20829	}
20830	var body io.Reader = nil
20831	c.urlParams_.Set("alt", alt)
20832	c.urlParams_.Set("prettyPrint", "false")
20833	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections/{collectionId}")
20834	urls += "?" + c.urlParams_.Encode()
20835	req, err := http.NewRequest("GET", urls, body)
20836	if err != nil {
20837		return nil, err
20838	}
20839	req.Header = reqHeaders
20840	googleapi.Expand(req.URL, map[string]string{
20841		"merchantId":   strconv.FormatInt(c.merchantId, 10),
20842		"collectionId": c.collectionId,
20843	})
20844	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20845}
20846
20847// Do executes the "content.collections.get" call.
20848// Exactly one of *Collection or error will be non-nil. Any non-2xx
20849// status code is an error. Response headers are in either
20850// *Collection.ServerResponse.Header or (if a response was returned at
20851// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20852// to check whether the returned error was because
20853// http.StatusNotModified was returned.
20854func (c *CollectionsGetCall) Do(opts ...googleapi.CallOption) (*Collection, error) {
20855	gensupport.SetOptions(c.urlParams_, opts...)
20856	res, err := c.doRequest("json")
20857	if res != nil && res.StatusCode == http.StatusNotModified {
20858		if res.Body != nil {
20859			res.Body.Close()
20860		}
20861		return nil, &googleapi.Error{
20862			Code:   res.StatusCode,
20863			Header: res.Header,
20864		}
20865	}
20866	if err != nil {
20867		return nil, err
20868	}
20869	defer googleapi.CloseBody(res)
20870	if err := googleapi.CheckResponse(res); err != nil {
20871		return nil, err
20872	}
20873	ret := &Collection{
20874		ServerResponse: googleapi.ServerResponse{
20875			Header:         res.Header,
20876			HTTPStatusCode: res.StatusCode,
20877		},
20878	}
20879	target := &ret
20880	if err := gensupport.DecodeResponse(target, res); err != nil {
20881		return nil, err
20882	}
20883	return ret, nil
20884	// {
20885	//   "description": "Retrieves a collection from your Merchant Center account.",
20886	//   "flatPath": "{merchantId}/collections/{collectionId}",
20887	//   "httpMethod": "GET",
20888	//   "id": "content.collections.get",
20889	//   "parameterOrder": [
20890	//     "merchantId",
20891	//     "collectionId"
20892	//   ],
20893	//   "parameters": {
20894	//     "collectionId": {
20895	//       "description": "Required. The REST ID of the collection.",
20896	//       "location": "path",
20897	//       "required": true,
20898	//       "type": "string"
20899	//     },
20900	//     "merchantId": {
20901	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
20902	//       "format": "int64",
20903	//       "location": "path",
20904	//       "required": true,
20905	//       "type": "string"
20906	//     }
20907	//   },
20908	//   "path": "{merchantId}/collections/{collectionId}",
20909	//   "response": {
20910	//     "$ref": "Collection"
20911	//   },
20912	//   "scopes": [
20913	//     "https://www.googleapis.com/auth/content"
20914	//   ]
20915	// }
20916
20917}
20918
20919// method id "content.collections.list":
20920
20921type CollectionsListCall struct {
20922	s            *APIService
20923	merchantId   int64
20924	urlParams_   gensupport.URLParams
20925	ifNoneMatch_ string
20926	ctx_         context.Context
20927	header_      http.Header
20928}
20929
20930// List: Lists the collections in your Merchant Center account. The
20931// response might contain fewer items than specified by page_size. Rely
20932// on next_page_token to determine if there are more items to be
20933// requested.
20934//
20935// - merchantId: The ID of the account that contains the collection.
20936//   This account cannot be a multi-client account.
20937func (r *CollectionsService) List(merchantId int64) *CollectionsListCall {
20938	c := &CollectionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20939	c.merchantId = merchantId
20940	return c
20941}
20942
20943// PageSize sets the optional parameter "pageSize": The maximum number
20944// of collections to return in the response, used for paging. Defaults
20945// to 50; values above 1000 will be coerced to 1000.
20946func (c *CollectionsListCall) PageSize(pageSize int64) *CollectionsListCall {
20947	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
20948	return c
20949}
20950
20951// PageToken sets the optional parameter "pageToken": Token (if
20952// provided) to retrieve the subsequent page. All other parameters must
20953// match the original call that provided the page token.
20954func (c *CollectionsListCall) PageToken(pageToken string) *CollectionsListCall {
20955	c.urlParams_.Set("pageToken", pageToken)
20956	return c
20957}
20958
20959// Fields allows partial responses to be retrieved. See
20960// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20961// for more information.
20962func (c *CollectionsListCall) Fields(s ...googleapi.Field) *CollectionsListCall {
20963	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20964	return c
20965}
20966
20967// IfNoneMatch sets the optional parameter which makes the operation
20968// fail if the object's ETag matches the given value. This is useful for
20969// getting updates only after the object has changed since the last
20970// request. Use googleapi.IsNotModified to check whether the response
20971// error from Do is the result of In-None-Match.
20972func (c *CollectionsListCall) IfNoneMatch(entityTag string) *CollectionsListCall {
20973	c.ifNoneMatch_ = entityTag
20974	return c
20975}
20976
20977// Context sets the context to be used in this call's Do method. Any
20978// pending HTTP request will be aborted if the provided context is
20979// canceled.
20980func (c *CollectionsListCall) Context(ctx context.Context) *CollectionsListCall {
20981	c.ctx_ = ctx
20982	return c
20983}
20984
20985// Header returns an http.Header that can be modified by the caller to
20986// add HTTP headers to the request.
20987func (c *CollectionsListCall) Header() http.Header {
20988	if c.header_ == nil {
20989		c.header_ = make(http.Header)
20990	}
20991	return c.header_
20992}
20993
20994func (c *CollectionsListCall) doRequest(alt string) (*http.Response, error) {
20995	reqHeaders := make(http.Header)
20996	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
20997	for k, v := range c.header_ {
20998		reqHeaders[k] = v
20999	}
21000	reqHeaders.Set("User-Agent", c.s.userAgent())
21001	if c.ifNoneMatch_ != "" {
21002		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21003	}
21004	var body io.Reader = nil
21005	c.urlParams_.Set("alt", alt)
21006	c.urlParams_.Set("prettyPrint", "false")
21007	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections")
21008	urls += "?" + c.urlParams_.Encode()
21009	req, err := http.NewRequest("GET", urls, body)
21010	if err != nil {
21011		return nil, err
21012	}
21013	req.Header = reqHeaders
21014	googleapi.Expand(req.URL, map[string]string{
21015		"merchantId": strconv.FormatInt(c.merchantId, 10),
21016	})
21017	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21018}
21019
21020// Do executes the "content.collections.list" call.
21021// Exactly one of *ListCollectionsResponse or error will be non-nil. Any
21022// non-2xx status code is an error. Response headers are in either
21023// *ListCollectionsResponse.ServerResponse.Header or (if a response was
21024// returned at all) in error.(*googleapi.Error).Header. Use
21025// googleapi.IsNotModified to check whether the returned error was
21026// because http.StatusNotModified was returned.
21027func (c *CollectionsListCall) Do(opts ...googleapi.CallOption) (*ListCollectionsResponse, error) {
21028	gensupport.SetOptions(c.urlParams_, opts...)
21029	res, err := c.doRequest("json")
21030	if res != nil && res.StatusCode == http.StatusNotModified {
21031		if res.Body != nil {
21032			res.Body.Close()
21033		}
21034		return nil, &googleapi.Error{
21035			Code:   res.StatusCode,
21036			Header: res.Header,
21037		}
21038	}
21039	if err != nil {
21040		return nil, err
21041	}
21042	defer googleapi.CloseBody(res)
21043	if err := googleapi.CheckResponse(res); err != nil {
21044		return nil, err
21045	}
21046	ret := &ListCollectionsResponse{
21047		ServerResponse: googleapi.ServerResponse{
21048			Header:         res.Header,
21049			HTTPStatusCode: res.StatusCode,
21050		},
21051	}
21052	target := &ret
21053	if err := gensupport.DecodeResponse(target, res); err != nil {
21054		return nil, err
21055	}
21056	return ret, nil
21057	// {
21058	//   "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.",
21059	//   "flatPath": "{merchantId}/collections",
21060	//   "httpMethod": "GET",
21061	//   "id": "content.collections.list",
21062	//   "parameterOrder": [
21063	//     "merchantId"
21064	//   ],
21065	//   "parameters": {
21066	//     "merchantId": {
21067	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
21068	//       "format": "int64",
21069	//       "location": "path",
21070	//       "required": true,
21071	//       "type": "string"
21072	//     },
21073	//     "pageSize": {
21074	//       "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.",
21075	//       "format": "int32",
21076	//       "location": "query",
21077	//       "type": "integer"
21078	//     },
21079	//     "pageToken": {
21080	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
21081	//       "location": "query",
21082	//       "type": "string"
21083	//     }
21084	//   },
21085	//   "path": "{merchantId}/collections",
21086	//   "response": {
21087	//     "$ref": "ListCollectionsResponse"
21088	//   },
21089	//   "scopes": [
21090	//     "https://www.googleapis.com/auth/content"
21091	//   ]
21092	// }
21093
21094}
21095
21096// Pages invokes f for each page of results.
21097// A non-nil error returned from f will halt the iteration.
21098// The provided context supersedes any context provided to the Context method.
21099func (c *CollectionsListCall) Pages(ctx context.Context, f func(*ListCollectionsResponse) error) error {
21100	c.ctx_ = ctx
21101	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21102	for {
21103		x, err := c.Do()
21104		if err != nil {
21105			return err
21106		}
21107		if err := f(x); err != nil {
21108			return err
21109		}
21110		if x.NextPageToken == "" {
21111			return nil
21112		}
21113		c.PageToken(x.NextPageToken)
21114	}
21115}
21116
21117// method id "content.collectionstatuses.get":
21118
21119type CollectionstatusesGetCall struct {
21120	s            *APIService
21121	merchantId   int64
21122	collectionId string
21123	urlParams_   gensupport.URLParams
21124	ifNoneMatch_ string
21125	ctx_         context.Context
21126	header_      http.Header
21127}
21128
21129// Get: Gets the status of a collection from your Merchant Center
21130// account.
21131//
21132// - collectionId: The collectionId of the collection. CollectionId is
21133//   the same as the REST ID of the collection.
21134// - merchantId: The ID of the account that contains the collection.
21135//   This account cannot be a multi-client account.
21136func (r *CollectionstatusesService) Get(merchantId int64, collectionId string) *CollectionstatusesGetCall {
21137	c := &CollectionstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21138	c.merchantId = merchantId
21139	c.collectionId = collectionId
21140	return c
21141}
21142
21143// Fields allows partial responses to be retrieved. See
21144// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21145// for more information.
21146func (c *CollectionstatusesGetCall) Fields(s ...googleapi.Field) *CollectionstatusesGetCall {
21147	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21148	return c
21149}
21150
21151// IfNoneMatch sets the optional parameter which makes the operation
21152// fail if the object's ETag matches the given value. This is useful for
21153// getting updates only after the object has changed since the last
21154// request. Use googleapi.IsNotModified to check whether the response
21155// error from Do is the result of In-None-Match.
21156func (c *CollectionstatusesGetCall) IfNoneMatch(entityTag string) *CollectionstatusesGetCall {
21157	c.ifNoneMatch_ = entityTag
21158	return c
21159}
21160
21161// Context sets the context to be used in this call's Do method. Any
21162// pending HTTP request will be aborted if the provided context is
21163// canceled.
21164func (c *CollectionstatusesGetCall) Context(ctx context.Context) *CollectionstatusesGetCall {
21165	c.ctx_ = ctx
21166	return c
21167}
21168
21169// Header returns an http.Header that can be modified by the caller to
21170// add HTTP headers to the request.
21171func (c *CollectionstatusesGetCall) Header() http.Header {
21172	if c.header_ == nil {
21173		c.header_ = make(http.Header)
21174	}
21175	return c.header_
21176}
21177
21178func (c *CollectionstatusesGetCall) doRequest(alt string) (*http.Response, error) {
21179	reqHeaders := make(http.Header)
21180	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
21181	for k, v := range c.header_ {
21182		reqHeaders[k] = v
21183	}
21184	reqHeaders.Set("User-Agent", c.s.userAgent())
21185	if c.ifNoneMatch_ != "" {
21186		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21187	}
21188	var body io.Reader = nil
21189	c.urlParams_.Set("alt", alt)
21190	c.urlParams_.Set("prettyPrint", "false")
21191	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collectionstatuses/{collectionId}")
21192	urls += "?" + c.urlParams_.Encode()
21193	req, err := http.NewRequest("GET", urls, body)
21194	if err != nil {
21195		return nil, err
21196	}
21197	req.Header = reqHeaders
21198	googleapi.Expand(req.URL, map[string]string{
21199		"merchantId":   strconv.FormatInt(c.merchantId, 10),
21200		"collectionId": c.collectionId,
21201	})
21202	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21203}
21204
21205// Do executes the "content.collectionstatuses.get" call.
21206// Exactly one of *CollectionStatus or error will be non-nil. Any
21207// non-2xx status code is an error. Response headers are in either
21208// *CollectionStatus.ServerResponse.Header or (if a response was
21209// returned at all) in error.(*googleapi.Error).Header. Use
21210// googleapi.IsNotModified to check whether the returned error was
21211// because http.StatusNotModified was returned.
21212func (c *CollectionstatusesGetCall) Do(opts ...googleapi.CallOption) (*CollectionStatus, error) {
21213	gensupport.SetOptions(c.urlParams_, opts...)
21214	res, err := c.doRequest("json")
21215	if res != nil && res.StatusCode == http.StatusNotModified {
21216		if res.Body != nil {
21217			res.Body.Close()
21218		}
21219		return nil, &googleapi.Error{
21220			Code:   res.StatusCode,
21221			Header: res.Header,
21222		}
21223	}
21224	if err != nil {
21225		return nil, err
21226	}
21227	defer googleapi.CloseBody(res)
21228	if err := googleapi.CheckResponse(res); err != nil {
21229		return nil, err
21230	}
21231	ret := &CollectionStatus{
21232		ServerResponse: googleapi.ServerResponse{
21233			Header:         res.Header,
21234			HTTPStatusCode: res.StatusCode,
21235		},
21236	}
21237	target := &ret
21238	if err := gensupport.DecodeResponse(target, res); err != nil {
21239		return nil, err
21240	}
21241	return ret, nil
21242	// {
21243	//   "description": "Gets the status of a collection from your Merchant Center account.",
21244	//   "flatPath": "{merchantId}/collectionstatuses/{collectionId}",
21245	//   "httpMethod": "GET",
21246	//   "id": "content.collectionstatuses.get",
21247	//   "parameterOrder": [
21248	//     "merchantId",
21249	//     "collectionId"
21250	//   ],
21251	//   "parameters": {
21252	//     "collectionId": {
21253	//       "description": "Required. The collectionId of the collection. CollectionId is the same as the REST ID of the collection.",
21254	//       "location": "path",
21255	//       "required": true,
21256	//       "type": "string"
21257	//     },
21258	//     "merchantId": {
21259	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
21260	//       "format": "int64",
21261	//       "location": "path",
21262	//       "required": true,
21263	//       "type": "string"
21264	//     }
21265	//   },
21266	//   "path": "{merchantId}/collectionstatuses/{collectionId}",
21267	//   "response": {
21268	//     "$ref": "CollectionStatus"
21269	//   },
21270	//   "scopes": [
21271	//     "https://www.googleapis.com/auth/content"
21272	//   ]
21273	// }
21274
21275}
21276
21277// method id "content.collectionstatuses.list":
21278
21279type CollectionstatusesListCall struct {
21280	s            *APIService
21281	merchantId   int64
21282	urlParams_   gensupport.URLParams
21283	ifNoneMatch_ string
21284	ctx_         context.Context
21285	header_      http.Header
21286}
21287
21288// List: Lists the statuses of the collections in your Merchant Center
21289// account.
21290//
21291// - merchantId: The ID of the account that contains the collection.
21292//   This account cannot be a multi-client account.
21293func (r *CollectionstatusesService) List(merchantId int64) *CollectionstatusesListCall {
21294	c := &CollectionstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21295	c.merchantId = merchantId
21296	return c
21297}
21298
21299// PageSize sets the optional parameter "pageSize": The maximum number
21300// of collection statuses to return in the response, used for paging.
21301// Defaults to 50; values above 1000 will be coerced to 1000.
21302func (c *CollectionstatusesListCall) PageSize(pageSize int64) *CollectionstatusesListCall {
21303	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
21304	return c
21305}
21306
21307// PageToken sets the optional parameter "pageToken": Token (if
21308// provided) to retrieve the subsequent page. All other parameters must
21309// match the original call that provided the page token.
21310func (c *CollectionstatusesListCall) PageToken(pageToken string) *CollectionstatusesListCall {
21311	c.urlParams_.Set("pageToken", pageToken)
21312	return c
21313}
21314
21315// Fields allows partial responses to be retrieved. See
21316// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21317// for more information.
21318func (c *CollectionstatusesListCall) Fields(s ...googleapi.Field) *CollectionstatusesListCall {
21319	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21320	return c
21321}
21322
21323// IfNoneMatch sets the optional parameter which makes the operation
21324// fail if the object's ETag matches the given value. This is useful for
21325// getting updates only after the object has changed since the last
21326// request. Use googleapi.IsNotModified to check whether the response
21327// error from Do is the result of In-None-Match.
21328func (c *CollectionstatusesListCall) IfNoneMatch(entityTag string) *CollectionstatusesListCall {
21329	c.ifNoneMatch_ = entityTag
21330	return c
21331}
21332
21333// Context sets the context to be used in this call's Do method. Any
21334// pending HTTP request will be aborted if the provided context is
21335// canceled.
21336func (c *CollectionstatusesListCall) Context(ctx context.Context) *CollectionstatusesListCall {
21337	c.ctx_ = ctx
21338	return c
21339}
21340
21341// Header returns an http.Header that can be modified by the caller to
21342// add HTTP headers to the request.
21343func (c *CollectionstatusesListCall) Header() http.Header {
21344	if c.header_ == nil {
21345		c.header_ = make(http.Header)
21346	}
21347	return c.header_
21348}
21349
21350func (c *CollectionstatusesListCall) doRequest(alt string) (*http.Response, error) {
21351	reqHeaders := make(http.Header)
21352	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
21353	for k, v := range c.header_ {
21354		reqHeaders[k] = v
21355	}
21356	reqHeaders.Set("User-Agent", c.s.userAgent())
21357	if c.ifNoneMatch_ != "" {
21358		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21359	}
21360	var body io.Reader = nil
21361	c.urlParams_.Set("alt", alt)
21362	c.urlParams_.Set("prettyPrint", "false")
21363	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collectionstatuses")
21364	urls += "?" + c.urlParams_.Encode()
21365	req, err := http.NewRequest("GET", urls, body)
21366	if err != nil {
21367		return nil, err
21368	}
21369	req.Header = reqHeaders
21370	googleapi.Expand(req.URL, map[string]string{
21371		"merchantId": strconv.FormatInt(c.merchantId, 10),
21372	})
21373	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21374}
21375
21376// Do executes the "content.collectionstatuses.list" call.
21377// Exactly one of *ListCollectionStatusesResponse or error will be
21378// non-nil. Any non-2xx status code is an error. Response headers are in
21379// either *ListCollectionStatusesResponse.ServerResponse.Header or (if a
21380// response was returned at all) in error.(*googleapi.Error).Header. Use
21381// googleapi.IsNotModified to check whether the returned error was
21382// because http.StatusNotModified was returned.
21383func (c *CollectionstatusesListCall) Do(opts ...googleapi.CallOption) (*ListCollectionStatusesResponse, error) {
21384	gensupport.SetOptions(c.urlParams_, opts...)
21385	res, err := c.doRequest("json")
21386	if res != nil && res.StatusCode == http.StatusNotModified {
21387		if res.Body != nil {
21388			res.Body.Close()
21389		}
21390		return nil, &googleapi.Error{
21391			Code:   res.StatusCode,
21392			Header: res.Header,
21393		}
21394	}
21395	if err != nil {
21396		return nil, err
21397	}
21398	defer googleapi.CloseBody(res)
21399	if err := googleapi.CheckResponse(res); err != nil {
21400		return nil, err
21401	}
21402	ret := &ListCollectionStatusesResponse{
21403		ServerResponse: googleapi.ServerResponse{
21404			Header:         res.Header,
21405			HTTPStatusCode: res.StatusCode,
21406		},
21407	}
21408	target := &ret
21409	if err := gensupport.DecodeResponse(target, res); err != nil {
21410		return nil, err
21411	}
21412	return ret, nil
21413	// {
21414	//   "description": "Lists the statuses of the collections in your Merchant Center account.",
21415	//   "flatPath": "{merchantId}/collectionstatuses",
21416	//   "httpMethod": "GET",
21417	//   "id": "content.collectionstatuses.list",
21418	//   "parameterOrder": [
21419	//     "merchantId"
21420	//   ],
21421	//   "parameters": {
21422	//     "merchantId": {
21423	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
21424	//       "format": "int64",
21425	//       "location": "path",
21426	//       "required": true,
21427	//       "type": "string"
21428	//     },
21429	//     "pageSize": {
21430	//       "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.",
21431	//       "format": "int32",
21432	//       "location": "query",
21433	//       "type": "integer"
21434	//     },
21435	//     "pageToken": {
21436	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
21437	//       "location": "query",
21438	//       "type": "string"
21439	//     }
21440	//   },
21441	//   "path": "{merchantId}/collectionstatuses",
21442	//   "response": {
21443	//     "$ref": "ListCollectionStatusesResponse"
21444	//   },
21445	//   "scopes": [
21446	//     "https://www.googleapis.com/auth/content"
21447	//   ]
21448	// }
21449
21450}
21451
21452// Pages invokes f for each page of results.
21453// A non-nil error returned from f will halt the iteration.
21454// The provided context supersedes any context provided to the Context method.
21455func (c *CollectionstatusesListCall) Pages(ctx context.Context, f func(*ListCollectionStatusesResponse) error) error {
21456	c.ctx_ = ctx
21457	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21458	for {
21459		x, err := c.Do()
21460		if err != nil {
21461			return err
21462		}
21463		if err := f(x); err != nil {
21464			return err
21465		}
21466		if x.NextPageToken == "" {
21467			return nil
21468		}
21469		c.PageToken(x.NextPageToken)
21470	}
21471}
21472
21473// method id "content.csses.get":
21474
21475type CssesGetCall struct {
21476	s            *APIService
21477	cssGroupId   int64
21478	cssDomainId  int64
21479	urlParams_   gensupport.URLParams
21480	ifNoneMatch_ string
21481	ctx_         context.Context
21482	header_      http.Header
21483}
21484
21485// Get: Retrieves a single CSS domain by ID.
21486//
21487// - cssDomainId: The ID of the CSS domain to return.
21488// - cssGroupId: The ID of the managing account. If this parameter is
21489//   not the same as cssDomainId (#cssDomainId), then this ID must be a
21490//   CSS group ID and `cssDomainId` must be the ID of a CSS domain
21491//   affiliated with this group.
21492func (r *CssesService) Get(cssGroupId int64, cssDomainId int64) *CssesGetCall {
21493	c := &CssesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21494	c.cssGroupId = cssGroupId
21495	c.cssDomainId = cssDomainId
21496	return c
21497}
21498
21499// Fields allows partial responses to be retrieved. See
21500// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21501// for more information.
21502func (c *CssesGetCall) Fields(s ...googleapi.Field) *CssesGetCall {
21503	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21504	return c
21505}
21506
21507// IfNoneMatch sets the optional parameter which makes the operation
21508// fail if the object's ETag matches the given value. This is useful for
21509// getting updates only after the object has changed since the last
21510// request. Use googleapi.IsNotModified to check whether the response
21511// error from Do is the result of In-None-Match.
21512func (c *CssesGetCall) IfNoneMatch(entityTag string) *CssesGetCall {
21513	c.ifNoneMatch_ = entityTag
21514	return c
21515}
21516
21517// Context sets the context to be used in this call's Do method. Any
21518// pending HTTP request will be aborted if the provided context is
21519// canceled.
21520func (c *CssesGetCall) Context(ctx context.Context) *CssesGetCall {
21521	c.ctx_ = ctx
21522	return c
21523}
21524
21525// Header returns an http.Header that can be modified by the caller to
21526// add HTTP headers to the request.
21527func (c *CssesGetCall) Header() http.Header {
21528	if c.header_ == nil {
21529		c.header_ = make(http.Header)
21530	}
21531	return c.header_
21532}
21533
21534func (c *CssesGetCall) doRequest(alt string) (*http.Response, error) {
21535	reqHeaders := make(http.Header)
21536	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
21537	for k, v := range c.header_ {
21538		reqHeaders[k] = v
21539	}
21540	reqHeaders.Set("User-Agent", c.s.userAgent())
21541	if c.ifNoneMatch_ != "" {
21542		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21543	}
21544	var body io.Reader = nil
21545	c.urlParams_.Set("alt", alt)
21546	c.urlParams_.Set("prettyPrint", "false")
21547	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses/{cssDomainId}")
21548	urls += "?" + c.urlParams_.Encode()
21549	req, err := http.NewRequest("GET", urls, body)
21550	if err != nil {
21551		return nil, err
21552	}
21553	req.Header = reqHeaders
21554	googleapi.Expand(req.URL, map[string]string{
21555		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
21556		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
21557	})
21558	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21559}
21560
21561// Do executes the "content.csses.get" call.
21562// Exactly one of *Css or error will be non-nil. Any non-2xx status code
21563// is an error. Response headers are in either
21564// *Css.ServerResponse.Header or (if a response was returned at all) in
21565// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21566// whether the returned error was because http.StatusNotModified was
21567// returned.
21568func (c *CssesGetCall) Do(opts ...googleapi.CallOption) (*Css, error) {
21569	gensupport.SetOptions(c.urlParams_, opts...)
21570	res, err := c.doRequest("json")
21571	if res != nil && res.StatusCode == http.StatusNotModified {
21572		if res.Body != nil {
21573			res.Body.Close()
21574		}
21575		return nil, &googleapi.Error{
21576			Code:   res.StatusCode,
21577			Header: res.Header,
21578		}
21579	}
21580	if err != nil {
21581		return nil, err
21582	}
21583	defer googleapi.CloseBody(res)
21584	if err := googleapi.CheckResponse(res); err != nil {
21585		return nil, err
21586	}
21587	ret := &Css{
21588		ServerResponse: googleapi.ServerResponse{
21589			Header:         res.Header,
21590			HTTPStatusCode: res.StatusCode,
21591		},
21592	}
21593	target := &ret
21594	if err := gensupport.DecodeResponse(target, res); err != nil {
21595		return nil, err
21596	}
21597	return ret, nil
21598	// {
21599	//   "description": "Retrieves a single CSS domain by ID.",
21600	//   "flatPath": "{cssGroupId}/csses/{cssDomainId}",
21601	//   "httpMethod": "GET",
21602	//   "id": "content.csses.get",
21603	//   "parameterOrder": [
21604	//     "cssGroupId",
21605	//     "cssDomainId"
21606	//   ],
21607	//   "parameters": {
21608	//     "cssDomainId": {
21609	//       "description": "Required. The ID of the CSS domain to return.",
21610	//       "format": "int64",
21611	//       "location": "path",
21612	//       "required": true,
21613	//       "type": "string"
21614	//     },
21615	//     "cssGroupId": {
21616	//       "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.",
21617	//       "format": "int64",
21618	//       "location": "path",
21619	//       "required": true,
21620	//       "type": "string"
21621	//     }
21622	//   },
21623	//   "path": "{cssGroupId}/csses/{cssDomainId}",
21624	//   "response": {
21625	//     "$ref": "Css"
21626	//   },
21627	//   "scopes": [
21628	//     "https://www.googleapis.com/auth/content"
21629	//   ]
21630	// }
21631
21632}
21633
21634// method id "content.csses.list":
21635
21636type CssesListCall struct {
21637	s            *APIService
21638	cssGroupId   int64
21639	urlParams_   gensupport.URLParams
21640	ifNoneMatch_ string
21641	ctx_         context.Context
21642	header_      http.Header
21643}
21644
21645// List: Lists CSS domains affiliated with a CSS group.
21646//
21647// - cssGroupId: The CSS group ID of CSS domains to be listed.
21648func (r *CssesService) List(cssGroupId int64) *CssesListCall {
21649	c := &CssesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21650	c.cssGroupId = cssGroupId
21651	return c
21652}
21653
21654// PageSize sets the optional parameter "pageSize": The maximum number
21655// of CSS domains to return. The service may return fewer than this
21656// value. If unspecified, at most 50 CSS domains will be returned. The
21657// maximum value is 1000; values above 1000 will be coerced to 1000.
21658func (c *CssesListCall) PageSize(pageSize int64) *CssesListCall {
21659	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
21660	return c
21661}
21662
21663// PageToken sets the optional parameter "pageToken": A page token,
21664// received from a previous `ListCsses` call. Provide this to retrieve
21665// the subsequent page. When paginating, all other parameters provided
21666// to `ListCsses` must match the call that provided the page token.
21667func (c *CssesListCall) PageToken(pageToken string) *CssesListCall {
21668	c.urlParams_.Set("pageToken", pageToken)
21669	return c
21670}
21671
21672// Fields allows partial responses to be retrieved. See
21673// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21674// for more information.
21675func (c *CssesListCall) Fields(s ...googleapi.Field) *CssesListCall {
21676	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21677	return c
21678}
21679
21680// IfNoneMatch sets the optional parameter which makes the operation
21681// fail if the object's ETag matches the given value. This is useful for
21682// getting updates only after the object has changed since the last
21683// request. Use googleapi.IsNotModified to check whether the response
21684// error from Do is the result of In-None-Match.
21685func (c *CssesListCall) IfNoneMatch(entityTag string) *CssesListCall {
21686	c.ifNoneMatch_ = entityTag
21687	return c
21688}
21689
21690// Context sets the context to be used in this call's Do method. Any
21691// pending HTTP request will be aborted if the provided context is
21692// canceled.
21693func (c *CssesListCall) Context(ctx context.Context) *CssesListCall {
21694	c.ctx_ = ctx
21695	return c
21696}
21697
21698// Header returns an http.Header that can be modified by the caller to
21699// add HTTP headers to the request.
21700func (c *CssesListCall) Header() http.Header {
21701	if c.header_ == nil {
21702		c.header_ = make(http.Header)
21703	}
21704	return c.header_
21705}
21706
21707func (c *CssesListCall) doRequest(alt string) (*http.Response, error) {
21708	reqHeaders := make(http.Header)
21709	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
21710	for k, v := range c.header_ {
21711		reqHeaders[k] = v
21712	}
21713	reqHeaders.Set("User-Agent", c.s.userAgent())
21714	if c.ifNoneMatch_ != "" {
21715		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21716	}
21717	var body io.Reader = nil
21718	c.urlParams_.Set("alt", alt)
21719	c.urlParams_.Set("prettyPrint", "false")
21720	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses")
21721	urls += "?" + c.urlParams_.Encode()
21722	req, err := http.NewRequest("GET", urls, body)
21723	if err != nil {
21724		return nil, err
21725	}
21726	req.Header = reqHeaders
21727	googleapi.Expand(req.URL, map[string]string{
21728		"cssGroupId": strconv.FormatInt(c.cssGroupId, 10),
21729	})
21730	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21731}
21732
21733// Do executes the "content.csses.list" call.
21734// Exactly one of *ListCssesResponse or error will be non-nil. Any
21735// non-2xx status code is an error. Response headers are in either
21736// *ListCssesResponse.ServerResponse.Header or (if a response was
21737// returned at all) in error.(*googleapi.Error).Header. Use
21738// googleapi.IsNotModified to check whether the returned error was
21739// because http.StatusNotModified was returned.
21740func (c *CssesListCall) Do(opts ...googleapi.CallOption) (*ListCssesResponse, error) {
21741	gensupport.SetOptions(c.urlParams_, opts...)
21742	res, err := c.doRequest("json")
21743	if res != nil && res.StatusCode == http.StatusNotModified {
21744		if res.Body != nil {
21745			res.Body.Close()
21746		}
21747		return nil, &googleapi.Error{
21748			Code:   res.StatusCode,
21749			Header: res.Header,
21750		}
21751	}
21752	if err != nil {
21753		return nil, err
21754	}
21755	defer googleapi.CloseBody(res)
21756	if err := googleapi.CheckResponse(res); err != nil {
21757		return nil, err
21758	}
21759	ret := &ListCssesResponse{
21760		ServerResponse: googleapi.ServerResponse{
21761			Header:         res.Header,
21762			HTTPStatusCode: res.StatusCode,
21763		},
21764	}
21765	target := &ret
21766	if err := gensupport.DecodeResponse(target, res); err != nil {
21767		return nil, err
21768	}
21769	return ret, nil
21770	// {
21771	//   "description": "Lists CSS domains affiliated with a CSS group.",
21772	//   "flatPath": "{cssGroupId}/csses",
21773	//   "httpMethod": "GET",
21774	//   "id": "content.csses.list",
21775	//   "parameterOrder": [
21776	//     "cssGroupId"
21777	//   ],
21778	//   "parameters": {
21779	//     "cssGroupId": {
21780	//       "description": "Required. The CSS group ID of CSS domains to be listed.",
21781	//       "format": "int64",
21782	//       "location": "path",
21783	//       "required": true,
21784	//       "type": "string"
21785	//     },
21786	//     "pageSize": {
21787	//       "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.",
21788	//       "format": "int32",
21789	//       "location": "query",
21790	//       "type": "integer"
21791	//     },
21792	//     "pageToken": {
21793	//       "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.",
21794	//       "location": "query",
21795	//       "type": "string"
21796	//     }
21797	//   },
21798	//   "path": "{cssGroupId}/csses",
21799	//   "response": {
21800	//     "$ref": "ListCssesResponse"
21801	//   },
21802	//   "scopes": [
21803	//     "https://www.googleapis.com/auth/content"
21804	//   ]
21805	// }
21806
21807}
21808
21809// Pages invokes f for each page of results.
21810// A non-nil error returned from f will halt the iteration.
21811// The provided context supersedes any context provided to the Context method.
21812func (c *CssesListCall) Pages(ctx context.Context, f func(*ListCssesResponse) error) error {
21813	c.ctx_ = ctx
21814	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21815	for {
21816		x, err := c.Do()
21817		if err != nil {
21818			return err
21819		}
21820		if err := f(x); err != nil {
21821			return err
21822		}
21823		if x.NextPageToken == "" {
21824			return nil
21825		}
21826		c.PageToken(x.NextPageToken)
21827	}
21828}
21829
21830// method id "content.csses.updatelabels":
21831
21832type CssesUpdatelabelsCall struct {
21833	s           *APIService
21834	cssGroupId  int64
21835	cssDomainId int64
21836	labelids    *LabelIds
21837	urlParams_  gensupport.URLParams
21838	ctx_        context.Context
21839	header_     http.Header
21840}
21841
21842// Updatelabels: Updates labels that are assigned to a CSS domain by its
21843// CSS group.
21844//
21845// - cssDomainId: The ID of the updated CSS domain.
21846// - cssGroupId: The CSS group ID of the updated CSS domain.
21847func (r *CssesService) Updatelabels(cssGroupId int64, cssDomainId int64, labelids *LabelIds) *CssesUpdatelabelsCall {
21848	c := &CssesUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21849	c.cssGroupId = cssGroupId
21850	c.cssDomainId = cssDomainId
21851	c.labelids = labelids
21852	return c
21853}
21854
21855// Fields allows partial responses to be retrieved. See
21856// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21857// for more information.
21858func (c *CssesUpdatelabelsCall) Fields(s ...googleapi.Field) *CssesUpdatelabelsCall {
21859	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21860	return c
21861}
21862
21863// Context sets the context to be used in this call's Do method. Any
21864// pending HTTP request will be aborted if the provided context is
21865// canceled.
21866func (c *CssesUpdatelabelsCall) Context(ctx context.Context) *CssesUpdatelabelsCall {
21867	c.ctx_ = ctx
21868	return c
21869}
21870
21871// Header returns an http.Header that can be modified by the caller to
21872// add HTTP headers to the request.
21873func (c *CssesUpdatelabelsCall) Header() http.Header {
21874	if c.header_ == nil {
21875		c.header_ = make(http.Header)
21876	}
21877	return c.header_
21878}
21879
21880func (c *CssesUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
21881	reqHeaders := make(http.Header)
21882	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
21883	for k, v := range c.header_ {
21884		reqHeaders[k] = v
21885	}
21886	reqHeaders.Set("User-Agent", c.s.userAgent())
21887	var body io.Reader = nil
21888	body, err := googleapi.WithoutDataWrapper.JSONReader(c.labelids)
21889	if err != nil {
21890		return nil, err
21891	}
21892	reqHeaders.Set("Content-Type", "application/json")
21893	c.urlParams_.Set("alt", alt)
21894	c.urlParams_.Set("prettyPrint", "false")
21895	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses/{cssDomainId}/updatelabels")
21896	urls += "?" + c.urlParams_.Encode()
21897	req, err := http.NewRequest("POST", urls, body)
21898	if err != nil {
21899		return nil, err
21900	}
21901	req.Header = reqHeaders
21902	googleapi.Expand(req.URL, map[string]string{
21903		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
21904		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
21905	})
21906	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21907}
21908
21909// Do executes the "content.csses.updatelabels" call.
21910// Exactly one of *Css or error will be non-nil. Any non-2xx status code
21911// is an error. Response headers are in either
21912// *Css.ServerResponse.Header or (if a response was returned at all) in
21913// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21914// whether the returned error was because http.StatusNotModified was
21915// returned.
21916func (c *CssesUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*Css, error) {
21917	gensupport.SetOptions(c.urlParams_, opts...)
21918	res, err := c.doRequest("json")
21919	if res != nil && res.StatusCode == http.StatusNotModified {
21920		if res.Body != nil {
21921			res.Body.Close()
21922		}
21923		return nil, &googleapi.Error{
21924			Code:   res.StatusCode,
21925			Header: res.Header,
21926		}
21927	}
21928	if err != nil {
21929		return nil, err
21930	}
21931	defer googleapi.CloseBody(res)
21932	if err := googleapi.CheckResponse(res); err != nil {
21933		return nil, err
21934	}
21935	ret := &Css{
21936		ServerResponse: googleapi.ServerResponse{
21937			Header:         res.Header,
21938			HTTPStatusCode: res.StatusCode,
21939		},
21940	}
21941	target := &ret
21942	if err := gensupport.DecodeResponse(target, res); err != nil {
21943		return nil, err
21944	}
21945	return ret, nil
21946	// {
21947	//   "description": "Updates labels that are assigned to a CSS domain by its CSS group.",
21948	//   "flatPath": "{cssGroupId}/csses/{cssDomainId}/updatelabels",
21949	//   "httpMethod": "POST",
21950	//   "id": "content.csses.updatelabels",
21951	//   "parameterOrder": [
21952	//     "cssGroupId",
21953	//     "cssDomainId"
21954	//   ],
21955	//   "parameters": {
21956	//     "cssDomainId": {
21957	//       "description": "Required. The ID of the updated CSS domain.",
21958	//       "format": "int64",
21959	//       "location": "path",
21960	//       "required": true,
21961	//       "type": "string"
21962	//     },
21963	//     "cssGroupId": {
21964	//       "description": "Required. The CSS group ID of the updated CSS domain.",
21965	//       "format": "int64",
21966	//       "location": "path",
21967	//       "required": true,
21968	//       "type": "string"
21969	//     }
21970	//   },
21971	//   "path": "{cssGroupId}/csses/{cssDomainId}/updatelabels",
21972	//   "request": {
21973	//     "$ref": "LabelIds"
21974	//   },
21975	//   "response": {
21976	//     "$ref": "Css"
21977	//   },
21978	//   "scopes": [
21979	//     "https://www.googleapis.com/auth/content"
21980	//   ]
21981	// }
21982
21983}
21984
21985// method id "content.datafeeds.custombatch":
21986
21987type DatafeedsCustombatchCall struct {
21988	s                           *APIService
21989	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
21990	urlParams_                  gensupport.URLParams
21991	ctx_                        context.Context
21992	header_                     http.Header
21993}
21994
21995// Custombatch: Deletes, fetches, gets, inserts and updates multiple
21996// datafeeds in a single request.
21997func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
21998	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21999	c.datafeedscustombatchrequest = datafeedscustombatchrequest
22000	return c
22001}
22002
22003// Fields allows partial responses to be retrieved. See
22004// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22005// for more information.
22006func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
22007	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22008	return c
22009}
22010
22011// Context sets the context to be used in this call's Do method. Any
22012// pending HTTP request will be aborted if the provided context is
22013// canceled.
22014func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
22015	c.ctx_ = ctx
22016	return c
22017}
22018
22019// Header returns an http.Header that can be modified by the caller to
22020// add HTTP headers to the request.
22021func (c *DatafeedsCustombatchCall) Header() http.Header {
22022	if c.header_ == nil {
22023		c.header_ = make(http.Header)
22024	}
22025	return c.header_
22026}
22027
22028func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
22029	reqHeaders := make(http.Header)
22030	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
22031	for k, v := range c.header_ {
22032		reqHeaders[k] = v
22033	}
22034	reqHeaders.Set("User-Agent", c.s.userAgent())
22035	var body io.Reader = nil
22036	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
22037	if err != nil {
22038		return nil, err
22039	}
22040	reqHeaders.Set("Content-Type", "application/json")
22041	c.urlParams_.Set("alt", alt)
22042	c.urlParams_.Set("prettyPrint", "false")
22043	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeeds/batch")
22044	urls += "?" + c.urlParams_.Encode()
22045	req, err := http.NewRequest("POST", urls, body)
22046	if err != nil {
22047		return nil, err
22048	}
22049	req.Header = reqHeaders
22050	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22051}
22052
22053// Do executes the "content.datafeeds.custombatch" call.
22054// Exactly one of *DatafeedsCustomBatchResponse or error will be
22055// non-nil. Any non-2xx status code is an error. Response headers are in
22056// either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
22057// response was returned at all) in error.(*googleapi.Error).Header. Use
22058// googleapi.IsNotModified to check whether the returned error was
22059// because http.StatusNotModified was returned.
22060func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
22061	gensupport.SetOptions(c.urlParams_, opts...)
22062	res, err := c.doRequest("json")
22063	if res != nil && res.StatusCode == http.StatusNotModified {
22064		if res.Body != nil {
22065			res.Body.Close()
22066		}
22067		return nil, &googleapi.Error{
22068			Code:   res.StatusCode,
22069			Header: res.Header,
22070		}
22071	}
22072	if err != nil {
22073		return nil, err
22074	}
22075	defer googleapi.CloseBody(res)
22076	if err := googleapi.CheckResponse(res); err != nil {
22077		return nil, err
22078	}
22079	ret := &DatafeedsCustomBatchResponse{
22080		ServerResponse: googleapi.ServerResponse{
22081			Header:         res.Header,
22082			HTTPStatusCode: res.StatusCode,
22083		},
22084	}
22085	target := &ret
22086	if err := gensupport.DecodeResponse(target, res); err != nil {
22087		return nil, err
22088	}
22089	return ret, nil
22090	// {
22091	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
22092	//   "flatPath": "datafeeds/batch",
22093	//   "httpMethod": "POST",
22094	//   "id": "content.datafeeds.custombatch",
22095	//   "parameterOrder": [],
22096	//   "parameters": {},
22097	//   "path": "datafeeds/batch",
22098	//   "request": {
22099	//     "$ref": "DatafeedsCustomBatchRequest"
22100	//   },
22101	//   "response": {
22102	//     "$ref": "DatafeedsCustomBatchResponse"
22103	//   },
22104	//   "scopes": [
22105	//     "https://www.googleapis.com/auth/content"
22106	//   ]
22107	// }
22108
22109}
22110
22111// method id "content.datafeeds.delete":
22112
22113type DatafeedsDeleteCall struct {
22114	s          *APIService
22115	merchantId uint64
22116	datafeedId uint64
22117	urlParams_ gensupport.URLParams
22118	ctx_       context.Context
22119	header_    http.Header
22120}
22121
22122// Delete: Deletes a datafeed configuration from your Merchant Center
22123// account.
22124//
22125// - datafeedId: The ID of the datafeed.
22126// - merchantId: The ID of the account that manages the datafeed. This
22127//   account cannot be a multi-client account.
22128func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
22129	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22130	c.merchantId = merchantId
22131	c.datafeedId = datafeedId
22132	return c
22133}
22134
22135// Fields allows partial responses to be retrieved. See
22136// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22137// for more information.
22138func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
22139	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22140	return c
22141}
22142
22143// Context sets the context to be used in this call's Do method. Any
22144// pending HTTP request will be aborted if the provided context is
22145// canceled.
22146func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
22147	c.ctx_ = ctx
22148	return c
22149}
22150
22151// Header returns an http.Header that can be modified by the caller to
22152// add HTTP headers to the request.
22153func (c *DatafeedsDeleteCall) Header() http.Header {
22154	if c.header_ == nil {
22155		c.header_ = make(http.Header)
22156	}
22157	return c.header_
22158}
22159
22160func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
22161	reqHeaders := make(http.Header)
22162	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
22163	for k, v := range c.header_ {
22164		reqHeaders[k] = v
22165	}
22166	reqHeaders.Set("User-Agent", c.s.userAgent())
22167	var body io.Reader = nil
22168	c.urlParams_.Set("alt", alt)
22169	c.urlParams_.Set("prettyPrint", "false")
22170	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
22171	urls += "?" + c.urlParams_.Encode()
22172	req, err := http.NewRequest("DELETE", urls, body)
22173	if err != nil {
22174		return nil, err
22175	}
22176	req.Header = reqHeaders
22177	googleapi.Expand(req.URL, map[string]string{
22178		"merchantId": strconv.FormatUint(c.merchantId, 10),
22179		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
22180	})
22181	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22182}
22183
22184// Do executes the "content.datafeeds.delete" call.
22185func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
22186	gensupport.SetOptions(c.urlParams_, opts...)
22187	res, err := c.doRequest("json")
22188	if err != nil {
22189		return err
22190	}
22191	defer googleapi.CloseBody(res)
22192	if err := googleapi.CheckResponse(res); err != nil {
22193		return err
22194	}
22195	return nil
22196	// {
22197	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
22198	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
22199	//   "httpMethod": "DELETE",
22200	//   "id": "content.datafeeds.delete",
22201	//   "parameterOrder": [
22202	//     "merchantId",
22203	//     "datafeedId"
22204	//   ],
22205	//   "parameters": {
22206	//     "datafeedId": {
22207	//       "description": "The ID of the datafeed.",
22208	//       "format": "uint64",
22209	//       "location": "path",
22210	//       "required": true,
22211	//       "type": "string"
22212	//     },
22213	//     "merchantId": {
22214	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
22215	//       "format": "uint64",
22216	//       "location": "path",
22217	//       "required": true,
22218	//       "type": "string"
22219	//     }
22220	//   },
22221	//   "path": "{merchantId}/datafeeds/{datafeedId}",
22222	//   "scopes": [
22223	//     "https://www.googleapis.com/auth/content"
22224	//   ]
22225	// }
22226
22227}
22228
22229// method id "content.datafeeds.fetchnow":
22230
22231type DatafeedsFetchnowCall struct {
22232	s          *APIService
22233	merchantId uint64
22234	datafeedId uint64
22235	urlParams_ gensupport.URLParams
22236	ctx_       context.Context
22237	header_    http.Header
22238}
22239
22240// Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
22241// account. If you need to call this method more than once per day, we
22242// recommend you use the Products service to update your product data.
22243//
22244// - datafeedId: The ID of the datafeed to be fetched.
22245// - merchantId: The ID of the account that manages the datafeed. This
22246//   account cannot be a multi-client account.
22247func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
22248	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22249	c.merchantId = merchantId
22250	c.datafeedId = datafeedId
22251	return c
22252}
22253
22254// Fields allows partial responses to be retrieved. See
22255// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22256// for more information.
22257func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
22258	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22259	return c
22260}
22261
22262// Context sets the context to be used in this call's Do method. Any
22263// pending HTTP request will be aborted if the provided context is
22264// canceled.
22265func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
22266	c.ctx_ = ctx
22267	return c
22268}
22269
22270// Header returns an http.Header that can be modified by the caller to
22271// add HTTP headers to the request.
22272func (c *DatafeedsFetchnowCall) Header() http.Header {
22273	if c.header_ == nil {
22274		c.header_ = make(http.Header)
22275	}
22276	return c.header_
22277}
22278
22279func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
22280	reqHeaders := make(http.Header)
22281	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
22282	for k, v := range c.header_ {
22283		reqHeaders[k] = v
22284	}
22285	reqHeaders.Set("User-Agent", c.s.userAgent())
22286	var body io.Reader = nil
22287	c.urlParams_.Set("alt", alt)
22288	c.urlParams_.Set("prettyPrint", "false")
22289	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}/fetchNow")
22290	urls += "?" + c.urlParams_.Encode()
22291	req, err := http.NewRequest("POST", urls, body)
22292	if err != nil {
22293		return nil, err
22294	}
22295	req.Header = reqHeaders
22296	googleapi.Expand(req.URL, map[string]string{
22297		"merchantId": strconv.FormatUint(c.merchantId, 10),
22298		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
22299	})
22300	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22301}
22302
22303// Do executes the "content.datafeeds.fetchnow" call.
22304// Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
22305// Any non-2xx status code is an error. Response headers are in either
22306// *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
22307// was returned at all) in error.(*googleapi.Error).Header. Use
22308// googleapi.IsNotModified to check whether the returned error was
22309// because http.StatusNotModified was returned.
22310func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
22311	gensupport.SetOptions(c.urlParams_, opts...)
22312	res, err := c.doRequest("json")
22313	if res != nil && res.StatusCode == http.StatusNotModified {
22314		if res.Body != nil {
22315			res.Body.Close()
22316		}
22317		return nil, &googleapi.Error{
22318			Code:   res.StatusCode,
22319			Header: res.Header,
22320		}
22321	}
22322	if err != nil {
22323		return nil, err
22324	}
22325	defer googleapi.CloseBody(res)
22326	if err := googleapi.CheckResponse(res); err != nil {
22327		return nil, err
22328	}
22329	ret := &DatafeedsFetchNowResponse{
22330		ServerResponse: googleapi.ServerResponse{
22331			Header:         res.Header,
22332			HTTPStatusCode: res.StatusCode,
22333		},
22334	}
22335	target := &ret
22336	if err := gensupport.DecodeResponse(target, res); err != nil {
22337		return nil, err
22338	}
22339	return ret, nil
22340	// {
22341	//   "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.",
22342	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
22343	//   "httpMethod": "POST",
22344	//   "id": "content.datafeeds.fetchnow",
22345	//   "parameterOrder": [
22346	//     "merchantId",
22347	//     "datafeedId"
22348	//   ],
22349	//   "parameters": {
22350	//     "datafeedId": {
22351	//       "description": "The ID of the datafeed to be fetched.",
22352	//       "format": "uint64",
22353	//       "location": "path",
22354	//       "required": true,
22355	//       "type": "string"
22356	//     },
22357	//     "merchantId": {
22358	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
22359	//       "format": "uint64",
22360	//       "location": "path",
22361	//       "required": true,
22362	//       "type": "string"
22363	//     }
22364	//   },
22365	//   "path": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
22366	//   "response": {
22367	//     "$ref": "DatafeedsFetchNowResponse"
22368	//   },
22369	//   "scopes": [
22370	//     "https://www.googleapis.com/auth/content"
22371	//   ]
22372	// }
22373
22374}
22375
22376// method id "content.datafeeds.get":
22377
22378type DatafeedsGetCall struct {
22379	s            *APIService
22380	merchantId   uint64
22381	datafeedId   uint64
22382	urlParams_   gensupport.URLParams
22383	ifNoneMatch_ string
22384	ctx_         context.Context
22385	header_      http.Header
22386}
22387
22388// Get: Retrieves a datafeed configuration from your Merchant Center
22389// account.
22390//
22391// - datafeedId: The ID of the datafeed.
22392// - merchantId: The ID of the account that manages the datafeed. This
22393//   account cannot be a multi-client account.
22394func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
22395	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22396	c.merchantId = merchantId
22397	c.datafeedId = datafeedId
22398	return c
22399}
22400
22401// Fields allows partial responses to be retrieved. See
22402// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22403// for more information.
22404func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
22405	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22406	return c
22407}
22408
22409// IfNoneMatch sets the optional parameter which makes the operation
22410// fail if the object's ETag matches the given value. This is useful for
22411// getting updates only after the object has changed since the last
22412// request. Use googleapi.IsNotModified to check whether the response
22413// error from Do is the result of In-None-Match.
22414func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
22415	c.ifNoneMatch_ = entityTag
22416	return c
22417}
22418
22419// Context sets the context to be used in this call's Do method. Any
22420// pending HTTP request will be aborted if the provided context is
22421// canceled.
22422func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
22423	c.ctx_ = ctx
22424	return c
22425}
22426
22427// Header returns an http.Header that can be modified by the caller to
22428// add HTTP headers to the request.
22429func (c *DatafeedsGetCall) Header() http.Header {
22430	if c.header_ == nil {
22431		c.header_ = make(http.Header)
22432	}
22433	return c.header_
22434}
22435
22436func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
22437	reqHeaders := make(http.Header)
22438	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
22439	for k, v := range c.header_ {
22440		reqHeaders[k] = v
22441	}
22442	reqHeaders.Set("User-Agent", c.s.userAgent())
22443	if c.ifNoneMatch_ != "" {
22444		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22445	}
22446	var body io.Reader = nil
22447	c.urlParams_.Set("alt", alt)
22448	c.urlParams_.Set("prettyPrint", "false")
22449	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
22450	urls += "?" + c.urlParams_.Encode()
22451	req, err := http.NewRequest("GET", urls, body)
22452	if err != nil {
22453		return nil, err
22454	}
22455	req.Header = reqHeaders
22456	googleapi.Expand(req.URL, map[string]string{
22457		"merchantId": strconv.FormatUint(c.merchantId, 10),
22458		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
22459	})
22460	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22461}
22462
22463// Do executes the "content.datafeeds.get" call.
22464// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
22465// code is an error. Response headers are in either
22466// *Datafeed.ServerResponse.Header or (if a response was returned at
22467// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22468// to check whether the returned error was because
22469// http.StatusNotModified was returned.
22470func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
22471	gensupport.SetOptions(c.urlParams_, opts...)
22472	res, err := c.doRequest("json")
22473	if res != nil && res.StatusCode == http.StatusNotModified {
22474		if res.Body != nil {
22475			res.Body.Close()
22476		}
22477		return nil, &googleapi.Error{
22478			Code:   res.StatusCode,
22479			Header: res.Header,
22480		}
22481	}
22482	if err != nil {
22483		return nil, err
22484	}
22485	defer googleapi.CloseBody(res)
22486	if err := googleapi.CheckResponse(res); err != nil {
22487		return nil, err
22488	}
22489	ret := &Datafeed{
22490		ServerResponse: googleapi.ServerResponse{
22491			Header:         res.Header,
22492			HTTPStatusCode: res.StatusCode,
22493		},
22494	}
22495	target := &ret
22496	if err := gensupport.DecodeResponse(target, res); err != nil {
22497		return nil, err
22498	}
22499	return ret, nil
22500	// {
22501	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
22502	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
22503	//   "httpMethod": "GET",
22504	//   "id": "content.datafeeds.get",
22505	//   "parameterOrder": [
22506	//     "merchantId",
22507	//     "datafeedId"
22508	//   ],
22509	//   "parameters": {
22510	//     "datafeedId": {
22511	//       "description": "The ID of the datafeed.",
22512	//       "format": "uint64",
22513	//       "location": "path",
22514	//       "required": true,
22515	//       "type": "string"
22516	//     },
22517	//     "merchantId": {
22518	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
22519	//       "format": "uint64",
22520	//       "location": "path",
22521	//       "required": true,
22522	//       "type": "string"
22523	//     }
22524	//   },
22525	//   "path": "{merchantId}/datafeeds/{datafeedId}",
22526	//   "response": {
22527	//     "$ref": "Datafeed"
22528	//   },
22529	//   "scopes": [
22530	//     "https://www.googleapis.com/auth/content"
22531	//   ]
22532	// }
22533
22534}
22535
22536// method id "content.datafeeds.insert":
22537
22538type DatafeedsInsertCall struct {
22539	s          *APIService
22540	merchantId uint64
22541	datafeed   *Datafeed
22542	urlParams_ gensupport.URLParams
22543	ctx_       context.Context
22544	header_    http.Header
22545}
22546
22547// Insert: Registers a datafeed configuration with your Merchant Center
22548// account.
22549//
22550// - merchantId: The ID of the account that manages the datafeed. This
22551//   account cannot be a multi-client account.
22552func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
22553	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22554	c.merchantId = merchantId
22555	c.datafeed = datafeed
22556	return c
22557}
22558
22559// Fields allows partial responses to be retrieved. See
22560// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22561// for more information.
22562func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
22563	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22564	return c
22565}
22566
22567// Context sets the context to be used in this call's Do method. Any
22568// pending HTTP request will be aborted if the provided context is
22569// canceled.
22570func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
22571	c.ctx_ = ctx
22572	return c
22573}
22574
22575// Header returns an http.Header that can be modified by the caller to
22576// add HTTP headers to the request.
22577func (c *DatafeedsInsertCall) Header() http.Header {
22578	if c.header_ == nil {
22579		c.header_ = make(http.Header)
22580	}
22581	return c.header_
22582}
22583
22584func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
22585	reqHeaders := make(http.Header)
22586	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
22587	for k, v := range c.header_ {
22588		reqHeaders[k] = v
22589	}
22590	reqHeaders.Set("User-Agent", c.s.userAgent())
22591	var body io.Reader = nil
22592	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
22593	if err != nil {
22594		return nil, err
22595	}
22596	reqHeaders.Set("Content-Type", "application/json")
22597	c.urlParams_.Set("alt", alt)
22598	c.urlParams_.Set("prettyPrint", "false")
22599	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
22600	urls += "?" + c.urlParams_.Encode()
22601	req, err := http.NewRequest("POST", urls, body)
22602	if err != nil {
22603		return nil, err
22604	}
22605	req.Header = reqHeaders
22606	googleapi.Expand(req.URL, map[string]string{
22607		"merchantId": strconv.FormatUint(c.merchantId, 10),
22608	})
22609	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22610}
22611
22612// Do executes the "content.datafeeds.insert" call.
22613// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
22614// code is an error. Response headers are in either
22615// *Datafeed.ServerResponse.Header or (if a response was returned at
22616// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22617// to check whether the returned error was because
22618// http.StatusNotModified was returned.
22619func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
22620	gensupport.SetOptions(c.urlParams_, opts...)
22621	res, err := c.doRequest("json")
22622	if res != nil && res.StatusCode == http.StatusNotModified {
22623		if res.Body != nil {
22624			res.Body.Close()
22625		}
22626		return nil, &googleapi.Error{
22627			Code:   res.StatusCode,
22628			Header: res.Header,
22629		}
22630	}
22631	if err != nil {
22632		return nil, err
22633	}
22634	defer googleapi.CloseBody(res)
22635	if err := googleapi.CheckResponse(res); err != nil {
22636		return nil, err
22637	}
22638	ret := &Datafeed{
22639		ServerResponse: googleapi.ServerResponse{
22640			Header:         res.Header,
22641			HTTPStatusCode: res.StatusCode,
22642		},
22643	}
22644	target := &ret
22645	if err := gensupport.DecodeResponse(target, res); err != nil {
22646		return nil, err
22647	}
22648	return ret, nil
22649	// {
22650	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
22651	//   "flatPath": "{merchantId}/datafeeds",
22652	//   "httpMethod": "POST",
22653	//   "id": "content.datafeeds.insert",
22654	//   "parameterOrder": [
22655	//     "merchantId"
22656	//   ],
22657	//   "parameters": {
22658	//     "merchantId": {
22659	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
22660	//       "format": "uint64",
22661	//       "location": "path",
22662	//       "required": true,
22663	//       "type": "string"
22664	//     }
22665	//   },
22666	//   "path": "{merchantId}/datafeeds",
22667	//   "request": {
22668	//     "$ref": "Datafeed"
22669	//   },
22670	//   "response": {
22671	//     "$ref": "Datafeed"
22672	//   },
22673	//   "scopes": [
22674	//     "https://www.googleapis.com/auth/content"
22675	//   ]
22676	// }
22677
22678}
22679
22680// method id "content.datafeeds.list":
22681
22682type DatafeedsListCall struct {
22683	s            *APIService
22684	merchantId   uint64
22685	urlParams_   gensupport.URLParams
22686	ifNoneMatch_ string
22687	ctx_         context.Context
22688	header_      http.Header
22689}
22690
22691// List: Lists the configurations for datafeeds in your Merchant Center
22692// account.
22693//
22694// - merchantId: The ID of the account that manages the datafeeds. This
22695//   account cannot be a multi-client account.
22696func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
22697	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22698	c.merchantId = merchantId
22699	return c
22700}
22701
22702// MaxResults sets the optional parameter "maxResults": The maximum
22703// number of products to return in the response, used for paging.
22704func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
22705	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
22706	return c
22707}
22708
22709// PageToken sets the optional parameter "pageToken": The token returned
22710// by the previous request.
22711func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
22712	c.urlParams_.Set("pageToken", pageToken)
22713	return c
22714}
22715
22716// Fields allows partial responses to be retrieved. See
22717// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22718// for more information.
22719func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
22720	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22721	return c
22722}
22723
22724// IfNoneMatch sets the optional parameter which makes the operation
22725// fail if the object's ETag matches the given value. This is useful for
22726// getting updates only after the object has changed since the last
22727// request. Use googleapi.IsNotModified to check whether the response
22728// error from Do is the result of In-None-Match.
22729func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
22730	c.ifNoneMatch_ = entityTag
22731	return c
22732}
22733
22734// Context sets the context to be used in this call's Do method. Any
22735// pending HTTP request will be aborted if the provided context is
22736// canceled.
22737func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
22738	c.ctx_ = ctx
22739	return c
22740}
22741
22742// Header returns an http.Header that can be modified by the caller to
22743// add HTTP headers to the request.
22744func (c *DatafeedsListCall) Header() http.Header {
22745	if c.header_ == nil {
22746		c.header_ = make(http.Header)
22747	}
22748	return c.header_
22749}
22750
22751func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
22752	reqHeaders := make(http.Header)
22753	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
22754	for k, v := range c.header_ {
22755		reqHeaders[k] = v
22756	}
22757	reqHeaders.Set("User-Agent", c.s.userAgent())
22758	if c.ifNoneMatch_ != "" {
22759		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22760	}
22761	var body io.Reader = nil
22762	c.urlParams_.Set("alt", alt)
22763	c.urlParams_.Set("prettyPrint", "false")
22764	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
22765	urls += "?" + c.urlParams_.Encode()
22766	req, err := http.NewRequest("GET", urls, body)
22767	if err != nil {
22768		return nil, err
22769	}
22770	req.Header = reqHeaders
22771	googleapi.Expand(req.URL, map[string]string{
22772		"merchantId": strconv.FormatUint(c.merchantId, 10),
22773	})
22774	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22775}
22776
22777// Do executes the "content.datafeeds.list" call.
22778// Exactly one of *DatafeedsListResponse or error will be non-nil. Any
22779// non-2xx status code is an error. Response headers are in either
22780// *DatafeedsListResponse.ServerResponse.Header or (if a response was
22781// returned at all) in error.(*googleapi.Error).Header. Use
22782// googleapi.IsNotModified to check whether the returned error was
22783// because http.StatusNotModified was returned.
22784func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
22785	gensupport.SetOptions(c.urlParams_, opts...)
22786	res, err := c.doRequest("json")
22787	if res != nil && res.StatusCode == http.StatusNotModified {
22788		if res.Body != nil {
22789			res.Body.Close()
22790		}
22791		return nil, &googleapi.Error{
22792			Code:   res.StatusCode,
22793			Header: res.Header,
22794		}
22795	}
22796	if err != nil {
22797		return nil, err
22798	}
22799	defer googleapi.CloseBody(res)
22800	if err := googleapi.CheckResponse(res); err != nil {
22801		return nil, err
22802	}
22803	ret := &DatafeedsListResponse{
22804		ServerResponse: googleapi.ServerResponse{
22805			Header:         res.Header,
22806			HTTPStatusCode: res.StatusCode,
22807		},
22808	}
22809	target := &ret
22810	if err := gensupport.DecodeResponse(target, res); err != nil {
22811		return nil, err
22812	}
22813	return ret, nil
22814	// {
22815	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
22816	//   "flatPath": "{merchantId}/datafeeds",
22817	//   "httpMethod": "GET",
22818	//   "id": "content.datafeeds.list",
22819	//   "parameterOrder": [
22820	//     "merchantId"
22821	//   ],
22822	//   "parameters": {
22823	//     "maxResults": {
22824	//       "description": "The maximum number of products to return in the response, used for paging.",
22825	//       "format": "uint32",
22826	//       "location": "query",
22827	//       "type": "integer"
22828	//     },
22829	//     "merchantId": {
22830	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
22831	//       "format": "uint64",
22832	//       "location": "path",
22833	//       "required": true,
22834	//       "type": "string"
22835	//     },
22836	//     "pageToken": {
22837	//       "description": "The token returned by the previous request.",
22838	//       "location": "query",
22839	//       "type": "string"
22840	//     }
22841	//   },
22842	//   "path": "{merchantId}/datafeeds",
22843	//   "response": {
22844	//     "$ref": "DatafeedsListResponse"
22845	//   },
22846	//   "scopes": [
22847	//     "https://www.googleapis.com/auth/content"
22848	//   ]
22849	// }
22850
22851}
22852
22853// Pages invokes f for each page of results.
22854// A non-nil error returned from f will halt the iteration.
22855// The provided context supersedes any context provided to the Context method.
22856func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
22857	c.ctx_ = ctx
22858	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22859	for {
22860		x, err := c.Do()
22861		if err != nil {
22862			return err
22863		}
22864		if err := f(x); err != nil {
22865			return err
22866		}
22867		if x.NextPageToken == "" {
22868			return nil
22869		}
22870		c.PageToken(x.NextPageToken)
22871	}
22872}
22873
22874// method id "content.datafeeds.update":
22875
22876type DatafeedsUpdateCall struct {
22877	s          *APIService
22878	merchantId uint64
22879	datafeedId uint64
22880	datafeed   *Datafeed
22881	urlParams_ gensupport.URLParams
22882	ctx_       context.Context
22883	header_    http.Header
22884}
22885
22886// Update: Updates a datafeed configuration of your Merchant Center
22887// account. Any fields that are not provided are deleted from the
22888// resource.
22889//
22890// - datafeedId: The ID of the datafeed.
22891// - merchantId: The ID of the account that manages the datafeed. This
22892//   account cannot be a multi-client account.
22893func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
22894	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22895	c.merchantId = merchantId
22896	c.datafeedId = datafeedId
22897	c.datafeed = datafeed
22898	return c
22899}
22900
22901// Fields allows partial responses to be retrieved. See
22902// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22903// for more information.
22904func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
22905	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22906	return c
22907}
22908
22909// Context sets the context to be used in this call's Do method. Any
22910// pending HTTP request will be aborted if the provided context is
22911// canceled.
22912func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
22913	c.ctx_ = ctx
22914	return c
22915}
22916
22917// Header returns an http.Header that can be modified by the caller to
22918// add HTTP headers to the request.
22919func (c *DatafeedsUpdateCall) Header() http.Header {
22920	if c.header_ == nil {
22921		c.header_ = make(http.Header)
22922	}
22923	return c.header_
22924}
22925
22926func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
22927	reqHeaders := make(http.Header)
22928	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
22929	for k, v := range c.header_ {
22930		reqHeaders[k] = v
22931	}
22932	reqHeaders.Set("User-Agent", c.s.userAgent())
22933	var body io.Reader = nil
22934	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
22935	if err != nil {
22936		return nil, err
22937	}
22938	reqHeaders.Set("Content-Type", "application/json")
22939	c.urlParams_.Set("alt", alt)
22940	c.urlParams_.Set("prettyPrint", "false")
22941	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
22942	urls += "?" + c.urlParams_.Encode()
22943	req, err := http.NewRequest("PUT", urls, body)
22944	if err != nil {
22945		return nil, err
22946	}
22947	req.Header = reqHeaders
22948	googleapi.Expand(req.URL, map[string]string{
22949		"merchantId": strconv.FormatUint(c.merchantId, 10),
22950		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
22951	})
22952	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22953}
22954
22955// Do executes the "content.datafeeds.update" call.
22956// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
22957// code is an error. Response headers are in either
22958// *Datafeed.ServerResponse.Header or (if a response was returned at
22959// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22960// to check whether the returned error was because
22961// http.StatusNotModified was returned.
22962func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
22963	gensupport.SetOptions(c.urlParams_, opts...)
22964	res, err := c.doRequest("json")
22965	if res != nil && res.StatusCode == http.StatusNotModified {
22966		if res.Body != nil {
22967			res.Body.Close()
22968		}
22969		return nil, &googleapi.Error{
22970			Code:   res.StatusCode,
22971			Header: res.Header,
22972		}
22973	}
22974	if err != nil {
22975		return nil, err
22976	}
22977	defer googleapi.CloseBody(res)
22978	if err := googleapi.CheckResponse(res); err != nil {
22979		return nil, err
22980	}
22981	ret := &Datafeed{
22982		ServerResponse: googleapi.ServerResponse{
22983			Header:         res.Header,
22984			HTTPStatusCode: res.StatusCode,
22985		},
22986	}
22987	target := &ret
22988	if err := gensupport.DecodeResponse(target, res); err != nil {
22989		return nil, err
22990	}
22991	return ret, nil
22992	// {
22993	//   "description": "Updates a datafeed configuration of your Merchant Center account. Any fields that are not provided are deleted from the resource.",
22994	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
22995	//   "httpMethod": "PUT",
22996	//   "id": "content.datafeeds.update",
22997	//   "parameterOrder": [
22998	//     "merchantId",
22999	//     "datafeedId"
23000	//   ],
23001	//   "parameters": {
23002	//     "datafeedId": {
23003	//       "description": "The ID of the datafeed.",
23004	//       "format": "uint64",
23005	//       "location": "path",
23006	//       "required": true,
23007	//       "type": "string"
23008	//     },
23009	//     "merchantId": {
23010	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
23011	//       "format": "uint64",
23012	//       "location": "path",
23013	//       "required": true,
23014	//       "type": "string"
23015	//     }
23016	//   },
23017	//   "path": "{merchantId}/datafeeds/{datafeedId}",
23018	//   "request": {
23019	//     "$ref": "Datafeed"
23020	//   },
23021	//   "response": {
23022	//     "$ref": "Datafeed"
23023	//   },
23024	//   "scopes": [
23025	//     "https://www.googleapis.com/auth/content"
23026	//   ]
23027	// }
23028
23029}
23030
23031// method id "content.datafeedstatuses.custombatch":
23032
23033type DatafeedstatusesCustombatchCall struct {
23034	s                                  *APIService
23035	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
23036	urlParams_                         gensupport.URLParams
23037	ctx_                               context.Context
23038	header_                            http.Header
23039}
23040
23041// Custombatch: Gets multiple Merchant Center datafeed statuses in a
23042// single request.
23043func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
23044	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23045	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
23046	return c
23047}
23048
23049// Fields allows partial responses to be retrieved. See
23050// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23051// for more information.
23052func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
23053	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23054	return c
23055}
23056
23057// Context sets the context to be used in this call's Do method. Any
23058// pending HTTP request will be aborted if the provided context is
23059// canceled.
23060func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
23061	c.ctx_ = ctx
23062	return c
23063}
23064
23065// Header returns an http.Header that can be modified by the caller to
23066// add HTTP headers to the request.
23067func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
23068	if c.header_ == nil {
23069		c.header_ = make(http.Header)
23070	}
23071	return c.header_
23072}
23073
23074func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
23075	reqHeaders := make(http.Header)
23076	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
23077	for k, v := range c.header_ {
23078		reqHeaders[k] = v
23079	}
23080	reqHeaders.Set("User-Agent", c.s.userAgent())
23081	var body io.Reader = nil
23082	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
23083	if err != nil {
23084		return nil, err
23085	}
23086	reqHeaders.Set("Content-Type", "application/json")
23087	c.urlParams_.Set("alt", alt)
23088	c.urlParams_.Set("prettyPrint", "false")
23089	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeedstatuses/batch")
23090	urls += "?" + c.urlParams_.Encode()
23091	req, err := http.NewRequest("POST", urls, body)
23092	if err != nil {
23093		return nil, err
23094	}
23095	req.Header = reqHeaders
23096	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23097}
23098
23099// Do executes the "content.datafeedstatuses.custombatch" call.
23100// Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
23101// non-nil. Any non-2xx status code is an error. Response headers are in
23102// either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
23103// (if a response was returned at all) in
23104// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23105// whether the returned error was because http.StatusNotModified was
23106// returned.
23107func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
23108	gensupport.SetOptions(c.urlParams_, opts...)
23109	res, err := c.doRequest("json")
23110	if res != nil && res.StatusCode == http.StatusNotModified {
23111		if res.Body != nil {
23112			res.Body.Close()
23113		}
23114		return nil, &googleapi.Error{
23115			Code:   res.StatusCode,
23116			Header: res.Header,
23117		}
23118	}
23119	if err != nil {
23120		return nil, err
23121	}
23122	defer googleapi.CloseBody(res)
23123	if err := googleapi.CheckResponse(res); err != nil {
23124		return nil, err
23125	}
23126	ret := &DatafeedstatusesCustomBatchResponse{
23127		ServerResponse: googleapi.ServerResponse{
23128			Header:         res.Header,
23129			HTTPStatusCode: res.StatusCode,
23130		},
23131	}
23132	target := &ret
23133	if err := gensupport.DecodeResponse(target, res); err != nil {
23134		return nil, err
23135	}
23136	return ret, nil
23137	// {
23138	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
23139	//   "flatPath": "datafeedstatuses/batch",
23140	//   "httpMethod": "POST",
23141	//   "id": "content.datafeedstatuses.custombatch",
23142	//   "parameterOrder": [],
23143	//   "parameters": {},
23144	//   "path": "datafeedstatuses/batch",
23145	//   "request": {
23146	//     "$ref": "DatafeedstatusesCustomBatchRequest"
23147	//   },
23148	//   "response": {
23149	//     "$ref": "DatafeedstatusesCustomBatchResponse"
23150	//   },
23151	//   "scopes": [
23152	//     "https://www.googleapis.com/auth/content"
23153	//   ]
23154	// }
23155
23156}
23157
23158// method id "content.datafeedstatuses.get":
23159
23160type DatafeedstatusesGetCall struct {
23161	s            *APIService
23162	merchantId   uint64
23163	datafeedId   uint64
23164	urlParams_   gensupport.URLParams
23165	ifNoneMatch_ string
23166	ctx_         context.Context
23167	header_      http.Header
23168}
23169
23170// Get: Retrieves the status of a datafeed from your Merchant Center
23171// account.
23172//
23173// - datafeedId: The ID of the datafeed.
23174// - merchantId: The ID of the account that manages the datafeed. This
23175//   account cannot be a multi-client account.
23176func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
23177	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23178	c.merchantId = merchantId
23179	c.datafeedId = datafeedId
23180	return c
23181}
23182
23183// Country sets the optional parameter "country": The country for which
23184// to get the datafeed status. If this parameter is provided then
23185// language must also be provided. Note that this parameter is required
23186// for feeds targeting multiple countries and languages, since a feed
23187// may have a different status for each target.
23188func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
23189	c.urlParams_.Set("country", country)
23190	return c
23191}
23192
23193// Language sets the optional parameter "language": The language for
23194// which to get the datafeed status. If this parameter is provided then
23195// country must also be provided. Note that this parameter is required
23196// for feeds targeting multiple countries and languages, since a feed
23197// may have a different status for each target.
23198func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
23199	c.urlParams_.Set("language", language)
23200	return c
23201}
23202
23203// Fields allows partial responses to be retrieved. See
23204// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23205// for more information.
23206func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
23207	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23208	return c
23209}
23210
23211// IfNoneMatch sets the optional parameter which makes the operation
23212// fail if the object's ETag matches the given value. This is useful for
23213// getting updates only after the object has changed since the last
23214// request. Use googleapi.IsNotModified to check whether the response
23215// error from Do is the result of In-None-Match.
23216func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
23217	c.ifNoneMatch_ = entityTag
23218	return c
23219}
23220
23221// Context sets the context to be used in this call's Do method. Any
23222// pending HTTP request will be aborted if the provided context is
23223// canceled.
23224func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
23225	c.ctx_ = ctx
23226	return c
23227}
23228
23229// Header returns an http.Header that can be modified by the caller to
23230// add HTTP headers to the request.
23231func (c *DatafeedstatusesGetCall) Header() http.Header {
23232	if c.header_ == nil {
23233		c.header_ = make(http.Header)
23234	}
23235	return c.header_
23236}
23237
23238func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
23239	reqHeaders := make(http.Header)
23240	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
23241	for k, v := range c.header_ {
23242		reqHeaders[k] = v
23243	}
23244	reqHeaders.Set("User-Agent", c.s.userAgent())
23245	if c.ifNoneMatch_ != "" {
23246		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23247	}
23248	var body io.Reader = nil
23249	c.urlParams_.Set("alt", alt)
23250	c.urlParams_.Set("prettyPrint", "false")
23251	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses/{datafeedId}")
23252	urls += "?" + c.urlParams_.Encode()
23253	req, err := http.NewRequest("GET", urls, body)
23254	if err != nil {
23255		return nil, err
23256	}
23257	req.Header = reqHeaders
23258	googleapi.Expand(req.URL, map[string]string{
23259		"merchantId": strconv.FormatUint(c.merchantId, 10),
23260		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
23261	})
23262	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23263}
23264
23265// Do executes the "content.datafeedstatuses.get" call.
23266// Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
23267// status code is an error. Response headers are in either
23268// *DatafeedStatus.ServerResponse.Header or (if a response was returned
23269// at all) in error.(*googleapi.Error).Header. Use
23270// googleapi.IsNotModified to check whether the returned error was
23271// because http.StatusNotModified was returned.
23272func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
23273	gensupport.SetOptions(c.urlParams_, opts...)
23274	res, err := c.doRequest("json")
23275	if res != nil && res.StatusCode == http.StatusNotModified {
23276		if res.Body != nil {
23277			res.Body.Close()
23278		}
23279		return nil, &googleapi.Error{
23280			Code:   res.StatusCode,
23281			Header: res.Header,
23282		}
23283	}
23284	if err != nil {
23285		return nil, err
23286	}
23287	defer googleapi.CloseBody(res)
23288	if err := googleapi.CheckResponse(res); err != nil {
23289		return nil, err
23290	}
23291	ret := &DatafeedStatus{
23292		ServerResponse: googleapi.ServerResponse{
23293			Header:         res.Header,
23294			HTTPStatusCode: res.StatusCode,
23295		},
23296	}
23297	target := &ret
23298	if err := gensupport.DecodeResponse(target, res); err != nil {
23299		return nil, err
23300	}
23301	return ret, nil
23302	// {
23303	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
23304	//   "flatPath": "{merchantId}/datafeedstatuses/{datafeedId}",
23305	//   "httpMethod": "GET",
23306	//   "id": "content.datafeedstatuses.get",
23307	//   "parameterOrder": [
23308	//     "merchantId",
23309	//     "datafeedId"
23310	//   ],
23311	//   "parameters": {
23312	//     "country": {
23313	//       "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.",
23314	//       "location": "query",
23315	//       "type": "string"
23316	//     },
23317	//     "datafeedId": {
23318	//       "description": "The ID of the datafeed.",
23319	//       "format": "uint64",
23320	//       "location": "path",
23321	//       "required": true,
23322	//       "type": "string"
23323	//     },
23324	//     "language": {
23325	//       "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.",
23326	//       "location": "query",
23327	//       "type": "string"
23328	//     },
23329	//     "merchantId": {
23330	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
23331	//       "format": "uint64",
23332	//       "location": "path",
23333	//       "required": true,
23334	//       "type": "string"
23335	//     }
23336	//   },
23337	//   "path": "{merchantId}/datafeedstatuses/{datafeedId}",
23338	//   "response": {
23339	//     "$ref": "DatafeedStatus"
23340	//   },
23341	//   "scopes": [
23342	//     "https://www.googleapis.com/auth/content"
23343	//   ]
23344	// }
23345
23346}
23347
23348// method id "content.datafeedstatuses.list":
23349
23350type DatafeedstatusesListCall struct {
23351	s            *APIService
23352	merchantId   uint64
23353	urlParams_   gensupport.URLParams
23354	ifNoneMatch_ string
23355	ctx_         context.Context
23356	header_      http.Header
23357}
23358
23359// List: Lists the statuses of the datafeeds in your Merchant Center
23360// account.
23361//
23362// - merchantId: The ID of the account that manages the datafeeds. This
23363//   account cannot be a multi-client account.
23364func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
23365	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23366	c.merchantId = merchantId
23367	return c
23368}
23369
23370// MaxResults sets the optional parameter "maxResults": The maximum
23371// number of products to return in the response, used for paging.
23372func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
23373	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
23374	return c
23375}
23376
23377// PageToken sets the optional parameter "pageToken": The token returned
23378// by the previous request.
23379func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
23380	c.urlParams_.Set("pageToken", pageToken)
23381	return c
23382}
23383
23384// Fields allows partial responses to be retrieved. See
23385// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23386// for more information.
23387func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
23388	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23389	return c
23390}
23391
23392// IfNoneMatch sets the optional parameter which makes the operation
23393// fail if the object's ETag matches the given value. This is useful for
23394// getting updates only after the object has changed since the last
23395// request. Use googleapi.IsNotModified to check whether the response
23396// error from Do is the result of In-None-Match.
23397func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
23398	c.ifNoneMatch_ = entityTag
23399	return c
23400}
23401
23402// Context sets the context to be used in this call's Do method. Any
23403// pending HTTP request will be aborted if the provided context is
23404// canceled.
23405func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
23406	c.ctx_ = ctx
23407	return c
23408}
23409
23410// Header returns an http.Header that can be modified by the caller to
23411// add HTTP headers to the request.
23412func (c *DatafeedstatusesListCall) Header() http.Header {
23413	if c.header_ == nil {
23414		c.header_ = make(http.Header)
23415	}
23416	return c.header_
23417}
23418
23419func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
23420	reqHeaders := make(http.Header)
23421	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
23422	for k, v := range c.header_ {
23423		reqHeaders[k] = v
23424	}
23425	reqHeaders.Set("User-Agent", c.s.userAgent())
23426	if c.ifNoneMatch_ != "" {
23427		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23428	}
23429	var body io.Reader = nil
23430	c.urlParams_.Set("alt", alt)
23431	c.urlParams_.Set("prettyPrint", "false")
23432	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses")
23433	urls += "?" + c.urlParams_.Encode()
23434	req, err := http.NewRequest("GET", urls, body)
23435	if err != nil {
23436		return nil, err
23437	}
23438	req.Header = reqHeaders
23439	googleapi.Expand(req.URL, map[string]string{
23440		"merchantId": strconv.FormatUint(c.merchantId, 10),
23441	})
23442	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23443}
23444
23445// Do executes the "content.datafeedstatuses.list" call.
23446// Exactly one of *DatafeedstatusesListResponse or error will be
23447// non-nil. Any non-2xx status code is an error. Response headers are in
23448// either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
23449// response was returned at all) in error.(*googleapi.Error).Header. Use
23450// googleapi.IsNotModified to check whether the returned error was
23451// because http.StatusNotModified was returned.
23452func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
23453	gensupport.SetOptions(c.urlParams_, opts...)
23454	res, err := c.doRequest("json")
23455	if res != nil && res.StatusCode == http.StatusNotModified {
23456		if res.Body != nil {
23457			res.Body.Close()
23458		}
23459		return nil, &googleapi.Error{
23460			Code:   res.StatusCode,
23461			Header: res.Header,
23462		}
23463	}
23464	if err != nil {
23465		return nil, err
23466	}
23467	defer googleapi.CloseBody(res)
23468	if err := googleapi.CheckResponse(res); err != nil {
23469		return nil, err
23470	}
23471	ret := &DatafeedstatusesListResponse{
23472		ServerResponse: googleapi.ServerResponse{
23473			Header:         res.Header,
23474			HTTPStatusCode: res.StatusCode,
23475		},
23476	}
23477	target := &ret
23478	if err := gensupport.DecodeResponse(target, res); err != nil {
23479		return nil, err
23480	}
23481	return ret, nil
23482	// {
23483	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
23484	//   "flatPath": "{merchantId}/datafeedstatuses",
23485	//   "httpMethod": "GET",
23486	//   "id": "content.datafeedstatuses.list",
23487	//   "parameterOrder": [
23488	//     "merchantId"
23489	//   ],
23490	//   "parameters": {
23491	//     "maxResults": {
23492	//       "description": "The maximum number of products to return in the response, used for paging.",
23493	//       "format": "uint32",
23494	//       "location": "query",
23495	//       "type": "integer"
23496	//     },
23497	//     "merchantId": {
23498	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
23499	//       "format": "uint64",
23500	//       "location": "path",
23501	//       "required": true,
23502	//       "type": "string"
23503	//     },
23504	//     "pageToken": {
23505	//       "description": "The token returned by the previous request.",
23506	//       "location": "query",
23507	//       "type": "string"
23508	//     }
23509	//   },
23510	//   "path": "{merchantId}/datafeedstatuses",
23511	//   "response": {
23512	//     "$ref": "DatafeedstatusesListResponse"
23513	//   },
23514	//   "scopes": [
23515	//     "https://www.googleapis.com/auth/content"
23516	//   ]
23517	// }
23518
23519}
23520
23521// Pages invokes f for each page of results.
23522// A non-nil error returned from f will halt the iteration.
23523// The provided context supersedes any context provided to the Context method.
23524func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
23525	c.ctx_ = ctx
23526	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23527	for {
23528		x, err := c.Do()
23529		if err != nil {
23530			return err
23531		}
23532		if err := f(x); err != nil {
23533			return err
23534		}
23535		if x.NextPageToken == "" {
23536			return nil
23537		}
23538		c.PageToken(x.NextPageToken)
23539	}
23540}
23541
23542// method id "content.liasettings.custombatch":
23543
23544type LiasettingsCustombatchCall struct {
23545	s                             *APIService
23546	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
23547	urlParams_                    gensupport.URLParams
23548	ctx_                          context.Context
23549	header_                       http.Header
23550}
23551
23552// Custombatch: Retrieves and/or updates the LIA settings of multiple
23553// accounts in a single request.
23554func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
23555	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23556	c.liasettingscustombatchrequest = liasettingscustombatchrequest
23557	return c
23558}
23559
23560// Fields allows partial responses to be retrieved. See
23561// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23562// for more information.
23563func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
23564	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23565	return c
23566}
23567
23568// Context sets the context to be used in this call's Do method. Any
23569// pending HTTP request will be aborted if the provided context is
23570// canceled.
23571func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
23572	c.ctx_ = ctx
23573	return c
23574}
23575
23576// Header returns an http.Header that can be modified by the caller to
23577// add HTTP headers to the request.
23578func (c *LiasettingsCustombatchCall) Header() http.Header {
23579	if c.header_ == nil {
23580		c.header_ = make(http.Header)
23581	}
23582	return c.header_
23583}
23584
23585func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
23586	reqHeaders := make(http.Header)
23587	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
23588	for k, v := range c.header_ {
23589		reqHeaders[k] = v
23590	}
23591	reqHeaders.Set("User-Agent", c.s.userAgent())
23592	var body io.Reader = nil
23593	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
23594	if err != nil {
23595		return nil, err
23596	}
23597	reqHeaders.Set("Content-Type", "application/json")
23598	c.urlParams_.Set("alt", alt)
23599	c.urlParams_.Set("prettyPrint", "false")
23600	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch")
23601	urls += "?" + c.urlParams_.Encode()
23602	req, err := http.NewRequest("POST", urls, body)
23603	if err != nil {
23604		return nil, err
23605	}
23606	req.Header = reqHeaders
23607	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23608}
23609
23610// Do executes the "content.liasettings.custombatch" call.
23611// Exactly one of *LiasettingsCustomBatchResponse or error will be
23612// non-nil. Any non-2xx status code is an error. Response headers are in
23613// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
23614// response was returned at all) in error.(*googleapi.Error).Header. Use
23615// googleapi.IsNotModified to check whether the returned error was
23616// because http.StatusNotModified was returned.
23617func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
23618	gensupport.SetOptions(c.urlParams_, opts...)
23619	res, err := c.doRequest("json")
23620	if res != nil && res.StatusCode == http.StatusNotModified {
23621		if res.Body != nil {
23622			res.Body.Close()
23623		}
23624		return nil, &googleapi.Error{
23625			Code:   res.StatusCode,
23626			Header: res.Header,
23627		}
23628	}
23629	if err != nil {
23630		return nil, err
23631	}
23632	defer googleapi.CloseBody(res)
23633	if err := googleapi.CheckResponse(res); err != nil {
23634		return nil, err
23635	}
23636	ret := &LiasettingsCustomBatchResponse{
23637		ServerResponse: googleapi.ServerResponse{
23638			Header:         res.Header,
23639			HTTPStatusCode: res.StatusCode,
23640		},
23641	}
23642	target := &ret
23643	if err := gensupport.DecodeResponse(target, res); err != nil {
23644		return nil, err
23645	}
23646	return ret, nil
23647	// {
23648	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
23649	//   "flatPath": "liasettings/batch",
23650	//   "httpMethod": "POST",
23651	//   "id": "content.liasettings.custombatch",
23652	//   "parameterOrder": [],
23653	//   "parameters": {},
23654	//   "path": "liasettings/batch",
23655	//   "request": {
23656	//     "$ref": "LiasettingsCustomBatchRequest"
23657	//   },
23658	//   "response": {
23659	//     "$ref": "LiasettingsCustomBatchResponse"
23660	//   },
23661	//   "scopes": [
23662	//     "https://www.googleapis.com/auth/content"
23663	//   ]
23664	// }
23665
23666}
23667
23668// method id "content.liasettings.get":
23669
23670type LiasettingsGetCall struct {
23671	s            *APIService
23672	merchantId   uint64
23673	accountId    uint64
23674	urlParams_   gensupport.URLParams
23675	ifNoneMatch_ string
23676	ctx_         context.Context
23677	header_      http.Header
23678}
23679
23680// Get: Retrieves the LIA settings of the account.
23681//
23682// - accountId: The ID of the account for which to get or update LIA
23683//   settings.
23684// - merchantId: The ID of the managing account. If this parameter is
23685//   not the same as accountId, then this account must be a multi-client
23686//   account and `accountId` must be the ID of a sub-account of this
23687//   account.
23688func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
23689	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23690	c.merchantId = merchantId
23691	c.accountId = accountId
23692	return c
23693}
23694
23695// Fields allows partial responses to be retrieved. See
23696// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23697// for more information.
23698func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
23699	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23700	return c
23701}
23702
23703// IfNoneMatch sets the optional parameter which makes the operation
23704// fail if the object's ETag matches the given value. This is useful for
23705// getting updates only after the object has changed since the last
23706// request. Use googleapi.IsNotModified to check whether the response
23707// error from Do is the result of In-None-Match.
23708func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
23709	c.ifNoneMatch_ = entityTag
23710	return c
23711}
23712
23713// Context sets the context to be used in this call's Do method. Any
23714// pending HTTP request will be aborted if the provided context is
23715// canceled.
23716func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
23717	c.ctx_ = ctx
23718	return c
23719}
23720
23721// Header returns an http.Header that can be modified by the caller to
23722// add HTTP headers to the request.
23723func (c *LiasettingsGetCall) Header() http.Header {
23724	if c.header_ == nil {
23725		c.header_ = make(http.Header)
23726	}
23727	return c.header_
23728}
23729
23730func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
23731	reqHeaders := make(http.Header)
23732	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
23733	for k, v := range c.header_ {
23734		reqHeaders[k] = v
23735	}
23736	reqHeaders.Set("User-Agent", c.s.userAgent())
23737	if c.ifNoneMatch_ != "" {
23738		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23739	}
23740	var body io.Reader = nil
23741	c.urlParams_.Set("alt", alt)
23742	c.urlParams_.Set("prettyPrint", "false")
23743	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
23744	urls += "?" + c.urlParams_.Encode()
23745	req, err := http.NewRequest("GET", urls, body)
23746	if err != nil {
23747		return nil, err
23748	}
23749	req.Header = reqHeaders
23750	googleapi.Expand(req.URL, map[string]string{
23751		"merchantId": strconv.FormatUint(c.merchantId, 10),
23752		"accountId":  strconv.FormatUint(c.accountId, 10),
23753	})
23754	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23755}
23756
23757// Do executes the "content.liasettings.get" call.
23758// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
23759// status code is an error. Response headers are in either
23760// *LiaSettings.ServerResponse.Header or (if a response was returned at
23761// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
23762// to check whether the returned error was because
23763// http.StatusNotModified was returned.
23764func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
23765	gensupport.SetOptions(c.urlParams_, opts...)
23766	res, err := c.doRequest("json")
23767	if res != nil && res.StatusCode == http.StatusNotModified {
23768		if res.Body != nil {
23769			res.Body.Close()
23770		}
23771		return nil, &googleapi.Error{
23772			Code:   res.StatusCode,
23773			Header: res.Header,
23774		}
23775	}
23776	if err != nil {
23777		return nil, err
23778	}
23779	defer googleapi.CloseBody(res)
23780	if err := googleapi.CheckResponse(res); err != nil {
23781		return nil, err
23782	}
23783	ret := &LiaSettings{
23784		ServerResponse: googleapi.ServerResponse{
23785			Header:         res.Header,
23786			HTTPStatusCode: res.StatusCode,
23787		},
23788	}
23789	target := &ret
23790	if err := gensupport.DecodeResponse(target, res); err != nil {
23791		return nil, err
23792	}
23793	return ret, nil
23794	// {
23795	//   "description": "Retrieves the LIA settings of the account.",
23796	//   "flatPath": "{merchantId}/liasettings/{accountId}",
23797	//   "httpMethod": "GET",
23798	//   "id": "content.liasettings.get",
23799	//   "parameterOrder": [
23800	//     "merchantId",
23801	//     "accountId"
23802	//   ],
23803	//   "parameters": {
23804	//     "accountId": {
23805	//       "description": "The ID of the account for which to get or update LIA settings.",
23806	//       "format": "uint64",
23807	//       "location": "path",
23808	//       "required": true,
23809	//       "type": "string"
23810	//     },
23811	//     "merchantId": {
23812	//       "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.",
23813	//       "format": "uint64",
23814	//       "location": "path",
23815	//       "required": true,
23816	//       "type": "string"
23817	//     }
23818	//   },
23819	//   "path": "{merchantId}/liasettings/{accountId}",
23820	//   "response": {
23821	//     "$ref": "LiaSettings"
23822	//   },
23823	//   "scopes": [
23824	//     "https://www.googleapis.com/auth/content"
23825	//   ]
23826	// }
23827
23828}
23829
23830// method id "content.liasettings.getaccessiblegmbaccounts":
23831
23832type LiasettingsGetaccessiblegmbaccountsCall struct {
23833	s            *APIService
23834	merchantId   uint64
23835	accountId    uint64
23836	urlParams_   gensupport.URLParams
23837	ifNoneMatch_ string
23838	ctx_         context.Context
23839	header_      http.Header
23840}
23841
23842// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
23843// Business accounts.
23844//
23845// - accountId: The ID of the account for which to retrieve accessible
23846//   Google My Business accounts.
23847// - merchantId: The ID of the managing account. If this parameter is
23848//   not the same as accountId, then this account must be a multi-client
23849//   account and `accountId` must be the ID of a sub-account of this
23850//   account.
23851func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
23852	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23853	c.merchantId = merchantId
23854	c.accountId = accountId
23855	return c
23856}
23857
23858// Fields allows partial responses to be retrieved. See
23859// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23860// for more information.
23861func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
23862	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23863	return c
23864}
23865
23866// IfNoneMatch sets the optional parameter which makes the operation
23867// fail if the object's ETag matches the given value. This is useful for
23868// getting updates only after the object has changed since the last
23869// request. Use googleapi.IsNotModified to check whether the response
23870// error from Do is the result of In-None-Match.
23871func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
23872	c.ifNoneMatch_ = entityTag
23873	return c
23874}
23875
23876// Context sets the context to be used in this call's Do method. Any
23877// pending HTTP request will be aborted if the provided context is
23878// canceled.
23879func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
23880	c.ctx_ = ctx
23881	return c
23882}
23883
23884// Header returns an http.Header that can be modified by the caller to
23885// add HTTP headers to the request.
23886func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
23887	if c.header_ == nil {
23888		c.header_ = make(http.Header)
23889	}
23890	return c.header_
23891}
23892
23893func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
23894	reqHeaders := make(http.Header)
23895	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
23896	for k, v := range c.header_ {
23897		reqHeaders[k] = v
23898	}
23899	reqHeaders.Set("User-Agent", c.s.userAgent())
23900	if c.ifNoneMatch_ != "" {
23901		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23902	}
23903	var body io.Reader = nil
23904	c.urlParams_.Set("alt", alt)
23905	c.urlParams_.Set("prettyPrint", "false")
23906	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
23907	urls += "?" + c.urlParams_.Encode()
23908	req, err := http.NewRequest("GET", urls, body)
23909	if err != nil {
23910		return nil, err
23911	}
23912	req.Header = reqHeaders
23913	googleapi.Expand(req.URL, map[string]string{
23914		"merchantId": strconv.FormatUint(c.merchantId, 10),
23915		"accountId":  strconv.FormatUint(c.accountId, 10),
23916	})
23917	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23918}
23919
23920// Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
23921// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
23922// will be non-nil. Any non-2xx status code is an error. Response
23923// headers are in either
23924// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
23925// (if a response was returned at all) in
23926// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23927// whether the returned error was because http.StatusNotModified was
23928// returned.
23929func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
23930	gensupport.SetOptions(c.urlParams_, opts...)
23931	res, err := c.doRequest("json")
23932	if res != nil && res.StatusCode == http.StatusNotModified {
23933		if res.Body != nil {
23934			res.Body.Close()
23935		}
23936		return nil, &googleapi.Error{
23937			Code:   res.StatusCode,
23938			Header: res.Header,
23939		}
23940	}
23941	if err != nil {
23942		return nil, err
23943	}
23944	defer googleapi.CloseBody(res)
23945	if err := googleapi.CheckResponse(res); err != nil {
23946		return nil, err
23947	}
23948	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
23949		ServerResponse: googleapi.ServerResponse{
23950			Header:         res.Header,
23951			HTTPStatusCode: res.StatusCode,
23952		},
23953	}
23954	target := &ret
23955	if err := gensupport.DecodeResponse(target, res); err != nil {
23956		return nil, err
23957	}
23958	return ret, nil
23959	// {
23960	//   "description": "Retrieves the list of accessible Google My Business accounts.",
23961	//   "flatPath": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
23962	//   "httpMethod": "GET",
23963	//   "id": "content.liasettings.getaccessiblegmbaccounts",
23964	//   "parameterOrder": [
23965	//     "merchantId",
23966	//     "accountId"
23967	//   ],
23968	//   "parameters": {
23969	//     "accountId": {
23970	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
23971	//       "format": "uint64",
23972	//       "location": "path",
23973	//       "required": true,
23974	//       "type": "string"
23975	//     },
23976	//     "merchantId": {
23977	//       "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.",
23978	//       "format": "uint64",
23979	//       "location": "path",
23980	//       "required": true,
23981	//       "type": "string"
23982	//     }
23983	//   },
23984	//   "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
23985	//   "response": {
23986	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
23987	//   },
23988	//   "scopes": [
23989	//     "https://www.googleapis.com/auth/content"
23990	//   ]
23991	// }
23992
23993}
23994
23995// method id "content.liasettings.list":
23996
23997type LiasettingsListCall struct {
23998	s            *APIService
23999	merchantId   uint64
24000	urlParams_   gensupport.URLParams
24001	ifNoneMatch_ string
24002	ctx_         context.Context
24003	header_      http.Header
24004}
24005
24006// List: Lists the LIA settings of the sub-accounts in your Merchant
24007// Center account.
24008//
24009// - merchantId: The ID of the managing account. This must be a
24010//   multi-client account.
24011func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
24012	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24013	c.merchantId = merchantId
24014	return c
24015}
24016
24017// MaxResults sets the optional parameter "maxResults": The maximum
24018// number of LIA settings to return in the response, used for paging.
24019func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
24020	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
24021	return c
24022}
24023
24024// PageToken sets the optional parameter "pageToken": The token returned
24025// by the previous request.
24026func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
24027	c.urlParams_.Set("pageToken", pageToken)
24028	return c
24029}
24030
24031// Fields allows partial responses to be retrieved. See
24032// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24033// for more information.
24034func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
24035	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24036	return c
24037}
24038
24039// IfNoneMatch sets the optional parameter which makes the operation
24040// fail if the object's ETag matches the given value. This is useful for
24041// getting updates only after the object has changed since the last
24042// request. Use googleapi.IsNotModified to check whether the response
24043// error from Do is the result of In-None-Match.
24044func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
24045	c.ifNoneMatch_ = entityTag
24046	return c
24047}
24048
24049// Context sets the context to be used in this call's Do method. Any
24050// pending HTTP request will be aborted if the provided context is
24051// canceled.
24052func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
24053	c.ctx_ = ctx
24054	return c
24055}
24056
24057// Header returns an http.Header that can be modified by the caller to
24058// add HTTP headers to the request.
24059func (c *LiasettingsListCall) Header() http.Header {
24060	if c.header_ == nil {
24061		c.header_ = make(http.Header)
24062	}
24063	return c.header_
24064}
24065
24066func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
24067	reqHeaders := make(http.Header)
24068	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
24069	for k, v := range c.header_ {
24070		reqHeaders[k] = v
24071	}
24072	reqHeaders.Set("User-Agent", c.s.userAgent())
24073	if c.ifNoneMatch_ != "" {
24074		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24075	}
24076	var body io.Reader = nil
24077	c.urlParams_.Set("alt", alt)
24078	c.urlParams_.Set("prettyPrint", "false")
24079	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings")
24080	urls += "?" + c.urlParams_.Encode()
24081	req, err := http.NewRequest("GET", urls, body)
24082	if err != nil {
24083		return nil, err
24084	}
24085	req.Header = reqHeaders
24086	googleapi.Expand(req.URL, map[string]string{
24087		"merchantId": strconv.FormatUint(c.merchantId, 10),
24088	})
24089	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24090}
24091
24092// Do executes the "content.liasettings.list" call.
24093// Exactly one of *LiasettingsListResponse or error will be non-nil. Any
24094// non-2xx status code is an error. Response headers are in either
24095// *LiasettingsListResponse.ServerResponse.Header or (if a response was
24096// returned at all) in error.(*googleapi.Error).Header. Use
24097// googleapi.IsNotModified to check whether the returned error was
24098// because http.StatusNotModified was returned.
24099func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
24100	gensupport.SetOptions(c.urlParams_, opts...)
24101	res, err := c.doRequest("json")
24102	if res != nil && res.StatusCode == http.StatusNotModified {
24103		if res.Body != nil {
24104			res.Body.Close()
24105		}
24106		return nil, &googleapi.Error{
24107			Code:   res.StatusCode,
24108			Header: res.Header,
24109		}
24110	}
24111	if err != nil {
24112		return nil, err
24113	}
24114	defer googleapi.CloseBody(res)
24115	if err := googleapi.CheckResponse(res); err != nil {
24116		return nil, err
24117	}
24118	ret := &LiasettingsListResponse{
24119		ServerResponse: googleapi.ServerResponse{
24120			Header:         res.Header,
24121			HTTPStatusCode: res.StatusCode,
24122		},
24123	}
24124	target := &ret
24125	if err := gensupport.DecodeResponse(target, res); err != nil {
24126		return nil, err
24127	}
24128	return ret, nil
24129	// {
24130	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
24131	//   "flatPath": "{merchantId}/liasettings",
24132	//   "httpMethod": "GET",
24133	//   "id": "content.liasettings.list",
24134	//   "parameterOrder": [
24135	//     "merchantId"
24136	//   ],
24137	//   "parameters": {
24138	//     "maxResults": {
24139	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
24140	//       "format": "uint32",
24141	//       "location": "query",
24142	//       "type": "integer"
24143	//     },
24144	//     "merchantId": {
24145	//       "description": "The ID of the managing account. This must be a multi-client account.",
24146	//       "format": "uint64",
24147	//       "location": "path",
24148	//       "required": true,
24149	//       "type": "string"
24150	//     },
24151	//     "pageToken": {
24152	//       "description": "The token returned by the previous request.",
24153	//       "location": "query",
24154	//       "type": "string"
24155	//     }
24156	//   },
24157	//   "path": "{merchantId}/liasettings",
24158	//   "response": {
24159	//     "$ref": "LiasettingsListResponse"
24160	//   },
24161	//   "scopes": [
24162	//     "https://www.googleapis.com/auth/content"
24163	//   ]
24164	// }
24165
24166}
24167
24168// Pages invokes f for each page of results.
24169// A non-nil error returned from f will halt the iteration.
24170// The provided context supersedes any context provided to the Context method.
24171func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
24172	c.ctx_ = ctx
24173	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24174	for {
24175		x, err := c.Do()
24176		if err != nil {
24177			return err
24178		}
24179		if err := f(x); err != nil {
24180			return err
24181		}
24182		if x.NextPageToken == "" {
24183			return nil
24184		}
24185		c.PageToken(x.NextPageToken)
24186	}
24187}
24188
24189// method id "content.liasettings.listposdataproviders":
24190
24191type LiasettingsListposdataprovidersCall struct {
24192	s            *APIService
24193	urlParams_   gensupport.URLParams
24194	ifNoneMatch_ string
24195	ctx_         context.Context
24196	header_      http.Header
24197}
24198
24199// Listposdataproviders: Retrieves the list of POS data providers that
24200// have active settings for the all eiligible countries.
24201func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
24202	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24203	return c
24204}
24205
24206// Fields allows partial responses to be retrieved. See
24207// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24208// for more information.
24209func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
24210	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24211	return c
24212}
24213
24214// IfNoneMatch sets the optional parameter which makes the operation
24215// fail if the object's ETag matches the given value. This is useful for
24216// getting updates only after the object has changed since the last
24217// request. Use googleapi.IsNotModified to check whether the response
24218// error from Do is the result of In-None-Match.
24219func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
24220	c.ifNoneMatch_ = entityTag
24221	return c
24222}
24223
24224// Context sets the context to be used in this call's Do method. Any
24225// pending HTTP request will be aborted if the provided context is
24226// canceled.
24227func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
24228	c.ctx_ = ctx
24229	return c
24230}
24231
24232// Header returns an http.Header that can be modified by the caller to
24233// add HTTP headers to the request.
24234func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
24235	if c.header_ == nil {
24236		c.header_ = make(http.Header)
24237	}
24238	return c.header_
24239}
24240
24241func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
24242	reqHeaders := make(http.Header)
24243	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
24244	for k, v := range c.header_ {
24245		reqHeaders[k] = v
24246	}
24247	reqHeaders.Set("User-Agent", c.s.userAgent())
24248	if c.ifNoneMatch_ != "" {
24249		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24250	}
24251	var body io.Reader = nil
24252	c.urlParams_.Set("alt", alt)
24253	c.urlParams_.Set("prettyPrint", "false")
24254	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/posdataproviders")
24255	urls += "?" + c.urlParams_.Encode()
24256	req, err := http.NewRequest("GET", urls, body)
24257	if err != nil {
24258		return nil, err
24259	}
24260	req.Header = reqHeaders
24261	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24262}
24263
24264// Do executes the "content.liasettings.listposdataproviders" call.
24265// Exactly one of *LiasettingsListPosDataProvidersResponse or error will
24266// be non-nil. Any non-2xx status code is an error. Response headers are
24267// in either
24268// *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
24269// a response was returned at all) in error.(*googleapi.Error).Header.
24270// Use googleapi.IsNotModified to check whether the returned error was
24271// because http.StatusNotModified was returned.
24272func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
24273	gensupport.SetOptions(c.urlParams_, opts...)
24274	res, err := c.doRequest("json")
24275	if res != nil && res.StatusCode == http.StatusNotModified {
24276		if res.Body != nil {
24277			res.Body.Close()
24278		}
24279		return nil, &googleapi.Error{
24280			Code:   res.StatusCode,
24281			Header: res.Header,
24282		}
24283	}
24284	if err != nil {
24285		return nil, err
24286	}
24287	defer googleapi.CloseBody(res)
24288	if err := googleapi.CheckResponse(res); err != nil {
24289		return nil, err
24290	}
24291	ret := &LiasettingsListPosDataProvidersResponse{
24292		ServerResponse: googleapi.ServerResponse{
24293			Header:         res.Header,
24294			HTTPStatusCode: res.StatusCode,
24295		},
24296	}
24297	target := &ret
24298	if err := gensupport.DecodeResponse(target, res); err != nil {
24299		return nil, err
24300	}
24301	return ret, nil
24302	// {
24303	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
24304	//   "flatPath": "liasettings/posdataproviders",
24305	//   "httpMethod": "GET",
24306	//   "id": "content.liasettings.listposdataproviders",
24307	//   "parameterOrder": [],
24308	//   "parameters": {},
24309	//   "path": "liasettings/posdataproviders",
24310	//   "response": {
24311	//     "$ref": "LiasettingsListPosDataProvidersResponse"
24312	//   },
24313	//   "scopes": [
24314	//     "https://www.googleapis.com/auth/content"
24315	//   ]
24316	// }
24317
24318}
24319
24320// method id "content.liasettings.requestgmbaccess":
24321
24322type LiasettingsRequestgmbaccessCall struct {
24323	s          *APIService
24324	merchantId uint64
24325	accountId  uint64
24326	urlParams_ gensupport.URLParams
24327	ctx_       context.Context
24328	header_    http.Header
24329}
24330
24331// Requestgmbaccess: Requests access to a specified Google My Business
24332// account.
24333//
24334// - accountId: The ID of the account for which GMB access is requested.
24335// - gmbEmail: The email of the Google My Business account.
24336// - merchantId: The ID of the managing account. If this parameter is
24337//   not the same as accountId, then this account must be a multi-client
24338//   account and `accountId` must be the ID of a sub-account of this
24339//   account.
24340func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
24341	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24342	c.merchantId = merchantId
24343	c.accountId = accountId
24344	c.urlParams_.Set("gmbEmail", gmbEmail)
24345	return c
24346}
24347
24348// Fields allows partial responses to be retrieved. See
24349// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24350// for more information.
24351func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
24352	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24353	return c
24354}
24355
24356// Context sets the context to be used in this call's Do method. Any
24357// pending HTTP request will be aborted if the provided context is
24358// canceled.
24359func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
24360	c.ctx_ = ctx
24361	return c
24362}
24363
24364// Header returns an http.Header that can be modified by the caller to
24365// add HTTP headers to the request.
24366func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
24367	if c.header_ == nil {
24368		c.header_ = make(http.Header)
24369	}
24370	return c.header_
24371}
24372
24373func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
24374	reqHeaders := make(http.Header)
24375	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
24376	for k, v := range c.header_ {
24377		reqHeaders[k] = v
24378	}
24379	reqHeaders.Set("User-Agent", c.s.userAgent())
24380	var body io.Reader = nil
24381	c.urlParams_.Set("alt", alt)
24382	c.urlParams_.Set("prettyPrint", "false")
24383	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess")
24384	urls += "?" + c.urlParams_.Encode()
24385	req, err := http.NewRequest("POST", urls, body)
24386	if err != nil {
24387		return nil, err
24388	}
24389	req.Header = reqHeaders
24390	googleapi.Expand(req.URL, map[string]string{
24391		"merchantId": strconv.FormatUint(c.merchantId, 10),
24392		"accountId":  strconv.FormatUint(c.accountId, 10),
24393	})
24394	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24395}
24396
24397// Do executes the "content.liasettings.requestgmbaccess" call.
24398// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
24399// non-nil. Any non-2xx status code is an error. Response headers are in
24400// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
24401// (if a response was returned at all) in
24402// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24403// whether the returned error was because http.StatusNotModified was
24404// returned.
24405func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
24406	gensupport.SetOptions(c.urlParams_, opts...)
24407	res, err := c.doRequest("json")
24408	if res != nil && res.StatusCode == http.StatusNotModified {
24409		if res.Body != nil {
24410			res.Body.Close()
24411		}
24412		return nil, &googleapi.Error{
24413			Code:   res.StatusCode,
24414			Header: res.Header,
24415		}
24416	}
24417	if err != nil {
24418		return nil, err
24419	}
24420	defer googleapi.CloseBody(res)
24421	if err := googleapi.CheckResponse(res); err != nil {
24422		return nil, err
24423	}
24424	ret := &LiasettingsRequestGmbAccessResponse{
24425		ServerResponse: googleapi.ServerResponse{
24426			Header:         res.Header,
24427			HTTPStatusCode: res.StatusCode,
24428		},
24429	}
24430	target := &ret
24431	if err := gensupport.DecodeResponse(target, res); err != nil {
24432		return nil, err
24433	}
24434	return ret, nil
24435	// {
24436	//   "description": "Requests access to a specified Google My Business account.",
24437	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
24438	//   "httpMethod": "POST",
24439	//   "id": "content.liasettings.requestgmbaccess",
24440	//   "parameterOrder": [
24441	//     "merchantId",
24442	//     "accountId",
24443	//     "gmbEmail"
24444	//   ],
24445	//   "parameters": {
24446	//     "accountId": {
24447	//       "description": "The ID of the account for which GMB access is requested.",
24448	//       "format": "uint64",
24449	//       "location": "path",
24450	//       "required": true,
24451	//       "type": "string"
24452	//     },
24453	//     "gmbEmail": {
24454	//       "description": "The email of the Google My Business account.",
24455	//       "location": "query",
24456	//       "required": true,
24457	//       "type": "string"
24458	//     },
24459	//     "merchantId": {
24460	//       "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.",
24461	//       "format": "uint64",
24462	//       "location": "path",
24463	//       "required": true,
24464	//       "type": "string"
24465	//     }
24466	//   },
24467	//   "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
24468	//   "response": {
24469	//     "$ref": "LiasettingsRequestGmbAccessResponse"
24470	//   },
24471	//   "scopes": [
24472	//     "https://www.googleapis.com/auth/content"
24473	//   ]
24474	// }
24475
24476}
24477
24478// method id "content.liasettings.requestinventoryverification":
24479
24480type LiasettingsRequestinventoryverificationCall struct {
24481	s          *APIService
24482	merchantId uint64
24483	accountId  uint64
24484	country    string
24485	urlParams_ gensupport.URLParams
24486	ctx_       context.Context
24487	header_    http.Header
24488}
24489
24490// Requestinventoryverification: Requests inventory validation for the
24491// specified country.
24492//
24493// - accountId: The ID of the account that manages the order. This
24494//   cannot be a multi-client account.
24495// - country: The country for which inventory validation is requested.
24496// - merchantId: The ID of the managing account. If this parameter is
24497//   not the same as accountId, then this account must be a multi-client
24498//   account and `accountId` must be the ID of a sub-account of this
24499//   account.
24500func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
24501	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24502	c.merchantId = merchantId
24503	c.accountId = accountId
24504	c.country = country
24505	return c
24506}
24507
24508// Fields allows partial responses to be retrieved. See
24509// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24510// for more information.
24511func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
24512	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24513	return c
24514}
24515
24516// Context sets the context to be used in this call's Do method. Any
24517// pending HTTP request will be aborted if the provided context is
24518// canceled.
24519func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
24520	c.ctx_ = ctx
24521	return c
24522}
24523
24524// Header returns an http.Header that can be modified by the caller to
24525// add HTTP headers to the request.
24526func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
24527	if c.header_ == nil {
24528		c.header_ = make(http.Header)
24529	}
24530	return c.header_
24531}
24532
24533func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
24534	reqHeaders := make(http.Header)
24535	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
24536	for k, v := range c.header_ {
24537		reqHeaders[k] = v
24538	}
24539	reqHeaders.Set("User-Agent", c.s.userAgent())
24540	var body io.Reader = nil
24541	c.urlParams_.Set("alt", alt)
24542	c.urlParams_.Set("prettyPrint", "false")
24543	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
24544	urls += "?" + c.urlParams_.Encode()
24545	req, err := http.NewRequest("POST", urls, body)
24546	if err != nil {
24547		return nil, err
24548	}
24549	req.Header = reqHeaders
24550	googleapi.Expand(req.URL, map[string]string{
24551		"merchantId": strconv.FormatUint(c.merchantId, 10),
24552		"accountId":  strconv.FormatUint(c.accountId, 10),
24553		"country":    c.country,
24554	})
24555	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24556}
24557
24558// Do executes the "content.liasettings.requestinventoryverification" call.
24559// Exactly one of *LiasettingsRequestInventoryVerificationResponse or
24560// error will be non-nil. Any non-2xx status code is an error. Response
24561// headers are in either
24562// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
24563//  or (if a response was returned at all) in
24564// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24565// whether the returned error was because http.StatusNotModified was
24566// returned.
24567func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
24568	gensupport.SetOptions(c.urlParams_, opts...)
24569	res, err := c.doRequest("json")
24570	if res != nil && res.StatusCode == http.StatusNotModified {
24571		if res.Body != nil {
24572			res.Body.Close()
24573		}
24574		return nil, &googleapi.Error{
24575			Code:   res.StatusCode,
24576			Header: res.Header,
24577		}
24578	}
24579	if err != nil {
24580		return nil, err
24581	}
24582	defer googleapi.CloseBody(res)
24583	if err := googleapi.CheckResponse(res); err != nil {
24584		return nil, err
24585	}
24586	ret := &LiasettingsRequestInventoryVerificationResponse{
24587		ServerResponse: googleapi.ServerResponse{
24588			Header:         res.Header,
24589			HTTPStatusCode: res.StatusCode,
24590		},
24591	}
24592	target := &ret
24593	if err := gensupport.DecodeResponse(target, res); err != nil {
24594		return nil, err
24595	}
24596	return ret, nil
24597	// {
24598	//   "description": "Requests inventory validation for the specified country.",
24599	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
24600	//   "httpMethod": "POST",
24601	//   "id": "content.liasettings.requestinventoryverification",
24602	//   "parameterOrder": [
24603	//     "merchantId",
24604	//     "accountId",
24605	//     "country"
24606	//   ],
24607	//   "parameters": {
24608	//     "accountId": {
24609	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
24610	//       "format": "uint64",
24611	//       "location": "path",
24612	//       "required": true,
24613	//       "type": "string"
24614	//     },
24615	//     "country": {
24616	//       "description": "The country for which inventory validation is requested.",
24617	//       "location": "path",
24618	//       "required": true,
24619	//       "type": "string"
24620	//     },
24621	//     "merchantId": {
24622	//       "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.",
24623	//       "format": "uint64",
24624	//       "location": "path",
24625	//       "required": true,
24626	//       "type": "string"
24627	//     }
24628	//   },
24629	//   "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
24630	//   "response": {
24631	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
24632	//   },
24633	//   "scopes": [
24634	//     "https://www.googleapis.com/auth/content"
24635	//   ]
24636	// }
24637
24638}
24639
24640// method id "content.liasettings.setinventoryverificationcontact":
24641
24642type LiasettingsSetinventoryverificationcontactCall struct {
24643	s          *APIService
24644	merchantId uint64
24645	accountId  uint64
24646	urlParams_ gensupport.URLParams
24647	ctx_       context.Context
24648	header_    http.Header
24649}
24650
24651// Setinventoryverificationcontact: Sets the inventory verification
24652// contract for the specified country.
24653//
24654// - accountId: The ID of the account that manages the order. This
24655//   cannot be a multi-client account.
24656// - contactEmail: The email of the inventory verification contact.
24657// - contactName: The name of the inventory verification contact.
24658// - country: The country for which inventory verification is requested.
24659// - language: The language for which inventory verification is
24660//   requested.
24661// - merchantId: The ID of the managing account. If this parameter is
24662//   not the same as accountId, then this account must be a multi-client
24663//   account and `accountId` must be the ID of a sub-account of this
24664//   account.
24665func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, country string, language string, contactName string, contactEmail string) *LiasettingsSetinventoryverificationcontactCall {
24666	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24667	c.merchantId = merchantId
24668	c.accountId = accountId
24669	c.urlParams_.Set("country", country)
24670	c.urlParams_.Set("language", language)
24671	c.urlParams_.Set("contactName", contactName)
24672	c.urlParams_.Set("contactEmail", contactEmail)
24673	return c
24674}
24675
24676// Fields allows partial responses to be retrieved. See
24677// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24678// for more information.
24679func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
24680	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24681	return c
24682}
24683
24684// Context sets the context to be used in this call's Do method. Any
24685// pending HTTP request will be aborted if the provided context is
24686// canceled.
24687func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
24688	c.ctx_ = ctx
24689	return c
24690}
24691
24692// Header returns an http.Header that can be modified by the caller to
24693// add HTTP headers to the request.
24694func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
24695	if c.header_ == nil {
24696		c.header_ = make(http.Header)
24697	}
24698	return c.header_
24699}
24700
24701func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
24702	reqHeaders := make(http.Header)
24703	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
24704	for k, v := range c.header_ {
24705		reqHeaders[k] = v
24706	}
24707	reqHeaders.Set("User-Agent", c.s.userAgent())
24708	var body io.Reader = nil
24709	c.urlParams_.Set("alt", alt)
24710	c.urlParams_.Set("prettyPrint", "false")
24711	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
24712	urls += "?" + c.urlParams_.Encode()
24713	req, err := http.NewRequest("POST", urls, body)
24714	if err != nil {
24715		return nil, err
24716	}
24717	req.Header = reqHeaders
24718	googleapi.Expand(req.URL, map[string]string{
24719		"merchantId": strconv.FormatUint(c.merchantId, 10),
24720		"accountId":  strconv.FormatUint(c.accountId, 10),
24721	})
24722	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24723}
24724
24725// Do executes the "content.liasettings.setinventoryverificationcontact" call.
24726// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
24727// error will be non-nil. Any non-2xx status code is an error. Response
24728// headers are in either
24729// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
24730// der or (if a response was returned at all) in
24731// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24732// whether the returned error was because http.StatusNotModified was
24733// returned.
24734func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
24735	gensupport.SetOptions(c.urlParams_, opts...)
24736	res, err := c.doRequest("json")
24737	if res != nil && res.StatusCode == http.StatusNotModified {
24738		if res.Body != nil {
24739			res.Body.Close()
24740		}
24741		return nil, &googleapi.Error{
24742			Code:   res.StatusCode,
24743			Header: res.Header,
24744		}
24745	}
24746	if err != nil {
24747		return nil, err
24748	}
24749	defer googleapi.CloseBody(res)
24750	if err := googleapi.CheckResponse(res); err != nil {
24751		return nil, err
24752	}
24753	ret := &LiasettingsSetInventoryVerificationContactResponse{
24754		ServerResponse: googleapi.ServerResponse{
24755			Header:         res.Header,
24756			HTTPStatusCode: res.StatusCode,
24757		},
24758	}
24759	target := &ret
24760	if err := gensupport.DecodeResponse(target, res); err != nil {
24761		return nil, err
24762	}
24763	return ret, nil
24764	// {
24765	//   "description": "Sets the inventory verification contract for the specified country.",
24766	//   "flatPath": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
24767	//   "httpMethod": "POST",
24768	//   "id": "content.liasettings.setinventoryverificationcontact",
24769	//   "parameterOrder": [
24770	//     "merchantId",
24771	//     "accountId",
24772	//     "country",
24773	//     "language",
24774	//     "contactName",
24775	//     "contactEmail"
24776	//   ],
24777	//   "parameters": {
24778	//     "accountId": {
24779	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
24780	//       "format": "uint64",
24781	//       "location": "path",
24782	//       "required": true,
24783	//       "type": "string"
24784	//     },
24785	//     "contactEmail": {
24786	//       "description": "The email of the inventory verification contact.",
24787	//       "location": "query",
24788	//       "required": true,
24789	//       "type": "string"
24790	//     },
24791	//     "contactName": {
24792	//       "description": "The name of the inventory verification contact.",
24793	//       "location": "query",
24794	//       "required": true,
24795	//       "type": "string"
24796	//     },
24797	//     "country": {
24798	//       "description": "The country for which inventory verification is requested.",
24799	//       "location": "query",
24800	//       "required": true,
24801	//       "type": "string"
24802	//     },
24803	//     "language": {
24804	//       "description": "The language for which inventory verification is requested.",
24805	//       "location": "query",
24806	//       "required": true,
24807	//       "type": "string"
24808	//     },
24809	//     "merchantId": {
24810	//       "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.",
24811	//       "format": "uint64",
24812	//       "location": "path",
24813	//       "required": true,
24814	//       "type": "string"
24815	//     }
24816	//   },
24817	//   "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
24818	//   "response": {
24819	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
24820	//   },
24821	//   "scopes": [
24822	//     "https://www.googleapis.com/auth/content"
24823	//   ]
24824	// }
24825
24826}
24827
24828// method id "content.liasettings.setposdataprovider":
24829
24830type LiasettingsSetposdataproviderCall struct {
24831	s          *APIService
24832	merchantId uint64
24833	accountId  uint64
24834	urlParams_ gensupport.URLParams
24835	ctx_       context.Context
24836	header_    http.Header
24837}
24838
24839// Setposdataprovider: Sets the POS data provider for the specified
24840// country.
24841//
24842// - accountId: The ID of the account for which to retrieve accessible
24843//   Google My Business accounts.
24844// - country: The country for which the POS data provider is selected.
24845// - merchantId: The ID of the managing account. If this parameter is
24846//   not the same as accountId, then this account must be a multi-client
24847//   account and `accountId` must be the ID of a sub-account of this
24848//   account.
24849func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
24850	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24851	c.merchantId = merchantId
24852	c.accountId = accountId
24853	c.urlParams_.Set("country", country)
24854	return c
24855}
24856
24857// PosDataProviderId sets the optional parameter "posDataProviderId":
24858// The ID of POS data provider.
24859func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
24860	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
24861	return c
24862}
24863
24864// PosExternalAccountId sets the optional parameter
24865// "posExternalAccountId": The account ID by which this merchant is
24866// known to the POS data provider.
24867func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
24868	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
24869	return c
24870}
24871
24872// Fields allows partial responses to be retrieved. See
24873// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24874// for more information.
24875func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
24876	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24877	return c
24878}
24879
24880// Context sets the context to be used in this call's Do method. Any
24881// pending HTTP request will be aborted if the provided context is
24882// canceled.
24883func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
24884	c.ctx_ = ctx
24885	return c
24886}
24887
24888// Header returns an http.Header that can be modified by the caller to
24889// add HTTP headers to the request.
24890func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
24891	if c.header_ == nil {
24892		c.header_ = make(http.Header)
24893	}
24894	return c.header_
24895}
24896
24897func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
24898	reqHeaders := make(http.Header)
24899	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
24900	for k, v := range c.header_ {
24901		reqHeaders[k] = v
24902	}
24903	reqHeaders.Set("User-Agent", c.s.userAgent())
24904	var body io.Reader = nil
24905	c.urlParams_.Set("alt", alt)
24906	c.urlParams_.Set("prettyPrint", "false")
24907	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setposdataprovider")
24908	urls += "?" + c.urlParams_.Encode()
24909	req, err := http.NewRequest("POST", urls, body)
24910	if err != nil {
24911		return nil, err
24912	}
24913	req.Header = reqHeaders
24914	googleapi.Expand(req.URL, map[string]string{
24915		"merchantId": strconv.FormatUint(c.merchantId, 10),
24916		"accountId":  strconv.FormatUint(c.accountId, 10),
24917	})
24918	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24919}
24920
24921// Do executes the "content.liasettings.setposdataprovider" call.
24922// Exactly one of *LiasettingsSetPosDataProviderResponse or error will
24923// be non-nil. Any non-2xx status code is an error. Response headers are
24924// in either
24925// *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
24926// response was returned at all) in error.(*googleapi.Error).Header. Use
24927// googleapi.IsNotModified to check whether the returned error was
24928// because http.StatusNotModified was returned.
24929func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
24930	gensupport.SetOptions(c.urlParams_, opts...)
24931	res, err := c.doRequest("json")
24932	if res != nil && res.StatusCode == http.StatusNotModified {
24933		if res.Body != nil {
24934			res.Body.Close()
24935		}
24936		return nil, &googleapi.Error{
24937			Code:   res.StatusCode,
24938			Header: res.Header,
24939		}
24940	}
24941	if err != nil {
24942		return nil, err
24943	}
24944	defer googleapi.CloseBody(res)
24945	if err := googleapi.CheckResponse(res); err != nil {
24946		return nil, err
24947	}
24948	ret := &LiasettingsSetPosDataProviderResponse{
24949		ServerResponse: googleapi.ServerResponse{
24950			Header:         res.Header,
24951			HTTPStatusCode: res.StatusCode,
24952		},
24953	}
24954	target := &ret
24955	if err := gensupport.DecodeResponse(target, res); err != nil {
24956		return nil, err
24957	}
24958	return ret, nil
24959	// {
24960	//   "description": "Sets the POS data provider for the specified country.",
24961	//   "flatPath": "{merchantId}/liasettings/{accountId}/setposdataprovider",
24962	//   "httpMethod": "POST",
24963	//   "id": "content.liasettings.setposdataprovider",
24964	//   "parameterOrder": [
24965	//     "merchantId",
24966	//     "accountId",
24967	//     "country"
24968	//   ],
24969	//   "parameters": {
24970	//     "accountId": {
24971	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
24972	//       "format": "uint64",
24973	//       "location": "path",
24974	//       "required": true,
24975	//       "type": "string"
24976	//     },
24977	//     "country": {
24978	//       "description": "The country for which the POS data provider is selected.",
24979	//       "location": "query",
24980	//       "required": true,
24981	//       "type": "string"
24982	//     },
24983	//     "merchantId": {
24984	//       "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.",
24985	//       "format": "uint64",
24986	//       "location": "path",
24987	//       "required": true,
24988	//       "type": "string"
24989	//     },
24990	//     "posDataProviderId": {
24991	//       "description": "The ID of POS data provider.",
24992	//       "format": "uint64",
24993	//       "location": "query",
24994	//       "type": "string"
24995	//     },
24996	//     "posExternalAccountId": {
24997	//       "description": "The account ID by which this merchant is known to the POS data provider.",
24998	//       "location": "query",
24999	//       "type": "string"
25000	//     }
25001	//   },
25002	//   "path": "{merchantId}/liasettings/{accountId}/setposdataprovider",
25003	//   "response": {
25004	//     "$ref": "LiasettingsSetPosDataProviderResponse"
25005	//   },
25006	//   "scopes": [
25007	//     "https://www.googleapis.com/auth/content"
25008	//   ]
25009	// }
25010
25011}
25012
25013// method id "content.liasettings.update":
25014
25015type LiasettingsUpdateCall struct {
25016	s           *APIService
25017	merchantId  uint64
25018	accountId   uint64
25019	liasettings *LiaSettings
25020	urlParams_  gensupport.URLParams
25021	ctx_        context.Context
25022	header_     http.Header
25023}
25024
25025// Update: Updates the LIA settings of the account. Any fields that are
25026// not provided are deleted from the resource.
25027//
25028// - accountId: The ID of the account for which to get or update LIA
25029//   settings.
25030// - merchantId: The ID of the managing account. If this parameter is
25031//   not the same as accountId, then this account must be a multi-client
25032//   account and `accountId` must be the ID of a sub-account of this
25033//   account.
25034func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
25035	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25036	c.merchantId = merchantId
25037	c.accountId = accountId
25038	c.liasettings = liasettings
25039	return c
25040}
25041
25042// Fields allows partial responses to be retrieved. See
25043// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25044// for more information.
25045func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
25046	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25047	return c
25048}
25049
25050// Context sets the context to be used in this call's Do method. Any
25051// pending HTTP request will be aborted if the provided context is
25052// canceled.
25053func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
25054	c.ctx_ = ctx
25055	return c
25056}
25057
25058// Header returns an http.Header that can be modified by the caller to
25059// add HTTP headers to the request.
25060func (c *LiasettingsUpdateCall) Header() http.Header {
25061	if c.header_ == nil {
25062		c.header_ = make(http.Header)
25063	}
25064	return c.header_
25065}
25066
25067func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
25068	reqHeaders := make(http.Header)
25069	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
25070	for k, v := range c.header_ {
25071		reqHeaders[k] = v
25072	}
25073	reqHeaders.Set("User-Agent", c.s.userAgent())
25074	var body io.Reader = nil
25075	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
25076	if err != nil {
25077		return nil, err
25078	}
25079	reqHeaders.Set("Content-Type", "application/json")
25080	c.urlParams_.Set("alt", alt)
25081	c.urlParams_.Set("prettyPrint", "false")
25082	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
25083	urls += "?" + c.urlParams_.Encode()
25084	req, err := http.NewRequest("PUT", urls, body)
25085	if err != nil {
25086		return nil, err
25087	}
25088	req.Header = reqHeaders
25089	googleapi.Expand(req.URL, map[string]string{
25090		"merchantId": strconv.FormatUint(c.merchantId, 10),
25091		"accountId":  strconv.FormatUint(c.accountId, 10),
25092	})
25093	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25094}
25095
25096// Do executes the "content.liasettings.update" call.
25097// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
25098// status code is an error. Response headers are in either
25099// *LiaSettings.ServerResponse.Header or (if a response was returned at
25100// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
25101// to check whether the returned error was because
25102// http.StatusNotModified was returned.
25103func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
25104	gensupport.SetOptions(c.urlParams_, opts...)
25105	res, err := c.doRequest("json")
25106	if res != nil && res.StatusCode == http.StatusNotModified {
25107		if res.Body != nil {
25108			res.Body.Close()
25109		}
25110		return nil, &googleapi.Error{
25111			Code:   res.StatusCode,
25112			Header: res.Header,
25113		}
25114	}
25115	if err != nil {
25116		return nil, err
25117	}
25118	defer googleapi.CloseBody(res)
25119	if err := googleapi.CheckResponse(res); err != nil {
25120		return nil, err
25121	}
25122	ret := &LiaSettings{
25123		ServerResponse: googleapi.ServerResponse{
25124			Header:         res.Header,
25125			HTTPStatusCode: res.StatusCode,
25126		},
25127	}
25128	target := &ret
25129	if err := gensupport.DecodeResponse(target, res); err != nil {
25130		return nil, err
25131	}
25132	return ret, nil
25133	// {
25134	//   "description": "Updates the LIA settings of the account. Any fields that are not provided are deleted from the resource.",
25135	//   "flatPath": "{merchantId}/liasettings/{accountId}",
25136	//   "httpMethod": "PUT",
25137	//   "id": "content.liasettings.update",
25138	//   "parameterOrder": [
25139	//     "merchantId",
25140	//     "accountId"
25141	//   ],
25142	//   "parameters": {
25143	//     "accountId": {
25144	//       "description": "The ID of the account for which to get or update LIA settings.",
25145	//       "format": "uint64",
25146	//       "location": "path",
25147	//       "required": true,
25148	//       "type": "string"
25149	//     },
25150	//     "merchantId": {
25151	//       "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.",
25152	//       "format": "uint64",
25153	//       "location": "path",
25154	//       "required": true,
25155	//       "type": "string"
25156	//     }
25157	//   },
25158	//   "path": "{merchantId}/liasettings/{accountId}",
25159	//   "request": {
25160	//     "$ref": "LiaSettings"
25161	//   },
25162	//   "response": {
25163	//     "$ref": "LiaSettings"
25164	//   },
25165	//   "scopes": [
25166	//     "https://www.googleapis.com/auth/content"
25167	//   ]
25168	// }
25169
25170}
25171
25172// method id "content.localinventory.custombatch":
25173
25174type LocalinventoryCustombatchCall struct {
25175	s                                *APIService
25176	localinventorycustombatchrequest *LocalinventoryCustomBatchRequest
25177	urlParams_                       gensupport.URLParams
25178	ctx_                             context.Context
25179	header_                          http.Header
25180}
25181
25182// Custombatch: Updates local inventory for multiple products or stores
25183// in a single request.
25184func (r *LocalinventoryService) Custombatch(localinventorycustombatchrequest *LocalinventoryCustomBatchRequest) *LocalinventoryCustombatchCall {
25185	c := &LocalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25186	c.localinventorycustombatchrequest = localinventorycustombatchrequest
25187	return c
25188}
25189
25190// Fields allows partial responses to be retrieved. See
25191// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25192// for more information.
25193func (c *LocalinventoryCustombatchCall) Fields(s ...googleapi.Field) *LocalinventoryCustombatchCall {
25194	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25195	return c
25196}
25197
25198// Context sets the context to be used in this call's Do method. Any
25199// pending HTTP request will be aborted if the provided context is
25200// canceled.
25201func (c *LocalinventoryCustombatchCall) Context(ctx context.Context) *LocalinventoryCustombatchCall {
25202	c.ctx_ = ctx
25203	return c
25204}
25205
25206// Header returns an http.Header that can be modified by the caller to
25207// add HTTP headers to the request.
25208func (c *LocalinventoryCustombatchCall) Header() http.Header {
25209	if c.header_ == nil {
25210		c.header_ = make(http.Header)
25211	}
25212	return c.header_
25213}
25214
25215func (c *LocalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
25216	reqHeaders := make(http.Header)
25217	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
25218	for k, v := range c.header_ {
25219		reqHeaders[k] = v
25220	}
25221	reqHeaders.Set("User-Agent", c.s.userAgent())
25222	var body io.Reader = nil
25223	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventorycustombatchrequest)
25224	if err != nil {
25225		return nil, err
25226	}
25227	reqHeaders.Set("Content-Type", "application/json")
25228	c.urlParams_.Set("alt", alt)
25229	c.urlParams_.Set("prettyPrint", "false")
25230	urls := googleapi.ResolveRelative(c.s.BasePath, "localinventory/batch")
25231	urls += "?" + c.urlParams_.Encode()
25232	req, err := http.NewRequest("POST", urls, body)
25233	if err != nil {
25234		return nil, err
25235	}
25236	req.Header = reqHeaders
25237	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25238}
25239
25240// Do executes the "content.localinventory.custombatch" call.
25241// Exactly one of *LocalinventoryCustomBatchResponse or error will be
25242// non-nil. Any non-2xx status code is an error. Response headers are in
25243// either *LocalinventoryCustomBatchResponse.ServerResponse.Header or
25244// (if a response was returned at all) in
25245// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25246// whether the returned error was because http.StatusNotModified was
25247// returned.
25248func (c *LocalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*LocalinventoryCustomBatchResponse, error) {
25249	gensupport.SetOptions(c.urlParams_, opts...)
25250	res, err := c.doRequest("json")
25251	if res != nil && res.StatusCode == http.StatusNotModified {
25252		if res.Body != nil {
25253			res.Body.Close()
25254		}
25255		return nil, &googleapi.Error{
25256			Code:   res.StatusCode,
25257			Header: res.Header,
25258		}
25259	}
25260	if err != nil {
25261		return nil, err
25262	}
25263	defer googleapi.CloseBody(res)
25264	if err := googleapi.CheckResponse(res); err != nil {
25265		return nil, err
25266	}
25267	ret := &LocalinventoryCustomBatchResponse{
25268		ServerResponse: googleapi.ServerResponse{
25269			Header:         res.Header,
25270			HTTPStatusCode: res.StatusCode,
25271		},
25272	}
25273	target := &ret
25274	if err := gensupport.DecodeResponse(target, res); err != nil {
25275		return nil, err
25276	}
25277	return ret, nil
25278	// {
25279	//   "description": "Updates local inventory for multiple products or stores in a single request.",
25280	//   "flatPath": "localinventory/batch",
25281	//   "httpMethod": "POST",
25282	//   "id": "content.localinventory.custombatch",
25283	//   "parameterOrder": [],
25284	//   "parameters": {},
25285	//   "path": "localinventory/batch",
25286	//   "request": {
25287	//     "$ref": "LocalinventoryCustomBatchRequest"
25288	//   },
25289	//   "response": {
25290	//     "$ref": "LocalinventoryCustomBatchResponse"
25291	//   },
25292	//   "scopes": [
25293	//     "https://www.googleapis.com/auth/content"
25294	//   ]
25295	// }
25296
25297}
25298
25299// method id "content.localinventory.insert":
25300
25301type LocalinventoryInsertCall struct {
25302	s              *APIService
25303	merchantId     uint64
25304	productId      string
25305	localinventory *LocalInventory
25306	urlParams_     gensupport.URLParams
25307	ctx_           context.Context
25308	header_        http.Header
25309}
25310
25311// Insert: Updates the local inventory of a product in your Merchant
25312// Center account.
25313//
25314// - merchantId: The ID of the account that contains the product. This
25315//   account cannot be a multi-client account.
25316// - productId: The REST ID of the product for which to update local
25317//   inventory.
25318func (r *LocalinventoryService) Insert(merchantId uint64, productId string, localinventory *LocalInventory) *LocalinventoryInsertCall {
25319	c := &LocalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25320	c.merchantId = merchantId
25321	c.productId = productId
25322	c.localinventory = localinventory
25323	return c
25324}
25325
25326// Fields allows partial responses to be retrieved. See
25327// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25328// for more information.
25329func (c *LocalinventoryInsertCall) Fields(s ...googleapi.Field) *LocalinventoryInsertCall {
25330	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25331	return c
25332}
25333
25334// Context sets the context to be used in this call's Do method. Any
25335// pending HTTP request will be aborted if the provided context is
25336// canceled.
25337func (c *LocalinventoryInsertCall) Context(ctx context.Context) *LocalinventoryInsertCall {
25338	c.ctx_ = ctx
25339	return c
25340}
25341
25342// Header returns an http.Header that can be modified by the caller to
25343// add HTTP headers to the request.
25344func (c *LocalinventoryInsertCall) Header() http.Header {
25345	if c.header_ == nil {
25346		c.header_ = make(http.Header)
25347	}
25348	return c.header_
25349}
25350
25351func (c *LocalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
25352	reqHeaders := make(http.Header)
25353	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
25354	for k, v := range c.header_ {
25355		reqHeaders[k] = v
25356	}
25357	reqHeaders.Set("User-Agent", c.s.userAgent())
25358	var body io.Reader = nil
25359	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventory)
25360	if err != nil {
25361		return nil, err
25362	}
25363	reqHeaders.Set("Content-Type", "application/json")
25364	c.urlParams_.Set("alt", alt)
25365	c.urlParams_.Set("prettyPrint", "false")
25366	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/localinventory")
25367	urls += "?" + c.urlParams_.Encode()
25368	req, err := http.NewRequest("POST", urls, body)
25369	if err != nil {
25370		return nil, err
25371	}
25372	req.Header = reqHeaders
25373	googleapi.Expand(req.URL, map[string]string{
25374		"merchantId": strconv.FormatUint(c.merchantId, 10),
25375		"productId":  c.productId,
25376	})
25377	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25378}
25379
25380// Do executes the "content.localinventory.insert" call.
25381// Exactly one of *LocalInventory or error will be non-nil. Any non-2xx
25382// status code is an error. Response headers are in either
25383// *LocalInventory.ServerResponse.Header or (if a response was returned
25384// at all) in error.(*googleapi.Error).Header. Use
25385// googleapi.IsNotModified to check whether the returned error was
25386// because http.StatusNotModified was returned.
25387func (c *LocalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*LocalInventory, error) {
25388	gensupport.SetOptions(c.urlParams_, opts...)
25389	res, err := c.doRequest("json")
25390	if res != nil && res.StatusCode == http.StatusNotModified {
25391		if res.Body != nil {
25392			res.Body.Close()
25393		}
25394		return nil, &googleapi.Error{
25395			Code:   res.StatusCode,
25396			Header: res.Header,
25397		}
25398	}
25399	if err != nil {
25400		return nil, err
25401	}
25402	defer googleapi.CloseBody(res)
25403	if err := googleapi.CheckResponse(res); err != nil {
25404		return nil, err
25405	}
25406	ret := &LocalInventory{
25407		ServerResponse: googleapi.ServerResponse{
25408			Header:         res.Header,
25409			HTTPStatusCode: res.StatusCode,
25410		},
25411	}
25412	target := &ret
25413	if err := gensupport.DecodeResponse(target, res); err != nil {
25414		return nil, err
25415	}
25416	return ret, nil
25417	// {
25418	//   "description": "Updates the local inventory of a product in your Merchant Center account.",
25419	//   "flatPath": "{merchantId}/products/{productId}/localinventory",
25420	//   "httpMethod": "POST",
25421	//   "id": "content.localinventory.insert",
25422	//   "parameterOrder": [
25423	//     "merchantId",
25424	//     "productId"
25425	//   ],
25426	//   "parameters": {
25427	//     "merchantId": {
25428	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
25429	//       "format": "uint64",
25430	//       "location": "path",
25431	//       "required": true,
25432	//       "type": "string"
25433	//     },
25434	//     "productId": {
25435	//       "description": "The REST ID of the product for which to update local inventory.",
25436	//       "location": "path",
25437	//       "required": true,
25438	//       "type": "string"
25439	//     }
25440	//   },
25441	//   "path": "{merchantId}/products/{productId}/localinventory",
25442	//   "request": {
25443	//     "$ref": "LocalInventory"
25444	//   },
25445	//   "response": {
25446	//     "$ref": "LocalInventory"
25447	//   },
25448	//   "scopes": [
25449	//     "https://www.googleapis.com/auth/content"
25450	//   ]
25451	// }
25452
25453}
25454
25455// method id "content.orderinvoices.createchargeinvoice":
25456
25457type OrderinvoicesCreatechargeinvoiceCall struct {
25458	s                                       *APIService
25459	merchantId                              uint64
25460	orderId                                 string
25461	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
25462	urlParams_                              gensupport.URLParams
25463	ctx_                                    context.Context
25464	header_                                 http.Header
25465}
25466
25467// Createchargeinvoice: Creates a charge invoice for a shipment group,
25468// and triggers a charge capture for orderinvoice enabled orders.
25469//
25470// - merchantId: The ID of the account that manages the order. This
25471//   cannot be a multi-client account.
25472// - orderId: The ID of the order.
25473func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
25474	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25475	c.merchantId = merchantId
25476	c.orderId = orderId
25477	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
25478	return c
25479}
25480
25481// Fields allows partial responses to be retrieved. See
25482// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25483// for more information.
25484func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
25485	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25486	return c
25487}
25488
25489// Context sets the context to be used in this call's Do method. Any
25490// pending HTTP request will be aborted if the provided context is
25491// canceled.
25492func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
25493	c.ctx_ = ctx
25494	return c
25495}
25496
25497// Header returns an http.Header that can be modified by the caller to
25498// add HTTP headers to the request.
25499func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
25500	if c.header_ == nil {
25501		c.header_ = make(http.Header)
25502	}
25503	return c.header_
25504}
25505
25506func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
25507	reqHeaders := make(http.Header)
25508	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
25509	for k, v := range c.header_ {
25510		reqHeaders[k] = v
25511	}
25512	reqHeaders.Set("User-Agent", c.s.userAgent())
25513	var body io.Reader = nil
25514	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
25515	if err != nil {
25516		return nil, err
25517	}
25518	reqHeaders.Set("Content-Type", "application/json")
25519	c.urlParams_.Set("alt", alt)
25520	c.urlParams_.Set("prettyPrint", "false")
25521	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
25522	urls += "?" + c.urlParams_.Encode()
25523	req, err := http.NewRequest("POST", urls, body)
25524	if err != nil {
25525		return nil, err
25526	}
25527	req.Header = reqHeaders
25528	googleapi.Expand(req.URL, map[string]string{
25529		"merchantId": strconv.FormatUint(c.merchantId, 10),
25530		"orderId":    c.orderId,
25531	})
25532	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25533}
25534
25535// Do executes the "content.orderinvoices.createchargeinvoice" call.
25536// Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
25537// will be non-nil. Any non-2xx status code is an error. Response
25538// headers are in either
25539// *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
25540// (if a response was returned at all) in
25541// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25542// whether the returned error was because http.StatusNotModified was
25543// returned.
25544func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
25545	gensupport.SetOptions(c.urlParams_, opts...)
25546	res, err := c.doRequest("json")
25547	if res != nil && res.StatusCode == http.StatusNotModified {
25548		if res.Body != nil {
25549			res.Body.Close()
25550		}
25551		return nil, &googleapi.Error{
25552			Code:   res.StatusCode,
25553			Header: res.Header,
25554		}
25555	}
25556	if err != nil {
25557		return nil, err
25558	}
25559	defer googleapi.CloseBody(res)
25560	if err := googleapi.CheckResponse(res); err != nil {
25561		return nil, err
25562	}
25563	ret := &OrderinvoicesCreateChargeInvoiceResponse{
25564		ServerResponse: googleapi.ServerResponse{
25565			Header:         res.Header,
25566			HTTPStatusCode: res.StatusCode,
25567		},
25568	}
25569	target := &ret
25570	if err := gensupport.DecodeResponse(target, res); err != nil {
25571		return nil, err
25572	}
25573	return ret, nil
25574	// {
25575	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
25576	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
25577	//   "httpMethod": "POST",
25578	//   "id": "content.orderinvoices.createchargeinvoice",
25579	//   "parameterOrder": [
25580	//     "merchantId",
25581	//     "orderId"
25582	//   ],
25583	//   "parameters": {
25584	//     "merchantId": {
25585	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
25586	//       "format": "uint64",
25587	//       "location": "path",
25588	//       "required": true,
25589	//       "type": "string"
25590	//     },
25591	//     "orderId": {
25592	//       "description": "The ID of the order.",
25593	//       "location": "path",
25594	//       "required": true,
25595	//       "type": "string"
25596	//     }
25597	//   },
25598	//   "path": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
25599	//   "request": {
25600	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
25601	//   },
25602	//   "response": {
25603	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
25604	//   },
25605	//   "scopes": [
25606	//     "https://www.googleapis.com/auth/content"
25607	//   ]
25608	// }
25609
25610}
25611
25612// method id "content.orderinvoices.createrefundinvoice":
25613
25614type OrderinvoicesCreaterefundinvoiceCall struct {
25615	s                                       *APIService
25616	merchantId                              uint64
25617	orderId                                 string
25618	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
25619	urlParams_                              gensupport.URLParams
25620	ctx_                                    context.Context
25621	header_                                 http.Header
25622}
25623
25624// Createrefundinvoice: Creates a refund invoice for one or more
25625// shipment groups, and triggers a refund for orderinvoice enabled
25626// orders. This can only be used for line items that have previously
25627// been charged using `createChargeInvoice`. All amounts (except for the
25628// summary) are incremental with respect to the previous invoice.
25629//
25630// - merchantId: The ID of the account that manages the order. This
25631//   cannot be a multi-client account.
25632// - orderId: The ID of the order.
25633func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
25634	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25635	c.merchantId = merchantId
25636	c.orderId = orderId
25637	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
25638	return c
25639}
25640
25641// Fields allows partial responses to be retrieved. See
25642// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25643// for more information.
25644func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
25645	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25646	return c
25647}
25648
25649// Context sets the context to be used in this call's Do method. Any
25650// pending HTTP request will be aborted if the provided context is
25651// canceled.
25652func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
25653	c.ctx_ = ctx
25654	return c
25655}
25656
25657// Header returns an http.Header that can be modified by the caller to
25658// add HTTP headers to the request.
25659func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
25660	if c.header_ == nil {
25661		c.header_ = make(http.Header)
25662	}
25663	return c.header_
25664}
25665
25666func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
25667	reqHeaders := make(http.Header)
25668	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
25669	for k, v := range c.header_ {
25670		reqHeaders[k] = v
25671	}
25672	reqHeaders.Set("User-Agent", c.s.userAgent())
25673	var body io.Reader = nil
25674	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
25675	if err != nil {
25676		return nil, err
25677	}
25678	reqHeaders.Set("Content-Type", "application/json")
25679	c.urlParams_.Set("alt", alt)
25680	c.urlParams_.Set("prettyPrint", "false")
25681	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
25682	urls += "?" + c.urlParams_.Encode()
25683	req, err := http.NewRequest("POST", urls, body)
25684	if err != nil {
25685		return nil, err
25686	}
25687	req.Header = reqHeaders
25688	googleapi.Expand(req.URL, map[string]string{
25689		"merchantId": strconv.FormatUint(c.merchantId, 10),
25690		"orderId":    c.orderId,
25691	})
25692	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25693}
25694
25695// Do executes the "content.orderinvoices.createrefundinvoice" call.
25696// Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
25697// will be non-nil. Any non-2xx status code is an error. Response
25698// headers are in either
25699// *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
25700// (if a response was returned at all) in
25701// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25702// whether the returned error was because http.StatusNotModified was
25703// returned.
25704func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
25705	gensupport.SetOptions(c.urlParams_, opts...)
25706	res, err := c.doRequest("json")
25707	if res != nil && res.StatusCode == http.StatusNotModified {
25708		if res.Body != nil {
25709			res.Body.Close()
25710		}
25711		return nil, &googleapi.Error{
25712			Code:   res.StatusCode,
25713			Header: res.Header,
25714		}
25715	}
25716	if err != nil {
25717		return nil, err
25718	}
25719	defer googleapi.CloseBody(res)
25720	if err := googleapi.CheckResponse(res); err != nil {
25721		return nil, err
25722	}
25723	ret := &OrderinvoicesCreateRefundInvoiceResponse{
25724		ServerResponse: googleapi.ServerResponse{
25725			Header:         res.Header,
25726			HTTPStatusCode: res.StatusCode,
25727		},
25728	}
25729	target := &ret
25730	if err := gensupport.DecodeResponse(target, res); err != nil {
25731		return nil, err
25732	}
25733	return ret, nil
25734	// {
25735	//   "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.",
25736	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
25737	//   "httpMethod": "POST",
25738	//   "id": "content.orderinvoices.createrefundinvoice",
25739	//   "parameterOrder": [
25740	//     "merchantId",
25741	//     "orderId"
25742	//   ],
25743	//   "parameters": {
25744	//     "merchantId": {
25745	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
25746	//       "format": "uint64",
25747	//       "location": "path",
25748	//       "required": true,
25749	//       "type": "string"
25750	//     },
25751	//     "orderId": {
25752	//       "description": "The ID of the order.",
25753	//       "location": "path",
25754	//       "required": true,
25755	//       "type": "string"
25756	//     }
25757	//   },
25758	//   "path": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
25759	//   "request": {
25760	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
25761	//   },
25762	//   "response": {
25763	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
25764	//   },
25765	//   "scopes": [
25766	//     "https://www.googleapis.com/auth/content"
25767	//   ]
25768	// }
25769
25770}
25771
25772// method id "content.orderreports.listdisbursements":
25773
25774type OrderreportsListdisbursementsCall struct {
25775	s            *APIService
25776	merchantId   uint64
25777	urlParams_   gensupport.URLParams
25778	ifNoneMatch_ string
25779	ctx_         context.Context
25780	header_      http.Header
25781}
25782
25783// Listdisbursements: Retrieves a report for disbursements from your
25784// Merchant Center account.
25785//
25786// - merchantId: The ID of the account that manages the order. This
25787//   cannot be a multi-client account.
25788func (r *OrderreportsService) Listdisbursements(merchantId uint64) *OrderreportsListdisbursementsCall {
25789	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25790	c.merchantId = merchantId
25791	return c
25792}
25793
25794// DisbursementEndDate sets the optional parameter
25795// "disbursementEndDate": The last date which disbursements occurred. In
25796// ISO 8601 format. Default: current date.
25797func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
25798	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
25799	return c
25800}
25801
25802// DisbursementStartDate sets the optional parameter
25803// "disbursementStartDate": The first date which disbursements occurred.
25804// In ISO 8601 format.
25805func (c *OrderreportsListdisbursementsCall) DisbursementStartDate(disbursementStartDate string) *OrderreportsListdisbursementsCall {
25806	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
25807	return c
25808}
25809
25810// MaxResults sets the optional parameter "maxResults": The maximum
25811// number of disbursements to return in the response, used for paging.
25812func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
25813	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25814	return c
25815}
25816
25817// PageToken sets the optional parameter "pageToken": The token returned
25818// by the previous request.
25819func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
25820	c.urlParams_.Set("pageToken", pageToken)
25821	return c
25822}
25823
25824// Fields allows partial responses to be retrieved. See
25825// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25826// for more information.
25827func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
25828	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25829	return c
25830}
25831
25832// IfNoneMatch sets the optional parameter which makes the operation
25833// fail if the object's ETag matches the given value. This is useful for
25834// getting updates only after the object has changed since the last
25835// request. Use googleapi.IsNotModified to check whether the response
25836// error from Do is the result of In-None-Match.
25837func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
25838	c.ifNoneMatch_ = entityTag
25839	return c
25840}
25841
25842// Context sets the context to be used in this call's Do method. Any
25843// pending HTTP request will be aborted if the provided context is
25844// canceled.
25845func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
25846	c.ctx_ = ctx
25847	return c
25848}
25849
25850// Header returns an http.Header that can be modified by the caller to
25851// add HTTP headers to the request.
25852func (c *OrderreportsListdisbursementsCall) Header() http.Header {
25853	if c.header_ == nil {
25854		c.header_ = make(http.Header)
25855	}
25856	return c.header_
25857}
25858
25859func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
25860	reqHeaders := make(http.Header)
25861	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
25862	for k, v := range c.header_ {
25863		reqHeaders[k] = v
25864	}
25865	reqHeaders.Set("User-Agent", c.s.userAgent())
25866	if c.ifNoneMatch_ != "" {
25867		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25868	}
25869	var body io.Reader = nil
25870	c.urlParams_.Set("alt", alt)
25871	c.urlParams_.Set("prettyPrint", "false")
25872	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements")
25873	urls += "?" + c.urlParams_.Encode()
25874	req, err := http.NewRequest("GET", urls, body)
25875	if err != nil {
25876		return nil, err
25877	}
25878	req.Header = reqHeaders
25879	googleapi.Expand(req.URL, map[string]string{
25880		"merchantId": strconv.FormatUint(c.merchantId, 10),
25881	})
25882	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25883}
25884
25885// Do executes the "content.orderreports.listdisbursements" call.
25886// Exactly one of *OrderreportsListDisbursementsResponse or error will
25887// be non-nil. Any non-2xx status code is an error. Response headers are
25888// in either
25889// *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
25890// response was returned at all) in error.(*googleapi.Error).Header. Use
25891// googleapi.IsNotModified to check whether the returned error was
25892// because http.StatusNotModified was returned.
25893func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
25894	gensupport.SetOptions(c.urlParams_, opts...)
25895	res, err := c.doRequest("json")
25896	if res != nil && res.StatusCode == http.StatusNotModified {
25897		if res.Body != nil {
25898			res.Body.Close()
25899		}
25900		return nil, &googleapi.Error{
25901			Code:   res.StatusCode,
25902			Header: res.Header,
25903		}
25904	}
25905	if err != nil {
25906		return nil, err
25907	}
25908	defer googleapi.CloseBody(res)
25909	if err := googleapi.CheckResponse(res); err != nil {
25910		return nil, err
25911	}
25912	ret := &OrderreportsListDisbursementsResponse{
25913		ServerResponse: googleapi.ServerResponse{
25914			Header:         res.Header,
25915			HTTPStatusCode: res.StatusCode,
25916		},
25917	}
25918	target := &ret
25919	if err := gensupport.DecodeResponse(target, res); err != nil {
25920		return nil, err
25921	}
25922	return ret, nil
25923	// {
25924	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
25925	//   "flatPath": "{merchantId}/orderreports/disbursements",
25926	//   "httpMethod": "GET",
25927	//   "id": "content.orderreports.listdisbursements",
25928	//   "parameterOrder": [
25929	//     "merchantId"
25930	//   ],
25931	//   "parameters": {
25932	//     "disbursementEndDate": {
25933	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
25934	//       "location": "query",
25935	//       "type": "string"
25936	//     },
25937	//     "disbursementStartDate": {
25938	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
25939	//       "location": "query",
25940	//       "type": "string"
25941	//     },
25942	//     "maxResults": {
25943	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
25944	//       "format": "uint32",
25945	//       "location": "query",
25946	//       "type": "integer"
25947	//     },
25948	//     "merchantId": {
25949	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
25950	//       "format": "uint64",
25951	//       "location": "path",
25952	//       "required": true,
25953	//       "type": "string"
25954	//     },
25955	//     "pageToken": {
25956	//       "description": "The token returned by the previous request.",
25957	//       "location": "query",
25958	//       "type": "string"
25959	//     }
25960	//   },
25961	//   "path": "{merchantId}/orderreports/disbursements",
25962	//   "response": {
25963	//     "$ref": "OrderreportsListDisbursementsResponse"
25964	//   },
25965	//   "scopes": [
25966	//     "https://www.googleapis.com/auth/content"
25967	//   ]
25968	// }
25969
25970}
25971
25972// Pages invokes f for each page of results.
25973// A non-nil error returned from f will halt the iteration.
25974// The provided context supersedes any context provided to the Context method.
25975func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
25976	c.ctx_ = ctx
25977	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25978	for {
25979		x, err := c.Do()
25980		if err != nil {
25981			return err
25982		}
25983		if err := f(x); err != nil {
25984			return err
25985		}
25986		if x.NextPageToken == "" {
25987			return nil
25988		}
25989		c.PageToken(x.NextPageToken)
25990	}
25991}
25992
25993// method id "content.orderreports.listtransactions":
25994
25995type OrderreportsListtransactionsCall struct {
25996	s              *APIService
25997	merchantId     uint64
25998	disbursementId string
25999	urlParams_     gensupport.URLParams
26000	ifNoneMatch_   string
26001	ctx_           context.Context
26002	header_        http.Header
26003}
26004
26005// Listtransactions: Retrieves a list of transactions for a disbursement
26006// from your Merchant Center account.
26007//
26008// - disbursementId: The Google-provided ID of the disbursement (found
26009//   in Wallet).
26010// - merchantId: The ID of the account that manages the order. This
26011//   cannot be a multi-client account.
26012func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string) *OrderreportsListtransactionsCall {
26013	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26014	c.merchantId = merchantId
26015	c.disbursementId = disbursementId
26016	return c
26017}
26018
26019// MaxResults sets the optional parameter "maxResults": The maximum
26020// number of disbursements to return in the response, used for paging.
26021func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
26022	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
26023	return c
26024}
26025
26026// PageToken sets the optional parameter "pageToken": The token returned
26027// by the previous request.
26028func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
26029	c.urlParams_.Set("pageToken", pageToken)
26030	return c
26031}
26032
26033// TransactionEndDate sets the optional parameter "transactionEndDate":
26034// The last date in which transaction occurred. In ISO 8601 format.
26035// Default: current date.
26036func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
26037	c.urlParams_.Set("transactionEndDate", transactionEndDate)
26038	return c
26039}
26040
26041// TransactionStartDate sets the optional parameter
26042// "transactionStartDate": The first date in which transaction occurred.
26043// In ISO 8601 format.
26044func (c *OrderreportsListtransactionsCall) TransactionStartDate(transactionStartDate string) *OrderreportsListtransactionsCall {
26045	c.urlParams_.Set("transactionStartDate", transactionStartDate)
26046	return c
26047}
26048
26049// Fields allows partial responses to be retrieved. See
26050// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26051// for more information.
26052func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
26053	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26054	return c
26055}
26056
26057// IfNoneMatch sets the optional parameter which makes the operation
26058// fail if the object's ETag matches the given value. This is useful for
26059// getting updates only after the object has changed since the last
26060// request. Use googleapi.IsNotModified to check whether the response
26061// error from Do is the result of In-None-Match.
26062func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
26063	c.ifNoneMatch_ = entityTag
26064	return c
26065}
26066
26067// Context sets the context to be used in this call's Do method. Any
26068// pending HTTP request will be aborted if the provided context is
26069// canceled.
26070func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
26071	c.ctx_ = ctx
26072	return c
26073}
26074
26075// Header returns an http.Header that can be modified by the caller to
26076// add HTTP headers to the request.
26077func (c *OrderreportsListtransactionsCall) Header() http.Header {
26078	if c.header_ == nil {
26079		c.header_ = make(http.Header)
26080	}
26081	return c.header_
26082}
26083
26084func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
26085	reqHeaders := make(http.Header)
26086	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
26087	for k, v := range c.header_ {
26088		reqHeaders[k] = v
26089	}
26090	reqHeaders.Set("User-Agent", c.s.userAgent())
26091	if c.ifNoneMatch_ != "" {
26092		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26093	}
26094	var body io.Reader = nil
26095	c.urlParams_.Set("alt", alt)
26096	c.urlParams_.Set("prettyPrint", "false")
26097	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
26098	urls += "?" + c.urlParams_.Encode()
26099	req, err := http.NewRequest("GET", urls, body)
26100	if err != nil {
26101		return nil, err
26102	}
26103	req.Header = reqHeaders
26104	googleapi.Expand(req.URL, map[string]string{
26105		"merchantId":     strconv.FormatUint(c.merchantId, 10),
26106		"disbursementId": c.disbursementId,
26107	})
26108	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26109}
26110
26111// Do executes the "content.orderreports.listtransactions" call.
26112// Exactly one of *OrderreportsListTransactionsResponse or error will be
26113// non-nil. Any non-2xx status code is an error. Response headers are in
26114// either *OrderreportsListTransactionsResponse.ServerResponse.Header or
26115// (if a response was returned at all) in
26116// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26117// whether the returned error was because http.StatusNotModified was
26118// returned.
26119func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
26120	gensupport.SetOptions(c.urlParams_, opts...)
26121	res, err := c.doRequest("json")
26122	if res != nil && res.StatusCode == http.StatusNotModified {
26123		if res.Body != nil {
26124			res.Body.Close()
26125		}
26126		return nil, &googleapi.Error{
26127			Code:   res.StatusCode,
26128			Header: res.Header,
26129		}
26130	}
26131	if err != nil {
26132		return nil, err
26133	}
26134	defer googleapi.CloseBody(res)
26135	if err := googleapi.CheckResponse(res); err != nil {
26136		return nil, err
26137	}
26138	ret := &OrderreportsListTransactionsResponse{
26139		ServerResponse: googleapi.ServerResponse{
26140			Header:         res.Header,
26141			HTTPStatusCode: res.StatusCode,
26142		},
26143	}
26144	target := &ret
26145	if err := gensupport.DecodeResponse(target, res); err != nil {
26146		return nil, err
26147	}
26148	return ret, nil
26149	// {
26150	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
26151	//   "flatPath": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
26152	//   "httpMethod": "GET",
26153	//   "id": "content.orderreports.listtransactions",
26154	//   "parameterOrder": [
26155	//     "merchantId",
26156	//     "disbursementId"
26157	//   ],
26158	//   "parameters": {
26159	//     "disbursementId": {
26160	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
26161	//       "location": "path",
26162	//       "required": true,
26163	//       "type": "string"
26164	//     },
26165	//     "maxResults": {
26166	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
26167	//       "format": "uint32",
26168	//       "location": "query",
26169	//       "type": "integer"
26170	//     },
26171	//     "merchantId": {
26172	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26173	//       "format": "uint64",
26174	//       "location": "path",
26175	//       "required": true,
26176	//       "type": "string"
26177	//     },
26178	//     "pageToken": {
26179	//       "description": "The token returned by the previous request.",
26180	//       "location": "query",
26181	//       "type": "string"
26182	//     },
26183	//     "transactionEndDate": {
26184	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
26185	//       "location": "query",
26186	//       "type": "string"
26187	//     },
26188	//     "transactionStartDate": {
26189	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
26190	//       "location": "query",
26191	//       "type": "string"
26192	//     }
26193	//   },
26194	//   "path": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
26195	//   "response": {
26196	//     "$ref": "OrderreportsListTransactionsResponse"
26197	//   },
26198	//   "scopes": [
26199	//     "https://www.googleapis.com/auth/content"
26200	//   ]
26201	// }
26202
26203}
26204
26205// Pages invokes f for each page of results.
26206// A non-nil error returned from f will halt the iteration.
26207// The provided context supersedes any context provided to the Context method.
26208func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
26209	c.ctx_ = ctx
26210	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26211	for {
26212		x, err := c.Do()
26213		if err != nil {
26214			return err
26215		}
26216		if err := f(x); err != nil {
26217			return err
26218		}
26219		if x.NextPageToken == "" {
26220			return nil
26221		}
26222		c.PageToken(x.NextPageToken)
26223	}
26224}
26225
26226// method id "content.orderreturns.acknowledge":
26227
26228type OrderreturnsAcknowledgeCall struct {
26229	s                              *APIService
26230	merchantId                     uint64
26231	returnId                       string
26232	orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest
26233	urlParams_                     gensupport.URLParams
26234	ctx_                           context.Context
26235	header_                        http.Header
26236}
26237
26238// Acknowledge: Acks an order return in your Merchant Center account.
26239//
26240// - merchantId: The ID of the account that manages the order. This
26241//   cannot be a multi-client account.
26242// - returnId: The ID of the return.
26243func (r *OrderreturnsService) Acknowledge(merchantId uint64, returnId string, orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest) *OrderreturnsAcknowledgeCall {
26244	c := &OrderreturnsAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26245	c.merchantId = merchantId
26246	c.returnId = returnId
26247	c.orderreturnsacknowledgerequest = orderreturnsacknowledgerequest
26248	return c
26249}
26250
26251// Fields allows partial responses to be retrieved. See
26252// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26253// for more information.
26254func (c *OrderreturnsAcknowledgeCall) Fields(s ...googleapi.Field) *OrderreturnsAcknowledgeCall {
26255	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26256	return c
26257}
26258
26259// Context sets the context to be used in this call's Do method. Any
26260// pending HTTP request will be aborted if the provided context is
26261// canceled.
26262func (c *OrderreturnsAcknowledgeCall) Context(ctx context.Context) *OrderreturnsAcknowledgeCall {
26263	c.ctx_ = ctx
26264	return c
26265}
26266
26267// Header returns an http.Header that can be modified by the caller to
26268// add HTTP headers to the request.
26269func (c *OrderreturnsAcknowledgeCall) Header() http.Header {
26270	if c.header_ == nil {
26271		c.header_ = make(http.Header)
26272	}
26273	return c.header_
26274}
26275
26276func (c *OrderreturnsAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
26277	reqHeaders := make(http.Header)
26278	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
26279	for k, v := range c.header_ {
26280		reqHeaders[k] = v
26281	}
26282	reqHeaders.Set("User-Agent", c.s.userAgent())
26283	var body io.Reader = nil
26284	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsacknowledgerequest)
26285	if err != nil {
26286		return nil, err
26287	}
26288	reqHeaders.Set("Content-Type", "application/json")
26289	c.urlParams_.Set("alt", alt)
26290	c.urlParams_.Set("prettyPrint", "false")
26291	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/acknowledge")
26292	urls += "?" + c.urlParams_.Encode()
26293	req, err := http.NewRequest("POST", urls, body)
26294	if err != nil {
26295		return nil, err
26296	}
26297	req.Header = reqHeaders
26298	googleapi.Expand(req.URL, map[string]string{
26299		"merchantId": strconv.FormatUint(c.merchantId, 10),
26300		"returnId":   c.returnId,
26301	})
26302	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26303}
26304
26305// Do executes the "content.orderreturns.acknowledge" call.
26306// Exactly one of *OrderreturnsAcknowledgeResponse or error will be
26307// non-nil. Any non-2xx status code is an error. Response headers are in
26308// either *OrderreturnsAcknowledgeResponse.ServerResponse.Header or (if
26309// a response was returned at all) in error.(*googleapi.Error).Header.
26310// Use googleapi.IsNotModified to check whether the returned error was
26311// because http.StatusNotModified was returned.
26312func (c *OrderreturnsAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrderreturnsAcknowledgeResponse, error) {
26313	gensupport.SetOptions(c.urlParams_, opts...)
26314	res, err := c.doRequest("json")
26315	if res != nil && res.StatusCode == http.StatusNotModified {
26316		if res.Body != nil {
26317			res.Body.Close()
26318		}
26319		return nil, &googleapi.Error{
26320			Code:   res.StatusCode,
26321			Header: res.Header,
26322		}
26323	}
26324	if err != nil {
26325		return nil, err
26326	}
26327	defer googleapi.CloseBody(res)
26328	if err := googleapi.CheckResponse(res); err != nil {
26329		return nil, err
26330	}
26331	ret := &OrderreturnsAcknowledgeResponse{
26332		ServerResponse: googleapi.ServerResponse{
26333			Header:         res.Header,
26334			HTTPStatusCode: res.StatusCode,
26335		},
26336	}
26337	target := &ret
26338	if err := gensupport.DecodeResponse(target, res); err != nil {
26339		return nil, err
26340	}
26341	return ret, nil
26342	// {
26343	//   "description": "Acks an order return in your Merchant Center account.",
26344	//   "flatPath": "{merchantId}/orderreturns/{returnId}/acknowledge",
26345	//   "httpMethod": "POST",
26346	//   "id": "content.orderreturns.acknowledge",
26347	//   "parameterOrder": [
26348	//     "merchantId",
26349	//     "returnId"
26350	//   ],
26351	//   "parameters": {
26352	//     "merchantId": {
26353	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26354	//       "format": "uint64",
26355	//       "location": "path",
26356	//       "required": true,
26357	//       "type": "string"
26358	//     },
26359	//     "returnId": {
26360	//       "description": "The ID of the return.",
26361	//       "location": "path",
26362	//       "required": true,
26363	//       "type": "string"
26364	//     }
26365	//   },
26366	//   "path": "{merchantId}/orderreturns/{returnId}/acknowledge",
26367	//   "request": {
26368	//     "$ref": "OrderreturnsAcknowledgeRequest"
26369	//   },
26370	//   "response": {
26371	//     "$ref": "OrderreturnsAcknowledgeResponse"
26372	//   },
26373	//   "scopes": [
26374	//     "https://www.googleapis.com/auth/content"
26375	//   ]
26376	// }
26377
26378}
26379
26380// method id "content.orderreturns.createorderreturn":
26381
26382type OrderreturnsCreateorderreturnCall struct {
26383	s                                    *APIService
26384	merchantId                           uint64
26385	orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest
26386	urlParams_                           gensupport.URLParams
26387	ctx_                                 context.Context
26388	header_                              http.Header
26389}
26390
26391// Createorderreturn: Create return in your Merchant Center account.
26392//
26393// - merchantId: The ID of the account that manages the order. This
26394//   cannot be a multi-client account.
26395func (r *OrderreturnsService) Createorderreturn(merchantId uint64, orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest) *OrderreturnsCreateorderreturnCall {
26396	c := &OrderreturnsCreateorderreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26397	c.merchantId = merchantId
26398	c.orderreturnscreateorderreturnrequest = orderreturnscreateorderreturnrequest
26399	return c
26400}
26401
26402// Fields allows partial responses to be retrieved. See
26403// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26404// for more information.
26405func (c *OrderreturnsCreateorderreturnCall) Fields(s ...googleapi.Field) *OrderreturnsCreateorderreturnCall {
26406	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26407	return c
26408}
26409
26410// Context sets the context to be used in this call's Do method. Any
26411// pending HTTP request will be aborted if the provided context is
26412// canceled.
26413func (c *OrderreturnsCreateorderreturnCall) Context(ctx context.Context) *OrderreturnsCreateorderreturnCall {
26414	c.ctx_ = ctx
26415	return c
26416}
26417
26418// Header returns an http.Header that can be modified by the caller to
26419// add HTTP headers to the request.
26420func (c *OrderreturnsCreateorderreturnCall) Header() http.Header {
26421	if c.header_ == nil {
26422		c.header_ = make(http.Header)
26423	}
26424	return c.header_
26425}
26426
26427func (c *OrderreturnsCreateorderreturnCall) doRequest(alt string) (*http.Response, error) {
26428	reqHeaders := make(http.Header)
26429	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
26430	for k, v := range c.header_ {
26431		reqHeaders[k] = v
26432	}
26433	reqHeaders.Set("User-Agent", c.s.userAgent())
26434	var body io.Reader = nil
26435	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnscreateorderreturnrequest)
26436	if err != nil {
26437		return nil, err
26438	}
26439	reqHeaders.Set("Content-Type", "application/json")
26440	c.urlParams_.Set("alt", alt)
26441	c.urlParams_.Set("prettyPrint", "false")
26442	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/createOrderReturn")
26443	urls += "?" + c.urlParams_.Encode()
26444	req, err := http.NewRequest("POST", urls, body)
26445	if err != nil {
26446		return nil, err
26447	}
26448	req.Header = reqHeaders
26449	googleapi.Expand(req.URL, map[string]string{
26450		"merchantId": strconv.FormatUint(c.merchantId, 10),
26451	})
26452	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26453}
26454
26455// Do executes the "content.orderreturns.createorderreturn" call.
26456// Exactly one of *OrderreturnsCreateOrderReturnResponse or error will
26457// be non-nil. Any non-2xx status code is an error. Response headers are
26458// in either
26459// *OrderreturnsCreateOrderReturnResponse.ServerResponse.Header or (if a
26460// response was returned at all) in error.(*googleapi.Error).Header. Use
26461// googleapi.IsNotModified to check whether the returned error was
26462// because http.StatusNotModified was returned.
26463func (c *OrderreturnsCreateorderreturnCall) Do(opts ...googleapi.CallOption) (*OrderreturnsCreateOrderReturnResponse, error) {
26464	gensupport.SetOptions(c.urlParams_, opts...)
26465	res, err := c.doRequest("json")
26466	if res != nil && res.StatusCode == http.StatusNotModified {
26467		if res.Body != nil {
26468			res.Body.Close()
26469		}
26470		return nil, &googleapi.Error{
26471			Code:   res.StatusCode,
26472			Header: res.Header,
26473		}
26474	}
26475	if err != nil {
26476		return nil, err
26477	}
26478	defer googleapi.CloseBody(res)
26479	if err := googleapi.CheckResponse(res); err != nil {
26480		return nil, err
26481	}
26482	ret := &OrderreturnsCreateOrderReturnResponse{
26483		ServerResponse: googleapi.ServerResponse{
26484			Header:         res.Header,
26485			HTTPStatusCode: res.StatusCode,
26486		},
26487	}
26488	target := &ret
26489	if err := gensupport.DecodeResponse(target, res); err != nil {
26490		return nil, err
26491	}
26492	return ret, nil
26493	// {
26494	//   "description": "Create return in your Merchant Center account.",
26495	//   "flatPath": "{merchantId}/orderreturns/createOrderReturn",
26496	//   "httpMethod": "POST",
26497	//   "id": "content.orderreturns.createorderreturn",
26498	//   "parameterOrder": [
26499	//     "merchantId"
26500	//   ],
26501	//   "parameters": {
26502	//     "merchantId": {
26503	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26504	//       "format": "uint64",
26505	//       "location": "path",
26506	//       "required": true,
26507	//       "type": "string"
26508	//     }
26509	//   },
26510	//   "path": "{merchantId}/orderreturns/createOrderReturn",
26511	//   "request": {
26512	//     "$ref": "OrderreturnsCreateOrderReturnRequest"
26513	//   },
26514	//   "response": {
26515	//     "$ref": "OrderreturnsCreateOrderReturnResponse"
26516	//   },
26517	//   "scopes": [
26518	//     "https://www.googleapis.com/auth/content"
26519	//   ]
26520	// }
26521
26522}
26523
26524// method id "content.orderreturns.get":
26525
26526type OrderreturnsGetCall struct {
26527	s            *APIService
26528	merchantId   uint64
26529	returnId     string
26530	urlParams_   gensupport.URLParams
26531	ifNoneMatch_ string
26532	ctx_         context.Context
26533	header_      http.Header
26534}
26535
26536// Get: Retrieves an order return from your Merchant Center account.
26537//
26538// - merchantId: The ID of the account that manages the order. This
26539//   cannot be a multi-client account.
26540// - returnId: Merchant order return ID generated by Google.
26541func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
26542	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26543	c.merchantId = merchantId
26544	c.returnId = returnId
26545	return c
26546}
26547
26548// Fields allows partial responses to be retrieved. See
26549// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26550// for more information.
26551func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
26552	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26553	return c
26554}
26555
26556// IfNoneMatch sets the optional parameter which makes the operation
26557// fail if the object's ETag matches the given value. This is useful for
26558// getting updates only after the object has changed since the last
26559// request. Use googleapi.IsNotModified to check whether the response
26560// error from Do is the result of In-None-Match.
26561func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
26562	c.ifNoneMatch_ = entityTag
26563	return c
26564}
26565
26566// Context sets the context to be used in this call's Do method. Any
26567// pending HTTP request will be aborted if the provided context is
26568// canceled.
26569func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
26570	c.ctx_ = ctx
26571	return c
26572}
26573
26574// Header returns an http.Header that can be modified by the caller to
26575// add HTTP headers to the request.
26576func (c *OrderreturnsGetCall) Header() http.Header {
26577	if c.header_ == nil {
26578		c.header_ = make(http.Header)
26579	}
26580	return c.header_
26581}
26582
26583func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
26584	reqHeaders := make(http.Header)
26585	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
26586	for k, v := range c.header_ {
26587		reqHeaders[k] = v
26588	}
26589	reqHeaders.Set("User-Agent", c.s.userAgent())
26590	if c.ifNoneMatch_ != "" {
26591		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26592	}
26593	var body io.Reader = nil
26594	c.urlParams_.Set("alt", alt)
26595	c.urlParams_.Set("prettyPrint", "false")
26596	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}")
26597	urls += "?" + c.urlParams_.Encode()
26598	req, err := http.NewRequest("GET", urls, body)
26599	if err != nil {
26600		return nil, err
26601	}
26602	req.Header = reqHeaders
26603	googleapi.Expand(req.URL, map[string]string{
26604		"merchantId": strconv.FormatUint(c.merchantId, 10),
26605		"returnId":   c.returnId,
26606	})
26607	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26608}
26609
26610// Do executes the "content.orderreturns.get" call.
26611// Exactly one of *MerchantOrderReturn or error will be non-nil. Any
26612// non-2xx status code is an error. Response headers are in either
26613// *MerchantOrderReturn.ServerResponse.Header or (if a response was
26614// returned at all) in error.(*googleapi.Error).Header. Use
26615// googleapi.IsNotModified to check whether the returned error was
26616// because http.StatusNotModified was returned.
26617func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
26618	gensupport.SetOptions(c.urlParams_, opts...)
26619	res, err := c.doRequest("json")
26620	if res != nil && res.StatusCode == http.StatusNotModified {
26621		if res.Body != nil {
26622			res.Body.Close()
26623		}
26624		return nil, &googleapi.Error{
26625			Code:   res.StatusCode,
26626			Header: res.Header,
26627		}
26628	}
26629	if err != nil {
26630		return nil, err
26631	}
26632	defer googleapi.CloseBody(res)
26633	if err := googleapi.CheckResponse(res); err != nil {
26634		return nil, err
26635	}
26636	ret := &MerchantOrderReturn{
26637		ServerResponse: googleapi.ServerResponse{
26638			Header:         res.Header,
26639			HTTPStatusCode: res.StatusCode,
26640		},
26641	}
26642	target := &ret
26643	if err := gensupport.DecodeResponse(target, res); err != nil {
26644		return nil, err
26645	}
26646	return ret, nil
26647	// {
26648	//   "description": "Retrieves an order return from your Merchant Center account.",
26649	//   "flatPath": "{merchantId}/orderreturns/{returnId}",
26650	//   "httpMethod": "GET",
26651	//   "id": "content.orderreturns.get",
26652	//   "parameterOrder": [
26653	//     "merchantId",
26654	//     "returnId"
26655	//   ],
26656	//   "parameters": {
26657	//     "merchantId": {
26658	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26659	//       "format": "uint64",
26660	//       "location": "path",
26661	//       "required": true,
26662	//       "type": "string"
26663	//     },
26664	//     "returnId": {
26665	//       "description": "Merchant order return ID generated by Google.",
26666	//       "location": "path",
26667	//       "required": true,
26668	//       "type": "string"
26669	//     }
26670	//   },
26671	//   "path": "{merchantId}/orderreturns/{returnId}",
26672	//   "response": {
26673	//     "$ref": "MerchantOrderReturn"
26674	//   },
26675	//   "scopes": [
26676	//     "https://www.googleapis.com/auth/content"
26677	//   ]
26678	// }
26679
26680}
26681
26682// method id "content.orderreturns.list":
26683
26684type OrderreturnsListCall struct {
26685	s            *APIService
26686	merchantId   uint64
26687	urlParams_   gensupport.URLParams
26688	ifNoneMatch_ string
26689	ctx_         context.Context
26690	header_      http.Header
26691}
26692
26693// List: Lists order returns in your Merchant Center account.
26694//
26695// - merchantId: The ID of the account that manages the order. This
26696//   cannot be a multi-client account.
26697func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
26698	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26699	c.merchantId = merchantId
26700	return c
26701}
26702
26703// Acknowledged sets the optional parameter "acknowledged": Obtains
26704// order returns that match the acknowledgement status. When set to
26705// true, obtains order returns that have been acknowledged. When false,
26706// obtains order returns that have not been acknowledged. When not
26707// provided, obtains order returns regardless of their acknowledgement
26708// status. We recommend using this filter set to `false`, in conjunction
26709// with the `acknowledge` call, such that only un-acknowledged order
26710// returns are returned.
26711func (c *OrderreturnsListCall) Acknowledged(acknowledged bool) *OrderreturnsListCall {
26712	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
26713	return c
26714}
26715
26716// CreatedEndDate sets the optional parameter "createdEndDate": Obtains
26717// order returns created before this date (inclusively), in ISO 8601
26718// format.
26719func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
26720	c.urlParams_.Set("createdEndDate", createdEndDate)
26721	return c
26722}
26723
26724// CreatedStartDate sets the optional parameter "createdStartDate":
26725// Obtains order returns created after this date (inclusively), in ISO
26726// 8601 format.
26727func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
26728	c.urlParams_.Set("createdStartDate", createdStartDate)
26729	return c
26730}
26731
26732// GoogleOrderIds sets the optional parameter "googleOrderIds": Obtains
26733// order returns with the specified order ids. If this parameter is
26734// provided, createdStartDate, createdEndDate, shipmentType,
26735// shipmentStatus, shipmentState and acknowledged parameters must be not
26736// set. Note: if googleOrderId and shipmentTrackingNumber parameters are
26737// provided, the obtained results will include all order returns that
26738// either match the specified order id or the specified tracking number.
26739func (c *OrderreturnsListCall) GoogleOrderIds(googleOrderIds ...string) *OrderreturnsListCall {
26740	c.urlParams_.SetMulti("googleOrderIds", append([]string{}, googleOrderIds...))
26741	return c
26742}
26743
26744// MaxResults sets the optional parameter "maxResults": The maximum
26745// number of order returns to return in the response, used for paging.
26746// The default value is 25 returns per page, and the maximum allowed
26747// value is 250 returns per page.
26748func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
26749	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
26750	return c
26751}
26752
26753// OrderBy sets the optional parameter "orderBy": Return the results in
26754// the specified order.
26755//
26756// Possible values:
26757//   "RETURN_CREATION_TIME_DESC"
26758//   "RETURN_CREATION_TIME_ASC"
26759func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
26760	c.urlParams_.Set("orderBy", orderBy)
26761	return c
26762}
26763
26764// PageToken sets the optional parameter "pageToken": The token returned
26765// by the previous request.
26766func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
26767	c.urlParams_.Set("pageToken", pageToken)
26768	return c
26769}
26770
26771// ShipmentStates sets the optional parameter "shipmentStates": Obtains
26772// order returns that match any shipment state provided in this
26773// parameter. When this parameter is not provided, order returns are
26774// obtained regardless of their shipment states.
26775//
26776// Possible values:
26777//   "NEW"
26778//   "SHIPPED"
26779//   "COMPLETED"
26780//   "UNDELIVERABLE"
26781//   "PENDING"
26782func (c *OrderreturnsListCall) ShipmentStates(shipmentStates ...string) *OrderreturnsListCall {
26783	c.urlParams_.SetMulti("shipmentStates", append([]string{}, shipmentStates...))
26784	return c
26785}
26786
26787// ShipmentStatus sets the optional parameter "shipmentStatus": Obtains
26788// order returns that match any shipment status provided in this
26789// parameter. When this parameter is not provided, order returns are
26790// obtained regardless of their shipment statuses.
26791//
26792// Possible values:
26793//   "NEW"
26794//   "IN_PROGRESS"
26795//   "PROCESSED"
26796func (c *OrderreturnsListCall) ShipmentStatus(shipmentStatus ...string) *OrderreturnsListCall {
26797	c.urlParams_.SetMulti("shipmentStatus", append([]string{}, shipmentStatus...))
26798	return c
26799}
26800
26801// ShipmentTrackingNumbers sets the optional parameter
26802// "shipmentTrackingNumbers": Obtains order returns with the specified
26803// tracking numbers. If this parameter is provided, createdStartDate,
26804// createdEndDate, shipmentType, shipmentStatus, shipmentState and
26805// acknowledged parameters must be not set. Note: if googleOrderId and
26806// shipmentTrackingNumber parameters are provided, the obtained results
26807// will include all order returns that either match the specified order
26808// id or the specified tracking number.
26809func (c *OrderreturnsListCall) ShipmentTrackingNumbers(shipmentTrackingNumbers ...string) *OrderreturnsListCall {
26810	c.urlParams_.SetMulti("shipmentTrackingNumbers", append([]string{}, shipmentTrackingNumbers...))
26811	return c
26812}
26813
26814// ShipmentTypes sets the optional parameter "shipmentTypes": Obtains
26815// order returns that match any shipment type provided in this
26816// parameter. When this parameter is not provided, order returns are
26817// obtained regardless of their shipment types.
26818//
26819// Possible values:
26820//   "BY_MAIL"
26821//   "RETURNLESS"
26822//   "CONTACT_CUSTOMER_SUPPORT"
26823func (c *OrderreturnsListCall) ShipmentTypes(shipmentTypes ...string) *OrderreturnsListCall {
26824	c.urlParams_.SetMulti("shipmentTypes", append([]string{}, shipmentTypes...))
26825	return c
26826}
26827
26828// Fields allows partial responses to be retrieved. See
26829// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26830// for more information.
26831func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
26832	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26833	return c
26834}
26835
26836// IfNoneMatch sets the optional parameter which makes the operation
26837// fail if the object's ETag matches the given value. This is useful for
26838// getting updates only after the object has changed since the last
26839// request. Use googleapi.IsNotModified to check whether the response
26840// error from Do is the result of In-None-Match.
26841func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
26842	c.ifNoneMatch_ = entityTag
26843	return c
26844}
26845
26846// Context sets the context to be used in this call's Do method. Any
26847// pending HTTP request will be aborted if the provided context is
26848// canceled.
26849func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
26850	c.ctx_ = ctx
26851	return c
26852}
26853
26854// Header returns an http.Header that can be modified by the caller to
26855// add HTTP headers to the request.
26856func (c *OrderreturnsListCall) Header() http.Header {
26857	if c.header_ == nil {
26858		c.header_ = make(http.Header)
26859	}
26860	return c.header_
26861}
26862
26863func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
26864	reqHeaders := make(http.Header)
26865	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
26866	for k, v := range c.header_ {
26867		reqHeaders[k] = v
26868	}
26869	reqHeaders.Set("User-Agent", c.s.userAgent())
26870	if c.ifNoneMatch_ != "" {
26871		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26872	}
26873	var body io.Reader = nil
26874	c.urlParams_.Set("alt", alt)
26875	c.urlParams_.Set("prettyPrint", "false")
26876	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns")
26877	urls += "?" + c.urlParams_.Encode()
26878	req, err := http.NewRequest("GET", urls, body)
26879	if err != nil {
26880		return nil, err
26881	}
26882	req.Header = reqHeaders
26883	googleapi.Expand(req.URL, map[string]string{
26884		"merchantId": strconv.FormatUint(c.merchantId, 10),
26885	})
26886	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26887}
26888
26889// Do executes the "content.orderreturns.list" call.
26890// Exactly one of *OrderreturnsListResponse or error will be non-nil.
26891// Any non-2xx status code is an error. Response headers are in either
26892// *OrderreturnsListResponse.ServerResponse.Header or (if a response was
26893// returned at all) in error.(*googleapi.Error).Header. Use
26894// googleapi.IsNotModified to check whether the returned error was
26895// because http.StatusNotModified was returned.
26896func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
26897	gensupport.SetOptions(c.urlParams_, opts...)
26898	res, err := c.doRequest("json")
26899	if res != nil && res.StatusCode == http.StatusNotModified {
26900		if res.Body != nil {
26901			res.Body.Close()
26902		}
26903		return nil, &googleapi.Error{
26904			Code:   res.StatusCode,
26905			Header: res.Header,
26906		}
26907	}
26908	if err != nil {
26909		return nil, err
26910	}
26911	defer googleapi.CloseBody(res)
26912	if err := googleapi.CheckResponse(res); err != nil {
26913		return nil, err
26914	}
26915	ret := &OrderreturnsListResponse{
26916		ServerResponse: googleapi.ServerResponse{
26917			Header:         res.Header,
26918			HTTPStatusCode: res.StatusCode,
26919		},
26920	}
26921	target := &ret
26922	if err := gensupport.DecodeResponse(target, res); err != nil {
26923		return nil, err
26924	}
26925	return ret, nil
26926	// {
26927	//   "description": "Lists order returns in your Merchant Center account.",
26928	//   "flatPath": "{merchantId}/orderreturns",
26929	//   "httpMethod": "GET",
26930	//   "id": "content.orderreturns.list",
26931	//   "parameterOrder": [
26932	//     "merchantId"
26933	//   ],
26934	//   "parameters": {
26935	//     "acknowledged": {
26936	//       "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. ",
26937	//       "location": "query",
26938	//       "type": "boolean"
26939	//     },
26940	//     "createdEndDate": {
26941	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
26942	//       "location": "query",
26943	//       "type": "string"
26944	//     },
26945	//     "createdStartDate": {
26946	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
26947	//       "location": "query",
26948	//       "type": "string"
26949	//     },
26950	//     "googleOrderIds": {
26951	//       "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.",
26952	//       "location": "query",
26953	//       "repeated": true,
26954	//       "type": "string"
26955	//     },
26956	//     "maxResults": {
26957	//       "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.",
26958	//       "format": "uint32",
26959	//       "location": "query",
26960	//       "type": "integer"
26961	//     },
26962	//     "merchantId": {
26963	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26964	//       "format": "uint64",
26965	//       "location": "path",
26966	//       "required": true,
26967	//       "type": "string"
26968	//     },
26969	//     "orderBy": {
26970	//       "description": "Return the results in the specified order.",
26971	//       "enum": [
26972	//         "RETURN_CREATION_TIME_DESC",
26973	//         "RETURN_CREATION_TIME_ASC"
26974	//       ],
26975	//       "enumDescriptions": [
26976	//         "",
26977	//         ""
26978	//       ],
26979	//       "location": "query",
26980	//       "type": "string"
26981	//     },
26982	//     "pageToken": {
26983	//       "description": "The token returned by the previous request.",
26984	//       "location": "query",
26985	//       "type": "string"
26986	//     },
26987	//     "shipmentStates": {
26988	//       "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.",
26989	//       "enum": [
26990	//         "NEW",
26991	//         "SHIPPED",
26992	//         "COMPLETED",
26993	//         "UNDELIVERABLE",
26994	//         "PENDING"
26995	//       ],
26996	//       "enumDescriptions": [
26997	//         "",
26998	//         "",
26999	//         "",
27000	//         "",
27001	//         ""
27002	//       ],
27003	//       "location": "query",
27004	//       "repeated": true,
27005	//       "type": "string"
27006	//     },
27007	//     "shipmentStatus": {
27008	//       "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.",
27009	//       "enum": [
27010	//         "NEW",
27011	//         "IN_PROGRESS",
27012	//         "PROCESSED"
27013	//       ],
27014	//       "enumDescriptions": [
27015	//         "",
27016	//         "",
27017	//         ""
27018	//       ],
27019	//       "location": "query",
27020	//       "repeated": true,
27021	//       "type": "string"
27022	//     },
27023	//     "shipmentTrackingNumbers": {
27024	//       "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.",
27025	//       "location": "query",
27026	//       "repeated": true,
27027	//       "type": "string"
27028	//     },
27029	//     "shipmentTypes": {
27030	//       "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.",
27031	//       "enum": [
27032	//         "BY_MAIL",
27033	//         "RETURNLESS",
27034	//         "CONTACT_CUSTOMER_SUPPORT"
27035	//       ],
27036	//       "enumDescriptions": [
27037	//         "",
27038	//         "",
27039	//         ""
27040	//       ],
27041	//       "location": "query",
27042	//       "repeated": true,
27043	//       "type": "string"
27044	//     }
27045	//   },
27046	//   "path": "{merchantId}/orderreturns",
27047	//   "response": {
27048	//     "$ref": "OrderreturnsListResponse"
27049	//   },
27050	//   "scopes": [
27051	//     "https://www.googleapis.com/auth/content"
27052	//   ]
27053	// }
27054
27055}
27056
27057// Pages invokes f for each page of results.
27058// A non-nil error returned from f will halt the iteration.
27059// The provided context supersedes any context provided to the Context method.
27060func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
27061	c.ctx_ = ctx
27062	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
27063	for {
27064		x, err := c.Do()
27065		if err != nil {
27066			return err
27067		}
27068		if err := f(x); err != nil {
27069			return err
27070		}
27071		if x.NextPageToken == "" {
27072			return nil
27073		}
27074		c.PageToken(x.NextPageToken)
27075	}
27076}
27077
27078// method id "content.orderreturns.process":
27079
27080type OrderreturnsProcessCall struct {
27081	s                          *APIService
27082	merchantId                 uint64
27083	returnId                   string
27084	orderreturnsprocessrequest *OrderreturnsProcessRequest
27085	urlParams_                 gensupport.URLParams
27086	ctx_                       context.Context
27087	header_                    http.Header
27088}
27089
27090// Process: Processes return in your Merchant Center account.
27091//
27092// - merchantId: The ID of the account that manages the order. This
27093//   cannot be a multi-client account.
27094// - returnId: The ID of the return.
27095func (r *OrderreturnsService) Process(merchantId uint64, returnId string, orderreturnsprocessrequest *OrderreturnsProcessRequest) *OrderreturnsProcessCall {
27096	c := &OrderreturnsProcessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27097	c.merchantId = merchantId
27098	c.returnId = returnId
27099	c.orderreturnsprocessrequest = orderreturnsprocessrequest
27100	return c
27101}
27102
27103// Fields allows partial responses to be retrieved. See
27104// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27105// for more information.
27106func (c *OrderreturnsProcessCall) Fields(s ...googleapi.Field) *OrderreturnsProcessCall {
27107	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27108	return c
27109}
27110
27111// Context sets the context to be used in this call's Do method. Any
27112// pending HTTP request will be aborted if the provided context is
27113// canceled.
27114func (c *OrderreturnsProcessCall) Context(ctx context.Context) *OrderreturnsProcessCall {
27115	c.ctx_ = ctx
27116	return c
27117}
27118
27119// Header returns an http.Header that can be modified by the caller to
27120// add HTTP headers to the request.
27121func (c *OrderreturnsProcessCall) Header() http.Header {
27122	if c.header_ == nil {
27123		c.header_ = make(http.Header)
27124	}
27125	return c.header_
27126}
27127
27128func (c *OrderreturnsProcessCall) doRequest(alt string) (*http.Response, error) {
27129	reqHeaders := make(http.Header)
27130	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
27131	for k, v := range c.header_ {
27132		reqHeaders[k] = v
27133	}
27134	reqHeaders.Set("User-Agent", c.s.userAgent())
27135	var body io.Reader = nil
27136	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsprocessrequest)
27137	if err != nil {
27138		return nil, err
27139	}
27140	reqHeaders.Set("Content-Type", "application/json")
27141	c.urlParams_.Set("alt", alt)
27142	c.urlParams_.Set("prettyPrint", "false")
27143	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/process")
27144	urls += "?" + c.urlParams_.Encode()
27145	req, err := http.NewRequest("POST", urls, body)
27146	if err != nil {
27147		return nil, err
27148	}
27149	req.Header = reqHeaders
27150	googleapi.Expand(req.URL, map[string]string{
27151		"merchantId": strconv.FormatUint(c.merchantId, 10),
27152		"returnId":   c.returnId,
27153	})
27154	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27155}
27156
27157// Do executes the "content.orderreturns.process" call.
27158// Exactly one of *OrderreturnsProcessResponse or error will be non-nil.
27159// Any non-2xx status code is an error. Response headers are in either
27160// *OrderreturnsProcessResponse.ServerResponse.Header or (if a response
27161// was returned at all) in error.(*googleapi.Error).Header. Use
27162// googleapi.IsNotModified to check whether the returned error was
27163// because http.StatusNotModified was returned.
27164func (c *OrderreturnsProcessCall) Do(opts ...googleapi.CallOption) (*OrderreturnsProcessResponse, error) {
27165	gensupport.SetOptions(c.urlParams_, opts...)
27166	res, err := c.doRequest("json")
27167	if res != nil && res.StatusCode == http.StatusNotModified {
27168		if res.Body != nil {
27169			res.Body.Close()
27170		}
27171		return nil, &googleapi.Error{
27172			Code:   res.StatusCode,
27173			Header: res.Header,
27174		}
27175	}
27176	if err != nil {
27177		return nil, err
27178	}
27179	defer googleapi.CloseBody(res)
27180	if err := googleapi.CheckResponse(res); err != nil {
27181		return nil, err
27182	}
27183	ret := &OrderreturnsProcessResponse{
27184		ServerResponse: googleapi.ServerResponse{
27185			Header:         res.Header,
27186			HTTPStatusCode: res.StatusCode,
27187		},
27188	}
27189	target := &ret
27190	if err := gensupport.DecodeResponse(target, res); err != nil {
27191		return nil, err
27192	}
27193	return ret, nil
27194	// {
27195	//   "description": "Processes return in your Merchant Center account.",
27196	//   "flatPath": "{merchantId}/orderreturns/{returnId}/process",
27197	//   "httpMethod": "POST",
27198	//   "id": "content.orderreturns.process",
27199	//   "parameterOrder": [
27200	//     "merchantId",
27201	//     "returnId"
27202	//   ],
27203	//   "parameters": {
27204	//     "merchantId": {
27205	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27206	//       "format": "uint64",
27207	//       "location": "path",
27208	//       "required": true,
27209	//       "type": "string"
27210	//     },
27211	//     "returnId": {
27212	//       "description": "The ID of the return.",
27213	//       "location": "path",
27214	//       "required": true,
27215	//       "type": "string"
27216	//     }
27217	//   },
27218	//   "path": "{merchantId}/orderreturns/{returnId}/process",
27219	//   "request": {
27220	//     "$ref": "OrderreturnsProcessRequest"
27221	//   },
27222	//   "response": {
27223	//     "$ref": "OrderreturnsProcessResponse"
27224	//   },
27225	//   "scopes": [
27226	//     "https://www.googleapis.com/auth/content"
27227	//   ]
27228	// }
27229
27230}
27231
27232// method id "content.orders.acknowledge":
27233
27234type OrdersAcknowledgeCall struct {
27235	s                        *APIService
27236	merchantId               uint64
27237	orderId                  string
27238	ordersacknowledgerequest *OrdersAcknowledgeRequest
27239	urlParams_               gensupport.URLParams
27240	ctx_                     context.Context
27241	header_                  http.Header
27242}
27243
27244// Acknowledge: Marks an order as acknowledged.
27245//
27246// - merchantId: The ID of the account that manages the order. This
27247//   cannot be a multi-client account.
27248// - orderId: The ID of the order.
27249func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
27250	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27251	c.merchantId = merchantId
27252	c.orderId = orderId
27253	c.ordersacknowledgerequest = ordersacknowledgerequest
27254	return c
27255}
27256
27257// Fields allows partial responses to be retrieved. See
27258// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27259// for more information.
27260func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
27261	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27262	return c
27263}
27264
27265// Context sets the context to be used in this call's Do method. Any
27266// pending HTTP request will be aborted if the provided context is
27267// canceled.
27268func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
27269	c.ctx_ = ctx
27270	return c
27271}
27272
27273// Header returns an http.Header that can be modified by the caller to
27274// add HTTP headers to the request.
27275func (c *OrdersAcknowledgeCall) Header() http.Header {
27276	if c.header_ == nil {
27277		c.header_ = make(http.Header)
27278	}
27279	return c.header_
27280}
27281
27282func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
27283	reqHeaders := make(http.Header)
27284	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
27285	for k, v := range c.header_ {
27286		reqHeaders[k] = v
27287	}
27288	reqHeaders.Set("User-Agent", c.s.userAgent())
27289	var body io.Reader = nil
27290	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
27291	if err != nil {
27292		return nil, err
27293	}
27294	reqHeaders.Set("Content-Type", "application/json")
27295	c.urlParams_.Set("alt", alt)
27296	c.urlParams_.Set("prettyPrint", "false")
27297	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/acknowledge")
27298	urls += "?" + c.urlParams_.Encode()
27299	req, err := http.NewRequest("POST", urls, body)
27300	if err != nil {
27301		return nil, err
27302	}
27303	req.Header = reqHeaders
27304	googleapi.Expand(req.URL, map[string]string{
27305		"merchantId": strconv.FormatUint(c.merchantId, 10),
27306		"orderId":    c.orderId,
27307	})
27308	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27309}
27310
27311// Do executes the "content.orders.acknowledge" call.
27312// Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
27313// Any non-2xx status code is an error. Response headers are in either
27314// *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
27315// was returned at all) in error.(*googleapi.Error).Header. Use
27316// googleapi.IsNotModified to check whether the returned error was
27317// because http.StatusNotModified was returned.
27318func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
27319	gensupport.SetOptions(c.urlParams_, opts...)
27320	res, err := c.doRequest("json")
27321	if res != nil && res.StatusCode == http.StatusNotModified {
27322		if res.Body != nil {
27323			res.Body.Close()
27324		}
27325		return nil, &googleapi.Error{
27326			Code:   res.StatusCode,
27327			Header: res.Header,
27328		}
27329	}
27330	if err != nil {
27331		return nil, err
27332	}
27333	defer googleapi.CloseBody(res)
27334	if err := googleapi.CheckResponse(res); err != nil {
27335		return nil, err
27336	}
27337	ret := &OrdersAcknowledgeResponse{
27338		ServerResponse: googleapi.ServerResponse{
27339			Header:         res.Header,
27340			HTTPStatusCode: res.StatusCode,
27341		},
27342	}
27343	target := &ret
27344	if err := gensupport.DecodeResponse(target, res); err != nil {
27345		return nil, err
27346	}
27347	return ret, nil
27348	// {
27349	//   "description": "Marks an order as acknowledged.",
27350	//   "flatPath": "{merchantId}/orders/{orderId}/acknowledge",
27351	//   "httpMethod": "POST",
27352	//   "id": "content.orders.acknowledge",
27353	//   "parameterOrder": [
27354	//     "merchantId",
27355	//     "orderId"
27356	//   ],
27357	//   "parameters": {
27358	//     "merchantId": {
27359	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27360	//       "format": "uint64",
27361	//       "location": "path",
27362	//       "required": true,
27363	//       "type": "string"
27364	//     },
27365	//     "orderId": {
27366	//       "description": "The ID of the order.",
27367	//       "location": "path",
27368	//       "required": true,
27369	//       "type": "string"
27370	//     }
27371	//   },
27372	//   "path": "{merchantId}/orders/{orderId}/acknowledge",
27373	//   "request": {
27374	//     "$ref": "OrdersAcknowledgeRequest"
27375	//   },
27376	//   "response": {
27377	//     "$ref": "OrdersAcknowledgeResponse"
27378	//   },
27379	//   "scopes": [
27380	//     "https://www.googleapis.com/auth/content"
27381	//   ]
27382	// }
27383
27384}
27385
27386// method id "content.orders.advancetestorder":
27387
27388type OrdersAdvancetestorderCall struct {
27389	s          *APIService
27390	merchantId uint64
27391	orderId    string
27392	urlParams_ gensupport.URLParams
27393	ctx_       context.Context
27394	header_    http.Header
27395}
27396
27397// Advancetestorder: Sandbox only. Moves a test order from state
27398// "inProgress" to state "pendingShipment".
27399//
27400// - merchantId: The ID of the account that manages the order. This
27401//   cannot be a multi-client account.
27402// - orderId: The ID of the test order to modify.
27403func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
27404	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27405	c.merchantId = merchantId
27406	c.orderId = orderId
27407	return c
27408}
27409
27410// Fields allows partial responses to be retrieved. See
27411// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27412// for more information.
27413func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
27414	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27415	return c
27416}
27417
27418// Context sets the context to be used in this call's Do method. Any
27419// pending HTTP request will be aborted if the provided context is
27420// canceled.
27421func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
27422	c.ctx_ = ctx
27423	return c
27424}
27425
27426// Header returns an http.Header that can be modified by the caller to
27427// add HTTP headers to the request.
27428func (c *OrdersAdvancetestorderCall) Header() http.Header {
27429	if c.header_ == nil {
27430		c.header_ = make(http.Header)
27431	}
27432	return c.header_
27433}
27434
27435func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
27436	reqHeaders := make(http.Header)
27437	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
27438	for k, v := range c.header_ {
27439		reqHeaders[k] = v
27440	}
27441	reqHeaders.Set("User-Agent", c.s.userAgent())
27442	var body io.Reader = nil
27443	c.urlParams_.Set("alt", alt)
27444	c.urlParams_.Set("prettyPrint", "false")
27445	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/advance")
27446	urls += "?" + c.urlParams_.Encode()
27447	req, err := http.NewRequest("POST", urls, body)
27448	if err != nil {
27449		return nil, err
27450	}
27451	req.Header = reqHeaders
27452	googleapi.Expand(req.URL, map[string]string{
27453		"merchantId": strconv.FormatUint(c.merchantId, 10),
27454		"orderId":    c.orderId,
27455	})
27456	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27457}
27458
27459// Do executes the "content.orders.advancetestorder" call.
27460// Exactly one of *OrdersAdvanceTestOrderResponse or error will be
27461// non-nil. Any non-2xx status code is an error. Response headers are in
27462// either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
27463// response was returned at all) in error.(*googleapi.Error).Header. Use
27464// googleapi.IsNotModified to check whether the returned error was
27465// because http.StatusNotModified was returned.
27466func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
27467	gensupport.SetOptions(c.urlParams_, opts...)
27468	res, err := c.doRequest("json")
27469	if res != nil && res.StatusCode == http.StatusNotModified {
27470		if res.Body != nil {
27471			res.Body.Close()
27472		}
27473		return nil, &googleapi.Error{
27474			Code:   res.StatusCode,
27475			Header: res.Header,
27476		}
27477	}
27478	if err != nil {
27479		return nil, err
27480	}
27481	defer googleapi.CloseBody(res)
27482	if err := googleapi.CheckResponse(res); err != nil {
27483		return nil, err
27484	}
27485	ret := &OrdersAdvanceTestOrderResponse{
27486		ServerResponse: googleapi.ServerResponse{
27487			Header:         res.Header,
27488			HTTPStatusCode: res.StatusCode,
27489		},
27490	}
27491	target := &ret
27492	if err := gensupport.DecodeResponse(target, res); err != nil {
27493		return nil, err
27494	}
27495	return ret, nil
27496	// {
27497	//   "description": "Sandbox only. Moves a test order from state \"`inProgress`\" to state \"`pendingShipment`\".",
27498	//   "flatPath": "{merchantId}/testorders/{orderId}/advance",
27499	//   "httpMethod": "POST",
27500	//   "id": "content.orders.advancetestorder",
27501	//   "parameterOrder": [
27502	//     "merchantId",
27503	//     "orderId"
27504	//   ],
27505	//   "parameters": {
27506	//     "merchantId": {
27507	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27508	//       "format": "uint64",
27509	//       "location": "path",
27510	//       "required": true,
27511	//       "type": "string"
27512	//     },
27513	//     "orderId": {
27514	//       "description": "The ID of the test order to modify.",
27515	//       "location": "path",
27516	//       "required": true,
27517	//       "type": "string"
27518	//     }
27519	//   },
27520	//   "path": "{merchantId}/testorders/{orderId}/advance",
27521	//   "response": {
27522	//     "$ref": "OrdersAdvanceTestOrderResponse"
27523	//   },
27524	//   "scopes": [
27525	//     "https://www.googleapis.com/auth/content"
27526	//   ]
27527	// }
27528
27529}
27530
27531// method id "content.orders.cancel":
27532
27533type OrdersCancelCall struct {
27534	s                   *APIService
27535	merchantId          uint64
27536	orderId             string
27537	orderscancelrequest *OrdersCancelRequest
27538	urlParams_          gensupport.URLParams
27539	ctx_                context.Context
27540	header_             http.Header
27541}
27542
27543// Cancel: Cancels all line items in an order, making a full refund.
27544//
27545// - merchantId: The ID of the account that manages the order. This
27546//   cannot be a multi-client account.
27547// - orderId: The ID of the order to cancel.
27548func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
27549	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27550	c.merchantId = merchantId
27551	c.orderId = orderId
27552	c.orderscancelrequest = orderscancelrequest
27553	return c
27554}
27555
27556// Fields allows partial responses to be retrieved. See
27557// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27558// for more information.
27559func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
27560	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27561	return c
27562}
27563
27564// Context sets the context to be used in this call's Do method. Any
27565// pending HTTP request will be aborted if the provided context is
27566// canceled.
27567func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
27568	c.ctx_ = ctx
27569	return c
27570}
27571
27572// Header returns an http.Header that can be modified by the caller to
27573// add HTTP headers to the request.
27574func (c *OrdersCancelCall) Header() http.Header {
27575	if c.header_ == nil {
27576		c.header_ = make(http.Header)
27577	}
27578	return c.header_
27579}
27580
27581func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
27582	reqHeaders := make(http.Header)
27583	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
27584	for k, v := range c.header_ {
27585		reqHeaders[k] = v
27586	}
27587	reqHeaders.Set("User-Agent", c.s.userAgent())
27588	var body io.Reader = nil
27589	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
27590	if err != nil {
27591		return nil, err
27592	}
27593	reqHeaders.Set("Content-Type", "application/json")
27594	c.urlParams_.Set("alt", alt)
27595	c.urlParams_.Set("prettyPrint", "false")
27596	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancel")
27597	urls += "?" + c.urlParams_.Encode()
27598	req, err := http.NewRequest("POST", urls, body)
27599	if err != nil {
27600		return nil, err
27601	}
27602	req.Header = reqHeaders
27603	googleapi.Expand(req.URL, map[string]string{
27604		"merchantId": strconv.FormatUint(c.merchantId, 10),
27605		"orderId":    c.orderId,
27606	})
27607	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27608}
27609
27610// Do executes the "content.orders.cancel" call.
27611// Exactly one of *OrdersCancelResponse or error will be non-nil. Any
27612// non-2xx status code is an error. Response headers are in either
27613// *OrdersCancelResponse.ServerResponse.Header or (if a response was
27614// returned at all) in error.(*googleapi.Error).Header. Use
27615// googleapi.IsNotModified to check whether the returned error was
27616// because http.StatusNotModified was returned.
27617func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
27618	gensupport.SetOptions(c.urlParams_, opts...)
27619	res, err := c.doRequest("json")
27620	if res != nil && res.StatusCode == http.StatusNotModified {
27621		if res.Body != nil {
27622			res.Body.Close()
27623		}
27624		return nil, &googleapi.Error{
27625			Code:   res.StatusCode,
27626			Header: res.Header,
27627		}
27628	}
27629	if err != nil {
27630		return nil, err
27631	}
27632	defer googleapi.CloseBody(res)
27633	if err := googleapi.CheckResponse(res); err != nil {
27634		return nil, err
27635	}
27636	ret := &OrdersCancelResponse{
27637		ServerResponse: googleapi.ServerResponse{
27638			Header:         res.Header,
27639			HTTPStatusCode: res.StatusCode,
27640		},
27641	}
27642	target := &ret
27643	if err := gensupport.DecodeResponse(target, res); err != nil {
27644		return nil, err
27645	}
27646	return ret, nil
27647	// {
27648	//   "description": "Cancels all line items in an order, making a full refund.",
27649	//   "flatPath": "{merchantId}/orders/{orderId}/cancel",
27650	//   "httpMethod": "POST",
27651	//   "id": "content.orders.cancel",
27652	//   "parameterOrder": [
27653	//     "merchantId",
27654	//     "orderId"
27655	//   ],
27656	//   "parameters": {
27657	//     "merchantId": {
27658	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27659	//       "format": "uint64",
27660	//       "location": "path",
27661	//       "required": true,
27662	//       "type": "string"
27663	//     },
27664	//     "orderId": {
27665	//       "description": "The ID of the order to cancel.",
27666	//       "location": "path",
27667	//       "required": true,
27668	//       "type": "string"
27669	//     }
27670	//   },
27671	//   "path": "{merchantId}/orders/{orderId}/cancel",
27672	//   "request": {
27673	//     "$ref": "OrdersCancelRequest"
27674	//   },
27675	//   "response": {
27676	//     "$ref": "OrdersCancelResponse"
27677	//   },
27678	//   "scopes": [
27679	//     "https://www.googleapis.com/auth/content"
27680	//   ]
27681	// }
27682
27683}
27684
27685// method id "content.orders.cancellineitem":
27686
27687type OrdersCancellineitemCall struct {
27688	s                           *APIService
27689	merchantId                  uint64
27690	orderId                     string
27691	orderscancellineitemrequest *OrdersCancelLineItemRequest
27692	urlParams_                  gensupport.URLParams
27693	ctx_                        context.Context
27694	header_                     http.Header
27695}
27696
27697// Cancellineitem: Cancels a line item, making a full refund.
27698//
27699// - merchantId: The ID of the account that manages the order. This
27700//   cannot be a multi-client account.
27701// - orderId: The ID of the order.
27702func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
27703	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27704	c.merchantId = merchantId
27705	c.orderId = orderId
27706	c.orderscancellineitemrequest = orderscancellineitemrequest
27707	return c
27708}
27709
27710// Fields allows partial responses to be retrieved. See
27711// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27712// for more information.
27713func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
27714	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27715	return c
27716}
27717
27718// Context sets the context to be used in this call's Do method. Any
27719// pending HTTP request will be aborted if the provided context is
27720// canceled.
27721func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
27722	c.ctx_ = ctx
27723	return c
27724}
27725
27726// Header returns an http.Header that can be modified by the caller to
27727// add HTTP headers to the request.
27728func (c *OrdersCancellineitemCall) Header() http.Header {
27729	if c.header_ == nil {
27730		c.header_ = make(http.Header)
27731	}
27732	return c.header_
27733}
27734
27735func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
27736	reqHeaders := make(http.Header)
27737	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
27738	for k, v := range c.header_ {
27739		reqHeaders[k] = v
27740	}
27741	reqHeaders.Set("User-Agent", c.s.userAgent())
27742	var body io.Reader = nil
27743	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
27744	if err != nil {
27745		return nil, err
27746	}
27747	reqHeaders.Set("Content-Type", "application/json")
27748	c.urlParams_.Set("alt", alt)
27749	c.urlParams_.Set("prettyPrint", "false")
27750	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancelLineItem")
27751	urls += "?" + c.urlParams_.Encode()
27752	req, err := http.NewRequest("POST", urls, body)
27753	if err != nil {
27754		return nil, err
27755	}
27756	req.Header = reqHeaders
27757	googleapi.Expand(req.URL, map[string]string{
27758		"merchantId": strconv.FormatUint(c.merchantId, 10),
27759		"orderId":    c.orderId,
27760	})
27761	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27762}
27763
27764// Do executes the "content.orders.cancellineitem" call.
27765// Exactly one of *OrdersCancelLineItemResponse or error will be
27766// non-nil. Any non-2xx status code is an error. Response headers are in
27767// either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
27768// response was returned at all) in error.(*googleapi.Error).Header. Use
27769// googleapi.IsNotModified to check whether the returned error was
27770// because http.StatusNotModified was returned.
27771func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
27772	gensupport.SetOptions(c.urlParams_, opts...)
27773	res, err := c.doRequest("json")
27774	if res != nil && res.StatusCode == http.StatusNotModified {
27775		if res.Body != nil {
27776			res.Body.Close()
27777		}
27778		return nil, &googleapi.Error{
27779			Code:   res.StatusCode,
27780			Header: res.Header,
27781		}
27782	}
27783	if err != nil {
27784		return nil, err
27785	}
27786	defer googleapi.CloseBody(res)
27787	if err := googleapi.CheckResponse(res); err != nil {
27788		return nil, err
27789	}
27790	ret := &OrdersCancelLineItemResponse{
27791		ServerResponse: googleapi.ServerResponse{
27792			Header:         res.Header,
27793			HTTPStatusCode: res.StatusCode,
27794		},
27795	}
27796	target := &ret
27797	if err := gensupport.DecodeResponse(target, res); err != nil {
27798		return nil, err
27799	}
27800	return ret, nil
27801	// {
27802	//   "description": "Cancels a line item, making a full refund.",
27803	//   "flatPath": "{merchantId}/orders/{orderId}/cancelLineItem",
27804	//   "httpMethod": "POST",
27805	//   "id": "content.orders.cancellineitem",
27806	//   "parameterOrder": [
27807	//     "merchantId",
27808	//     "orderId"
27809	//   ],
27810	//   "parameters": {
27811	//     "merchantId": {
27812	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27813	//       "format": "uint64",
27814	//       "location": "path",
27815	//       "required": true,
27816	//       "type": "string"
27817	//     },
27818	//     "orderId": {
27819	//       "description": "The ID of the order.",
27820	//       "location": "path",
27821	//       "required": true,
27822	//       "type": "string"
27823	//     }
27824	//   },
27825	//   "path": "{merchantId}/orders/{orderId}/cancelLineItem",
27826	//   "request": {
27827	//     "$ref": "OrdersCancelLineItemRequest"
27828	//   },
27829	//   "response": {
27830	//     "$ref": "OrdersCancelLineItemResponse"
27831	//   },
27832	//   "scopes": [
27833	//     "https://www.googleapis.com/auth/content"
27834	//   ]
27835	// }
27836
27837}
27838
27839// method id "content.orders.canceltestorderbycustomer":
27840
27841type OrdersCanceltestorderbycustomerCall struct {
27842	s                                      *APIService
27843	merchantId                             uint64
27844	orderId                                string
27845	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
27846	urlParams_                             gensupport.URLParams
27847	ctx_                                   context.Context
27848	header_                                http.Header
27849}
27850
27851// Canceltestorderbycustomer: Sandbox only. Cancels a test order for
27852// customer-initiated cancellation.
27853//
27854// - merchantId: The ID of the account that manages the order. This
27855//   cannot be a multi-client account.
27856// - orderId: The ID of the test order to cancel.
27857func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
27858	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27859	c.merchantId = merchantId
27860	c.orderId = orderId
27861	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
27862	return c
27863}
27864
27865// Fields allows partial responses to be retrieved. See
27866// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27867// for more information.
27868func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
27869	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27870	return c
27871}
27872
27873// Context sets the context to be used in this call's Do method. Any
27874// pending HTTP request will be aborted if the provided context is
27875// canceled.
27876func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
27877	c.ctx_ = ctx
27878	return c
27879}
27880
27881// Header returns an http.Header that can be modified by the caller to
27882// add HTTP headers to the request.
27883func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
27884	if c.header_ == nil {
27885		c.header_ = make(http.Header)
27886	}
27887	return c.header_
27888}
27889
27890func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
27891	reqHeaders := make(http.Header)
27892	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
27893	for k, v := range c.header_ {
27894		reqHeaders[k] = v
27895	}
27896	reqHeaders.Set("User-Agent", c.s.userAgent())
27897	var body io.Reader = nil
27898	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
27899	if err != nil {
27900		return nil, err
27901	}
27902	reqHeaders.Set("Content-Type", "application/json")
27903	c.urlParams_.Set("alt", alt)
27904	c.urlParams_.Set("prettyPrint", "false")
27905	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/cancelByCustomer")
27906	urls += "?" + c.urlParams_.Encode()
27907	req, err := http.NewRequest("POST", urls, body)
27908	if err != nil {
27909		return nil, err
27910	}
27911	req.Header = reqHeaders
27912	googleapi.Expand(req.URL, map[string]string{
27913		"merchantId": strconv.FormatUint(c.merchantId, 10),
27914		"orderId":    c.orderId,
27915	})
27916	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27917}
27918
27919// Do executes the "content.orders.canceltestorderbycustomer" call.
27920// Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
27921// be non-nil. Any non-2xx status code is an error. Response headers are
27922// in either
27923// *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
27924// a response was returned at all) in error.(*googleapi.Error).Header.
27925// Use googleapi.IsNotModified to check whether the returned error was
27926// because http.StatusNotModified was returned.
27927func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
27928	gensupport.SetOptions(c.urlParams_, opts...)
27929	res, err := c.doRequest("json")
27930	if res != nil && res.StatusCode == http.StatusNotModified {
27931		if res.Body != nil {
27932			res.Body.Close()
27933		}
27934		return nil, &googleapi.Error{
27935			Code:   res.StatusCode,
27936			Header: res.Header,
27937		}
27938	}
27939	if err != nil {
27940		return nil, err
27941	}
27942	defer googleapi.CloseBody(res)
27943	if err := googleapi.CheckResponse(res); err != nil {
27944		return nil, err
27945	}
27946	ret := &OrdersCancelTestOrderByCustomerResponse{
27947		ServerResponse: googleapi.ServerResponse{
27948			Header:         res.Header,
27949			HTTPStatusCode: res.StatusCode,
27950		},
27951	}
27952	target := &ret
27953	if err := gensupport.DecodeResponse(target, res); err != nil {
27954		return nil, err
27955	}
27956	return ret, nil
27957	// {
27958	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
27959	//   "flatPath": "{merchantId}/testorders/{orderId}/cancelByCustomer",
27960	//   "httpMethod": "POST",
27961	//   "id": "content.orders.canceltestorderbycustomer",
27962	//   "parameterOrder": [
27963	//     "merchantId",
27964	//     "orderId"
27965	//   ],
27966	//   "parameters": {
27967	//     "merchantId": {
27968	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27969	//       "format": "uint64",
27970	//       "location": "path",
27971	//       "required": true,
27972	//       "type": "string"
27973	//     },
27974	//     "orderId": {
27975	//       "description": "The ID of the test order to cancel.",
27976	//       "location": "path",
27977	//       "required": true,
27978	//       "type": "string"
27979	//     }
27980	//   },
27981	//   "path": "{merchantId}/testorders/{orderId}/cancelByCustomer",
27982	//   "request": {
27983	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
27984	//   },
27985	//   "response": {
27986	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
27987	//   },
27988	//   "scopes": [
27989	//     "https://www.googleapis.com/auth/content"
27990	//   ]
27991	// }
27992
27993}
27994
27995// method id "content.orders.createtestorder":
27996
27997type OrdersCreatetestorderCall struct {
27998	s                            *APIService
27999	merchantId                   uint64
28000	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
28001	urlParams_                   gensupport.URLParams
28002	ctx_                         context.Context
28003	header_                      http.Header
28004}
28005
28006// Createtestorder: Sandbox only. Creates a test order.
28007//
28008// - merchantId: The ID of the account that should manage the order.
28009//   This cannot be a multi-client account.
28010func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
28011	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28012	c.merchantId = merchantId
28013	c.orderscreatetestorderrequest = orderscreatetestorderrequest
28014	return c
28015}
28016
28017// Fields allows partial responses to be retrieved. See
28018// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28019// for more information.
28020func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
28021	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28022	return c
28023}
28024
28025// Context sets the context to be used in this call's Do method. Any
28026// pending HTTP request will be aborted if the provided context is
28027// canceled.
28028func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
28029	c.ctx_ = ctx
28030	return c
28031}
28032
28033// Header returns an http.Header that can be modified by the caller to
28034// add HTTP headers to the request.
28035func (c *OrdersCreatetestorderCall) Header() http.Header {
28036	if c.header_ == nil {
28037		c.header_ = make(http.Header)
28038	}
28039	return c.header_
28040}
28041
28042func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
28043	reqHeaders := make(http.Header)
28044	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
28045	for k, v := range c.header_ {
28046		reqHeaders[k] = v
28047	}
28048	reqHeaders.Set("User-Agent", c.s.userAgent())
28049	var body io.Reader = nil
28050	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
28051	if err != nil {
28052		return nil, err
28053	}
28054	reqHeaders.Set("Content-Type", "application/json")
28055	c.urlParams_.Set("alt", alt)
28056	c.urlParams_.Set("prettyPrint", "false")
28057	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders")
28058	urls += "?" + c.urlParams_.Encode()
28059	req, err := http.NewRequest("POST", urls, body)
28060	if err != nil {
28061		return nil, err
28062	}
28063	req.Header = reqHeaders
28064	googleapi.Expand(req.URL, map[string]string{
28065		"merchantId": strconv.FormatUint(c.merchantId, 10),
28066	})
28067	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28068}
28069
28070// Do executes the "content.orders.createtestorder" call.
28071// Exactly one of *OrdersCreateTestOrderResponse or error will be
28072// non-nil. Any non-2xx status code is an error. Response headers are in
28073// either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
28074// response was returned at all) in error.(*googleapi.Error).Header. Use
28075// googleapi.IsNotModified to check whether the returned error was
28076// because http.StatusNotModified was returned.
28077func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
28078	gensupport.SetOptions(c.urlParams_, opts...)
28079	res, err := c.doRequest("json")
28080	if res != nil && res.StatusCode == http.StatusNotModified {
28081		if res.Body != nil {
28082			res.Body.Close()
28083		}
28084		return nil, &googleapi.Error{
28085			Code:   res.StatusCode,
28086			Header: res.Header,
28087		}
28088	}
28089	if err != nil {
28090		return nil, err
28091	}
28092	defer googleapi.CloseBody(res)
28093	if err := googleapi.CheckResponse(res); err != nil {
28094		return nil, err
28095	}
28096	ret := &OrdersCreateTestOrderResponse{
28097		ServerResponse: googleapi.ServerResponse{
28098			Header:         res.Header,
28099			HTTPStatusCode: res.StatusCode,
28100		},
28101	}
28102	target := &ret
28103	if err := gensupport.DecodeResponse(target, res); err != nil {
28104		return nil, err
28105	}
28106	return ret, nil
28107	// {
28108	//   "description": "Sandbox only. Creates a test order.",
28109	//   "flatPath": "{merchantId}/testorders",
28110	//   "httpMethod": "POST",
28111	//   "id": "content.orders.createtestorder",
28112	//   "parameterOrder": [
28113	//     "merchantId"
28114	//   ],
28115	//   "parameters": {
28116	//     "merchantId": {
28117	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
28118	//       "format": "uint64",
28119	//       "location": "path",
28120	//       "required": true,
28121	//       "type": "string"
28122	//     }
28123	//   },
28124	//   "path": "{merchantId}/testorders",
28125	//   "request": {
28126	//     "$ref": "OrdersCreateTestOrderRequest"
28127	//   },
28128	//   "response": {
28129	//     "$ref": "OrdersCreateTestOrderResponse"
28130	//   },
28131	//   "scopes": [
28132	//     "https://www.googleapis.com/auth/content"
28133	//   ]
28134	// }
28135
28136}
28137
28138// method id "content.orders.createtestreturn":
28139
28140type OrdersCreatetestreturnCall struct {
28141	s                             *APIService
28142	merchantId                    uint64
28143	orderId                       string
28144	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
28145	urlParams_                    gensupport.URLParams
28146	ctx_                          context.Context
28147	header_                       http.Header
28148}
28149
28150// Createtestreturn: Sandbox only. Creates a test return.
28151//
28152// - merchantId: The ID of the account that manages the order. This
28153//   cannot be a multi-client account.
28154// - orderId: The ID of the order.
28155func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
28156	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28157	c.merchantId = merchantId
28158	c.orderId = orderId
28159	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
28160	return c
28161}
28162
28163// Fields allows partial responses to be retrieved. See
28164// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28165// for more information.
28166func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
28167	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28168	return c
28169}
28170
28171// Context sets the context to be used in this call's Do method. Any
28172// pending HTTP request will be aborted if the provided context is
28173// canceled.
28174func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
28175	c.ctx_ = ctx
28176	return c
28177}
28178
28179// Header returns an http.Header that can be modified by the caller to
28180// add HTTP headers to the request.
28181func (c *OrdersCreatetestreturnCall) Header() http.Header {
28182	if c.header_ == nil {
28183		c.header_ = make(http.Header)
28184	}
28185	return c.header_
28186}
28187
28188func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
28189	reqHeaders := make(http.Header)
28190	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
28191	for k, v := range c.header_ {
28192		reqHeaders[k] = v
28193	}
28194	reqHeaders.Set("User-Agent", c.s.userAgent())
28195	var body io.Reader = nil
28196	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
28197	if err != nil {
28198		return nil, err
28199	}
28200	reqHeaders.Set("Content-Type", "application/json")
28201	c.urlParams_.Set("alt", alt)
28202	c.urlParams_.Set("prettyPrint", "false")
28203	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/testreturn")
28204	urls += "?" + c.urlParams_.Encode()
28205	req, err := http.NewRequest("POST", urls, body)
28206	if err != nil {
28207		return nil, err
28208	}
28209	req.Header = reqHeaders
28210	googleapi.Expand(req.URL, map[string]string{
28211		"merchantId": strconv.FormatUint(c.merchantId, 10),
28212		"orderId":    c.orderId,
28213	})
28214	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28215}
28216
28217// Do executes the "content.orders.createtestreturn" call.
28218// Exactly one of *OrdersCreateTestReturnResponse or error will be
28219// non-nil. Any non-2xx status code is an error. Response headers are in
28220// either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
28221// response was returned at all) in error.(*googleapi.Error).Header. Use
28222// googleapi.IsNotModified to check whether the returned error was
28223// because http.StatusNotModified was returned.
28224func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
28225	gensupport.SetOptions(c.urlParams_, opts...)
28226	res, err := c.doRequest("json")
28227	if res != nil && res.StatusCode == http.StatusNotModified {
28228		if res.Body != nil {
28229			res.Body.Close()
28230		}
28231		return nil, &googleapi.Error{
28232			Code:   res.StatusCode,
28233			Header: res.Header,
28234		}
28235	}
28236	if err != nil {
28237		return nil, err
28238	}
28239	defer googleapi.CloseBody(res)
28240	if err := googleapi.CheckResponse(res); err != nil {
28241		return nil, err
28242	}
28243	ret := &OrdersCreateTestReturnResponse{
28244		ServerResponse: googleapi.ServerResponse{
28245			Header:         res.Header,
28246			HTTPStatusCode: res.StatusCode,
28247		},
28248	}
28249	target := &ret
28250	if err := gensupport.DecodeResponse(target, res); err != nil {
28251		return nil, err
28252	}
28253	return ret, nil
28254	// {
28255	//   "description": "Sandbox only. Creates a test return.",
28256	//   "flatPath": "{merchantId}/orders/{orderId}/testreturn",
28257	//   "httpMethod": "POST",
28258	//   "id": "content.orders.createtestreturn",
28259	//   "parameterOrder": [
28260	//     "merchantId",
28261	//     "orderId"
28262	//   ],
28263	//   "parameters": {
28264	//     "merchantId": {
28265	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28266	//       "format": "uint64",
28267	//       "location": "path",
28268	//       "required": true,
28269	//       "type": "string"
28270	//     },
28271	//     "orderId": {
28272	//       "description": "The ID of the order.",
28273	//       "location": "path",
28274	//       "required": true,
28275	//       "type": "string"
28276	//     }
28277	//   },
28278	//   "path": "{merchantId}/orders/{orderId}/testreturn",
28279	//   "request": {
28280	//     "$ref": "OrdersCreateTestReturnRequest"
28281	//   },
28282	//   "response": {
28283	//     "$ref": "OrdersCreateTestReturnResponse"
28284	//   },
28285	//   "scopes": [
28286	//     "https://www.googleapis.com/auth/content"
28287	//   ]
28288	// }
28289
28290}
28291
28292// method id "content.orders.get":
28293
28294type OrdersGetCall struct {
28295	s            *APIService
28296	merchantId   uint64
28297	orderId      string
28298	urlParams_   gensupport.URLParams
28299	ifNoneMatch_ string
28300	ctx_         context.Context
28301	header_      http.Header
28302}
28303
28304// Get: Retrieves an order from your Merchant Center account.
28305//
28306// - merchantId: The ID of the account that manages the order. This
28307//   cannot be a multi-client account.
28308// - orderId: The ID of the order.
28309func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
28310	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28311	c.merchantId = merchantId
28312	c.orderId = orderId
28313	return c
28314}
28315
28316// Fields allows partial responses to be retrieved. See
28317// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28318// for more information.
28319func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
28320	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28321	return c
28322}
28323
28324// IfNoneMatch sets the optional parameter which makes the operation
28325// fail if the object's ETag matches the given value. This is useful for
28326// getting updates only after the object has changed since the last
28327// request. Use googleapi.IsNotModified to check whether the response
28328// error from Do is the result of In-None-Match.
28329func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
28330	c.ifNoneMatch_ = entityTag
28331	return c
28332}
28333
28334// Context sets the context to be used in this call's Do method. Any
28335// pending HTTP request will be aborted if the provided context is
28336// canceled.
28337func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
28338	c.ctx_ = ctx
28339	return c
28340}
28341
28342// Header returns an http.Header that can be modified by the caller to
28343// add HTTP headers to the request.
28344func (c *OrdersGetCall) Header() http.Header {
28345	if c.header_ == nil {
28346		c.header_ = make(http.Header)
28347	}
28348	return c.header_
28349}
28350
28351func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
28352	reqHeaders := make(http.Header)
28353	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
28354	for k, v := range c.header_ {
28355		reqHeaders[k] = v
28356	}
28357	reqHeaders.Set("User-Agent", c.s.userAgent())
28358	if c.ifNoneMatch_ != "" {
28359		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28360	}
28361	var body io.Reader = nil
28362	c.urlParams_.Set("alt", alt)
28363	c.urlParams_.Set("prettyPrint", "false")
28364	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}")
28365	urls += "?" + c.urlParams_.Encode()
28366	req, err := http.NewRequest("GET", urls, body)
28367	if err != nil {
28368		return nil, err
28369	}
28370	req.Header = reqHeaders
28371	googleapi.Expand(req.URL, map[string]string{
28372		"merchantId": strconv.FormatUint(c.merchantId, 10),
28373		"orderId":    c.orderId,
28374	})
28375	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28376}
28377
28378// Do executes the "content.orders.get" call.
28379// Exactly one of *Order or error will be non-nil. Any non-2xx status
28380// code is an error. Response headers are in either
28381// *Order.ServerResponse.Header or (if a response was returned at all)
28382// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
28383// check whether the returned error was because http.StatusNotModified
28384// was returned.
28385func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
28386	gensupport.SetOptions(c.urlParams_, opts...)
28387	res, err := c.doRequest("json")
28388	if res != nil && res.StatusCode == http.StatusNotModified {
28389		if res.Body != nil {
28390			res.Body.Close()
28391		}
28392		return nil, &googleapi.Error{
28393			Code:   res.StatusCode,
28394			Header: res.Header,
28395		}
28396	}
28397	if err != nil {
28398		return nil, err
28399	}
28400	defer googleapi.CloseBody(res)
28401	if err := googleapi.CheckResponse(res); err != nil {
28402		return nil, err
28403	}
28404	ret := &Order{
28405		ServerResponse: googleapi.ServerResponse{
28406			Header:         res.Header,
28407			HTTPStatusCode: res.StatusCode,
28408		},
28409	}
28410	target := &ret
28411	if err := gensupport.DecodeResponse(target, res); err != nil {
28412		return nil, err
28413	}
28414	return ret, nil
28415	// {
28416	//   "description": "Retrieves an order from your Merchant Center account.",
28417	//   "flatPath": "{merchantId}/orders/{orderId}",
28418	//   "httpMethod": "GET",
28419	//   "id": "content.orders.get",
28420	//   "parameterOrder": [
28421	//     "merchantId",
28422	//     "orderId"
28423	//   ],
28424	//   "parameters": {
28425	//     "merchantId": {
28426	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28427	//       "format": "uint64",
28428	//       "location": "path",
28429	//       "required": true,
28430	//       "type": "string"
28431	//     },
28432	//     "orderId": {
28433	//       "description": "The ID of the order.",
28434	//       "location": "path",
28435	//       "required": true,
28436	//       "type": "string"
28437	//     }
28438	//   },
28439	//   "path": "{merchantId}/orders/{orderId}",
28440	//   "response": {
28441	//     "$ref": "Order"
28442	//   },
28443	//   "scopes": [
28444	//     "https://www.googleapis.com/auth/content"
28445	//   ]
28446	// }
28447
28448}
28449
28450// method id "content.orders.getbymerchantorderid":
28451
28452type OrdersGetbymerchantorderidCall struct {
28453	s               *APIService
28454	merchantId      uint64
28455	merchantOrderId string
28456	urlParams_      gensupport.URLParams
28457	ifNoneMatch_    string
28458	ctx_            context.Context
28459	header_         http.Header
28460}
28461
28462// Getbymerchantorderid: Retrieves an order using merchant order ID.
28463//
28464// - merchantId: The ID of the account that manages the order. This
28465//   cannot be a multi-client account.
28466// - merchantOrderId: The merchant order ID to be looked for.
28467func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
28468	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28469	c.merchantId = merchantId
28470	c.merchantOrderId = merchantOrderId
28471	return c
28472}
28473
28474// Fields allows partial responses to be retrieved. See
28475// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28476// for more information.
28477func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
28478	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28479	return c
28480}
28481
28482// IfNoneMatch sets the optional parameter which makes the operation
28483// fail if the object's ETag matches the given value. This is useful for
28484// getting updates only after the object has changed since the last
28485// request. Use googleapi.IsNotModified to check whether the response
28486// error from Do is the result of In-None-Match.
28487func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
28488	c.ifNoneMatch_ = entityTag
28489	return c
28490}
28491
28492// Context sets the context to be used in this call's Do method. Any
28493// pending HTTP request will be aborted if the provided context is
28494// canceled.
28495func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
28496	c.ctx_ = ctx
28497	return c
28498}
28499
28500// Header returns an http.Header that can be modified by the caller to
28501// add HTTP headers to the request.
28502func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
28503	if c.header_ == nil {
28504		c.header_ = make(http.Header)
28505	}
28506	return c.header_
28507}
28508
28509func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
28510	reqHeaders := make(http.Header)
28511	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
28512	for k, v := range c.header_ {
28513		reqHeaders[k] = v
28514	}
28515	reqHeaders.Set("User-Agent", c.s.userAgent())
28516	if c.ifNoneMatch_ != "" {
28517		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28518	}
28519	var body io.Reader = nil
28520	c.urlParams_.Set("alt", alt)
28521	c.urlParams_.Set("prettyPrint", "false")
28522	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordersbymerchantid/{merchantOrderId}")
28523	urls += "?" + c.urlParams_.Encode()
28524	req, err := http.NewRequest("GET", urls, body)
28525	if err != nil {
28526		return nil, err
28527	}
28528	req.Header = reqHeaders
28529	googleapi.Expand(req.URL, map[string]string{
28530		"merchantId":      strconv.FormatUint(c.merchantId, 10),
28531		"merchantOrderId": c.merchantOrderId,
28532	})
28533	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28534}
28535
28536// Do executes the "content.orders.getbymerchantorderid" call.
28537// Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
28538// non-nil. Any non-2xx status code is an error. Response headers are in
28539// either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
28540// (if a response was returned at all) in
28541// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28542// whether the returned error was because http.StatusNotModified was
28543// returned.
28544func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
28545	gensupport.SetOptions(c.urlParams_, opts...)
28546	res, err := c.doRequest("json")
28547	if res != nil && res.StatusCode == http.StatusNotModified {
28548		if res.Body != nil {
28549			res.Body.Close()
28550		}
28551		return nil, &googleapi.Error{
28552			Code:   res.StatusCode,
28553			Header: res.Header,
28554		}
28555	}
28556	if err != nil {
28557		return nil, err
28558	}
28559	defer googleapi.CloseBody(res)
28560	if err := googleapi.CheckResponse(res); err != nil {
28561		return nil, err
28562	}
28563	ret := &OrdersGetByMerchantOrderIdResponse{
28564		ServerResponse: googleapi.ServerResponse{
28565			Header:         res.Header,
28566			HTTPStatusCode: res.StatusCode,
28567		},
28568	}
28569	target := &ret
28570	if err := gensupport.DecodeResponse(target, res); err != nil {
28571		return nil, err
28572	}
28573	return ret, nil
28574	// {
28575	//   "description": "Retrieves an order using merchant order ID.",
28576	//   "flatPath": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
28577	//   "httpMethod": "GET",
28578	//   "id": "content.orders.getbymerchantorderid",
28579	//   "parameterOrder": [
28580	//     "merchantId",
28581	//     "merchantOrderId"
28582	//   ],
28583	//   "parameters": {
28584	//     "merchantId": {
28585	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28586	//       "format": "uint64",
28587	//       "location": "path",
28588	//       "required": true,
28589	//       "type": "string"
28590	//     },
28591	//     "merchantOrderId": {
28592	//       "description": "The merchant order ID to be looked for.",
28593	//       "location": "path",
28594	//       "required": true,
28595	//       "type": "string"
28596	//     }
28597	//   },
28598	//   "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
28599	//   "response": {
28600	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
28601	//   },
28602	//   "scopes": [
28603	//     "https://www.googleapis.com/auth/content"
28604	//   ]
28605	// }
28606
28607}
28608
28609// method id "content.orders.gettestordertemplate":
28610
28611type OrdersGettestordertemplateCall struct {
28612	s            *APIService
28613	merchantId   uint64
28614	templateName string
28615	urlParams_   gensupport.URLParams
28616	ifNoneMatch_ string
28617	ctx_         context.Context
28618	header_      http.Header
28619}
28620
28621// Gettestordertemplate: Sandbox only. Retrieves an order template that
28622// can be used to quickly create a new order in sandbox.
28623//
28624// - merchantId: The ID of the account that should manage the order.
28625//   This cannot be a multi-client account.
28626// - templateName: The name of the template to retrieve.
28627func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
28628	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28629	c.merchantId = merchantId
28630	c.templateName = templateName
28631	return c
28632}
28633
28634// Country sets the optional parameter "country": The country of the
28635// template to retrieve. Defaults to `US`.
28636func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
28637	c.urlParams_.Set("country", country)
28638	return c
28639}
28640
28641// Fields allows partial responses to be retrieved. See
28642// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28643// for more information.
28644func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
28645	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28646	return c
28647}
28648
28649// IfNoneMatch sets the optional parameter which makes the operation
28650// fail if the object's ETag matches the given value. This is useful for
28651// getting updates only after the object has changed since the last
28652// request. Use googleapi.IsNotModified to check whether the response
28653// error from Do is the result of In-None-Match.
28654func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
28655	c.ifNoneMatch_ = entityTag
28656	return c
28657}
28658
28659// Context sets the context to be used in this call's Do method. Any
28660// pending HTTP request will be aborted if the provided context is
28661// canceled.
28662func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
28663	c.ctx_ = ctx
28664	return c
28665}
28666
28667// Header returns an http.Header that can be modified by the caller to
28668// add HTTP headers to the request.
28669func (c *OrdersGettestordertemplateCall) Header() http.Header {
28670	if c.header_ == nil {
28671		c.header_ = make(http.Header)
28672	}
28673	return c.header_
28674}
28675
28676func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
28677	reqHeaders := make(http.Header)
28678	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
28679	for k, v := range c.header_ {
28680		reqHeaders[k] = v
28681	}
28682	reqHeaders.Set("User-Agent", c.s.userAgent())
28683	if c.ifNoneMatch_ != "" {
28684		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28685	}
28686	var body io.Reader = nil
28687	c.urlParams_.Set("alt", alt)
28688	c.urlParams_.Set("prettyPrint", "false")
28689	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testordertemplates/{templateName}")
28690	urls += "?" + c.urlParams_.Encode()
28691	req, err := http.NewRequest("GET", urls, body)
28692	if err != nil {
28693		return nil, err
28694	}
28695	req.Header = reqHeaders
28696	googleapi.Expand(req.URL, map[string]string{
28697		"merchantId":   strconv.FormatUint(c.merchantId, 10),
28698		"templateName": c.templateName,
28699	})
28700	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28701}
28702
28703// Do executes the "content.orders.gettestordertemplate" call.
28704// Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
28705// non-nil. Any non-2xx status code is an error. Response headers are in
28706// either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
28707// (if a response was returned at all) in
28708// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28709// whether the returned error was because http.StatusNotModified was
28710// returned.
28711func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
28712	gensupport.SetOptions(c.urlParams_, opts...)
28713	res, err := c.doRequest("json")
28714	if res != nil && res.StatusCode == http.StatusNotModified {
28715		if res.Body != nil {
28716			res.Body.Close()
28717		}
28718		return nil, &googleapi.Error{
28719			Code:   res.StatusCode,
28720			Header: res.Header,
28721		}
28722	}
28723	if err != nil {
28724		return nil, err
28725	}
28726	defer googleapi.CloseBody(res)
28727	if err := googleapi.CheckResponse(res); err != nil {
28728		return nil, err
28729	}
28730	ret := &OrdersGetTestOrderTemplateResponse{
28731		ServerResponse: googleapi.ServerResponse{
28732			Header:         res.Header,
28733			HTTPStatusCode: res.StatusCode,
28734		},
28735	}
28736	target := &ret
28737	if err := gensupport.DecodeResponse(target, res); err != nil {
28738		return nil, err
28739	}
28740	return ret, nil
28741	// {
28742	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
28743	//   "flatPath": "{merchantId}/testordertemplates/{templateName}",
28744	//   "httpMethod": "GET",
28745	//   "id": "content.orders.gettestordertemplate",
28746	//   "parameterOrder": [
28747	//     "merchantId",
28748	//     "templateName"
28749	//   ],
28750	//   "parameters": {
28751	//     "country": {
28752	//       "description": "The country of the template to retrieve. Defaults to `US`.",
28753	//       "location": "query",
28754	//       "type": "string"
28755	//     },
28756	//     "merchantId": {
28757	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
28758	//       "format": "uint64",
28759	//       "location": "path",
28760	//       "required": true,
28761	//       "type": "string"
28762	//     },
28763	//     "templateName": {
28764	//       "description": "The name of the template to retrieve.",
28765	//       "enum": [
28766	//         "TEMPLATE1",
28767	//         "TEMPLATE2",
28768	//         "TEMPLATE1A",
28769	//         "TEMPLATE1B",
28770	//         "TEMPLATE3",
28771	//         "TEMPLATE4"
28772	//       ],
28773	//       "enumDescriptions": [
28774	//         "",
28775	//         "",
28776	//         "",
28777	//         "",
28778	//         "",
28779	//         ""
28780	//       ],
28781	//       "location": "path",
28782	//       "required": true,
28783	//       "type": "string"
28784	//     }
28785	//   },
28786	//   "path": "{merchantId}/testordertemplates/{templateName}",
28787	//   "response": {
28788	//     "$ref": "OrdersGetTestOrderTemplateResponse"
28789	//   },
28790	//   "scopes": [
28791	//     "https://www.googleapis.com/auth/content"
28792	//   ]
28793	// }
28794
28795}
28796
28797// method id "content.orders.instorerefundlineitem":
28798
28799type OrdersInstorerefundlineitemCall struct {
28800	s                                  *APIService
28801	merchantId                         uint64
28802	orderId                            string
28803	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
28804	urlParams_                         gensupport.URLParams
28805	ctx_                               context.Context
28806	header_                            http.Header
28807}
28808
28809// Instorerefundlineitem: Deprecated. Notifies that item return and
28810// refund was handled directly by merchant outside of Google payments
28811// processing (e.g. cash refund done in store). Note: We recommend
28812// calling the returnrefundlineitem method to refund in-store returns.
28813// We will issue the refund directly to the customer. This helps to
28814// prevent possible differences arising between merchant and Google
28815// transaction records. We also recommend having the point of sale
28816// system communicate with Google to ensure that customers do not
28817// receive a double refund by first refunding via Google then via an
28818// in-store return.
28819//
28820// - merchantId: The ID of the account that manages the order. This
28821//   cannot be a multi-client account.
28822// - orderId: The ID of the order.
28823func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
28824	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28825	c.merchantId = merchantId
28826	c.orderId = orderId
28827	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
28828	return c
28829}
28830
28831// Fields allows partial responses to be retrieved. See
28832// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28833// for more information.
28834func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
28835	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28836	return c
28837}
28838
28839// Context sets the context to be used in this call's Do method. Any
28840// pending HTTP request will be aborted if the provided context is
28841// canceled.
28842func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
28843	c.ctx_ = ctx
28844	return c
28845}
28846
28847// Header returns an http.Header that can be modified by the caller to
28848// add HTTP headers to the request.
28849func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
28850	if c.header_ == nil {
28851		c.header_ = make(http.Header)
28852	}
28853	return c.header_
28854}
28855
28856func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
28857	reqHeaders := make(http.Header)
28858	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
28859	for k, v := range c.header_ {
28860		reqHeaders[k] = v
28861	}
28862	reqHeaders.Set("User-Agent", c.s.userAgent())
28863	var body io.Reader = nil
28864	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
28865	if err != nil {
28866		return nil, err
28867	}
28868	reqHeaders.Set("Content-Type", "application/json")
28869	c.urlParams_.Set("alt", alt)
28870	c.urlParams_.Set("prettyPrint", "false")
28871	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/inStoreRefundLineItem")
28872	urls += "?" + c.urlParams_.Encode()
28873	req, err := http.NewRequest("POST", urls, body)
28874	if err != nil {
28875		return nil, err
28876	}
28877	req.Header = reqHeaders
28878	googleapi.Expand(req.URL, map[string]string{
28879		"merchantId": strconv.FormatUint(c.merchantId, 10),
28880		"orderId":    c.orderId,
28881	})
28882	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28883}
28884
28885// Do executes the "content.orders.instorerefundlineitem" call.
28886// Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
28887// non-nil. Any non-2xx status code is an error. Response headers are in
28888// either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
28889// (if a response was returned at all) in
28890// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28891// whether the returned error was because http.StatusNotModified was
28892// returned.
28893func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, error) {
28894	gensupport.SetOptions(c.urlParams_, opts...)
28895	res, err := c.doRequest("json")
28896	if res != nil && res.StatusCode == http.StatusNotModified {
28897		if res.Body != nil {
28898			res.Body.Close()
28899		}
28900		return nil, &googleapi.Error{
28901			Code:   res.StatusCode,
28902			Header: res.Header,
28903		}
28904	}
28905	if err != nil {
28906		return nil, err
28907	}
28908	defer googleapi.CloseBody(res)
28909	if err := googleapi.CheckResponse(res); err != nil {
28910		return nil, err
28911	}
28912	ret := &OrdersInStoreRefundLineItemResponse{
28913		ServerResponse: googleapi.ServerResponse{
28914			Header:         res.Header,
28915			HTTPStatusCode: res.StatusCode,
28916		},
28917	}
28918	target := &ret
28919	if err := gensupport.DecodeResponse(target, res); err != nil {
28920		return nil, err
28921	}
28922	return ret, nil
28923	// {
28924	//   "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.",
28925	//   "flatPath": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
28926	//   "httpMethod": "POST",
28927	//   "id": "content.orders.instorerefundlineitem",
28928	//   "parameterOrder": [
28929	//     "merchantId",
28930	//     "orderId"
28931	//   ],
28932	//   "parameters": {
28933	//     "merchantId": {
28934	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28935	//       "format": "uint64",
28936	//       "location": "path",
28937	//       "required": true,
28938	//       "type": "string"
28939	//     },
28940	//     "orderId": {
28941	//       "description": "The ID of the order.",
28942	//       "location": "path",
28943	//       "required": true,
28944	//       "type": "string"
28945	//     }
28946	//   },
28947	//   "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
28948	//   "request": {
28949	//     "$ref": "OrdersInStoreRefundLineItemRequest"
28950	//   },
28951	//   "response": {
28952	//     "$ref": "OrdersInStoreRefundLineItemResponse"
28953	//   },
28954	//   "scopes": [
28955	//     "https://www.googleapis.com/auth/content"
28956	//   ]
28957	// }
28958
28959}
28960
28961// method id "content.orders.list":
28962
28963type OrdersListCall struct {
28964	s            *APIService
28965	merchantId   uint64
28966	urlParams_   gensupport.URLParams
28967	ifNoneMatch_ string
28968	ctx_         context.Context
28969	header_      http.Header
28970}
28971
28972// List: Lists the orders in your Merchant Center account.
28973//
28974// - merchantId: The ID of the account that manages the order. This
28975//   cannot be a multi-client account.
28976func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
28977	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28978	c.merchantId = merchantId
28979	return c
28980}
28981
28982// Acknowledged sets the optional parameter "acknowledged": Obtains
28983// orders that match the acknowledgement status. When set to true,
28984// obtains orders that have been acknowledged. When false, obtains
28985// orders that have not been acknowledged. We recommend using this
28986// filter set to `false`, in conjunction with the `acknowledge` call,
28987// such that only un-acknowledged orders are returned.
28988func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
28989	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
28990	return c
28991}
28992
28993// MaxResults sets the optional parameter "maxResults": The maximum
28994// number of orders to return in the response, used for paging. The
28995// default value is 25 orders per page, and the maximum allowed value is
28996// 250 orders per page.
28997func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
28998	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28999	return c
29000}
29001
29002// OrderBy sets the optional parameter "orderBy": Order results by
29003// placement date in descending or ascending order. Acceptable values
29004// are: - placedDateAsc - placedDateDesc
29005func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
29006	c.urlParams_.Set("orderBy", orderBy)
29007	return c
29008}
29009
29010// PageToken sets the optional parameter "pageToken": The token returned
29011// by the previous request.
29012func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
29013	c.urlParams_.Set("pageToken", pageToken)
29014	return c
29015}
29016
29017// PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
29018// orders placed before this date (exclusively), in ISO 8601 format.
29019func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
29020	c.urlParams_.Set("placedDateEnd", placedDateEnd)
29021	return c
29022}
29023
29024// PlacedDateStart sets the optional parameter "placedDateStart":
29025// Obtains orders placed after this date (inclusively), in ISO 8601
29026// format.
29027func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
29028	c.urlParams_.Set("placedDateStart", placedDateStart)
29029	return c
29030}
29031
29032// Statuses sets the optional parameter "statuses": Obtains orders that
29033// match any of the specified statuses. Please note that `active` is a
29034// shortcut for `pendingShipment` and `partiallyShipped`, and
29035// `completed` is a shortcut for `shipped`, `partiallyDelivered`,
29036// `delivered`, `partiallyReturned`, `returned`, and `canceled`.
29037//
29038// Possible values:
29039//   "ACTIVE"
29040//   "COMPLETED"
29041//   "CANCELED"
29042//   "IN_PROGRESS"
29043//   "PENDING_SHIPMENT"
29044//   "PARTIALLY_SHIPPED"
29045//   "SHIPPED"
29046//   "PARTIALLY_DELIVERED"
29047//   "DELIVERED"
29048//   "PARTIALLY_RETURNED"
29049//   "RETURNED"
29050func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
29051	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
29052	return c
29053}
29054
29055// Fields allows partial responses to be retrieved. See
29056// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29057// for more information.
29058func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
29059	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29060	return c
29061}
29062
29063// IfNoneMatch sets the optional parameter which makes the operation
29064// fail if the object's ETag matches the given value. This is useful for
29065// getting updates only after the object has changed since the last
29066// request. Use googleapi.IsNotModified to check whether the response
29067// error from Do is the result of In-None-Match.
29068func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
29069	c.ifNoneMatch_ = entityTag
29070	return c
29071}
29072
29073// Context sets the context to be used in this call's Do method. Any
29074// pending HTTP request will be aborted if the provided context is
29075// canceled.
29076func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
29077	c.ctx_ = ctx
29078	return c
29079}
29080
29081// Header returns an http.Header that can be modified by the caller to
29082// add HTTP headers to the request.
29083func (c *OrdersListCall) Header() http.Header {
29084	if c.header_ == nil {
29085		c.header_ = make(http.Header)
29086	}
29087	return c.header_
29088}
29089
29090func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
29091	reqHeaders := make(http.Header)
29092	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
29093	for k, v := range c.header_ {
29094		reqHeaders[k] = v
29095	}
29096	reqHeaders.Set("User-Agent", c.s.userAgent())
29097	if c.ifNoneMatch_ != "" {
29098		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29099	}
29100	var body io.Reader = nil
29101	c.urlParams_.Set("alt", alt)
29102	c.urlParams_.Set("prettyPrint", "false")
29103	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders")
29104	urls += "?" + c.urlParams_.Encode()
29105	req, err := http.NewRequest("GET", urls, body)
29106	if err != nil {
29107		return nil, err
29108	}
29109	req.Header = reqHeaders
29110	googleapi.Expand(req.URL, map[string]string{
29111		"merchantId": strconv.FormatUint(c.merchantId, 10),
29112	})
29113	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29114}
29115
29116// Do executes the "content.orders.list" call.
29117// Exactly one of *OrdersListResponse or error will be non-nil. Any
29118// non-2xx status code is an error. Response headers are in either
29119// *OrdersListResponse.ServerResponse.Header or (if a response was
29120// returned at all) in error.(*googleapi.Error).Header. Use
29121// googleapi.IsNotModified to check whether the returned error was
29122// because http.StatusNotModified was returned.
29123func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
29124	gensupport.SetOptions(c.urlParams_, opts...)
29125	res, err := c.doRequest("json")
29126	if res != nil && res.StatusCode == http.StatusNotModified {
29127		if res.Body != nil {
29128			res.Body.Close()
29129		}
29130		return nil, &googleapi.Error{
29131			Code:   res.StatusCode,
29132			Header: res.Header,
29133		}
29134	}
29135	if err != nil {
29136		return nil, err
29137	}
29138	defer googleapi.CloseBody(res)
29139	if err := googleapi.CheckResponse(res); err != nil {
29140		return nil, err
29141	}
29142	ret := &OrdersListResponse{
29143		ServerResponse: googleapi.ServerResponse{
29144			Header:         res.Header,
29145			HTTPStatusCode: res.StatusCode,
29146		},
29147	}
29148	target := &ret
29149	if err := gensupport.DecodeResponse(target, res); err != nil {
29150		return nil, err
29151	}
29152	return ret, nil
29153	// {
29154	//   "description": "Lists the orders in your Merchant Center account.",
29155	//   "flatPath": "{merchantId}/orders",
29156	//   "httpMethod": "GET",
29157	//   "id": "content.orders.list",
29158	//   "parameterOrder": [
29159	//     "merchantId"
29160	//   ],
29161	//   "parameters": {
29162	//     "acknowledged": {
29163	//       "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. ",
29164	//       "location": "query",
29165	//       "type": "boolean"
29166	//     },
29167	//     "maxResults": {
29168	//       "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.",
29169	//       "format": "uint32",
29170	//       "location": "query",
29171	//       "type": "integer"
29172	//     },
29173	//     "merchantId": {
29174	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29175	//       "format": "uint64",
29176	//       "location": "path",
29177	//       "required": true,
29178	//       "type": "string"
29179	//     },
29180	//     "orderBy": {
29181	//       "description": "Order results by placement date in descending or ascending order. Acceptable values are: - placedDateAsc - placedDateDesc ",
29182	//       "location": "query",
29183	//       "type": "string"
29184	//     },
29185	//     "pageToken": {
29186	//       "description": "The token returned by the previous request.",
29187	//       "location": "query",
29188	//       "type": "string"
29189	//     },
29190	//     "placedDateEnd": {
29191	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
29192	//       "location": "query",
29193	//       "type": "string"
29194	//     },
29195	//     "placedDateStart": {
29196	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
29197	//       "location": "query",
29198	//       "type": "string"
29199	//     },
29200	//     "statuses": {
29201	//       "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`.",
29202	//       "enum": [
29203	//         "ACTIVE",
29204	//         "COMPLETED",
29205	//         "CANCELED",
29206	//         "IN_PROGRESS",
29207	//         "PENDING_SHIPMENT",
29208	//         "PARTIALLY_SHIPPED",
29209	//         "SHIPPED",
29210	//         "PARTIALLY_DELIVERED",
29211	//         "DELIVERED",
29212	//         "PARTIALLY_RETURNED",
29213	//         "RETURNED"
29214	//       ],
29215	//       "enumDescriptions": [
29216	//         "",
29217	//         "",
29218	//         "",
29219	//         "",
29220	//         "",
29221	//         "",
29222	//         "",
29223	//         "",
29224	//         "",
29225	//         "",
29226	//         ""
29227	//       ],
29228	//       "location": "query",
29229	//       "repeated": true,
29230	//       "type": "string"
29231	//     }
29232	//   },
29233	//   "path": "{merchantId}/orders",
29234	//   "response": {
29235	//     "$ref": "OrdersListResponse"
29236	//   },
29237	//   "scopes": [
29238	//     "https://www.googleapis.com/auth/content"
29239	//   ]
29240	// }
29241
29242}
29243
29244// Pages invokes f for each page of results.
29245// A non-nil error returned from f will halt the iteration.
29246// The provided context supersedes any context provided to the Context method.
29247func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
29248	c.ctx_ = ctx
29249	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29250	for {
29251		x, err := c.Do()
29252		if err != nil {
29253			return err
29254		}
29255		if err := f(x); err != nil {
29256			return err
29257		}
29258		if x.NextPageToken == "" {
29259			return nil
29260		}
29261		c.PageToken(x.NextPageToken)
29262	}
29263}
29264
29265// method id "content.orders.refunditem":
29266
29267type OrdersRefunditemCall struct {
29268	s                       *APIService
29269	merchantId              uint64
29270	orderId                 string
29271	ordersrefunditemrequest *OrdersRefundItemRequest
29272	urlParams_              gensupport.URLParams
29273	ctx_                    context.Context
29274	header_                 http.Header
29275}
29276
29277// Refunditem: Issues a partial or total refund for items and shipment.
29278//
29279// - merchantId: The ID of the account that manages the order. This
29280//   cannot be a multi-client account.
29281// - orderId: The ID of the order to refund.
29282func (r *OrdersService) Refunditem(merchantId uint64, orderId string, ordersrefunditemrequest *OrdersRefundItemRequest) *OrdersRefunditemCall {
29283	c := &OrdersRefunditemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29284	c.merchantId = merchantId
29285	c.orderId = orderId
29286	c.ordersrefunditemrequest = ordersrefunditemrequest
29287	return c
29288}
29289
29290// Fields allows partial responses to be retrieved. See
29291// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29292// for more information.
29293func (c *OrdersRefunditemCall) Fields(s ...googleapi.Field) *OrdersRefunditemCall {
29294	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29295	return c
29296}
29297
29298// Context sets the context to be used in this call's Do method. Any
29299// pending HTTP request will be aborted if the provided context is
29300// canceled.
29301func (c *OrdersRefunditemCall) Context(ctx context.Context) *OrdersRefunditemCall {
29302	c.ctx_ = ctx
29303	return c
29304}
29305
29306// Header returns an http.Header that can be modified by the caller to
29307// add HTTP headers to the request.
29308func (c *OrdersRefunditemCall) Header() http.Header {
29309	if c.header_ == nil {
29310		c.header_ = make(http.Header)
29311	}
29312	return c.header_
29313}
29314
29315func (c *OrdersRefunditemCall) doRequest(alt string) (*http.Response, error) {
29316	reqHeaders := make(http.Header)
29317	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
29318	for k, v := range c.header_ {
29319		reqHeaders[k] = v
29320	}
29321	reqHeaders.Set("User-Agent", c.s.userAgent())
29322	var body io.Reader = nil
29323	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefunditemrequest)
29324	if err != nil {
29325		return nil, err
29326	}
29327	reqHeaders.Set("Content-Type", "application/json")
29328	c.urlParams_.Set("alt", alt)
29329	c.urlParams_.Set("prettyPrint", "false")
29330	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refunditem")
29331	urls += "?" + c.urlParams_.Encode()
29332	req, err := http.NewRequest("POST", urls, body)
29333	if err != nil {
29334		return nil, err
29335	}
29336	req.Header = reqHeaders
29337	googleapi.Expand(req.URL, map[string]string{
29338		"merchantId": strconv.FormatUint(c.merchantId, 10),
29339		"orderId":    c.orderId,
29340	})
29341	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29342}
29343
29344// Do executes the "content.orders.refunditem" call.
29345// Exactly one of *OrdersRefundItemResponse or error will be non-nil.
29346// Any non-2xx status code is an error. Response headers are in either
29347// *OrdersRefundItemResponse.ServerResponse.Header or (if a response was
29348// returned at all) in error.(*googleapi.Error).Header. Use
29349// googleapi.IsNotModified to check whether the returned error was
29350// because http.StatusNotModified was returned.
29351func (c *OrdersRefunditemCall) Do(opts ...googleapi.CallOption) (*OrdersRefundItemResponse, error) {
29352	gensupport.SetOptions(c.urlParams_, opts...)
29353	res, err := c.doRequest("json")
29354	if res != nil && res.StatusCode == http.StatusNotModified {
29355		if res.Body != nil {
29356			res.Body.Close()
29357		}
29358		return nil, &googleapi.Error{
29359			Code:   res.StatusCode,
29360			Header: res.Header,
29361		}
29362	}
29363	if err != nil {
29364		return nil, err
29365	}
29366	defer googleapi.CloseBody(res)
29367	if err := googleapi.CheckResponse(res); err != nil {
29368		return nil, err
29369	}
29370	ret := &OrdersRefundItemResponse{
29371		ServerResponse: googleapi.ServerResponse{
29372			Header:         res.Header,
29373			HTTPStatusCode: res.StatusCode,
29374		},
29375	}
29376	target := &ret
29377	if err := gensupport.DecodeResponse(target, res); err != nil {
29378		return nil, err
29379	}
29380	return ret, nil
29381	// {
29382	//   "description": "Issues a partial or total refund for items and shipment.",
29383	//   "flatPath": "{merchantId}/orders/{orderId}/refunditem",
29384	//   "httpMethod": "POST",
29385	//   "id": "content.orders.refunditem",
29386	//   "parameterOrder": [
29387	//     "merchantId",
29388	//     "orderId"
29389	//   ],
29390	//   "parameters": {
29391	//     "merchantId": {
29392	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29393	//       "format": "uint64",
29394	//       "location": "path",
29395	//       "required": true,
29396	//       "type": "string"
29397	//     },
29398	//     "orderId": {
29399	//       "description": "The ID of the order to refund.",
29400	//       "location": "path",
29401	//       "required": true,
29402	//       "type": "string"
29403	//     }
29404	//   },
29405	//   "path": "{merchantId}/orders/{orderId}/refunditem",
29406	//   "request": {
29407	//     "$ref": "OrdersRefundItemRequest"
29408	//   },
29409	//   "response": {
29410	//     "$ref": "OrdersRefundItemResponse"
29411	//   },
29412	//   "scopes": [
29413	//     "https://www.googleapis.com/auth/content"
29414	//   ]
29415	// }
29416
29417}
29418
29419// method id "content.orders.refundorder":
29420
29421type OrdersRefundorderCall struct {
29422	s                        *APIService
29423	merchantId               uint64
29424	orderId                  string
29425	ordersrefundorderrequest *OrdersRefundOrderRequest
29426	urlParams_               gensupport.URLParams
29427	ctx_                     context.Context
29428	header_                  http.Header
29429}
29430
29431// Refundorder: Issues a partial or total refund for an order.
29432//
29433// - merchantId: The ID of the account that manages the order. This
29434//   cannot be a multi-client account.
29435// - orderId: The ID of the order to refund.
29436func (r *OrdersService) Refundorder(merchantId uint64, orderId string, ordersrefundorderrequest *OrdersRefundOrderRequest) *OrdersRefundorderCall {
29437	c := &OrdersRefundorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29438	c.merchantId = merchantId
29439	c.orderId = orderId
29440	c.ordersrefundorderrequest = ordersrefundorderrequest
29441	return c
29442}
29443
29444// Fields allows partial responses to be retrieved. See
29445// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29446// for more information.
29447func (c *OrdersRefundorderCall) Fields(s ...googleapi.Field) *OrdersRefundorderCall {
29448	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29449	return c
29450}
29451
29452// Context sets the context to be used in this call's Do method. Any
29453// pending HTTP request will be aborted if the provided context is
29454// canceled.
29455func (c *OrdersRefundorderCall) Context(ctx context.Context) *OrdersRefundorderCall {
29456	c.ctx_ = ctx
29457	return c
29458}
29459
29460// Header returns an http.Header that can be modified by the caller to
29461// add HTTP headers to the request.
29462func (c *OrdersRefundorderCall) Header() http.Header {
29463	if c.header_ == nil {
29464		c.header_ = make(http.Header)
29465	}
29466	return c.header_
29467}
29468
29469func (c *OrdersRefundorderCall) doRequest(alt string) (*http.Response, error) {
29470	reqHeaders := make(http.Header)
29471	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
29472	for k, v := range c.header_ {
29473		reqHeaders[k] = v
29474	}
29475	reqHeaders.Set("User-Agent", c.s.userAgent())
29476	var body io.Reader = nil
29477	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefundorderrequest)
29478	if err != nil {
29479		return nil, err
29480	}
29481	reqHeaders.Set("Content-Type", "application/json")
29482	c.urlParams_.Set("alt", alt)
29483	c.urlParams_.Set("prettyPrint", "false")
29484	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refundorder")
29485	urls += "?" + c.urlParams_.Encode()
29486	req, err := http.NewRequest("POST", urls, body)
29487	if err != nil {
29488		return nil, err
29489	}
29490	req.Header = reqHeaders
29491	googleapi.Expand(req.URL, map[string]string{
29492		"merchantId": strconv.FormatUint(c.merchantId, 10),
29493		"orderId":    c.orderId,
29494	})
29495	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29496}
29497
29498// Do executes the "content.orders.refundorder" call.
29499// Exactly one of *OrdersRefundOrderResponse or error will be non-nil.
29500// Any non-2xx status code is an error. Response headers are in either
29501// *OrdersRefundOrderResponse.ServerResponse.Header or (if a response
29502// was returned at all) in error.(*googleapi.Error).Header. Use
29503// googleapi.IsNotModified to check whether the returned error was
29504// because http.StatusNotModified was returned.
29505func (c *OrdersRefundorderCall) Do(opts ...googleapi.CallOption) (*OrdersRefundOrderResponse, error) {
29506	gensupport.SetOptions(c.urlParams_, opts...)
29507	res, err := c.doRequest("json")
29508	if res != nil && res.StatusCode == http.StatusNotModified {
29509		if res.Body != nil {
29510			res.Body.Close()
29511		}
29512		return nil, &googleapi.Error{
29513			Code:   res.StatusCode,
29514			Header: res.Header,
29515		}
29516	}
29517	if err != nil {
29518		return nil, err
29519	}
29520	defer googleapi.CloseBody(res)
29521	if err := googleapi.CheckResponse(res); err != nil {
29522		return nil, err
29523	}
29524	ret := &OrdersRefundOrderResponse{
29525		ServerResponse: googleapi.ServerResponse{
29526			Header:         res.Header,
29527			HTTPStatusCode: res.StatusCode,
29528		},
29529	}
29530	target := &ret
29531	if err := gensupport.DecodeResponse(target, res); err != nil {
29532		return nil, err
29533	}
29534	return ret, nil
29535	// {
29536	//   "description": "Issues a partial or total refund for an order.",
29537	//   "flatPath": "{merchantId}/orders/{orderId}/refundorder",
29538	//   "httpMethod": "POST",
29539	//   "id": "content.orders.refundorder",
29540	//   "parameterOrder": [
29541	//     "merchantId",
29542	//     "orderId"
29543	//   ],
29544	//   "parameters": {
29545	//     "merchantId": {
29546	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29547	//       "format": "uint64",
29548	//       "location": "path",
29549	//       "required": true,
29550	//       "type": "string"
29551	//     },
29552	//     "orderId": {
29553	//       "description": "The ID of the order to refund.",
29554	//       "location": "path",
29555	//       "required": true,
29556	//       "type": "string"
29557	//     }
29558	//   },
29559	//   "path": "{merchantId}/orders/{orderId}/refundorder",
29560	//   "request": {
29561	//     "$ref": "OrdersRefundOrderRequest"
29562	//   },
29563	//   "response": {
29564	//     "$ref": "OrdersRefundOrderResponse"
29565	//   },
29566	//   "scopes": [
29567	//     "https://www.googleapis.com/auth/content"
29568	//   ]
29569	// }
29570
29571}
29572
29573// method id "content.orders.rejectreturnlineitem":
29574
29575type OrdersRejectreturnlineitemCall struct {
29576	s                                 *APIService
29577	merchantId                        uint64
29578	orderId                           string
29579	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
29580	urlParams_                        gensupport.URLParams
29581	ctx_                              context.Context
29582	header_                           http.Header
29583}
29584
29585// Rejectreturnlineitem: Rejects return on an line item.
29586//
29587// - merchantId: The ID of the account that manages the order. This
29588//   cannot be a multi-client account.
29589// - orderId: The ID of the order.
29590func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
29591	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29592	c.merchantId = merchantId
29593	c.orderId = orderId
29594	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
29595	return c
29596}
29597
29598// Fields allows partial responses to be retrieved. See
29599// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29600// for more information.
29601func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
29602	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29603	return c
29604}
29605
29606// Context sets the context to be used in this call's Do method. Any
29607// pending HTTP request will be aborted if the provided context is
29608// canceled.
29609func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
29610	c.ctx_ = ctx
29611	return c
29612}
29613
29614// Header returns an http.Header that can be modified by the caller to
29615// add HTTP headers to the request.
29616func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
29617	if c.header_ == nil {
29618		c.header_ = make(http.Header)
29619	}
29620	return c.header_
29621}
29622
29623func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
29624	reqHeaders := make(http.Header)
29625	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
29626	for k, v := range c.header_ {
29627		reqHeaders[k] = v
29628	}
29629	reqHeaders.Set("User-Agent", c.s.userAgent())
29630	var body io.Reader = nil
29631	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
29632	if err != nil {
29633		return nil, err
29634	}
29635	reqHeaders.Set("Content-Type", "application/json")
29636	c.urlParams_.Set("alt", alt)
29637	c.urlParams_.Set("prettyPrint", "false")
29638	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/rejectReturnLineItem")
29639	urls += "?" + c.urlParams_.Encode()
29640	req, err := http.NewRequest("POST", urls, body)
29641	if err != nil {
29642		return nil, err
29643	}
29644	req.Header = reqHeaders
29645	googleapi.Expand(req.URL, map[string]string{
29646		"merchantId": strconv.FormatUint(c.merchantId, 10),
29647		"orderId":    c.orderId,
29648	})
29649	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29650}
29651
29652// Do executes the "content.orders.rejectreturnlineitem" call.
29653// Exactly one of *OrdersRejectReturnLineItemResponse or error will be
29654// non-nil. Any non-2xx status code is an error. Response headers are in
29655// either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
29656// (if a response was returned at all) in
29657// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29658// whether the returned error was because http.StatusNotModified was
29659// returned.
29660func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
29661	gensupport.SetOptions(c.urlParams_, opts...)
29662	res, err := c.doRequest("json")
29663	if res != nil && res.StatusCode == http.StatusNotModified {
29664		if res.Body != nil {
29665			res.Body.Close()
29666		}
29667		return nil, &googleapi.Error{
29668			Code:   res.StatusCode,
29669			Header: res.Header,
29670		}
29671	}
29672	if err != nil {
29673		return nil, err
29674	}
29675	defer googleapi.CloseBody(res)
29676	if err := googleapi.CheckResponse(res); err != nil {
29677		return nil, err
29678	}
29679	ret := &OrdersRejectReturnLineItemResponse{
29680		ServerResponse: googleapi.ServerResponse{
29681			Header:         res.Header,
29682			HTTPStatusCode: res.StatusCode,
29683		},
29684	}
29685	target := &ret
29686	if err := gensupport.DecodeResponse(target, res); err != nil {
29687		return nil, err
29688	}
29689	return ret, nil
29690	// {
29691	//   "description": "Rejects return on an line item.",
29692	//   "flatPath": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
29693	//   "httpMethod": "POST",
29694	//   "id": "content.orders.rejectreturnlineitem",
29695	//   "parameterOrder": [
29696	//     "merchantId",
29697	//     "orderId"
29698	//   ],
29699	//   "parameters": {
29700	//     "merchantId": {
29701	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29702	//       "format": "uint64",
29703	//       "location": "path",
29704	//       "required": true,
29705	//       "type": "string"
29706	//     },
29707	//     "orderId": {
29708	//       "description": "The ID of the order.",
29709	//       "location": "path",
29710	//       "required": true,
29711	//       "type": "string"
29712	//     }
29713	//   },
29714	//   "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
29715	//   "request": {
29716	//     "$ref": "OrdersRejectReturnLineItemRequest"
29717	//   },
29718	//   "response": {
29719	//     "$ref": "OrdersRejectReturnLineItemResponse"
29720	//   },
29721	//   "scopes": [
29722	//     "https://www.googleapis.com/auth/content"
29723	//   ]
29724	// }
29725
29726}
29727
29728// method id "content.orders.returnrefundlineitem":
29729
29730type OrdersReturnrefundlineitemCall struct {
29731	s                                 *APIService
29732	merchantId                        uint64
29733	orderId                           string
29734	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
29735	urlParams_                        gensupport.URLParams
29736	ctx_                              context.Context
29737	header_                           http.Header
29738}
29739
29740// Returnrefundlineitem: Returns and refunds a line item. Note that this
29741// method can only be called on fully shipped orders. Please also note
29742// that the Orderreturns API is the preferred way to handle returns
29743// after you receive a return from a customer. You can use
29744// Orderreturns.list or Orderreturns.get to search for the return, and
29745// then use Orderreturns.processreturn to issue the refund. If the
29746// return cannot be found, then we recommend using this API to issue a
29747// refund.
29748//
29749// - merchantId: The ID of the account that manages the order. This
29750//   cannot be a multi-client account.
29751// - orderId: The ID of the order.
29752func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
29753	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29754	c.merchantId = merchantId
29755	c.orderId = orderId
29756	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
29757	return c
29758}
29759
29760// Fields allows partial responses to be retrieved. See
29761// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29762// for more information.
29763func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
29764	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29765	return c
29766}
29767
29768// Context sets the context to be used in this call's Do method. Any
29769// pending HTTP request will be aborted if the provided context is
29770// canceled.
29771func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
29772	c.ctx_ = ctx
29773	return c
29774}
29775
29776// Header returns an http.Header that can be modified by the caller to
29777// add HTTP headers to the request.
29778func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
29779	if c.header_ == nil {
29780		c.header_ = make(http.Header)
29781	}
29782	return c.header_
29783}
29784
29785func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
29786	reqHeaders := make(http.Header)
29787	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
29788	for k, v := range c.header_ {
29789		reqHeaders[k] = v
29790	}
29791	reqHeaders.Set("User-Agent", c.s.userAgent())
29792	var body io.Reader = nil
29793	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
29794	if err != nil {
29795		return nil, err
29796	}
29797	reqHeaders.Set("Content-Type", "application/json")
29798	c.urlParams_.Set("alt", alt)
29799	c.urlParams_.Set("prettyPrint", "false")
29800	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnRefundLineItem")
29801	urls += "?" + c.urlParams_.Encode()
29802	req, err := http.NewRequest("POST", urls, body)
29803	if err != nil {
29804		return nil, err
29805	}
29806	req.Header = reqHeaders
29807	googleapi.Expand(req.URL, map[string]string{
29808		"merchantId": strconv.FormatUint(c.merchantId, 10),
29809		"orderId":    c.orderId,
29810	})
29811	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29812}
29813
29814// Do executes the "content.orders.returnrefundlineitem" call.
29815// Exactly one of *OrdersReturnRefundLineItemResponse or error will be
29816// non-nil. Any non-2xx status code is an error. Response headers are in
29817// either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
29818// (if a response was returned at all) in
29819// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29820// whether the returned error was because http.StatusNotModified was
29821// returned.
29822func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
29823	gensupport.SetOptions(c.urlParams_, opts...)
29824	res, err := c.doRequest("json")
29825	if res != nil && res.StatusCode == http.StatusNotModified {
29826		if res.Body != nil {
29827			res.Body.Close()
29828		}
29829		return nil, &googleapi.Error{
29830			Code:   res.StatusCode,
29831			Header: res.Header,
29832		}
29833	}
29834	if err != nil {
29835		return nil, err
29836	}
29837	defer googleapi.CloseBody(res)
29838	if err := googleapi.CheckResponse(res); err != nil {
29839		return nil, err
29840	}
29841	ret := &OrdersReturnRefundLineItemResponse{
29842		ServerResponse: googleapi.ServerResponse{
29843			Header:         res.Header,
29844			HTTPStatusCode: res.StatusCode,
29845		},
29846	}
29847	target := &ret
29848	if err := gensupport.DecodeResponse(target, res); err != nil {
29849		return nil, err
29850	}
29851	return ret, nil
29852	// {
29853	//   "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.",
29854	//   "flatPath": "{merchantId}/orders/{orderId}/returnRefundLineItem",
29855	//   "httpMethod": "POST",
29856	//   "id": "content.orders.returnrefundlineitem",
29857	//   "parameterOrder": [
29858	//     "merchantId",
29859	//     "orderId"
29860	//   ],
29861	//   "parameters": {
29862	//     "merchantId": {
29863	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29864	//       "format": "uint64",
29865	//       "location": "path",
29866	//       "required": true,
29867	//       "type": "string"
29868	//     },
29869	//     "orderId": {
29870	//       "description": "The ID of the order.",
29871	//       "location": "path",
29872	//       "required": true,
29873	//       "type": "string"
29874	//     }
29875	//   },
29876	//   "path": "{merchantId}/orders/{orderId}/returnRefundLineItem",
29877	//   "request": {
29878	//     "$ref": "OrdersReturnRefundLineItemRequest"
29879	//   },
29880	//   "response": {
29881	//     "$ref": "OrdersReturnRefundLineItemResponse"
29882	//   },
29883	//   "scopes": [
29884	//     "https://www.googleapis.com/auth/content"
29885	//   ]
29886	// }
29887
29888}
29889
29890// method id "content.orders.setlineitemmetadata":
29891
29892type OrdersSetlineitemmetadataCall struct {
29893	s                                *APIService
29894	merchantId                       uint64
29895	orderId                          string
29896	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
29897	urlParams_                       gensupport.URLParams
29898	ctx_                             context.Context
29899	header_                          http.Header
29900}
29901
29902// Setlineitemmetadata: Sets (or overrides if it already exists)
29903// merchant provided annotations in the form of key-value pairs. A
29904// common use case would be to supply us with additional structured
29905// information about a line item that cannot be provided via other
29906// methods. Submitted key-value pairs can be retrieved as part of the
29907// orders resource.
29908//
29909// - merchantId: The ID of the account that manages the order. This
29910//   cannot be a multi-client account.
29911// - orderId: The ID of the order.
29912func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
29913	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29914	c.merchantId = merchantId
29915	c.orderId = orderId
29916	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
29917	return c
29918}
29919
29920// Fields allows partial responses to be retrieved. See
29921// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29922// for more information.
29923func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
29924	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29925	return c
29926}
29927
29928// Context sets the context to be used in this call's Do method. Any
29929// pending HTTP request will be aborted if the provided context is
29930// canceled.
29931func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
29932	c.ctx_ = ctx
29933	return c
29934}
29935
29936// Header returns an http.Header that can be modified by the caller to
29937// add HTTP headers to the request.
29938func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
29939	if c.header_ == nil {
29940		c.header_ = make(http.Header)
29941	}
29942	return c.header_
29943}
29944
29945func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
29946	reqHeaders := make(http.Header)
29947	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
29948	for k, v := range c.header_ {
29949		reqHeaders[k] = v
29950	}
29951	reqHeaders.Set("User-Agent", c.s.userAgent())
29952	var body io.Reader = nil
29953	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
29954	if err != nil {
29955		return nil, err
29956	}
29957	reqHeaders.Set("Content-Type", "application/json")
29958	c.urlParams_.Set("alt", alt)
29959	c.urlParams_.Set("prettyPrint", "false")
29960	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/setLineItemMetadata")
29961	urls += "?" + c.urlParams_.Encode()
29962	req, err := http.NewRequest("POST", urls, body)
29963	if err != nil {
29964		return nil, err
29965	}
29966	req.Header = reqHeaders
29967	googleapi.Expand(req.URL, map[string]string{
29968		"merchantId": strconv.FormatUint(c.merchantId, 10),
29969		"orderId":    c.orderId,
29970	})
29971	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29972}
29973
29974// Do executes the "content.orders.setlineitemmetadata" call.
29975// Exactly one of *OrdersSetLineItemMetadataResponse or error will be
29976// non-nil. Any non-2xx status code is an error. Response headers are in
29977// either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
29978// (if a response was returned at all) in
29979// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29980// whether the returned error was because http.StatusNotModified was
29981// returned.
29982func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
29983	gensupport.SetOptions(c.urlParams_, opts...)
29984	res, err := c.doRequest("json")
29985	if res != nil && res.StatusCode == http.StatusNotModified {
29986		if res.Body != nil {
29987			res.Body.Close()
29988		}
29989		return nil, &googleapi.Error{
29990			Code:   res.StatusCode,
29991			Header: res.Header,
29992		}
29993	}
29994	if err != nil {
29995		return nil, err
29996	}
29997	defer googleapi.CloseBody(res)
29998	if err := googleapi.CheckResponse(res); err != nil {
29999		return nil, err
30000	}
30001	ret := &OrdersSetLineItemMetadataResponse{
30002		ServerResponse: googleapi.ServerResponse{
30003			Header:         res.Header,
30004			HTTPStatusCode: res.StatusCode,
30005		},
30006	}
30007	target := &ret
30008	if err := gensupport.DecodeResponse(target, res); err != nil {
30009		return nil, err
30010	}
30011	return ret, nil
30012	// {
30013	//   "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.",
30014	//   "flatPath": "{merchantId}/orders/{orderId}/setLineItemMetadata",
30015	//   "httpMethod": "POST",
30016	//   "id": "content.orders.setlineitemmetadata",
30017	//   "parameterOrder": [
30018	//     "merchantId",
30019	//     "orderId"
30020	//   ],
30021	//   "parameters": {
30022	//     "merchantId": {
30023	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30024	//       "format": "uint64",
30025	//       "location": "path",
30026	//       "required": true,
30027	//       "type": "string"
30028	//     },
30029	//     "orderId": {
30030	//       "description": "The ID of the order.",
30031	//       "location": "path",
30032	//       "required": true,
30033	//       "type": "string"
30034	//     }
30035	//   },
30036	//   "path": "{merchantId}/orders/{orderId}/setLineItemMetadata",
30037	//   "request": {
30038	//     "$ref": "OrdersSetLineItemMetadataRequest"
30039	//   },
30040	//   "response": {
30041	//     "$ref": "OrdersSetLineItemMetadataResponse"
30042	//   },
30043	//   "scopes": [
30044	//     "https://www.googleapis.com/auth/content"
30045	//   ]
30046	// }
30047
30048}
30049
30050// method id "content.orders.shiplineitems":
30051
30052type OrdersShiplineitemsCall struct {
30053	s                          *APIService
30054	merchantId                 uint64
30055	orderId                    string
30056	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
30057	urlParams_                 gensupport.URLParams
30058	ctx_                       context.Context
30059	header_                    http.Header
30060}
30061
30062// Shiplineitems: Marks line item(s) as shipped.
30063//
30064// - merchantId: The ID of the account that manages the order. This
30065//   cannot be a multi-client account.
30066// - orderId: The ID of the order.
30067func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
30068	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30069	c.merchantId = merchantId
30070	c.orderId = orderId
30071	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
30072	return c
30073}
30074
30075// Fields allows partial responses to be retrieved. See
30076// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30077// for more information.
30078func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
30079	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30080	return c
30081}
30082
30083// Context sets the context to be used in this call's Do method. Any
30084// pending HTTP request will be aborted if the provided context is
30085// canceled.
30086func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
30087	c.ctx_ = ctx
30088	return c
30089}
30090
30091// Header returns an http.Header that can be modified by the caller to
30092// add HTTP headers to the request.
30093func (c *OrdersShiplineitemsCall) Header() http.Header {
30094	if c.header_ == nil {
30095		c.header_ = make(http.Header)
30096	}
30097	return c.header_
30098}
30099
30100func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
30101	reqHeaders := make(http.Header)
30102	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
30103	for k, v := range c.header_ {
30104		reqHeaders[k] = v
30105	}
30106	reqHeaders.Set("User-Agent", c.s.userAgent())
30107	var body io.Reader = nil
30108	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
30109	if err != nil {
30110		return nil, err
30111	}
30112	reqHeaders.Set("Content-Type", "application/json")
30113	c.urlParams_.Set("alt", alt)
30114	c.urlParams_.Set("prettyPrint", "false")
30115	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/shipLineItems")
30116	urls += "?" + c.urlParams_.Encode()
30117	req, err := http.NewRequest("POST", urls, body)
30118	if err != nil {
30119		return nil, err
30120	}
30121	req.Header = reqHeaders
30122	googleapi.Expand(req.URL, map[string]string{
30123		"merchantId": strconv.FormatUint(c.merchantId, 10),
30124		"orderId":    c.orderId,
30125	})
30126	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30127}
30128
30129// Do executes the "content.orders.shiplineitems" call.
30130// Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
30131// Any non-2xx status code is an error. Response headers are in either
30132// *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
30133// was returned at all) in error.(*googleapi.Error).Header. Use
30134// googleapi.IsNotModified to check whether the returned error was
30135// because http.StatusNotModified was returned.
30136func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
30137	gensupport.SetOptions(c.urlParams_, opts...)
30138	res, err := c.doRequest("json")
30139	if res != nil && res.StatusCode == http.StatusNotModified {
30140		if res.Body != nil {
30141			res.Body.Close()
30142		}
30143		return nil, &googleapi.Error{
30144			Code:   res.StatusCode,
30145			Header: res.Header,
30146		}
30147	}
30148	if err != nil {
30149		return nil, err
30150	}
30151	defer googleapi.CloseBody(res)
30152	if err := googleapi.CheckResponse(res); err != nil {
30153		return nil, err
30154	}
30155	ret := &OrdersShipLineItemsResponse{
30156		ServerResponse: googleapi.ServerResponse{
30157			Header:         res.Header,
30158			HTTPStatusCode: res.StatusCode,
30159		},
30160	}
30161	target := &ret
30162	if err := gensupport.DecodeResponse(target, res); err != nil {
30163		return nil, err
30164	}
30165	return ret, nil
30166	// {
30167	//   "description": "Marks line item(s) as shipped.",
30168	//   "flatPath": "{merchantId}/orders/{orderId}/shipLineItems",
30169	//   "httpMethod": "POST",
30170	//   "id": "content.orders.shiplineitems",
30171	//   "parameterOrder": [
30172	//     "merchantId",
30173	//     "orderId"
30174	//   ],
30175	//   "parameters": {
30176	//     "merchantId": {
30177	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30178	//       "format": "uint64",
30179	//       "location": "path",
30180	//       "required": true,
30181	//       "type": "string"
30182	//     },
30183	//     "orderId": {
30184	//       "description": "The ID of the order.",
30185	//       "location": "path",
30186	//       "required": true,
30187	//       "type": "string"
30188	//     }
30189	//   },
30190	//   "path": "{merchantId}/orders/{orderId}/shipLineItems",
30191	//   "request": {
30192	//     "$ref": "OrdersShipLineItemsRequest"
30193	//   },
30194	//   "response": {
30195	//     "$ref": "OrdersShipLineItemsResponse"
30196	//   },
30197	//   "scopes": [
30198	//     "https://www.googleapis.com/auth/content"
30199	//   ]
30200	// }
30201
30202}
30203
30204// method id "content.orders.updatelineitemshippingdetails":
30205
30206type OrdersUpdatelineitemshippingdetailsCall struct {
30207	s                                          *APIService
30208	merchantId                                 uint64
30209	orderId                                    string
30210	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
30211	urlParams_                                 gensupport.URLParams
30212	ctx_                                       context.Context
30213	header_                                    http.Header
30214}
30215
30216// Updatelineitemshippingdetails: Updates ship by and delivery by dates
30217// for a line item.
30218//
30219// - merchantId: The ID of the account that manages the order. This
30220//   cannot be a multi-client account.
30221// - orderId: The ID of the order.
30222func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
30223	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30224	c.merchantId = merchantId
30225	c.orderId = orderId
30226	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
30227	return c
30228}
30229
30230// Fields allows partial responses to be retrieved. See
30231// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30232// for more information.
30233func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
30234	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30235	return c
30236}
30237
30238// Context sets the context to be used in this call's Do method. Any
30239// pending HTTP request will be aborted if the provided context is
30240// canceled.
30241func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
30242	c.ctx_ = ctx
30243	return c
30244}
30245
30246// Header returns an http.Header that can be modified by the caller to
30247// add HTTP headers to the request.
30248func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
30249	if c.header_ == nil {
30250		c.header_ = make(http.Header)
30251	}
30252	return c.header_
30253}
30254
30255func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
30256	reqHeaders := make(http.Header)
30257	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
30258	for k, v := range c.header_ {
30259		reqHeaders[k] = v
30260	}
30261	reqHeaders.Set("User-Agent", c.s.userAgent())
30262	var body io.Reader = nil
30263	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
30264	if err != nil {
30265		return nil, err
30266	}
30267	reqHeaders.Set("Content-Type", "application/json")
30268	c.urlParams_.Set("alt", alt)
30269	c.urlParams_.Set("prettyPrint", "false")
30270	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
30271	urls += "?" + c.urlParams_.Encode()
30272	req, err := http.NewRequest("POST", urls, body)
30273	if err != nil {
30274		return nil, err
30275	}
30276	req.Header = reqHeaders
30277	googleapi.Expand(req.URL, map[string]string{
30278		"merchantId": strconv.FormatUint(c.merchantId, 10),
30279		"orderId":    c.orderId,
30280	})
30281	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30282}
30283
30284// Do executes the "content.orders.updatelineitemshippingdetails" call.
30285// Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
30286// will be non-nil. Any non-2xx status code is an error. Response
30287// headers are in either
30288// *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
30289// (if a response was returned at all) in
30290// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30291// whether the returned error was because http.StatusNotModified was
30292// returned.
30293func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
30294	gensupport.SetOptions(c.urlParams_, opts...)
30295	res, err := c.doRequest("json")
30296	if res != nil && res.StatusCode == http.StatusNotModified {
30297		if res.Body != nil {
30298			res.Body.Close()
30299		}
30300		return nil, &googleapi.Error{
30301			Code:   res.StatusCode,
30302			Header: res.Header,
30303		}
30304	}
30305	if err != nil {
30306		return nil, err
30307	}
30308	defer googleapi.CloseBody(res)
30309	if err := googleapi.CheckResponse(res); err != nil {
30310		return nil, err
30311	}
30312	ret := &OrdersUpdateLineItemShippingDetailsResponse{
30313		ServerResponse: googleapi.ServerResponse{
30314			Header:         res.Header,
30315			HTTPStatusCode: res.StatusCode,
30316		},
30317	}
30318	target := &ret
30319	if err := gensupport.DecodeResponse(target, res); err != nil {
30320		return nil, err
30321	}
30322	return ret, nil
30323	// {
30324	//   "description": "Updates ship by and delivery by dates for a line item.",
30325	//   "flatPath": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
30326	//   "httpMethod": "POST",
30327	//   "id": "content.orders.updatelineitemshippingdetails",
30328	//   "parameterOrder": [
30329	//     "merchantId",
30330	//     "orderId"
30331	//   ],
30332	//   "parameters": {
30333	//     "merchantId": {
30334	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30335	//       "format": "uint64",
30336	//       "location": "path",
30337	//       "required": true,
30338	//       "type": "string"
30339	//     },
30340	//     "orderId": {
30341	//       "description": "The ID of the order.",
30342	//       "location": "path",
30343	//       "required": true,
30344	//       "type": "string"
30345	//     }
30346	//   },
30347	//   "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
30348	//   "request": {
30349	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
30350	//   },
30351	//   "response": {
30352	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
30353	//   },
30354	//   "scopes": [
30355	//     "https://www.googleapis.com/auth/content"
30356	//   ]
30357	// }
30358
30359}
30360
30361// method id "content.orders.updatemerchantorderid":
30362
30363type OrdersUpdatemerchantorderidCall struct {
30364	s                                  *APIService
30365	merchantId                         uint64
30366	orderId                            string
30367	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
30368	urlParams_                         gensupport.URLParams
30369	ctx_                               context.Context
30370	header_                            http.Header
30371}
30372
30373// Updatemerchantorderid: Updates the merchant order ID for a given
30374// order.
30375//
30376// - merchantId: The ID of the account that manages the order. This
30377//   cannot be a multi-client account.
30378// - orderId: The ID of the order.
30379func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
30380	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30381	c.merchantId = merchantId
30382	c.orderId = orderId
30383	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
30384	return c
30385}
30386
30387// Fields allows partial responses to be retrieved. See
30388// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30389// for more information.
30390func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
30391	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30392	return c
30393}
30394
30395// Context sets the context to be used in this call's Do method. Any
30396// pending HTTP request will be aborted if the provided context is
30397// canceled.
30398func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
30399	c.ctx_ = ctx
30400	return c
30401}
30402
30403// Header returns an http.Header that can be modified by the caller to
30404// add HTTP headers to the request.
30405func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
30406	if c.header_ == nil {
30407		c.header_ = make(http.Header)
30408	}
30409	return c.header_
30410}
30411
30412func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
30413	reqHeaders := make(http.Header)
30414	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
30415	for k, v := range c.header_ {
30416		reqHeaders[k] = v
30417	}
30418	reqHeaders.Set("User-Agent", c.s.userAgent())
30419	var body io.Reader = nil
30420	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
30421	if err != nil {
30422		return nil, err
30423	}
30424	reqHeaders.Set("Content-Type", "application/json")
30425	c.urlParams_.Set("alt", alt)
30426	c.urlParams_.Set("prettyPrint", "false")
30427	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateMerchantOrderId")
30428	urls += "?" + c.urlParams_.Encode()
30429	req, err := http.NewRequest("POST", urls, body)
30430	if err != nil {
30431		return nil, err
30432	}
30433	req.Header = reqHeaders
30434	googleapi.Expand(req.URL, map[string]string{
30435		"merchantId": strconv.FormatUint(c.merchantId, 10),
30436		"orderId":    c.orderId,
30437	})
30438	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30439}
30440
30441// Do executes the "content.orders.updatemerchantorderid" call.
30442// Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
30443// non-nil. Any non-2xx status code is an error. Response headers are in
30444// either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
30445// (if a response was returned at all) in
30446// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30447// whether the returned error was because http.StatusNotModified was
30448// returned.
30449func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
30450	gensupport.SetOptions(c.urlParams_, opts...)
30451	res, err := c.doRequest("json")
30452	if res != nil && res.StatusCode == http.StatusNotModified {
30453		if res.Body != nil {
30454			res.Body.Close()
30455		}
30456		return nil, &googleapi.Error{
30457			Code:   res.StatusCode,
30458			Header: res.Header,
30459		}
30460	}
30461	if err != nil {
30462		return nil, err
30463	}
30464	defer googleapi.CloseBody(res)
30465	if err := googleapi.CheckResponse(res); err != nil {
30466		return nil, err
30467	}
30468	ret := &OrdersUpdateMerchantOrderIdResponse{
30469		ServerResponse: googleapi.ServerResponse{
30470			Header:         res.Header,
30471			HTTPStatusCode: res.StatusCode,
30472		},
30473	}
30474	target := &ret
30475	if err := gensupport.DecodeResponse(target, res); err != nil {
30476		return nil, err
30477	}
30478	return ret, nil
30479	// {
30480	//   "description": "Updates the merchant order ID for a given order.",
30481	//   "flatPath": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
30482	//   "httpMethod": "POST",
30483	//   "id": "content.orders.updatemerchantorderid",
30484	//   "parameterOrder": [
30485	//     "merchantId",
30486	//     "orderId"
30487	//   ],
30488	//   "parameters": {
30489	//     "merchantId": {
30490	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30491	//       "format": "uint64",
30492	//       "location": "path",
30493	//       "required": true,
30494	//       "type": "string"
30495	//     },
30496	//     "orderId": {
30497	//       "description": "The ID of the order.",
30498	//       "location": "path",
30499	//       "required": true,
30500	//       "type": "string"
30501	//     }
30502	//   },
30503	//   "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
30504	//   "request": {
30505	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
30506	//   },
30507	//   "response": {
30508	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
30509	//   },
30510	//   "scopes": [
30511	//     "https://www.googleapis.com/auth/content"
30512	//   ]
30513	// }
30514
30515}
30516
30517// method id "content.orders.updateshipment":
30518
30519type OrdersUpdateshipmentCall struct {
30520	s                           *APIService
30521	merchantId                  uint64
30522	orderId                     string
30523	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
30524	urlParams_                  gensupport.URLParams
30525	ctx_                        context.Context
30526	header_                     http.Header
30527}
30528
30529// Updateshipment: Updates a shipment's status, carrier, and/or tracking
30530// ID.
30531//
30532// - merchantId: The ID of the account that manages the order. This
30533//   cannot be a multi-client account.
30534// - orderId: The ID of the order.
30535func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
30536	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30537	c.merchantId = merchantId
30538	c.orderId = orderId
30539	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
30540	return c
30541}
30542
30543// Fields allows partial responses to be retrieved. See
30544// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30545// for more information.
30546func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
30547	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30548	return c
30549}
30550
30551// Context sets the context to be used in this call's Do method. Any
30552// pending HTTP request will be aborted if the provided context is
30553// canceled.
30554func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
30555	c.ctx_ = ctx
30556	return c
30557}
30558
30559// Header returns an http.Header that can be modified by the caller to
30560// add HTTP headers to the request.
30561func (c *OrdersUpdateshipmentCall) Header() http.Header {
30562	if c.header_ == nil {
30563		c.header_ = make(http.Header)
30564	}
30565	return c.header_
30566}
30567
30568func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
30569	reqHeaders := make(http.Header)
30570	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
30571	for k, v := range c.header_ {
30572		reqHeaders[k] = v
30573	}
30574	reqHeaders.Set("User-Agent", c.s.userAgent())
30575	var body io.Reader = nil
30576	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
30577	if err != nil {
30578		return nil, err
30579	}
30580	reqHeaders.Set("Content-Type", "application/json")
30581	c.urlParams_.Set("alt", alt)
30582	c.urlParams_.Set("prettyPrint", "false")
30583	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateShipment")
30584	urls += "?" + c.urlParams_.Encode()
30585	req, err := http.NewRequest("POST", urls, body)
30586	if err != nil {
30587		return nil, err
30588	}
30589	req.Header = reqHeaders
30590	googleapi.Expand(req.URL, map[string]string{
30591		"merchantId": strconv.FormatUint(c.merchantId, 10),
30592		"orderId":    c.orderId,
30593	})
30594	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30595}
30596
30597// Do executes the "content.orders.updateshipment" call.
30598// Exactly one of *OrdersUpdateShipmentResponse or error will be
30599// non-nil. Any non-2xx status code is an error. Response headers are in
30600// either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
30601// response was returned at all) in error.(*googleapi.Error).Header. Use
30602// googleapi.IsNotModified to check whether the returned error was
30603// because http.StatusNotModified was returned.
30604func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
30605	gensupport.SetOptions(c.urlParams_, opts...)
30606	res, err := c.doRequest("json")
30607	if res != nil && res.StatusCode == http.StatusNotModified {
30608		if res.Body != nil {
30609			res.Body.Close()
30610		}
30611		return nil, &googleapi.Error{
30612			Code:   res.StatusCode,
30613			Header: res.Header,
30614		}
30615	}
30616	if err != nil {
30617		return nil, err
30618	}
30619	defer googleapi.CloseBody(res)
30620	if err := googleapi.CheckResponse(res); err != nil {
30621		return nil, err
30622	}
30623	ret := &OrdersUpdateShipmentResponse{
30624		ServerResponse: googleapi.ServerResponse{
30625			Header:         res.Header,
30626			HTTPStatusCode: res.StatusCode,
30627		},
30628	}
30629	target := &ret
30630	if err := gensupport.DecodeResponse(target, res); err != nil {
30631		return nil, err
30632	}
30633	return ret, nil
30634	// {
30635	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
30636	//   "flatPath": "{merchantId}/orders/{orderId}/updateShipment",
30637	//   "httpMethod": "POST",
30638	//   "id": "content.orders.updateshipment",
30639	//   "parameterOrder": [
30640	//     "merchantId",
30641	//     "orderId"
30642	//   ],
30643	//   "parameters": {
30644	//     "merchantId": {
30645	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30646	//       "format": "uint64",
30647	//       "location": "path",
30648	//       "required": true,
30649	//       "type": "string"
30650	//     },
30651	//     "orderId": {
30652	//       "description": "The ID of the order.",
30653	//       "location": "path",
30654	//       "required": true,
30655	//       "type": "string"
30656	//     }
30657	//   },
30658	//   "path": "{merchantId}/orders/{orderId}/updateShipment",
30659	//   "request": {
30660	//     "$ref": "OrdersUpdateShipmentRequest"
30661	//   },
30662	//   "response": {
30663	//     "$ref": "OrdersUpdateShipmentResponse"
30664	//   },
30665	//   "scopes": [
30666	//     "https://www.googleapis.com/auth/content"
30667	//   ]
30668	// }
30669
30670}
30671
30672// method id "content.ordertrackingsignals.create":
30673
30674type OrdertrackingsignalsCreateCall struct {
30675	s                   *APIService
30676	merchantId          int64
30677	ordertrackingsignal *OrderTrackingSignal
30678	urlParams_          gensupport.URLParams
30679	ctx_                context.Context
30680	header_             http.Header
30681}
30682
30683// Create: Creates new order tracking signal.
30684//
30685// - merchantId: The ID of the merchant for which the order signal is
30686//   created.
30687func (r *OrdertrackingsignalsService) Create(merchantId int64, ordertrackingsignal *OrderTrackingSignal) *OrdertrackingsignalsCreateCall {
30688	c := &OrdertrackingsignalsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30689	c.merchantId = merchantId
30690	c.ordertrackingsignal = ordertrackingsignal
30691	return c
30692}
30693
30694// Fields allows partial responses to be retrieved. See
30695// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30696// for more information.
30697func (c *OrdertrackingsignalsCreateCall) Fields(s ...googleapi.Field) *OrdertrackingsignalsCreateCall {
30698	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30699	return c
30700}
30701
30702// Context sets the context to be used in this call's Do method. Any
30703// pending HTTP request will be aborted if the provided context is
30704// canceled.
30705func (c *OrdertrackingsignalsCreateCall) Context(ctx context.Context) *OrdertrackingsignalsCreateCall {
30706	c.ctx_ = ctx
30707	return c
30708}
30709
30710// Header returns an http.Header that can be modified by the caller to
30711// add HTTP headers to the request.
30712func (c *OrdertrackingsignalsCreateCall) Header() http.Header {
30713	if c.header_ == nil {
30714		c.header_ = make(http.Header)
30715	}
30716	return c.header_
30717}
30718
30719func (c *OrdertrackingsignalsCreateCall) doRequest(alt string) (*http.Response, error) {
30720	reqHeaders := make(http.Header)
30721	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
30722	for k, v := range c.header_ {
30723		reqHeaders[k] = v
30724	}
30725	reqHeaders.Set("User-Agent", c.s.userAgent())
30726	var body io.Reader = nil
30727	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordertrackingsignal)
30728	if err != nil {
30729		return nil, err
30730	}
30731	reqHeaders.Set("Content-Type", "application/json")
30732	c.urlParams_.Set("alt", alt)
30733	c.urlParams_.Set("prettyPrint", "false")
30734	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordertrackingsignals")
30735	urls += "?" + c.urlParams_.Encode()
30736	req, err := http.NewRequest("POST", urls, body)
30737	if err != nil {
30738		return nil, err
30739	}
30740	req.Header = reqHeaders
30741	googleapi.Expand(req.URL, map[string]string{
30742		"merchantId": strconv.FormatInt(c.merchantId, 10),
30743	})
30744	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30745}
30746
30747// Do executes the "content.ordertrackingsignals.create" call.
30748// Exactly one of *OrderTrackingSignal or error will be non-nil. Any
30749// non-2xx status code is an error. Response headers are in either
30750// *OrderTrackingSignal.ServerResponse.Header or (if a response was
30751// returned at all) in error.(*googleapi.Error).Header. Use
30752// googleapi.IsNotModified to check whether the returned error was
30753// because http.StatusNotModified was returned.
30754func (c *OrdertrackingsignalsCreateCall) Do(opts ...googleapi.CallOption) (*OrderTrackingSignal, error) {
30755	gensupport.SetOptions(c.urlParams_, opts...)
30756	res, err := c.doRequest("json")
30757	if res != nil && res.StatusCode == http.StatusNotModified {
30758		if res.Body != nil {
30759			res.Body.Close()
30760		}
30761		return nil, &googleapi.Error{
30762			Code:   res.StatusCode,
30763			Header: res.Header,
30764		}
30765	}
30766	if err != nil {
30767		return nil, err
30768	}
30769	defer googleapi.CloseBody(res)
30770	if err := googleapi.CheckResponse(res); err != nil {
30771		return nil, err
30772	}
30773	ret := &OrderTrackingSignal{
30774		ServerResponse: googleapi.ServerResponse{
30775			Header:         res.Header,
30776			HTTPStatusCode: res.StatusCode,
30777		},
30778	}
30779	target := &ret
30780	if err := gensupport.DecodeResponse(target, res); err != nil {
30781		return nil, err
30782	}
30783	return ret, nil
30784	// {
30785	//   "description": "Creates new order tracking signal.",
30786	//   "flatPath": "{merchantId}/ordertrackingsignals",
30787	//   "httpMethod": "POST",
30788	//   "id": "content.ordertrackingsignals.create",
30789	//   "parameterOrder": [
30790	//     "merchantId"
30791	//   ],
30792	//   "parameters": {
30793	//     "merchantId": {
30794	//       "description": "The ID of the merchant for which the order signal is created.",
30795	//       "format": "int64",
30796	//       "location": "path",
30797	//       "required": true,
30798	//       "type": "string"
30799	//     }
30800	//   },
30801	//   "path": "{merchantId}/ordertrackingsignals",
30802	//   "request": {
30803	//     "$ref": "OrderTrackingSignal"
30804	//   },
30805	//   "response": {
30806	//     "$ref": "OrderTrackingSignal"
30807	//   },
30808	//   "scopes": [
30809	//     "https://www.googleapis.com/auth/content"
30810	//   ]
30811	// }
30812
30813}
30814
30815// method id "content.pos.custombatch":
30816
30817type PosCustombatchCall struct {
30818	s                     *APIService
30819	poscustombatchrequest *PosCustomBatchRequest
30820	urlParams_            gensupport.URLParams
30821	ctx_                  context.Context
30822	header_               http.Header
30823}
30824
30825// Custombatch: Batches multiple POS-related calls in a single request.
30826func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
30827	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30828	c.poscustombatchrequest = poscustombatchrequest
30829	return c
30830}
30831
30832// Fields allows partial responses to be retrieved. See
30833// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30834// for more information.
30835func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
30836	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30837	return c
30838}
30839
30840// Context sets the context to be used in this call's Do method. Any
30841// pending HTTP request will be aborted if the provided context is
30842// canceled.
30843func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
30844	c.ctx_ = ctx
30845	return c
30846}
30847
30848// Header returns an http.Header that can be modified by the caller to
30849// add HTTP headers to the request.
30850func (c *PosCustombatchCall) Header() http.Header {
30851	if c.header_ == nil {
30852		c.header_ = make(http.Header)
30853	}
30854	return c.header_
30855}
30856
30857func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
30858	reqHeaders := make(http.Header)
30859	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
30860	for k, v := range c.header_ {
30861		reqHeaders[k] = v
30862	}
30863	reqHeaders.Set("User-Agent", c.s.userAgent())
30864	var body io.Reader = nil
30865	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
30866	if err != nil {
30867		return nil, err
30868	}
30869	reqHeaders.Set("Content-Type", "application/json")
30870	c.urlParams_.Set("alt", alt)
30871	c.urlParams_.Set("prettyPrint", "false")
30872	urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch")
30873	urls += "?" + c.urlParams_.Encode()
30874	req, err := http.NewRequest("POST", urls, body)
30875	if err != nil {
30876		return nil, err
30877	}
30878	req.Header = reqHeaders
30879	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30880}
30881
30882// Do executes the "content.pos.custombatch" call.
30883// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
30884// non-2xx status code is an error. Response headers are in either
30885// *PosCustomBatchResponse.ServerResponse.Header or (if a response was
30886// returned at all) in error.(*googleapi.Error).Header. Use
30887// googleapi.IsNotModified to check whether the returned error was
30888// because http.StatusNotModified was returned.
30889func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
30890	gensupport.SetOptions(c.urlParams_, opts...)
30891	res, err := c.doRequest("json")
30892	if res != nil && res.StatusCode == http.StatusNotModified {
30893		if res.Body != nil {
30894			res.Body.Close()
30895		}
30896		return nil, &googleapi.Error{
30897			Code:   res.StatusCode,
30898			Header: res.Header,
30899		}
30900	}
30901	if err != nil {
30902		return nil, err
30903	}
30904	defer googleapi.CloseBody(res)
30905	if err := googleapi.CheckResponse(res); err != nil {
30906		return nil, err
30907	}
30908	ret := &PosCustomBatchResponse{
30909		ServerResponse: googleapi.ServerResponse{
30910			Header:         res.Header,
30911			HTTPStatusCode: res.StatusCode,
30912		},
30913	}
30914	target := &ret
30915	if err := gensupport.DecodeResponse(target, res); err != nil {
30916		return nil, err
30917	}
30918	return ret, nil
30919	// {
30920	//   "description": "Batches multiple POS-related calls in a single request.",
30921	//   "flatPath": "pos/batch",
30922	//   "httpMethod": "POST",
30923	//   "id": "content.pos.custombatch",
30924	//   "parameterOrder": [],
30925	//   "parameters": {},
30926	//   "path": "pos/batch",
30927	//   "request": {
30928	//     "$ref": "PosCustomBatchRequest"
30929	//   },
30930	//   "response": {
30931	//     "$ref": "PosCustomBatchResponse"
30932	//   },
30933	//   "scopes": [
30934	//     "https://www.googleapis.com/auth/content"
30935	//   ]
30936	// }
30937
30938}
30939
30940// method id "content.pos.delete":
30941
30942type PosDeleteCall struct {
30943	s                *APIService
30944	merchantId       uint64
30945	targetMerchantId uint64
30946	storeCode        string
30947	urlParams_       gensupport.URLParams
30948	ctx_             context.Context
30949	header_          http.Header
30950}
30951
30952// Delete: Deletes a store for the given merchant.
30953//
30954// - merchantId: The ID of the POS or inventory data provider.
30955// - storeCode: A store code that is unique per merchant.
30956// - targetMerchantId: The ID of the target merchant.
30957func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
30958	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30959	c.merchantId = merchantId
30960	c.targetMerchantId = targetMerchantId
30961	c.storeCode = storeCode
30962	return c
30963}
30964
30965// Fields allows partial responses to be retrieved. See
30966// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30967// for more information.
30968func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
30969	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30970	return c
30971}
30972
30973// Context sets the context to be used in this call's Do method. Any
30974// pending HTTP request will be aborted if the provided context is
30975// canceled.
30976func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
30977	c.ctx_ = ctx
30978	return c
30979}
30980
30981// Header returns an http.Header that can be modified by the caller to
30982// add HTTP headers to the request.
30983func (c *PosDeleteCall) Header() http.Header {
30984	if c.header_ == nil {
30985		c.header_ = make(http.Header)
30986	}
30987	return c.header_
30988}
30989
30990func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
30991	reqHeaders := make(http.Header)
30992	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
30993	for k, v := range c.header_ {
30994		reqHeaders[k] = v
30995	}
30996	reqHeaders.Set("User-Agent", c.s.userAgent())
30997	var body io.Reader = nil
30998	c.urlParams_.Set("alt", alt)
30999	c.urlParams_.Set("prettyPrint", "false")
31000	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
31001	urls += "?" + c.urlParams_.Encode()
31002	req, err := http.NewRequest("DELETE", urls, body)
31003	if err != nil {
31004		return nil, err
31005	}
31006	req.Header = reqHeaders
31007	googleapi.Expand(req.URL, map[string]string{
31008		"merchantId":       strconv.FormatUint(c.merchantId, 10),
31009		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
31010		"storeCode":        c.storeCode,
31011	})
31012	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31013}
31014
31015// Do executes the "content.pos.delete" call.
31016func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
31017	gensupport.SetOptions(c.urlParams_, opts...)
31018	res, err := c.doRequest("json")
31019	if err != nil {
31020		return err
31021	}
31022	defer googleapi.CloseBody(res)
31023	if err := googleapi.CheckResponse(res); err != nil {
31024		return err
31025	}
31026	return nil
31027	// {
31028	//   "description": "Deletes a store for the given merchant.",
31029	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
31030	//   "httpMethod": "DELETE",
31031	//   "id": "content.pos.delete",
31032	//   "parameterOrder": [
31033	//     "merchantId",
31034	//     "targetMerchantId",
31035	//     "storeCode"
31036	//   ],
31037	//   "parameters": {
31038	//     "merchantId": {
31039	//       "description": "The ID of the POS or inventory data provider.",
31040	//       "format": "uint64",
31041	//       "location": "path",
31042	//       "required": true,
31043	//       "type": "string"
31044	//     },
31045	//     "storeCode": {
31046	//       "description": "A store code that is unique per merchant.",
31047	//       "location": "path",
31048	//       "required": true,
31049	//       "type": "string"
31050	//     },
31051	//     "targetMerchantId": {
31052	//       "description": "The ID of the target merchant.",
31053	//       "format": "uint64",
31054	//       "location": "path",
31055	//       "required": true,
31056	//       "type": "string"
31057	//     }
31058	//   },
31059	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
31060	//   "scopes": [
31061	//     "https://www.googleapis.com/auth/content"
31062	//   ]
31063	// }
31064
31065}
31066
31067// method id "content.pos.get":
31068
31069type PosGetCall struct {
31070	s                *APIService
31071	merchantId       uint64
31072	targetMerchantId uint64
31073	storeCode        string
31074	urlParams_       gensupport.URLParams
31075	ifNoneMatch_     string
31076	ctx_             context.Context
31077	header_          http.Header
31078}
31079
31080// Get: Retrieves information about the given store.
31081//
31082// - merchantId: The ID of the POS or inventory data provider.
31083// - storeCode: A store code that is unique per merchant.
31084// - targetMerchantId: The ID of the target merchant.
31085func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
31086	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31087	c.merchantId = merchantId
31088	c.targetMerchantId = targetMerchantId
31089	c.storeCode = storeCode
31090	return c
31091}
31092
31093// Fields allows partial responses to be retrieved. See
31094// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31095// for more information.
31096func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
31097	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31098	return c
31099}
31100
31101// IfNoneMatch sets the optional parameter which makes the operation
31102// fail if the object's ETag matches the given value. This is useful for
31103// getting updates only after the object has changed since the last
31104// request. Use googleapi.IsNotModified to check whether the response
31105// error from Do is the result of In-None-Match.
31106func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
31107	c.ifNoneMatch_ = entityTag
31108	return c
31109}
31110
31111// Context sets the context to be used in this call's Do method. Any
31112// pending HTTP request will be aborted if the provided context is
31113// canceled.
31114func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
31115	c.ctx_ = ctx
31116	return c
31117}
31118
31119// Header returns an http.Header that can be modified by the caller to
31120// add HTTP headers to the request.
31121func (c *PosGetCall) Header() http.Header {
31122	if c.header_ == nil {
31123		c.header_ = make(http.Header)
31124	}
31125	return c.header_
31126}
31127
31128func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
31129	reqHeaders := make(http.Header)
31130	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
31131	for k, v := range c.header_ {
31132		reqHeaders[k] = v
31133	}
31134	reqHeaders.Set("User-Agent", c.s.userAgent())
31135	if c.ifNoneMatch_ != "" {
31136		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31137	}
31138	var body io.Reader = nil
31139	c.urlParams_.Set("alt", alt)
31140	c.urlParams_.Set("prettyPrint", "false")
31141	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
31142	urls += "?" + c.urlParams_.Encode()
31143	req, err := http.NewRequest("GET", urls, body)
31144	if err != nil {
31145		return nil, err
31146	}
31147	req.Header = reqHeaders
31148	googleapi.Expand(req.URL, map[string]string{
31149		"merchantId":       strconv.FormatUint(c.merchantId, 10),
31150		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
31151		"storeCode":        c.storeCode,
31152	})
31153	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31154}
31155
31156// Do executes the "content.pos.get" call.
31157// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
31158// code is an error. Response headers are in either
31159// *PosStore.ServerResponse.Header or (if a response was returned at
31160// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
31161// to check whether the returned error was because
31162// http.StatusNotModified was returned.
31163func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
31164	gensupport.SetOptions(c.urlParams_, opts...)
31165	res, err := c.doRequest("json")
31166	if res != nil && res.StatusCode == http.StatusNotModified {
31167		if res.Body != nil {
31168			res.Body.Close()
31169		}
31170		return nil, &googleapi.Error{
31171			Code:   res.StatusCode,
31172			Header: res.Header,
31173		}
31174	}
31175	if err != nil {
31176		return nil, err
31177	}
31178	defer googleapi.CloseBody(res)
31179	if err := googleapi.CheckResponse(res); err != nil {
31180		return nil, err
31181	}
31182	ret := &PosStore{
31183		ServerResponse: googleapi.ServerResponse{
31184			Header:         res.Header,
31185			HTTPStatusCode: res.StatusCode,
31186		},
31187	}
31188	target := &ret
31189	if err := gensupport.DecodeResponse(target, res); err != nil {
31190		return nil, err
31191	}
31192	return ret, nil
31193	// {
31194	//   "description": "Retrieves information about the given store.",
31195	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
31196	//   "httpMethod": "GET",
31197	//   "id": "content.pos.get",
31198	//   "parameterOrder": [
31199	//     "merchantId",
31200	//     "targetMerchantId",
31201	//     "storeCode"
31202	//   ],
31203	//   "parameters": {
31204	//     "merchantId": {
31205	//       "description": "The ID of the POS or inventory data provider.",
31206	//       "format": "uint64",
31207	//       "location": "path",
31208	//       "required": true,
31209	//       "type": "string"
31210	//     },
31211	//     "storeCode": {
31212	//       "description": "A store code that is unique per merchant.",
31213	//       "location": "path",
31214	//       "required": true,
31215	//       "type": "string"
31216	//     },
31217	//     "targetMerchantId": {
31218	//       "description": "The ID of the target merchant.",
31219	//       "format": "uint64",
31220	//       "location": "path",
31221	//       "required": true,
31222	//       "type": "string"
31223	//     }
31224	//   },
31225	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
31226	//   "response": {
31227	//     "$ref": "PosStore"
31228	//   },
31229	//   "scopes": [
31230	//     "https://www.googleapis.com/auth/content"
31231	//   ]
31232	// }
31233
31234}
31235
31236// method id "content.pos.insert":
31237
31238type PosInsertCall struct {
31239	s                *APIService
31240	merchantId       uint64
31241	targetMerchantId uint64
31242	posstore         *PosStore
31243	urlParams_       gensupport.URLParams
31244	ctx_             context.Context
31245	header_          http.Header
31246}
31247
31248// Insert: Creates a store for the given merchant.
31249//
31250// - merchantId: The ID of the POS or inventory data provider.
31251// - targetMerchantId: The ID of the target merchant.
31252func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
31253	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31254	c.merchantId = merchantId
31255	c.targetMerchantId = targetMerchantId
31256	c.posstore = posstore
31257	return c
31258}
31259
31260// Fields allows partial responses to be retrieved. See
31261// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31262// for more information.
31263func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
31264	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31265	return c
31266}
31267
31268// Context sets the context to be used in this call's Do method. Any
31269// pending HTTP request will be aborted if the provided context is
31270// canceled.
31271func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
31272	c.ctx_ = ctx
31273	return c
31274}
31275
31276// Header returns an http.Header that can be modified by the caller to
31277// add HTTP headers to the request.
31278func (c *PosInsertCall) Header() http.Header {
31279	if c.header_ == nil {
31280		c.header_ = make(http.Header)
31281	}
31282	return c.header_
31283}
31284
31285func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
31286	reqHeaders := make(http.Header)
31287	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
31288	for k, v := range c.header_ {
31289		reqHeaders[k] = v
31290	}
31291	reqHeaders.Set("User-Agent", c.s.userAgent())
31292	var body io.Reader = nil
31293	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
31294	if err != nil {
31295		return nil, err
31296	}
31297	reqHeaders.Set("Content-Type", "application/json")
31298	c.urlParams_.Set("alt", alt)
31299	c.urlParams_.Set("prettyPrint", "false")
31300	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
31301	urls += "?" + c.urlParams_.Encode()
31302	req, err := http.NewRequest("POST", urls, body)
31303	if err != nil {
31304		return nil, err
31305	}
31306	req.Header = reqHeaders
31307	googleapi.Expand(req.URL, map[string]string{
31308		"merchantId":       strconv.FormatUint(c.merchantId, 10),
31309		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
31310	})
31311	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31312}
31313
31314// Do executes the "content.pos.insert" call.
31315// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
31316// code is an error. Response headers are in either
31317// *PosStore.ServerResponse.Header or (if a response was returned at
31318// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
31319// to check whether the returned error was because
31320// http.StatusNotModified was returned.
31321func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
31322	gensupport.SetOptions(c.urlParams_, opts...)
31323	res, err := c.doRequest("json")
31324	if res != nil && res.StatusCode == http.StatusNotModified {
31325		if res.Body != nil {
31326			res.Body.Close()
31327		}
31328		return nil, &googleapi.Error{
31329			Code:   res.StatusCode,
31330			Header: res.Header,
31331		}
31332	}
31333	if err != nil {
31334		return nil, err
31335	}
31336	defer googleapi.CloseBody(res)
31337	if err := googleapi.CheckResponse(res); err != nil {
31338		return nil, err
31339	}
31340	ret := &PosStore{
31341		ServerResponse: googleapi.ServerResponse{
31342			Header:         res.Header,
31343			HTTPStatusCode: res.StatusCode,
31344		},
31345	}
31346	target := &ret
31347	if err := gensupport.DecodeResponse(target, res); err != nil {
31348		return nil, err
31349	}
31350	return ret, nil
31351	// {
31352	//   "description": "Creates a store for the given merchant.",
31353	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
31354	//   "httpMethod": "POST",
31355	//   "id": "content.pos.insert",
31356	//   "parameterOrder": [
31357	//     "merchantId",
31358	//     "targetMerchantId"
31359	//   ],
31360	//   "parameters": {
31361	//     "merchantId": {
31362	//       "description": "The ID of the POS or inventory data provider.",
31363	//       "format": "uint64",
31364	//       "location": "path",
31365	//       "required": true,
31366	//       "type": "string"
31367	//     },
31368	//     "targetMerchantId": {
31369	//       "description": "The ID of the target merchant.",
31370	//       "format": "uint64",
31371	//       "location": "path",
31372	//       "required": true,
31373	//       "type": "string"
31374	//     }
31375	//   },
31376	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
31377	//   "request": {
31378	//     "$ref": "PosStore"
31379	//   },
31380	//   "response": {
31381	//     "$ref": "PosStore"
31382	//   },
31383	//   "scopes": [
31384	//     "https://www.googleapis.com/auth/content"
31385	//   ]
31386	// }
31387
31388}
31389
31390// method id "content.pos.inventory":
31391
31392type PosInventoryCall struct {
31393	s                   *APIService
31394	merchantId          uint64
31395	targetMerchantId    uint64
31396	posinventoryrequest *PosInventoryRequest
31397	urlParams_          gensupport.URLParams
31398	ctx_                context.Context
31399	header_             http.Header
31400}
31401
31402// Inventory: Submit inventory for the given merchant.
31403//
31404// - merchantId: The ID of the POS or inventory data provider.
31405// - targetMerchantId: The ID of the target merchant.
31406func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
31407	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31408	c.merchantId = merchantId
31409	c.targetMerchantId = targetMerchantId
31410	c.posinventoryrequest = posinventoryrequest
31411	return c
31412}
31413
31414// Fields allows partial responses to be retrieved. See
31415// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31416// for more information.
31417func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
31418	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31419	return c
31420}
31421
31422// Context sets the context to be used in this call's Do method. Any
31423// pending HTTP request will be aborted if the provided context is
31424// canceled.
31425func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
31426	c.ctx_ = ctx
31427	return c
31428}
31429
31430// Header returns an http.Header that can be modified by the caller to
31431// add HTTP headers to the request.
31432func (c *PosInventoryCall) Header() http.Header {
31433	if c.header_ == nil {
31434		c.header_ = make(http.Header)
31435	}
31436	return c.header_
31437}
31438
31439func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
31440	reqHeaders := make(http.Header)
31441	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
31442	for k, v := range c.header_ {
31443		reqHeaders[k] = v
31444	}
31445	reqHeaders.Set("User-Agent", c.s.userAgent())
31446	var body io.Reader = nil
31447	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
31448	if err != nil {
31449		return nil, err
31450	}
31451	reqHeaders.Set("Content-Type", "application/json")
31452	c.urlParams_.Set("alt", alt)
31453	c.urlParams_.Set("prettyPrint", "false")
31454	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory")
31455	urls += "?" + c.urlParams_.Encode()
31456	req, err := http.NewRequest("POST", urls, body)
31457	if err != nil {
31458		return nil, err
31459	}
31460	req.Header = reqHeaders
31461	googleapi.Expand(req.URL, map[string]string{
31462		"merchantId":       strconv.FormatUint(c.merchantId, 10),
31463		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
31464	})
31465	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31466}
31467
31468// Do executes the "content.pos.inventory" call.
31469// Exactly one of *PosInventoryResponse or error will be non-nil. Any
31470// non-2xx status code is an error. Response headers are in either
31471// *PosInventoryResponse.ServerResponse.Header or (if a response was
31472// returned at all) in error.(*googleapi.Error).Header. Use
31473// googleapi.IsNotModified to check whether the returned error was
31474// because http.StatusNotModified was returned.
31475func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
31476	gensupport.SetOptions(c.urlParams_, opts...)
31477	res, err := c.doRequest("json")
31478	if res != nil && res.StatusCode == http.StatusNotModified {
31479		if res.Body != nil {
31480			res.Body.Close()
31481		}
31482		return nil, &googleapi.Error{
31483			Code:   res.StatusCode,
31484			Header: res.Header,
31485		}
31486	}
31487	if err != nil {
31488		return nil, err
31489	}
31490	defer googleapi.CloseBody(res)
31491	if err := googleapi.CheckResponse(res); err != nil {
31492		return nil, err
31493	}
31494	ret := &PosInventoryResponse{
31495		ServerResponse: googleapi.ServerResponse{
31496			Header:         res.Header,
31497			HTTPStatusCode: res.StatusCode,
31498		},
31499	}
31500	target := &ret
31501	if err := gensupport.DecodeResponse(target, res); err != nil {
31502		return nil, err
31503	}
31504	return ret, nil
31505	// {
31506	//   "description": "Submit inventory for the given merchant.",
31507	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/inventory",
31508	//   "httpMethod": "POST",
31509	//   "id": "content.pos.inventory",
31510	//   "parameterOrder": [
31511	//     "merchantId",
31512	//     "targetMerchantId"
31513	//   ],
31514	//   "parameters": {
31515	//     "merchantId": {
31516	//       "description": "The ID of the POS or inventory data provider.",
31517	//       "format": "uint64",
31518	//       "location": "path",
31519	//       "required": true,
31520	//       "type": "string"
31521	//     },
31522	//     "targetMerchantId": {
31523	//       "description": "The ID of the target merchant.",
31524	//       "format": "uint64",
31525	//       "location": "path",
31526	//       "required": true,
31527	//       "type": "string"
31528	//     }
31529	//   },
31530	//   "path": "{merchantId}/pos/{targetMerchantId}/inventory",
31531	//   "request": {
31532	//     "$ref": "PosInventoryRequest"
31533	//   },
31534	//   "response": {
31535	//     "$ref": "PosInventoryResponse"
31536	//   },
31537	//   "scopes": [
31538	//     "https://www.googleapis.com/auth/content"
31539	//   ]
31540	// }
31541
31542}
31543
31544// method id "content.pos.list":
31545
31546type PosListCall struct {
31547	s                *APIService
31548	merchantId       uint64
31549	targetMerchantId uint64
31550	urlParams_       gensupport.URLParams
31551	ifNoneMatch_     string
31552	ctx_             context.Context
31553	header_          http.Header
31554}
31555
31556// List: Lists the stores of the target merchant.
31557//
31558// - merchantId: The ID of the POS or inventory data provider.
31559// - targetMerchantId: The ID of the target merchant.
31560func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
31561	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31562	c.merchantId = merchantId
31563	c.targetMerchantId = targetMerchantId
31564	return c
31565}
31566
31567// Fields allows partial responses to be retrieved. See
31568// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31569// for more information.
31570func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
31571	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31572	return c
31573}
31574
31575// IfNoneMatch sets the optional parameter which makes the operation
31576// fail if the object's ETag matches the given value. This is useful for
31577// getting updates only after the object has changed since the last
31578// request. Use googleapi.IsNotModified to check whether the response
31579// error from Do is the result of In-None-Match.
31580func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
31581	c.ifNoneMatch_ = entityTag
31582	return c
31583}
31584
31585// Context sets the context to be used in this call's Do method. Any
31586// pending HTTP request will be aborted if the provided context is
31587// canceled.
31588func (c *PosListCall) Context(ctx context.Context) *PosListCall {
31589	c.ctx_ = ctx
31590	return c
31591}
31592
31593// Header returns an http.Header that can be modified by the caller to
31594// add HTTP headers to the request.
31595func (c *PosListCall) Header() http.Header {
31596	if c.header_ == nil {
31597		c.header_ = make(http.Header)
31598	}
31599	return c.header_
31600}
31601
31602func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
31603	reqHeaders := make(http.Header)
31604	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
31605	for k, v := range c.header_ {
31606		reqHeaders[k] = v
31607	}
31608	reqHeaders.Set("User-Agent", c.s.userAgent())
31609	if c.ifNoneMatch_ != "" {
31610		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31611	}
31612	var body io.Reader = nil
31613	c.urlParams_.Set("alt", alt)
31614	c.urlParams_.Set("prettyPrint", "false")
31615	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
31616	urls += "?" + c.urlParams_.Encode()
31617	req, err := http.NewRequest("GET", urls, body)
31618	if err != nil {
31619		return nil, err
31620	}
31621	req.Header = reqHeaders
31622	googleapi.Expand(req.URL, map[string]string{
31623		"merchantId":       strconv.FormatUint(c.merchantId, 10),
31624		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
31625	})
31626	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31627}
31628
31629// Do executes the "content.pos.list" call.
31630// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
31631// status code is an error. Response headers are in either
31632// *PosListResponse.ServerResponse.Header or (if a response was returned
31633// at all) in error.(*googleapi.Error).Header. Use
31634// googleapi.IsNotModified to check whether the returned error was
31635// because http.StatusNotModified was returned.
31636func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
31637	gensupport.SetOptions(c.urlParams_, opts...)
31638	res, err := c.doRequest("json")
31639	if res != nil && res.StatusCode == http.StatusNotModified {
31640		if res.Body != nil {
31641			res.Body.Close()
31642		}
31643		return nil, &googleapi.Error{
31644			Code:   res.StatusCode,
31645			Header: res.Header,
31646		}
31647	}
31648	if err != nil {
31649		return nil, err
31650	}
31651	defer googleapi.CloseBody(res)
31652	if err := googleapi.CheckResponse(res); err != nil {
31653		return nil, err
31654	}
31655	ret := &PosListResponse{
31656		ServerResponse: googleapi.ServerResponse{
31657			Header:         res.Header,
31658			HTTPStatusCode: res.StatusCode,
31659		},
31660	}
31661	target := &ret
31662	if err := gensupport.DecodeResponse(target, res); err != nil {
31663		return nil, err
31664	}
31665	return ret, nil
31666	// {
31667	//   "description": "Lists the stores of the target merchant.",
31668	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
31669	//   "httpMethod": "GET",
31670	//   "id": "content.pos.list",
31671	//   "parameterOrder": [
31672	//     "merchantId",
31673	//     "targetMerchantId"
31674	//   ],
31675	//   "parameters": {
31676	//     "merchantId": {
31677	//       "description": "The ID of the POS or inventory data provider.",
31678	//       "format": "uint64",
31679	//       "location": "path",
31680	//       "required": true,
31681	//       "type": "string"
31682	//     },
31683	//     "targetMerchantId": {
31684	//       "description": "The ID of the target merchant.",
31685	//       "format": "uint64",
31686	//       "location": "path",
31687	//       "required": true,
31688	//       "type": "string"
31689	//     }
31690	//   },
31691	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
31692	//   "response": {
31693	//     "$ref": "PosListResponse"
31694	//   },
31695	//   "scopes": [
31696	//     "https://www.googleapis.com/auth/content"
31697	//   ]
31698	// }
31699
31700}
31701
31702// method id "content.pos.sale":
31703
31704type PosSaleCall struct {
31705	s                *APIService
31706	merchantId       uint64
31707	targetMerchantId uint64
31708	possalerequest   *PosSaleRequest
31709	urlParams_       gensupport.URLParams
31710	ctx_             context.Context
31711	header_          http.Header
31712}
31713
31714// Sale: Submit a sale event for the given merchant.
31715//
31716// - merchantId: The ID of the POS or inventory data provider.
31717// - targetMerchantId: The ID of the target merchant.
31718func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
31719	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31720	c.merchantId = merchantId
31721	c.targetMerchantId = targetMerchantId
31722	c.possalerequest = possalerequest
31723	return c
31724}
31725
31726// Fields allows partial responses to be retrieved. See
31727// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31728// for more information.
31729func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
31730	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31731	return c
31732}
31733
31734// Context sets the context to be used in this call's Do method. Any
31735// pending HTTP request will be aborted if the provided context is
31736// canceled.
31737func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
31738	c.ctx_ = ctx
31739	return c
31740}
31741
31742// Header returns an http.Header that can be modified by the caller to
31743// add HTTP headers to the request.
31744func (c *PosSaleCall) Header() http.Header {
31745	if c.header_ == nil {
31746		c.header_ = make(http.Header)
31747	}
31748	return c.header_
31749}
31750
31751func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
31752	reqHeaders := make(http.Header)
31753	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
31754	for k, v := range c.header_ {
31755		reqHeaders[k] = v
31756	}
31757	reqHeaders.Set("User-Agent", c.s.userAgent())
31758	var body io.Reader = nil
31759	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
31760	if err != nil {
31761		return nil, err
31762	}
31763	reqHeaders.Set("Content-Type", "application/json")
31764	c.urlParams_.Set("alt", alt)
31765	c.urlParams_.Set("prettyPrint", "false")
31766	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale")
31767	urls += "?" + c.urlParams_.Encode()
31768	req, err := http.NewRequest("POST", urls, body)
31769	if err != nil {
31770		return nil, err
31771	}
31772	req.Header = reqHeaders
31773	googleapi.Expand(req.URL, map[string]string{
31774		"merchantId":       strconv.FormatUint(c.merchantId, 10),
31775		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
31776	})
31777	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31778}
31779
31780// Do executes the "content.pos.sale" call.
31781// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
31782// status code is an error. Response headers are in either
31783// *PosSaleResponse.ServerResponse.Header or (if a response was returned
31784// at all) in error.(*googleapi.Error).Header. Use
31785// googleapi.IsNotModified to check whether the returned error was
31786// because http.StatusNotModified was returned.
31787func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) {
31788	gensupport.SetOptions(c.urlParams_, opts...)
31789	res, err := c.doRequest("json")
31790	if res != nil && res.StatusCode == http.StatusNotModified {
31791		if res.Body != nil {
31792			res.Body.Close()
31793		}
31794		return nil, &googleapi.Error{
31795			Code:   res.StatusCode,
31796			Header: res.Header,
31797		}
31798	}
31799	if err != nil {
31800		return nil, err
31801	}
31802	defer googleapi.CloseBody(res)
31803	if err := googleapi.CheckResponse(res); err != nil {
31804		return nil, err
31805	}
31806	ret := &PosSaleResponse{
31807		ServerResponse: googleapi.ServerResponse{
31808			Header:         res.Header,
31809			HTTPStatusCode: res.StatusCode,
31810		},
31811	}
31812	target := &ret
31813	if err := gensupport.DecodeResponse(target, res); err != nil {
31814		return nil, err
31815	}
31816	return ret, nil
31817	// {
31818	//   "description": "Submit a sale event for the given merchant.",
31819	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/sale",
31820	//   "httpMethod": "POST",
31821	//   "id": "content.pos.sale",
31822	//   "parameterOrder": [
31823	//     "merchantId",
31824	//     "targetMerchantId"
31825	//   ],
31826	//   "parameters": {
31827	//     "merchantId": {
31828	//       "description": "The ID of the POS or inventory data provider.",
31829	//       "format": "uint64",
31830	//       "location": "path",
31831	//       "required": true,
31832	//       "type": "string"
31833	//     },
31834	//     "targetMerchantId": {
31835	//       "description": "The ID of the target merchant.",
31836	//       "format": "uint64",
31837	//       "location": "path",
31838	//       "required": true,
31839	//       "type": "string"
31840	//     }
31841	//   },
31842	//   "path": "{merchantId}/pos/{targetMerchantId}/sale",
31843	//   "request": {
31844	//     "$ref": "PosSaleRequest"
31845	//   },
31846	//   "response": {
31847	//     "$ref": "PosSaleResponse"
31848	//   },
31849	//   "scopes": [
31850	//     "https://www.googleapis.com/auth/content"
31851	//   ]
31852	// }
31853
31854}
31855
31856// method id "content.products.custombatch":
31857
31858type ProductsCustombatchCall struct {
31859	s                          *APIService
31860	productscustombatchrequest *ProductsCustomBatchRequest
31861	urlParams_                 gensupport.URLParams
31862	ctx_                       context.Context
31863	header_                    http.Header
31864}
31865
31866// Custombatch: Retrieves, inserts, and deletes multiple products in a
31867// single request.
31868func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
31869	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31870	c.productscustombatchrequest = productscustombatchrequest
31871	return c
31872}
31873
31874// Fields allows partial responses to be retrieved. See
31875// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31876// for more information.
31877func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
31878	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31879	return c
31880}
31881
31882// Context sets the context to be used in this call's Do method. Any
31883// pending HTTP request will be aborted if the provided context is
31884// canceled.
31885func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
31886	c.ctx_ = ctx
31887	return c
31888}
31889
31890// Header returns an http.Header that can be modified by the caller to
31891// add HTTP headers to the request.
31892func (c *ProductsCustombatchCall) Header() http.Header {
31893	if c.header_ == nil {
31894		c.header_ = make(http.Header)
31895	}
31896	return c.header_
31897}
31898
31899func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
31900	reqHeaders := make(http.Header)
31901	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
31902	for k, v := range c.header_ {
31903		reqHeaders[k] = v
31904	}
31905	reqHeaders.Set("User-Agent", c.s.userAgent())
31906	var body io.Reader = nil
31907	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
31908	if err != nil {
31909		return nil, err
31910	}
31911	reqHeaders.Set("Content-Type", "application/json")
31912	c.urlParams_.Set("alt", alt)
31913	c.urlParams_.Set("prettyPrint", "false")
31914	urls := googleapi.ResolveRelative(c.s.BasePath, "products/batch")
31915	urls += "?" + c.urlParams_.Encode()
31916	req, err := http.NewRequest("POST", urls, body)
31917	if err != nil {
31918		return nil, err
31919	}
31920	req.Header = reqHeaders
31921	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31922}
31923
31924// Do executes the "content.products.custombatch" call.
31925// Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
31926// Any non-2xx status code is an error. Response headers are in either
31927// *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
31928// was returned at all) in error.(*googleapi.Error).Header. Use
31929// googleapi.IsNotModified to check whether the returned error was
31930// because http.StatusNotModified was returned.
31931func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
31932	gensupport.SetOptions(c.urlParams_, opts...)
31933	res, err := c.doRequest("json")
31934	if res != nil && res.StatusCode == http.StatusNotModified {
31935		if res.Body != nil {
31936			res.Body.Close()
31937		}
31938		return nil, &googleapi.Error{
31939			Code:   res.StatusCode,
31940			Header: res.Header,
31941		}
31942	}
31943	if err != nil {
31944		return nil, err
31945	}
31946	defer googleapi.CloseBody(res)
31947	if err := googleapi.CheckResponse(res); err != nil {
31948		return nil, err
31949	}
31950	ret := &ProductsCustomBatchResponse{
31951		ServerResponse: googleapi.ServerResponse{
31952			Header:         res.Header,
31953			HTTPStatusCode: res.StatusCode,
31954		},
31955	}
31956	target := &ret
31957	if err := gensupport.DecodeResponse(target, res); err != nil {
31958		return nil, err
31959	}
31960	return ret, nil
31961	// {
31962	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
31963	//   "flatPath": "products/batch",
31964	//   "httpMethod": "POST",
31965	//   "id": "content.products.custombatch",
31966	//   "parameterOrder": [],
31967	//   "parameters": {},
31968	//   "path": "products/batch",
31969	//   "request": {
31970	//     "$ref": "ProductsCustomBatchRequest"
31971	//   },
31972	//   "response": {
31973	//     "$ref": "ProductsCustomBatchResponse"
31974	//   },
31975	//   "scopes": [
31976	//     "https://www.googleapis.com/auth/content"
31977	//   ]
31978	// }
31979
31980}
31981
31982// method id "content.products.delete":
31983
31984type ProductsDeleteCall struct {
31985	s          *APIService
31986	merchantId uint64
31987	productId  string
31988	urlParams_ gensupport.URLParams
31989	ctx_       context.Context
31990	header_    http.Header
31991}
31992
31993// Delete: Deletes a product from your Merchant Center account.
31994//
31995// - merchantId: The ID of the account that contains the product. This
31996//   account cannot be a multi-client account.
31997// - productId: The REST ID of the product.
31998func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
31999	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32000	c.merchantId = merchantId
32001	c.productId = productId
32002	return c
32003}
32004
32005// FeedId sets the optional parameter "feedId": The Content API
32006// Supplemental Feed ID.
32007func (c *ProductsDeleteCall) FeedId(feedId uint64) *ProductsDeleteCall {
32008	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
32009	return c
32010}
32011
32012// Fields allows partial responses to be retrieved. See
32013// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32014// for more information.
32015func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
32016	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32017	return c
32018}
32019
32020// Context sets the context to be used in this call's Do method. Any
32021// pending HTTP request will be aborted if the provided context is
32022// canceled.
32023func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
32024	c.ctx_ = ctx
32025	return c
32026}
32027
32028// Header returns an http.Header that can be modified by the caller to
32029// add HTTP headers to the request.
32030func (c *ProductsDeleteCall) Header() http.Header {
32031	if c.header_ == nil {
32032		c.header_ = make(http.Header)
32033	}
32034	return c.header_
32035}
32036
32037func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
32038	reqHeaders := make(http.Header)
32039	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
32040	for k, v := range c.header_ {
32041		reqHeaders[k] = v
32042	}
32043	reqHeaders.Set("User-Agent", c.s.userAgent())
32044	var body io.Reader = nil
32045	c.urlParams_.Set("alt", alt)
32046	c.urlParams_.Set("prettyPrint", "false")
32047	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
32048	urls += "?" + c.urlParams_.Encode()
32049	req, err := http.NewRequest("DELETE", urls, body)
32050	if err != nil {
32051		return nil, err
32052	}
32053	req.Header = reqHeaders
32054	googleapi.Expand(req.URL, map[string]string{
32055		"merchantId": strconv.FormatUint(c.merchantId, 10),
32056		"productId":  c.productId,
32057	})
32058	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32059}
32060
32061// Do executes the "content.products.delete" call.
32062func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
32063	gensupport.SetOptions(c.urlParams_, opts...)
32064	res, err := c.doRequest("json")
32065	if err != nil {
32066		return err
32067	}
32068	defer googleapi.CloseBody(res)
32069	if err := googleapi.CheckResponse(res); err != nil {
32070		return err
32071	}
32072	return nil
32073	// {
32074	//   "description": "Deletes a product from your Merchant Center account.",
32075	//   "flatPath": "{merchantId}/products/{productId}",
32076	//   "httpMethod": "DELETE",
32077	//   "id": "content.products.delete",
32078	//   "parameterOrder": [
32079	//     "merchantId",
32080	//     "productId"
32081	//   ],
32082	//   "parameters": {
32083	//     "feedId": {
32084	//       "description": "The Content API Supplemental Feed ID.",
32085	//       "format": "uint64",
32086	//       "location": "query",
32087	//       "type": "string"
32088	//     },
32089	//     "merchantId": {
32090	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
32091	//       "format": "uint64",
32092	//       "location": "path",
32093	//       "required": true,
32094	//       "type": "string"
32095	//     },
32096	//     "productId": {
32097	//       "description": "The REST ID of the product.",
32098	//       "location": "path",
32099	//       "required": true,
32100	//       "type": "string"
32101	//     }
32102	//   },
32103	//   "path": "{merchantId}/products/{productId}",
32104	//   "scopes": [
32105	//     "https://www.googleapis.com/auth/content"
32106	//   ]
32107	// }
32108
32109}
32110
32111// method id "content.products.get":
32112
32113type ProductsGetCall struct {
32114	s            *APIService
32115	merchantId   uint64
32116	productId    string
32117	urlParams_   gensupport.URLParams
32118	ifNoneMatch_ string
32119	ctx_         context.Context
32120	header_      http.Header
32121}
32122
32123// Get: Retrieves a product from your Merchant Center account.
32124//
32125// - merchantId: The ID of the account that contains the product. This
32126//   account cannot be a multi-client account.
32127// - productId: The REST ID of the product.
32128func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
32129	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32130	c.merchantId = merchantId
32131	c.productId = productId
32132	return c
32133}
32134
32135// Fields allows partial responses to be retrieved. See
32136// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32137// for more information.
32138func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
32139	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32140	return c
32141}
32142
32143// IfNoneMatch sets the optional parameter which makes the operation
32144// fail if the object's ETag matches the given value. This is useful for
32145// getting updates only after the object has changed since the last
32146// request. Use googleapi.IsNotModified to check whether the response
32147// error from Do is the result of In-None-Match.
32148func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
32149	c.ifNoneMatch_ = entityTag
32150	return c
32151}
32152
32153// Context sets the context to be used in this call's Do method. Any
32154// pending HTTP request will be aborted if the provided context is
32155// canceled.
32156func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
32157	c.ctx_ = ctx
32158	return c
32159}
32160
32161// Header returns an http.Header that can be modified by the caller to
32162// add HTTP headers to the request.
32163func (c *ProductsGetCall) Header() http.Header {
32164	if c.header_ == nil {
32165		c.header_ = make(http.Header)
32166	}
32167	return c.header_
32168}
32169
32170func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
32171	reqHeaders := make(http.Header)
32172	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
32173	for k, v := range c.header_ {
32174		reqHeaders[k] = v
32175	}
32176	reqHeaders.Set("User-Agent", c.s.userAgent())
32177	if c.ifNoneMatch_ != "" {
32178		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32179	}
32180	var body io.Reader = nil
32181	c.urlParams_.Set("alt", alt)
32182	c.urlParams_.Set("prettyPrint", "false")
32183	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
32184	urls += "?" + c.urlParams_.Encode()
32185	req, err := http.NewRequest("GET", urls, body)
32186	if err != nil {
32187		return nil, err
32188	}
32189	req.Header = reqHeaders
32190	googleapi.Expand(req.URL, map[string]string{
32191		"merchantId": strconv.FormatUint(c.merchantId, 10),
32192		"productId":  c.productId,
32193	})
32194	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32195}
32196
32197// Do executes the "content.products.get" call.
32198// Exactly one of *Product or error will be non-nil. Any non-2xx status
32199// code is an error. Response headers are in either
32200// *Product.ServerResponse.Header or (if a response was returned at all)
32201// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
32202// check whether the returned error was because http.StatusNotModified
32203// was returned.
32204func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
32205	gensupport.SetOptions(c.urlParams_, opts...)
32206	res, err := c.doRequest("json")
32207	if res != nil && res.StatusCode == http.StatusNotModified {
32208		if res.Body != nil {
32209			res.Body.Close()
32210		}
32211		return nil, &googleapi.Error{
32212			Code:   res.StatusCode,
32213			Header: res.Header,
32214		}
32215	}
32216	if err != nil {
32217		return nil, err
32218	}
32219	defer googleapi.CloseBody(res)
32220	if err := googleapi.CheckResponse(res); err != nil {
32221		return nil, err
32222	}
32223	ret := &Product{
32224		ServerResponse: googleapi.ServerResponse{
32225			Header:         res.Header,
32226			HTTPStatusCode: res.StatusCode,
32227		},
32228	}
32229	target := &ret
32230	if err := gensupport.DecodeResponse(target, res); err != nil {
32231		return nil, err
32232	}
32233	return ret, nil
32234	// {
32235	//   "description": "Retrieves a product from your Merchant Center account.",
32236	//   "flatPath": "{merchantId}/products/{productId}",
32237	//   "httpMethod": "GET",
32238	//   "id": "content.products.get",
32239	//   "parameterOrder": [
32240	//     "merchantId",
32241	//     "productId"
32242	//   ],
32243	//   "parameters": {
32244	//     "merchantId": {
32245	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
32246	//       "format": "uint64",
32247	//       "location": "path",
32248	//       "required": true,
32249	//       "type": "string"
32250	//     },
32251	//     "productId": {
32252	//       "description": "The REST ID of the product.",
32253	//       "location": "path",
32254	//       "required": true,
32255	//       "type": "string"
32256	//     }
32257	//   },
32258	//   "path": "{merchantId}/products/{productId}",
32259	//   "response": {
32260	//     "$ref": "Product"
32261	//   },
32262	//   "scopes": [
32263	//     "https://www.googleapis.com/auth/content"
32264	//   ]
32265	// }
32266
32267}
32268
32269// method id "content.products.insert":
32270
32271type ProductsInsertCall struct {
32272	s          *APIService
32273	merchantId uint64
32274	product    *Product
32275	urlParams_ gensupport.URLParams
32276	ctx_       context.Context
32277	header_    http.Header
32278}
32279
32280// Insert: Uploads a product to your Merchant Center account. If an item
32281// with the same channel, contentLanguage, offerId, and targetCountry
32282// already exists, this method updates that entry.
32283//
32284// - merchantId: The ID of the account that contains the product. This
32285//   account cannot be a multi-client account.
32286func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
32287	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32288	c.merchantId = merchantId
32289	c.product = product
32290	return c
32291}
32292
32293// FeedId sets the optional parameter "feedId": The Content API
32294// Supplemental Feed ID.
32295func (c *ProductsInsertCall) FeedId(feedId uint64) *ProductsInsertCall {
32296	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
32297	return c
32298}
32299
32300// Fields allows partial responses to be retrieved. See
32301// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32302// for more information.
32303func (c *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
32304	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32305	return c
32306}
32307
32308// Context sets the context to be used in this call's Do method. Any
32309// pending HTTP request will be aborted if the provided context is
32310// canceled.
32311func (c *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
32312	c.ctx_ = ctx
32313	return c
32314}
32315
32316// Header returns an http.Header that can be modified by the caller to
32317// add HTTP headers to the request.
32318func (c *ProductsInsertCall) Header() http.Header {
32319	if c.header_ == nil {
32320		c.header_ = make(http.Header)
32321	}
32322	return c.header_
32323}
32324
32325func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
32326	reqHeaders := make(http.Header)
32327	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
32328	for k, v := range c.header_ {
32329		reqHeaders[k] = v
32330	}
32331	reqHeaders.Set("User-Agent", c.s.userAgent())
32332	var body io.Reader = nil
32333	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
32334	if err != nil {
32335		return nil, err
32336	}
32337	reqHeaders.Set("Content-Type", "application/json")
32338	c.urlParams_.Set("alt", alt)
32339	c.urlParams_.Set("prettyPrint", "false")
32340	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
32341	urls += "?" + c.urlParams_.Encode()
32342	req, err := http.NewRequest("POST", urls, body)
32343	if err != nil {
32344		return nil, err
32345	}
32346	req.Header = reqHeaders
32347	googleapi.Expand(req.URL, map[string]string{
32348		"merchantId": strconv.FormatUint(c.merchantId, 10),
32349	})
32350	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32351}
32352
32353// Do executes the "content.products.insert" call.
32354// Exactly one of *Product or error will be non-nil. Any non-2xx status
32355// code is an error. Response headers are in either
32356// *Product.ServerResponse.Header or (if a response was returned at all)
32357// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
32358// check whether the returned error was because http.StatusNotModified
32359// was returned.
32360func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
32361	gensupport.SetOptions(c.urlParams_, opts...)
32362	res, err := c.doRequest("json")
32363	if res != nil && res.StatusCode == http.StatusNotModified {
32364		if res.Body != nil {
32365			res.Body.Close()
32366		}
32367		return nil, &googleapi.Error{
32368			Code:   res.StatusCode,
32369			Header: res.Header,
32370		}
32371	}
32372	if err != nil {
32373		return nil, err
32374	}
32375	defer googleapi.CloseBody(res)
32376	if err := googleapi.CheckResponse(res); err != nil {
32377		return nil, err
32378	}
32379	ret := &Product{
32380		ServerResponse: googleapi.ServerResponse{
32381			Header:         res.Header,
32382			HTTPStatusCode: res.StatusCode,
32383		},
32384	}
32385	target := &ret
32386	if err := gensupport.DecodeResponse(target, res); err != nil {
32387		return nil, err
32388	}
32389	return ret, nil
32390	// {
32391	//   "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.",
32392	//   "flatPath": "{merchantId}/products",
32393	//   "httpMethod": "POST",
32394	//   "id": "content.products.insert",
32395	//   "parameterOrder": [
32396	//     "merchantId"
32397	//   ],
32398	//   "parameters": {
32399	//     "feedId": {
32400	//       "description": "The Content API Supplemental Feed ID.",
32401	//       "format": "uint64",
32402	//       "location": "query",
32403	//       "type": "string"
32404	//     },
32405	//     "merchantId": {
32406	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
32407	//       "format": "uint64",
32408	//       "location": "path",
32409	//       "required": true,
32410	//       "type": "string"
32411	//     }
32412	//   },
32413	//   "path": "{merchantId}/products",
32414	//   "request": {
32415	//     "$ref": "Product"
32416	//   },
32417	//   "response": {
32418	//     "$ref": "Product"
32419	//   },
32420	//   "scopes": [
32421	//     "https://www.googleapis.com/auth/content"
32422	//   ]
32423	// }
32424
32425}
32426
32427// method id "content.products.list":
32428
32429type ProductsListCall struct {
32430	s            *APIService
32431	merchantId   uint64
32432	urlParams_   gensupport.URLParams
32433	ifNoneMatch_ string
32434	ctx_         context.Context
32435	header_      http.Header
32436}
32437
32438// List: Lists the products in your Merchant Center account. The
32439// response might contain fewer items than specified by maxResults. Rely
32440// on nextPageToken to determine if there are more items to be
32441// requested.
32442//
32443// - merchantId: The ID of the account that contains the products. This
32444//   account cannot be a multi-client account.
32445func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
32446	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32447	c.merchantId = merchantId
32448	return c
32449}
32450
32451// MaxResults sets the optional parameter "maxResults": The maximum
32452// number of products to return in the response, used for paging.
32453func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
32454	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
32455	return c
32456}
32457
32458// PageToken sets the optional parameter "pageToken": The token returned
32459// by the previous request.
32460func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
32461	c.urlParams_.Set("pageToken", pageToken)
32462	return c
32463}
32464
32465// Fields allows partial responses to be retrieved. See
32466// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32467// for more information.
32468func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
32469	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32470	return c
32471}
32472
32473// IfNoneMatch sets the optional parameter which makes the operation
32474// fail if the object's ETag matches the given value. This is useful for
32475// getting updates only after the object has changed since the last
32476// request. Use googleapi.IsNotModified to check whether the response
32477// error from Do is the result of In-None-Match.
32478func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
32479	c.ifNoneMatch_ = entityTag
32480	return c
32481}
32482
32483// Context sets the context to be used in this call's Do method. Any
32484// pending HTTP request will be aborted if the provided context is
32485// canceled.
32486func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
32487	c.ctx_ = ctx
32488	return c
32489}
32490
32491// Header returns an http.Header that can be modified by the caller to
32492// add HTTP headers to the request.
32493func (c *ProductsListCall) Header() http.Header {
32494	if c.header_ == nil {
32495		c.header_ = make(http.Header)
32496	}
32497	return c.header_
32498}
32499
32500func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
32501	reqHeaders := make(http.Header)
32502	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
32503	for k, v := range c.header_ {
32504		reqHeaders[k] = v
32505	}
32506	reqHeaders.Set("User-Agent", c.s.userAgent())
32507	if c.ifNoneMatch_ != "" {
32508		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32509	}
32510	var body io.Reader = nil
32511	c.urlParams_.Set("alt", alt)
32512	c.urlParams_.Set("prettyPrint", "false")
32513	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
32514	urls += "?" + c.urlParams_.Encode()
32515	req, err := http.NewRequest("GET", urls, body)
32516	if err != nil {
32517		return nil, err
32518	}
32519	req.Header = reqHeaders
32520	googleapi.Expand(req.URL, map[string]string{
32521		"merchantId": strconv.FormatUint(c.merchantId, 10),
32522	})
32523	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32524}
32525
32526// Do executes the "content.products.list" call.
32527// Exactly one of *ProductsListResponse or error will be non-nil. Any
32528// non-2xx status code is an error. Response headers are in either
32529// *ProductsListResponse.ServerResponse.Header or (if a response was
32530// returned at all) in error.(*googleapi.Error).Header. Use
32531// googleapi.IsNotModified to check whether the returned error was
32532// because http.StatusNotModified was returned.
32533func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
32534	gensupport.SetOptions(c.urlParams_, opts...)
32535	res, err := c.doRequest("json")
32536	if res != nil && res.StatusCode == http.StatusNotModified {
32537		if res.Body != nil {
32538			res.Body.Close()
32539		}
32540		return nil, &googleapi.Error{
32541			Code:   res.StatusCode,
32542			Header: res.Header,
32543		}
32544	}
32545	if err != nil {
32546		return nil, err
32547	}
32548	defer googleapi.CloseBody(res)
32549	if err := googleapi.CheckResponse(res); err != nil {
32550		return nil, err
32551	}
32552	ret := &ProductsListResponse{
32553		ServerResponse: googleapi.ServerResponse{
32554			Header:         res.Header,
32555			HTTPStatusCode: res.StatusCode,
32556		},
32557	}
32558	target := &ret
32559	if err := gensupport.DecodeResponse(target, res); err != nil {
32560		return nil, err
32561	}
32562	return ret, nil
32563	// {
32564	//   "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.",
32565	//   "flatPath": "{merchantId}/products",
32566	//   "httpMethod": "GET",
32567	//   "id": "content.products.list",
32568	//   "parameterOrder": [
32569	//     "merchantId"
32570	//   ],
32571	//   "parameters": {
32572	//     "maxResults": {
32573	//       "description": "The maximum number of products to return in the response, used for paging.",
32574	//       "format": "uint32",
32575	//       "location": "query",
32576	//       "type": "integer"
32577	//     },
32578	//     "merchantId": {
32579	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
32580	//       "format": "uint64",
32581	//       "location": "path",
32582	//       "required": true,
32583	//       "type": "string"
32584	//     },
32585	//     "pageToken": {
32586	//       "description": "The token returned by the previous request.",
32587	//       "location": "query",
32588	//       "type": "string"
32589	//     }
32590	//   },
32591	//   "path": "{merchantId}/products",
32592	//   "response": {
32593	//     "$ref": "ProductsListResponse"
32594	//   },
32595	//   "scopes": [
32596	//     "https://www.googleapis.com/auth/content"
32597	//   ]
32598	// }
32599
32600}
32601
32602// Pages invokes f for each page of results.
32603// A non-nil error returned from f will halt the iteration.
32604// The provided context supersedes any context provided to the Context method.
32605func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
32606	c.ctx_ = ctx
32607	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32608	for {
32609		x, err := c.Do()
32610		if err != nil {
32611			return err
32612		}
32613		if err := f(x); err != nil {
32614			return err
32615		}
32616		if x.NextPageToken == "" {
32617			return nil
32618		}
32619		c.PageToken(x.NextPageToken)
32620	}
32621}
32622
32623// method id "content.productstatuses.custombatch":
32624
32625type ProductstatusesCustombatchCall struct {
32626	s                                 *APIService
32627	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
32628	urlParams_                        gensupport.URLParams
32629	ctx_                              context.Context
32630	header_                           http.Header
32631}
32632
32633// Custombatch: Gets the statuses of multiple products in a single
32634// request.
32635func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
32636	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32637	c.productstatusescustombatchrequest = productstatusescustombatchrequest
32638	return c
32639}
32640
32641// Fields allows partial responses to be retrieved. See
32642// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32643// for more information.
32644func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
32645	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32646	return c
32647}
32648
32649// Context sets the context to be used in this call's Do method. Any
32650// pending HTTP request will be aborted if the provided context is
32651// canceled.
32652func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
32653	c.ctx_ = ctx
32654	return c
32655}
32656
32657// Header returns an http.Header that can be modified by the caller to
32658// add HTTP headers to the request.
32659func (c *ProductstatusesCustombatchCall) Header() http.Header {
32660	if c.header_ == nil {
32661		c.header_ = make(http.Header)
32662	}
32663	return c.header_
32664}
32665
32666func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
32667	reqHeaders := make(http.Header)
32668	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
32669	for k, v := range c.header_ {
32670		reqHeaders[k] = v
32671	}
32672	reqHeaders.Set("User-Agent", c.s.userAgent())
32673	var body io.Reader = nil
32674	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
32675	if err != nil {
32676		return nil, err
32677	}
32678	reqHeaders.Set("Content-Type", "application/json")
32679	c.urlParams_.Set("alt", alt)
32680	c.urlParams_.Set("prettyPrint", "false")
32681	urls := googleapi.ResolveRelative(c.s.BasePath, "productstatuses/batch")
32682	urls += "?" + c.urlParams_.Encode()
32683	req, err := http.NewRequest("POST", urls, body)
32684	if err != nil {
32685		return nil, err
32686	}
32687	req.Header = reqHeaders
32688	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32689}
32690
32691// Do executes the "content.productstatuses.custombatch" call.
32692// Exactly one of *ProductstatusesCustomBatchResponse or error will be
32693// non-nil. Any non-2xx status code is an error. Response headers are in
32694// either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
32695// (if a response was returned at all) in
32696// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32697// whether the returned error was because http.StatusNotModified was
32698// returned.
32699func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
32700	gensupport.SetOptions(c.urlParams_, opts...)
32701	res, err := c.doRequest("json")
32702	if res != nil && res.StatusCode == http.StatusNotModified {
32703		if res.Body != nil {
32704			res.Body.Close()
32705		}
32706		return nil, &googleapi.Error{
32707			Code:   res.StatusCode,
32708			Header: res.Header,
32709		}
32710	}
32711	if err != nil {
32712		return nil, err
32713	}
32714	defer googleapi.CloseBody(res)
32715	if err := googleapi.CheckResponse(res); err != nil {
32716		return nil, err
32717	}
32718	ret := &ProductstatusesCustomBatchResponse{
32719		ServerResponse: googleapi.ServerResponse{
32720			Header:         res.Header,
32721			HTTPStatusCode: res.StatusCode,
32722		},
32723	}
32724	target := &ret
32725	if err := gensupport.DecodeResponse(target, res); err != nil {
32726		return nil, err
32727	}
32728	return ret, nil
32729	// {
32730	//   "description": "Gets the statuses of multiple products in a single request.",
32731	//   "flatPath": "productstatuses/batch",
32732	//   "httpMethod": "POST",
32733	//   "id": "content.productstatuses.custombatch",
32734	//   "parameterOrder": [],
32735	//   "parameters": {},
32736	//   "path": "productstatuses/batch",
32737	//   "request": {
32738	//     "$ref": "ProductstatusesCustomBatchRequest"
32739	//   },
32740	//   "response": {
32741	//     "$ref": "ProductstatusesCustomBatchResponse"
32742	//   },
32743	//   "scopes": [
32744	//     "https://www.googleapis.com/auth/content"
32745	//   ]
32746	// }
32747
32748}
32749
32750// method id "content.productstatuses.get":
32751
32752type ProductstatusesGetCall struct {
32753	s            *APIService
32754	merchantId   uint64
32755	productId    string
32756	urlParams_   gensupport.URLParams
32757	ifNoneMatch_ string
32758	ctx_         context.Context
32759	header_      http.Header
32760}
32761
32762// Get: Gets the status of a product from your Merchant Center account.
32763//
32764// - merchantId: The ID of the account that contains the product. This
32765//   account cannot be a multi-client account.
32766// - productId: The REST ID of the product.
32767func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
32768	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32769	c.merchantId = merchantId
32770	c.productId = productId
32771	return c
32772}
32773
32774// Destinations sets the optional parameter "destinations": If set, only
32775// issues for the specified destinations are returned, otherwise only
32776// issues for the Shopping destination.
32777func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
32778	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
32779	return c
32780}
32781
32782// Fields allows partial responses to be retrieved. See
32783// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32784// for more information.
32785func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
32786	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32787	return c
32788}
32789
32790// IfNoneMatch sets the optional parameter which makes the operation
32791// fail if the object's ETag matches the given value. This is useful for
32792// getting updates only after the object has changed since the last
32793// request. Use googleapi.IsNotModified to check whether the response
32794// error from Do is the result of In-None-Match.
32795func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
32796	c.ifNoneMatch_ = entityTag
32797	return c
32798}
32799
32800// Context sets the context to be used in this call's Do method. Any
32801// pending HTTP request will be aborted if the provided context is
32802// canceled.
32803func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
32804	c.ctx_ = ctx
32805	return c
32806}
32807
32808// Header returns an http.Header that can be modified by the caller to
32809// add HTTP headers to the request.
32810func (c *ProductstatusesGetCall) Header() http.Header {
32811	if c.header_ == nil {
32812		c.header_ = make(http.Header)
32813	}
32814	return c.header_
32815}
32816
32817func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
32818	reqHeaders := make(http.Header)
32819	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
32820	for k, v := range c.header_ {
32821		reqHeaders[k] = v
32822	}
32823	reqHeaders.Set("User-Agent", c.s.userAgent())
32824	if c.ifNoneMatch_ != "" {
32825		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32826	}
32827	var body io.Reader = nil
32828	c.urlParams_.Set("alt", alt)
32829	c.urlParams_.Set("prettyPrint", "false")
32830	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}")
32831	urls += "?" + c.urlParams_.Encode()
32832	req, err := http.NewRequest("GET", urls, body)
32833	if err != nil {
32834		return nil, err
32835	}
32836	req.Header = reqHeaders
32837	googleapi.Expand(req.URL, map[string]string{
32838		"merchantId": strconv.FormatUint(c.merchantId, 10),
32839		"productId":  c.productId,
32840	})
32841	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32842}
32843
32844// Do executes the "content.productstatuses.get" call.
32845// Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
32846// status code is an error. Response headers are in either
32847// *ProductStatus.ServerResponse.Header or (if a response was returned
32848// at all) in error.(*googleapi.Error).Header. Use
32849// googleapi.IsNotModified to check whether the returned error was
32850// because http.StatusNotModified was returned.
32851func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
32852	gensupport.SetOptions(c.urlParams_, opts...)
32853	res, err := c.doRequest("json")
32854	if res != nil && res.StatusCode == http.StatusNotModified {
32855		if res.Body != nil {
32856			res.Body.Close()
32857		}
32858		return nil, &googleapi.Error{
32859			Code:   res.StatusCode,
32860			Header: res.Header,
32861		}
32862	}
32863	if err != nil {
32864		return nil, err
32865	}
32866	defer googleapi.CloseBody(res)
32867	if err := googleapi.CheckResponse(res); err != nil {
32868		return nil, err
32869	}
32870	ret := &ProductStatus{
32871		ServerResponse: googleapi.ServerResponse{
32872			Header:         res.Header,
32873			HTTPStatusCode: res.StatusCode,
32874		},
32875	}
32876	target := &ret
32877	if err := gensupport.DecodeResponse(target, res); err != nil {
32878		return nil, err
32879	}
32880	return ret, nil
32881	// {
32882	//   "description": "Gets the status of a product from your Merchant Center account.",
32883	//   "flatPath": "{merchantId}/productstatuses/{productId}",
32884	//   "httpMethod": "GET",
32885	//   "id": "content.productstatuses.get",
32886	//   "parameterOrder": [
32887	//     "merchantId",
32888	//     "productId"
32889	//   ],
32890	//   "parameters": {
32891	//     "destinations": {
32892	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
32893	//       "location": "query",
32894	//       "repeated": true,
32895	//       "type": "string"
32896	//     },
32897	//     "merchantId": {
32898	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
32899	//       "format": "uint64",
32900	//       "location": "path",
32901	//       "required": true,
32902	//       "type": "string"
32903	//     },
32904	//     "productId": {
32905	//       "description": "The REST ID of the product.",
32906	//       "location": "path",
32907	//       "required": true,
32908	//       "type": "string"
32909	//     }
32910	//   },
32911	//   "path": "{merchantId}/productstatuses/{productId}",
32912	//   "response": {
32913	//     "$ref": "ProductStatus"
32914	//   },
32915	//   "scopes": [
32916	//     "https://www.googleapis.com/auth/content"
32917	//   ]
32918	// }
32919
32920}
32921
32922// method id "content.productstatuses.list":
32923
32924type ProductstatusesListCall struct {
32925	s            *APIService
32926	merchantId   uint64
32927	urlParams_   gensupport.URLParams
32928	ifNoneMatch_ string
32929	ctx_         context.Context
32930	header_      http.Header
32931}
32932
32933// List: Lists the statuses of the products in your Merchant Center
32934// account.
32935//
32936// - merchantId: The ID of the account that contains the products. This
32937//   account cannot be a multi-client account.
32938func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
32939	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32940	c.merchantId = merchantId
32941	return c
32942}
32943
32944// Destinations sets the optional parameter "destinations": If set, only
32945// issues for the specified destinations are returned, otherwise only
32946// issues for the Shopping destination.
32947func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
32948	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
32949	return c
32950}
32951
32952// MaxResults sets the optional parameter "maxResults": The maximum
32953// number of product statuses to return in the response, used for
32954// paging.
32955func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
32956	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
32957	return c
32958}
32959
32960// PageToken sets the optional parameter "pageToken": The token returned
32961// by the previous request.
32962func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
32963	c.urlParams_.Set("pageToken", pageToken)
32964	return c
32965}
32966
32967// Fields allows partial responses to be retrieved. See
32968// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32969// for more information.
32970func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
32971	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32972	return c
32973}
32974
32975// IfNoneMatch sets the optional parameter which makes the operation
32976// fail if the object's ETag matches the given value. This is useful for
32977// getting updates only after the object has changed since the last
32978// request. Use googleapi.IsNotModified to check whether the response
32979// error from Do is the result of In-None-Match.
32980func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
32981	c.ifNoneMatch_ = entityTag
32982	return c
32983}
32984
32985// Context sets the context to be used in this call's Do method. Any
32986// pending HTTP request will be aborted if the provided context is
32987// canceled.
32988func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
32989	c.ctx_ = ctx
32990	return c
32991}
32992
32993// Header returns an http.Header that can be modified by the caller to
32994// add HTTP headers to the request.
32995func (c *ProductstatusesListCall) Header() http.Header {
32996	if c.header_ == nil {
32997		c.header_ = make(http.Header)
32998	}
32999	return c.header_
33000}
33001
33002func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
33003	reqHeaders := make(http.Header)
33004	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
33005	for k, v := range c.header_ {
33006		reqHeaders[k] = v
33007	}
33008	reqHeaders.Set("User-Agent", c.s.userAgent())
33009	if c.ifNoneMatch_ != "" {
33010		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33011	}
33012	var body io.Reader = nil
33013	c.urlParams_.Set("alt", alt)
33014	c.urlParams_.Set("prettyPrint", "false")
33015	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses")
33016	urls += "?" + c.urlParams_.Encode()
33017	req, err := http.NewRequest("GET", urls, body)
33018	if err != nil {
33019		return nil, err
33020	}
33021	req.Header = reqHeaders
33022	googleapi.Expand(req.URL, map[string]string{
33023		"merchantId": strconv.FormatUint(c.merchantId, 10),
33024	})
33025	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33026}
33027
33028// Do executes the "content.productstatuses.list" call.
33029// Exactly one of *ProductstatusesListResponse or error will be non-nil.
33030// Any non-2xx status code is an error. Response headers are in either
33031// *ProductstatusesListResponse.ServerResponse.Header or (if a response
33032// was returned at all) in error.(*googleapi.Error).Header. Use
33033// googleapi.IsNotModified to check whether the returned error was
33034// because http.StatusNotModified was returned.
33035func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
33036	gensupport.SetOptions(c.urlParams_, opts...)
33037	res, err := c.doRequest("json")
33038	if res != nil && res.StatusCode == http.StatusNotModified {
33039		if res.Body != nil {
33040			res.Body.Close()
33041		}
33042		return nil, &googleapi.Error{
33043			Code:   res.StatusCode,
33044			Header: res.Header,
33045		}
33046	}
33047	if err != nil {
33048		return nil, err
33049	}
33050	defer googleapi.CloseBody(res)
33051	if err := googleapi.CheckResponse(res); err != nil {
33052		return nil, err
33053	}
33054	ret := &ProductstatusesListResponse{
33055		ServerResponse: googleapi.ServerResponse{
33056			Header:         res.Header,
33057			HTTPStatusCode: res.StatusCode,
33058		},
33059	}
33060	target := &ret
33061	if err := gensupport.DecodeResponse(target, res); err != nil {
33062		return nil, err
33063	}
33064	return ret, nil
33065	// {
33066	//   "description": "Lists the statuses of the products in your Merchant Center account.",
33067	//   "flatPath": "{merchantId}/productstatuses",
33068	//   "httpMethod": "GET",
33069	//   "id": "content.productstatuses.list",
33070	//   "parameterOrder": [
33071	//     "merchantId"
33072	//   ],
33073	//   "parameters": {
33074	//     "destinations": {
33075	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
33076	//       "location": "query",
33077	//       "repeated": true,
33078	//       "type": "string"
33079	//     },
33080	//     "maxResults": {
33081	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
33082	//       "format": "uint32",
33083	//       "location": "query",
33084	//       "type": "integer"
33085	//     },
33086	//     "merchantId": {
33087	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
33088	//       "format": "uint64",
33089	//       "location": "path",
33090	//       "required": true,
33091	//       "type": "string"
33092	//     },
33093	//     "pageToken": {
33094	//       "description": "The token returned by the previous request.",
33095	//       "location": "query",
33096	//       "type": "string"
33097	//     }
33098	//   },
33099	//   "path": "{merchantId}/productstatuses",
33100	//   "response": {
33101	//     "$ref": "ProductstatusesListResponse"
33102	//   },
33103	//   "scopes": [
33104	//     "https://www.googleapis.com/auth/content"
33105	//   ]
33106	// }
33107
33108}
33109
33110// Pages invokes f for each page of results.
33111// A non-nil error returned from f will halt the iteration.
33112// The provided context supersedes any context provided to the Context method.
33113func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
33114	c.ctx_ = ctx
33115	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
33116	for {
33117		x, err := c.Do()
33118		if err != nil {
33119			return err
33120		}
33121		if err := f(x); err != nil {
33122			return err
33123		}
33124		if x.NextPageToken == "" {
33125			return nil
33126		}
33127		c.PageToken(x.NextPageToken)
33128	}
33129}
33130
33131// method id "content.productstatuses.repricingreports.list":
33132
33133type ProductstatusesRepricingreportsListCall struct {
33134	s            *APIService
33135	merchantId   int64
33136	productId    string
33137	urlParams_   gensupport.URLParams
33138	ifNoneMatch_ string
33139	ctx_         context.Context
33140	header_      http.Header
33141}
33142
33143// List: Lists the metrics report for a given Repricing product.
33144//
33145// - merchantId: Id of the merchant who owns the Repricing rule.
33146// - productId: Id of the Repricing product. Also known as the REST_ID
33147//   (https://developers.google.com/shopping-content/reference/rest/v2.1/products#Product.FIELDS.id).
33148func (r *ProductstatusesRepricingreportsService) List(merchantId int64, productId string) *ProductstatusesRepricingreportsListCall {
33149	c := &ProductstatusesRepricingreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33150	c.merchantId = merchantId
33151	c.productId = productId
33152	return c
33153}
33154
33155// EndDate sets the optional parameter "endDate": Gets Repricing reports
33156// on and before this date in the merchant's timezone. You can only
33157// retrieve data up to 7 days ago (default) or earlier. Format is
33158// YYYY-MM-DD.
33159func (c *ProductstatusesRepricingreportsListCall) EndDate(endDate string) *ProductstatusesRepricingreportsListCall {
33160	c.urlParams_.Set("endDate", endDate)
33161	return c
33162}
33163
33164// PageSize sets the optional parameter "pageSize": Maximum number of
33165// days of reports to return. There can be more than one rule report
33166// returned per day. For example, if 3 rule types got applied to the
33167// same product within a 24-hour period, then a page_size of 1 will
33168// return 3 rule reports. The page size defaults to 50 and values above
33169// 1000 are coerced to 1000. This service may return fewer days of
33170// reports than this value, for example, if the time between your start
33171// and end date is less than the page size.
33172func (c *ProductstatusesRepricingreportsListCall) PageSize(pageSize int64) *ProductstatusesRepricingreportsListCall {
33173	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
33174	return c
33175}
33176
33177// PageToken sets the optional parameter "pageToken": Token (if
33178// provided) to retrieve the subsequent page. All other parameters must
33179// match the original call that provided the page token.
33180func (c *ProductstatusesRepricingreportsListCall) PageToken(pageToken string) *ProductstatusesRepricingreportsListCall {
33181	c.urlParams_.Set("pageToken", pageToken)
33182	return c
33183}
33184
33185// RuleId sets the optional parameter "ruleId": Id of the Repricing
33186// rule. If specified, only gets this rule's reports.
33187func (c *ProductstatusesRepricingreportsListCall) RuleId(ruleId string) *ProductstatusesRepricingreportsListCall {
33188	c.urlParams_.Set("ruleId", ruleId)
33189	return c
33190}
33191
33192// StartDate sets the optional parameter "startDate": Gets Repricing
33193// reports on and after this date in the merchant's timezone, up to one
33194// year ago. Do not use a start date later than 7 days ago (default).
33195// Format is YYYY-MM-DD.
33196func (c *ProductstatusesRepricingreportsListCall) StartDate(startDate string) *ProductstatusesRepricingreportsListCall {
33197	c.urlParams_.Set("startDate", startDate)
33198	return c
33199}
33200
33201// Fields allows partial responses to be retrieved. See
33202// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33203// for more information.
33204func (c *ProductstatusesRepricingreportsListCall) Fields(s ...googleapi.Field) *ProductstatusesRepricingreportsListCall {
33205	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33206	return c
33207}
33208
33209// IfNoneMatch sets the optional parameter which makes the operation
33210// fail if the object's ETag matches the given value. This is useful for
33211// getting updates only after the object has changed since the last
33212// request. Use googleapi.IsNotModified to check whether the response
33213// error from Do is the result of In-None-Match.
33214func (c *ProductstatusesRepricingreportsListCall) IfNoneMatch(entityTag string) *ProductstatusesRepricingreportsListCall {
33215	c.ifNoneMatch_ = entityTag
33216	return c
33217}
33218
33219// Context sets the context to be used in this call's Do method. Any
33220// pending HTTP request will be aborted if the provided context is
33221// canceled.
33222func (c *ProductstatusesRepricingreportsListCall) Context(ctx context.Context) *ProductstatusesRepricingreportsListCall {
33223	c.ctx_ = ctx
33224	return c
33225}
33226
33227// Header returns an http.Header that can be modified by the caller to
33228// add HTTP headers to the request.
33229func (c *ProductstatusesRepricingreportsListCall) Header() http.Header {
33230	if c.header_ == nil {
33231		c.header_ = make(http.Header)
33232	}
33233	return c.header_
33234}
33235
33236func (c *ProductstatusesRepricingreportsListCall) doRequest(alt string) (*http.Response, error) {
33237	reqHeaders := make(http.Header)
33238	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
33239	for k, v := range c.header_ {
33240		reqHeaders[k] = v
33241	}
33242	reqHeaders.Set("User-Agent", c.s.userAgent())
33243	if c.ifNoneMatch_ != "" {
33244		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33245	}
33246	var body io.Reader = nil
33247	c.urlParams_.Set("alt", alt)
33248	c.urlParams_.Set("prettyPrint", "false")
33249	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}/repricingreports")
33250	urls += "?" + c.urlParams_.Encode()
33251	req, err := http.NewRequest("GET", urls, body)
33252	if err != nil {
33253		return nil, err
33254	}
33255	req.Header = reqHeaders
33256	googleapi.Expand(req.URL, map[string]string{
33257		"merchantId": strconv.FormatInt(c.merchantId, 10),
33258		"productId":  c.productId,
33259	})
33260	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33261}
33262
33263// Do executes the "content.productstatuses.repricingreports.list" call.
33264// Exactly one of *ListRepricingProductReportsResponse or error will be
33265// non-nil. Any non-2xx status code is an error. Response headers are in
33266// either *ListRepricingProductReportsResponse.ServerResponse.Header or
33267// (if a response was returned at all) in
33268// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33269// whether the returned error was because http.StatusNotModified was
33270// returned.
33271func (c *ProductstatusesRepricingreportsListCall) Do(opts ...googleapi.CallOption) (*ListRepricingProductReportsResponse, error) {
33272	gensupport.SetOptions(c.urlParams_, opts...)
33273	res, err := c.doRequest("json")
33274	if res != nil && res.StatusCode == http.StatusNotModified {
33275		if res.Body != nil {
33276			res.Body.Close()
33277		}
33278		return nil, &googleapi.Error{
33279			Code:   res.StatusCode,
33280			Header: res.Header,
33281		}
33282	}
33283	if err != nil {
33284		return nil, err
33285	}
33286	defer googleapi.CloseBody(res)
33287	if err := googleapi.CheckResponse(res); err != nil {
33288		return nil, err
33289	}
33290	ret := &ListRepricingProductReportsResponse{
33291		ServerResponse: googleapi.ServerResponse{
33292			Header:         res.Header,
33293			HTTPStatusCode: res.StatusCode,
33294		},
33295	}
33296	target := &ret
33297	if err := gensupport.DecodeResponse(target, res); err != nil {
33298		return nil, err
33299	}
33300	return ret, nil
33301	// {
33302	//   "description": "Lists the metrics report for a given Repricing product.",
33303	//   "flatPath": "{merchantId}/productstatuses/{productId}/repricingreports",
33304	//   "httpMethod": "GET",
33305	//   "id": "content.productstatuses.repricingreports.list",
33306	//   "parameterOrder": [
33307	//     "merchantId",
33308	//     "productId"
33309	//   ],
33310	//   "parameters": {
33311	//     "endDate": {
33312	//       "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.",
33313	//       "location": "query",
33314	//       "type": "string"
33315	//     },
33316	//     "merchantId": {
33317	//       "description": "Required. Id of the merchant who owns the Repricing rule.",
33318	//       "format": "int64",
33319	//       "location": "path",
33320	//       "required": true,
33321	//       "type": "string"
33322	//     },
33323	//     "pageSize": {
33324	//       "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.",
33325	//       "format": "int32",
33326	//       "location": "query",
33327	//       "type": "integer"
33328	//     },
33329	//     "pageToken": {
33330	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
33331	//       "location": "query",
33332	//       "type": "string"
33333	//     },
33334	//     "productId": {
33335	//       "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)",
33336	//       "location": "path",
33337	//       "required": true,
33338	//       "type": "string"
33339	//     },
33340	//     "ruleId": {
33341	//       "description": "Id of the Repricing rule. If specified, only gets this rule's reports.",
33342	//       "location": "query",
33343	//       "type": "string"
33344	//     },
33345	//     "startDate": {
33346	//       "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.",
33347	//       "location": "query",
33348	//       "type": "string"
33349	//     }
33350	//   },
33351	//   "path": "{merchantId}/productstatuses/{productId}/repricingreports",
33352	//   "response": {
33353	//     "$ref": "ListRepricingProductReportsResponse"
33354	//   },
33355	//   "scopes": [
33356	//     "https://www.googleapis.com/auth/content"
33357	//   ]
33358	// }
33359
33360}
33361
33362// Pages invokes f for each page of results.
33363// A non-nil error returned from f will halt the iteration.
33364// The provided context supersedes any context provided to the Context method.
33365func (c *ProductstatusesRepricingreportsListCall) Pages(ctx context.Context, f func(*ListRepricingProductReportsResponse) error) error {
33366	c.ctx_ = ctx
33367	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
33368	for {
33369		x, err := c.Do()
33370		if err != nil {
33371			return err
33372		}
33373		if err := f(x); err != nil {
33374			return err
33375		}
33376		if x.NextPageToken == "" {
33377			return nil
33378		}
33379		c.PageToken(x.NextPageToken)
33380	}
33381}
33382
33383// method id "content.pubsubnotificationsettings.get":
33384
33385type PubsubnotificationsettingsGetCall struct {
33386	s            *APIService
33387	merchantId   uint64
33388	urlParams_   gensupport.URLParams
33389	ifNoneMatch_ string
33390	ctx_         context.Context
33391	header_      http.Header
33392}
33393
33394// Get: Retrieves a Merchant Center account's pubsub notification
33395// settings.
33396//
33397// - merchantId: The ID of the account for which to get pubsub
33398//   notification settings.
33399func (r *PubsubnotificationsettingsService) Get(merchantId uint64) *PubsubnotificationsettingsGetCall {
33400	c := &PubsubnotificationsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33401	c.merchantId = merchantId
33402	return c
33403}
33404
33405// Fields allows partial responses to be retrieved. See
33406// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33407// for more information.
33408func (c *PubsubnotificationsettingsGetCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsGetCall {
33409	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33410	return c
33411}
33412
33413// IfNoneMatch sets the optional parameter which makes the operation
33414// fail if the object's ETag matches the given value. This is useful for
33415// getting updates only after the object has changed since the last
33416// request. Use googleapi.IsNotModified to check whether the response
33417// error from Do is the result of In-None-Match.
33418func (c *PubsubnotificationsettingsGetCall) IfNoneMatch(entityTag string) *PubsubnotificationsettingsGetCall {
33419	c.ifNoneMatch_ = entityTag
33420	return c
33421}
33422
33423// Context sets the context to be used in this call's Do method. Any
33424// pending HTTP request will be aborted if the provided context is
33425// canceled.
33426func (c *PubsubnotificationsettingsGetCall) Context(ctx context.Context) *PubsubnotificationsettingsGetCall {
33427	c.ctx_ = ctx
33428	return c
33429}
33430
33431// Header returns an http.Header that can be modified by the caller to
33432// add HTTP headers to the request.
33433func (c *PubsubnotificationsettingsGetCall) Header() http.Header {
33434	if c.header_ == nil {
33435		c.header_ = make(http.Header)
33436	}
33437	return c.header_
33438}
33439
33440func (c *PubsubnotificationsettingsGetCall) doRequest(alt string) (*http.Response, error) {
33441	reqHeaders := make(http.Header)
33442	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
33443	for k, v := range c.header_ {
33444		reqHeaders[k] = v
33445	}
33446	reqHeaders.Set("User-Agent", c.s.userAgent())
33447	if c.ifNoneMatch_ != "" {
33448		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33449	}
33450	var body io.Reader = nil
33451	c.urlParams_.Set("alt", alt)
33452	c.urlParams_.Set("prettyPrint", "false")
33453	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pubsubnotificationsettings")
33454	urls += "?" + c.urlParams_.Encode()
33455	req, err := http.NewRequest("GET", urls, body)
33456	if err != nil {
33457		return nil, err
33458	}
33459	req.Header = reqHeaders
33460	googleapi.Expand(req.URL, map[string]string{
33461		"merchantId": strconv.FormatUint(c.merchantId, 10),
33462	})
33463	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33464}
33465
33466// Do executes the "content.pubsubnotificationsettings.get" call.
33467// Exactly one of *PubsubNotificationSettings or error will be non-nil.
33468// Any non-2xx status code is an error. Response headers are in either
33469// *PubsubNotificationSettings.ServerResponse.Header or (if a response
33470// was returned at all) in error.(*googleapi.Error).Header. Use
33471// googleapi.IsNotModified to check whether the returned error was
33472// because http.StatusNotModified was returned.
33473func (c *PubsubnotificationsettingsGetCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
33474	gensupport.SetOptions(c.urlParams_, opts...)
33475	res, err := c.doRequest("json")
33476	if res != nil && res.StatusCode == http.StatusNotModified {
33477		if res.Body != nil {
33478			res.Body.Close()
33479		}
33480		return nil, &googleapi.Error{
33481			Code:   res.StatusCode,
33482			Header: res.Header,
33483		}
33484	}
33485	if err != nil {
33486		return nil, err
33487	}
33488	defer googleapi.CloseBody(res)
33489	if err := googleapi.CheckResponse(res); err != nil {
33490		return nil, err
33491	}
33492	ret := &PubsubNotificationSettings{
33493		ServerResponse: googleapi.ServerResponse{
33494			Header:         res.Header,
33495			HTTPStatusCode: res.StatusCode,
33496		},
33497	}
33498	target := &ret
33499	if err := gensupport.DecodeResponse(target, res); err != nil {
33500		return nil, err
33501	}
33502	return ret, nil
33503	// {
33504	//   "description": "Retrieves a Merchant Center account's pubsub notification settings.",
33505	//   "flatPath": "{merchantId}/pubsubnotificationsettings",
33506	//   "httpMethod": "GET",
33507	//   "id": "content.pubsubnotificationsettings.get",
33508	//   "parameterOrder": [
33509	//     "merchantId"
33510	//   ],
33511	//   "parameters": {
33512	//     "merchantId": {
33513	//       "description": "The ID of the account for which to get pubsub notification settings.",
33514	//       "format": "uint64",
33515	//       "location": "path",
33516	//       "required": true,
33517	//       "type": "string"
33518	//     }
33519	//   },
33520	//   "path": "{merchantId}/pubsubnotificationsettings",
33521	//   "response": {
33522	//     "$ref": "PubsubNotificationSettings"
33523	//   },
33524	//   "scopes": [
33525	//     "https://www.googleapis.com/auth/content"
33526	//   ]
33527	// }
33528
33529}
33530
33531// method id "content.pubsubnotificationsettings.update":
33532
33533type PubsubnotificationsettingsUpdateCall struct {
33534	s                          *APIService
33535	merchantId                 uint64
33536	pubsubnotificationsettings *PubsubNotificationSettings
33537	urlParams_                 gensupport.URLParams
33538	ctx_                       context.Context
33539	header_                    http.Header
33540}
33541
33542// Update: Register a Merchant Center account for pubsub notifications.
33543// Note that cloud topic name should not be provided as part of the
33544// request.
33545//
33546// - merchantId: The ID of the account.
33547func (r *PubsubnotificationsettingsService) Update(merchantId uint64, pubsubnotificationsettings *PubsubNotificationSettings) *PubsubnotificationsettingsUpdateCall {
33548	c := &PubsubnotificationsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33549	c.merchantId = merchantId
33550	c.pubsubnotificationsettings = pubsubnotificationsettings
33551	return c
33552}
33553
33554// Fields allows partial responses to be retrieved. See
33555// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33556// for more information.
33557func (c *PubsubnotificationsettingsUpdateCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsUpdateCall {
33558	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33559	return c
33560}
33561
33562// Context sets the context to be used in this call's Do method. Any
33563// pending HTTP request will be aborted if the provided context is
33564// canceled.
33565func (c *PubsubnotificationsettingsUpdateCall) Context(ctx context.Context) *PubsubnotificationsettingsUpdateCall {
33566	c.ctx_ = ctx
33567	return c
33568}
33569
33570// Header returns an http.Header that can be modified by the caller to
33571// add HTTP headers to the request.
33572func (c *PubsubnotificationsettingsUpdateCall) Header() http.Header {
33573	if c.header_ == nil {
33574		c.header_ = make(http.Header)
33575	}
33576	return c.header_
33577}
33578
33579func (c *PubsubnotificationsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
33580	reqHeaders := make(http.Header)
33581	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
33582	for k, v := range c.header_ {
33583		reqHeaders[k] = v
33584	}
33585	reqHeaders.Set("User-Agent", c.s.userAgent())
33586	var body io.Reader = nil
33587	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pubsubnotificationsettings)
33588	if err != nil {
33589		return nil, err
33590	}
33591	reqHeaders.Set("Content-Type", "application/json")
33592	c.urlParams_.Set("alt", alt)
33593	c.urlParams_.Set("prettyPrint", "false")
33594	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pubsubnotificationsettings")
33595	urls += "?" + c.urlParams_.Encode()
33596	req, err := http.NewRequest("PUT", urls, body)
33597	if err != nil {
33598		return nil, err
33599	}
33600	req.Header = reqHeaders
33601	googleapi.Expand(req.URL, map[string]string{
33602		"merchantId": strconv.FormatUint(c.merchantId, 10),
33603	})
33604	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33605}
33606
33607// Do executes the "content.pubsubnotificationsettings.update" call.
33608// Exactly one of *PubsubNotificationSettings or error will be non-nil.
33609// Any non-2xx status code is an error. Response headers are in either
33610// *PubsubNotificationSettings.ServerResponse.Header or (if a response
33611// was returned at all) in error.(*googleapi.Error).Header. Use
33612// googleapi.IsNotModified to check whether the returned error was
33613// because http.StatusNotModified was returned.
33614func (c *PubsubnotificationsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
33615	gensupport.SetOptions(c.urlParams_, opts...)
33616	res, err := c.doRequest("json")
33617	if res != nil && res.StatusCode == http.StatusNotModified {
33618		if res.Body != nil {
33619			res.Body.Close()
33620		}
33621		return nil, &googleapi.Error{
33622			Code:   res.StatusCode,
33623			Header: res.Header,
33624		}
33625	}
33626	if err != nil {
33627		return nil, err
33628	}
33629	defer googleapi.CloseBody(res)
33630	if err := googleapi.CheckResponse(res); err != nil {
33631		return nil, err
33632	}
33633	ret := &PubsubNotificationSettings{
33634		ServerResponse: googleapi.ServerResponse{
33635			Header:         res.Header,
33636			HTTPStatusCode: res.StatusCode,
33637		},
33638	}
33639	target := &ret
33640	if err := gensupport.DecodeResponse(target, res); err != nil {
33641		return nil, err
33642	}
33643	return ret, nil
33644	// {
33645	//   "description": "Register a Merchant Center account for pubsub notifications. Note that cloud topic name should not be provided as part of the request.",
33646	//   "flatPath": "{merchantId}/pubsubnotificationsettings",
33647	//   "httpMethod": "PUT",
33648	//   "id": "content.pubsubnotificationsettings.update",
33649	//   "parameterOrder": [
33650	//     "merchantId"
33651	//   ],
33652	//   "parameters": {
33653	//     "merchantId": {
33654	//       "description": "The ID of the account.",
33655	//       "format": "uint64",
33656	//       "location": "path",
33657	//       "required": true,
33658	//       "type": "string"
33659	//     }
33660	//   },
33661	//   "path": "{merchantId}/pubsubnotificationsettings",
33662	//   "request": {
33663	//     "$ref": "PubsubNotificationSettings"
33664	//   },
33665	//   "response": {
33666	//     "$ref": "PubsubNotificationSettings"
33667	//   },
33668	//   "scopes": [
33669	//     "https://www.googleapis.com/auth/content"
33670	//   ]
33671	// }
33672
33673}
33674
33675// method id "content.regionalinventory.custombatch":
33676
33677type RegionalinventoryCustombatchCall struct {
33678	s                                   *APIService
33679	regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest
33680	urlParams_                          gensupport.URLParams
33681	ctx_                                context.Context
33682	header_                             http.Header
33683}
33684
33685// Custombatch: Updates regional inventory for multiple products or
33686// regions in a single request.
33687func (r *RegionalinventoryService) Custombatch(regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest) *RegionalinventoryCustombatchCall {
33688	c := &RegionalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33689	c.regionalinventorycustombatchrequest = regionalinventorycustombatchrequest
33690	return c
33691}
33692
33693// Fields allows partial responses to be retrieved. See
33694// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33695// for more information.
33696func (c *RegionalinventoryCustombatchCall) Fields(s ...googleapi.Field) *RegionalinventoryCustombatchCall {
33697	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33698	return c
33699}
33700
33701// Context sets the context to be used in this call's Do method. Any
33702// pending HTTP request will be aborted if the provided context is
33703// canceled.
33704func (c *RegionalinventoryCustombatchCall) Context(ctx context.Context) *RegionalinventoryCustombatchCall {
33705	c.ctx_ = ctx
33706	return c
33707}
33708
33709// Header returns an http.Header that can be modified by the caller to
33710// add HTTP headers to the request.
33711func (c *RegionalinventoryCustombatchCall) Header() http.Header {
33712	if c.header_ == nil {
33713		c.header_ = make(http.Header)
33714	}
33715	return c.header_
33716}
33717
33718func (c *RegionalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
33719	reqHeaders := make(http.Header)
33720	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
33721	for k, v := range c.header_ {
33722		reqHeaders[k] = v
33723	}
33724	reqHeaders.Set("User-Agent", c.s.userAgent())
33725	var body io.Reader = nil
33726	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventorycustombatchrequest)
33727	if err != nil {
33728		return nil, err
33729	}
33730	reqHeaders.Set("Content-Type", "application/json")
33731	c.urlParams_.Set("alt", alt)
33732	c.urlParams_.Set("prettyPrint", "false")
33733	urls := googleapi.ResolveRelative(c.s.BasePath, "regionalinventory/batch")
33734	urls += "?" + c.urlParams_.Encode()
33735	req, err := http.NewRequest("POST", urls, body)
33736	if err != nil {
33737		return nil, err
33738	}
33739	req.Header = reqHeaders
33740	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33741}
33742
33743// Do executes the "content.regionalinventory.custombatch" call.
33744// Exactly one of *RegionalinventoryCustomBatchResponse or error will be
33745// non-nil. Any non-2xx status code is an error. Response headers are in
33746// either *RegionalinventoryCustomBatchResponse.ServerResponse.Header or
33747// (if a response was returned at all) in
33748// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33749// whether the returned error was because http.StatusNotModified was
33750// returned.
33751func (c *RegionalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*RegionalinventoryCustomBatchResponse, error) {
33752	gensupport.SetOptions(c.urlParams_, opts...)
33753	res, err := c.doRequest("json")
33754	if res != nil && res.StatusCode == http.StatusNotModified {
33755		if res.Body != nil {
33756			res.Body.Close()
33757		}
33758		return nil, &googleapi.Error{
33759			Code:   res.StatusCode,
33760			Header: res.Header,
33761		}
33762	}
33763	if err != nil {
33764		return nil, err
33765	}
33766	defer googleapi.CloseBody(res)
33767	if err := googleapi.CheckResponse(res); err != nil {
33768		return nil, err
33769	}
33770	ret := &RegionalinventoryCustomBatchResponse{
33771		ServerResponse: googleapi.ServerResponse{
33772			Header:         res.Header,
33773			HTTPStatusCode: res.StatusCode,
33774		},
33775	}
33776	target := &ret
33777	if err := gensupport.DecodeResponse(target, res); err != nil {
33778		return nil, err
33779	}
33780	return ret, nil
33781	// {
33782	//   "description": "Updates regional inventory for multiple products or regions in a single request.",
33783	//   "flatPath": "regionalinventory/batch",
33784	//   "httpMethod": "POST",
33785	//   "id": "content.regionalinventory.custombatch",
33786	//   "parameterOrder": [],
33787	//   "parameters": {},
33788	//   "path": "regionalinventory/batch",
33789	//   "request": {
33790	//     "$ref": "RegionalinventoryCustomBatchRequest"
33791	//   },
33792	//   "response": {
33793	//     "$ref": "RegionalinventoryCustomBatchResponse"
33794	//   },
33795	//   "scopes": [
33796	//     "https://www.googleapis.com/auth/content"
33797	//   ]
33798	// }
33799
33800}
33801
33802// method id "content.regionalinventory.insert":
33803
33804type RegionalinventoryInsertCall struct {
33805	s                 *APIService
33806	merchantId        uint64
33807	productId         string
33808	regionalinventory *RegionalInventory
33809	urlParams_        gensupport.URLParams
33810	ctx_              context.Context
33811	header_           http.Header
33812}
33813
33814// Insert: Update the regional inventory of a product in your Merchant
33815// Center account. If a regional inventory with the same region ID
33816// already exists, this method updates that entry.
33817//
33818// - merchantId: The ID of the account that contains the product. This
33819//   account cannot be a multi-client account.
33820// - productId: The REST ID of the product for which to update the
33821//   regional inventory.
33822func (r *RegionalinventoryService) Insert(merchantId uint64, productId string, regionalinventory *RegionalInventory) *RegionalinventoryInsertCall {
33823	c := &RegionalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33824	c.merchantId = merchantId
33825	c.productId = productId
33826	c.regionalinventory = regionalinventory
33827	return c
33828}
33829
33830// Fields allows partial responses to be retrieved. See
33831// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33832// for more information.
33833func (c *RegionalinventoryInsertCall) Fields(s ...googleapi.Field) *RegionalinventoryInsertCall {
33834	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33835	return c
33836}
33837
33838// Context sets the context to be used in this call's Do method. Any
33839// pending HTTP request will be aborted if the provided context is
33840// canceled.
33841func (c *RegionalinventoryInsertCall) Context(ctx context.Context) *RegionalinventoryInsertCall {
33842	c.ctx_ = ctx
33843	return c
33844}
33845
33846// Header returns an http.Header that can be modified by the caller to
33847// add HTTP headers to the request.
33848func (c *RegionalinventoryInsertCall) Header() http.Header {
33849	if c.header_ == nil {
33850		c.header_ = make(http.Header)
33851	}
33852	return c.header_
33853}
33854
33855func (c *RegionalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
33856	reqHeaders := make(http.Header)
33857	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
33858	for k, v := range c.header_ {
33859		reqHeaders[k] = v
33860	}
33861	reqHeaders.Set("User-Agent", c.s.userAgent())
33862	var body io.Reader = nil
33863	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventory)
33864	if err != nil {
33865		return nil, err
33866	}
33867	reqHeaders.Set("Content-Type", "application/json")
33868	c.urlParams_.Set("alt", alt)
33869	c.urlParams_.Set("prettyPrint", "false")
33870	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/regionalinventory")
33871	urls += "?" + c.urlParams_.Encode()
33872	req, err := http.NewRequest("POST", urls, body)
33873	if err != nil {
33874		return nil, err
33875	}
33876	req.Header = reqHeaders
33877	googleapi.Expand(req.URL, map[string]string{
33878		"merchantId": strconv.FormatUint(c.merchantId, 10),
33879		"productId":  c.productId,
33880	})
33881	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33882}
33883
33884// Do executes the "content.regionalinventory.insert" call.
33885// Exactly one of *RegionalInventory or error will be non-nil. Any
33886// non-2xx status code is an error. Response headers are in either
33887// *RegionalInventory.ServerResponse.Header or (if a response was
33888// returned at all) in error.(*googleapi.Error).Header. Use
33889// googleapi.IsNotModified to check whether the returned error was
33890// because http.StatusNotModified was returned.
33891func (c *RegionalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*RegionalInventory, error) {
33892	gensupport.SetOptions(c.urlParams_, opts...)
33893	res, err := c.doRequest("json")
33894	if res != nil && res.StatusCode == http.StatusNotModified {
33895		if res.Body != nil {
33896			res.Body.Close()
33897		}
33898		return nil, &googleapi.Error{
33899			Code:   res.StatusCode,
33900			Header: res.Header,
33901		}
33902	}
33903	if err != nil {
33904		return nil, err
33905	}
33906	defer googleapi.CloseBody(res)
33907	if err := googleapi.CheckResponse(res); err != nil {
33908		return nil, err
33909	}
33910	ret := &RegionalInventory{
33911		ServerResponse: googleapi.ServerResponse{
33912			Header:         res.Header,
33913			HTTPStatusCode: res.StatusCode,
33914		},
33915	}
33916	target := &ret
33917	if err := gensupport.DecodeResponse(target, res); err != nil {
33918		return nil, err
33919	}
33920	return ret, nil
33921	// {
33922	//   "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.",
33923	//   "flatPath": "{merchantId}/products/{productId}/regionalinventory",
33924	//   "httpMethod": "POST",
33925	//   "id": "content.regionalinventory.insert",
33926	//   "parameterOrder": [
33927	//     "merchantId",
33928	//     "productId"
33929	//   ],
33930	//   "parameters": {
33931	//     "merchantId": {
33932	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
33933	//       "format": "uint64",
33934	//       "location": "path",
33935	//       "required": true,
33936	//       "type": "string"
33937	//     },
33938	//     "productId": {
33939	//       "description": "The REST ID of the product for which to update the regional inventory.",
33940	//       "location": "path",
33941	//       "required": true,
33942	//       "type": "string"
33943	//     }
33944	//   },
33945	//   "path": "{merchantId}/products/{productId}/regionalinventory",
33946	//   "request": {
33947	//     "$ref": "RegionalInventory"
33948	//   },
33949	//   "response": {
33950	//     "$ref": "RegionalInventory"
33951	//   },
33952	//   "scopes": [
33953	//     "https://www.googleapis.com/auth/content"
33954	//   ]
33955	// }
33956
33957}
33958
33959// method id "content.regions.create":
33960
33961type RegionsCreateCall struct {
33962	s          *APIService
33963	merchantId int64
33964	region     *Region
33965	urlParams_ gensupport.URLParams
33966	ctx_       context.Context
33967	header_    http.Header
33968}
33969
33970// Create: Creates a region definition in your Merchant Center account.
33971//
33972// - merchantId: The id of the merchant for which to create region
33973//   definition.
33974func (r *RegionsService) Create(merchantId int64, region *Region) *RegionsCreateCall {
33975	c := &RegionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33976	c.merchantId = merchantId
33977	c.region = region
33978	return c
33979}
33980
33981// RegionId sets the optional parameter "regionId": Required. The id of
33982// the region to create.
33983func (c *RegionsCreateCall) RegionId(regionId string) *RegionsCreateCall {
33984	c.urlParams_.Set("regionId", regionId)
33985	return c
33986}
33987
33988// Fields allows partial responses to be retrieved. See
33989// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33990// for more information.
33991func (c *RegionsCreateCall) Fields(s ...googleapi.Field) *RegionsCreateCall {
33992	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33993	return c
33994}
33995
33996// Context sets the context to be used in this call's Do method. Any
33997// pending HTTP request will be aborted if the provided context is
33998// canceled.
33999func (c *RegionsCreateCall) Context(ctx context.Context) *RegionsCreateCall {
34000	c.ctx_ = ctx
34001	return c
34002}
34003
34004// Header returns an http.Header that can be modified by the caller to
34005// add HTTP headers to the request.
34006func (c *RegionsCreateCall) Header() http.Header {
34007	if c.header_ == nil {
34008		c.header_ = make(http.Header)
34009	}
34010	return c.header_
34011}
34012
34013func (c *RegionsCreateCall) doRequest(alt string) (*http.Response, error) {
34014	reqHeaders := make(http.Header)
34015	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
34016	for k, v := range c.header_ {
34017		reqHeaders[k] = v
34018	}
34019	reqHeaders.Set("User-Agent", c.s.userAgent())
34020	var body io.Reader = nil
34021	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
34022	if err != nil {
34023		return nil, err
34024	}
34025	reqHeaders.Set("Content-Type", "application/json")
34026	c.urlParams_.Set("alt", alt)
34027	c.urlParams_.Set("prettyPrint", "false")
34028	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions")
34029	urls += "?" + c.urlParams_.Encode()
34030	req, err := http.NewRequest("POST", urls, body)
34031	if err != nil {
34032		return nil, err
34033	}
34034	req.Header = reqHeaders
34035	googleapi.Expand(req.URL, map[string]string{
34036		"merchantId": strconv.FormatInt(c.merchantId, 10),
34037	})
34038	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34039}
34040
34041// Do executes the "content.regions.create" call.
34042// Exactly one of *Region or error will be non-nil. Any non-2xx status
34043// code is an error. Response headers are in either
34044// *Region.ServerResponse.Header or (if a response was returned at all)
34045// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
34046// check whether the returned error was because http.StatusNotModified
34047// was returned.
34048func (c *RegionsCreateCall) Do(opts ...googleapi.CallOption) (*Region, error) {
34049	gensupport.SetOptions(c.urlParams_, opts...)
34050	res, err := c.doRequest("json")
34051	if res != nil && res.StatusCode == http.StatusNotModified {
34052		if res.Body != nil {
34053			res.Body.Close()
34054		}
34055		return nil, &googleapi.Error{
34056			Code:   res.StatusCode,
34057			Header: res.Header,
34058		}
34059	}
34060	if err != nil {
34061		return nil, err
34062	}
34063	defer googleapi.CloseBody(res)
34064	if err := googleapi.CheckResponse(res); err != nil {
34065		return nil, err
34066	}
34067	ret := &Region{
34068		ServerResponse: googleapi.ServerResponse{
34069			Header:         res.Header,
34070			HTTPStatusCode: res.StatusCode,
34071		},
34072	}
34073	target := &ret
34074	if err := gensupport.DecodeResponse(target, res); err != nil {
34075		return nil, err
34076	}
34077	return ret, nil
34078	// {
34079	//   "description": "Creates a region definition in your Merchant Center account.",
34080	//   "flatPath": "{merchantId}/regions",
34081	//   "httpMethod": "POST",
34082	//   "id": "content.regions.create",
34083	//   "parameterOrder": [
34084	//     "merchantId"
34085	//   ],
34086	//   "parameters": {
34087	//     "merchantId": {
34088	//       "description": "Required. The id of the merchant for which to create region definition.",
34089	//       "format": "int64",
34090	//       "location": "path",
34091	//       "required": true,
34092	//       "type": "string"
34093	//     },
34094	//     "regionId": {
34095	//       "description": "Required. The id of the region to create.",
34096	//       "location": "query",
34097	//       "type": "string"
34098	//     }
34099	//   },
34100	//   "path": "{merchantId}/regions",
34101	//   "request": {
34102	//     "$ref": "Region"
34103	//   },
34104	//   "response": {
34105	//     "$ref": "Region"
34106	//   },
34107	//   "scopes": [
34108	//     "https://www.googleapis.com/auth/content"
34109	//   ]
34110	// }
34111
34112}
34113
34114// method id "content.regions.delete":
34115
34116type RegionsDeleteCall struct {
34117	s          *APIService
34118	merchantId int64
34119	regionId   string
34120	urlParams_ gensupport.URLParams
34121	ctx_       context.Context
34122	header_    http.Header
34123}
34124
34125// Delete: Deletes a region definition from your Merchant Center
34126// account.
34127//
34128// - merchantId: The id of the merchant for which to delete region
34129//   definition.
34130// - regionId: The id of the region to delete.
34131func (r *RegionsService) Delete(merchantId int64, regionId string) *RegionsDeleteCall {
34132	c := &RegionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34133	c.merchantId = merchantId
34134	c.regionId = regionId
34135	return c
34136}
34137
34138// Fields allows partial responses to be retrieved. See
34139// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34140// for more information.
34141func (c *RegionsDeleteCall) Fields(s ...googleapi.Field) *RegionsDeleteCall {
34142	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34143	return c
34144}
34145
34146// Context sets the context to be used in this call's Do method. Any
34147// pending HTTP request will be aborted if the provided context is
34148// canceled.
34149func (c *RegionsDeleteCall) Context(ctx context.Context) *RegionsDeleteCall {
34150	c.ctx_ = ctx
34151	return c
34152}
34153
34154// Header returns an http.Header that can be modified by the caller to
34155// add HTTP headers to the request.
34156func (c *RegionsDeleteCall) Header() http.Header {
34157	if c.header_ == nil {
34158		c.header_ = make(http.Header)
34159	}
34160	return c.header_
34161}
34162
34163func (c *RegionsDeleteCall) doRequest(alt string) (*http.Response, error) {
34164	reqHeaders := make(http.Header)
34165	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
34166	for k, v := range c.header_ {
34167		reqHeaders[k] = v
34168	}
34169	reqHeaders.Set("User-Agent", c.s.userAgent())
34170	var body io.Reader = nil
34171	c.urlParams_.Set("alt", alt)
34172	c.urlParams_.Set("prettyPrint", "false")
34173	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
34174	urls += "?" + c.urlParams_.Encode()
34175	req, err := http.NewRequest("DELETE", urls, body)
34176	if err != nil {
34177		return nil, err
34178	}
34179	req.Header = reqHeaders
34180	googleapi.Expand(req.URL, map[string]string{
34181		"merchantId": strconv.FormatInt(c.merchantId, 10),
34182		"regionId":   c.regionId,
34183	})
34184	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34185}
34186
34187// Do executes the "content.regions.delete" call.
34188func (c *RegionsDeleteCall) Do(opts ...googleapi.CallOption) error {
34189	gensupport.SetOptions(c.urlParams_, opts...)
34190	res, err := c.doRequest("json")
34191	if err != nil {
34192		return err
34193	}
34194	defer googleapi.CloseBody(res)
34195	if err := googleapi.CheckResponse(res); err != nil {
34196		return err
34197	}
34198	return nil
34199	// {
34200	//   "description": "Deletes a region definition from your Merchant Center account.",
34201	//   "flatPath": "{merchantId}/regions/{regionId}",
34202	//   "httpMethod": "DELETE",
34203	//   "id": "content.regions.delete",
34204	//   "parameterOrder": [
34205	//     "merchantId",
34206	//     "regionId"
34207	//   ],
34208	//   "parameters": {
34209	//     "merchantId": {
34210	//       "description": "Required. The id of the merchant for which to delete region definition.",
34211	//       "format": "int64",
34212	//       "location": "path",
34213	//       "required": true,
34214	//       "type": "string"
34215	//     },
34216	//     "regionId": {
34217	//       "description": "Required. The id of the region to delete.",
34218	//       "location": "path",
34219	//       "required": true,
34220	//       "type": "string"
34221	//     }
34222	//   },
34223	//   "path": "{merchantId}/regions/{regionId}",
34224	//   "scopes": [
34225	//     "https://www.googleapis.com/auth/content"
34226	//   ]
34227	// }
34228
34229}
34230
34231// method id "content.regions.get":
34232
34233type RegionsGetCall struct {
34234	s            *APIService
34235	merchantId   int64
34236	regionId     string
34237	urlParams_   gensupport.URLParams
34238	ifNoneMatch_ string
34239	ctx_         context.Context
34240	header_      http.Header
34241}
34242
34243// Get: Retrieves a region defined in your Merchant Center account.
34244//
34245// - merchantId: The id of the merchant for which to retrieve region
34246//   definition.
34247// - regionId: The id of the region to retrieve.
34248func (r *RegionsService) Get(merchantId int64, regionId string) *RegionsGetCall {
34249	c := &RegionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34250	c.merchantId = merchantId
34251	c.regionId = regionId
34252	return c
34253}
34254
34255// Fields allows partial responses to be retrieved. See
34256// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34257// for more information.
34258func (c *RegionsGetCall) Fields(s ...googleapi.Field) *RegionsGetCall {
34259	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34260	return c
34261}
34262
34263// IfNoneMatch sets the optional parameter which makes the operation
34264// fail if the object's ETag matches the given value. This is useful for
34265// getting updates only after the object has changed since the last
34266// request. Use googleapi.IsNotModified to check whether the response
34267// error from Do is the result of In-None-Match.
34268func (c *RegionsGetCall) IfNoneMatch(entityTag string) *RegionsGetCall {
34269	c.ifNoneMatch_ = entityTag
34270	return c
34271}
34272
34273// Context sets the context to be used in this call's Do method. Any
34274// pending HTTP request will be aborted if the provided context is
34275// canceled.
34276func (c *RegionsGetCall) Context(ctx context.Context) *RegionsGetCall {
34277	c.ctx_ = ctx
34278	return c
34279}
34280
34281// Header returns an http.Header that can be modified by the caller to
34282// add HTTP headers to the request.
34283func (c *RegionsGetCall) Header() http.Header {
34284	if c.header_ == nil {
34285		c.header_ = make(http.Header)
34286	}
34287	return c.header_
34288}
34289
34290func (c *RegionsGetCall) doRequest(alt string) (*http.Response, error) {
34291	reqHeaders := make(http.Header)
34292	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
34293	for k, v := range c.header_ {
34294		reqHeaders[k] = v
34295	}
34296	reqHeaders.Set("User-Agent", c.s.userAgent())
34297	if c.ifNoneMatch_ != "" {
34298		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34299	}
34300	var body io.Reader = nil
34301	c.urlParams_.Set("alt", alt)
34302	c.urlParams_.Set("prettyPrint", "false")
34303	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
34304	urls += "?" + c.urlParams_.Encode()
34305	req, err := http.NewRequest("GET", urls, body)
34306	if err != nil {
34307		return nil, err
34308	}
34309	req.Header = reqHeaders
34310	googleapi.Expand(req.URL, map[string]string{
34311		"merchantId": strconv.FormatInt(c.merchantId, 10),
34312		"regionId":   c.regionId,
34313	})
34314	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34315}
34316
34317// Do executes the "content.regions.get" call.
34318// Exactly one of *Region or error will be non-nil. Any non-2xx status
34319// code is an error. Response headers are in either
34320// *Region.ServerResponse.Header or (if a response was returned at all)
34321// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
34322// check whether the returned error was because http.StatusNotModified
34323// was returned.
34324func (c *RegionsGetCall) Do(opts ...googleapi.CallOption) (*Region, error) {
34325	gensupport.SetOptions(c.urlParams_, opts...)
34326	res, err := c.doRequest("json")
34327	if res != nil && res.StatusCode == http.StatusNotModified {
34328		if res.Body != nil {
34329			res.Body.Close()
34330		}
34331		return nil, &googleapi.Error{
34332			Code:   res.StatusCode,
34333			Header: res.Header,
34334		}
34335	}
34336	if err != nil {
34337		return nil, err
34338	}
34339	defer googleapi.CloseBody(res)
34340	if err := googleapi.CheckResponse(res); err != nil {
34341		return nil, err
34342	}
34343	ret := &Region{
34344		ServerResponse: googleapi.ServerResponse{
34345			Header:         res.Header,
34346			HTTPStatusCode: res.StatusCode,
34347		},
34348	}
34349	target := &ret
34350	if err := gensupport.DecodeResponse(target, res); err != nil {
34351		return nil, err
34352	}
34353	return ret, nil
34354	// {
34355	//   "description": "Retrieves a region defined in your Merchant Center account.",
34356	//   "flatPath": "{merchantId}/regions/{regionId}",
34357	//   "httpMethod": "GET",
34358	//   "id": "content.regions.get",
34359	//   "parameterOrder": [
34360	//     "merchantId",
34361	//     "regionId"
34362	//   ],
34363	//   "parameters": {
34364	//     "merchantId": {
34365	//       "description": "Required. The id of the merchant for which to retrieve region definition.",
34366	//       "format": "int64",
34367	//       "location": "path",
34368	//       "required": true,
34369	//       "type": "string"
34370	//     },
34371	//     "regionId": {
34372	//       "description": "Required. The id of the region to retrieve.",
34373	//       "location": "path",
34374	//       "required": true,
34375	//       "type": "string"
34376	//     }
34377	//   },
34378	//   "path": "{merchantId}/regions/{regionId}",
34379	//   "response": {
34380	//     "$ref": "Region"
34381	//   },
34382	//   "scopes": [
34383	//     "https://www.googleapis.com/auth/content"
34384	//   ]
34385	// }
34386
34387}
34388
34389// method id "content.regions.list":
34390
34391type RegionsListCall struct {
34392	s            *APIService
34393	merchantId   int64
34394	urlParams_   gensupport.URLParams
34395	ifNoneMatch_ string
34396	ctx_         context.Context
34397	header_      http.Header
34398}
34399
34400// List: Lists the regions in your Merchant Center account.
34401//
34402// - merchantId: The id of the merchant for which to list region
34403//   definitions.
34404func (r *RegionsService) List(merchantId int64) *RegionsListCall {
34405	c := &RegionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34406	c.merchantId = merchantId
34407	return c
34408}
34409
34410// PageSize sets the optional parameter "pageSize": The maximum number
34411// of regions to return. The service may return fewer than this value.
34412// If unspecified, at most 50 rules will be returned. The maximum value
34413// is 1000; values above 1000 will be coerced to 1000.
34414func (c *RegionsListCall) PageSize(pageSize int64) *RegionsListCall {
34415	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
34416	return c
34417}
34418
34419// PageToken sets the optional parameter "pageToken": A page token,
34420// received from a previous `ListRegions` call. Provide this to retrieve
34421// the subsequent page. When paginating, all other parameters provided
34422// to `ListRegions` must match the call that provided the page token.
34423func (c *RegionsListCall) PageToken(pageToken string) *RegionsListCall {
34424	c.urlParams_.Set("pageToken", pageToken)
34425	return c
34426}
34427
34428// Fields allows partial responses to be retrieved. See
34429// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34430// for more information.
34431func (c *RegionsListCall) Fields(s ...googleapi.Field) *RegionsListCall {
34432	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34433	return c
34434}
34435
34436// IfNoneMatch sets the optional parameter which makes the operation
34437// fail if the object's ETag matches the given value. This is useful for
34438// getting updates only after the object has changed since the last
34439// request. Use googleapi.IsNotModified to check whether the response
34440// error from Do is the result of In-None-Match.
34441func (c *RegionsListCall) IfNoneMatch(entityTag string) *RegionsListCall {
34442	c.ifNoneMatch_ = entityTag
34443	return c
34444}
34445
34446// Context sets the context to be used in this call's Do method. Any
34447// pending HTTP request will be aborted if the provided context is
34448// canceled.
34449func (c *RegionsListCall) Context(ctx context.Context) *RegionsListCall {
34450	c.ctx_ = ctx
34451	return c
34452}
34453
34454// Header returns an http.Header that can be modified by the caller to
34455// add HTTP headers to the request.
34456func (c *RegionsListCall) Header() http.Header {
34457	if c.header_ == nil {
34458		c.header_ = make(http.Header)
34459	}
34460	return c.header_
34461}
34462
34463func (c *RegionsListCall) doRequest(alt string) (*http.Response, error) {
34464	reqHeaders := make(http.Header)
34465	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
34466	for k, v := range c.header_ {
34467		reqHeaders[k] = v
34468	}
34469	reqHeaders.Set("User-Agent", c.s.userAgent())
34470	if c.ifNoneMatch_ != "" {
34471		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34472	}
34473	var body io.Reader = nil
34474	c.urlParams_.Set("alt", alt)
34475	c.urlParams_.Set("prettyPrint", "false")
34476	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions")
34477	urls += "?" + c.urlParams_.Encode()
34478	req, err := http.NewRequest("GET", urls, body)
34479	if err != nil {
34480		return nil, err
34481	}
34482	req.Header = reqHeaders
34483	googleapi.Expand(req.URL, map[string]string{
34484		"merchantId": strconv.FormatInt(c.merchantId, 10),
34485	})
34486	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34487}
34488
34489// Do executes the "content.regions.list" call.
34490// Exactly one of *ListRegionsResponse or error will be non-nil. Any
34491// non-2xx status code is an error. Response headers are in either
34492// *ListRegionsResponse.ServerResponse.Header or (if a response was
34493// returned at all) in error.(*googleapi.Error).Header. Use
34494// googleapi.IsNotModified to check whether the returned error was
34495// because http.StatusNotModified was returned.
34496func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*ListRegionsResponse, error) {
34497	gensupport.SetOptions(c.urlParams_, opts...)
34498	res, err := c.doRequest("json")
34499	if res != nil && res.StatusCode == http.StatusNotModified {
34500		if res.Body != nil {
34501			res.Body.Close()
34502		}
34503		return nil, &googleapi.Error{
34504			Code:   res.StatusCode,
34505			Header: res.Header,
34506		}
34507	}
34508	if err != nil {
34509		return nil, err
34510	}
34511	defer googleapi.CloseBody(res)
34512	if err := googleapi.CheckResponse(res); err != nil {
34513		return nil, err
34514	}
34515	ret := &ListRegionsResponse{
34516		ServerResponse: googleapi.ServerResponse{
34517			Header:         res.Header,
34518			HTTPStatusCode: res.StatusCode,
34519		},
34520	}
34521	target := &ret
34522	if err := gensupport.DecodeResponse(target, res); err != nil {
34523		return nil, err
34524	}
34525	return ret, nil
34526	// {
34527	//   "description": "Lists the regions in your Merchant Center account.",
34528	//   "flatPath": "{merchantId}/regions",
34529	//   "httpMethod": "GET",
34530	//   "id": "content.regions.list",
34531	//   "parameterOrder": [
34532	//     "merchantId"
34533	//   ],
34534	//   "parameters": {
34535	//     "merchantId": {
34536	//       "description": "Required. The id of the merchant for which to list region definitions.",
34537	//       "format": "int64",
34538	//       "location": "path",
34539	//       "required": true,
34540	//       "type": "string"
34541	//     },
34542	//     "pageSize": {
34543	//       "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.",
34544	//       "format": "int32",
34545	//       "location": "query",
34546	//       "type": "integer"
34547	//     },
34548	//     "pageToken": {
34549	//       "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.",
34550	//       "location": "query",
34551	//       "type": "string"
34552	//     }
34553	//   },
34554	//   "path": "{merchantId}/regions",
34555	//   "response": {
34556	//     "$ref": "ListRegionsResponse"
34557	//   },
34558	//   "scopes": [
34559	//     "https://www.googleapis.com/auth/content"
34560	//   ]
34561	// }
34562
34563}
34564
34565// Pages invokes f for each page of results.
34566// A non-nil error returned from f will halt the iteration.
34567// The provided context supersedes any context provided to the Context method.
34568func (c *RegionsListCall) Pages(ctx context.Context, f func(*ListRegionsResponse) error) error {
34569	c.ctx_ = ctx
34570	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
34571	for {
34572		x, err := c.Do()
34573		if err != nil {
34574			return err
34575		}
34576		if err := f(x); err != nil {
34577			return err
34578		}
34579		if x.NextPageToken == "" {
34580			return nil
34581		}
34582		c.PageToken(x.NextPageToken)
34583	}
34584}
34585
34586// method id "content.regions.patch":
34587
34588type RegionsPatchCall struct {
34589	s          *APIService
34590	merchantId int64
34591	regionId   string
34592	region     *Region
34593	urlParams_ gensupport.URLParams
34594	ctx_       context.Context
34595	header_    http.Header
34596}
34597
34598// Patch: Updates a region definition in your Merchant Center account.
34599//
34600// - merchantId: The id of the merchant for which to update region
34601//   definition.
34602// - regionId: The id of the region to update.
34603func (r *RegionsService) Patch(merchantId int64, regionId string, region *Region) *RegionsPatchCall {
34604	c := &RegionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34605	c.merchantId = merchantId
34606	c.regionId = regionId
34607	c.region = region
34608	return c
34609}
34610
34611// UpdateMask sets the optional parameter "updateMask": The field mask
34612// indicating the fields to update.
34613func (c *RegionsPatchCall) UpdateMask(updateMask string) *RegionsPatchCall {
34614	c.urlParams_.Set("updateMask", updateMask)
34615	return c
34616}
34617
34618// Fields allows partial responses to be retrieved. See
34619// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34620// for more information.
34621func (c *RegionsPatchCall) Fields(s ...googleapi.Field) *RegionsPatchCall {
34622	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34623	return c
34624}
34625
34626// Context sets the context to be used in this call's Do method. Any
34627// pending HTTP request will be aborted if the provided context is
34628// canceled.
34629func (c *RegionsPatchCall) Context(ctx context.Context) *RegionsPatchCall {
34630	c.ctx_ = ctx
34631	return c
34632}
34633
34634// Header returns an http.Header that can be modified by the caller to
34635// add HTTP headers to the request.
34636func (c *RegionsPatchCall) Header() http.Header {
34637	if c.header_ == nil {
34638		c.header_ = make(http.Header)
34639	}
34640	return c.header_
34641}
34642
34643func (c *RegionsPatchCall) doRequest(alt string) (*http.Response, error) {
34644	reqHeaders := make(http.Header)
34645	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
34646	for k, v := range c.header_ {
34647		reqHeaders[k] = v
34648	}
34649	reqHeaders.Set("User-Agent", c.s.userAgent())
34650	var body io.Reader = nil
34651	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
34652	if err != nil {
34653		return nil, err
34654	}
34655	reqHeaders.Set("Content-Type", "application/json")
34656	c.urlParams_.Set("alt", alt)
34657	c.urlParams_.Set("prettyPrint", "false")
34658	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
34659	urls += "?" + c.urlParams_.Encode()
34660	req, err := http.NewRequest("PATCH", urls, body)
34661	if err != nil {
34662		return nil, err
34663	}
34664	req.Header = reqHeaders
34665	googleapi.Expand(req.URL, map[string]string{
34666		"merchantId": strconv.FormatInt(c.merchantId, 10),
34667		"regionId":   c.regionId,
34668	})
34669	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34670}
34671
34672// Do executes the "content.regions.patch" call.
34673// Exactly one of *Region or error will be non-nil. Any non-2xx status
34674// code is an error. Response headers are in either
34675// *Region.ServerResponse.Header or (if a response was returned at all)
34676// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
34677// check whether the returned error was because http.StatusNotModified
34678// was returned.
34679func (c *RegionsPatchCall) Do(opts ...googleapi.CallOption) (*Region, error) {
34680	gensupport.SetOptions(c.urlParams_, opts...)
34681	res, err := c.doRequest("json")
34682	if res != nil && res.StatusCode == http.StatusNotModified {
34683		if res.Body != nil {
34684			res.Body.Close()
34685		}
34686		return nil, &googleapi.Error{
34687			Code:   res.StatusCode,
34688			Header: res.Header,
34689		}
34690	}
34691	if err != nil {
34692		return nil, err
34693	}
34694	defer googleapi.CloseBody(res)
34695	if err := googleapi.CheckResponse(res); err != nil {
34696		return nil, err
34697	}
34698	ret := &Region{
34699		ServerResponse: googleapi.ServerResponse{
34700			Header:         res.Header,
34701			HTTPStatusCode: res.StatusCode,
34702		},
34703	}
34704	target := &ret
34705	if err := gensupport.DecodeResponse(target, res); err != nil {
34706		return nil, err
34707	}
34708	return ret, nil
34709	// {
34710	//   "description": "Updates a region definition in your Merchant Center account.",
34711	//   "flatPath": "{merchantId}/regions/{regionId}",
34712	//   "httpMethod": "PATCH",
34713	//   "id": "content.regions.patch",
34714	//   "parameterOrder": [
34715	//     "merchantId",
34716	//     "regionId"
34717	//   ],
34718	//   "parameters": {
34719	//     "merchantId": {
34720	//       "description": "Required. The id of the merchant for which to update region definition.",
34721	//       "format": "int64",
34722	//       "location": "path",
34723	//       "required": true,
34724	//       "type": "string"
34725	//     },
34726	//     "regionId": {
34727	//       "description": "Required. The id of the region to update.",
34728	//       "location": "path",
34729	//       "required": true,
34730	//       "type": "string"
34731	//     },
34732	//     "updateMask": {
34733	//       "description": "Optional. The field mask indicating the fields to update.",
34734	//       "format": "google-fieldmask",
34735	//       "location": "query",
34736	//       "type": "string"
34737	//     }
34738	//   },
34739	//   "path": "{merchantId}/regions/{regionId}",
34740	//   "request": {
34741	//     "$ref": "Region"
34742	//   },
34743	//   "response": {
34744	//     "$ref": "Region"
34745	//   },
34746	//   "scopes": [
34747	//     "https://www.googleapis.com/auth/content"
34748	//   ]
34749	// }
34750
34751}
34752
34753// method id "content.reports.search":
34754
34755type ReportsSearchCall struct {
34756	s             *APIService
34757	merchantId    int64
34758	searchrequest *SearchRequest
34759	urlParams_    gensupport.URLParams
34760	ctx_          context.Context
34761	header_       http.Header
34762}
34763
34764// Search: Retrieves merchant performance mertrics matching the search
34765// query and optionally segmented by selected dimensions.
34766//
34767// - merchantId: Id of the merchant making the call. Must be a
34768//   standalone account or an MCA subaccount.
34769func (r *ReportsService) Search(merchantId int64, searchrequest *SearchRequest) *ReportsSearchCall {
34770	c := &ReportsSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34771	c.merchantId = merchantId
34772	c.searchrequest = searchrequest
34773	return c
34774}
34775
34776// Fields allows partial responses to be retrieved. See
34777// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34778// for more information.
34779func (c *ReportsSearchCall) Fields(s ...googleapi.Field) *ReportsSearchCall {
34780	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34781	return c
34782}
34783
34784// Context sets the context to be used in this call's Do method. Any
34785// pending HTTP request will be aborted if the provided context is
34786// canceled.
34787func (c *ReportsSearchCall) Context(ctx context.Context) *ReportsSearchCall {
34788	c.ctx_ = ctx
34789	return c
34790}
34791
34792// Header returns an http.Header that can be modified by the caller to
34793// add HTTP headers to the request.
34794func (c *ReportsSearchCall) Header() http.Header {
34795	if c.header_ == nil {
34796		c.header_ = make(http.Header)
34797	}
34798	return c.header_
34799}
34800
34801func (c *ReportsSearchCall) doRequest(alt string) (*http.Response, error) {
34802	reqHeaders := make(http.Header)
34803	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
34804	for k, v := range c.header_ {
34805		reqHeaders[k] = v
34806	}
34807	reqHeaders.Set("User-Agent", c.s.userAgent())
34808	var body io.Reader = nil
34809	body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchrequest)
34810	if err != nil {
34811		return nil, err
34812	}
34813	reqHeaders.Set("Content-Type", "application/json")
34814	c.urlParams_.Set("alt", alt)
34815	c.urlParams_.Set("prettyPrint", "false")
34816	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/reports/search")
34817	urls += "?" + c.urlParams_.Encode()
34818	req, err := http.NewRequest("POST", urls, body)
34819	if err != nil {
34820		return nil, err
34821	}
34822	req.Header = reqHeaders
34823	googleapi.Expand(req.URL, map[string]string{
34824		"merchantId": strconv.FormatInt(c.merchantId, 10),
34825	})
34826	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34827}
34828
34829// Do executes the "content.reports.search" call.
34830// Exactly one of *SearchResponse or error will be non-nil. Any non-2xx
34831// status code is an error. Response headers are in either
34832// *SearchResponse.ServerResponse.Header or (if a response was returned
34833// at all) in error.(*googleapi.Error).Header. Use
34834// googleapi.IsNotModified to check whether the returned error was
34835// because http.StatusNotModified was returned.
34836func (c *ReportsSearchCall) Do(opts ...googleapi.CallOption) (*SearchResponse, error) {
34837	gensupport.SetOptions(c.urlParams_, opts...)
34838	res, err := c.doRequest("json")
34839	if res != nil && res.StatusCode == http.StatusNotModified {
34840		if res.Body != nil {
34841			res.Body.Close()
34842		}
34843		return nil, &googleapi.Error{
34844			Code:   res.StatusCode,
34845			Header: res.Header,
34846		}
34847	}
34848	if err != nil {
34849		return nil, err
34850	}
34851	defer googleapi.CloseBody(res)
34852	if err := googleapi.CheckResponse(res); err != nil {
34853		return nil, err
34854	}
34855	ret := &SearchResponse{
34856		ServerResponse: googleapi.ServerResponse{
34857			Header:         res.Header,
34858			HTTPStatusCode: res.StatusCode,
34859		},
34860	}
34861	target := &ret
34862	if err := gensupport.DecodeResponse(target, res); err != nil {
34863		return nil, err
34864	}
34865	return ret, nil
34866	// {
34867	//   "description": "Retrieves merchant performance mertrics matching the search query and optionally segmented by selected dimensions.",
34868	//   "flatPath": "{merchantId}/reports/search",
34869	//   "httpMethod": "POST",
34870	//   "id": "content.reports.search",
34871	//   "parameterOrder": [
34872	//     "merchantId"
34873	//   ],
34874	//   "parameters": {
34875	//     "merchantId": {
34876	//       "description": "Required. Id of the merchant making the call. Must be a standalone account or an MCA subaccount.",
34877	//       "format": "int64",
34878	//       "location": "path",
34879	//       "required": true,
34880	//       "type": "string"
34881	//     }
34882	//   },
34883	//   "path": "{merchantId}/reports/search",
34884	//   "request": {
34885	//     "$ref": "SearchRequest"
34886	//   },
34887	//   "response": {
34888	//     "$ref": "SearchResponse"
34889	//   },
34890	//   "scopes": [
34891	//     "https://www.googleapis.com/auth/content"
34892	//   ]
34893	// }
34894
34895}
34896
34897// Pages invokes f for each page of results.
34898// A non-nil error returned from f will halt the iteration.
34899// The provided context supersedes any context provided to the Context method.
34900func (c *ReportsSearchCall) Pages(ctx context.Context, f func(*SearchResponse) error) error {
34901	c.ctx_ = ctx
34902	defer func(pt string) { c.searchrequest.PageToken = pt }(c.searchrequest.PageToken) // reset paging to original point
34903	for {
34904		x, err := c.Do()
34905		if err != nil {
34906			return err
34907		}
34908		if err := f(x); err != nil {
34909			return err
34910		}
34911		if x.NextPageToken == "" {
34912			return nil
34913		}
34914		c.searchrequest.PageToken = x.NextPageToken
34915	}
34916}
34917
34918// method id "content.repricingrules.create":
34919
34920type RepricingrulesCreateCall struct {
34921	s             *APIService
34922	merchantId    int64
34923	repricingrule *RepricingRule
34924	urlParams_    gensupport.URLParams
34925	ctx_          context.Context
34926	header_       http.Header
34927}
34928
34929// Create: Creates a repricing rule for your Merchant Center account.
34930//
34931// - merchantId: The id of the merchant who owns the repricing rule.
34932func (r *RepricingrulesService) Create(merchantId int64, repricingrule *RepricingRule) *RepricingrulesCreateCall {
34933	c := &RepricingrulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34934	c.merchantId = merchantId
34935	c.repricingrule = repricingrule
34936	return c
34937}
34938
34939// RuleId sets the optional parameter "ruleId": Required. The id of the
34940// rule to create.
34941func (c *RepricingrulesCreateCall) RuleId(ruleId string) *RepricingrulesCreateCall {
34942	c.urlParams_.Set("ruleId", ruleId)
34943	return c
34944}
34945
34946// Fields allows partial responses to be retrieved. See
34947// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34948// for more information.
34949func (c *RepricingrulesCreateCall) Fields(s ...googleapi.Field) *RepricingrulesCreateCall {
34950	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34951	return c
34952}
34953
34954// Context sets the context to be used in this call's Do method. Any
34955// pending HTTP request will be aborted if the provided context is
34956// canceled.
34957func (c *RepricingrulesCreateCall) Context(ctx context.Context) *RepricingrulesCreateCall {
34958	c.ctx_ = ctx
34959	return c
34960}
34961
34962// Header returns an http.Header that can be modified by the caller to
34963// add HTTP headers to the request.
34964func (c *RepricingrulesCreateCall) Header() http.Header {
34965	if c.header_ == nil {
34966		c.header_ = make(http.Header)
34967	}
34968	return c.header_
34969}
34970
34971func (c *RepricingrulesCreateCall) doRequest(alt string) (*http.Response, error) {
34972	reqHeaders := make(http.Header)
34973	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
34974	for k, v := range c.header_ {
34975		reqHeaders[k] = v
34976	}
34977	reqHeaders.Set("User-Agent", c.s.userAgent())
34978	var body io.Reader = nil
34979	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
34980	if err != nil {
34981		return nil, err
34982	}
34983	reqHeaders.Set("Content-Type", "application/json")
34984	c.urlParams_.Set("alt", alt)
34985	c.urlParams_.Set("prettyPrint", "false")
34986	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules")
34987	urls += "?" + c.urlParams_.Encode()
34988	req, err := http.NewRequest("POST", urls, body)
34989	if err != nil {
34990		return nil, err
34991	}
34992	req.Header = reqHeaders
34993	googleapi.Expand(req.URL, map[string]string{
34994		"merchantId": strconv.FormatInt(c.merchantId, 10),
34995	})
34996	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34997}
34998
34999// Do executes the "content.repricingrules.create" call.
35000// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
35001// status code is an error. Response headers are in either
35002// *RepricingRule.ServerResponse.Header or (if a response was returned
35003// at all) in error.(*googleapi.Error).Header. Use
35004// googleapi.IsNotModified to check whether the returned error was
35005// because http.StatusNotModified was returned.
35006func (c *RepricingrulesCreateCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
35007	gensupport.SetOptions(c.urlParams_, opts...)
35008	res, err := c.doRequest("json")
35009	if res != nil && res.StatusCode == http.StatusNotModified {
35010		if res.Body != nil {
35011			res.Body.Close()
35012		}
35013		return nil, &googleapi.Error{
35014			Code:   res.StatusCode,
35015			Header: res.Header,
35016		}
35017	}
35018	if err != nil {
35019		return nil, err
35020	}
35021	defer googleapi.CloseBody(res)
35022	if err := googleapi.CheckResponse(res); err != nil {
35023		return nil, err
35024	}
35025	ret := &RepricingRule{
35026		ServerResponse: googleapi.ServerResponse{
35027			Header:         res.Header,
35028			HTTPStatusCode: res.StatusCode,
35029		},
35030	}
35031	target := &ret
35032	if err := gensupport.DecodeResponse(target, res); err != nil {
35033		return nil, err
35034	}
35035	return ret, nil
35036	// {
35037	//   "description": "Creates a repricing rule for your Merchant Center account.",
35038	//   "flatPath": "{merchantId}/repricingrules",
35039	//   "httpMethod": "POST",
35040	//   "id": "content.repricingrules.create",
35041	//   "parameterOrder": [
35042	//     "merchantId"
35043	//   ],
35044	//   "parameters": {
35045	//     "merchantId": {
35046	//       "description": "Required. The id of the merchant who owns the repricing rule.",
35047	//       "format": "int64",
35048	//       "location": "path",
35049	//       "required": true,
35050	//       "type": "string"
35051	//     },
35052	//     "ruleId": {
35053	//       "description": "Required. The id of the rule to create.",
35054	//       "location": "query",
35055	//       "type": "string"
35056	//     }
35057	//   },
35058	//   "path": "{merchantId}/repricingrules",
35059	//   "request": {
35060	//     "$ref": "RepricingRule"
35061	//   },
35062	//   "response": {
35063	//     "$ref": "RepricingRule"
35064	//   },
35065	//   "scopes": [
35066	//     "https://www.googleapis.com/auth/content"
35067	//   ]
35068	// }
35069
35070}
35071
35072// method id "content.repricingrules.delete":
35073
35074type RepricingrulesDeleteCall struct {
35075	s          *APIService
35076	merchantId int64
35077	ruleId     string
35078	urlParams_ gensupport.URLParams
35079	ctx_       context.Context
35080	header_    http.Header
35081}
35082
35083// Delete: Deletes a repricing rule in your Merchant Center account.
35084//
35085// - merchantId: The id of the merchant who owns the repricing rule.
35086// - ruleId: The id of the rule to Delete.
35087func (r *RepricingrulesService) Delete(merchantId int64, ruleId string) *RepricingrulesDeleteCall {
35088	c := &RepricingrulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35089	c.merchantId = merchantId
35090	c.ruleId = ruleId
35091	return c
35092}
35093
35094// Fields allows partial responses to be retrieved. See
35095// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35096// for more information.
35097func (c *RepricingrulesDeleteCall) Fields(s ...googleapi.Field) *RepricingrulesDeleteCall {
35098	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35099	return c
35100}
35101
35102// Context sets the context to be used in this call's Do method. Any
35103// pending HTTP request will be aborted if the provided context is
35104// canceled.
35105func (c *RepricingrulesDeleteCall) Context(ctx context.Context) *RepricingrulesDeleteCall {
35106	c.ctx_ = ctx
35107	return c
35108}
35109
35110// Header returns an http.Header that can be modified by the caller to
35111// add HTTP headers to the request.
35112func (c *RepricingrulesDeleteCall) Header() http.Header {
35113	if c.header_ == nil {
35114		c.header_ = make(http.Header)
35115	}
35116	return c.header_
35117}
35118
35119func (c *RepricingrulesDeleteCall) doRequest(alt string) (*http.Response, error) {
35120	reqHeaders := make(http.Header)
35121	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
35122	for k, v := range c.header_ {
35123		reqHeaders[k] = v
35124	}
35125	reqHeaders.Set("User-Agent", c.s.userAgent())
35126	var body io.Reader = nil
35127	c.urlParams_.Set("alt", alt)
35128	c.urlParams_.Set("prettyPrint", "false")
35129	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
35130	urls += "?" + c.urlParams_.Encode()
35131	req, err := http.NewRequest("DELETE", urls, body)
35132	if err != nil {
35133		return nil, err
35134	}
35135	req.Header = reqHeaders
35136	googleapi.Expand(req.URL, map[string]string{
35137		"merchantId": strconv.FormatInt(c.merchantId, 10),
35138		"ruleId":     c.ruleId,
35139	})
35140	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35141}
35142
35143// Do executes the "content.repricingrules.delete" call.
35144func (c *RepricingrulesDeleteCall) Do(opts ...googleapi.CallOption) error {
35145	gensupport.SetOptions(c.urlParams_, opts...)
35146	res, err := c.doRequest("json")
35147	if err != nil {
35148		return err
35149	}
35150	defer googleapi.CloseBody(res)
35151	if err := googleapi.CheckResponse(res); err != nil {
35152		return err
35153	}
35154	return nil
35155	// {
35156	//   "description": "Deletes a repricing rule in your Merchant Center account.",
35157	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
35158	//   "httpMethod": "DELETE",
35159	//   "id": "content.repricingrules.delete",
35160	//   "parameterOrder": [
35161	//     "merchantId",
35162	//     "ruleId"
35163	//   ],
35164	//   "parameters": {
35165	//     "merchantId": {
35166	//       "description": "Required. The id of the merchant who owns the repricing rule.",
35167	//       "format": "int64",
35168	//       "location": "path",
35169	//       "required": true,
35170	//       "type": "string"
35171	//     },
35172	//     "ruleId": {
35173	//       "description": "Required. The id of the rule to Delete.",
35174	//       "location": "path",
35175	//       "required": true,
35176	//       "type": "string"
35177	//     }
35178	//   },
35179	//   "path": "{merchantId}/repricingrules/{ruleId}",
35180	//   "scopes": [
35181	//     "https://www.googleapis.com/auth/content"
35182	//   ]
35183	// }
35184
35185}
35186
35187// method id "content.repricingrules.get":
35188
35189type RepricingrulesGetCall struct {
35190	s            *APIService
35191	merchantId   int64
35192	ruleId       string
35193	urlParams_   gensupport.URLParams
35194	ifNoneMatch_ string
35195	ctx_         context.Context
35196	header_      http.Header
35197}
35198
35199// Get: Retrieves a repricing rule from your Merchant Center account.
35200//
35201// - merchantId: The id of the merchant who owns the repricing rule.
35202// - ruleId: The id of the rule to retrieve.
35203func (r *RepricingrulesService) Get(merchantId int64, ruleId string) *RepricingrulesGetCall {
35204	c := &RepricingrulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35205	c.merchantId = merchantId
35206	c.ruleId = ruleId
35207	return c
35208}
35209
35210// Fields allows partial responses to be retrieved. See
35211// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35212// for more information.
35213func (c *RepricingrulesGetCall) Fields(s ...googleapi.Field) *RepricingrulesGetCall {
35214	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35215	return c
35216}
35217
35218// IfNoneMatch sets the optional parameter which makes the operation
35219// fail if the object's ETag matches the given value. This is useful for
35220// getting updates only after the object has changed since the last
35221// request. Use googleapi.IsNotModified to check whether the response
35222// error from Do is the result of In-None-Match.
35223func (c *RepricingrulesGetCall) IfNoneMatch(entityTag string) *RepricingrulesGetCall {
35224	c.ifNoneMatch_ = entityTag
35225	return c
35226}
35227
35228// Context sets the context to be used in this call's Do method. Any
35229// pending HTTP request will be aborted if the provided context is
35230// canceled.
35231func (c *RepricingrulesGetCall) Context(ctx context.Context) *RepricingrulesGetCall {
35232	c.ctx_ = ctx
35233	return c
35234}
35235
35236// Header returns an http.Header that can be modified by the caller to
35237// add HTTP headers to the request.
35238func (c *RepricingrulesGetCall) Header() http.Header {
35239	if c.header_ == nil {
35240		c.header_ = make(http.Header)
35241	}
35242	return c.header_
35243}
35244
35245func (c *RepricingrulesGetCall) doRequest(alt string) (*http.Response, error) {
35246	reqHeaders := make(http.Header)
35247	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
35248	for k, v := range c.header_ {
35249		reqHeaders[k] = v
35250	}
35251	reqHeaders.Set("User-Agent", c.s.userAgent())
35252	if c.ifNoneMatch_ != "" {
35253		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35254	}
35255	var body io.Reader = nil
35256	c.urlParams_.Set("alt", alt)
35257	c.urlParams_.Set("prettyPrint", "false")
35258	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
35259	urls += "?" + c.urlParams_.Encode()
35260	req, err := http.NewRequest("GET", urls, body)
35261	if err != nil {
35262		return nil, err
35263	}
35264	req.Header = reqHeaders
35265	googleapi.Expand(req.URL, map[string]string{
35266		"merchantId": strconv.FormatInt(c.merchantId, 10),
35267		"ruleId":     c.ruleId,
35268	})
35269	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35270}
35271
35272// Do executes the "content.repricingrules.get" call.
35273// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
35274// status code is an error. Response headers are in either
35275// *RepricingRule.ServerResponse.Header or (if a response was returned
35276// at all) in error.(*googleapi.Error).Header. Use
35277// googleapi.IsNotModified to check whether the returned error was
35278// because http.StatusNotModified was returned.
35279func (c *RepricingrulesGetCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
35280	gensupport.SetOptions(c.urlParams_, opts...)
35281	res, err := c.doRequest("json")
35282	if res != nil && res.StatusCode == http.StatusNotModified {
35283		if res.Body != nil {
35284			res.Body.Close()
35285		}
35286		return nil, &googleapi.Error{
35287			Code:   res.StatusCode,
35288			Header: res.Header,
35289		}
35290	}
35291	if err != nil {
35292		return nil, err
35293	}
35294	defer googleapi.CloseBody(res)
35295	if err := googleapi.CheckResponse(res); err != nil {
35296		return nil, err
35297	}
35298	ret := &RepricingRule{
35299		ServerResponse: googleapi.ServerResponse{
35300			Header:         res.Header,
35301			HTTPStatusCode: res.StatusCode,
35302		},
35303	}
35304	target := &ret
35305	if err := gensupport.DecodeResponse(target, res); err != nil {
35306		return nil, err
35307	}
35308	return ret, nil
35309	// {
35310	//   "description": "Retrieves a repricing rule from your Merchant Center account.",
35311	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
35312	//   "httpMethod": "GET",
35313	//   "id": "content.repricingrules.get",
35314	//   "parameterOrder": [
35315	//     "merchantId",
35316	//     "ruleId"
35317	//   ],
35318	//   "parameters": {
35319	//     "merchantId": {
35320	//       "description": "Required. The id of the merchant who owns the repricing rule.",
35321	//       "format": "int64",
35322	//       "location": "path",
35323	//       "required": true,
35324	//       "type": "string"
35325	//     },
35326	//     "ruleId": {
35327	//       "description": "Required. The id of the rule to retrieve.",
35328	//       "location": "path",
35329	//       "required": true,
35330	//       "type": "string"
35331	//     }
35332	//   },
35333	//   "path": "{merchantId}/repricingrules/{ruleId}",
35334	//   "response": {
35335	//     "$ref": "RepricingRule"
35336	//   },
35337	//   "scopes": [
35338	//     "https://www.googleapis.com/auth/content"
35339	//   ]
35340	// }
35341
35342}
35343
35344// method id "content.repricingrules.list":
35345
35346type RepricingrulesListCall struct {
35347	s            *APIService
35348	merchantId   int64
35349	urlParams_   gensupport.URLParams
35350	ifNoneMatch_ string
35351	ctx_         context.Context
35352	header_      http.Header
35353}
35354
35355// List: Lists the repricing rules in your Merchant Center account.
35356//
35357// - merchantId: The id of the merchant who owns the repricing rule.
35358func (r *RepricingrulesService) List(merchantId int64) *RepricingrulesListCall {
35359	c := &RepricingrulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35360	c.merchantId = merchantId
35361	return c
35362}
35363
35364// CountryCode sets the optional parameter "countryCode": CLDR country
35365// code
35366// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
35367// (e.g. "US"), used as a filter on repricing rules.
35368func (c *RepricingrulesListCall) CountryCode(countryCode string) *RepricingrulesListCall {
35369	c.urlParams_.Set("countryCode", countryCode)
35370	return c
35371}
35372
35373// LanguageCode sets the optional parameter "languageCode": The
35374// two-letter ISO 639-1 language code associated with the repricing
35375// rule, used as a filter.
35376func (c *RepricingrulesListCall) LanguageCode(languageCode string) *RepricingrulesListCall {
35377	c.urlParams_.Set("languageCode", languageCode)
35378	return c
35379}
35380
35381// PageSize sets the optional parameter "pageSize": The maximum number
35382// of repricing rules to return. The service may return fewer than this
35383// value. If unspecified, at most 50 rules will be returned. The maximum
35384// value is 1000; values above 1000 will be coerced to 1000.
35385func (c *RepricingrulesListCall) PageSize(pageSize int64) *RepricingrulesListCall {
35386	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
35387	return c
35388}
35389
35390// PageToken sets the optional parameter "pageToken": A page token,
35391// received from a previous `ListRepricingRules` call. Provide this to
35392// retrieve the subsequent page. When paginating, all other parameters
35393// provided to `ListRepricingRules` must match the call that provided
35394// the page token.
35395func (c *RepricingrulesListCall) PageToken(pageToken string) *RepricingrulesListCall {
35396	c.urlParams_.Set("pageToken", pageToken)
35397	return c
35398}
35399
35400// Fields allows partial responses to be retrieved. See
35401// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35402// for more information.
35403func (c *RepricingrulesListCall) Fields(s ...googleapi.Field) *RepricingrulesListCall {
35404	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35405	return c
35406}
35407
35408// IfNoneMatch sets the optional parameter which makes the operation
35409// fail if the object's ETag matches the given value. This is useful for
35410// getting updates only after the object has changed since the last
35411// request. Use googleapi.IsNotModified to check whether the response
35412// error from Do is the result of In-None-Match.
35413func (c *RepricingrulesListCall) IfNoneMatch(entityTag string) *RepricingrulesListCall {
35414	c.ifNoneMatch_ = entityTag
35415	return c
35416}
35417
35418// Context sets the context to be used in this call's Do method. Any
35419// pending HTTP request will be aborted if the provided context is
35420// canceled.
35421func (c *RepricingrulesListCall) Context(ctx context.Context) *RepricingrulesListCall {
35422	c.ctx_ = ctx
35423	return c
35424}
35425
35426// Header returns an http.Header that can be modified by the caller to
35427// add HTTP headers to the request.
35428func (c *RepricingrulesListCall) Header() http.Header {
35429	if c.header_ == nil {
35430		c.header_ = make(http.Header)
35431	}
35432	return c.header_
35433}
35434
35435func (c *RepricingrulesListCall) doRequest(alt string) (*http.Response, error) {
35436	reqHeaders := make(http.Header)
35437	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
35438	for k, v := range c.header_ {
35439		reqHeaders[k] = v
35440	}
35441	reqHeaders.Set("User-Agent", c.s.userAgent())
35442	if c.ifNoneMatch_ != "" {
35443		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35444	}
35445	var body io.Reader = nil
35446	c.urlParams_.Set("alt", alt)
35447	c.urlParams_.Set("prettyPrint", "false")
35448	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules")
35449	urls += "?" + c.urlParams_.Encode()
35450	req, err := http.NewRequest("GET", urls, body)
35451	if err != nil {
35452		return nil, err
35453	}
35454	req.Header = reqHeaders
35455	googleapi.Expand(req.URL, map[string]string{
35456		"merchantId": strconv.FormatInt(c.merchantId, 10),
35457	})
35458	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35459}
35460
35461// Do executes the "content.repricingrules.list" call.
35462// Exactly one of *ListRepricingRulesResponse or error will be non-nil.
35463// Any non-2xx status code is an error. Response headers are in either
35464// *ListRepricingRulesResponse.ServerResponse.Header or (if a response
35465// was returned at all) in error.(*googleapi.Error).Header. Use
35466// googleapi.IsNotModified to check whether the returned error was
35467// because http.StatusNotModified was returned.
35468func (c *RepricingrulesListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRulesResponse, error) {
35469	gensupport.SetOptions(c.urlParams_, opts...)
35470	res, err := c.doRequest("json")
35471	if res != nil && res.StatusCode == http.StatusNotModified {
35472		if res.Body != nil {
35473			res.Body.Close()
35474		}
35475		return nil, &googleapi.Error{
35476			Code:   res.StatusCode,
35477			Header: res.Header,
35478		}
35479	}
35480	if err != nil {
35481		return nil, err
35482	}
35483	defer googleapi.CloseBody(res)
35484	if err := googleapi.CheckResponse(res); err != nil {
35485		return nil, err
35486	}
35487	ret := &ListRepricingRulesResponse{
35488		ServerResponse: googleapi.ServerResponse{
35489			Header:         res.Header,
35490			HTTPStatusCode: res.StatusCode,
35491		},
35492	}
35493	target := &ret
35494	if err := gensupport.DecodeResponse(target, res); err != nil {
35495		return nil, err
35496	}
35497	return ret, nil
35498	// {
35499	//   "description": "Lists the repricing rules in your Merchant Center account.",
35500	//   "flatPath": "{merchantId}/repricingrules",
35501	//   "httpMethod": "GET",
35502	//   "id": "content.repricingrules.list",
35503	//   "parameterOrder": [
35504	//     "merchantId"
35505	//   ],
35506	//   "parameters": {
35507	//     "countryCode": {
35508	//       "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.",
35509	//       "location": "query",
35510	//       "type": "string"
35511	//     },
35512	//     "languageCode": {
35513	//       "description": "The two-letter ISO 639-1 language code associated with the repricing rule, used as a filter.",
35514	//       "location": "query",
35515	//       "type": "string"
35516	//     },
35517	//     "merchantId": {
35518	//       "description": "Required. The id of the merchant who owns the repricing rule.",
35519	//       "format": "int64",
35520	//       "location": "path",
35521	//       "required": true,
35522	//       "type": "string"
35523	//     },
35524	//     "pageSize": {
35525	//       "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.",
35526	//       "format": "int32",
35527	//       "location": "query",
35528	//       "type": "integer"
35529	//     },
35530	//     "pageToken": {
35531	//       "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.",
35532	//       "location": "query",
35533	//       "type": "string"
35534	//     }
35535	//   },
35536	//   "path": "{merchantId}/repricingrules",
35537	//   "response": {
35538	//     "$ref": "ListRepricingRulesResponse"
35539	//   },
35540	//   "scopes": [
35541	//     "https://www.googleapis.com/auth/content"
35542	//   ]
35543	// }
35544
35545}
35546
35547// Pages invokes f for each page of results.
35548// A non-nil error returned from f will halt the iteration.
35549// The provided context supersedes any context provided to the Context method.
35550func (c *RepricingrulesListCall) Pages(ctx context.Context, f func(*ListRepricingRulesResponse) error) error {
35551	c.ctx_ = ctx
35552	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
35553	for {
35554		x, err := c.Do()
35555		if err != nil {
35556			return err
35557		}
35558		if err := f(x); err != nil {
35559			return err
35560		}
35561		if x.NextPageToken == "" {
35562			return nil
35563		}
35564		c.PageToken(x.NextPageToken)
35565	}
35566}
35567
35568// method id "content.repricingrules.patch":
35569
35570type RepricingrulesPatchCall struct {
35571	s             *APIService
35572	merchantId    int64
35573	ruleId        string
35574	repricingrule *RepricingRule
35575	urlParams_    gensupport.URLParams
35576	ctx_          context.Context
35577	header_       http.Header
35578}
35579
35580// Patch: Updates a repricing rule in your Merchant Center account. All
35581// mutable fields will be overwritten in each update request. In each
35582// update, you must provide all required mutable fields, or an error
35583// will be thrown. If you do not provide an optional field in the update
35584// request, if that field currently exists, it will be deleted from the
35585// rule.
35586//
35587// - merchantId: The id of the merchant who owns the repricing rule.
35588// - ruleId: The id of the rule to update.
35589func (r *RepricingrulesService) Patch(merchantId int64, ruleId string, repricingrule *RepricingRule) *RepricingrulesPatchCall {
35590	c := &RepricingrulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35591	c.merchantId = merchantId
35592	c.ruleId = ruleId
35593	c.repricingrule = repricingrule
35594	return c
35595}
35596
35597// Fields allows partial responses to be retrieved. See
35598// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35599// for more information.
35600func (c *RepricingrulesPatchCall) Fields(s ...googleapi.Field) *RepricingrulesPatchCall {
35601	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35602	return c
35603}
35604
35605// Context sets the context to be used in this call's Do method. Any
35606// pending HTTP request will be aborted if the provided context is
35607// canceled.
35608func (c *RepricingrulesPatchCall) Context(ctx context.Context) *RepricingrulesPatchCall {
35609	c.ctx_ = ctx
35610	return c
35611}
35612
35613// Header returns an http.Header that can be modified by the caller to
35614// add HTTP headers to the request.
35615func (c *RepricingrulesPatchCall) Header() http.Header {
35616	if c.header_ == nil {
35617		c.header_ = make(http.Header)
35618	}
35619	return c.header_
35620}
35621
35622func (c *RepricingrulesPatchCall) doRequest(alt string) (*http.Response, error) {
35623	reqHeaders := make(http.Header)
35624	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
35625	for k, v := range c.header_ {
35626		reqHeaders[k] = v
35627	}
35628	reqHeaders.Set("User-Agent", c.s.userAgent())
35629	var body io.Reader = nil
35630	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
35631	if err != nil {
35632		return nil, err
35633	}
35634	reqHeaders.Set("Content-Type", "application/json")
35635	c.urlParams_.Set("alt", alt)
35636	c.urlParams_.Set("prettyPrint", "false")
35637	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
35638	urls += "?" + c.urlParams_.Encode()
35639	req, err := http.NewRequest("PATCH", urls, body)
35640	if err != nil {
35641		return nil, err
35642	}
35643	req.Header = reqHeaders
35644	googleapi.Expand(req.URL, map[string]string{
35645		"merchantId": strconv.FormatInt(c.merchantId, 10),
35646		"ruleId":     c.ruleId,
35647	})
35648	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35649}
35650
35651// Do executes the "content.repricingrules.patch" call.
35652// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
35653// status code is an error. Response headers are in either
35654// *RepricingRule.ServerResponse.Header or (if a response was returned
35655// at all) in error.(*googleapi.Error).Header. Use
35656// googleapi.IsNotModified to check whether the returned error was
35657// because http.StatusNotModified was returned.
35658func (c *RepricingrulesPatchCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
35659	gensupport.SetOptions(c.urlParams_, opts...)
35660	res, err := c.doRequest("json")
35661	if res != nil && res.StatusCode == http.StatusNotModified {
35662		if res.Body != nil {
35663			res.Body.Close()
35664		}
35665		return nil, &googleapi.Error{
35666			Code:   res.StatusCode,
35667			Header: res.Header,
35668		}
35669	}
35670	if err != nil {
35671		return nil, err
35672	}
35673	defer googleapi.CloseBody(res)
35674	if err := googleapi.CheckResponse(res); err != nil {
35675		return nil, err
35676	}
35677	ret := &RepricingRule{
35678		ServerResponse: googleapi.ServerResponse{
35679			Header:         res.Header,
35680			HTTPStatusCode: res.StatusCode,
35681		},
35682	}
35683	target := &ret
35684	if err := gensupport.DecodeResponse(target, res); err != nil {
35685		return nil, err
35686	}
35687	return ret, nil
35688	// {
35689	//   "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.",
35690	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
35691	//   "httpMethod": "PATCH",
35692	//   "id": "content.repricingrules.patch",
35693	//   "parameterOrder": [
35694	//     "merchantId",
35695	//     "ruleId"
35696	//   ],
35697	//   "parameters": {
35698	//     "merchantId": {
35699	//       "description": "Required. The id of the merchant who owns the repricing rule.",
35700	//       "format": "int64",
35701	//       "location": "path",
35702	//       "required": true,
35703	//       "type": "string"
35704	//     },
35705	//     "ruleId": {
35706	//       "description": "Required. The id of the rule to update.",
35707	//       "location": "path",
35708	//       "required": true,
35709	//       "type": "string"
35710	//     }
35711	//   },
35712	//   "path": "{merchantId}/repricingrules/{ruleId}",
35713	//   "request": {
35714	//     "$ref": "RepricingRule"
35715	//   },
35716	//   "response": {
35717	//     "$ref": "RepricingRule"
35718	//   },
35719	//   "scopes": [
35720	//     "https://www.googleapis.com/auth/content"
35721	//   ]
35722	// }
35723
35724}
35725
35726// method id "content.repricingrules.repricingreports.list":
35727
35728type RepricingrulesRepricingreportsListCall struct {
35729	s            *APIService
35730	merchantId   int64
35731	ruleId       string
35732	urlParams_   gensupport.URLParams
35733	ifNoneMatch_ string
35734	ctx_         context.Context
35735	header_      http.Header
35736}
35737
35738// List: Lists the metrics report for a given Repricing rule.
35739//
35740// - merchantId: Id of the merchant who owns the Repricing rule.
35741// - ruleId: Id of the Repricing rule.
35742func (r *RepricingrulesRepricingreportsService) List(merchantId int64, ruleId string) *RepricingrulesRepricingreportsListCall {
35743	c := &RepricingrulesRepricingreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35744	c.merchantId = merchantId
35745	c.ruleId = ruleId
35746	return c
35747}
35748
35749// EndDate sets the optional parameter "endDate": Gets Repricing reports
35750// on and before this date in the merchant's timezone. You can only
35751// retrieve data up to 7 days ago (default) or earlier. Format:
35752// YYYY-MM-DD.
35753func (c *RepricingrulesRepricingreportsListCall) EndDate(endDate string) *RepricingrulesRepricingreportsListCall {
35754	c.urlParams_.Set("endDate", endDate)
35755	return c
35756}
35757
35758// PageSize sets the optional parameter "pageSize": Maximum number of
35759// daily reports to return. Each report includes data from a single
35760// 24-hour period. The page size defaults to 50 and values above 1000
35761// are coerced to 1000. This service may return fewer days than this
35762// value, for example, if the time between your start and end date is
35763// less than page size.
35764func (c *RepricingrulesRepricingreportsListCall) PageSize(pageSize int64) *RepricingrulesRepricingreportsListCall {
35765	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
35766	return c
35767}
35768
35769// PageToken sets the optional parameter "pageToken": Token (if
35770// provided) to retrieve the subsequent page. All other parameters must
35771// match the original call that provided the page token.
35772func (c *RepricingrulesRepricingreportsListCall) PageToken(pageToken string) *RepricingrulesRepricingreportsListCall {
35773	c.urlParams_.Set("pageToken", pageToken)
35774	return c
35775}
35776
35777// StartDate sets the optional parameter "startDate": Gets Repricing
35778// reports on and after this date in the merchant's timezone, up to one
35779// year ago. Do not use a start date later than 7 days ago (default).
35780// Format: YYYY-MM-DD.
35781func (c *RepricingrulesRepricingreportsListCall) StartDate(startDate string) *RepricingrulesRepricingreportsListCall {
35782	c.urlParams_.Set("startDate", startDate)
35783	return c
35784}
35785
35786// Fields allows partial responses to be retrieved. See
35787// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35788// for more information.
35789func (c *RepricingrulesRepricingreportsListCall) Fields(s ...googleapi.Field) *RepricingrulesRepricingreportsListCall {
35790	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35791	return c
35792}
35793
35794// IfNoneMatch sets the optional parameter which makes the operation
35795// fail if the object's ETag matches the given value. This is useful for
35796// getting updates only after the object has changed since the last
35797// request. Use googleapi.IsNotModified to check whether the response
35798// error from Do is the result of In-None-Match.
35799func (c *RepricingrulesRepricingreportsListCall) IfNoneMatch(entityTag string) *RepricingrulesRepricingreportsListCall {
35800	c.ifNoneMatch_ = entityTag
35801	return c
35802}
35803
35804// Context sets the context to be used in this call's Do method. Any
35805// pending HTTP request will be aborted if the provided context is
35806// canceled.
35807func (c *RepricingrulesRepricingreportsListCall) Context(ctx context.Context) *RepricingrulesRepricingreportsListCall {
35808	c.ctx_ = ctx
35809	return c
35810}
35811
35812// Header returns an http.Header that can be modified by the caller to
35813// add HTTP headers to the request.
35814func (c *RepricingrulesRepricingreportsListCall) Header() http.Header {
35815	if c.header_ == nil {
35816		c.header_ = make(http.Header)
35817	}
35818	return c.header_
35819}
35820
35821func (c *RepricingrulesRepricingreportsListCall) doRequest(alt string) (*http.Response, error) {
35822	reqHeaders := make(http.Header)
35823	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
35824	for k, v := range c.header_ {
35825		reqHeaders[k] = v
35826	}
35827	reqHeaders.Set("User-Agent", c.s.userAgent())
35828	if c.ifNoneMatch_ != "" {
35829		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35830	}
35831	var body io.Reader = nil
35832	c.urlParams_.Set("alt", alt)
35833	c.urlParams_.Set("prettyPrint", "false")
35834	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}/repricingreports")
35835	urls += "?" + c.urlParams_.Encode()
35836	req, err := http.NewRequest("GET", urls, body)
35837	if err != nil {
35838		return nil, err
35839	}
35840	req.Header = reqHeaders
35841	googleapi.Expand(req.URL, map[string]string{
35842		"merchantId": strconv.FormatInt(c.merchantId, 10),
35843		"ruleId":     c.ruleId,
35844	})
35845	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35846}
35847
35848// Do executes the "content.repricingrules.repricingreports.list" call.
35849// Exactly one of *ListRepricingRuleReportsResponse or error will be
35850// non-nil. Any non-2xx status code is an error. Response headers are in
35851// either *ListRepricingRuleReportsResponse.ServerResponse.Header or (if
35852// a response was returned at all) in error.(*googleapi.Error).Header.
35853// Use googleapi.IsNotModified to check whether the returned error was
35854// because http.StatusNotModified was returned.
35855func (c *RepricingrulesRepricingreportsListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRuleReportsResponse, error) {
35856	gensupport.SetOptions(c.urlParams_, opts...)
35857	res, err := c.doRequest("json")
35858	if res != nil && res.StatusCode == http.StatusNotModified {
35859		if res.Body != nil {
35860			res.Body.Close()
35861		}
35862		return nil, &googleapi.Error{
35863			Code:   res.StatusCode,
35864			Header: res.Header,
35865		}
35866	}
35867	if err != nil {
35868		return nil, err
35869	}
35870	defer googleapi.CloseBody(res)
35871	if err := googleapi.CheckResponse(res); err != nil {
35872		return nil, err
35873	}
35874	ret := &ListRepricingRuleReportsResponse{
35875		ServerResponse: googleapi.ServerResponse{
35876			Header:         res.Header,
35877			HTTPStatusCode: res.StatusCode,
35878		},
35879	}
35880	target := &ret
35881	if err := gensupport.DecodeResponse(target, res); err != nil {
35882		return nil, err
35883	}
35884	return ret, nil
35885	// {
35886	//   "description": "Lists the metrics report for a given Repricing rule.",
35887	//   "flatPath": "{merchantId}/repricingrules/{ruleId}/repricingreports",
35888	//   "httpMethod": "GET",
35889	//   "id": "content.repricingrules.repricingreports.list",
35890	//   "parameterOrder": [
35891	//     "merchantId",
35892	//     "ruleId"
35893	//   ],
35894	//   "parameters": {
35895	//     "endDate": {
35896	//       "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.",
35897	//       "location": "query",
35898	//       "type": "string"
35899	//     },
35900	//     "merchantId": {
35901	//       "description": "Required. Id of the merchant who owns the Repricing rule.",
35902	//       "format": "int64",
35903	//       "location": "path",
35904	//       "required": true,
35905	//       "type": "string"
35906	//     },
35907	//     "pageSize": {
35908	//       "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.",
35909	//       "format": "int32",
35910	//       "location": "query",
35911	//       "type": "integer"
35912	//     },
35913	//     "pageToken": {
35914	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
35915	//       "location": "query",
35916	//       "type": "string"
35917	//     },
35918	//     "ruleId": {
35919	//       "description": "Required. Id of the Repricing rule.",
35920	//       "location": "path",
35921	//       "required": true,
35922	//       "type": "string"
35923	//     },
35924	//     "startDate": {
35925	//       "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.",
35926	//       "location": "query",
35927	//       "type": "string"
35928	//     }
35929	//   },
35930	//   "path": "{merchantId}/repricingrules/{ruleId}/repricingreports",
35931	//   "response": {
35932	//     "$ref": "ListRepricingRuleReportsResponse"
35933	//   },
35934	//   "scopes": [
35935	//     "https://www.googleapis.com/auth/content"
35936	//   ]
35937	// }
35938
35939}
35940
35941// Pages invokes f for each page of results.
35942// A non-nil error returned from f will halt the iteration.
35943// The provided context supersedes any context provided to the Context method.
35944func (c *RepricingrulesRepricingreportsListCall) Pages(ctx context.Context, f func(*ListRepricingRuleReportsResponse) error) error {
35945	c.ctx_ = ctx
35946	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
35947	for {
35948		x, err := c.Do()
35949		if err != nil {
35950			return err
35951		}
35952		if err := f(x); err != nil {
35953			return err
35954		}
35955		if x.NextPageToken == "" {
35956			return nil
35957		}
35958		c.PageToken(x.NextPageToken)
35959	}
35960}
35961
35962// method id "content.returnaddress.custombatch":
35963
35964type ReturnaddressCustombatchCall struct {
35965	s                               *APIService
35966	returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest
35967	urlParams_                      gensupport.URLParams
35968	ctx_                            context.Context
35969	header_                         http.Header
35970}
35971
35972// Custombatch: Batches multiple return address related calls in a
35973// single request.
35974func (r *ReturnaddressService) Custombatch(returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest) *ReturnaddressCustombatchCall {
35975	c := &ReturnaddressCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35976	c.returnaddresscustombatchrequest = returnaddresscustombatchrequest
35977	return c
35978}
35979
35980// Fields allows partial responses to be retrieved. See
35981// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35982// for more information.
35983func (c *ReturnaddressCustombatchCall) Fields(s ...googleapi.Field) *ReturnaddressCustombatchCall {
35984	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35985	return c
35986}
35987
35988// Context sets the context to be used in this call's Do method. Any
35989// pending HTTP request will be aborted if the provided context is
35990// canceled.
35991func (c *ReturnaddressCustombatchCall) Context(ctx context.Context) *ReturnaddressCustombatchCall {
35992	c.ctx_ = ctx
35993	return c
35994}
35995
35996// Header returns an http.Header that can be modified by the caller to
35997// add HTTP headers to the request.
35998func (c *ReturnaddressCustombatchCall) Header() http.Header {
35999	if c.header_ == nil {
36000		c.header_ = make(http.Header)
36001	}
36002	return c.header_
36003}
36004
36005func (c *ReturnaddressCustombatchCall) doRequest(alt string) (*http.Response, error) {
36006	reqHeaders := make(http.Header)
36007	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
36008	for k, v := range c.header_ {
36009		reqHeaders[k] = v
36010	}
36011	reqHeaders.Set("User-Agent", c.s.userAgent())
36012	var body io.Reader = nil
36013	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddresscustombatchrequest)
36014	if err != nil {
36015		return nil, err
36016	}
36017	reqHeaders.Set("Content-Type", "application/json")
36018	c.urlParams_.Set("alt", alt)
36019	c.urlParams_.Set("prettyPrint", "false")
36020	urls := googleapi.ResolveRelative(c.s.BasePath, "returnaddress/batch")
36021	urls += "?" + c.urlParams_.Encode()
36022	req, err := http.NewRequest("POST", urls, body)
36023	if err != nil {
36024		return nil, err
36025	}
36026	req.Header = reqHeaders
36027	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36028}
36029
36030// Do executes the "content.returnaddress.custombatch" call.
36031// Exactly one of *ReturnaddressCustomBatchResponse or error will be
36032// non-nil. Any non-2xx status code is an error. Response headers are in
36033// either *ReturnaddressCustomBatchResponse.ServerResponse.Header or (if
36034// a response was returned at all) in error.(*googleapi.Error).Header.
36035// Use googleapi.IsNotModified to check whether the returned error was
36036// because http.StatusNotModified was returned.
36037func (c *ReturnaddressCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnaddressCustomBatchResponse, error) {
36038	gensupport.SetOptions(c.urlParams_, opts...)
36039	res, err := c.doRequest("json")
36040	if res != nil && res.StatusCode == http.StatusNotModified {
36041		if res.Body != nil {
36042			res.Body.Close()
36043		}
36044		return nil, &googleapi.Error{
36045			Code:   res.StatusCode,
36046			Header: res.Header,
36047		}
36048	}
36049	if err != nil {
36050		return nil, err
36051	}
36052	defer googleapi.CloseBody(res)
36053	if err := googleapi.CheckResponse(res); err != nil {
36054		return nil, err
36055	}
36056	ret := &ReturnaddressCustomBatchResponse{
36057		ServerResponse: googleapi.ServerResponse{
36058			Header:         res.Header,
36059			HTTPStatusCode: res.StatusCode,
36060		},
36061	}
36062	target := &ret
36063	if err := gensupport.DecodeResponse(target, res); err != nil {
36064		return nil, err
36065	}
36066	return ret, nil
36067	// {
36068	//   "description": "Batches multiple return address related calls in a single request.",
36069	//   "flatPath": "returnaddress/batch",
36070	//   "httpMethod": "POST",
36071	//   "id": "content.returnaddress.custombatch",
36072	//   "parameterOrder": [],
36073	//   "parameters": {},
36074	//   "path": "returnaddress/batch",
36075	//   "request": {
36076	//     "$ref": "ReturnaddressCustomBatchRequest"
36077	//   },
36078	//   "response": {
36079	//     "$ref": "ReturnaddressCustomBatchResponse"
36080	//   },
36081	//   "scopes": [
36082	//     "https://www.googleapis.com/auth/content"
36083	//   ]
36084	// }
36085
36086}
36087
36088// method id "content.returnaddress.delete":
36089
36090type ReturnaddressDeleteCall struct {
36091	s               *APIService
36092	merchantId      uint64
36093	returnAddressId string
36094	urlParams_      gensupport.URLParams
36095	ctx_            context.Context
36096	header_         http.Header
36097}
36098
36099// Delete: Deletes a return address for the given Merchant Center
36100// account.
36101//
36102// - merchantId: The Merchant Center account from which to delete the
36103//   given return address.
36104// - returnAddressId: Return address ID generated by Google.
36105func (r *ReturnaddressService) Delete(merchantId uint64, returnAddressId string) *ReturnaddressDeleteCall {
36106	c := &ReturnaddressDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36107	c.merchantId = merchantId
36108	c.returnAddressId = returnAddressId
36109	return c
36110}
36111
36112// Fields allows partial responses to be retrieved. See
36113// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36114// for more information.
36115func (c *ReturnaddressDeleteCall) Fields(s ...googleapi.Field) *ReturnaddressDeleteCall {
36116	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36117	return c
36118}
36119
36120// Context sets the context to be used in this call's Do method. Any
36121// pending HTTP request will be aborted if the provided context is
36122// canceled.
36123func (c *ReturnaddressDeleteCall) Context(ctx context.Context) *ReturnaddressDeleteCall {
36124	c.ctx_ = ctx
36125	return c
36126}
36127
36128// Header returns an http.Header that can be modified by the caller to
36129// add HTTP headers to the request.
36130func (c *ReturnaddressDeleteCall) Header() http.Header {
36131	if c.header_ == nil {
36132		c.header_ = make(http.Header)
36133	}
36134	return c.header_
36135}
36136
36137func (c *ReturnaddressDeleteCall) doRequest(alt string) (*http.Response, error) {
36138	reqHeaders := make(http.Header)
36139	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
36140	for k, v := range c.header_ {
36141		reqHeaders[k] = v
36142	}
36143	reqHeaders.Set("User-Agent", c.s.userAgent())
36144	var body io.Reader = nil
36145	c.urlParams_.Set("alt", alt)
36146	c.urlParams_.Set("prettyPrint", "false")
36147	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
36148	urls += "?" + c.urlParams_.Encode()
36149	req, err := http.NewRequest("DELETE", urls, body)
36150	if err != nil {
36151		return nil, err
36152	}
36153	req.Header = reqHeaders
36154	googleapi.Expand(req.URL, map[string]string{
36155		"merchantId":      strconv.FormatUint(c.merchantId, 10),
36156		"returnAddressId": c.returnAddressId,
36157	})
36158	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36159}
36160
36161// Do executes the "content.returnaddress.delete" call.
36162func (c *ReturnaddressDeleteCall) Do(opts ...googleapi.CallOption) error {
36163	gensupport.SetOptions(c.urlParams_, opts...)
36164	res, err := c.doRequest("json")
36165	if err != nil {
36166		return err
36167	}
36168	defer googleapi.CloseBody(res)
36169	if err := googleapi.CheckResponse(res); err != nil {
36170		return err
36171	}
36172	return nil
36173	// {
36174	//   "description": "Deletes a return address for the given Merchant Center account.",
36175	//   "flatPath": "{merchantId}/returnaddress/{returnAddressId}",
36176	//   "httpMethod": "DELETE",
36177	//   "id": "content.returnaddress.delete",
36178	//   "parameterOrder": [
36179	//     "merchantId",
36180	//     "returnAddressId"
36181	//   ],
36182	//   "parameters": {
36183	//     "merchantId": {
36184	//       "description": "The Merchant Center account from which to delete the given return address.",
36185	//       "format": "uint64",
36186	//       "location": "path",
36187	//       "required": true,
36188	//       "type": "string"
36189	//     },
36190	//     "returnAddressId": {
36191	//       "description": "Return address ID generated by Google.",
36192	//       "location": "path",
36193	//       "required": true,
36194	//       "type": "string"
36195	//     }
36196	//   },
36197	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
36198	//   "scopes": [
36199	//     "https://www.googleapis.com/auth/content"
36200	//   ]
36201	// }
36202
36203}
36204
36205// method id "content.returnaddress.get":
36206
36207type ReturnaddressGetCall struct {
36208	s               *APIService
36209	merchantId      uint64
36210	returnAddressId string
36211	urlParams_      gensupport.URLParams
36212	ifNoneMatch_    string
36213	ctx_            context.Context
36214	header_         http.Header
36215}
36216
36217// Get: Gets a return address of the Merchant Center account.
36218//
36219// - merchantId: The Merchant Center account to get a return address
36220//   for.
36221// - returnAddressId: Return address ID generated by Google.
36222func (r *ReturnaddressService) Get(merchantId uint64, returnAddressId string) *ReturnaddressGetCall {
36223	c := &ReturnaddressGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36224	c.merchantId = merchantId
36225	c.returnAddressId = returnAddressId
36226	return c
36227}
36228
36229// Fields allows partial responses to be retrieved. See
36230// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36231// for more information.
36232func (c *ReturnaddressGetCall) Fields(s ...googleapi.Field) *ReturnaddressGetCall {
36233	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36234	return c
36235}
36236
36237// IfNoneMatch sets the optional parameter which makes the operation
36238// fail if the object's ETag matches the given value. This is useful for
36239// getting updates only after the object has changed since the last
36240// request. Use googleapi.IsNotModified to check whether the response
36241// error from Do is the result of In-None-Match.
36242func (c *ReturnaddressGetCall) IfNoneMatch(entityTag string) *ReturnaddressGetCall {
36243	c.ifNoneMatch_ = entityTag
36244	return c
36245}
36246
36247// Context sets the context to be used in this call's Do method. Any
36248// pending HTTP request will be aborted if the provided context is
36249// canceled.
36250func (c *ReturnaddressGetCall) Context(ctx context.Context) *ReturnaddressGetCall {
36251	c.ctx_ = ctx
36252	return c
36253}
36254
36255// Header returns an http.Header that can be modified by the caller to
36256// add HTTP headers to the request.
36257func (c *ReturnaddressGetCall) Header() http.Header {
36258	if c.header_ == nil {
36259		c.header_ = make(http.Header)
36260	}
36261	return c.header_
36262}
36263
36264func (c *ReturnaddressGetCall) doRequest(alt string) (*http.Response, error) {
36265	reqHeaders := make(http.Header)
36266	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
36267	for k, v := range c.header_ {
36268		reqHeaders[k] = v
36269	}
36270	reqHeaders.Set("User-Agent", c.s.userAgent())
36271	if c.ifNoneMatch_ != "" {
36272		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36273	}
36274	var body io.Reader = nil
36275	c.urlParams_.Set("alt", alt)
36276	c.urlParams_.Set("prettyPrint", "false")
36277	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
36278	urls += "?" + c.urlParams_.Encode()
36279	req, err := http.NewRequest("GET", urls, body)
36280	if err != nil {
36281		return nil, err
36282	}
36283	req.Header = reqHeaders
36284	googleapi.Expand(req.URL, map[string]string{
36285		"merchantId":      strconv.FormatUint(c.merchantId, 10),
36286		"returnAddressId": c.returnAddressId,
36287	})
36288	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36289}
36290
36291// Do executes the "content.returnaddress.get" call.
36292// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
36293// status code is an error. Response headers are in either
36294// *ReturnAddress.ServerResponse.Header or (if a response was returned
36295// at all) in error.(*googleapi.Error).Header. Use
36296// googleapi.IsNotModified to check whether the returned error was
36297// because http.StatusNotModified was returned.
36298func (c *ReturnaddressGetCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
36299	gensupport.SetOptions(c.urlParams_, opts...)
36300	res, err := c.doRequest("json")
36301	if res != nil && res.StatusCode == http.StatusNotModified {
36302		if res.Body != nil {
36303			res.Body.Close()
36304		}
36305		return nil, &googleapi.Error{
36306			Code:   res.StatusCode,
36307			Header: res.Header,
36308		}
36309	}
36310	if err != nil {
36311		return nil, err
36312	}
36313	defer googleapi.CloseBody(res)
36314	if err := googleapi.CheckResponse(res); err != nil {
36315		return nil, err
36316	}
36317	ret := &ReturnAddress{
36318		ServerResponse: googleapi.ServerResponse{
36319			Header:         res.Header,
36320			HTTPStatusCode: res.StatusCode,
36321		},
36322	}
36323	target := &ret
36324	if err := gensupport.DecodeResponse(target, res); err != nil {
36325		return nil, err
36326	}
36327	return ret, nil
36328	// {
36329	//   "description": "Gets a return address of the Merchant Center account.",
36330	//   "flatPath": "{merchantId}/returnaddress/{returnAddressId}",
36331	//   "httpMethod": "GET",
36332	//   "id": "content.returnaddress.get",
36333	//   "parameterOrder": [
36334	//     "merchantId",
36335	//     "returnAddressId"
36336	//   ],
36337	//   "parameters": {
36338	//     "merchantId": {
36339	//       "description": "The Merchant Center account to get a return address for.",
36340	//       "format": "uint64",
36341	//       "location": "path",
36342	//       "required": true,
36343	//       "type": "string"
36344	//     },
36345	//     "returnAddressId": {
36346	//       "description": "Return address ID generated by Google.",
36347	//       "location": "path",
36348	//       "required": true,
36349	//       "type": "string"
36350	//     }
36351	//   },
36352	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
36353	//   "response": {
36354	//     "$ref": "ReturnAddress"
36355	//   },
36356	//   "scopes": [
36357	//     "https://www.googleapis.com/auth/content"
36358	//   ]
36359	// }
36360
36361}
36362
36363// method id "content.returnaddress.insert":
36364
36365type ReturnaddressInsertCall struct {
36366	s             *APIService
36367	merchantId    uint64
36368	returnaddress *ReturnAddress
36369	urlParams_    gensupport.URLParams
36370	ctx_          context.Context
36371	header_       http.Header
36372}
36373
36374// Insert: Inserts a return address for the Merchant Center account.
36375//
36376// - merchantId: The Merchant Center account to insert a return address
36377//   for.
36378func (r *ReturnaddressService) Insert(merchantId uint64, returnaddress *ReturnAddress) *ReturnaddressInsertCall {
36379	c := &ReturnaddressInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36380	c.merchantId = merchantId
36381	c.returnaddress = returnaddress
36382	return c
36383}
36384
36385// Fields allows partial responses to be retrieved. See
36386// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36387// for more information.
36388func (c *ReturnaddressInsertCall) Fields(s ...googleapi.Field) *ReturnaddressInsertCall {
36389	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36390	return c
36391}
36392
36393// Context sets the context to be used in this call's Do method. Any
36394// pending HTTP request will be aborted if the provided context is
36395// canceled.
36396func (c *ReturnaddressInsertCall) Context(ctx context.Context) *ReturnaddressInsertCall {
36397	c.ctx_ = ctx
36398	return c
36399}
36400
36401// Header returns an http.Header that can be modified by the caller to
36402// add HTTP headers to the request.
36403func (c *ReturnaddressInsertCall) Header() http.Header {
36404	if c.header_ == nil {
36405		c.header_ = make(http.Header)
36406	}
36407	return c.header_
36408}
36409
36410func (c *ReturnaddressInsertCall) doRequest(alt string) (*http.Response, error) {
36411	reqHeaders := make(http.Header)
36412	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
36413	for k, v := range c.header_ {
36414		reqHeaders[k] = v
36415	}
36416	reqHeaders.Set("User-Agent", c.s.userAgent())
36417	var body io.Reader = nil
36418	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddress)
36419	if err != nil {
36420		return nil, err
36421	}
36422	reqHeaders.Set("Content-Type", "application/json")
36423	c.urlParams_.Set("alt", alt)
36424	c.urlParams_.Set("prettyPrint", "false")
36425	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
36426	urls += "?" + c.urlParams_.Encode()
36427	req, err := http.NewRequest("POST", urls, body)
36428	if err != nil {
36429		return nil, err
36430	}
36431	req.Header = reqHeaders
36432	googleapi.Expand(req.URL, map[string]string{
36433		"merchantId": strconv.FormatUint(c.merchantId, 10),
36434	})
36435	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36436}
36437
36438// Do executes the "content.returnaddress.insert" call.
36439// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
36440// status code is an error. Response headers are in either
36441// *ReturnAddress.ServerResponse.Header or (if a response was returned
36442// at all) in error.(*googleapi.Error).Header. Use
36443// googleapi.IsNotModified to check whether the returned error was
36444// because http.StatusNotModified was returned.
36445func (c *ReturnaddressInsertCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
36446	gensupport.SetOptions(c.urlParams_, opts...)
36447	res, err := c.doRequest("json")
36448	if res != nil && res.StatusCode == http.StatusNotModified {
36449		if res.Body != nil {
36450			res.Body.Close()
36451		}
36452		return nil, &googleapi.Error{
36453			Code:   res.StatusCode,
36454			Header: res.Header,
36455		}
36456	}
36457	if err != nil {
36458		return nil, err
36459	}
36460	defer googleapi.CloseBody(res)
36461	if err := googleapi.CheckResponse(res); err != nil {
36462		return nil, err
36463	}
36464	ret := &ReturnAddress{
36465		ServerResponse: googleapi.ServerResponse{
36466			Header:         res.Header,
36467			HTTPStatusCode: res.StatusCode,
36468		},
36469	}
36470	target := &ret
36471	if err := gensupport.DecodeResponse(target, res); err != nil {
36472		return nil, err
36473	}
36474	return ret, nil
36475	// {
36476	//   "description": "Inserts a return address for the Merchant Center account.",
36477	//   "flatPath": "{merchantId}/returnaddress",
36478	//   "httpMethod": "POST",
36479	//   "id": "content.returnaddress.insert",
36480	//   "parameterOrder": [
36481	//     "merchantId"
36482	//   ],
36483	//   "parameters": {
36484	//     "merchantId": {
36485	//       "description": "The Merchant Center account to insert a return address for.",
36486	//       "format": "uint64",
36487	//       "location": "path",
36488	//       "required": true,
36489	//       "type": "string"
36490	//     }
36491	//   },
36492	//   "path": "{merchantId}/returnaddress",
36493	//   "request": {
36494	//     "$ref": "ReturnAddress"
36495	//   },
36496	//   "response": {
36497	//     "$ref": "ReturnAddress"
36498	//   },
36499	//   "scopes": [
36500	//     "https://www.googleapis.com/auth/content"
36501	//   ]
36502	// }
36503
36504}
36505
36506// method id "content.returnaddress.list":
36507
36508type ReturnaddressListCall struct {
36509	s            *APIService
36510	merchantId   uint64
36511	urlParams_   gensupport.URLParams
36512	ifNoneMatch_ string
36513	ctx_         context.Context
36514	header_      http.Header
36515}
36516
36517// List: Lists the return addresses of the Merchant Center account.
36518//
36519// - merchantId: The Merchant Center account to list return addresses
36520//   for.
36521func (r *ReturnaddressService) List(merchantId uint64) *ReturnaddressListCall {
36522	c := &ReturnaddressListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36523	c.merchantId = merchantId
36524	return c
36525}
36526
36527// Country sets the optional parameter "country": List only return
36528// addresses applicable to the given country of sale. When omitted, all
36529// return addresses are listed.
36530func (c *ReturnaddressListCall) Country(country string) *ReturnaddressListCall {
36531	c.urlParams_.Set("country", country)
36532	return c
36533}
36534
36535// MaxResults sets the optional parameter "maxResults": The maximum
36536// number of addresses in the response, used for paging.
36537func (c *ReturnaddressListCall) MaxResults(maxResults int64) *ReturnaddressListCall {
36538	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
36539	return c
36540}
36541
36542// PageToken sets the optional parameter "pageToken": The token returned
36543// by the previous request.
36544func (c *ReturnaddressListCall) PageToken(pageToken string) *ReturnaddressListCall {
36545	c.urlParams_.Set("pageToken", pageToken)
36546	return c
36547}
36548
36549// Fields allows partial responses to be retrieved. See
36550// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36551// for more information.
36552func (c *ReturnaddressListCall) Fields(s ...googleapi.Field) *ReturnaddressListCall {
36553	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36554	return c
36555}
36556
36557// IfNoneMatch sets the optional parameter which makes the operation
36558// fail if the object's ETag matches the given value. This is useful for
36559// getting updates only after the object has changed since the last
36560// request. Use googleapi.IsNotModified to check whether the response
36561// error from Do is the result of In-None-Match.
36562func (c *ReturnaddressListCall) IfNoneMatch(entityTag string) *ReturnaddressListCall {
36563	c.ifNoneMatch_ = entityTag
36564	return c
36565}
36566
36567// Context sets the context to be used in this call's Do method. Any
36568// pending HTTP request will be aborted if the provided context is
36569// canceled.
36570func (c *ReturnaddressListCall) Context(ctx context.Context) *ReturnaddressListCall {
36571	c.ctx_ = ctx
36572	return c
36573}
36574
36575// Header returns an http.Header that can be modified by the caller to
36576// add HTTP headers to the request.
36577func (c *ReturnaddressListCall) Header() http.Header {
36578	if c.header_ == nil {
36579		c.header_ = make(http.Header)
36580	}
36581	return c.header_
36582}
36583
36584func (c *ReturnaddressListCall) doRequest(alt string) (*http.Response, error) {
36585	reqHeaders := make(http.Header)
36586	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
36587	for k, v := range c.header_ {
36588		reqHeaders[k] = v
36589	}
36590	reqHeaders.Set("User-Agent", c.s.userAgent())
36591	if c.ifNoneMatch_ != "" {
36592		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36593	}
36594	var body io.Reader = nil
36595	c.urlParams_.Set("alt", alt)
36596	c.urlParams_.Set("prettyPrint", "false")
36597	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
36598	urls += "?" + c.urlParams_.Encode()
36599	req, err := http.NewRequest("GET", urls, body)
36600	if err != nil {
36601		return nil, err
36602	}
36603	req.Header = reqHeaders
36604	googleapi.Expand(req.URL, map[string]string{
36605		"merchantId": strconv.FormatUint(c.merchantId, 10),
36606	})
36607	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36608}
36609
36610// Do executes the "content.returnaddress.list" call.
36611// Exactly one of *ReturnaddressListResponse or error will be non-nil.
36612// Any non-2xx status code is an error. Response headers are in either
36613// *ReturnaddressListResponse.ServerResponse.Header or (if a response
36614// was returned at all) in error.(*googleapi.Error).Header. Use
36615// googleapi.IsNotModified to check whether the returned error was
36616// because http.StatusNotModified was returned.
36617func (c *ReturnaddressListCall) Do(opts ...googleapi.CallOption) (*ReturnaddressListResponse, error) {
36618	gensupport.SetOptions(c.urlParams_, opts...)
36619	res, err := c.doRequest("json")
36620	if res != nil && res.StatusCode == http.StatusNotModified {
36621		if res.Body != nil {
36622			res.Body.Close()
36623		}
36624		return nil, &googleapi.Error{
36625			Code:   res.StatusCode,
36626			Header: res.Header,
36627		}
36628	}
36629	if err != nil {
36630		return nil, err
36631	}
36632	defer googleapi.CloseBody(res)
36633	if err := googleapi.CheckResponse(res); err != nil {
36634		return nil, err
36635	}
36636	ret := &ReturnaddressListResponse{
36637		ServerResponse: googleapi.ServerResponse{
36638			Header:         res.Header,
36639			HTTPStatusCode: res.StatusCode,
36640		},
36641	}
36642	target := &ret
36643	if err := gensupport.DecodeResponse(target, res); err != nil {
36644		return nil, err
36645	}
36646	return ret, nil
36647	// {
36648	//   "description": "Lists the return addresses of the Merchant Center account.",
36649	//   "flatPath": "{merchantId}/returnaddress",
36650	//   "httpMethod": "GET",
36651	//   "id": "content.returnaddress.list",
36652	//   "parameterOrder": [
36653	//     "merchantId"
36654	//   ],
36655	//   "parameters": {
36656	//     "country": {
36657	//       "description": "List only return addresses applicable to the given country of sale. When omitted, all return addresses are listed.",
36658	//       "location": "query",
36659	//       "type": "string"
36660	//     },
36661	//     "maxResults": {
36662	//       "description": "The maximum number of addresses in the response, used for paging.",
36663	//       "format": "uint32",
36664	//       "location": "query",
36665	//       "type": "integer"
36666	//     },
36667	//     "merchantId": {
36668	//       "description": "The Merchant Center account to list return addresses for.",
36669	//       "format": "uint64",
36670	//       "location": "path",
36671	//       "required": true,
36672	//       "type": "string"
36673	//     },
36674	//     "pageToken": {
36675	//       "description": "The token returned by the previous request.",
36676	//       "location": "query",
36677	//       "type": "string"
36678	//     }
36679	//   },
36680	//   "path": "{merchantId}/returnaddress",
36681	//   "response": {
36682	//     "$ref": "ReturnaddressListResponse"
36683	//   },
36684	//   "scopes": [
36685	//     "https://www.googleapis.com/auth/content"
36686	//   ]
36687	// }
36688
36689}
36690
36691// Pages invokes f for each page of results.
36692// A non-nil error returned from f will halt the iteration.
36693// The provided context supersedes any context provided to the Context method.
36694func (c *ReturnaddressListCall) Pages(ctx context.Context, f func(*ReturnaddressListResponse) error) error {
36695	c.ctx_ = ctx
36696	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
36697	for {
36698		x, err := c.Do()
36699		if err != nil {
36700			return err
36701		}
36702		if err := f(x); err != nil {
36703			return err
36704		}
36705		if x.NextPageToken == "" {
36706			return nil
36707		}
36708		c.PageToken(x.NextPageToken)
36709	}
36710}
36711
36712// method id "content.returnpolicy.custombatch":
36713
36714type ReturnpolicyCustombatchCall struct {
36715	s                              *APIService
36716	returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest
36717	urlParams_                     gensupport.URLParams
36718	ctx_                           context.Context
36719	header_                        http.Header
36720}
36721
36722// Custombatch: Batches multiple return policy related calls in a single
36723// request.
36724func (r *ReturnpolicyService) Custombatch(returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest) *ReturnpolicyCustombatchCall {
36725	c := &ReturnpolicyCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36726	c.returnpolicycustombatchrequest = returnpolicycustombatchrequest
36727	return c
36728}
36729
36730// Fields allows partial responses to be retrieved. See
36731// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36732// for more information.
36733func (c *ReturnpolicyCustombatchCall) Fields(s ...googleapi.Field) *ReturnpolicyCustombatchCall {
36734	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36735	return c
36736}
36737
36738// Context sets the context to be used in this call's Do method. Any
36739// pending HTTP request will be aborted if the provided context is
36740// canceled.
36741func (c *ReturnpolicyCustombatchCall) Context(ctx context.Context) *ReturnpolicyCustombatchCall {
36742	c.ctx_ = ctx
36743	return c
36744}
36745
36746// Header returns an http.Header that can be modified by the caller to
36747// add HTTP headers to the request.
36748func (c *ReturnpolicyCustombatchCall) Header() http.Header {
36749	if c.header_ == nil {
36750		c.header_ = make(http.Header)
36751	}
36752	return c.header_
36753}
36754
36755func (c *ReturnpolicyCustombatchCall) doRequest(alt string) (*http.Response, error) {
36756	reqHeaders := make(http.Header)
36757	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
36758	for k, v := range c.header_ {
36759		reqHeaders[k] = v
36760	}
36761	reqHeaders.Set("User-Agent", c.s.userAgent())
36762	var body io.Reader = nil
36763	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicycustombatchrequest)
36764	if err != nil {
36765		return nil, err
36766	}
36767	reqHeaders.Set("Content-Type", "application/json")
36768	c.urlParams_.Set("alt", alt)
36769	c.urlParams_.Set("prettyPrint", "false")
36770	urls := googleapi.ResolveRelative(c.s.BasePath, "returnpolicy/batch")
36771	urls += "?" + c.urlParams_.Encode()
36772	req, err := http.NewRequest("POST", urls, body)
36773	if err != nil {
36774		return nil, err
36775	}
36776	req.Header = reqHeaders
36777	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36778}
36779
36780// Do executes the "content.returnpolicy.custombatch" call.
36781// Exactly one of *ReturnpolicyCustomBatchResponse or error will be
36782// non-nil. Any non-2xx status code is an error. Response headers are in
36783// either *ReturnpolicyCustomBatchResponse.ServerResponse.Header or (if
36784// a response was returned at all) in error.(*googleapi.Error).Header.
36785// Use googleapi.IsNotModified to check whether the returned error was
36786// because http.StatusNotModified was returned.
36787func (c *ReturnpolicyCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyCustomBatchResponse, error) {
36788	gensupport.SetOptions(c.urlParams_, opts...)
36789	res, err := c.doRequest("json")
36790	if res != nil && res.StatusCode == http.StatusNotModified {
36791		if res.Body != nil {
36792			res.Body.Close()
36793		}
36794		return nil, &googleapi.Error{
36795			Code:   res.StatusCode,
36796			Header: res.Header,
36797		}
36798	}
36799	if err != nil {
36800		return nil, err
36801	}
36802	defer googleapi.CloseBody(res)
36803	if err := googleapi.CheckResponse(res); err != nil {
36804		return nil, err
36805	}
36806	ret := &ReturnpolicyCustomBatchResponse{
36807		ServerResponse: googleapi.ServerResponse{
36808			Header:         res.Header,
36809			HTTPStatusCode: res.StatusCode,
36810		},
36811	}
36812	target := &ret
36813	if err := gensupport.DecodeResponse(target, res); err != nil {
36814		return nil, err
36815	}
36816	return ret, nil
36817	// {
36818	//   "description": "Batches multiple return policy related calls in a single request.",
36819	//   "flatPath": "returnpolicy/batch",
36820	//   "httpMethod": "POST",
36821	//   "id": "content.returnpolicy.custombatch",
36822	//   "parameterOrder": [],
36823	//   "parameters": {},
36824	//   "path": "returnpolicy/batch",
36825	//   "request": {
36826	//     "$ref": "ReturnpolicyCustomBatchRequest"
36827	//   },
36828	//   "response": {
36829	//     "$ref": "ReturnpolicyCustomBatchResponse"
36830	//   },
36831	//   "scopes": [
36832	//     "https://www.googleapis.com/auth/content"
36833	//   ]
36834	// }
36835
36836}
36837
36838// method id "content.returnpolicy.delete":
36839
36840type ReturnpolicyDeleteCall struct {
36841	s              *APIService
36842	merchantId     uint64
36843	returnPolicyId string
36844	urlParams_     gensupport.URLParams
36845	ctx_           context.Context
36846	header_        http.Header
36847}
36848
36849// Delete: Deletes a return policy for the given Merchant Center
36850// account.
36851//
36852// - merchantId: The Merchant Center account from which to delete the
36853//   given return policy.
36854// - returnPolicyId: Return policy ID generated by Google.
36855func (r *ReturnpolicyService) Delete(merchantId uint64, returnPolicyId string) *ReturnpolicyDeleteCall {
36856	c := &ReturnpolicyDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36857	c.merchantId = merchantId
36858	c.returnPolicyId = returnPolicyId
36859	return c
36860}
36861
36862// Fields allows partial responses to be retrieved. See
36863// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36864// for more information.
36865func (c *ReturnpolicyDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyDeleteCall {
36866	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36867	return c
36868}
36869
36870// Context sets the context to be used in this call's Do method. Any
36871// pending HTTP request will be aborted if the provided context is
36872// canceled.
36873func (c *ReturnpolicyDeleteCall) Context(ctx context.Context) *ReturnpolicyDeleteCall {
36874	c.ctx_ = ctx
36875	return c
36876}
36877
36878// Header returns an http.Header that can be modified by the caller to
36879// add HTTP headers to the request.
36880func (c *ReturnpolicyDeleteCall) Header() http.Header {
36881	if c.header_ == nil {
36882		c.header_ = make(http.Header)
36883	}
36884	return c.header_
36885}
36886
36887func (c *ReturnpolicyDeleteCall) doRequest(alt string) (*http.Response, error) {
36888	reqHeaders := make(http.Header)
36889	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
36890	for k, v := range c.header_ {
36891		reqHeaders[k] = v
36892	}
36893	reqHeaders.Set("User-Agent", c.s.userAgent())
36894	var body io.Reader = nil
36895	c.urlParams_.Set("alt", alt)
36896	c.urlParams_.Set("prettyPrint", "false")
36897	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
36898	urls += "?" + c.urlParams_.Encode()
36899	req, err := http.NewRequest("DELETE", urls, body)
36900	if err != nil {
36901		return nil, err
36902	}
36903	req.Header = reqHeaders
36904	googleapi.Expand(req.URL, map[string]string{
36905		"merchantId":     strconv.FormatUint(c.merchantId, 10),
36906		"returnPolicyId": c.returnPolicyId,
36907	})
36908	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36909}
36910
36911// Do executes the "content.returnpolicy.delete" call.
36912func (c *ReturnpolicyDeleteCall) Do(opts ...googleapi.CallOption) error {
36913	gensupport.SetOptions(c.urlParams_, opts...)
36914	res, err := c.doRequest("json")
36915	if err != nil {
36916		return err
36917	}
36918	defer googleapi.CloseBody(res)
36919	if err := googleapi.CheckResponse(res); err != nil {
36920		return err
36921	}
36922	return nil
36923	// {
36924	//   "description": "Deletes a return policy for the given Merchant Center account.",
36925	//   "flatPath": "{merchantId}/returnpolicy/{returnPolicyId}",
36926	//   "httpMethod": "DELETE",
36927	//   "id": "content.returnpolicy.delete",
36928	//   "parameterOrder": [
36929	//     "merchantId",
36930	//     "returnPolicyId"
36931	//   ],
36932	//   "parameters": {
36933	//     "merchantId": {
36934	//       "description": "The Merchant Center account from which to delete the given return policy.",
36935	//       "format": "uint64",
36936	//       "location": "path",
36937	//       "required": true,
36938	//       "type": "string"
36939	//     },
36940	//     "returnPolicyId": {
36941	//       "description": "Return policy ID generated by Google.",
36942	//       "location": "path",
36943	//       "required": true,
36944	//       "type": "string"
36945	//     }
36946	//   },
36947	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
36948	//   "scopes": [
36949	//     "https://www.googleapis.com/auth/content"
36950	//   ]
36951	// }
36952
36953}
36954
36955// method id "content.returnpolicy.get":
36956
36957type ReturnpolicyGetCall struct {
36958	s              *APIService
36959	merchantId     uint64
36960	returnPolicyId string
36961	urlParams_     gensupport.URLParams
36962	ifNoneMatch_   string
36963	ctx_           context.Context
36964	header_        http.Header
36965}
36966
36967// Get: Gets a return policy of the Merchant Center account.
36968//
36969// - merchantId: The Merchant Center account to get a return policy for.
36970// - returnPolicyId: Return policy ID generated by Google.
36971func (r *ReturnpolicyService) Get(merchantId uint64, returnPolicyId string) *ReturnpolicyGetCall {
36972	c := &ReturnpolicyGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36973	c.merchantId = merchantId
36974	c.returnPolicyId = returnPolicyId
36975	return c
36976}
36977
36978// Fields allows partial responses to be retrieved. See
36979// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36980// for more information.
36981func (c *ReturnpolicyGetCall) Fields(s ...googleapi.Field) *ReturnpolicyGetCall {
36982	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36983	return c
36984}
36985
36986// IfNoneMatch sets the optional parameter which makes the operation
36987// fail if the object's ETag matches the given value. This is useful for
36988// getting updates only after the object has changed since the last
36989// request. Use googleapi.IsNotModified to check whether the response
36990// error from Do is the result of In-None-Match.
36991func (c *ReturnpolicyGetCall) IfNoneMatch(entityTag string) *ReturnpolicyGetCall {
36992	c.ifNoneMatch_ = entityTag
36993	return c
36994}
36995
36996// Context sets the context to be used in this call's Do method. Any
36997// pending HTTP request will be aborted if the provided context is
36998// canceled.
36999func (c *ReturnpolicyGetCall) Context(ctx context.Context) *ReturnpolicyGetCall {
37000	c.ctx_ = ctx
37001	return c
37002}
37003
37004// Header returns an http.Header that can be modified by the caller to
37005// add HTTP headers to the request.
37006func (c *ReturnpolicyGetCall) Header() http.Header {
37007	if c.header_ == nil {
37008		c.header_ = make(http.Header)
37009	}
37010	return c.header_
37011}
37012
37013func (c *ReturnpolicyGetCall) doRequest(alt string) (*http.Response, error) {
37014	reqHeaders := make(http.Header)
37015	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
37016	for k, v := range c.header_ {
37017		reqHeaders[k] = v
37018	}
37019	reqHeaders.Set("User-Agent", c.s.userAgent())
37020	if c.ifNoneMatch_ != "" {
37021		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37022	}
37023	var body io.Reader = nil
37024	c.urlParams_.Set("alt", alt)
37025	c.urlParams_.Set("prettyPrint", "false")
37026	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
37027	urls += "?" + c.urlParams_.Encode()
37028	req, err := http.NewRequest("GET", urls, body)
37029	if err != nil {
37030		return nil, err
37031	}
37032	req.Header = reqHeaders
37033	googleapi.Expand(req.URL, map[string]string{
37034		"merchantId":     strconv.FormatUint(c.merchantId, 10),
37035		"returnPolicyId": c.returnPolicyId,
37036	})
37037	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37038}
37039
37040// Do executes the "content.returnpolicy.get" call.
37041// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
37042// status code is an error. Response headers are in either
37043// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
37044// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
37045// to check whether the returned error was because
37046// http.StatusNotModified was returned.
37047func (c *ReturnpolicyGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
37048	gensupport.SetOptions(c.urlParams_, opts...)
37049	res, err := c.doRequest("json")
37050	if res != nil && res.StatusCode == http.StatusNotModified {
37051		if res.Body != nil {
37052			res.Body.Close()
37053		}
37054		return nil, &googleapi.Error{
37055			Code:   res.StatusCode,
37056			Header: res.Header,
37057		}
37058	}
37059	if err != nil {
37060		return nil, err
37061	}
37062	defer googleapi.CloseBody(res)
37063	if err := googleapi.CheckResponse(res); err != nil {
37064		return nil, err
37065	}
37066	ret := &ReturnPolicy{
37067		ServerResponse: googleapi.ServerResponse{
37068			Header:         res.Header,
37069			HTTPStatusCode: res.StatusCode,
37070		},
37071	}
37072	target := &ret
37073	if err := gensupport.DecodeResponse(target, res); err != nil {
37074		return nil, err
37075	}
37076	return ret, nil
37077	// {
37078	//   "description": "Gets a return policy of the Merchant Center account.",
37079	//   "flatPath": "{merchantId}/returnpolicy/{returnPolicyId}",
37080	//   "httpMethod": "GET",
37081	//   "id": "content.returnpolicy.get",
37082	//   "parameterOrder": [
37083	//     "merchantId",
37084	//     "returnPolicyId"
37085	//   ],
37086	//   "parameters": {
37087	//     "merchantId": {
37088	//       "description": "The Merchant Center account to get a return policy for.",
37089	//       "format": "uint64",
37090	//       "location": "path",
37091	//       "required": true,
37092	//       "type": "string"
37093	//     },
37094	//     "returnPolicyId": {
37095	//       "description": "Return policy ID generated by Google.",
37096	//       "location": "path",
37097	//       "required": true,
37098	//       "type": "string"
37099	//     }
37100	//   },
37101	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
37102	//   "response": {
37103	//     "$ref": "ReturnPolicy"
37104	//   },
37105	//   "scopes": [
37106	//     "https://www.googleapis.com/auth/content"
37107	//   ]
37108	// }
37109
37110}
37111
37112// method id "content.returnpolicy.insert":
37113
37114type ReturnpolicyInsertCall struct {
37115	s            *APIService
37116	merchantId   uint64
37117	returnpolicy *ReturnPolicy
37118	urlParams_   gensupport.URLParams
37119	ctx_         context.Context
37120	header_      http.Header
37121}
37122
37123// Insert: Inserts a return policy for the Merchant Center account.
37124//
37125// - merchantId: The Merchant Center account to insert a return policy
37126//   for.
37127func (r *ReturnpolicyService) Insert(merchantId uint64, returnpolicy *ReturnPolicy) *ReturnpolicyInsertCall {
37128	c := &ReturnpolicyInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37129	c.merchantId = merchantId
37130	c.returnpolicy = returnpolicy
37131	return c
37132}
37133
37134// Fields allows partial responses to be retrieved. See
37135// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37136// for more information.
37137func (c *ReturnpolicyInsertCall) Fields(s ...googleapi.Field) *ReturnpolicyInsertCall {
37138	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37139	return c
37140}
37141
37142// Context sets the context to be used in this call's Do method. Any
37143// pending HTTP request will be aborted if the provided context is
37144// canceled.
37145func (c *ReturnpolicyInsertCall) Context(ctx context.Context) *ReturnpolicyInsertCall {
37146	c.ctx_ = ctx
37147	return c
37148}
37149
37150// Header returns an http.Header that can be modified by the caller to
37151// add HTTP headers to the request.
37152func (c *ReturnpolicyInsertCall) Header() http.Header {
37153	if c.header_ == nil {
37154		c.header_ = make(http.Header)
37155	}
37156	return c.header_
37157}
37158
37159func (c *ReturnpolicyInsertCall) doRequest(alt string) (*http.Response, error) {
37160	reqHeaders := make(http.Header)
37161	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
37162	for k, v := range c.header_ {
37163		reqHeaders[k] = v
37164	}
37165	reqHeaders.Set("User-Agent", c.s.userAgent())
37166	var body io.Reader = nil
37167	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicy)
37168	if err != nil {
37169		return nil, err
37170	}
37171	reqHeaders.Set("Content-Type", "application/json")
37172	c.urlParams_.Set("alt", alt)
37173	c.urlParams_.Set("prettyPrint", "false")
37174	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
37175	urls += "?" + c.urlParams_.Encode()
37176	req, err := http.NewRequest("POST", urls, body)
37177	if err != nil {
37178		return nil, err
37179	}
37180	req.Header = reqHeaders
37181	googleapi.Expand(req.URL, map[string]string{
37182		"merchantId": strconv.FormatUint(c.merchantId, 10),
37183	})
37184	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37185}
37186
37187// Do executes the "content.returnpolicy.insert" call.
37188// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
37189// status code is an error. Response headers are in either
37190// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
37191// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
37192// to check whether the returned error was because
37193// http.StatusNotModified was returned.
37194func (c *ReturnpolicyInsertCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
37195	gensupport.SetOptions(c.urlParams_, opts...)
37196	res, err := c.doRequest("json")
37197	if res != nil && res.StatusCode == http.StatusNotModified {
37198		if res.Body != nil {
37199			res.Body.Close()
37200		}
37201		return nil, &googleapi.Error{
37202			Code:   res.StatusCode,
37203			Header: res.Header,
37204		}
37205	}
37206	if err != nil {
37207		return nil, err
37208	}
37209	defer googleapi.CloseBody(res)
37210	if err := googleapi.CheckResponse(res); err != nil {
37211		return nil, err
37212	}
37213	ret := &ReturnPolicy{
37214		ServerResponse: googleapi.ServerResponse{
37215			Header:         res.Header,
37216			HTTPStatusCode: res.StatusCode,
37217		},
37218	}
37219	target := &ret
37220	if err := gensupport.DecodeResponse(target, res); err != nil {
37221		return nil, err
37222	}
37223	return ret, nil
37224	// {
37225	//   "description": "Inserts a return policy for the Merchant Center account.",
37226	//   "flatPath": "{merchantId}/returnpolicy",
37227	//   "httpMethod": "POST",
37228	//   "id": "content.returnpolicy.insert",
37229	//   "parameterOrder": [
37230	//     "merchantId"
37231	//   ],
37232	//   "parameters": {
37233	//     "merchantId": {
37234	//       "description": "The Merchant Center account to insert a return policy for.",
37235	//       "format": "uint64",
37236	//       "location": "path",
37237	//       "required": true,
37238	//       "type": "string"
37239	//     }
37240	//   },
37241	//   "path": "{merchantId}/returnpolicy",
37242	//   "request": {
37243	//     "$ref": "ReturnPolicy"
37244	//   },
37245	//   "response": {
37246	//     "$ref": "ReturnPolicy"
37247	//   },
37248	//   "scopes": [
37249	//     "https://www.googleapis.com/auth/content"
37250	//   ]
37251	// }
37252
37253}
37254
37255// method id "content.returnpolicy.list":
37256
37257type ReturnpolicyListCall struct {
37258	s            *APIService
37259	merchantId   uint64
37260	urlParams_   gensupport.URLParams
37261	ifNoneMatch_ string
37262	ctx_         context.Context
37263	header_      http.Header
37264}
37265
37266// List: Lists the return policies of the Merchant Center account.
37267//
37268// - merchantId: The Merchant Center account to list return policies
37269//   for.
37270func (r *ReturnpolicyService) List(merchantId uint64) *ReturnpolicyListCall {
37271	c := &ReturnpolicyListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37272	c.merchantId = merchantId
37273	return c
37274}
37275
37276// Fields allows partial responses to be retrieved. See
37277// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37278// for more information.
37279func (c *ReturnpolicyListCall) Fields(s ...googleapi.Field) *ReturnpolicyListCall {
37280	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37281	return c
37282}
37283
37284// IfNoneMatch sets the optional parameter which makes the operation
37285// fail if the object's ETag matches the given value. This is useful for
37286// getting updates only after the object has changed since the last
37287// request. Use googleapi.IsNotModified to check whether the response
37288// error from Do is the result of In-None-Match.
37289func (c *ReturnpolicyListCall) IfNoneMatch(entityTag string) *ReturnpolicyListCall {
37290	c.ifNoneMatch_ = entityTag
37291	return c
37292}
37293
37294// Context sets the context to be used in this call's Do method. Any
37295// pending HTTP request will be aborted if the provided context is
37296// canceled.
37297func (c *ReturnpolicyListCall) Context(ctx context.Context) *ReturnpolicyListCall {
37298	c.ctx_ = ctx
37299	return c
37300}
37301
37302// Header returns an http.Header that can be modified by the caller to
37303// add HTTP headers to the request.
37304func (c *ReturnpolicyListCall) Header() http.Header {
37305	if c.header_ == nil {
37306		c.header_ = make(http.Header)
37307	}
37308	return c.header_
37309}
37310
37311func (c *ReturnpolicyListCall) doRequest(alt string) (*http.Response, error) {
37312	reqHeaders := make(http.Header)
37313	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
37314	for k, v := range c.header_ {
37315		reqHeaders[k] = v
37316	}
37317	reqHeaders.Set("User-Agent", c.s.userAgent())
37318	if c.ifNoneMatch_ != "" {
37319		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37320	}
37321	var body io.Reader = nil
37322	c.urlParams_.Set("alt", alt)
37323	c.urlParams_.Set("prettyPrint", "false")
37324	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
37325	urls += "?" + c.urlParams_.Encode()
37326	req, err := http.NewRequest("GET", urls, body)
37327	if err != nil {
37328		return nil, err
37329	}
37330	req.Header = reqHeaders
37331	googleapi.Expand(req.URL, map[string]string{
37332		"merchantId": strconv.FormatUint(c.merchantId, 10),
37333	})
37334	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37335}
37336
37337// Do executes the "content.returnpolicy.list" call.
37338// Exactly one of *ReturnpolicyListResponse or error will be non-nil.
37339// Any non-2xx status code is an error. Response headers are in either
37340// *ReturnpolicyListResponse.ServerResponse.Header or (if a response was
37341// returned at all) in error.(*googleapi.Error).Header. Use
37342// googleapi.IsNotModified to check whether the returned error was
37343// because http.StatusNotModified was returned.
37344func (c *ReturnpolicyListCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyListResponse, error) {
37345	gensupport.SetOptions(c.urlParams_, opts...)
37346	res, err := c.doRequest("json")
37347	if res != nil && res.StatusCode == http.StatusNotModified {
37348		if res.Body != nil {
37349			res.Body.Close()
37350		}
37351		return nil, &googleapi.Error{
37352			Code:   res.StatusCode,
37353			Header: res.Header,
37354		}
37355	}
37356	if err != nil {
37357		return nil, err
37358	}
37359	defer googleapi.CloseBody(res)
37360	if err := googleapi.CheckResponse(res); err != nil {
37361		return nil, err
37362	}
37363	ret := &ReturnpolicyListResponse{
37364		ServerResponse: googleapi.ServerResponse{
37365			Header:         res.Header,
37366			HTTPStatusCode: res.StatusCode,
37367		},
37368	}
37369	target := &ret
37370	if err := gensupport.DecodeResponse(target, res); err != nil {
37371		return nil, err
37372	}
37373	return ret, nil
37374	// {
37375	//   "description": "Lists the return policies of the Merchant Center account.",
37376	//   "flatPath": "{merchantId}/returnpolicy",
37377	//   "httpMethod": "GET",
37378	//   "id": "content.returnpolicy.list",
37379	//   "parameterOrder": [
37380	//     "merchantId"
37381	//   ],
37382	//   "parameters": {
37383	//     "merchantId": {
37384	//       "description": "The Merchant Center account to list return policies for.",
37385	//       "format": "uint64",
37386	//       "location": "path",
37387	//       "required": true,
37388	//       "type": "string"
37389	//     }
37390	//   },
37391	//   "path": "{merchantId}/returnpolicy",
37392	//   "response": {
37393	//     "$ref": "ReturnpolicyListResponse"
37394	//   },
37395	//   "scopes": [
37396	//     "https://www.googleapis.com/auth/content"
37397	//   ]
37398	// }
37399
37400}
37401
37402// method id "content.returnpolicyonline.create":
37403
37404type ReturnpolicyonlineCreateCall struct {
37405	s                  *APIService
37406	merchantId         int64
37407	returnpolicyonline *ReturnPolicyOnline
37408	urlParams_         gensupport.URLParams
37409	ctx_               context.Context
37410	header_            http.Header
37411}
37412
37413// Create: Creates a new return policy.
37414//
37415// - merchantId: The id of the merchant for which to retrieve the return
37416//   policy online object.
37417func (r *ReturnpolicyonlineService) Create(merchantId int64, returnpolicyonline *ReturnPolicyOnline) *ReturnpolicyonlineCreateCall {
37418	c := &ReturnpolicyonlineCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37419	c.merchantId = merchantId
37420	c.returnpolicyonline = returnpolicyonline
37421	return c
37422}
37423
37424// Fields allows partial responses to be retrieved. See
37425// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37426// for more information.
37427func (c *ReturnpolicyonlineCreateCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineCreateCall {
37428	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37429	return c
37430}
37431
37432// Context sets the context to be used in this call's Do method. Any
37433// pending HTTP request will be aborted if the provided context is
37434// canceled.
37435func (c *ReturnpolicyonlineCreateCall) Context(ctx context.Context) *ReturnpolicyonlineCreateCall {
37436	c.ctx_ = ctx
37437	return c
37438}
37439
37440// Header returns an http.Header that can be modified by the caller to
37441// add HTTP headers to the request.
37442func (c *ReturnpolicyonlineCreateCall) Header() http.Header {
37443	if c.header_ == nil {
37444		c.header_ = make(http.Header)
37445	}
37446	return c.header_
37447}
37448
37449func (c *ReturnpolicyonlineCreateCall) doRequest(alt string) (*http.Response, error) {
37450	reqHeaders := make(http.Header)
37451	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
37452	for k, v := range c.header_ {
37453		reqHeaders[k] = v
37454	}
37455	reqHeaders.Set("User-Agent", c.s.userAgent())
37456	var body io.Reader = nil
37457	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicyonline)
37458	if err != nil {
37459		return nil, err
37460	}
37461	reqHeaders.Set("Content-Type", "application/json")
37462	c.urlParams_.Set("alt", alt)
37463	c.urlParams_.Set("prettyPrint", "false")
37464	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline")
37465	urls += "?" + c.urlParams_.Encode()
37466	req, err := http.NewRequest("POST", urls, body)
37467	if err != nil {
37468		return nil, err
37469	}
37470	req.Header = reqHeaders
37471	googleapi.Expand(req.URL, map[string]string{
37472		"merchantId": strconv.FormatInt(c.merchantId, 10),
37473	})
37474	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37475}
37476
37477// Do executes the "content.returnpolicyonline.create" call.
37478// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
37479// non-2xx status code is an error. Response headers are in either
37480// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
37481// returned at all) in error.(*googleapi.Error).Header. Use
37482// googleapi.IsNotModified to check whether the returned error was
37483// because http.StatusNotModified was returned.
37484func (c *ReturnpolicyonlineCreateCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
37485	gensupport.SetOptions(c.urlParams_, opts...)
37486	res, err := c.doRequest("json")
37487	if res != nil && res.StatusCode == http.StatusNotModified {
37488		if res.Body != nil {
37489			res.Body.Close()
37490		}
37491		return nil, &googleapi.Error{
37492			Code:   res.StatusCode,
37493			Header: res.Header,
37494		}
37495	}
37496	if err != nil {
37497		return nil, err
37498	}
37499	defer googleapi.CloseBody(res)
37500	if err := googleapi.CheckResponse(res); err != nil {
37501		return nil, err
37502	}
37503	ret := &ReturnPolicyOnline{
37504		ServerResponse: googleapi.ServerResponse{
37505			Header:         res.Header,
37506			HTTPStatusCode: res.StatusCode,
37507		},
37508	}
37509	target := &ret
37510	if err := gensupport.DecodeResponse(target, res); err != nil {
37511		return nil, err
37512	}
37513	return ret, nil
37514	// {
37515	//   "description": "Creates a new return policy.",
37516	//   "flatPath": "{merchantId}/returnpolicyonline",
37517	//   "httpMethod": "POST",
37518	//   "id": "content.returnpolicyonline.create",
37519	//   "parameterOrder": [
37520	//     "merchantId"
37521	//   ],
37522	//   "parameters": {
37523	//     "merchantId": {
37524	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
37525	//       "format": "int64",
37526	//       "location": "path",
37527	//       "required": true,
37528	//       "type": "string"
37529	//     }
37530	//   },
37531	//   "path": "{merchantId}/returnpolicyonline",
37532	//   "request": {
37533	//     "$ref": "ReturnPolicyOnline"
37534	//   },
37535	//   "response": {
37536	//     "$ref": "ReturnPolicyOnline"
37537	//   },
37538	//   "scopes": [
37539	//     "https://www.googleapis.com/auth/content"
37540	//   ]
37541	// }
37542
37543}
37544
37545// method id "content.returnpolicyonline.delete":
37546
37547type ReturnpolicyonlineDeleteCall struct {
37548	s              *APIService
37549	merchantId     int64
37550	returnPolicyId string
37551	urlParams_     gensupport.URLParams
37552	ctx_           context.Context
37553	header_        http.Header
37554}
37555
37556// Delete: Deletes an existing return policy.
37557//
37558// - merchantId: The id of the merchant for which to retrieve the return
37559//   policy online object.
37560// - returnPolicyId: The id of the return policy to delete.
37561func (r *ReturnpolicyonlineService) Delete(merchantId int64, returnPolicyId string) *ReturnpolicyonlineDeleteCall {
37562	c := &ReturnpolicyonlineDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37563	c.merchantId = merchantId
37564	c.returnPolicyId = returnPolicyId
37565	return c
37566}
37567
37568// Fields allows partial responses to be retrieved. See
37569// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37570// for more information.
37571func (c *ReturnpolicyonlineDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineDeleteCall {
37572	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37573	return c
37574}
37575
37576// Context sets the context to be used in this call's Do method. Any
37577// pending HTTP request will be aborted if the provided context is
37578// canceled.
37579func (c *ReturnpolicyonlineDeleteCall) Context(ctx context.Context) *ReturnpolicyonlineDeleteCall {
37580	c.ctx_ = ctx
37581	return c
37582}
37583
37584// Header returns an http.Header that can be modified by the caller to
37585// add HTTP headers to the request.
37586func (c *ReturnpolicyonlineDeleteCall) Header() http.Header {
37587	if c.header_ == nil {
37588		c.header_ = make(http.Header)
37589	}
37590	return c.header_
37591}
37592
37593func (c *ReturnpolicyonlineDeleteCall) doRequest(alt string) (*http.Response, error) {
37594	reqHeaders := make(http.Header)
37595	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
37596	for k, v := range c.header_ {
37597		reqHeaders[k] = v
37598	}
37599	reqHeaders.Set("User-Agent", c.s.userAgent())
37600	var body io.Reader = nil
37601	c.urlParams_.Set("alt", alt)
37602	c.urlParams_.Set("prettyPrint", "false")
37603	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
37604	urls += "?" + c.urlParams_.Encode()
37605	req, err := http.NewRequest("DELETE", urls, body)
37606	if err != nil {
37607		return nil, err
37608	}
37609	req.Header = reqHeaders
37610	googleapi.Expand(req.URL, map[string]string{
37611		"merchantId":     strconv.FormatInt(c.merchantId, 10),
37612		"returnPolicyId": c.returnPolicyId,
37613	})
37614	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37615}
37616
37617// Do executes the "content.returnpolicyonline.delete" call.
37618func (c *ReturnpolicyonlineDeleteCall) Do(opts ...googleapi.CallOption) error {
37619	gensupport.SetOptions(c.urlParams_, opts...)
37620	res, err := c.doRequest("json")
37621	if err != nil {
37622		return err
37623	}
37624	defer googleapi.CloseBody(res)
37625	if err := googleapi.CheckResponse(res); err != nil {
37626		return err
37627	}
37628	return nil
37629	// {
37630	//   "description": "Deletes an existing return policy.",
37631	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
37632	//   "httpMethod": "DELETE",
37633	//   "id": "content.returnpolicyonline.delete",
37634	//   "parameterOrder": [
37635	//     "merchantId",
37636	//     "returnPolicyId"
37637	//   ],
37638	//   "parameters": {
37639	//     "merchantId": {
37640	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
37641	//       "format": "int64",
37642	//       "location": "path",
37643	//       "required": true,
37644	//       "type": "string"
37645	//     },
37646	//     "returnPolicyId": {
37647	//       "description": "Required. The id of the return policy to delete.",
37648	//       "location": "path",
37649	//       "required": true,
37650	//       "type": "string"
37651	//     }
37652	//   },
37653	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
37654	//   "scopes": [
37655	//     "https://www.googleapis.com/auth/content"
37656	//   ]
37657	// }
37658
37659}
37660
37661// method id "content.returnpolicyonline.get":
37662
37663type ReturnpolicyonlineGetCall struct {
37664	s              *APIService
37665	merchantId     int64
37666	returnPolicyId string
37667	urlParams_     gensupport.URLParams
37668	ifNoneMatch_   string
37669	ctx_           context.Context
37670	header_        http.Header
37671}
37672
37673// Get: Gets an existing return policy.
37674//
37675// - merchantId: The id of the merchant for which to retrieve the return
37676//   policy online object.
37677// - returnPolicyId: The id of the return policy to retrieve.
37678func (r *ReturnpolicyonlineService) Get(merchantId int64, returnPolicyId string) *ReturnpolicyonlineGetCall {
37679	c := &ReturnpolicyonlineGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37680	c.merchantId = merchantId
37681	c.returnPolicyId = returnPolicyId
37682	return c
37683}
37684
37685// Fields allows partial responses to be retrieved. See
37686// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37687// for more information.
37688func (c *ReturnpolicyonlineGetCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineGetCall {
37689	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37690	return c
37691}
37692
37693// IfNoneMatch sets the optional parameter which makes the operation
37694// fail if the object's ETag matches the given value. This is useful for
37695// getting updates only after the object has changed since the last
37696// request. Use googleapi.IsNotModified to check whether the response
37697// error from Do is the result of In-None-Match.
37698func (c *ReturnpolicyonlineGetCall) IfNoneMatch(entityTag string) *ReturnpolicyonlineGetCall {
37699	c.ifNoneMatch_ = entityTag
37700	return c
37701}
37702
37703// Context sets the context to be used in this call's Do method. Any
37704// pending HTTP request will be aborted if the provided context is
37705// canceled.
37706func (c *ReturnpolicyonlineGetCall) Context(ctx context.Context) *ReturnpolicyonlineGetCall {
37707	c.ctx_ = ctx
37708	return c
37709}
37710
37711// Header returns an http.Header that can be modified by the caller to
37712// add HTTP headers to the request.
37713func (c *ReturnpolicyonlineGetCall) Header() http.Header {
37714	if c.header_ == nil {
37715		c.header_ = make(http.Header)
37716	}
37717	return c.header_
37718}
37719
37720func (c *ReturnpolicyonlineGetCall) doRequest(alt string) (*http.Response, error) {
37721	reqHeaders := make(http.Header)
37722	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
37723	for k, v := range c.header_ {
37724		reqHeaders[k] = v
37725	}
37726	reqHeaders.Set("User-Agent", c.s.userAgent())
37727	if c.ifNoneMatch_ != "" {
37728		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37729	}
37730	var body io.Reader = nil
37731	c.urlParams_.Set("alt", alt)
37732	c.urlParams_.Set("prettyPrint", "false")
37733	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
37734	urls += "?" + c.urlParams_.Encode()
37735	req, err := http.NewRequest("GET", urls, body)
37736	if err != nil {
37737		return nil, err
37738	}
37739	req.Header = reqHeaders
37740	googleapi.Expand(req.URL, map[string]string{
37741		"merchantId":     strconv.FormatInt(c.merchantId, 10),
37742		"returnPolicyId": c.returnPolicyId,
37743	})
37744	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37745}
37746
37747// Do executes the "content.returnpolicyonline.get" call.
37748// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
37749// non-2xx status code is an error. Response headers are in either
37750// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
37751// returned at all) in error.(*googleapi.Error).Header. Use
37752// googleapi.IsNotModified to check whether the returned error was
37753// because http.StatusNotModified was returned.
37754func (c *ReturnpolicyonlineGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
37755	gensupport.SetOptions(c.urlParams_, opts...)
37756	res, err := c.doRequest("json")
37757	if res != nil && res.StatusCode == http.StatusNotModified {
37758		if res.Body != nil {
37759			res.Body.Close()
37760		}
37761		return nil, &googleapi.Error{
37762			Code:   res.StatusCode,
37763			Header: res.Header,
37764		}
37765	}
37766	if err != nil {
37767		return nil, err
37768	}
37769	defer googleapi.CloseBody(res)
37770	if err := googleapi.CheckResponse(res); err != nil {
37771		return nil, err
37772	}
37773	ret := &ReturnPolicyOnline{
37774		ServerResponse: googleapi.ServerResponse{
37775			Header:         res.Header,
37776			HTTPStatusCode: res.StatusCode,
37777		},
37778	}
37779	target := &ret
37780	if err := gensupport.DecodeResponse(target, res); err != nil {
37781		return nil, err
37782	}
37783	return ret, nil
37784	// {
37785	//   "description": "Gets an existing return policy.",
37786	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
37787	//   "httpMethod": "GET",
37788	//   "id": "content.returnpolicyonline.get",
37789	//   "parameterOrder": [
37790	//     "merchantId",
37791	//     "returnPolicyId"
37792	//   ],
37793	//   "parameters": {
37794	//     "merchantId": {
37795	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
37796	//       "format": "int64",
37797	//       "location": "path",
37798	//       "required": true,
37799	//       "type": "string"
37800	//     },
37801	//     "returnPolicyId": {
37802	//       "description": "Required. The id of the return policy to retrieve.",
37803	//       "location": "path",
37804	//       "required": true,
37805	//       "type": "string"
37806	//     }
37807	//   },
37808	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
37809	//   "response": {
37810	//     "$ref": "ReturnPolicyOnline"
37811	//   },
37812	//   "scopes": [
37813	//     "https://www.googleapis.com/auth/content"
37814	//   ]
37815	// }
37816
37817}
37818
37819// method id "content.returnpolicyonline.list":
37820
37821type ReturnpolicyonlineListCall struct {
37822	s            *APIService
37823	merchantId   int64
37824	urlParams_   gensupport.URLParams
37825	ifNoneMatch_ string
37826	ctx_         context.Context
37827	header_      http.Header
37828}
37829
37830// List: Lists all existing return policies.
37831//
37832// - merchantId: The id of the merchant for which to retrieve the return
37833//   policy online object.
37834func (r *ReturnpolicyonlineService) List(merchantId int64) *ReturnpolicyonlineListCall {
37835	c := &ReturnpolicyonlineListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37836	c.merchantId = merchantId
37837	return c
37838}
37839
37840// Fields allows partial responses to be retrieved. See
37841// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37842// for more information.
37843func (c *ReturnpolicyonlineListCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineListCall {
37844	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37845	return c
37846}
37847
37848// IfNoneMatch sets the optional parameter which makes the operation
37849// fail if the object's ETag matches the given value. This is useful for
37850// getting updates only after the object has changed since the last
37851// request. Use googleapi.IsNotModified to check whether the response
37852// error from Do is the result of In-None-Match.
37853func (c *ReturnpolicyonlineListCall) IfNoneMatch(entityTag string) *ReturnpolicyonlineListCall {
37854	c.ifNoneMatch_ = entityTag
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 *ReturnpolicyonlineListCall) Context(ctx context.Context) *ReturnpolicyonlineListCall {
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 *ReturnpolicyonlineListCall) Header() http.Header {
37869	if c.header_ == nil {
37870		c.header_ = make(http.Header)
37871	}
37872	return c.header_
37873}
37874
37875func (c *ReturnpolicyonlineListCall) doRequest(alt string) (*http.Response, error) {
37876	reqHeaders := make(http.Header)
37877	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
37878	for k, v := range c.header_ {
37879		reqHeaders[k] = v
37880	}
37881	reqHeaders.Set("User-Agent", c.s.userAgent())
37882	if c.ifNoneMatch_ != "" {
37883		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37884	}
37885	var body io.Reader = nil
37886	c.urlParams_.Set("alt", alt)
37887	c.urlParams_.Set("prettyPrint", "false")
37888	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline")
37889	urls += "?" + c.urlParams_.Encode()
37890	req, err := http.NewRequest("GET", urls, body)
37891	if err != nil {
37892		return nil, err
37893	}
37894	req.Header = reqHeaders
37895	googleapi.Expand(req.URL, map[string]string{
37896		"merchantId": strconv.FormatInt(c.merchantId, 10),
37897	})
37898	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37899}
37900
37901// Do executes the "content.returnpolicyonline.list" call.
37902// Exactly one of *ListReturnPolicyOnlineResponse or error will be
37903// non-nil. Any non-2xx status code is an error. Response headers are in
37904// either *ListReturnPolicyOnlineResponse.ServerResponse.Header or (if a
37905// response was returned at all) in error.(*googleapi.Error).Header. Use
37906// googleapi.IsNotModified to check whether the returned error was
37907// because http.StatusNotModified was returned.
37908func (c *ReturnpolicyonlineListCall) Do(opts ...googleapi.CallOption) (*ListReturnPolicyOnlineResponse, error) {
37909	gensupport.SetOptions(c.urlParams_, opts...)
37910	res, err := c.doRequest("json")
37911	if res != nil && res.StatusCode == http.StatusNotModified {
37912		if res.Body != nil {
37913			res.Body.Close()
37914		}
37915		return nil, &googleapi.Error{
37916			Code:   res.StatusCode,
37917			Header: res.Header,
37918		}
37919	}
37920	if err != nil {
37921		return nil, err
37922	}
37923	defer googleapi.CloseBody(res)
37924	if err := googleapi.CheckResponse(res); err != nil {
37925		return nil, err
37926	}
37927	ret := &ListReturnPolicyOnlineResponse{
37928		ServerResponse: googleapi.ServerResponse{
37929			Header:         res.Header,
37930			HTTPStatusCode: res.StatusCode,
37931		},
37932	}
37933	target := &ret
37934	if err := gensupport.DecodeResponse(target, res); err != nil {
37935		return nil, err
37936	}
37937	return ret, nil
37938	// {
37939	//   "description": "Lists all existing return policies.",
37940	//   "flatPath": "{merchantId}/returnpolicyonline",
37941	//   "httpMethod": "GET",
37942	//   "id": "content.returnpolicyonline.list",
37943	//   "parameterOrder": [
37944	//     "merchantId"
37945	//   ],
37946	//   "parameters": {
37947	//     "merchantId": {
37948	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
37949	//       "format": "int64",
37950	//       "location": "path",
37951	//       "required": true,
37952	//       "type": "string"
37953	//     }
37954	//   },
37955	//   "path": "{merchantId}/returnpolicyonline",
37956	//   "response": {
37957	//     "$ref": "ListReturnPolicyOnlineResponse"
37958	//   },
37959	//   "scopes": [
37960	//     "https://www.googleapis.com/auth/content"
37961	//   ]
37962	// }
37963
37964}
37965
37966// method id "content.returnpolicyonline.patch":
37967
37968type ReturnpolicyonlinePatchCall struct {
37969	s                  *APIService
37970	merchantId         int64
37971	returnPolicyId     string
37972	returnpolicyonline *ReturnPolicyOnline
37973	urlParams_         gensupport.URLParams
37974	ctx_               context.Context
37975	header_            http.Header
37976}
37977
37978// Patch: Updates an existing return policy.
37979//
37980// - merchantId: The id of the merchant for which to retrieve the return
37981//   policy online object.
37982// - returnPolicyId: The id of the return policy to update.
37983func (r *ReturnpolicyonlineService) Patch(merchantId int64, returnPolicyId string, returnpolicyonline *ReturnPolicyOnline) *ReturnpolicyonlinePatchCall {
37984	c := &ReturnpolicyonlinePatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37985	c.merchantId = merchantId
37986	c.returnPolicyId = returnPolicyId
37987	c.returnpolicyonline = returnpolicyonline
37988	return c
37989}
37990
37991// Fields allows partial responses to be retrieved. See
37992// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37993// for more information.
37994func (c *ReturnpolicyonlinePatchCall) Fields(s ...googleapi.Field) *ReturnpolicyonlinePatchCall {
37995	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37996	return c
37997}
37998
37999// Context sets the context to be used in this call's Do method. Any
38000// pending HTTP request will be aborted if the provided context is
38001// canceled.
38002func (c *ReturnpolicyonlinePatchCall) Context(ctx context.Context) *ReturnpolicyonlinePatchCall {
38003	c.ctx_ = ctx
38004	return c
38005}
38006
38007// Header returns an http.Header that can be modified by the caller to
38008// add HTTP headers to the request.
38009func (c *ReturnpolicyonlinePatchCall) Header() http.Header {
38010	if c.header_ == nil {
38011		c.header_ = make(http.Header)
38012	}
38013	return c.header_
38014}
38015
38016func (c *ReturnpolicyonlinePatchCall) doRequest(alt string) (*http.Response, error) {
38017	reqHeaders := make(http.Header)
38018	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
38019	for k, v := range c.header_ {
38020		reqHeaders[k] = v
38021	}
38022	reqHeaders.Set("User-Agent", c.s.userAgent())
38023	var body io.Reader = nil
38024	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicyonline)
38025	if err != nil {
38026		return nil, err
38027	}
38028	reqHeaders.Set("Content-Type", "application/json")
38029	c.urlParams_.Set("alt", alt)
38030	c.urlParams_.Set("prettyPrint", "false")
38031	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
38032	urls += "?" + c.urlParams_.Encode()
38033	req, err := http.NewRequest("PATCH", urls, body)
38034	if err != nil {
38035		return nil, err
38036	}
38037	req.Header = reqHeaders
38038	googleapi.Expand(req.URL, map[string]string{
38039		"merchantId":     strconv.FormatInt(c.merchantId, 10),
38040		"returnPolicyId": c.returnPolicyId,
38041	})
38042	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38043}
38044
38045// Do executes the "content.returnpolicyonline.patch" call.
38046// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
38047// non-2xx status code is an error. Response headers are in either
38048// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
38049// returned at all) in error.(*googleapi.Error).Header. Use
38050// googleapi.IsNotModified to check whether the returned error was
38051// because http.StatusNotModified was returned.
38052func (c *ReturnpolicyonlinePatchCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
38053	gensupport.SetOptions(c.urlParams_, opts...)
38054	res, err := c.doRequest("json")
38055	if res != nil && res.StatusCode == http.StatusNotModified {
38056		if res.Body != nil {
38057			res.Body.Close()
38058		}
38059		return nil, &googleapi.Error{
38060			Code:   res.StatusCode,
38061			Header: res.Header,
38062		}
38063	}
38064	if err != nil {
38065		return nil, err
38066	}
38067	defer googleapi.CloseBody(res)
38068	if err := googleapi.CheckResponse(res); err != nil {
38069		return nil, err
38070	}
38071	ret := &ReturnPolicyOnline{
38072		ServerResponse: googleapi.ServerResponse{
38073			Header:         res.Header,
38074			HTTPStatusCode: res.StatusCode,
38075		},
38076	}
38077	target := &ret
38078	if err := gensupport.DecodeResponse(target, res); err != nil {
38079		return nil, err
38080	}
38081	return ret, nil
38082	// {
38083	//   "description": "Updates an existing return policy.",
38084	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
38085	//   "httpMethod": "PATCH",
38086	//   "id": "content.returnpolicyonline.patch",
38087	//   "parameterOrder": [
38088	//     "merchantId",
38089	//     "returnPolicyId"
38090	//   ],
38091	//   "parameters": {
38092	//     "merchantId": {
38093	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
38094	//       "format": "int64",
38095	//       "location": "path",
38096	//       "required": true,
38097	//       "type": "string"
38098	//     },
38099	//     "returnPolicyId": {
38100	//       "description": "Required. The id of the return policy to update.",
38101	//       "location": "path",
38102	//       "required": true,
38103	//       "type": "string"
38104	//     }
38105	//   },
38106	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
38107	//   "request": {
38108	//     "$ref": "ReturnPolicyOnline"
38109	//   },
38110	//   "response": {
38111	//     "$ref": "ReturnPolicyOnline"
38112	//   },
38113	//   "scopes": [
38114	//     "https://www.googleapis.com/auth/content"
38115	//   ]
38116	// }
38117
38118}
38119
38120// method id "content.settlementreports.get":
38121
38122type SettlementreportsGetCall struct {
38123	s            *APIService
38124	merchantId   uint64
38125	settlementId string
38126	urlParams_   gensupport.URLParams
38127	ifNoneMatch_ string
38128	ctx_         context.Context
38129	header_      http.Header
38130}
38131
38132// Get: Retrieves a settlement report from your Merchant Center account.
38133//
38134// - merchantId: The Merchant Center account of the settlement report.
38135// - settlementId: The Google-provided ID of the settlement.
38136func (r *SettlementreportsService) Get(merchantId uint64, settlementId string) *SettlementreportsGetCall {
38137	c := &SettlementreportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38138	c.merchantId = merchantId
38139	c.settlementId = settlementId
38140	return c
38141}
38142
38143// Fields allows partial responses to be retrieved. See
38144// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38145// for more information.
38146func (c *SettlementreportsGetCall) Fields(s ...googleapi.Field) *SettlementreportsGetCall {
38147	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38148	return c
38149}
38150
38151// IfNoneMatch sets the optional parameter which makes the operation
38152// fail if the object's ETag matches the given value. This is useful for
38153// getting updates only after the object has changed since the last
38154// request. Use googleapi.IsNotModified to check whether the response
38155// error from Do is the result of In-None-Match.
38156func (c *SettlementreportsGetCall) IfNoneMatch(entityTag string) *SettlementreportsGetCall {
38157	c.ifNoneMatch_ = entityTag
38158	return c
38159}
38160
38161// Context sets the context to be used in this call's Do method. Any
38162// pending HTTP request will be aborted if the provided context is
38163// canceled.
38164func (c *SettlementreportsGetCall) Context(ctx context.Context) *SettlementreportsGetCall {
38165	c.ctx_ = ctx
38166	return c
38167}
38168
38169// Header returns an http.Header that can be modified by the caller to
38170// add HTTP headers to the request.
38171func (c *SettlementreportsGetCall) Header() http.Header {
38172	if c.header_ == nil {
38173		c.header_ = make(http.Header)
38174	}
38175	return c.header_
38176}
38177
38178func (c *SettlementreportsGetCall) doRequest(alt string) (*http.Response, error) {
38179	reqHeaders := make(http.Header)
38180	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
38181	for k, v := range c.header_ {
38182		reqHeaders[k] = v
38183	}
38184	reqHeaders.Set("User-Agent", c.s.userAgent())
38185	if c.ifNoneMatch_ != "" {
38186		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38187	}
38188	var body io.Reader = nil
38189	c.urlParams_.Set("alt", alt)
38190	c.urlParams_.Set("prettyPrint", "false")
38191	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports/{settlementId}")
38192	urls += "?" + c.urlParams_.Encode()
38193	req, err := http.NewRequest("GET", urls, body)
38194	if err != nil {
38195		return nil, err
38196	}
38197	req.Header = reqHeaders
38198	googleapi.Expand(req.URL, map[string]string{
38199		"merchantId":   strconv.FormatUint(c.merchantId, 10),
38200		"settlementId": c.settlementId,
38201	})
38202	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38203}
38204
38205// Do executes the "content.settlementreports.get" call.
38206// Exactly one of *SettlementReport or error will be non-nil. Any
38207// non-2xx status code is an error. Response headers are in either
38208// *SettlementReport.ServerResponse.Header or (if a response was
38209// returned at all) in error.(*googleapi.Error).Header. Use
38210// googleapi.IsNotModified to check whether the returned error was
38211// because http.StatusNotModified was returned.
38212func (c *SettlementreportsGetCall) Do(opts ...googleapi.CallOption) (*SettlementReport, error) {
38213	gensupport.SetOptions(c.urlParams_, opts...)
38214	res, err := c.doRequest("json")
38215	if res != nil && res.StatusCode == http.StatusNotModified {
38216		if res.Body != nil {
38217			res.Body.Close()
38218		}
38219		return nil, &googleapi.Error{
38220			Code:   res.StatusCode,
38221			Header: res.Header,
38222		}
38223	}
38224	if err != nil {
38225		return nil, err
38226	}
38227	defer googleapi.CloseBody(res)
38228	if err := googleapi.CheckResponse(res); err != nil {
38229		return nil, err
38230	}
38231	ret := &SettlementReport{
38232		ServerResponse: googleapi.ServerResponse{
38233			Header:         res.Header,
38234			HTTPStatusCode: res.StatusCode,
38235		},
38236	}
38237	target := &ret
38238	if err := gensupport.DecodeResponse(target, res); err != nil {
38239		return nil, err
38240	}
38241	return ret, nil
38242	// {
38243	//   "description": "Retrieves a settlement report from your Merchant Center account.",
38244	//   "flatPath": "{merchantId}/settlementreports/{settlementId}",
38245	//   "httpMethod": "GET",
38246	//   "id": "content.settlementreports.get",
38247	//   "parameterOrder": [
38248	//     "merchantId",
38249	//     "settlementId"
38250	//   ],
38251	//   "parameters": {
38252	//     "merchantId": {
38253	//       "description": "The Merchant Center account of the settlement report.",
38254	//       "format": "uint64",
38255	//       "location": "path",
38256	//       "required": true,
38257	//       "type": "string"
38258	//     },
38259	//     "settlementId": {
38260	//       "description": "The Google-provided ID of the settlement.",
38261	//       "location": "path",
38262	//       "required": true,
38263	//       "type": "string"
38264	//     }
38265	//   },
38266	//   "path": "{merchantId}/settlementreports/{settlementId}",
38267	//   "response": {
38268	//     "$ref": "SettlementReport"
38269	//   },
38270	//   "scopes": [
38271	//     "https://www.googleapis.com/auth/content"
38272	//   ]
38273	// }
38274
38275}
38276
38277// method id "content.settlementreports.list":
38278
38279type SettlementreportsListCall struct {
38280	s            *APIService
38281	merchantId   uint64
38282	urlParams_   gensupport.URLParams
38283	ifNoneMatch_ string
38284	ctx_         context.Context
38285	header_      http.Header
38286}
38287
38288// List: Retrieves a list of settlement reports from your Merchant
38289// Center account.
38290//
38291// - merchantId: The Merchant Center account to list settlements for.
38292func (r *SettlementreportsService) List(merchantId uint64) *SettlementreportsListCall {
38293	c := &SettlementreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38294	c.merchantId = merchantId
38295	return c
38296}
38297
38298// MaxResults sets the optional parameter "maxResults": The maximum
38299// number of settlements to return in the response, used for paging. The
38300// default value is 200 returns per page, and the maximum allowed value
38301// is 5000 returns per page.
38302func (c *SettlementreportsListCall) MaxResults(maxResults int64) *SettlementreportsListCall {
38303	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
38304	return c
38305}
38306
38307// PageToken sets the optional parameter "pageToken": The token returned
38308// by the previous request.
38309func (c *SettlementreportsListCall) PageToken(pageToken string) *SettlementreportsListCall {
38310	c.urlParams_.Set("pageToken", pageToken)
38311	return c
38312}
38313
38314// TransferEndDate sets the optional parameter "transferEndDate":
38315// Obtains settlements which have transactions before this date
38316// (inclusively), in ISO 8601 format.
38317func (c *SettlementreportsListCall) TransferEndDate(transferEndDate string) *SettlementreportsListCall {
38318	c.urlParams_.Set("transferEndDate", transferEndDate)
38319	return c
38320}
38321
38322// TransferStartDate sets the optional parameter "transferStartDate":
38323// Obtains settlements which have transactions after this date
38324// (inclusively), in ISO 8601 format.
38325func (c *SettlementreportsListCall) TransferStartDate(transferStartDate string) *SettlementreportsListCall {
38326	c.urlParams_.Set("transferStartDate", transferStartDate)
38327	return c
38328}
38329
38330// Fields allows partial responses to be retrieved. See
38331// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38332// for more information.
38333func (c *SettlementreportsListCall) Fields(s ...googleapi.Field) *SettlementreportsListCall {
38334	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38335	return c
38336}
38337
38338// IfNoneMatch sets the optional parameter which makes the operation
38339// fail if the object's ETag matches the given value. This is useful for
38340// getting updates only after the object has changed since the last
38341// request. Use googleapi.IsNotModified to check whether the response
38342// error from Do is the result of In-None-Match.
38343func (c *SettlementreportsListCall) IfNoneMatch(entityTag string) *SettlementreportsListCall {
38344	c.ifNoneMatch_ = entityTag
38345	return c
38346}
38347
38348// Context sets the context to be used in this call's Do method. Any
38349// pending HTTP request will be aborted if the provided context is
38350// canceled.
38351func (c *SettlementreportsListCall) Context(ctx context.Context) *SettlementreportsListCall {
38352	c.ctx_ = ctx
38353	return c
38354}
38355
38356// Header returns an http.Header that can be modified by the caller to
38357// add HTTP headers to the request.
38358func (c *SettlementreportsListCall) Header() http.Header {
38359	if c.header_ == nil {
38360		c.header_ = make(http.Header)
38361	}
38362	return c.header_
38363}
38364
38365func (c *SettlementreportsListCall) doRequest(alt string) (*http.Response, error) {
38366	reqHeaders := make(http.Header)
38367	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
38368	for k, v := range c.header_ {
38369		reqHeaders[k] = v
38370	}
38371	reqHeaders.Set("User-Agent", c.s.userAgent())
38372	if c.ifNoneMatch_ != "" {
38373		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38374	}
38375	var body io.Reader = nil
38376	c.urlParams_.Set("alt", alt)
38377	c.urlParams_.Set("prettyPrint", "false")
38378	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports")
38379	urls += "?" + c.urlParams_.Encode()
38380	req, err := http.NewRequest("GET", urls, body)
38381	if err != nil {
38382		return nil, err
38383	}
38384	req.Header = reqHeaders
38385	googleapi.Expand(req.URL, map[string]string{
38386		"merchantId": strconv.FormatUint(c.merchantId, 10),
38387	})
38388	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38389}
38390
38391// Do executes the "content.settlementreports.list" call.
38392// Exactly one of *SettlementreportsListResponse or error will be
38393// non-nil. Any non-2xx status code is an error. Response headers are in
38394// either *SettlementreportsListResponse.ServerResponse.Header or (if a
38395// response was returned at all) in error.(*googleapi.Error).Header. Use
38396// googleapi.IsNotModified to check whether the returned error was
38397// because http.StatusNotModified was returned.
38398func (c *SettlementreportsListCall) Do(opts ...googleapi.CallOption) (*SettlementreportsListResponse, error) {
38399	gensupport.SetOptions(c.urlParams_, opts...)
38400	res, err := c.doRequest("json")
38401	if res != nil && res.StatusCode == http.StatusNotModified {
38402		if res.Body != nil {
38403			res.Body.Close()
38404		}
38405		return nil, &googleapi.Error{
38406			Code:   res.StatusCode,
38407			Header: res.Header,
38408		}
38409	}
38410	if err != nil {
38411		return nil, err
38412	}
38413	defer googleapi.CloseBody(res)
38414	if err := googleapi.CheckResponse(res); err != nil {
38415		return nil, err
38416	}
38417	ret := &SettlementreportsListResponse{
38418		ServerResponse: googleapi.ServerResponse{
38419			Header:         res.Header,
38420			HTTPStatusCode: res.StatusCode,
38421		},
38422	}
38423	target := &ret
38424	if err := gensupport.DecodeResponse(target, res); err != nil {
38425		return nil, err
38426	}
38427	return ret, nil
38428	// {
38429	//   "description": "Retrieves a list of settlement reports from your Merchant Center account.",
38430	//   "flatPath": "{merchantId}/settlementreports",
38431	//   "httpMethod": "GET",
38432	//   "id": "content.settlementreports.list",
38433	//   "parameterOrder": [
38434	//     "merchantId"
38435	//   ],
38436	//   "parameters": {
38437	//     "maxResults": {
38438	//       "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.",
38439	//       "format": "uint32",
38440	//       "location": "query",
38441	//       "type": "integer"
38442	//     },
38443	//     "merchantId": {
38444	//       "description": "The Merchant Center account to list settlements for.",
38445	//       "format": "uint64",
38446	//       "location": "path",
38447	//       "required": true,
38448	//       "type": "string"
38449	//     },
38450	//     "pageToken": {
38451	//       "description": "The token returned by the previous request.",
38452	//       "location": "query",
38453	//       "type": "string"
38454	//     },
38455	//     "transferEndDate": {
38456	//       "description": "Obtains settlements which have transactions before this date (inclusively), in ISO 8601 format.",
38457	//       "location": "query",
38458	//       "type": "string"
38459	//     },
38460	//     "transferStartDate": {
38461	//       "description": "Obtains settlements which have transactions after this date (inclusively), in ISO 8601 format.",
38462	//       "location": "query",
38463	//       "type": "string"
38464	//     }
38465	//   },
38466	//   "path": "{merchantId}/settlementreports",
38467	//   "response": {
38468	//     "$ref": "SettlementreportsListResponse"
38469	//   },
38470	//   "scopes": [
38471	//     "https://www.googleapis.com/auth/content"
38472	//   ]
38473	// }
38474
38475}
38476
38477// Pages invokes f for each page of results.
38478// A non-nil error returned from f will halt the iteration.
38479// The provided context supersedes any context provided to the Context method.
38480func (c *SettlementreportsListCall) Pages(ctx context.Context, f func(*SettlementreportsListResponse) error) error {
38481	c.ctx_ = ctx
38482	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
38483	for {
38484		x, err := c.Do()
38485		if err != nil {
38486			return err
38487		}
38488		if err := f(x); err != nil {
38489			return err
38490		}
38491		if x.NextPageToken == "" {
38492			return nil
38493		}
38494		c.PageToken(x.NextPageToken)
38495	}
38496}
38497
38498// method id "content.settlementtransactions.list":
38499
38500type SettlementtransactionsListCall struct {
38501	s            *APIService
38502	merchantId   uint64
38503	settlementId string
38504	urlParams_   gensupport.URLParams
38505	ifNoneMatch_ string
38506	ctx_         context.Context
38507	header_      http.Header
38508}
38509
38510// List: Retrieves a list of transactions for the settlement.
38511//
38512// - merchantId: The Merchant Center account to list transactions for.
38513// - settlementId: The Google-provided ID of the settlement.
38514func (r *SettlementtransactionsService) List(merchantId uint64, settlementId string) *SettlementtransactionsListCall {
38515	c := &SettlementtransactionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38516	c.merchantId = merchantId
38517	c.settlementId = settlementId
38518	return c
38519}
38520
38521// MaxResults sets the optional parameter "maxResults": The maximum
38522// number of transactions to return in the response, used for paging.
38523// The default value is 200 transactions per page, and the maximum
38524// allowed value is 5000 transactions per page.
38525func (c *SettlementtransactionsListCall) MaxResults(maxResults int64) *SettlementtransactionsListCall {
38526	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
38527	return c
38528}
38529
38530// PageToken sets the optional parameter "pageToken": The token returned
38531// by the previous request.
38532func (c *SettlementtransactionsListCall) PageToken(pageToken string) *SettlementtransactionsListCall {
38533	c.urlParams_.Set("pageToken", pageToken)
38534	return c
38535}
38536
38537// TransactionIds sets the optional parameter "transactionIds": The list
38538// of transactions to return. If not set, all transactions will be
38539// returned.
38540func (c *SettlementtransactionsListCall) TransactionIds(transactionIds ...string) *SettlementtransactionsListCall {
38541	c.urlParams_.SetMulti("transactionIds", append([]string{}, transactionIds...))
38542	return c
38543}
38544
38545// Fields allows partial responses to be retrieved. See
38546// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38547// for more information.
38548func (c *SettlementtransactionsListCall) Fields(s ...googleapi.Field) *SettlementtransactionsListCall {
38549	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38550	return c
38551}
38552
38553// IfNoneMatch sets the optional parameter which makes the operation
38554// fail if the object's ETag matches the given value. This is useful for
38555// getting updates only after the object has changed since the last
38556// request. Use googleapi.IsNotModified to check whether the response
38557// error from Do is the result of In-None-Match.
38558func (c *SettlementtransactionsListCall) IfNoneMatch(entityTag string) *SettlementtransactionsListCall {
38559	c.ifNoneMatch_ = entityTag
38560	return c
38561}
38562
38563// Context sets the context to be used in this call's Do method. Any
38564// pending HTTP request will be aborted if the provided context is
38565// canceled.
38566func (c *SettlementtransactionsListCall) Context(ctx context.Context) *SettlementtransactionsListCall {
38567	c.ctx_ = ctx
38568	return c
38569}
38570
38571// Header returns an http.Header that can be modified by the caller to
38572// add HTTP headers to the request.
38573func (c *SettlementtransactionsListCall) Header() http.Header {
38574	if c.header_ == nil {
38575		c.header_ = make(http.Header)
38576	}
38577	return c.header_
38578}
38579
38580func (c *SettlementtransactionsListCall) doRequest(alt string) (*http.Response, error) {
38581	reqHeaders := make(http.Header)
38582	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
38583	for k, v := range c.header_ {
38584		reqHeaders[k] = v
38585	}
38586	reqHeaders.Set("User-Agent", c.s.userAgent())
38587	if c.ifNoneMatch_ != "" {
38588		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38589	}
38590	var body io.Reader = nil
38591	c.urlParams_.Set("alt", alt)
38592	c.urlParams_.Set("prettyPrint", "false")
38593	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports/{settlementId}/transactions")
38594	urls += "?" + c.urlParams_.Encode()
38595	req, err := http.NewRequest("GET", urls, body)
38596	if err != nil {
38597		return nil, err
38598	}
38599	req.Header = reqHeaders
38600	googleapi.Expand(req.URL, map[string]string{
38601		"merchantId":   strconv.FormatUint(c.merchantId, 10),
38602		"settlementId": c.settlementId,
38603	})
38604	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38605}
38606
38607// Do executes the "content.settlementtransactions.list" call.
38608// Exactly one of *SettlementtransactionsListResponse or error will be
38609// non-nil. Any non-2xx status code is an error. Response headers are in
38610// either *SettlementtransactionsListResponse.ServerResponse.Header or
38611// (if a response was returned at all) in
38612// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
38613// whether the returned error was because http.StatusNotModified was
38614// returned.
38615func (c *SettlementtransactionsListCall) Do(opts ...googleapi.CallOption) (*SettlementtransactionsListResponse, error) {
38616	gensupport.SetOptions(c.urlParams_, opts...)
38617	res, err := c.doRequest("json")
38618	if res != nil && res.StatusCode == http.StatusNotModified {
38619		if res.Body != nil {
38620			res.Body.Close()
38621		}
38622		return nil, &googleapi.Error{
38623			Code:   res.StatusCode,
38624			Header: res.Header,
38625		}
38626	}
38627	if err != nil {
38628		return nil, err
38629	}
38630	defer googleapi.CloseBody(res)
38631	if err := googleapi.CheckResponse(res); err != nil {
38632		return nil, err
38633	}
38634	ret := &SettlementtransactionsListResponse{
38635		ServerResponse: googleapi.ServerResponse{
38636			Header:         res.Header,
38637			HTTPStatusCode: res.StatusCode,
38638		},
38639	}
38640	target := &ret
38641	if err := gensupport.DecodeResponse(target, res); err != nil {
38642		return nil, err
38643	}
38644	return ret, nil
38645	// {
38646	//   "description": "Retrieves a list of transactions for the settlement.",
38647	//   "flatPath": "{merchantId}/settlementreports/{settlementId}/transactions",
38648	//   "httpMethod": "GET",
38649	//   "id": "content.settlementtransactions.list",
38650	//   "parameterOrder": [
38651	//     "merchantId",
38652	//     "settlementId"
38653	//   ],
38654	//   "parameters": {
38655	//     "maxResults": {
38656	//       "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.",
38657	//       "format": "uint32",
38658	//       "location": "query",
38659	//       "type": "integer"
38660	//     },
38661	//     "merchantId": {
38662	//       "description": "The Merchant Center account to list transactions for.",
38663	//       "format": "uint64",
38664	//       "location": "path",
38665	//       "required": true,
38666	//       "type": "string"
38667	//     },
38668	//     "pageToken": {
38669	//       "description": "The token returned by the previous request.",
38670	//       "location": "query",
38671	//       "type": "string"
38672	//     },
38673	//     "settlementId": {
38674	//       "description": "The Google-provided ID of the settlement.",
38675	//       "location": "path",
38676	//       "required": true,
38677	//       "type": "string"
38678	//     },
38679	//     "transactionIds": {
38680	//       "description": "The list of transactions to return. If not set, all transactions will be returned.",
38681	//       "location": "query",
38682	//       "repeated": true,
38683	//       "type": "string"
38684	//     }
38685	//   },
38686	//   "path": "{merchantId}/settlementreports/{settlementId}/transactions",
38687	//   "response": {
38688	//     "$ref": "SettlementtransactionsListResponse"
38689	//   },
38690	//   "scopes": [
38691	//     "https://www.googleapis.com/auth/content"
38692	//   ]
38693	// }
38694
38695}
38696
38697// Pages invokes f for each page of results.
38698// A non-nil error returned from f will halt the iteration.
38699// The provided context supersedes any context provided to the Context method.
38700func (c *SettlementtransactionsListCall) Pages(ctx context.Context, f func(*SettlementtransactionsListResponse) error) error {
38701	c.ctx_ = ctx
38702	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
38703	for {
38704		x, err := c.Do()
38705		if err != nil {
38706			return err
38707		}
38708		if err := f(x); err != nil {
38709			return err
38710		}
38711		if x.NextPageToken == "" {
38712			return nil
38713		}
38714		c.PageToken(x.NextPageToken)
38715	}
38716}
38717
38718// method id "content.shippingsettings.custombatch":
38719
38720type ShippingsettingsCustombatchCall struct {
38721	s                                  *APIService
38722	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
38723	urlParams_                         gensupport.URLParams
38724	ctx_                               context.Context
38725	header_                            http.Header
38726}
38727
38728// Custombatch: Retrieves and updates the shipping settings of multiple
38729// accounts in a single request.
38730func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
38731	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38732	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
38733	return c
38734}
38735
38736// Fields allows partial responses to be retrieved. See
38737// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38738// for more information.
38739func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
38740	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38741	return c
38742}
38743
38744// Context sets the context to be used in this call's Do method. Any
38745// pending HTTP request will be aborted if the provided context is
38746// canceled.
38747func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
38748	c.ctx_ = ctx
38749	return c
38750}
38751
38752// Header returns an http.Header that can be modified by the caller to
38753// add HTTP headers to the request.
38754func (c *ShippingsettingsCustombatchCall) Header() http.Header {
38755	if c.header_ == nil {
38756		c.header_ = make(http.Header)
38757	}
38758	return c.header_
38759}
38760
38761func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
38762	reqHeaders := make(http.Header)
38763	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
38764	for k, v := range c.header_ {
38765		reqHeaders[k] = v
38766	}
38767	reqHeaders.Set("User-Agent", c.s.userAgent())
38768	var body io.Reader = nil
38769	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
38770	if err != nil {
38771		return nil, err
38772	}
38773	reqHeaders.Set("Content-Type", "application/json")
38774	c.urlParams_.Set("alt", alt)
38775	c.urlParams_.Set("prettyPrint", "false")
38776	urls := googleapi.ResolveRelative(c.s.BasePath, "shippingsettings/batch")
38777	urls += "?" + c.urlParams_.Encode()
38778	req, err := http.NewRequest("POST", urls, body)
38779	if err != nil {
38780		return nil, err
38781	}
38782	req.Header = reqHeaders
38783	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38784}
38785
38786// Do executes the "content.shippingsettings.custombatch" call.
38787// Exactly one of *ShippingsettingsCustomBatchResponse or error will be
38788// non-nil. Any non-2xx status code is an error. Response headers are in
38789// either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
38790// (if a response was returned at all) in
38791// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
38792// whether the returned error was because http.StatusNotModified was
38793// returned.
38794func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
38795	gensupport.SetOptions(c.urlParams_, opts...)
38796	res, err := c.doRequest("json")
38797	if res != nil && res.StatusCode == http.StatusNotModified {
38798		if res.Body != nil {
38799			res.Body.Close()
38800		}
38801		return nil, &googleapi.Error{
38802			Code:   res.StatusCode,
38803			Header: res.Header,
38804		}
38805	}
38806	if err != nil {
38807		return nil, err
38808	}
38809	defer googleapi.CloseBody(res)
38810	if err := googleapi.CheckResponse(res); err != nil {
38811		return nil, err
38812	}
38813	ret := &ShippingsettingsCustomBatchResponse{
38814		ServerResponse: googleapi.ServerResponse{
38815			Header:         res.Header,
38816			HTTPStatusCode: res.StatusCode,
38817		},
38818	}
38819	target := &ret
38820	if err := gensupport.DecodeResponse(target, res); err != nil {
38821		return nil, err
38822	}
38823	return ret, nil
38824	// {
38825	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
38826	//   "flatPath": "shippingsettings/batch",
38827	//   "httpMethod": "POST",
38828	//   "id": "content.shippingsettings.custombatch",
38829	//   "parameterOrder": [],
38830	//   "parameters": {},
38831	//   "path": "shippingsettings/batch",
38832	//   "request": {
38833	//     "$ref": "ShippingsettingsCustomBatchRequest"
38834	//   },
38835	//   "response": {
38836	//     "$ref": "ShippingsettingsCustomBatchResponse"
38837	//   },
38838	//   "scopes": [
38839	//     "https://www.googleapis.com/auth/content"
38840	//   ]
38841	// }
38842
38843}
38844
38845// method id "content.shippingsettings.get":
38846
38847type ShippingsettingsGetCall struct {
38848	s            *APIService
38849	merchantId   uint64
38850	accountId    uint64
38851	urlParams_   gensupport.URLParams
38852	ifNoneMatch_ string
38853	ctx_         context.Context
38854	header_      http.Header
38855}
38856
38857// Get: Retrieves the shipping settings of the account.
38858//
38859// - accountId: The ID of the account for which to get/update shipping
38860//   settings.
38861// - merchantId: The ID of the managing account. If this parameter is
38862//   not the same as accountId, then this account must be a multi-client
38863//   account and `accountId` must be the ID of a sub-account of this
38864//   account.
38865func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
38866	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38867	c.merchantId = merchantId
38868	c.accountId = accountId
38869	return c
38870}
38871
38872// Fields allows partial responses to be retrieved. See
38873// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38874// for more information.
38875func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
38876	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38877	return c
38878}
38879
38880// IfNoneMatch sets the optional parameter which makes the operation
38881// fail if the object's ETag matches the given value. This is useful for
38882// getting updates only after the object has changed since the last
38883// request. Use googleapi.IsNotModified to check whether the response
38884// error from Do is the result of In-None-Match.
38885func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
38886	c.ifNoneMatch_ = entityTag
38887	return c
38888}
38889
38890// Context sets the context to be used in this call's Do method. Any
38891// pending HTTP request will be aborted if the provided context is
38892// canceled.
38893func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
38894	c.ctx_ = ctx
38895	return c
38896}
38897
38898// Header returns an http.Header that can be modified by the caller to
38899// add HTTP headers to the request.
38900func (c *ShippingsettingsGetCall) Header() http.Header {
38901	if c.header_ == nil {
38902		c.header_ = make(http.Header)
38903	}
38904	return c.header_
38905}
38906
38907func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
38908	reqHeaders := make(http.Header)
38909	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
38910	for k, v := range c.header_ {
38911		reqHeaders[k] = v
38912	}
38913	reqHeaders.Set("User-Agent", c.s.userAgent())
38914	if c.ifNoneMatch_ != "" {
38915		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38916	}
38917	var body io.Reader = nil
38918	c.urlParams_.Set("alt", alt)
38919	c.urlParams_.Set("prettyPrint", "false")
38920	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
38921	urls += "?" + c.urlParams_.Encode()
38922	req, err := http.NewRequest("GET", urls, body)
38923	if err != nil {
38924		return nil, err
38925	}
38926	req.Header = reqHeaders
38927	googleapi.Expand(req.URL, map[string]string{
38928		"merchantId": strconv.FormatUint(c.merchantId, 10),
38929		"accountId":  strconv.FormatUint(c.accountId, 10),
38930	})
38931	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38932}
38933
38934// Do executes the "content.shippingsettings.get" call.
38935// Exactly one of *ShippingSettings or error will be non-nil. Any
38936// non-2xx status code is an error. Response headers are in either
38937// *ShippingSettings.ServerResponse.Header or (if a response was
38938// returned at all) in error.(*googleapi.Error).Header. Use
38939// googleapi.IsNotModified to check whether the returned error was
38940// because http.StatusNotModified was returned.
38941func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
38942	gensupport.SetOptions(c.urlParams_, opts...)
38943	res, err := c.doRequest("json")
38944	if res != nil && res.StatusCode == http.StatusNotModified {
38945		if res.Body != nil {
38946			res.Body.Close()
38947		}
38948		return nil, &googleapi.Error{
38949			Code:   res.StatusCode,
38950			Header: res.Header,
38951		}
38952	}
38953	if err != nil {
38954		return nil, err
38955	}
38956	defer googleapi.CloseBody(res)
38957	if err := googleapi.CheckResponse(res); err != nil {
38958		return nil, err
38959	}
38960	ret := &ShippingSettings{
38961		ServerResponse: googleapi.ServerResponse{
38962			Header:         res.Header,
38963			HTTPStatusCode: res.StatusCode,
38964		},
38965	}
38966	target := &ret
38967	if err := gensupport.DecodeResponse(target, res); err != nil {
38968		return nil, err
38969	}
38970	return ret, nil
38971	// {
38972	//   "description": "Retrieves the shipping settings of the account.",
38973	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
38974	//   "httpMethod": "GET",
38975	//   "id": "content.shippingsettings.get",
38976	//   "parameterOrder": [
38977	//     "merchantId",
38978	//     "accountId"
38979	//   ],
38980	//   "parameters": {
38981	//     "accountId": {
38982	//       "description": "The ID of the account for which to get/update shipping settings.",
38983	//       "format": "uint64",
38984	//       "location": "path",
38985	//       "required": true,
38986	//       "type": "string"
38987	//     },
38988	//     "merchantId": {
38989	//       "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.",
38990	//       "format": "uint64",
38991	//       "location": "path",
38992	//       "required": true,
38993	//       "type": "string"
38994	//     }
38995	//   },
38996	//   "path": "{merchantId}/shippingsettings/{accountId}",
38997	//   "response": {
38998	//     "$ref": "ShippingSettings"
38999	//   },
39000	//   "scopes": [
39001	//     "https://www.googleapis.com/auth/content"
39002	//   ]
39003	// }
39004
39005}
39006
39007// method id "content.shippingsettings.getsupportedcarriers":
39008
39009type ShippingsettingsGetsupportedcarriersCall struct {
39010	s            *APIService
39011	merchantId   uint64
39012	urlParams_   gensupport.URLParams
39013	ifNoneMatch_ string
39014	ctx_         context.Context
39015	header_      http.Header
39016}
39017
39018// Getsupportedcarriers: Retrieves supported carriers and carrier
39019// services for an account.
39020//
39021// - merchantId: The ID of the account for which to retrieve the
39022//   supported carriers.
39023func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
39024	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39025	c.merchantId = merchantId
39026	return c
39027}
39028
39029// Fields allows partial responses to be retrieved. See
39030// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39031// for more information.
39032func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
39033	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39034	return c
39035}
39036
39037// IfNoneMatch sets the optional parameter which makes the operation
39038// fail if the object's ETag matches the given value. This is useful for
39039// getting updates only after the object has changed since the last
39040// request. Use googleapi.IsNotModified to check whether the response
39041// error from Do is the result of In-None-Match.
39042func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
39043	c.ifNoneMatch_ = entityTag
39044	return c
39045}
39046
39047// Context sets the context to be used in this call's Do method. Any
39048// pending HTTP request will be aborted if the provided context is
39049// canceled.
39050func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
39051	c.ctx_ = ctx
39052	return c
39053}
39054
39055// Header returns an http.Header that can be modified by the caller to
39056// add HTTP headers to the request.
39057func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
39058	if c.header_ == nil {
39059		c.header_ = make(http.Header)
39060	}
39061	return c.header_
39062}
39063
39064func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
39065	reqHeaders := make(http.Header)
39066	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
39067	for k, v := range c.header_ {
39068		reqHeaders[k] = v
39069	}
39070	reqHeaders.Set("User-Agent", c.s.userAgent())
39071	if c.ifNoneMatch_ != "" {
39072		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39073	}
39074	var body io.Reader = nil
39075	c.urlParams_.Set("alt", alt)
39076	c.urlParams_.Set("prettyPrint", "false")
39077	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedCarriers")
39078	urls += "?" + c.urlParams_.Encode()
39079	req, err := http.NewRequest("GET", urls, body)
39080	if err != nil {
39081		return nil, err
39082	}
39083	req.Header = reqHeaders
39084	googleapi.Expand(req.URL, map[string]string{
39085		"merchantId": strconv.FormatUint(c.merchantId, 10),
39086	})
39087	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39088}
39089
39090// Do executes the "content.shippingsettings.getsupportedcarriers" call.
39091// Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
39092// will be non-nil. Any non-2xx status code is an error. Response
39093// headers are in either
39094// *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
39095// or (if a response was returned at all) in
39096// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
39097// whether the returned error was because http.StatusNotModified was
39098// returned.
39099func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
39100	gensupport.SetOptions(c.urlParams_, opts...)
39101	res, err := c.doRequest("json")
39102	if res != nil && res.StatusCode == http.StatusNotModified {
39103		if res.Body != nil {
39104			res.Body.Close()
39105		}
39106		return nil, &googleapi.Error{
39107			Code:   res.StatusCode,
39108			Header: res.Header,
39109		}
39110	}
39111	if err != nil {
39112		return nil, err
39113	}
39114	defer googleapi.CloseBody(res)
39115	if err := googleapi.CheckResponse(res); err != nil {
39116		return nil, err
39117	}
39118	ret := &ShippingsettingsGetSupportedCarriersResponse{
39119		ServerResponse: googleapi.ServerResponse{
39120			Header:         res.Header,
39121			HTTPStatusCode: res.StatusCode,
39122		},
39123	}
39124	target := &ret
39125	if err := gensupport.DecodeResponse(target, res); err != nil {
39126		return nil, err
39127	}
39128	return ret, nil
39129	// {
39130	//   "description": "Retrieves supported carriers and carrier services for an account.",
39131	//   "flatPath": "{merchantId}/supportedCarriers",
39132	//   "httpMethod": "GET",
39133	//   "id": "content.shippingsettings.getsupportedcarriers",
39134	//   "parameterOrder": [
39135	//     "merchantId"
39136	//   ],
39137	//   "parameters": {
39138	//     "merchantId": {
39139	//       "description": "The ID of the account for which to retrieve the supported carriers.",
39140	//       "format": "uint64",
39141	//       "location": "path",
39142	//       "required": true,
39143	//       "type": "string"
39144	//     }
39145	//   },
39146	//   "path": "{merchantId}/supportedCarriers",
39147	//   "response": {
39148	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
39149	//   },
39150	//   "scopes": [
39151	//     "https://www.googleapis.com/auth/content"
39152	//   ]
39153	// }
39154
39155}
39156
39157// method id "content.shippingsettings.getsupportedholidays":
39158
39159type ShippingsettingsGetsupportedholidaysCall struct {
39160	s            *APIService
39161	merchantId   uint64
39162	urlParams_   gensupport.URLParams
39163	ifNoneMatch_ string
39164	ctx_         context.Context
39165	header_      http.Header
39166}
39167
39168// Getsupportedholidays: Retrieves supported holidays for an account.
39169//
39170// - merchantId: The ID of the account for which to retrieve the
39171//   supported holidays.
39172func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
39173	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39174	c.merchantId = merchantId
39175	return c
39176}
39177
39178// Fields allows partial responses to be retrieved. See
39179// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39180// for more information.
39181func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
39182	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39183	return c
39184}
39185
39186// IfNoneMatch sets the optional parameter which makes the operation
39187// fail if the object's ETag matches the given value. This is useful for
39188// getting updates only after the object has changed since the last
39189// request. Use googleapi.IsNotModified to check whether the response
39190// error from Do is the result of In-None-Match.
39191func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
39192	c.ifNoneMatch_ = entityTag
39193	return c
39194}
39195
39196// Context sets the context to be used in this call's Do method. Any
39197// pending HTTP request will be aborted if the provided context is
39198// canceled.
39199func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
39200	c.ctx_ = ctx
39201	return c
39202}
39203
39204// Header returns an http.Header that can be modified by the caller to
39205// add HTTP headers to the request.
39206func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
39207	if c.header_ == nil {
39208		c.header_ = make(http.Header)
39209	}
39210	return c.header_
39211}
39212
39213func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
39214	reqHeaders := make(http.Header)
39215	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
39216	for k, v := range c.header_ {
39217		reqHeaders[k] = v
39218	}
39219	reqHeaders.Set("User-Agent", c.s.userAgent())
39220	if c.ifNoneMatch_ != "" {
39221		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39222	}
39223	var body io.Reader = nil
39224	c.urlParams_.Set("alt", alt)
39225	c.urlParams_.Set("prettyPrint", "false")
39226	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedHolidays")
39227	urls += "?" + c.urlParams_.Encode()
39228	req, err := http.NewRequest("GET", urls, body)
39229	if err != nil {
39230		return nil, err
39231	}
39232	req.Header = reqHeaders
39233	googleapi.Expand(req.URL, map[string]string{
39234		"merchantId": strconv.FormatUint(c.merchantId, 10),
39235	})
39236	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39237}
39238
39239// Do executes the "content.shippingsettings.getsupportedholidays" call.
39240// Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
39241// will be non-nil. Any non-2xx status code is an error. Response
39242// headers are in either
39243// *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
39244// or (if a response was returned at all) in
39245// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
39246// whether the returned error was because http.StatusNotModified was
39247// returned.
39248func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
39249	gensupport.SetOptions(c.urlParams_, opts...)
39250	res, err := c.doRequest("json")
39251	if res != nil && res.StatusCode == http.StatusNotModified {
39252		if res.Body != nil {
39253			res.Body.Close()
39254		}
39255		return nil, &googleapi.Error{
39256			Code:   res.StatusCode,
39257			Header: res.Header,
39258		}
39259	}
39260	if err != nil {
39261		return nil, err
39262	}
39263	defer googleapi.CloseBody(res)
39264	if err := googleapi.CheckResponse(res); err != nil {
39265		return nil, err
39266	}
39267	ret := &ShippingsettingsGetSupportedHolidaysResponse{
39268		ServerResponse: googleapi.ServerResponse{
39269			Header:         res.Header,
39270			HTTPStatusCode: res.StatusCode,
39271		},
39272	}
39273	target := &ret
39274	if err := gensupport.DecodeResponse(target, res); err != nil {
39275		return nil, err
39276	}
39277	return ret, nil
39278	// {
39279	//   "description": "Retrieves supported holidays for an account.",
39280	//   "flatPath": "{merchantId}/supportedHolidays",
39281	//   "httpMethod": "GET",
39282	//   "id": "content.shippingsettings.getsupportedholidays",
39283	//   "parameterOrder": [
39284	//     "merchantId"
39285	//   ],
39286	//   "parameters": {
39287	//     "merchantId": {
39288	//       "description": "The ID of the account for which to retrieve the supported holidays.",
39289	//       "format": "uint64",
39290	//       "location": "path",
39291	//       "required": true,
39292	//       "type": "string"
39293	//     }
39294	//   },
39295	//   "path": "{merchantId}/supportedHolidays",
39296	//   "response": {
39297	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
39298	//   },
39299	//   "scopes": [
39300	//     "https://www.googleapis.com/auth/content"
39301	//   ]
39302	// }
39303
39304}
39305
39306// method id "content.shippingsettings.getsupportedpickupservices":
39307
39308type ShippingsettingsGetsupportedpickupservicesCall struct {
39309	s            *APIService
39310	merchantId   uint64
39311	urlParams_   gensupport.URLParams
39312	ifNoneMatch_ string
39313	ctx_         context.Context
39314	header_      http.Header
39315}
39316
39317// Getsupportedpickupservices: Retrieves supported pickup services for
39318// an account.
39319//
39320// - merchantId: The ID of the account for which to retrieve the
39321//   supported pickup services.
39322func (r *ShippingsettingsService) Getsupportedpickupservices(merchantId uint64) *ShippingsettingsGetsupportedpickupservicesCall {
39323	c := &ShippingsettingsGetsupportedpickupservicesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39324	c.merchantId = merchantId
39325	return c
39326}
39327
39328// Fields allows partial responses to be retrieved. See
39329// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39330// for more information.
39331func (c *ShippingsettingsGetsupportedpickupservicesCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedpickupservicesCall {
39332	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39333	return c
39334}
39335
39336// IfNoneMatch sets the optional parameter which makes the operation
39337// fail if the object's ETag matches the given value. This is useful for
39338// getting updates only after the object has changed since the last
39339// request. Use googleapi.IsNotModified to check whether the response
39340// error from Do is the result of In-None-Match.
39341func (c *ShippingsettingsGetsupportedpickupservicesCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedpickupservicesCall {
39342	c.ifNoneMatch_ = entityTag
39343	return c
39344}
39345
39346// Context sets the context to be used in this call's Do method. Any
39347// pending HTTP request will be aborted if the provided context is
39348// canceled.
39349func (c *ShippingsettingsGetsupportedpickupservicesCall) Context(ctx context.Context) *ShippingsettingsGetsupportedpickupservicesCall {
39350	c.ctx_ = ctx
39351	return c
39352}
39353
39354// Header returns an http.Header that can be modified by the caller to
39355// add HTTP headers to the request.
39356func (c *ShippingsettingsGetsupportedpickupservicesCall) Header() http.Header {
39357	if c.header_ == nil {
39358		c.header_ = make(http.Header)
39359	}
39360	return c.header_
39361}
39362
39363func (c *ShippingsettingsGetsupportedpickupservicesCall) doRequest(alt string) (*http.Response, error) {
39364	reqHeaders := make(http.Header)
39365	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
39366	for k, v := range c.header_ {
39367		reqHeaders[k] = v
39368	}
39369	reqHeaders.Set("User-Agent", c.s.userAgent())
39370	if c.ifNoneMatch_ != "" {
39371		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39372	}
39373	var body io.Reader = nil
39374	c.urlParams_.Set("alt", alt)
39375	c.urlParams_.Set("prettyPrint", "false")
39376	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedPickupServices")
39377	urls += "?" + c.urlParams_.Encode()
39378	req, err := http.NewRequest("GET", urls, body)
39379	if err != nil {
39380		return nil, err
39381	}
39382	req.Header = reqHeaders
39383	googleapi.Expand(req.URL, map[string]string{
39384		"merchantId": strconv.FormatUint(c.merchantId, 10),
39385	})
39386	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39387}
39388
39389// Do executes the "content.shippingsettings.getsupportedpickupservices" call.
39390// Exactly one of *ShippingsettingsGetSupportedPickupServicesResponse or
39391// error will be non-nil. Any non-2xx status code is an error. Response
39392// headers are in either
39393// *ShippingsettingsGetSupportedPickupServicesResponse.ServerResponse.Hea
39394// der or (if a response was returned at all) in
39395// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
39396// whether the returned error was because http.StatusNotModified was
39397// returned.
39398func (c *ShippingsettingsGetsupportedpickupservicesCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedPickupServicesResponse, error) {
39399	gensupport.SetOptions(c.urlParams_, opts...)
39400	res, err := c.doRequest("json")
39401	if res != nil && res.StatusCode == http.StatusNotModified {
39402		if res.Body != nil {
39403			res.Body.Close()
39404		}
39405		return nil, &googleapi.Error{
39406			Code:   res.StatusCode,
39407			Header: res.Header,
39408		}
39409	}
39410	if err != nil {
39411		return nil, err
39412	}
39413	defer googleapi.CloseBody(res)
39414	if err := googleapi.CheckResponse(res); err != nil {
39415		return nil, err
39416	}
39417	ret := &ShippingsettingsGetSupportedPickupServicesResponse{
39418		ServerResponse: googleapi.ServerResponse{
39419			Header:         res.Header,
39420			HTTPStatusCode: res.StatusCode,
39421		},
39422	}
39423	target := &ret
39424	if err := gensupport.DecodeResponse(target, res); err != nil {
39425		return nil, err
39426	}
39427	return ret, nil
39428	// {
39429	//   "description": "Retrieves supported pickup services for an account.",
39430	//   "flatPath": "{merchantId}/supportedPickupServices",
39431	//   "httpMethod": "GET",
39432	//   "id": "content.shippingsettings.getsupportedpickupservices",
39433	//   "parameterOrder": [
39434	//     "merchantId"
39435	//   ],
39436	//   "parameters": {
39437	//     "merchantId": {
39438	//       "description": "The ID of the account for which to retrieve the supported pickup services.",
39439	//       "format": "uint64",
39440	//       "location": "path",
39441	//       "required": true,
39442	//       "type": "string"
39443	//     }
39444	//   },
39445	//   "path": "{merchantId}/supportedPickupServices",
39446	//   "response": {
39447	//     "$ref": "ShippingsettingsGetSupportedPickupServicesResponse"
39448	//   },
39449	//   "scopes": [
39450	//     "https://www.googleapis.com/auth/content"
39451	//   ]
39452	// }
39453
39454}
39455
39456// method id "content.shippingsettings.list":
39457
39458type ShippingsettingsListCall struct {
39459	s            *APIService
39460	merchantId   uint64
39461	urlParams_   gensupport.URLParams
39462	ifNoneMatch_ string
39463	ctx_         context.Context
39464	header_      http.Header
39465}
39466
39467// List: Lists the shipping settings of the sub-accounts in your
39468// Merchant Center account.
39469//
39470// - merchantId: The ID of the managing account. This must be a
39471//   multi-client account.
39472func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
39473	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39474	c.merchantId = merchantId
39475	return c
39476}
39477
39478// MaxResults sets the optional parameter "maxResults": The maximum
39479// number of shipping settings to return in the response, used for
39480// paging.
39481func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
39482	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
39483	return c
39484}
39485
39486// PageToken sets the optional parameter "pageToken": The token returned
39487// by the previous request.
39488func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
39489	c.urlParams_.Set("pageToken", pageToken)
39490	return c
39491}
39492
39493// Fields allows partial responses to be retrieved. See
39494// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39495// for more information.
39496func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
39497	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39498	return c
39499}
39500
39501// IfNoneMatch sets the optional parameter which makes the operation
39502// fail if the object's ETag matches the given value. This is useful for
39503// getting updates only after the object has changed since the last
39504// request. Use googleapi.IsNotModified to check whether the response
39505// error from Do is the result of In-None-Match.
39506func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
39507	c.ifNoneMatch_ = entityTag
39508	return c
39509}
39510
39511// Context sets the context to be used in this call's Do method. Any
39512// pending HTTP request will be aborted if the provided context is
39513// canceled.
39514func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
39515	c.ctx_ = ctx
39516	return c
39517}
39518
39519// Header returns an http.Header that can be modified by the caller to
39520// add HTTP headers to the request.
39521func (c *ShippingsettingsListCall) Header() http.Header {
39522	if c.header_ == nil {
39523		c.header_ = make(http.Header)
39524	}
39525	return c.header_
39526}
39527
39528func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
39529	reqHeaders := make(http.Header)
39530	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
39531	for k, v := range c.header_ {
39532		reqHeaders[k] = v
39533	}
39534	reqHeaders.Set("User-Agent", c.s.userAgent())
39535	if c.ifNoneMatch_ != "" {
39536		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39537	}
39538	var body io.Reader = nil
39539	c.urlParams_.Set("alt", alt)
39540	c.urlParams_.Set("prettyPrint", "false")
39541	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings")
39542	urls += "?" + c.urlParams_.Encode()
39543	req, err := http.NewRequest("GET", urls, body)
39544	if err != nil {
39545		return nil, err
39546	}
39547	req.Header = reqHeaders
39548	googleapi.Expand(req.URL, map[string]string{
39549		"merchantId": strconv.FormatUint(c.merchantId, 10),
39550	})
39551	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39552}
39553
39554// Do executes the "content.shippingsettings.list" call.
39555// Exactly one of *ShippingsettingsListResponse or error will be
39556// non-nil. Any non-2xx status code is an error. Response headers are in
39557// either *ShippingsettingsListResponse.ServerResponse.Header or (if a
39558// response was returned at all) in error.(*googleapi.Error).Header. Use
39559// googleapi.IsNotModified to check whether the returned error was
39560// because http.StatusNotModified was returned.
39561func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
39562	gensupport.SetOptions(c.urlParams_, opts...)
39563	res, err := c.doRequest("json")
39564	if res != nil && res.StatusCode == http.StatusNotModified {
39565		if res.Body != nil {
39566			res.Body.Close()
39567		}
39568		return nil, &googleapi.Error{
39569			Code:   res.StatusCode,
39570			Header: res.Header,
39571		}
39572	}
39573	if err != nil {
39574		return nil, err
39575	}
39576	defer googleapi.CloseBody(res)
39577	if err := googleapi.CheckResponse(res); err != nil {
39578		return nil, err
39579	}
39580	ret := &ShippingsettingsListResponse{
39581		ServerResponse: googleapi.ServerResponse{
39582			Header:         res.Header,
39583			HTTPStatusCode: res.StatusCode,
39584		},
39585	}
39586	target := &ret
39587	if err := gensupport.DecodeResponse(target, res); err != nil {
39588		return nil, err
39589	}
39590	return ret, nil
39591	// {
39592	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
39593	//   "flatPath": "{merchantId}/shippingsettings",
39594	//   "httpMethod": "GET",
39595	//   "id": "content.shippingsettings.list",
39596	//   "parameterOrder": [
39597	//     "merchantId"
39598	//   ],
39599	//   "parameters": {
39600	//     "maxResults": {
39601	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
39602	//       "format": "uint32",
39603	//       "location": "query",
39604	//       "type": "integer"
39605	//     },
39606	//     "merchantId": {
39607	//       "description": "The ID of the managing account. This must be a multi-client account.",
39608	//       "format": "uint64",
39609	//       "location": "path",
39610	//       "required": true,
39611	//       "type": "string"
39612	//     },
39613	//     "pageToken": {
39614	//       "description": "The token returned by the previous request.",
39615	//       "location": "query",
39616	//       "type": "string"
39617	//     }
39618	//   },
39619	//   "path": "{merchantId}/shippingsettings",
39620	//   "response": {
39621	//     "$ref": "ShippingsettingsListResponse"
39622	//   },
39623	//   "scopes": [
39624	//     "https://www.googleapis.com/auth/content"
39625	//   ]
39626	// }
39627
39628}
39629
39630// Pages invokes f for each page of results.
39631// A non-nil error returned from f will halt the iteration.
39632// The provided context supersedes any context provided to the Context method.
39633func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
39634	c.ctx_ = ctx
39635	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
39636	for {
39637		x, err := c.Do()
39638		if err != nil {
39639			return err
39640		}
39641		if err := f(x); err != nil {
39642			return err
39643		}
39644		if x.NextPageToken == "" {
39645			return nil
39646		}
39647		c.PageToken(x.NextPageToken)
39648	}
39649}
39650
39651// method id "content.shippingsettings.update":
39652
39653type ShippingsettingsUpdateCall struct {
39654	s                *APIService
39655	merchantId       uint64
39656	accountId        uint64
39657	shippingsettings *ShippingSettings
39658	urlParams_       gensupport.URLParams
39659	ctx_             context.Context
39660	header_          http.Header
39661}
39662
39663// Update: Updates the shipping settings of the account. Any fields that
39664// are not provided are deleted from the resource.
39665//
39666// - accountId: The ID of the account for which to get/update shipping
39667//   settings.
39668// - merchantId: The ID of the managing account. If this parameter is
39669//   not the same as accountId, then this account must be a multi-client
39670//   account and `accountId` must be the ID of a sub-account of this
39671//   account.
39672func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
39673	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39674	c.merchantId = merchantId
39675	c.accountId = accountId
39676	c.shippingsettings = shippingsettings
39677	return c
39678}
39679
39680// Fields allows partial responses to be retrieved. See
39681// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39682// for more information.
39683func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
39684	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39685	return c
39686}
39687
39688// Context sets the context to be used in this call's Do method. Any
39689// pending HTTP request will be aborted if the provided context is
39690// canceled.
39691func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
39692	c.ctx_ = ctx
39693	return c
39694}
39695
39696// Header returns an http.Header that can be modified by the caller to
39697// add HTTP headers to the request.
39698func (c *ShippingsettingsUpdateCall) Header() http.Header {
39699	if c.header_ == nil {
39700		c.header_ = make(http.Header)
39701	}
39702	return c.header_
39703}
39704
39705func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
39706	reqHeaders := make(http.Header)
39707	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410")
39708	for k, v := range c.header_ {
39709		reqHeaders[k] = v
39710	}
39711	reqHeaders.Set("User-Agent", c.s.userAgent())
39712	var body io.Reader = nil
39713	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
39714	if err != nil {
39715		return nil, err
39716	}
39717	reqHeaders.Set("Content-Type", "application/json")
39718	c.urlParams_.Set("alt", alt)
39719	c.urlParams_.Set("prettyPrint", "false")
39720	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
39721	urls += "?" + c.urlParams_.Encode()
39722	req, err := http.NewRequest("PUT", urls, body)
39723	if err != nil {
39724		return nil, err
39725	}
39726	req.Header = reqHeaders
39727	googleapi.Expand(req.URL, map[string]string{
39728		"merchantId": strconv.FormatUint(c.merchantId, 10),
39729		"accountId":  strconv.FormatUint(c.accountId, 10),
39730	})
39731	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39732}
39733
39734// Do executes the "content.shippingsettings.update" call.
39735// Exactly one of *ShippingSettings or error will be non-nil. Any
39736// non-2xx status code is an error. Response headers are in either
39737// *ShippingSettings.ServerResponse.Header or (if a response was
39738// returned at all) in error.(*googleapi.Error).Header. Use
39739// googleapi.IsNotModified to check whether the returned error was
39740// because http.StatusNotModified was returned.
39741func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
39742	gensupport.SetOptions(c.urlParams_, opts...)
39743	res, err := c.doRequest("json")
39744	if res != nil && res.StatusCode == http.StatusNotModified {
39745		if res.Body != nil {
39746			res.Body.Close()
39747		}
39748		return nil, &googleapi.Error{
39749			Code:   res.StatusCode,
39750			Header: res.Header,
39751		}
39752	}
39753	if err != nil {
39754		return nil, err
39755	}
39756	defer googleapi.CloseBody(res)
39757	if err := googleapi.CheckResponse(res); err != nil {
39758		return nil, err
39759	}
39760	ret := &ShippingSettings{
39761		ServerResponse: googleapi.ServerResponse{
39762			Header:         res.Header,
39763			HTTPStatusCode: res.StatusCode,
39764		},
39765	}
39766	target := &ret
39767	if err := gensupport.DecodeResponse(target, res); err != nil {
39768		return nil, err
39769	}
39770	return ret, nil
39771	// {
39772	//   "description": "Updates the shipping settings of the account. Any fields that are not provided are deleted from the resource.",
39773	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
39774	//   "httpMethod": "PUT",
39775	//   "id": "content.shippingsettings.update",
39776	//   "parameterOrder": [
39777	//     "merchantId",
39778	//     "accountId"
39779	//   ],
39780	//   "parameters": {
39781	//     "accountId": {
39782	//       "description": "The ID of the account for which to get/update shipping settings.",
39783	//       "format": "uint64",
39784	//       "location": "path",
39785	//       "required": true,
39786	//       "type": "string"
39787	//     },
39788	//     "merchantId": {
39789	//       "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.",
39790	//       "format": "uint64",
39791	//       "location": "path",
39792	//       "required": true,
39793	//       "type": "string"
39794	//     }
39795	//   },
39796	//   "path": "{merchantId}/shippingsettings/{accountId}",
39797	//   "request": {
39798	//     "$ref": "ShippingSettings"
39799	//   },
39800	//   "response": {
39801	//     "$ref": "ShippingSettings"
39802	//   },
39803	//   "scopes": [
39804	//     "https://www.googleapis.com/auth/content"
39805	//   ]
39806	// }
39807
39808}
39809