1// Copyright 2021 Google LLC.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated file. DO NOT EDIT.
6
7// Package content provides access to the Content API for Shopping.
8//
9// For product documentation, see: https://developers.google.com/shopping-content/v2/
10//
11// Creating a client
12//
13// Usage example:
14//
15//   import "google.golang.org/api/content/v2.1"
16//   ...
17//   ctx := context.Background()
18//   contentService, err := content.NewService(ctx)
19//
20// In this example, Google Application Default Credentials are used for authentication.
21//
22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
23//
24// Other authentication options
25//
26// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
27//
28//   contentService, err := content.NewService(ctx, option.WithAPIKey("AIza..."))
29//
30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
31//
32//   config := &oauth2.Config{...}
33//   // ...
34//   token, err := config.Exchange(ctx, ...)
35//   contentService, err := content.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
36//
37// See https://godoc.org/google.golang.org/api/option/ for details on options.
38package content // import "google.golang.org/api/content/v2.1"
39
40import (
41	"bytes"
42	"context"
43	"encoding/json"
44	"errors"
45	"fmt"
46	"io"
47	"net/http"
48	"net/url"
49	"strconv"
50	"strings"
51
52	googleapi "google.golang.org/api/googleapi"
53	gensupport "google.golang.org/api/internal/gensupport"
54	option "google.golang.org/api/option"
55	internaloption "google.golang.org/api/option/internaloption"
56	htransport "google.golang.org/api/transport/http"
57)
58
59// Always reference these packages, just in case the auto-generated code
60// below doesn't.
61var _ = bytes.NewBuffer
62var _ = strconv.Itoa
63var _ = fmt.Sprintf
64var _ = json.NewDecoder
65var _ = io.Copy
66var _ = url.Parse
67var _ = gensupport.MarshalJSON
68var _ = googleapi.Version
69var _ = errors.New
70var _ = strings.Replace
71var _ = context.Canceled
72var _ = internaloption.WithDefaultEndpoint
73
74const apiId = "content:v2.1"
75const apiName = "content"
76const apiVersion = "v2.1"
77const basePath = "https://shoppingcontent.googleapis.com/content/v2.1/"
78const mtlsBasePath = "https://shoppingcontent.mtls.googleapis.com/content/v2.1/"
79
80// OAuth2 scopes used by this API.
81const (
82	// Manage your product listings and accounts for Google Shopping
83	ContentScope = "https://www.googleapis.com/auth/content"
84)
85
86// NewService creates a new APIService.
87func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
88	scopesOption := option.WithScopes(
89		"https://www.googleapis.com/auth/content",
90	)
91	// NOTE: prepend, so we don't override user-specified scopes.
92	opts = append([]option.ClientOption{scopesOption}, opts...)
93	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
94	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
95	client, endpoint, err := htransport.NewClient(ctx, opts...)
96	if err != nil {
97		return nil, err
98	}
99	s, err := New(client)
100	if err != nil {
101		return nil, err
102	}
103	if endpoint != "" {
104		s.BasePath = endpoint
105	}
106	return s, nil
107}
108
109// New creates a new APIService. It uses the provided http.Client for requests.
110//
111// Deprecated: please use NewService instead.
112// To provide a custom HTTP client, use option.WithHTTPClient.
113// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
114func New(client *http.Client) (*APIService, error) {
115	if client == nil {
116		return nil, errors.New("client is nil")
117	}
118	s := &APIService{client: client, BasePath: basePath}
119	s.Accounts = NewAccountsService(s)
120	s.Accountstatuses = NewAccountstatusesService(s)
121	s.Accounttax = NewAccounttaxService(s)
122	s.Buyongoogleprograms = NewBuyongoogleprogramsService(s)
123	s.Collections = NewCollectionsService(s)
124	s.Collectionstatuses = NewCollectionstatusesService(s)
125	s.Csses = NewCssesService(s)
126	s.Datafeeds = NewDatafeedsService(s)
127	s.Datafeedstatuses = NewDatafeedstatusesService(s)
128	s.Freelistingsprogram = NewFreelistingsprogramService(s)
129	s.Liasettings = NewLiasettingsService(s)
130	s.Localinventory = NewLocalinventoryService(s)
131	s.Orderinvoices = NewOrderinvoicesService(s)
132	s.Orderreports = NewOrderreportsService(s)
133	s.Orderreturns = NewOrderreturnsService(s)
134	s.Orders = NewOrdersService(s)
135	s.Ordertrackingsignals = NewOrdertrackingsignalsService(s)
136	s.Pos = NewPosService(s)
137	s.Products = NewProductsService(s)
138	s.Productstatuses = NewProductstatusesService(s)
139	s.Pubsubnotificationsettings = NewPubsubnotificationsettingsService(s)
140	s.Regionalinventory = NewRegionalinventoryService(s)
141	s.Regions = NewRegionsService(s)
142	s.Reports = NewReportsService(s)
143	s.Repricingrules = NewRepricingrulesService(s)
144	s.Returnaddress = NewReturnaddressService(s)
145	s.Returnpolicy = NewReturnpolicyService(s)
146	s.Returnpolicyonline = NewReturnpolicyonlineService(s)
147	s.Settlementreports = NewSettlementreportsService(s)
148	s.Settlementtransactions = NewSettlementtransactionsService(s)
149	s.Shippingsettings = NewShippingsettingsService(s)
150	s.Shoppingadsprogram = NewShoppingadsprogramService(s)
151	return s, nil
152}
153
154type APIService struct {
155	client    *http.Client
156	BasePath  string // API endpoint base URL
157	UserAgent string // optional additional User-Agent fragment
158
159	Accounts *AccountsService
160
161	Accountstatuses *AccountstatusesService
162
163	Accounttax *AccounttaxService
164
165	Buyongoogleprograms *BuyongoogleprogramsService
166
167	Collections *CollectionsService
168
169	Collectionstatuses *CollectionstatusesService
170
171	Csses *CssesService
172
173	Datafeeds *DatafeedsService
174
175	Datafeedstatuses *DatafeedstatusesService
176
177	Freelistingsprogram *FreelistingsprogramService
178
179	Liasettings *LiasettingsService
180
181	Localinventory *LocalinventoryService
182
183	Orderinvoices *OrderinvoicesService
184
185	Orderreports *OrderreportsService
186
187	Orderreturns *OrderreturnsService
188
189	Orders *OrdersService
190
191	Ordertrackingsignals *OrdertrackingsignalsService
192
193	Pos *PosService
194
195	Products *ProductsService
196
197	Productstatuses *ProductstatusesService
198
199	Pubsubnotificationsettings *PubsubnotificationsettingsService
200
201	Regionalinventory *RegionalinventoryService
202
203	Regions *RegionsService
204
205	Reports *ReportsService
206
207	Repricingrules *RepricingrulesService
208
209	Returnaddress *ReturnaddressService
210
211	Returnpolicy *ReturnpolicyService
212
213	Returnpolicyonline *ReturnpolicyonlineService
214
215	Settlementreports *SettlementreportsService
216
217	Settlementtransactions *SettlementtransactionsService
218
219	Shippingsettings *ShippingsettingsService
220
221	Shoppingadsprogram *ShoppingadsprogramService
222}
223
224func (s *APIService) userAgent() string {
225	if s.UserAgent == "" {
226		return googleapi.UserAgent
227	}
228	return googleapi.UserAgent + " " + s.UserAgent
229}
230
231func NewAccountsService(s *APIService) *AccountsService {
232	rs := &AccountsService{s: s}
233	rs.Credentials = NewAccountsCredentialsService(s)
234	rs.Labels = NewAccountsLabelsService(s)
235	rs.Returncarrier = NewAccountsReturncarrierService(s)
236	return rs
237}
238
239type AccountsService struct {
240	s *APIService
241
242	Credentials *AccountsCredentialsService
243
244	Labels *AccountsLabelsService
245
246	Returncarrier *AccountsReturncarrierService
247}
248
249func NewAccountsCredentialsService(s *APIService) *AccountsCredentialsService {
250	rs := &AccountsCredentialsService{s: s}
251	return rs
252}
253
254type AccountsCredentialsService struct {
255	s *APIService
256}
257
258func NewAccountsLabelsService(s *APIService) *AccountsLabelsService {
259	rs := &AccountsLabelsService{s: s}
260	return rs
261}
262
263type AccountsLabelsService struct {
264	s *APIService
265}
266
267func NewAccountsReturncarrierService(s *APIService) *AccountsReturncarrierService {
268	rs := &AccountsReturncarrierService{s: s}
269	return rs
270}
271
272type AccountsReturncarrierService struct {
273	s *APIService
274}
275
276func NewAccountstatusesService(s *APIService) *AccountstatusesService {
277	rs := &AccountstatusesService{s: s}
278	return rs
279}
280
281type AccountstatusesService struct {
282	s *APIService
283}
284
285func NewAccounttaxService(s *APIService) *AccounttaxService {
286	rs := &AccounttaxService{s: s}
287	return rs
288}
289
290type AccounttaxService struct {
291	s *APIService
292}
293
294func NewBuyongoogleprogramsService(s *APIService) *BuyongoogleprogramsService {
295	rs := &BuyongoogleprogramsService{s: s}
296	return rs
297}
298
299type BuyongoogleprogramsService struct {
300	s *APIService
301}
302
303func NewCollectionsService(s *APIService) *CollectionsService {
304	rs := &CollectionsService{s: s}
305	return rs
306}
307
308type CollectionsService struct {
309	s *APIService
310}
311
312func NewCollectionstatusesService(s *APIService) *CollectionstatusesService {
313	rs := &CollectionstatusesService{s: s}
314	return rs
315}
316
317type CollectionstatusesService struct {
318	s *APIService
319}
320
321func NewCssesService(s *APIService) *CssesService {
322	rs := &CssesService{s: s}
323	return rs
324}
325
326type CssesService struct {
327	s *APIService
328}
329
330func NewDatafeedsService(s *APIService) *DatafeedsService {
331	rs := &DatafeedsService{s: s}
332	return rs
333}
334
335type DatafeedsService struct {
336	s *APIService
337}
338
339func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
340	rs := &DatafeedstatusesService{s: s}
341	return rs
342}
343
344type DatafeedstatusesService struct {
345	s *APIService
346}
347
348func NewFreelistingsprogramService(s *APIService) *FreelistingsprogramService {
349	rs := &FreelistingsprogramService{s: s}
350	return rs
351}
352
353type FreelistingsprogramService struct {
354	s *APIService
355}
356
357func NewLiasettingsService(s *APIService) *LiasettingsService {
358	rs := &LiasettingsService{s: s}
359	return rs
360}
361
362type LiasettingsService struct {
363	s *APIService
364}
365
366func NewLocalinventoryService(s *APIService) *LocalinventoryService {
367	rs := &LocalinventoryService{s: s}
368	return rs
369}
370
371type LocalinventoryService struct {
372	s *APIService
373}
374
375func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
376	rs := &OrderinvoicesService{s: s}
377	return rs
378}
379
380type OrderinvoicesService struct {
381	s *APIService
382}
383
384func NewOrderreportsService(s *APIService) *OrderreportsService {
385	rs := &OrderreportsService{s: s}
386	return rs
387}
388
389type OrderreportsService struct {
390	s *APIService
391}
392
393func NewOrderreturnsService(s *APIService) *OrderreturnsService {
394	rs := &OrderreturnsService{s: s}
395	rs.Labels = NewOrderreturnsLabelsService(s)
396	return rs
397}
398
399type OrderreturnsService struct {
400	s *APIService
401
402	Labels *OrderreturnsLabelsService
403}
404
405func NewOrderreturnsLabelsService(s *APIService) *OrderreturnsLabelsService {
406	rs := &OrderreturnsLabelsService{s: s}
407	return rs
408}
409
410type OrderreturnsLabelsService struct {
411	s *APIService
412}
413
414func NewOrdersService(s *APIService) *OrdersService {
415	rs := &OrdersService{s: s}
416	return rs
417}
418
419type OrdersService struct {
420	s *APIService
421}
422
423func NewOrdertrackingsignalsService(s *APIService) *OrdertrackingsignalsService {
424	rs := &OrdertrackingsignalsService{s: s}
425	return rs
426}
427
428type OrdertrackingsignalsService struct {
429	s *APIService
430}
431
432func NewPosService(s *APIService) *PosService {
433	rs := &PosService{s: s}
434	return rs
435}
436
437type PosService struct {
438	s *APIService
439}
440
441func NewProductsService(s *APIService) *ProductsService {
442	rs := &ProductsService{s: s}
443	return rs
444}
445
446type ProductsService struct {
447	s *APIService
448}
449
450func NewProductstatusesService(s *APIService) *ProductstatusesService {
451	rs := &ProductstatusesService{s: s}
452	rs.Repricingreports = NewProductstatusesRepricingreportsService(s)
453	return rs
454}
455
456type ProductstatusesService struct {
457	s *APIService
458
459	Repricingreports *ProductstatusesRepricingreportsService
460}
461
462func NewProductstatusesRepricingreportsService(s *APIService) *ProductstatusesRepricingreportsService {
463	rs := &ProductstatusesRepricingreportsService{s: s}
464	return rs
465}
466
467type ProductstatusesRepricingreportsService struct {
468	s *APIService
469}
470
471func NewPubsubnotificationsettingsService(s *APIService) *PubsubnotificationsettingsService {
472	rs := &PubsubnotificationsettingsService{s: s}
473	return rs
474}
475
476type PubsubnotificationsettingsService struct {
477	s *APIService
478}
479
480func NewRegionalinventoryService(s *APIService) *RegionalinventoryService {
481	rs := &RegionalinventoryService{s: s}
482	return rs
483}
484
485type RegionalinventoryService struct {
486	s *APIService
487}
488
489func NewRegionsService(s *APIService) *RegionsService {
490	rs := &RegionsService{s: s}
491	return rs
492}
493
494type RegionsService struct {
495	s *APIService
496}
497
498func NewReportsService(s *APIService) *ReportsService {
499	rs := &ReportsService{s: s}
500	return rs
501}
502
503type ReportsService struct {
504	s *APIService
505}
506
507func NewRepricingrulesService(s *APIService) *RepricingrulesService {
508	rs := &RepricingrulesService{s: s}
509	rs.Repricingreports = NewRepricingrulesRepricingreportsService(s)
510	return rs
511}
512
513type RepricingrulesService struct {
514	s *APIService
515
516	Repricingreports *RepricingrulesRepricingreportsService
517}
518
519func NewRepricingrulesRepricingreportsService(s *APIService) *RepricingrulesRepricingreportsService {
520	rs := &RepricingrulesRepricingreportsService{s: s}
521	return rs
522}
523
524type RepricingrulesRepricingreportsService struct {
525	s *APIService
526}
527
528func NewReturnaddressService(s *APIService) *ReturnaddressService {
529	rs := &ReturnaddressService{s: s}
530	return rs
531}
532
533type ReturnaddressService struct {
534	s *APIService
535}
536
537func NewReturnpolicyService(s *APIService) *ReturnpolicyService {
538	rs := &ReturnpolicyService{s: s}
539	return rs
540}
541
542type ReturnpolicyService struct {
543	s *APIService
544}
545
546func NewReturnpolicyonlineService(s *APIService) *ReturnpolicyonlineService {
547	rs := &ReturnpolicyonlineService{s: s}
548	return rs
549}
550
551type ReturnpolicyonlineService struct {
552	s *APIService
553}
554
555func NewSettlementreportsService(s *APIService) *SettlementreportsService {
556	rs := &SettlementreportsService{s: s}
557	return rs
558}
559
560type SettlementreportsService struct {
561	s *APIService
562}
563
564func NewSettlementtransactionsService(s *APIService) *SettlementtransactionsService {
565	rs := &SettlementtransactionsService{s: s}
566	return rs
567}
568
569type SettlementtransactionsService struct {
570	s *APIService
571}
572
573func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
574	rs := &ShippingsettingsService{s: s}
575	return rs
576}
577
578type ShippingsettingsService struct {
579	s *APIService
580}
581
582func NewShoppingadsprogramService(s *APIService) *ShoppingadsprogramService {
583	rs := &ShoppingadsprogramService{s: s}
584	return rs
585}
586
587type ShoppingadsprogramService struct {
588	s *APIService
589}
590
591// Account: Account data. After the creation of a new account it may
592// take a few minutes before it is fully operational. The methods
593// delete, insert, and update require the admin role.
594type Account struct {
595	// AccountManagement: Output only. How the account is managed.
596	// Acceptable values are: - "manual" - "automatic"
597	AccountManagement string `json:"accountManagement,omitempty"`
598
599	// AdsLinks: Linked Ads accounts that are active or pending approval. To
600	// create a new link request, add a new link with status `active` to the
601	// list. It will remain in a `pending` state until approved or rejected
602	// either in the Ads interface or through the AdWords API. To delete an
603	// active link, or to cancel a link request, remove it from the list.
604	AdsLinks []*AccountAdsLink `json:"adsLinks,omitempty"`
605
606	// AdultContent: Indicates whether the merchant sells adult content.
607	AdultContent bool `json:"adultContent,omitempty"`
608
609	// AutomaticLabelIds: Automatically created label IDs that are assigned
610	// to the account by CSS Center.
611	AutomaticLabelIds googleapi.Uint64s `json:"automaticLabelIds,omitempty"`
612
613	// BusinessInformation: The business information of the account.
614	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
615
616	// CssId: ID of CSS the account belongs to.
617	CssId uint64 `json:"cssId,omitempty,string"`
618
619	// GoogleMyBusinessLink: The GMB account which is linked or in the
620	// process of being linked with the Merchant Center account.
621	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
622
623	// Id: Required for update. Merchant Center account ID.
624	Id uint64 `json:"id,omitempty,string"`
625
626	// Kind: Identifies what kind of resource this is. Value: the fixed
627	// string "content#account".
628	Kind string `json:"kind,omitempty"`
629
630	// LabelIds: Manually created label IDs that are assigned to the account
631	// by CSS.
632	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
633
634	// Name: Required. Display name for the account.
635	Name string `json:"name,omitempty"`
636
637	// SellerId: Client-specific, locally-unique, internal ID for the child
638	// account.
639	SellerId string `json:"sellerId,omitempty"`
640
641	// Users: Users with access to the account. Every account (except for
642	// subaccounts) must have at least one admin user.
643	Users []*AccountUser `json:"users,omitempty"`
644
645	// WebsiteUrl: The merchant's website.
646	WebsiteUrl string `json:"websiteUrl,omitempty"`
647
648	// YoutubeChannelLinks: Linked YouTube channels that are active or
649	// pending approval. To create a new link request, add a new link with
650	// status `active` to the list. It will remain in a `pending` state
651	// until approved or rejected in the YT Creator Studio interface. To
652	// delete an active link, or to cancel a link request, remove it from
653	// the list.
654	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
655
656	// ServerResponse contains the HTTP response code and headers from the
657	// server.
658	googleapi.ServerResponse `json:"-"`
659
660	// ForceSendFields is a list of field names (e.g. "AccountManagement")
661	// to unconditionally include in API requests. By default, fields with
662	// empty or default values are omitted from API requests. However, any
663	// non-pointer, non-interface field appearing in ForceSendFields will be
664	// sent to the server regardless of whether the field is empty or not.
665	// This may be used to include empty fields in Patch requests.
666	ForceSendFields []string `json:"-"`
667
668	// NullFields is a list of field names (e.g. "AccountManagement") to
669	// include in API requests with the JSON null value. By default, fields
670	// with empty values are omitted from API requests. However, any field
671	// with an empty value appearing in NullFields will be sent to the
672	// server as null. It is an error if a field in this list has a
673	// non-empty value. This may be used to include null fields in Patch
674	// requests.
675	NullFields []string `json:"-"`
676}
677
678func (s *Account) MarshalJSON() ([]byte, error) {
679	type NoMethod Account
680	raw := NoMethod(*s)
681	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
682}
683
684type AccountAddress struct {
685	// Country: CLDR country code (e.g. "US"). This value cannot be set for
686	// a sub-account of an MCA. All MCA sub-accounts inherit the country of
687	// their parent MCA.
688	Country string `json:"country,omitempty"`
689
690	// Locality: City, town or commune. May also include dependent
691	// localities or sublocalities (e.g. neighborhoods or suburbs).
692	Locality string `json:"locality,omitempty"`
693
694	// PostalCode: Postal code or ZIP (e.g. "94043").
695	PostalCode string `json:"postalCode,omitempty"`
696
697	// Region: Top-level administrative subdivision of the country. For
698	// example, a state like California ("CA") or a province like Quebec
699	// ("QC").
700	Region string `json:"region,omitempty"`
701
702	// StreetAddress: Street-level part of the address.
703	StreetAddress string `json:"streetAddress,omitempty"`
704
705	// ForceSendFields is a list of field names (e.g. "Country") to
706	// unconditionally include in API requests. By default, fields with
707	// empty or default values are omitted from API requests. However, any
708	// non-pointer, non-interface field appearing in ForceSendFields will be
709	// sent to the server regardless of whether the field is empty or not.
710	// This may be used to include empty fields in Patch requests.
711	ForceSendFields []string `json:"-"`
712
713	// NullFields is a list of field names (e.g. "Country") to include in
714	// API requests with the JSON null value. By default, fields with empty
715	// values are omitted from API requests. However, any field with an
716	// empty value appearing in NullFields will be sent to the server as
717	// null. It is an error if a field in this list has a non-empty value.
718	// This may be used to include null fields in Patch requests.
719	NullFields []string `json:"-"`
720}
721
722func (s *AccountAddress) MarshalJSON() ([]byte, error) {
723	type NoMethod AccountAddress
724	raw := NoMethod(*s)
725	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
726}
727
728type AccountAdsLink struct {
729	// AdsId: Customer ID of the Ads account.
730	AdsId uint64 `json:"adsId,omitempty,string"`
731
732	// Status: Status of the link between this Merchant Center account and
733	// the Ads account. Upon retrieval, it represents the actual status of
734	// the link and can be either `active` if it was approved in Google Ads
735	// or `pending` if it's pending approval. Upon insertion, it represents
736	// the *intended* status of the link. Re-uploading a link with status
737	// `active` when it's still pending or with status `pending` when it's
738	// already active will have no effect: the status will remain unchanged.
739	// Re-uploading a link with deprecated status `inactive` is equivalent
740	// to not submitting the link at all and will delete the link if it was
741	// active or cancel the link request if it was pending. Acceptable
742	// values are: - "active" - "pending"
743	Status string `json:"status,omitempty"`
744
745	// ForceSendFields is a list of field names (e.g. "AdsId") to
746	// unconditionally include in API requests. By default, fields with
747	// empty or default values are omitted from API requests. However, any
748	// non-pointer, non-interface field appearing in ForceSendFields will be
749	// sent to the server regardless of whether the field is empty or not.
750	// This may be used to include empty fields in Patch requests.
751	ForceSendFields []string `json:"-"`
752
753	// NullFields is a list of field names (e.g. "AdsId") to include in API
754	// requests with the JSON null value. By default, fields with empty
755	// values are omitted from API requests. However, any field with an
756	// empty value appearing in NullFields will be sent to the server as
757	// null. It is an error if a field in this list has a non-empty value.
758	// This may be used to include null fields in Patch requests.
759	NullFields []string `json:"-"`
760}
761
762func (s *AccountAdsLink) MarshalJSON() ([]byte, error) {
763	type NoMethod AccountAdsLink
764	raw := NoMethod(*s)
765	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
766}
767
768type AccountBusinessInformation struct {
769	// Address: The address of the business.
770	Address *AccountAddress `json:"address,omitempty"`
771
772	// CustomerService: The customer service information of the business.
773	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
774
775	// PhoneNumber: The phone number of the business.
776	PhoneNumber string `json:"phoneNumber,omitempty"`
777
778	// ForceSendFields is a list of field names (e.g. "Address") to
779	// unconditionally include in API requests. By default, fields with
780	// empty or default values are omitted from API requests. However, any
781	// non-pointer, non-interface field appearing in ForceSendFields will be
782	// sent to the server regardless of whether the field is empty or not.
783	// This may be used to include empty fields in Patch requests.
784	ForceSendFields []string `json:"-"`
785
786	// NullFields is a list of field names (e.g. "Address") to include in
787	// API requests with the JSON null value. By default, fields with empty
788	// values are omitted from API requests. However, any field with an
789	// empty value appearing in NullFields will be sent to the server as
790	// null. It is an error if a field in this list has a non-empty value.
791	// This may be used to include null fields in Patch requests.
792	NullFields []string `json:"-"`
793}
794
795func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
796	type NoMethod AccountBusinessInformation
797	raw := NoMethod(*s)
798	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
799}
800
801// AccountCredentials: Credentials allowing Google to call a partner's
802// API on behalf of a merchant.
803type AccountCredentials struct {
804	// AccessToken: An OAuth access token.
805	AccessToken string `json:"accessToken,omitempty"`
806
807	// ExpiresIn: The amount of time, in seconds, after which the access
808	// token is no longer valid.
809	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
810
811	// Purpose: Indicates to Google how Google should use these OAuth
812	// tokens.
813	//
814	// Possible values:
815	//   "ACCOUNT_CREDENTIALS_PURPOSE_UNSPECIFIED" - Unknown purpose.
816	//   "SHOPIFY_ORDER_MANAGEMENT" - The credentials allow Google to manage
817	// Shopify orders on behalf of the merchant.
818	Purpose string `json:"purpose,omitempty"`
819
820	// ServerResponse contains the HTTP response code and headers from the
821	// server.
822	googleapi.ServerResponse `json:"-"`
823
824	// ForceSendFields is a list of field names (e.g. "AccessToken") to
825	// unconditionally include in API requests. By default, fields with
826	// empty or default values are omitted from API requests. However, any
827	// non-pointer, non-interface field appearing in ForceSendFields will be
828	// sent to the server regardless of whether the field is empty or not.
829	// This may be used to include empty fields in Patch requests.
830	ForceSendFields []string `json:"-"`
831
832	// NullFields is a list of field names (e.g. "AccessToken") to include
833	// in API requests with the JSON null value. By default, fields with
834	// empty values are omitted from API requests. However, any field with
835	// an empty value appearing in NullFields will be sent to the server as
836	// null. It is an error if a field in this list has a non-empty value.
837	// This may be used to include null fields in Patch requests.
838	NullFields []string `json:"-"`
839}
840
841func (s *AccountCredentials) MarshalJSON() ([]byte, error) {
842	type NoMethod AccountCredentials
843	raw := NoMethod(*s)
844	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
845}
846
847type AccountCustomerService struct {
848	// Email: Customer service email.
849	Email string `json:"email,omitempty"`
850
851	// PhoneNumber: Customer service phone number.
852	PhoneNumber string `json:"phoneNumber,omitempty"`
853
854	// Url: Customer service URL.
855	Url string `json:"url,omitempty"`
856
857	// ForceSendFields is a list of field names (e.g. "Email") to
858	// unconditionally include in API requests. By default, fields with
859	// empty or default values are omitted from API requests. However, any
860	// non-pointer, non-interface field appearing in ForceSendFields will be
861	// sent to the server regardless of whether the field is empty or not.
862	// This may be used to include empty fields in Patch requests.
863	ForceSendFields []string `json:"-"`
864
865	// NullFields is a list of field names (e.g. "Email") to include in API
866	// requests with the JSON null value. By default, fields with empty
867	// values are omitted from API requests. However, any field with an
868	// empty value appearing in NullFields will be sent to the server as
869	// null. It is an error if a field in this list has a non-empty value.
870	// This may be used to include null fields in Patch requests.
871	NullFields []string `json:"-"`
872}
873
874func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
875	type NoMethod AccountCustomerService
876	raw := NoMethod(*s)
877	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
878}
879
880type AccountGoogleMyBusinessLink struct {
881	// GmbAccountId: The ID of the GMB account. If this is provided, then
882	// `gmbEmail` is ignored. The value of this field should match the
883	// `accountId` used by the GMB API.
884	GmbAccountId string `json:"gmbAccountId,omitempty"`
885
886	// GmbEmail: The GMB email address of which a specific account within a
887	// GMB account. A sample account within a GMB account could be a
888	// business account with set of locations, managed under the GMB
889	// account.
890	GmbEmail string `json:"gmbEmail,omitempty"`
891
892	// Status: Status of the link between this Merchant Center account and
893	// the GMB account. Acceptable values are: - "active" - "pending"
894	Status string `json:"status,omitempty"`
895
896	// ForceSendFields is a list of field names (e.g. "GmbAccountId") to
897	// unconditionally include in API requests. By default, fields with
898	// empty or default values are omitted from API requests. However, any
899	// non-pointer, non-interface field appearing in ForceSendFields will be
900	// sent to the server regardless of whether the field is empty or not.
901	// This may be used to include empty fields in Patch requests.
902	ForceSendFields []string `json:"-"`
903
904	// NullFields is a list of field names (e.g. "GmbAccountId") to include
905	// in API requests with the JSON null value. By default, fields with
906	// empty values are omitted from API requests. However, any field with
907	// an empty value appearing in NullFields will be sent to the server as
908	// null. It is an error if a field in this list has a non-empty value.
909	// This may be used to include null fields in Patch requests.
910	NullFields []string `json:"-"`
911}
912
913func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
914	type NoMethod AccountGoogleMyBusinessLink
915	raw := NoMethod(*s)
916	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
917}
918
919type AccountIdentifier struct {
920	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
921	// (in that case, it represents the aggregator of the subaccount).
922	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
923
924	// MerchantId: The merchant account ID, set for individual accounts and
925	// subaccounts.
926	MerchantId uint64 `json:"merchantId,omitempty,string"`
927
928	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
929	// unconditionally include in API requests. By default, fields with
930	// empty or default values are omitted from API requests. However, any
931	// non-pointer, non-interface field appearing in ForceSendFields will be
932	// sent to the server regardless of whether the field is empty or not.
933	// This may be used to include empty fields in Patch requests.
934	ForceSendFields []string `json:"-"`
935
936	// NullFields is a list of field names (e.g. "AggregatorId") to include
937	// in API requests with the JSON null value. By default, fields with
938	// empty values are omitted from API requests. However, any field with
939	// an empty value appearing in NullFields will be sent to the server as
940	// null. It is an error if a field in this list has a non-empty value.
941	// This may be used to include null fields in Patch requests.
942	NullFields []string `json:"-"`
943}
944
945func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
946	type NoMethod AccountIdentifier
947	raw := NoMethod(*s)
948	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
949}
950
951// AccountLabel: Label assigned by CSS domain or CSS group to one of its
952// sub-accounts.
953type AccountLabel struct {
954	// AccountId: Immutable. The ID of account this label belongs to.
955	AccountId int64 `json:"accountId,omitempty,string"`
956
957	// Description: The description of this label.
958	Description string `json:"description,omitempty"`
959
960	// LabelId: Output only. The ID of the label.
961	LabelId int64 `json:"labelId,omitempty,string"`
962
963	// LabelType: Output only. The type of this label.
964	//
965	// Possible values:
966	//   "LABEL_TYPE_UNSPECIFIED" - Unknown label type.
967	//   "MANUAL" - Indicates that the label was created manually.
968	//   "AUTOMATIC" - Indicates that the label was created automatically by
969	// CSS Center.
970	LabelType string `json:"labelType,omitempty"`
971
972	// Name: The display name of this label.
973	Name string `json:"name,omitempty"`
974
975	// ServerResponse contains the HTTP response code and headers from the
976	// server.
977	googleapi.ServerResponse `json:"-"`
978
979	// ForceSendFields is a list of field names (e.g. "AccountId") to
980	// unconditionally include in API requests. By default, fields with
981	// empty or default values are omitted from API requests. However, any
982	// non-pointer, non-interface field appearing in ForceSendFields will be
983	// sent to the server regardless of whether the field is empty or not.
984	// This may be used to include empty fields in Patch requests.
985	ForceSendFields []string `json:"-"`
986
987	// NullFields is a list of field names (e.g. "AccountId") to include in
988	// API requests with the JSON null value. By default, fields with empty
989	// values are omitted from API requests. However, any field with an
990	// empty value appearing in NullFields will be sent to the server as
991	// null. It is an error if a field in this list has a non-empty value.
992	// This may be used to include null fields in Patch requests.
993	NullFields []string `json:"-"`
994}
995
996func (s *AccountLabel) MarshalJSON() ([]byte, error) {
997	type NoMethod AccountLabel
998	raw := NoMethod(*s)
999	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1000}
1001
1002// AccountReturnCarrier:  The return carrier information. This service
1003// is designed for merchants enrolled in the Buy on Google program.
1004type AccountReturnCarrier struct {
1005	// CarrierAccountId: Output only. Immutable. The Google-provided unique
1006	// carrier ID, used to update the resource.
1007	CarrierAccountId int64 `json:"carrierAccountId,omitempty,string"`
1008
1009	// CarrierAccountName: Name of the carrier account.
1010	CarrierAccountName string `json:"carrierAccountName,omitempty"`
1011
1012	// CarrierAccountNumber: Number of the carrier account.
1013	CarrierAccountNumber string `json:"carrierAccountNumber,omitempty"`
1014
1015	// CarrierCode: The carrier code enum. Accepts the values FEDEX or UPS.
1016	//
1017	// Possible values:
1018	//   "CARRIER_CODE_UNSPECIFIED" - Carrier not specified
1019	//   "FEDEX" - FedEx carrier
1020	//   "UPS" - UPS carrier
1021	CarrierCode string `json:"carrierCode,omitempty"`
1022
1023	// ServerResponse contains the HTTP response code and headers from the
1024	// server.
1025	googleapi.ServerResponse `json:"-"`
1026
1027	// ForceSendFields is a list of field names (e.g. "CarrierAccountId") to
1028	// unconditionally include in API requests. By default, fields with
1029	// empty or default values are omitted from API requests. However, any
1030	// non-pointer, non-interface field appearing in ForceSendFields will be
1031	// sent to the server regardless of whether the field is empty or not.
1032	// This may be used to include empty fields in Patch requests.
1033	ForceSendFields []string `json:"-"`
1034
1035	// NullFields is a list of field names (e.g. "CarrierAccountId") to
1036	// include in API requests with the JSON null value. By default, fields
1037	// with empty values are omitted from API requests. However, any field
1038	// with an empty value appearing in NullFields will be sent to the
1039	// server as null. It is an error if a field in this list has a
1040	// non-empty value. This may be used to include null fields in Patch
1041	// requests.
1042	NullFields []string `json:"-"`
1043}
1044
1045func (s *AccountReturnCarrier) MarshalJSON() ([]byte, error) {
1046	type NoMethod AccountReturnCarrier
1047	raw := NoMethod(*s)
1048	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1049}
1050
1051// AccountStatus: The status of an account, i.e., information about its
1052// products, which is computed offline and not returned immediately at
1053// insertion time.
1054type AccountStatus struct {
1055	// AccountId: The ID of the account for which the status is reported.
1056	AccountId string `json:"accountId,omitempty"`
1057
1058	// AccountLevelIssues: A list of account level issues.
1059	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
1060
1061	// AccountManagement: How the account is managed. Acceptable values are:
1062	// - "manual" - "automatic"
1063	AccountManagement string `json:"accountManagement,omitempty"`
1064
1065	// Kind: Identifies what kind of resource this is. Value: the fixed
1066	// string "content#accountStatus"
1067	Kind string `json:"kind,omitempty"`
1068
1069	// Products: List of product-related data by channel, destination, and
1070	// country. Data in this field may be delayed by up to 30 minutes.
1071	Products []*AccountStatusProducts `json:"products,omitempty"`
1072
1073	// WebsiteClaimed: Whether the account's website is claimed or not.
1074	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
1075
1076	// ServerResponse contains the HTTP response code and headers from the
1077	// server.
1078	googleapi.ServerResponse `json:"-"`
1079
1080	// ForceSendFields is a list of field names (e.g. "AccountId") to
1081	// unconditionally include in API requests. By default, fields with
1082	// empty or default values are omitted from API requests. However, any
1083	// non-pointer, non-interface field appearing in ForceSendFields will be
1084	// sent to the server regardless of whether the field is empty or not.
1085	// This may be used to include empty fields in Patch requests.
1086	ForceSendFields []string `json:"-"`
1087
1088	// NullFields is a list of field names (e.g. "AccountId") to include in
1089	// API requests with the JSON null value. By default, fields with empty
1090	// values are omitted from API requests. However, any field with an
1091	// empty value appearing in NullFields will be sent to the server as
1092	// null. It is an error if a field in this list has a non-empty value.
1093	// This may be used to include null fields in Patch requests.
1094	NullFields []string `json:"-"`
1095}
1096
1097func (s *AccountStatus) MarshalJSON() ([]byte, error) {
1098	type NoMethod AccountStatus
1099	raw := NoMethod(*s)
1100	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1101}
1102
1103type AccountStatusAccountLevelIssue struct {
1104	// Country: Country for which this issue is reported.
1105	Country string `json:"country,omitempty"`
1106
1107	// Destination: The destination the issue applies to. If this field is
1108	// empty then the issue applies to all available destinations.
1109	Destination string `json:"destination,omitempty"`
1110
1111	// Detail: Additional details about the issue.
1112	Detail string `json:"detail,omitempty"`
1113
1114	// Documentation: The URL of a web page to help resolving this issue.
1115	Documentation string `json:"documentation,omitempty"`
1116
1117	// Id: Issue identifier.
1118	Id string `json:"id,omitempty"`
1119
1120	// Severity: Severity of the issue. Acceptable values are: -
1121	// "critical" - "error" - "suggestion"
1122	Severity string `json:"severity,omitempty"`
1123
1124	// Title: Short description of the issue.
1125	Title string `json:"title,omitempty"`
1126
1127	// ForceSendFields is a list of field names (e.g. "Country") to
1128	// unconditionally include in API requests. By default, fields with
1129	// empty or default values are omitted from API requests. However, any
1130	// non-pointer, non-interface field appearing in ForceSendFields will be
1131	// sent to the server regardless of whether the field is empty or not.
1132	// This may be used to include empty fields in Patch requests.
1133	ForceSendFields []string `json:"-"`
1134
1135	// NullFields is a list of field names (e.g. "Country") to include in
1136	// API requests with the JSON null value. By default, fields with empty
1137	// values are omitted from API requests. However, any field with an
1138	// empty value appearing in NullFields will be sent to the server as
1139	// null. It is an error if a field in this list has a non-empty value.
1140	// This may be used to include null fields in Patch requests.
1141	NullFields []string `json:"-"`
1142}
1143
1144func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
1145	type NoMethod AccountStatusAccountLevelIssue
1146	raw := NoMethod(*s)
1147	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1148}
1149
1150type AccountStatusItemLevelIssue struct {
1151	// AttributeName: The attribute's name, if the issue is caused by a
1152	// single attribute.
1153	AttributeName string `json:"attributeName,omitempty"`
1154
1155	// Code: The error code of the issue.
1156	Code string `json:"code,omitempty"`
1157
1158	// Description: A short issue description in English.
1159	Description string `json:"description,omitempty"`
1160
1161	// Detail: A detailed issue description in English.
1162	Detail string `json:"detail,omitempty"`
1163
1164	// Documentation: The URL of a web page to help with resolving this
1165	// issue.
1166	Documentation string `json:"documentation,omitempty"`
1167
1168	// NumItems: Number of items with this issue.
1169	NumItems int64 `json:"numItems,omitempty,string"`
1170
1171	// Resolution: Whether the issue can be resolved by the merchant.
1172	Resolution string `json:"resolution,omitempty"`
1173
1174	// Servability: How this issue affects serving of the offer.
1175	Servability string `json:"servability,omitempty"`
1176
1177	// ForceSendFields is a list of field names (e.g. "AttributeName") to
1178	// unconditionally include in API requests. By default, fields with
1179	// empty or default values are omitted from API requests. However, any
1180	// non-pointer, non-interface field appearing in ForceSendFields will be
1181	// sent to the server regardless of whether the field is empty or not.
1182	// This may be used to include empty fields in Patch requests.
1183	ForceSendFields []string `json:"-"`
1184
1185	// NullFields is a list of field names (e.g. "AttributeName") to include
1186	// in API requests with the JSON null value. By default, fields with
1187	// empty values are omitted from API requests. However, any field with
1188	// an empty value appearing in NullFields will be sent to the server as
1189	// null. It is an error if a field in this list has a non-empty value.
1190	// This may be used to include null fields in Patch requests.
1191	NullFields []string `json:"-"`
1192}
1193
1194func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
1195	type NoMethod AccountStatusItemLevelIssue
1196	raw := NoMethod(*s)
1197	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1198}
1199
1200type AccountStatusProducts struct {
1201	// Channel: The channel the data applies to. Acceptable values are: -
1202	// "local" - "online"
1203	Channel string `json:"channel,omitempty"`
1204
1205	// Country: The country the data applies to.
1206	Country string `json:"country,omitempty"`
1207
1208	// Destination: The destination the data applies to.
1209	Destination string `json:"destination,omitempty"`
1210
1211	// ItemLevelIssues: List of item-level issues.
1212	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
1213
1214	// Statistics: Aggregated product statistics.
1215	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
1216
1217	// ForceSendFields is a list of field names (e.g. "Channel") to
1218	// unconditionally include in API requests. By default, fields with
1219	// empty or default values are omitted from API requests. However, any
1220	// non-pointer, non-interface field appearing in ForceSendFields will be
1221	// sent to the server regardless of whether the field is empty or not.
1222	// This may be used to include empty fields in Patch requests.
1223	ForceSendFields []string `json:"-"`
1224
1225	// NullFields is a list of field names (e.g. "Channel") to include in
1226	// API requests with the JSON null value. By default, fields with empty
1227	// values are omitted from API requests. However, any field with an
1228	// empty value appearing in NullFields will be sent to the server as
1229	// null. It is an error if a field in this list has a non-empty value.
1230	// This may be used to include null fields in Patch requests.
1231	NullFields []string `json:"-"`
1232}
1233
1234func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
1235	type NoMethod AccountStatusProducts
1236	raw := NoMethod(*s)
1237	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1238}
1239
1240type AccountStatusStatistics struct {
1241	// Active: Number of active offers.
1242	Active int64 `json:"active,omitempty,string"`
1243
1244	// Disapproved: Number of disapproved offers.
1245	Disapproved int64 `json:"disapproved,omitempty,string"`
1246
1247	// Expiring: Number of expiring offers.
1248	Expiring int64 `json:"expiring,omitempty,string"`
1249
1250	// Pending: Number of pending offers.
1251	Pending int64 `json:"pending,omitempty,string"`
1252
1253	// ForceSendFields is a list of field names (e.g. "Active") to
1254	// unconditionally include in API requests. By default, fields with
1255	// empty or default values are omitted from API requests. However, any
1256	// non-pointer, non-interface field appearing in ForceSendFields will be
1257	// sent to the server regardless of whether the field is empty or not.
1258	// This may be used to include empty fields in Patch requests.
1259	ForceSendFields []string `json:"-"`
1260
1261	// NullFields is a list of field names (e.g. "Active") to include in API
1262	// requests with the JSON null value. By default, fields with empty
1263	// values are omitted from API requests. However, any field with an
1264	// empty value appearing in NullFields will be sent to the server as
1265	// null. It is an error if a field in this list has a non-empty value.
1266	// This may be used to include null fields in Patch requests.
1267	NullFields []string `json:"-"`
1268}
1269
1270func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
1271	type NoMethod AccountStatusStatistics
1272	raw := NoMethod(*s)
1273	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1274}
1275
1276// AccountTax: The tax settings of a merchant account. All methods
1277// require the admin role.
1278type AccountTax struct {
1279	// AccountId: Required. The ID of the account to which these account tax
1280	// settings belong.
1281	AccountId uint64 `json:"accountId,omitempty,string"`
1282
1283	// Kind: Identifies what kind of resource this is. Value: the fixed
1284	// string "content#accountTax".
1285	Kind string `json:"kind,omitempty"`
1286
1287	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
1288	// reversible). Defining no rules is equivalent to not charging tax at
1289	// all.
1290	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
1291
1292	// ServerResponse contains the HTTP response code and headers from the
1293	// server.
1294	googleapi.ServerResponse `json:"-"`
1295
1296	// ForceSendFields is a list of field names (e.g. "AccountId") to
1297	// unconditionally include in API requests. By default, fields with
1298	// empty or default values are omitted from API requests. However, any
1299	// non-pointer, non-interface field appearing in ForceSendFields will be
1300	// sent to the server regardless of whether the field is empty or not.
1301	// This may be used to include empty fields in Patch requests.
1302	ForceSendFields []string `json:"-"`
1303
1304	// NullFields is a list of field names (e.g. "AccountId") to include in
1305	// API requests with the JSON null value. By default, fields with empty
1306	// values are omitted from API requests. However, any field with an
1307	// empty value appearing in NullFields will be sent to the server as
1308	// null. It is an error if a field in this list has a non-empty value.
1309	// This may be used to include null fields in Patch requests.
1310	NullFields []string `json:"-"`
1311}
1312
1313func (s *AccountTax) MarshalJSON() ([]byte, error) {
1314	type NoMethod AccountTax
1315	raw := NoMethod(*s)
1316	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1317}
1318
1319// AccountTaxTaxRule: Tax calculation rule to apply in a state or
1320// province (USA only).
1321type AccountTaxTaxRule struct {
1322	// Country: Country code in which tax is applicable.
1323	Country string `json:"country,omitempty"`
1324
1325	// LocationId: Required. State (or province) is which the tax is
1326	// applicable, described by its location ID (also called criteria ID).
1327	LocationId uint64 `json:"locationId,omitempty,string"`
1328
1329	// RatePercent: Explicit tax rate in percent, represented as a floating
1330	// point number without the percentage character. Must not be negative.
1331	RatePercent string `json:"ratePercent,omitempty"`
1332
1333	// ShippingTaxed: If true, shipping charges are also taxed.
1334	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
1335
1336	// UseGlobalRate: Whether the tax rate is taken from a global tax table
1337	// or specified explicitly.
1338	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
1339
1340	// ForceSendFields is a list of field names (e.g. "Country") to
1341	// unconditionally include in API requests. By default, fields with
1342	// empty or default values are omitted from API requests. However, any
1343	// non-pointer, non-interface field appearing in ForceSendFields will be
1344	// sent to the server regardless of whether the field is empty or not.
1345	// This may be used to include empty fields in Patch requests.
1346	ForceSendFields []string `json:"-"`
1347
1348	// NullFields is a list of field names (e.g. "Country") to include in
1349	// API requests with the JSON null value. By default, fields with empty
1350	// values are omitted from API requests. However, any field with an
1351	// empty value appearing in NullFields will be sent to the server as
1352	// null. It is an error if a field in this list has a non-empty value.
1353	// This may be used to include null fields in Patch requests.
1354	NullFields []string `json:"-"`
1355}
1356
1357func (s *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
1358	type NoMethod AccountTaxTaxRule
1359	raw := NoMethod(*s)
1360	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1361}
1362
1363type AccountUser struct {
1364	// Admin: Whether user is an admin.
1365	Admin bool `json:"admin,omitempty"`
1366
1367	// EmailAddress: User's email address.
1368	EmailAddress string `json:"emailAddress,omitempty"`
1369
1370	// OrderManager: Whether user is an order manager.
1371	OrderManager bool `json:"orderManager,omitempty"`
1372
1373	// PaymentsAnalyst: Whether user can access payment statements.
1374	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
1375
1376	// PaymentsManager: Whether user can manage payment settings.
1377	PaymentsManager bool `json:"paymentsManager,omitempty"`
1378
1379	// ForceSendFields is a list of field names (e.g. "Admin") to
1380	// unconditionally include in API requests. By default, fields with
1381	// empty or default values are omitted from API requests. However, any
1382	// non-pointer, non-interface field appearing in ForceSendFields will be
1383	// sent to the server regardless of whether the field is empty or not.
1384	// This may be used to include empty fields in Patch requests.
1385	ForceSendFields []string `json:"-"`
1386
1387	// NullFields is a list of field names (e.g. "Admin") to include in API
1388	// requests with the JSON null value. By default, fields with empty
1389	// values are omitted from API requests. However, any field with an
1390	// empty value appearing in NullFields will be sent to the server as
1391	// null. It is an error if a field in this list has a non-empty value.
1392	// This may be used to include null fields in Patch requests.
1393	NullFields []string `json:"-"`
1394}
1395
1396func (s *AccountUser) MarshalJSON() ([]byte, error) {
1397	type NoMethod AccountUser
1398	raw := NoMethod(*s)
1399	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1400}
1401
1402type AccountYouTubeChannelLink struct {
1403	// ChannelId: Channel ID.
1404	ChannelId string `json:"channelId,omitempty"`
1405
1406	// Status: Status of the link between this Merchant Center account and
1407	// the YouTube channel. Upon retrieval, it represents the actual status
1408	// of the link and can be either `active` if it was approved in YT
1409	// Creator Studio or `pending` if it's pending approval. Upon insertion,
1410	// it represents the *intended* status of the link. Re-uploading a link
1411	// with status `active` when it's still pending or with status `pending`
1412	// when it's already active will have no effect: the status will remain
1413	// unchanged. Re-uploading a link with deprecated status `inactive` is
1414	// equivalent to not submitting the link at all and will delete the link
1415	// if it was active or cancel the link request if it was pending.
1416	Status string `json:"status,omitempty"`
1417
1418	// ForceSendFields is a list of field names (e.g. "ChannelId") to
1419	// unconditionally include in API requests. By default, fields with
1420	// empty or default values are omitted from API requests. However, any
1421	// non-pointer, non-interface field appearing in ForceSendFields will be
1422	// sent to the server regardless of whether the field is empty or not.
1423	// This may be used to include empty fields in Patch requests.
1424	ForceSendFields []string `json:"-"`
1425
1426	// NullFields is a list of field names (e.g. "ChannelId") to include in
1427	// API requests with the JSON null value. By default, fields with empty
1428	// values are omitted from API requests. However, any field with an
1429	// empty value appearing in NullFields will be sent to the server as
1430	// null. It is an error if a field in this list has a non-empty value.
1431	// This may be used to include null fields in Patch requests.
1432	NullFields []string `json:"-"`
1433}
1434
1435func (s *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
1436	type NoMethod AccountYouTubeChannelLink
1437	raw := NoMethod(*s)
1438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1439}
1440
1441type AccountsAuthInfoResponse struct {
1442	// AccountIdentifiers: The account identifiers corresponding to the
1443	// authenticated user. - For an individual account: only the merchant ID
1444	// is defined - For an aggregator: only the aggregator ID is defined -
1445	// For a subaccount of an MCA: both the merchant ID and the aggregator
1446	// ID are defined.
1447	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
1448
1449	// Kind: Identifies what kind of resource this is. Value: the fixed
1450	// string "content#accountsAuthInfoResponse".
1451	Kind string `json:"kind,omitempty"`
1452
1453	// ServerResponse contains the HTTP response code and headers from the
1454	// server.
1455	googleapi.ServerResponse `json:"-"`
1456
1457	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
1458	// to unconditionally include in API requests. By default, fields with
1459	// empty or default values are omitted from API requests. However, any
1460	// non-pointer, non-interface field appearing in ForceSendFields will be
1461	// sent to the server regardless of whether the field is empty or not.
1462	// This may be used to include empty fields in Patch requests.
1463	ForceSendFields []string `json:"-"`
1464
1465	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
1466	// include in API requests with the JSON null value. By default, fields
1467	// with empty values are omitted from API requests. However, any field
1468	// with an empty value appearing in NullFields will be sent to the
1469	// server as null. It is an error if a field in this list has a
1470	// non-empty value. This may be used to include null fields in Patch
1471	// requests.
1472	NullFields []string `json:"-"`
1473}
1474
1475func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
1476	type NoMethod AccountsAuthInfoResponse
1477	raw := NoMethod(*s)
1478	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1479}
1480
1481type AccountsClaimWebsiteResponse struct {
1482	// Kind: Identifies what kind of resource this is. Value: the fixed
1483	// string "content#accountsClaimWebsiteResponse".
1484	Kind string `json:"kind,omitempty"`
1485
1486	// ServerResponse contains the HTTP response code and headers from the
1487	// server.
1488	googleapi.ServerResponse `json:"-"`
1489
1490	// ForceSendFields is a list of field names (e.g. "Kind") to
1491	// unconditionally include in API requests. By default, fields with
1492	// empty or default values are omitted from API requests. However, any
1493	// non-pointer, non-interface field appearing in ForceSendFields will be
1494	// sent to the server regardless of whether the field is empty or not.
1495	// This may be used to include empty fields in Patch requests.
1496	ForceSendFields []string `json:"-"`
1497
1498	// NullFields is a list of field names (e.g. "Kind") to include in API
1499	// requests with the JSON null value. By default, fields with empty
1500	// values are omitted from API requests. However, any field with an
1501	// empty value appearing in NullFields will be sent to the server as
1502	// null. It is an error if a field in this list has a non-empty value.
1503	// This may be used to include null fields in Patch requests.
1504	NullFields []string `json:"-"`
1505}
1506
1507func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
1508	type NoMethod AccountsClaimWebsiteResponse
1509	raw := NoMethod(*s)
1510	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1511}
1512
1513type AccountsCustomBatchRequest struct {
1514	// Entries: The request entries to be processed in the batch.
1515	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
1516
1517	// ForceSendFields is a list of field names (e.g. "Entries") to
1518	// unconditionally include in API requests. By default, fields with
1519	// empty or default values are omitted from API requests. However, any
1520	// non-pointer, non-interface field appearing in ForceSendFields will be
1521	// sent to the server regardless of whether the field is empty or not.
1522	// This may be used to include empty fields in Patch requests.
1523	ForceSendFields []string `json:"-"`
1524
1525	// NullFields is a list of field names (e.g. "Entries") to include in
1526	// API requests with the JSON null value. By default, fields with empty
1527	// values are omitted from API requests. However, any field with an
1528	// empty value appearing in NullFields will be sent to the server as
1529	// null. It is an error if a field in this list has a non-empty value.
1530	// This may be used to include null fields in Patch requests.
1531	NullFields []string `json:"-"`
1532}
1533
1534func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
1535	type NoMethod AccountsCustomBatchRequest
1536	raw := NoMethod(*s)
1537	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1538}
1539
1540// AccountsCustomBatchRequestEntry: A batch entry encoding a single
1541// non-batch accounts request.
1542type AccountsCustomBatchRequestEntry struct {
1543	// Account: The account to create or update. Only defined if the method
1544	// is `insert` or `update`.
1545	Account *Account `json:"account,omitempty"`
1546
1547	// AccountId: The ID of the targeted account. Only defined if the method
1548	// is not `insert`.
1549	AccountId uint64 `json:"accountId,omitempty,string"`
1550
1551	// BatchId: An entry ID, unique within the batch request.
1552	BatchId int64 `json:"batchId,omitempty"`
1553
1554	// Force: Whether the account should be deleted if the account has
1555	// offers. Only applicable if the method is `delete`.
1556	Force bool `json:"force,omitempty"`
1557
1558	// LabelIds: Label IDs for the 'updatelabels' request.
1559	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1560
1561	// LinkRequest: Details about the `link` request.
1562	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
1563
1564	// MerchantId: The ID of the managing account.
1565	MerchantId uint64 `json:"merchantId,omitempty,string"`
1566
1567	// Method: The method of the batch entry. Acceptable values are: -
1568	// "claimWebsite" - "delete" - "get" - "insert" - "link" -
1569	// "update"
1570	Method string `json:"method,omitempty"`
1571
1572	// Overwrite: Only applicable if the method is `claimwebsite`. Indicates
1573	// whether or not to take the claim from another account in case there
1574	// is a conflict.
1575	Overwrite bool `json:"overwrite,omitempty"`
1576
1577	// View: Controls which fields are visible. Only applicable if the
1578	// method is 'get'.
1579	View string `json:"view,omitempty"`
1580
1581	// ForceSendFields is a list of field names (e.g. "Account") to
1582	// unconditionally include in API requests. By default, fields with
1583	// empty or default values are omitted from API requests. However, any
1584	// non-pointer, non-interface field appearing in ForceSendFields will be
1585	// sent to the server regardless of whether the field is empty or not.
1586	// This may be used to include empty fields in Patch requests.
1587	ForceSendFields []string `json:"-"`
1588
1589	// NullFields is a list of field names (e.g. "Account") to include in
1590	// API requests with the JSON null value. By default, fields with empty
1591	// values are omitted from API requests. However, any field with an
1592	// empty value appearing in NullFields will be sent to the server as
1593	// null. It is an error if a field in this list has a non-empty value.
1594	// This may be used to include null fields in Patch requests.
1595	NullFields []string `json:"-"`
1596}
1597
1598func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1599	type NoMethod AccountsCustomBatchRequestEntry
1600	raw := NoMethod(*s)
1601	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1602}
1603
1604type AccountsCustomBatchRequestEntryLinkRequest struct {
1605	// Action: Action to perform for this link. The "request" action is
1606	// only available to select merchants. Acceptable values are: -
1607	// "approve" - "remove" - "request"
1608	Action string `json:"action,omitempty"`
1609
1610	// LinkType: Type of the link between the two accounts. Acceptable
1611	// values are: - "channelPartner" - "eCommercePlatform" -
1612	// "paymentServiceProvider"
1613	LinkType string `json:"linkType,omitempty"`
1614
1615	// LinkedAccountId: The ID of the linked account.
1616	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1617
1618	// Services: Provided services. Acceptable values are: -
1619	// "shoppingAdsProductManagement" -
1620	// "shoppingActionsProductManagement" -
1621	// "shoppingActionsOrderManagement" - "paymentProcessing"
1622	Services []string `json:"services,omitempty"`
1623
1624	// ForceSendFields is a list of field names (e.g. "Action") to
1625	// unconditionally include in API requests. By default, fields with
1626	// empty or default values are omitted from API requests. However, any
1627	// non-pointer, non-interface field appearing in ForceSendFields will be
1628	// sent to the server regardless of whether the field is empty or not.
1629	// This may be used to include empty fields in Patch requests.
1630	ForceSendFields []string `json:"-"`
1631
1632	// NullFields is a list of field names (e.g. "Action") to include in API
1633	// requests with the JSON null value. By default, fields with empty
1634	// values are omitted from API requests. However, any field with an
1635	// empty value appearing in NullFields will be sent to the server as
1636	// null. It is an error if a field in this list has a non-empty value.
1637	// This may be used to include null fields in Patch requests.
1638	NullFields []string `json:"-"`
1639}
1640
1641func (s *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
1642	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
1643	raw := NoMethod(*s)
1644	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1645}
1646
1647type AccountsCustomBatchResponse struct {
1648	// Entries: The result of the execution of the batch requests.
1649	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
1650
1651	// Kind: Identifies what kind of resource this is. Value: the fixed
1652	// string "content#accountsCustomBatchResponse".
1653	Kind string `json:"kind,omitempty"`
1654
1655	// ServerResponse contains the HTTP response code and headers from the
1656	// server.
1657	googleapi.ServerResponse `json:"-"`
1658
1659	// ForceSendFields is a list of field names (e.g. "Entries") to
1660	// unconditionally include in API requests. By default, fields with
1661	// empty or default values are omitted from API requests. However, any
1662	// non-pointer, non-interface field appearing in ForceSendFields will be
1663	// sent to the server regardless of whether the field is empty or not.
1664	// This may be used to include empty fields in Patch requests.
1665	ForceSendFields []string `json:"-"`
1666
1667	// NullFields is a list of field names (e.g. "Entries") to include in
1668	// API requests with the JSON null value. By default, fields with empty
1669	// values are omitted from API requests. However, any field with an
1670	// empty value appearing in NullFields will be sent to the server as
1671	// null. It is an error if a field in this list has a non-empty value.
1672	// This may be used to include null fields in Patch requests.
1673	NullFields []string `json:"-"`
1674}
1675
1676func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
1677	type NoMethod AccountsCustomBatchResponse
1678	raw := NoMethod(*s)
1679	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1680}
1681
1682// AccountsCustomBatchResponseEntry: A batch entry encoding a single
1683// non-batch accounts response.
1684type AccountsCustomBatchResponseEntry struct {
1685	// Account: The retrieved, created, or updated account. Not defined if
1686	// the method was `delete`, `claimwebsite` or `link`.
1687	Account *Account `json:"account,omitempty"`
1688
1689	// BatchId: The ID of the request entry this entry responds to.
1690	BatchId int64 `json:"batchId,omitempty"`
1691
1692	// Errors: A list of errors defined if and only if the request failed.
1693	Errors *Errors `json:"errors,omitempty"`
1694
1695	// Kind: Identifies what kind of resource this is. Value: the fixed
1696	// string "content#accountsCustomBatchResponseEntry"
1697	Kind string `json:"kind,omitempty"`
1698
1699	// ForceSendFields is a list of field names (e.g. "Account") to
1700	// unconditionally include in API requests. By default, fields with
1701	// empty or default values are omitted from API requests. However, any
1702	// non-pointer, non-interface field appearing in ForceSendFields will be
1703	// sent to the server regardless of whether the field is empty or not.
1704	// This may be used to include empty fields in Patch requests.
1705	ForceSendFields []string `json:"-"`
1706
1707	// NullFields is a list of field names (e.g. "Account") to include in
1708	// API requests with the JSON null value. By default, fields with empty
1709	// values are omitted from API requests. However, any field with an
1710	// empty value appearing in NullFields will be sent to the server as
1711	// null. It is an error if a field in this list has a non-empty value.
1712	// This may be used to include null fields in Patch requests.
1713	NullFields []string `json:"-"`
1714}
1715
1716func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1717	type NoMethod AccountsCustomBatchResponseEntry
1718	raw := NoMethod(*s)
1719	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1720}
1721
1722type AccountsLinkRequest struct {
1723	// Action: Action to perform for this link. The "request" action is
1724	// only available to select merchants. Acceptable values are: -
1725	// "approve" - "remove" - "request"
1726	Action string `json:"action,omitempty"`
1727
1728	// LinkType: Type of the link between the two accounts. Acceptable
1729	// values are: - "channelPartner" - "eCommercePlatform" -
1730	// "paymentServiceProvider"
1731	LinkType string `json:"linkType,omitempty"`
1732
1733	// LinkedAccountId: The ID of the linked account.
1734	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1735
1736	// PaymentServiceProviderLinkInfo: Additional information required for
1737	// `paymentServiceProvider` link type.
1738	PaymentServiceProviderLinkInfo *PaymentServiceProviderLinkInfo `json:"paymentServiceProviderLinkInfo,omitempty"`
1739
1740	// Services:  Acceptable values are: - "shoppingAdsProductManagement"
1741	// - "shoppingActionsProductManagement" -
1742	// "shoppingActionsOrderManagement" - "paymentProcessing"
1743	Services []string `json:"services,omitempty"`
1744
1745	// ForceSendFields is a list of field names (e.g. "Action") to
1746	// unconditionally include in API requests. By default, fields with
1747	// empty or default values are omitted from API requests. However, any
1748	// non-pointer, non-interface field appearing in ForceSendFields will be
1749	// sent to the server regardless of whether the field is empty or not.
1750	// This may be used to include empty fields in Patch requests.
1751	ForceSendFields []string `json:"-"`
1752
1753	// NullFields is a list of field names (e.g. "Action") to include in API
1754	// requests with the JSON null value. By default, fields with empty
1755	// values are omitted from API requests. However, any field with an
1756	// empty value appearing in NullFields will be sent to the server as
1757	// null. It is an error if a field in this list has a non-empty value.
1758	// This may be used to include null fields in Patch requests.
1759	NullFields []string `json:"-"`
1760}
1761
1762func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
1763	type NoMethod AccountsLinkRequest
1764	raw := NoMethod(*s)
1765	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1766}
1767
1768type AccountsLinkResponse struct {
1769	// Kind: Identifies what kind of resource this is. Value: the fixed
1770	// string "content#accountsLinkResponse".
1771	Kind string `json:"kind,omitempty"`
1772
1773	// ServerResponse contains the HTTP response code and headers from the
1774	// server.
1775	googleapi.ServerResponse `json:"-"`
1776
1777	// ForceSendFields is a list of field names (e.g. "Kind") to
1778	// unconditionally include in API requests. By default, fields with
1779	// empty or default values are omitted from API requests. However, any
1780	// non-pointer, non-interface field appearing in ForceSendFields will be
1781	// sent to the server regardless of whether the field is empty or not.
1782	// This may be used to include empty fields in Patch requests.
1783	ForceSendFields []string `json:"-"`
1784
1785	// NullFields is a list of field names (e.g. "Kind") to include in API
1786	// requests with the JSON null value. By default, fields with empty
1787	// values are omitted from API requests. However, any field with an
1788	// empty value appearing in NullFields will be sent to the server as
1789	// null. It is an error if a field in this list has a non-empty value.
1790	// This may be used to include null fields in Patch requests.
1791	NullFields []string `json:"-"`
1792}
1793
1794func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
1795	type NoMethod AccountsLinkResponse
1796	raw := NoMethod(*s)
1797	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1798}
1799
1800type AccountsListLinksResponse struct {
1801	// Kind: Identifies what kind of resource this is. Value: the fixed
1802	// string "content#accountsListLinksResponse".
1803	Kind string `json:"kind,omitempty"`
1804
1805	// Links: The list of available links.
1806	Links []*LinkedAccount `json:"links,omitempty"`
1807
1808	// NextPageToken: The token for the retrieval of the next page of links.
1809	NextPageToken string `json:"nextPageToken,omitempty"`
1810
1811	// ServerResponse contains the HTTP response code and headers from the
1812	// server.
1813	googleapi.ServerResponse `json:"-"`
1814
1815	// ForceSendFields is a list of field names (e.g. "Kind") to
1816	// unconditionally include in API requests. By default, fields with
1817	// empty or default values are omitted from API requests. However, any
1818	// non-pointer, non-interface field appearing in ForceSendFields will be
1819	// sent to the server regardless of whether the field is empty or not.
1820	// This may be used to include empty fields in Patch requests.
1821	ForceSendFields []string `json:"-"`
1822
1823	// NullFields is a list of field names (e.g. "Kind") to include in API
1824	// requests with the JSON null value. By default, fields with empty
1825	// values are omitted from API requests. However, any field with an
1826	// empty value appearing in NullFields will be sent to the server as
1827	// null. It is an error if a field in this list has a non-empty value.
1828	// This may be used to include null fields in Patch requests.
1829	NullFields []string `json:"-"`
1830}
1831
1832func (s *AccountsListLinksResponse) MarshalJSON() ([]byte, error) {
1833	type NoMethod AccountsListLinksResponse
1834	raw := NoMethod(*s)
1835	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1836}
1837
1838type AccountsListResponse struct {
1839	// Kind: Identifies what kind of resource this is. Value: the fixed
1840	// string "content#accountsListResponse".
1841	Kind string `json:"kind,omitempty"`
1842
1843	// NextPageToken: The token for the retrieval of the next page of
1844	// accounts.
1845	NextPageToken string `json:"nextPageToken,omitempty"`
1846
1847	Resources []*Account `json:"resources,omitempty"`
1848
1849	// ServerResponse contains the HTTP response code and headers from the
1850	// server.
1851	googleapi.ServerResponse `json:"-"`
1852
1853	// ForceSendFields is a list of field names (e.g. "Kind") to
1854	// unconditionally include in API requests. By default, fields with
1855	// empty or default values are omitted from API requests. However, any
1856	// non-pointer, non-interface field appearing in ForceSendFields will be
1857	// sent to the server regardless of whether the field is empty or not.
1858	// This may be used to include empty fields in Patch requests.
1859	ForceSendFields []string `json:"-"`
1860
1861	// NullFields is a list of field names (e.g. "Kind") to include in API
1862	// requests with the JSON null value. By default, fields with empty
1863	// values are omitted from API requests. However, any field with an
1864	// empty value appearing in NullFields will be sent to the server as
1865	// null. It is an error if a field in this list has a non-empty value.
1866	// This may be used to include null fields in Patch requests.
1867	NullFields []string `json:"-"`
1868}
1869
1870func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1871	type NoMethod AccountsListResponse
1872	raw := NoMethod(*s)
1873	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1874}
1875
1876type AccountsUpdateLabelsRequest struct {
1877	// LabelIds: The IDs of labels that should be assigned to the account.
1878	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1879
1880	// ForceSendFields is a list of field names (e.g. "LabelIds") to
1881	// unconditionally include in API requests. By default, fields with
1882	// empty or default values are omitted from API requests. However, any
1883	// non-pointer, non-interface field appearing in ForceSendFields will be
1884	// sent to the server regardless of whether the field is empty or not.
1885	// This may be used to include empty fields in Patch requests.
1886	ForceSendFields []string `json:"-"`
1887
1888	// NullFields is a list of field names (e.g. "LabelIds") to include in
1889	// API requests with the JSON null value. By default, fields with empty
1890	// values are omitted from API requests. However, any field with an
1891	// empty value appearing in NullFields will be sent to the server as
1892	// null. It is an error if a field in this list has a non-empty value.
1893	// This may be used to include null fields in Patch requests.
1894	NullFields []string `json:"-"`
1895}
1896
1897func (s *AccountsUpdateLabelsRequest) MarshalJSON() ([]byte, error) {
1898	type NoMethod AccountsUpdateLabelsRequest
1899	raw := NoMethod(*s)
1900	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1901}
1902
1903type AccountsUpdateLabelsResponse struct {
1904	// Kind: Identifies what kind of resource this is. Value: the fixed
1905	// string "content#accountsUpdateLabelsResponse".
1906	Kind string `json:"kind,omitempty"`
1907
1908	// ServerResponse contains the HTTP response code and headers from the
1909	// server.
1910	googleapi.ServerResponse `json:"-"`
1911
1912	// ForceSendFields is a list of field names (e.g. "Kind") to
1913	// unconditionally include in API requests. By default, fields with
1914	// empty or default values are omitted from API requests. However, any
1915	// non-pointer, non-interface field appearing in ForceSendFields will be
1916	// sent to the server regardless of whether the field is empty or not.
1917	// This may be used to include empty fields in Patch requests.
1918	ForceSendFields []string `json:"-"`
1919
1920	// NullFields is a list of field names (e.g. "Kind") to include in API
1921	// requests with the JSON null value. By default, fields with empty
1922	// values are omitted from API requests. However, any field with an
1923	// empty value appearing in NullFields will be sent to the server as
1924	// null. It is an error if a field in this list has a non-empty value.
1925	// This may be used to include null fields in Patch requests.
1926	NullFields []string `json:"-"`
1927}
1928
1929func (s *AccountsUpdateLabelsResponse) MarshalJSON() ([]byte, error) {
1930	type NoMethod AccountsUpdateLabelsResponse
1931	raw := NoMethod(*s)
1932	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1933}
1934
1935type AccountstatusesCustomBatchRequest struct {
1936	// Entries: The request entries to be processed in the batch.
1937	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
1938
1939	// ForceSendFields is a list of field names (e.g. "Entries") to
1940	// unconditionally include in API requests. By default, fields with
1941	// empty or default values are omitted from API requests. However, any
1942	// non-pointer, non-interface field appearing in ForceSendFields will be
1943	// sent to the server regardless of whether the field is empty or not.
1944	// This may be used to include empty fields in Patch requests.
1945	ForceSendFields []string `json:"-"`
1946
1947	// NullFields is a list of field names (e.g. "Entries") to include in
1948	// API requests with the JSON null value. By default, fields with empty
1949	// values are omitted from API requests. However, any field with an
1950	// empty value appearing in NullFields will be sent to the server as
1951	// null. It is an error if a field in this list has a non-empty value.
1952	// This may be used to include null fields in Patch requests.
1953	NullFields []string `json:"-"`
1954}
1955
1956func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
1957	type NoMethod AccountstatusesCustomBatchRequest
1958	raw := NoMethod(*s)
1959	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1960}
1961
1962// AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
1963// single non-batch accountstatuses request.
1964type AccountstatusesCustomBatchRequestEntry struct {
1965	// AccountId: The ID of the (sub-)account whose status to get.
1966	AccountId uint64 `json:"accountId,omitempty,string"`
1967
1968	// BatchId: An entry ID, unique within the batch request.
1969	BatchId int64 `json:"batchId,omitempty"`
1970
1971	// Destinations: If set, only issues for the specified destinations are
1972	// returned, otherwise only issues for the Shopping destination.
1973	Destinations []string `json:"destinations,omitempty"`
1974
1975	// MerchantId: The ID of the managing account.
1976	MerchantId uint64 `json:"merchantId,omitempty,string"`
1977
1978	// Method: The method of the batch entry. Acceptable values are: -
1979	// "get"
1980	Method string `json:"method,omitempty"`
1981
1982	// ForceSendFields is a list of field names (e.g. "AccountId") to
1983	// unconditionally include in API requests. By default, fields with
1984	// empty or default values are omitted from API requests. However, any
1985	// non-pointer, non-interface field appearing in ForceSendFields will be
1986	// sent to the server regardless of whether the field is empty or not.
1987	// This may be used to include empty fields in Patch requests.
1988	ForceSendFields []string `json:"-"`
1989
1990	// NullFields is a list of field names (e.g. "AccountId") to include in
1991	// API requests with the JSON null value. By default, fields with empty
1992	// values are omitted from API requests. However, any field with an
1993	// empty value appearing in NullFields will be sent to the server as
1994	// null. It is an error if a field in this list has a non-empty value.
1995	// This may be used to include null fields in Patch requests.
1996	NullFields []string `json:"-"`
1997}
1998
1999func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2000	type NoMethod AccountstatusesCustomBatchRequestEntry
2001	raw := NoMethod(*s)
2002	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2003}
2004
2005type AccountstatusesCustomBatchResponse struct {
2006	// Entries: The result of the execution of the batch requests.
2007	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
2008
2009	// Kind: Identifies what kind of resource this is. Value: the fixed
2010	// string "content#accountstatusesCustomBatchResponse".
2011	Kind string `json:"kind,omitempty"`
2012
2013	// ServerResponse contains the HTTP response code and headers from the
2014	// server.
2015	googleapi.ServerResponse `json:"-"`
2016
2017	// ForceSendFields is a list of field names (e.g. "Entries") to
2018	// unconditionally include in API requests. By default, fields with
2019	// empty or default values are omitted from API requests. However, any
2020	// non-pointer, non-interface field appearing in ForceSendFields will be
2021	// sent to the server regardless of whether the field is empty or not.
2022	// This may be used to include empty fields in Patch requests.
2023	ForceSendFields []string `json:"-"`
2024
2025	// NullFields is a list of field names (e.g. "Entries") to include in
2026	// API requests with the JSON null value. By default, fields with empty
2027	// values are omitted from API requests. However, any field with an
2028	// empty value appearing in NullFields will be sent to the server as
2029	// null. It is an error if a field in this list has a non-empty value.
2030	// This may be used to include null fields in Patch requests.
2031	NullFields []string `json:"-"`
2032}
2033
2034func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
2035	type NoMethod AccountstatusesCustomBatchResponse
2036	raw := NoMethod(*s)
2037	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2038}
2039
2040// AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
2041// single non-batch accountstatuses response.
2042type AccountstatusesCustomBatchResponseEntry struct {
2043	// AccountStatus: The requested account status. Defined if and only if
2044	// the request was successful.
2045	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
2046
2047	// BatchId: The ID of the request entry this entry responds to.
2048	BatchId int64 `json:"batchId,omitempty"`
2049
2050	// Errors: A list of errors defined if and only if the request failed.
2051	Errors *Errors `json:"errors,omitempty"`
2052
2053	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
2054	// unconditionally include in API requests. By default, fields with
2055	// empty or default values are omitted from API requests. However, any
2056	// non-pointer, non-interface field appearing in ForceSendFields will be
2057	// sent to the server regardless of whether the field is empty or not.
2058	// This may be used to include empty fields in Patch requests.
2059	ForceSendFields []string `json:"-"`
2060
2061	// NullFields is a list of field names (e.g. "AccountStatus") to include
2062	// in API requests with the JSON null value. By default, fields with
2063	// empty values are omitted from API requests. However, any field with
2064	// an empty value appearing in NullFields will be sent to the server as
2065	// null. It is an error if a field in this list has a non-empty value.
2066	// This may be used to include null fields in Patch requests.
2067	NullFields []string `json:"-"`
2068}
2069
2070func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2071	type NoMethod AccountstatusesCustomBatchResponseEntry
2072	raw := NoMethod(*s)
2073	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2074}
2075
2076type AccountstatusesListResponse struct {
2077	// Kind: Identifies what kind of resource this is. Value: the fixed
2078	// string "content#accountstatusesListResponse".
2079	Kind string `json:"kind,omitempty"`
2080
2081	// NextPageToken: The token for the retrieval of the next page of
2082	// account statuses.
2083	NextPageToken string `json:"nextPageToken,omitempty"`
2084
2085	Resources []*AccountStatus `json:"resources,omitempty"`
2086
2087	// ServerResponse contains the HTTP response code and headers from the
2088	// server.
2089	googleapi.ServerResponse `json:"-"`
2090
2091	// ForceSendFields is a list of field names (e.g. "Kind") to
2092	// unconditionally include in API requests. By default, fields with
2093	// empty or default values are omitted from API requests. However, any
2094	// non-pointer, non-interface field appearing in ForceSendFields will be
2095	// sent to the server regardless of whether the field is empty or not.
2096	// This may be used to include empty fields in Patch requests.
2097	ForceSendFields []string `json:"-"`
2098
2099	// NullFields is a list of field names (e.g. "Kind") to include in API
2100	// requests with the JSON null value. By default, fields with empty
2101	// values are omitted from API requests. However, any field with an
2102	// empty value appearing in NullFields will be sent to the server as
2103	// null. It is an error if a field in this list has a non-empty value.
2104	// This may be used to include null fields in Patch requests.
2105	NullFields []string `json:"-"`
2106}
2107
2108func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
2109	type NoMethod AccountstatusesListResponse
2110	raw := NoMethod(*s)
2111	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2112}
2113
2114type AccounttaxCustomBatchRequest struct {
2115	// Entries: The request entries to be processed in the batch.
2116	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
2117
2118	// ForceSendFields is a list of field names (e.g. "Entries") to
2119	// unconditionally include in API requests. By default, fields with
2120	// empty or default values are omitted from API requests. However, any
2121	// non-pointer, non-interface field appearing in ForceSendFields will be
2122	// sent to the server regardless of whether the field is empty or not.
2123	// This may be used to include empty fields in Patch requests.
2124	ForceSendFields []string `json:"-"`
2125
2126	// NullFields is a list of field names (e.g. "Entries") to include in
2127	// API requests with the JSON null value. By default, fields with empty
2128	// values are omitted from API requests. However, any field with an
2129	// empty value appearing in NullFields will be sent to the server as
2130	// null. It is an error if a field in this list has a non-empty value.
2131	// This may be used to include null fields in Patch requests.
2132	NullFields []string `json:"-"`
2133}
2134
2135func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
2136	type NoMethod AccounttaxCustomBatchRequest
2137	raw := NoMethod(*s)
2138	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2139}
2140
2141// AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
2142// non-batch accounttax request.
2143type AccounttaxCustomBatchRequestEntry struct {
2144	// AccountId: The ID of the account for which to get/update account tax
2145	// settings.
2146	AccountId uint64 `json:"accountId,omitempty,string"`
2147
2148	// AccountTax: The account tax settings to update. Only defined if the
2149	// method is `update`.
2150	AccountTax *AccountTax `json:"accountTax,omitempty"`
2151
2152	// BatchId: An entry ID, unique within the batch request.
2153	BatchId int64 `json:"batchId,omitempty"`
2154
2155	// MerchantId: The ID of the managing account.
2156	MerchantId uint64 `json:"merchantId,omitempty,string"`
2157
2158	// Method: The method of the batch entry. Acceptable values are: -
2159	// "get" - "update"
2160	Method string `json:"method,omitempty"`
2161
2162	// ForceSendFields is a list of field names (e.g. "AccountId") to
2163	// unconditionally include in API requests. By default, fields with
2164	// empty or default values are omitted from API requests. However, any
2165	// non-pointer, non-interface field appearing in ForceSendFields will be
2166	// sent to the server regardless of whether the field is empty or not.
2167	// This may be used to include empty fields in Patch requests.
2168	ForceSendFields []string `json:"-"`
2169
2170	// NullFields is a list of field names (e.g. "AccountId") to include in
2171	// API requests with the JSON null value. By default, fields with empty
2172	// values are omitted from API requests. However, any field with an
2173	// empty value appearing in NullFields will be sent to the server as
2174	// null. It is an error if a field in this list has a non-empty value.
2175	// This may be used to include null fields in Patch requests.
2176	NullFields []string `json:"-"`
2177}
2178
2179func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2180	type NoMethod AccounttaxCustomBatchRequestEntry
2181	raw := NoMethod(*s)
2182	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2183}
2184
2185type AccounttaxCustomBatchResponse struct {
2186	// Entries: The result of the execution of the batch requests.
2187	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
2188
2189	// Kind: Identifies what kind of resource this is. Value: the fixed
2190	// string "content#accounttaxCustomBatchResponse".
2191	Kind string `json:"kind,omitempty"`
2192
2193	// ServerResponse contains the HTTP response code and headers from the
2194	// server.
2195	googleapi.ServerResponse `json:"-"`
2196
2197	// ForceSendFields is a list of field names (e.g. "Entries") to
2198	// unconditionally include in API requests. By default, fields with
2199	// empty or default values are omitted from API requests. However, any
2200	// non-pointer, non-interface field appearing in ForceSendFields will be
2201	// sent to the server regardless of whether the field is empty or not.
2202	// This may be used to include empty fields in Patch requests.
2203	ForceSendFields []string `json:"-"`
2204
2205	// NullFields is a list of field names (e.g. "Entries") to include in
2206	// API requests with the JSON null value. By default, fields with empty
2207	// values are omitted from API requests. However, any field with an
2208	// empty value appearing in NullFields will be sent to the server as
2209	// null. It is an error if a field in this list has a non-empty value.
2210	// This may be used to include null fields in Patch requests.
2211	NullFields []string `json:"-"`
2212}
2213
2214func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
2215	type NoMethod AccounttaxCustomBatchResponse
2216	raw := NoMethod(*s)
2217	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2218}
2219
2220// AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
2221// non-batch accounttax response.
2222type AccounttaxCustomBatchResponseEntry struct {
2223	// AccountTax: The retrieved or updated account tax settings.
2224	AccountTax *AccountTax `json:"accountTax,omitempty"`
2225
2226	// BatchId: The ID of the request entry this entry responds to.
2227	BatchId int64 `json:"batchId,omitempty"`
2228
2229	// Errors: A list of errors defined if and only if the request failed.
2230	Errors *Errors `json:"errors,omitempty"`
2231
2232	// Kind: Identifies what kind of resource this is. Value: the fixed
2233	// string "content#accounttaxCustomBatchResponseEntry"
2234	Kind string `json:"kind,omitempty"`
2235
2236	// ForceSendFields is a list of field names (e.g. "AccountTax") to
2237	// unconditionally include in API requests. By default, fields with
2238	// empty or default values are omitted from API requests. However, any
2239	// non-pointer, non-interface field appearing in ForceSendFields will be
2240	// sent to the server regardless of whether the field is empty or not.
2241	// This may be used to include empty fields in Patch requests.
2242	ForceSendFields []string `json:"-"`
2243
2244	// NullFields is a list of field names (e.g. "AccountTax") to include in
2245	// API requests with the JSON null value. By default, fields with empty
2246	// values are omitted from API requests. However, any field with an
2247	// empty value appearing in NullFields will be sent to the server as
2248	// null. It is an error if a field in this list has a non-empty value.
2249	// This may be used to include null fields in Patch requests.
2250	NullFields []string `json:"-"`
2251}
2252
2253func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2254	type NoMethod AccounttaxCustomBatchResponseEntry
2255	raw := NoMethod(*s)
2256	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2257}
2258
2259type AccounttaxListResponse struct {
2260	// Kind: Identifies what kind of resource this is. Value: the fixed
2261	// string "content#accounttaxListResponse".
2262	Kind string `json:"kind,omitempty"`
2263
2264	// NextPageToken: The token for the retrieval of the next page of
2265	// account tax settings.
2266	NextPageToken string `json:"nextPageToken,omitempty"`
2267
2268	Resources []*AccountTax `json:"resources,omitempty"`
2269
2270	// ServerResponse contains the HTTP response code and headers from the
2271	// server.
2272	googleapi.ServerResponse `json:"-"`
2273
2274	// ForceSendFields is a list of field names (e.g. "Kind") to
2275	// unconditionally include in API requests. By default, fields with
2276	// empty or default values are omitted from API requests. However, any
2277	// non-pointer, non-interface field appearing in ForceSendFields will be
2278	// sent to the server regardless of whether the field is empty or not.
2279	// This may be used to include empty fields in Patch requests.
2280	ForceSendFields []string `json:"-"`
2281
2282	// NullFields is a list of field names (e.g. "Kind") to include in API
2283	// requests with the JSON null value. By default, fields with empty
2284	// values are omitted from API requests. However, any field with an
2285	// empty value appearing in NullFields will be sent to the server as
2286	// null. It is an error if a field in this list has a non-empty value.
2287	// This may be used to include null fields in Patch requests.
2288	NullFields []string `json:"-"`
2289}
2290
2291func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
2292	type NoMethod AccounttaxListResponse
2293	raw := NoMethod(*s)
2294	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2295}
2296
2297// ActivateBuyOnGoogleProgramRequest: Request message for the
2298// ActivateProgram method.
2299type ActivateBuyOnGoogleProgramRequest struct {
2300}
2301
2302type Amount struct {
2303	// PriceAmount: [required] The pre-tax or post-tax price depending on
2304	// the location of the order.
2305	PriceAmount *Price `json:"priceAmount,omitempty"`
2306
2307	// TaxAmount: [required] Tax value.
2308	TaxAmount *Price `json:"taxAmount,omitempty"`
2309
2310	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
2311	// unconditionally include in API requests. By default, fields with
2312	// empty or default values are omitted from API requests. However, any
2313	// non-pointer, non-interface field appearing in ForceSendFields will be
2314	// sent to the server regardless of whether the field is empty or not.
2315	// This may be used to include empty fields in Patch requests.
2316	ForceSendFields []string `json:"-"`
2317
2318	// NullFields is a list of field names (e.g. "PriceAmount") to include
2319	// in API requests with the JSON null value. By default, fields with
2320	// empty values are omitted from API requests. However, any field with
2321	// an empty value appearing in NullFields will be sent to the server as
2322	// null. It is an error if a field in this list has a non-empty value.
2323	// This may be used to include null fields in Patch requests.
2324	NullFields []string `json:"-"`
2325}
2326
2327func (s *Amount) MarshalJSON() ([]byte, error) {
2328	type NoMethod Amount
2329	raw := NoMethod(*s)
2330	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2331}
2332
2333type BusinessDayConfig struct {
2334	// BusinessDays: Regular business days, such as '"monday"'. May not be
2335	// empty.
2336	BusinessDays []string `json:"businessDays,omitempty"`
2337
2338	// ForceSendFields is a list of field names (e.g. "BusinessDays") to
2339	// unconditionally include in API requests. By default, fields with
2340	// empty or default values are omitted from API requests. However, any
2341	// non-pointer, non-interface field appearing in ForceSendFields will be
2342	// sent to the server regardless of whether the field is empty or not.
2343	// This may be used to include empty fields in Patch requests.
2344	ForceSendFields []string `json:"-"`
2345
2346	// NullFields is a list of field names (e.g. "BusinessDays") to include
2347	// in API requests with the JSON null value. By default, fields with
2348	// empty values are omitted from API requests. However, any field with
2349	// an empty value appearing in NullFields will be sent to the server as
2350	// null. It is an error if a field in this list has a non-empty value.
2351	// This may be used to include null fields in Patch requests.
2352	NullFields []string `json:"-"`
2353}
2354
2355func (s *BusinessDayConfig) MarshalJSON() ([]byte, error) {
2356	type NoMethod BusinessDayConfig
2357	raw := NoMethod(*s)
2358	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2359}
2360
2361// BuyOnGoogleProgramStatus: Response message for the GetProgramStatus
2362// method.
2363type BuyOnGoogleProgramStatus struct {
2364	// CustomerServicePendingEmail: The customer service pending email.
2365	CustomerServicePendingEmail string `json:"customerServicePendingEmail,omitempty"`
2366
2367	// CustomerServiceVerifiedEmail: The customer service verified email.
2368	CustomerServiceVerifiedEmail string `json:"customerServiceVerifiedEmail,omitempty"`
2369
2370	// ParticipationStage: The current participation stage for the program.
2371	//
2372	// Possible values:
2373	//   "PROGRAM_PARTICIPATION_STAGE_UNSPECIFIED" - Default value when
2374	// participation stage is not set.
2375	//   "NOT_ELIGIBLE" - Merchant is not eligible for onboarding to a given
2376	// program in a specific region code.
2377	//   "ELIGIBLE" - Merchant is eligible for onboarding to a given program
2378	// in a specific region code.
2379	//   "ONBOARDING" - Merchant is onboarding to a given program in a
2380	// specific region code.
2381	//   "ELIGIBLE_FOR_REVIEW" - Merchant fulfilled all the requirements and
2382	// is ready to request review in a specific region code.
2383	//   "PENDING_REVIEW" - Merchant is waiting for the review to be
2384	// completed in a specific region code.
2385	//   "REVIEW_DISAPPROVED" - The review for a merchant has been rejected
2386	// in a specific region code.
2387	//   "ACTIVE" - Merchant's program participation is active for a
2388	// specific region code.
2389	//   "PAUSED" - Participation has been paused.
2390	ParticipationStage string `json:"participationStage,omitempty"`
2391
2392	// ServerResponse contains the HTTP response code and headers from the
2393	// server.
2394	googleapi.ServerResponse `json:"-"`
2395
2396	// ForceSendFields is a list of field names (e.g.
2397	// "CustomerServicePendingEmail") to unconditionally include in API
2398	// requests. By default, fields with empty or default values are omitted
2399	// from API requests. However, any non-pointer, non-interface field
2400	// appearing in ForceSendFields will be sent to the server regardless of
2401	// whether the field is empty or not. This may be used to include empty
2402	// fields in Patch requests.
2403	ForceSendFields []string `json:"-"`
2404
2405	// NullFields is a list of field names (e.g.
2406	// "CustomerServicePendingEmail") to include in API requests with the
2407	// JSON null value. By default, fields with empty values are omitted
2408	// from API requests. However, any field with an empty value appearing
2409	// in NullFields will be sent to the server as null. It is an error if a
2410	// field in this list has a non-empty value. This may be used to include
2411	// null fields in Patch requests.
2412	NullFields []string `json:"-"`
2413}
2414
2415func (s *BuyOnGoogleProgramStatus) MarshalJSON() ([]byte, error) {
2416	type NoMethod BuyOnGoogleProgramStatus
2417	raw := NoMethod(*s)
2418	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2419}
2420
2421type CarrierRate struct {
2422	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list
2423	// of supported carriers can be retrieved via the `getSupportedCarriers`
2424	// method. Required.
2425	CarrierName string `json:"carrierName,omitempty"`
2426
2427	// CarrierService: Carrier service, such as "ground" or "2 days".
2428	// The list of supported services for a carrier can be retrieved via the
2429	// `getSupportedCarriers` method. Required.
2430	CarrierService string `json:"carrierService,omitempty"`
2431
2432	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
2433	// example `{ "value": "1", "currency" : "USD" }` adds $1 to the rate,
2434	// `{ "value": "-3", "currency" : "USD" }` removes $3 from the rate.
2435	// Optional.
2436	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
2437
2438	// Name: Name of the carrier rate. Must be unique per rate group.
2439	// Required.
2440	Name string `json:"name,omitempty"`
2441
2442	// OriginPostalCode: Shipping origin for this carrier rate. Required.
2443	OriginPostalCode string `json:"originPostalCode,omitempty"`
2444
2445	// PercentageAdjustment: Multiplicative shipping rate modifier as a
2446	// number in decimal notation. Can be negative. For example "5.4"
2447	// increases the rate by 5.4%, "-3" decreases the rate by 3%.
2448	// Optional.
2449	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
2450
2451	// ForceSendFields is a list of field names (e.g. "CarrierName") to
2452	// unconditionally include in API requests. By default, fields with
2453	// empty or default values are omitted from API requests. However, any
2454	// non-pointer, non-interface field appearing in ForceSendFields will be
2455	// sent to the server regardless of whether the field is empty or not.
2456	// This may be used to include empty fields in Patch requests.
2457	ForceSendFields []string `json:"-"`
2458
2459	// NullFields is a list of field names (e.g. "CarrierName") to include
2460	// in API requests with the JSON null value. By default, fields with
2461	// empty values are omitted from API requests. However, any field with
2462	// an empty value appearing in NullFields will be sent to the server as
2463	// null. It is an error if a field in this list has a non-empty value.
2464	// This may be used to include null fields in Patch requests.
2465	NullFields []string `json:"-"`
2466}
2467
2468func (s *CarrierRate) MarshalJSON() ([]byte, error) {
2469	type NoMethod CarrierRate
2470	raw := NoMethod(*s)
2471	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2472}
2473
2474type CarriersCarrier struct {
2475	// Country: The CLDR country code of the carrier (e.g., "US"). Always
2476	// present.
2477	Country string `json:"country,omitempty"`
2478
2479	// EddServices: A list of services supported for EDD (Estimated Delivery
2480	// Date) calculation. This is the list of valid values for
2481	// WarehouseBasedDeliveryTime.carrierService.
2482	EddServices []string `json:"eddServices,omitempty"`
2483
2484	// Name: The name of the carrier (e.g., "UPS"). Always present.
2485	Name string `json:"name,omitempty"`
2486
2487	// Services: A list of supported services (e.g., "ground") for that
2488	// carrier. Contains at least one service. This is the list of valid
2489	// values for CarrierRate.carrierService.
2490	Services []string `json:"services,omitempty"`
2491
2492	// ForceSendFields is a list of field names (e.g. "Country") to
2493	// unconditionally include in API requests. By default, fields with
2494	// empty or default values are omitted from API requests. However, any
2495	// non-pointer, non-interface field appearing in ForceSendFields will be
2496	// sent to the server regardless of whether the field is empty or not.
2497	// This may be used to include empty fields in Patch requests.
2498	ForceSendFields []string `json:"-"`
2499
2500	// NullFields is a list of field names (e.g. "Country") to include in
2501	// API requests with the JSON null value. By default, fields with empty
2502	// values are omitted from API requests. However, any field with an
2503	// empty value appearing in NullFields will be sent to the server as
2504	// null. It is an error if a field in this list has a non-empty value.
2505	// This may be used to include null fields in Patch requests.
2506	NullFields []string `json:"-"`
2507}
2508
2509func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
2510	type NoMethod CarriersCarrier
2511	raw := NoMethod(*s)
2512	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2513}
2514
2515// Collection: The collection message.
2516type Collection struct {
2517	// CustomLabel0: Label that you assign to a collection to help organize
2518	// bidding and reporting in Shopping campaigns. Custom label
2519	// (https://support.google.com/merchants/answer/9674217)
2520	CustomLabel0 string `json:"customLabel0,omitempty"`
2521
2522	// CustomLabel1: Label that you assign to a collection to help organize
2523	// bidding and reporting in Shopping campaigns.
2524	CustomLabel1 string `json:"customLabel1,omitempty"`
2525
2526	// CustomLabel2: Label that you assign to a collection to help organize
2527	// bidding and reporting in Shopping campaigns.
2528	CustomLabel2 string `json:"customLabel2,omitempty"`
2529
2530	// CustomLabel3: Label that you assign to a collection to help organize
2531	// bidding and reporting in Shopping campaigns.
2532	CustomLabel3 string `json:"customLabel3,omitempty"`
2533
2534	// CustomLabel4: Label that you assign to a collection to help organize
2535	// bidding and reporting in Shopping campaigns.
2536	CustomLabel4 string `json:"customLabel4,omitempty"`
2537
2538	// FeaturedProduct: This identifies one or more products associated with
2539	// the collection. Used as a lookup to the corresponding product ID in
2540	// your product feeds. Provide a maximum of 100 featuredProduct (for
2541	// collections). Provide up to 10 featuredProduct (for Shoppable Images
2542	// only) with ID and X and Y coordinates. featured_product attribute
2543	// (https://support.google.com/merchants/answer/9703736)
2544	FeaturedProduct []*CollectionFeaturedProduct `json:"featuredProduct,omitempty"`
2545
2546	// Headline: Your collection's name. headline attribute
2547	// (https://support.google.com/merchants/answer/9673580)
2548	Headline []string `json:"headline,omitempty"`
2549
2550	// Id: Required. The REST ID of the collection. Content API methods that
2551	// operate on collections take this as their collectionId parameter. The
2552	// REST ID for a collection is of the form collectionId. id attribute
2553	// (https://support.google.com/merchants/answer/9649290)
2554	Id string `json:"id,omitempty"`
2555
2556	// ImageLink: The URL of a collection’s image. image_link attribute
2557	// (https://support.google.com/merchants/answer/9703236)
2558	ImageLink []string `json:"imageLink,omitempty"`
2559
2560	// Language: The language of a collection and the language of any
2561	// featured products linked to the collection. language attribute
2562	// (https://support.google.com/merchants/answer/9673781)
2563	Language string `json:"language,omitempty"`
2564
2565	// Link: A collection’s landing page. URL directly linking to your
2566	// collection's page on your website. link attribute
2567	// (https://support.google.com/merchants/answer/9673983)
2568	Link string `json:"link,omitempty"`
2569
2570	// MobileLink: A collection’s mobile-optimized landing page when you
2571	// have a different URL for mobile and desktop traffic. mobile_link
2572	// attribute (https://support.google.com/merchants/answer/9646123)
2573	MobileLink string `json:"mobileLink,omitempty"`
2574
2575	// ProductCountry: product_country attribute
2576	// (https://support.google.com/merchants/answer/9674155)
2577	ProductCountry string `json:"productCountry,omitempty"`
2578
2579	// ServerResponse contains the HTTP response code and headers from the
2580	// server.
2581	googleapi.ServerResponse `json:"-"`
2582
2583	// ForceSendFields is a list of field names (e.g. "CustomLabel0") to
2584	// unconditionally include in API requests. By default, fields with
2585	// empty or default values are omitted from API requests. However, any
2586	// non-pointer, non-interface field appearing in ForceSendFields will be
2587	// sent to the server regardless of whether the field is empty or not.
2588	// This may be used to include empty fields in Patch requests.
2589	ForceSendFields []string `json:"-"`
2590
2591	// NullFields is a list of field names (e.g. "CustomLabel0") to include
2592	// in API requests with the JSON null value. By default, fields with
2593	// empty values are omitted from API requests. However, any field with
2594	// an empty value appearing in NullFields will be sent to the server as
2595	// null. It is an error if a field in this list has a non-empty value.
2596	// This may be used to include null fields in Patch requests.
2597	NullFields []string `json:"-"`
2598}
2599
2600func (s *Collection) MarshalJSON() ([]byte, error) {
2601	type NoMethod Collection
2602	raw := NoMethod(*s)
2603	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2604}
2605
2606// CollectionFeaturedProduct: The message for FeaturedProduct.
2607// FeaturedProduct (https://support.google.com/merchants/answer/9703736)
2608type CollectionFeaturedProduct struct {
2609	// OfferId: The unique identifier for the product item.
2610	OfferId string `json:"offerId,omitempty"`
2611
2612	// X: Required. X-coordinate of the product callout on the Shoppable
2613	// Image.
2614	X float64 `json:"x,omitempty"`
2615
2616	// Y: Required. Y-coordinate of the product callout on the Shoppable
2617	// Image.
2618	Y float64 `json:"y,omitempty"`
2619
2620	// ForceSendFields is a list of field names (e.g. "OfferId") to
2621	// unconditionally include in API requests. By default, fields with
2622	// empty or default values are omitted from API requests. However, any
2623	// non-pointer, non-interface field appearing in ForceSendFields will be
2624	// sent to the server regardless of whether the field is empty or not.
2625	// This may be used to include empty fields in Patch requests.
2626	ForceSendFields []string `json:"-"`
2627
2628	// NullFields is a list of field names (e.g. "OfferId") to include in
2629	// API requests with the JSON null value. By default, fields with empty
2630	// values are omitted from API requests. However, any field with an
2631	// empty value appearing in NullFields will be sent to the server as
2632	// null. It is an error if a field in this list has a non-empty value.
2633	// This may be used to include null fields in Patch requests.
2634	NullFields []string `json:"-"`
2635}
2636
2637func (s *CollectionFeaturedProduct) MarshalJSON() ([]byte, error) {
2638	type NoMethod CollectionFeaturedProduct
2639	raw := NoMethod(*s)
2640	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2641}
2642
2643func (s *CollectionFeaturedProduct) UnmarshalJSON(data []byte) error {
2644	type NoMethod CollectionFeaturedProduct
2645	var s1 struct {
2646		X gensupport.JSONFloat64 `json:"x"`
2647		Y gensupport.JSONFloat64 `json:"y"`
2648		*NoMethod
2649	}
2650	s1.NoMethod = (*NoMethod)(s)
2651	if err := json.Unmarshal(data, &s1); err != nil {
2652		return err
2653	}
2654	s.X = float64(s1.X)
2655	s.Y = float64(s1.Y)
2656	return nil
2657}
2658
2659// CollectionStatus: The collectionstatus message.
2660type CollectionStatus struct {
2661	// CollectionLevelIssuses: A list of all issues associated with the
2662	// collection.
2663	CollectionLevelIssuses []*CollectionStatusItemLevelIssue `json:"collectionLevelIssuses,omitempty"`
2664
2665	// CreationDate: Date on which the collection has been created in ISO
2666	// 8601 (http://en.wikipedia.org/wiki/ISO_8601) format: Date, time, and
2667	// offset, e.g. "2020-01-02T09:00:00+01:00" or "2020-01-02T09:00:00Z"
2668	CreationDate string `json:"creationDate,omitempty"`
2669
2670	// DestinationStatuses: The intended destinations for the collection.
2671	DestinationStatuses []*CollectionStatusDestinationStatus `json:"destinationStatuses,omitempty"`
2672
2673	// Id: Required. The ID of the collection for which status is reported.
2674	Id string `json:"id,omitempty"`
2675
2676	// LastUpdateDate: Date on which the collection has been last updated in
2677	// ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601) format: Date, time,
2678	// and offset, e.g. "2020-01-02T09:00:00+01:00" or
2679	// "2020-01-02T09:00:00Z"
2680	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
2681
2682	// ServerResponse contains the HTTP response code and headers from the
2683	// server.
2684	googleapi.ServerResponse `json:"-"`
2685
2686	// ForceSendFields is a list of field names (e.g.
2687	// "CollectionLevelIssuses") to unconditionally include in API requests.
2688	// By default, fields with empty or default values are omitted from API
2689	// requests. However, any non-pointer, non-interface field appearing in
2690	// ForceSendFields will be sent to the server regardless of whether the
2691	// field is empty or not. This may be used to include empty fields in
2692	// Patch requests.
2693	ForceSendFields []string `json:"-"`
2694
2695	// NullFields is a list of field names (e.g. "CollectionLevelIssuses")
2696	// to include in API requests with the JSON null value. By default,
2697	// fields with empty values are omitted from API requests. However, any
2698	// field with an empty value appearing in NullFields will be sent to the
2699	// server as null. It is an error if a field in this list has a
2700	// non-empty value. This may be used to include null fields in Patch
2701	// requests.
2702	NullFields []string `json:"-"`
2703}
2704
2705func (s *CollectionStatus) MarshalJSON() ([]byte, error) {
2706	type NoMethod CollectionStatus
2707	raw := NoMethod(*s)
2708	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2709}
2710
2711// CollectionStatusDestinationStatus: Destination status message.
2712type CollectionStatusDestinationStatus struct {
2713	// Destination: The name of the destination
2714	Destination string `json:"destination,omitempty"`
2715
2716	// Status: The status for the specified destination.
2717	Status string `json:"status,omitempty"`
2718
2719	// ForceSendFields is a list of field names (e.g. "Destination") to
2720	// unconditionally include in API requests. By default, fields with
2721	// empty or default values are omitted from API requests. However, any
2722	// non-pointer, non-interface field appearing in ForceSendFields will be
2723	// sent to the server regardless of whether the field is empty or not.
2724	// This may be used to include empty fields in Patch requests.
2725	ForceSendFields []string `json:"-"`
2726
2727	// NullFields is a list of field names (e.g. "Destination") to include
2728	// in API requests with the JSON null value. By default, fields with
2729	// empty values are omitted from API requests. However, any field with
2730	// an empty value appearing in NullFields will be sent to the server as
2731	// null. It is an error if a field in this list has a non-empty value.
2732	// This may be used to include null fields in Patch requests.
2733	NullFields []string `json:"-"`
2734}
2735
2736func (s *CollectionStatusDestinationStatus) MarshalJSON() ([]byte, error) {
2737	type NoMethod CollectionStatusDestinationStatus
2738	raw := NoMethod(*s)
2739	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2740}
2741
2742// CollectionStatusItemLevelIssue: Issue associated with the collection.
2743type CollectionStatusItemLevelIssue struct {
2744	// AttributeName: The attribute's name, if the issue is caused by a
2745	// single attribute.
2746	AttributeName string `json:"attributeName,omitempty"`
2747
2748	// Code: The error code of the issue.
2749	Code string `json:"code,omitempty"`
2750
2751	// Description: A short issue description in English.
2752	Description string `json:"description,omitempty"`
2753
2754	// Destination: The destination the issue applies to.
2755	Destination string `json:"destination,omitempty"`
2756
2757	// Detail: A detailed issue description in English.
2758	Detail string `json:"detail,omitempty"`
2759
2760	// Documentation: The URL of a web page to help with resolving this
2761	// issue.
2762	Documentation string `json:"documentation,omitempty"`
2763
2764	// Resolution: Whether the issue can be resolved by the merchant.
2765	Resolution string `json:"resolution,omitempty"`
2766
2767	// Servability: How this issue affects the serving of the collection.
2768	Servability string `json:"servability,omitempty"`
2769
2770	// ForceSendFields is a list of field names (e.g. "AttributeName") to
2771	// unconditionally include in API requests. By default, fields with
2772	// empty or default values are omitted from API requests. However, any
2773	// non-pointer, non-interface field appearing in ForceSendFields will be
2774	// sent to the server regardless of whether the field is empty or not.
2775	// This may be used to include empty fields in Patch requests.
2776	ForceSendFields []string `json:"-"`
2777
2778	// NullFields is a list of field names (e.g. "AttributeName") to include
2779	// in API requests with the JSON null value. By default, fields with
2780	// empty values are omitted from API requests. However, any field with
2781	// an empty value appearing in NullFields will be sent to the server as
2782	// null. It is an error if a field in this list has a non-empty value.
2783	// This may be used to include null fields in Patch requests.
2784	NullFields []string `json:"-"`
2785}
2786
2787func (s *CollectionStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
2788	type NoMethod CollectionStatusItemLevelIssue
2789	raw := NoMethod(*s)
2790	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2791}
2792
2793// Css: Information about CSS domain.
2794type Css struct {
2795	// CssDomainId: Output only. Immutable. The CSS domain ID.
2796	CssDomainId int64 `json:"cssDomainId,omitempty,string"`
2797
2798	// CssGroupId: Output only. Immutable. The ID of the CSS group this CSS
2799	// domain is affiliated with. Only populated for CSS group users.
2800	CssGroupId int64 `json:"cssGroupId,omitempty,string"`
2801
2802	// DisplayName: Output only. Immutable. The CSS domain's display name,
2803	// used when space is constrained.
2804	DisplayName string `json:"displayName,omitempty"`
2805
2806	// FullName: Output only. Immutable. The CSS domain's full name.
2807	FullName string `json:"fullName,omitempty"`
2808
2809	// HomepageUri: Output only. Immutable. The CSS domain's homepage.
2810	HomepageUri string `json:"homepageUri,omitempty"`
2811
2812	// LabelIds: A list of label IDs that are assigned to this CSS domain by
2813	// its CSS group. Only populated for CSS group users.
2814	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
2815
2816	// ServerResponse contains the HTTP response code and headers from the
2817	// server.
2818	googleapi.ServerResponse `json:"-"`
2819
2820	// ForceSendFields is a list of field names (e.g. "CssDomainId") to
2821	// unconditionally include in API requests. By default, fields with
2822	// empty or default values are omitted from API requests. However, any
2823	// non-pointer, non-interface field appearing in ForceSendFields will be
2824	// sent to the server regardless of whether the field is empty or not.
2825	// This may be used to include empty fields in Patch requests.
2826	ForceSendFields []string `json:"-"`
2827
2828	// NullFields is a list of field names (e.g. "CssDomainId") to include
2829	// in API requests with the JSON null value. By default, fields with
2830	// empty values are omitted from API requests. However, any field with
2831	// an empty value appearing in NullFields will be sent to the server as
2832	// null. It is an error if a field in this list has a non-empty value.
2833	// This may be used to include null fields in Patch requests.
2834	NullFields []string `json:"-"`
2835}
2836
2837func (s *Css) MarshalJSON() ([]byte, error) {
2838	type NoMethod Css
2839	raw := NoMethod(*s)
2840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2841}
2842
2843type CustomAttribute struct {
2844	// GroupValues: Subattributes within this attribute group. Exactly one
2845	// of value or groupValues must be provided.
2846	GroupValues []*CustomAttribute `json:"groupValues,omitempty"`
2847
2848	// Name: The name of the attribute. Underscores will be replaced by
2849	// spaces upon insertion.
2850	Name string `json:"name,omitempty"`
2851
2852	// Value: The value of the attribute.
2853	Value string `json:"value,omitempty"`
2854
2855	// ForceSendFields is a list of field names (e.g. "GroupValues") to
2856	// unconditionally include in API requests. By default, fields with
2857	// empty or default values are omitted from API requests. However, any
2858	// non-pointer, non-interface field appearing in ForceSendFields will be
2859	// sent to the server regardless of whether the field is empty or not.
2860	// This may be used to include empty fields in Patch requests.
2861	ForceSendFields []string `json:"-"`
2862
2863	// NullFields is a list of field names (e.g. "GroupValues") to include
2864	// in API requests with the JSON null value. By default, fields with
2865	// empty values are omitted from API requests. However, any field with
2866	// an empty value appearing in NullFields will be sent to the server as
2867	// null. It is an error if a field in this list has a non-empty value.
2868	// This may be used to include null fields in Patch requests.
2869	NullFields []string `json:"-"`
2870}
2871
2872func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
2873	type NoMethod CustomAttribute
2874	raw := NoMethod(*s)
2875	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2876}
2877
2878type CustomerReturnReason struct {
2879	// Description: Description of the reason.
2880	Description string `json:"description,omitempty"`
2881
2882	// ReasonCode: Code of the return reason. Acceptable values are: -
2883	// "betterPriceFound" - "changedMind" - "damagedOrDefectiveItem" -
2884	// "didNotMatchDescription" - "doesNotFit" - "expiredItem" -
2885	// "incorrectItemReceived" - "noLongerNeeded" - "notSpecified" -
2886	// "orderedWrongItem" - "other" - "qualityNotExpected" -
2887	// "receivedTooLate" - "undeliverable"
2888	ReasonCode string `json:"reasonCode,omitempty"`
2889
2890	// ForceSendFields is a list of field names (e.g. "Description") to
2891	// unconditionally include in API requests. By default, fields with
2892	// empty or default values are omitted from API requests. However, any
2893	// non-pointer, non-interface field appearing in ForceSendFields will be
2894	// sent to the server regardless of whether the field is empty or not.
2895	// This may be used to include empty fields in Patch requests.
2896	ForceSendFields []string `json:"-"`
2897
2898	// NullFields is a list of field names (e.g. "Description") to include
2899	// in API requests with the JSON null value. By default, fields with
2900	// empty values are omitted from API requests. However, any field with
2901	// an empty value appearing in NullFields will be sent to the server as
2902	// null. It is an error if a field in this list has a non-empty value.
2903	// This may be used to include null fields in Patch requests.
2904	NullFields []string `json:"-"`
2905}
2906
2907func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
2908	type NoMethod CustomerReturnReason
2909	raw := NoMethod(*s)
2910	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2911}
2912
2913type CutoffTime struct {
2914	// Hour: Hour of the cutoff time until which an order has to be placed
2915	// to be processed in the same day. Required.
2916	Hour int64 `json:"hour,omitempty"`
2917
2918	// Minute: Minute of the cutoff time until which an order has to be
2919	// placed to be processed in the same day. Required.
2920	Minute int64 `json:"minute,omitempty"`
2921
2922	// Timezone: Timezone identifier for the cutoff time. A list of
2923	// identifiers can be found in the AdWords API documentation. E.g.
2924	// "Europe/Zurich". Required.
2925	Timezone string `json:"timezone,omitempty"`
2926
2927	// ForceSendFields is a list of field names (e.g. "Hour") to
2928	// unconditionally include in API requests. By default, fields with
2929	// empty or default values are omitted from API requests. However, any
2930	// non-pointer, non-interface field appearing in ForceSendFields will be
2931	// sent to the server regardless of whether the field is empty or not.
2932	// This may be used to include empty fields in Patch requests.
2933	ForceSendFields []string `json:"-"`
2934
2935	// NullFields is a list of field names (e.g. "Hour") to include in API
2936	// requests with the JSON null value. By default, fields with empty
2937	// values are omitted from API requests. However, any field with an
2938	// empty value appearing in NullFields will be sent to the server as
2939	// null. It is an error if a field in this list has a non-empty value.
2940	// This may be used to include null fields in Patch requests.
2941	NullFields []string `json:"-"`
2942}
2943
2944func (s *CutoffTime) MarshalJSON() ([]byte, error) {
2945	type NoMethod CutoffTime
2946	raw := NoMethod(*s)
2947	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2948}
2949
2950// Datafeed: Datafeed configuration data.
2951type Datafeed struct {
2952	// AttributeLanguage: The two-letter ISO 639-1 language in which the
2953	// attributes are defined in the data feed.
2954	AttributeLanguage string `json:"attributeLanguage,omitempty"`
2955
2956	// ContentType: Required. The type of data feed. For product inventory
2957	// feeds, only feeds for local stores, not online stores, are supported.
2958	// Acceptable values are: - "local products" - "product inventory" -
2959	// "products"
2960	ContentType string `json:"contentType,omitempty"`
2961
2962	// FetchSchedule: Fetch schedule for the feed file.
2963	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
2964
2965	// FileName: Required. The filename of the feed. All feeds must have a
2966	// unique file name.
2967	FileName string `json:"fileName,omitempty"`
2968
2969	// Format: Format of the feed file.
2970	Format *DatafeedFormat `json:"format,omitempty"`
2971
2972	// Id: Required for update. The ID of the data feed.
2973	Id int64 `json:"id,omitempty,string"`
2974
2975	// Kind: Identifies what kind of resource this is. Value: the fixed
2976	// string "content#datafeed"
2977	Kind string `json:"kind,omitempty"`
2978
2979	// Name: Required for insert. A descriptive name of the data feed.
2980	Name string `json:"name,omitempty"`
2981
2982	// Targets: The targets this feed should apply to (country, language,
2983	// destinations).
2984	Targets []*DatafeedTarget `json:"targets,omitempty"`
2985
2986	// ServerResponse contains the HTTP response code and headers from the
2987	// server.
2988	googleapi.ServerResponse `json:"-"`
2989
2990	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
2991	// to unconditionally include in API requests. By default, fields with
2992	// empty or default values are omitted from API requests. However, any
2993	// non-pointer, non-interface field appearing in ForceSendFields will be
2994	// sent to the server regardless of whether the field is empty or not.
2995	// This may be used to include empty fields in Patch requests.
2996	ForceSendFields []string `json:"-"`
2997
2998	// NullFields is a list of field names (e.g. "AttributeLanguage") to
2999	// include in API requests with the JSON null value. By default, fields
3000	// with empty values are omitted from API requests. However, any field
3001	// with an empty value appearing in NullFields will be sent to the
3002	// server as null. It is an error if a field in this list has a
3003	// non-empty value. This may be used to include null fields in Patch
3004	// requests.
3005	NullFields []string `json:"-"`
3006}
3007
3008func (s *Datafeed) MarshalJSON() ([]byte, error) {
3009	type NoMethod Datafeed
3010	raw := NoMethod(*s)
3011	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3012}
3013
3014// DatafeedFetchSchedule: The required fields vary based on the
3015// frequency of fetching. For a monthly fetch schedule, day_of_month and
3016// hour are required. For a weekly fetch schedule, weekday and hour are
3017// required. For a daily fetch schedule, only hour is required.
3018type DatafeedFetchSchedule struct {
3019	// DayOfMonth: The day of the month the feed file should be fetched
3020	// (1-31).
3021	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
3022
3023	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
3024	// Center will support automatic scheduled uploads using the HTTP,
3025	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
3026	// link using one of those four protocols.
3027	FetchUrl string `json:"fetchUrl,omitempty"`
3028
3029	// Hour: The hour of the day the feed file should be fetched (0-23).
3030	Hour int64 `json:"hour,omitempty"`
3031
3032	// MinuteOfHour: The minute of the hour the feed file should be fetched
3033	// (0-59). Read-only.
3034	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
3035
3036	// Password: An optional password for fetch_url.
3037	Password string `json:"password,omitempty"`
3038
3039	// Paused: Whether the scheduled fetch is paused or not.
3040	Paused bool `json:"paused,omitempty"`
3041
3042	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
3043	// "America/Los_Angeles".
3044	TimeZone string `json:"timeZone,omitempty"`
3045
3046	// Username: An optional user name for fetch_url.
3047	Username string `json:"username,omitempty"`
3048
3049	// Weekday: The day of the week the feed file should be fetched.
3050	// Acceptable values are: - "monday" - "tuesday" - "wednesday" -
3051	// "thursday" - "friday" - "saturday" - "sunday"
3052	Weekday string `json:"weekday,omitempty"`
3053
3054	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
3055	// unconditionally include in API requests. By default, fields with
3056	// empty or default values are omitted from API requests. However, any
3057	// non-pointer, non-interface field appearing in ForceSendFields will be
3058	// sent to the server regardless of whether the field is empty or not.
3059	// This may be used to include empty fields in Patch requests.
3060	ForceSendFields []string `json:"-"`
3061
3062	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
3063	// API requests with the JSON null value. By default, fields with empty
3064	// values are omitted from API requests. However, any field with an
3065	// empty value appearing in NullFields will be sent to the server as
3066	// null. It is an error if a field in this list has a non-empty value.
3067	// This may be used to include null fields in Patch requests.
3068	NullFields []string `json:"-"`
3069}
3070
3071func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
3072	type NoMethod DatafeedFetchSchedule
3073	raw := NoMethod(*s)
3074	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3075}
3076
3077type DatafeedFormat struct {
3078	// ColumnDelimiter: Delimiter for the separation of values in a
3079	// delimiter-separated values feed. If not specified, the delimiter will
3080	// be auto-detected. Ignored for non-DSV data feeds. Acceptable values
3081	// are: - "pipe" - "tab" - "tilde"
3082	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
3083
3084	// FileEncoding: Character encoding scheme of the data feed. If not
3085	// specified, the encoding will be auto-detected. Acceptable values are:
3086	// - "latin-1" - "utf-16be" - "utf-16le" - "utf-8" -
3087	// "windows-1252"
3088	FileEncoding string `json:"fileEncoding,omitempty"`
3089
3090	// QuotingMode: Specifies how double quotes are interpreted. If not
3091	// specified, the mode will be auto-detected. Ignored for non-DSV data
3092	// feeds. Acceptable values are: - "normal character" - "value
3093	// quoting"
3094	QuotingMode string `json:"quotingMode,omitempty"`
3095
3096	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
3097	// unconditionally include in API requests. By default, fields with
3098	// empty or default values are omitted from API requests. However, any
3099	// non-pointer, non-interface field appearing in ForceSendFields will be
3100	// sent to the server regardless of whether the field is empty or not.
3101	// This may be used to include empty fields in Patch requests.
3102	ForceSendFields []string `json:"-"`
3103
3104	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
3105	// include in API requests with the JSON null value. By default, fields
3106	// with empty values are omitted from API requests. However, any field
3107	// with an empty value appearing in NullFields will be sent to the
3108	// server as null. It is an error if a field in this list has a
3109	// non-empty value. This may be used to include null fields in Patch
3110	// requests.
3111	NullFields []string `json:"-"`
3112}
3113
3114func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
3115	type NoMethod DatafeedFormat
3116	raw := NoMethod(*s)
3117	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3118}
3119
3120// DatafeedStatus: The status of a datafeed, i.e., the result of the
3121// last retrieval of the datafeed computed asynchronously when the feed
3122// processing is finished.
3123type DatafeedStatus struct {
3124	// Country: The country for which the status is reported, represented as
3125	// a CLDR territory code.
3126	Country string `json:"country,omitempty"`
3127
3128	// DatafeedId: The ID of the feed for which the status is reported.
3129	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3130
3131	// Errors: The list of errors occurring in the feed.
3132	Errors []*DatafeedStatusError `json:"errors,omitempty"`
3133
3134	// ItemsTotal: The number of items in the feed that were processed.
3135	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
3136
3137	// ItemsValid: The number of items in the feed that were valid.
3138	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
3139
3140	// Kind: Identifies what kind of resource this is. Value: the fixed
3141	// string "content#datafeedStatus"
3142	Kind string `json:"kind,omitempty"`
3143
3144	// Language: The two-letter ISO 639-1 language for which the status is
3145	// reported.
3146	Language string `json:"language,omitempty"`
3147
3148	// LastUploadDate: The last date at which the feed was uploaded.
3149	LastUploadDate string `json:"lastUploadDate,omitempty"`
3150
3151	// ProcessingStatus: The processing status of the feed. Acceptable
3152	// values are: - ""failure": The feed could not be processed or all
3153	// items had errors." - "in progress": The feed is being processed. -
3154	// "none": The feed has not yet been processed. For example, a feed
3155	// that has never been uploaded will have this processing status. -
3156	// "success": The feed was processed successfully, though some items
3157	// might have had errors.
3158	ProcessingStatus string `json:"processingStatus,omitempty"`
3159
3160	// Warnings: The list of errors occurring in the feed.
3161	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
3162
3163	// ServerResponse contains the HTTP response code and headers from the
3164	// server.
3165	googleapi.ServerResponse `json:"-"`
3166
3167	// ForceSendFields is a list of field names (e.g. "Country") to
3168	// unconditionally include in API requests. By default, fields with
3169	// empty or default values are omitted from API requests. However, any
3170	// non-pointer, non-interface field appearing in ForceSendFields will be
3171	// sent to the server regardless of whether the field is empty or not.
3172	// This may be used to include empty fields in Patch requests.
3173	ForceSendFields []string `json:"-"`
3174
3175	// NullFields is a list of field names (e.g. "Country") to include in
3176	// API requests with the JSON null value. By default, fields with empty
3177	// values are omitted from API requests. However, any field with an
3178	// empty value appearing in NullFields will be sent to the server as
3179	// null. It is an error if a field in this list has a non-empty value.
3180	// This may be used to include null fields in Patch requests.
3181	NullFields []string `json:"-"`
3182}
3183
3184func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
3185	type NoMethod DatafeedStatus
3186	raw := NoMethod(*s)
3187	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3188}
3189
3190// DatafeedStatusError: An error occurring in the feed, like "invalid
3191// price".
3192type DatafeedStatusError struct {
3193	// Code: The code of the error, e.g., "validation/invalid_value".
3194	Code string `json:"code,omitempty"`
3195
3196	// Count: The number of occurrences of the error in the feed.
3197	Count uint64 `json:"count,omitempty,string"`
3198
3199	// Examples: A list of example occurrences of the error, grouped by
3200	// product.
3201	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
3202
3203	// Message: The error message, e.g., "Invalid price".
3204	Message string `json:"message,omitempty"`
3205
3206	// ForceSendFields is a list of field names (e.g. "Code") to
3207	// unconditionally include in API requests. By default, fields with
3208	// empty or default values are omitted from API requests. However, any
3209	// non-pointer, non-interface field appearing in ForceSendFields will be
3210	// sent to the server regardless of whether the field is empty or not.
3211	// This may be used to include empty fields in Patch requests.
3212	ForceSendFields []string `json:"-"`
3213
3214	// NullFields is a list of field names (e.g. "Code") to include in API
3215	// requests with the JSON null value. By default, fields with empty
3216	// values are omitted from API requests. However, any field with an
3217	// empty value appearing in NullFields will be sent to the server as
3218	// null. It is an error if a field in this list has a non-empty value.
3219	// This may be used to include null fields in Patch requests.
3220	NullFields []string `json:"-"`
3221}
3222
3223func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
3224	type NoMethod DatafeedStatusError
3225	raw := NoMethod(*s)
3226	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3227}
3228
3229// DatafeedStatusExample: An example occurrence for a particular error.
3230type DatafeedStatusExample struct {
3231	// ItemId: The ID of the example item.
3232	ItemId string `json:"itemId,omitempty"`
3233
3234	// LineNumber: Line number in the data feed where the example is found.
3235	LineNumber uint64 `json:"lineNumber,omitempty,string"`
3236
3237	// Value: The problematic value.
3238	Value string `json:"value,omitempty"`
3239
3240	// ForceSendFields is a list of field names (e.g. "ItemId") to
3241	// unconditionally include in API requests. By default, fields with
3242	// empty or default values are omitted from API requests. However, any
3243	// non-pointer, non-interface field appearing in ForceSendFields will be
3244	// sent to the server regardless of whether the field is empty or not.
3245	// This may be used to include empty fields in Patch requests.
3246	ForceSendFields []string `json:"-"`
3247
3248	// NullFields is a list of field names (e.g. "ItemId") to include in API
3249	// requests with the JSON null value. By default, fields with empty
3250	// values are omitted from API requests. However, any field with an
3251	// empty value appearing in NullFields will be sent to the server as
3252	// null. It is an error if a field in this list has a non-empty value.
3253	// This may be used to include null fields in Patch requests.
3254	NullFields []string `json:"-"`
3255}
3256
3257func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
3258	type NoMethod DatafeedStatusExample
3259	raw := NoMethod(*s)
3260	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3261}
3262
3263type DatafeedTarget struct {
3264	// Country: The country where the items in the feed will be included in
3265	// the search index, represented as a CLDR territory code.
3266	Country string `json:"country,omitempty"`
3267
3268	// ExcludedDestinations: The list of destinations to exclude for this
3269	// target (corresponds to unchecked check boxes in Merchant Center).
3270	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
3271
3272	// IncludedDestinations: The list of destinations to include for this
3273	// target (corresponds to checked check boxes in Merchant Center).
3274	// Default destinations are always included unless provided in
3275	// `excludedDestinations`. List of supported destinations (if available
3276	// to the account): - DisplayAds - Shopping - ShoppingActions -
3277	// SurfacesAcrossGoogle
3278	IncludedDestinations []string `json:"includedDestinations,omitempty"`
3279
3280	// Language: The two-letter ISO 639-1 language of the items in the feed.
3281	// Must be a valid language for `targets[].country`.
3282	Language string `json:"language,omitempty"`
3283
3284	// ForceSendFields is a list of field names (e.g. "Country") to
3285	// unconditionally include in API requests. By default, fields with
3286	// empty or default values are omitted from API requests. However, any
3287	// non-pointer, non-interface field appearing in ForceSendFields will be
3288	// sent to the server regardless of whether the field is empty or not.
3289	// This may be used to include empty fields in Patch requests.
3290	ForceSendFields []string `json:"-"`
3291
3292	// NullFields is a list of field names (e.g. "Country") 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 *DatafeedTarget) MarshalJSON() ([]byte, error) {
3302	type NoMethod DatafeedTarget
3303	raw := NoMethod(*s)
3304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3305}
3306
3307type DatafeedsCustomBatchRequest struct {
3308	// Entries: The request entries to be processed in the batch.
3309	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
3310
3311	// ForceSendFields is a list of field names (e.g. "Entries") to
3312	// unconditionally include in API requests. By default, fields with
3313	// empty or default values are omitted from API requests. However, any
3314	// non-pointer, non-interface field appearing in ForceSendFields will be
3315	// sent to the server regardless of whether the field is empty or not.
3316	// This may be used to include empty fields in Patch requests.
3317	ForceSendFields []string `json:"-"`
3318
3319	// NullFields is a list of field names (e.g. "Entries") to include in
3320	// API requests with the JSON null value. By default, fields with empty
3321	// values are omitted from API requests. However, any field with an
3322	// empty value appearing in NullFields will be sent to the server as
3323	// null. It is an error if a field in this list has a non-empty value.
3324	// This may be used to include null fields in Patch requests.
3325	NullFields []string `json:"-"`
3326}
3327
3328func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
3329	type NoMethod DatafeedsCustomBatchRequest
3330	raw := NoMethod(*s)
3331	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3332}
3333
3334// DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
3335// non-batch datafeeds request.
3336type DatafeedsCustomBatchRequestEntry struct {
3337	// BatchId: An entry ID, unique within the batch request.
3338	BatchId int64 `json:"batchId,omitempty"`
3339
3340	// Datafeed: The data feed to insert.
3341	Datafeed *Datafeed `json:"datafeed,omitempty"`
3342
3343	// DatafeedId: The ID of the data feed to get, delete or fetch.
3344	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3345
3346	// MerchantId: The ID of the managing account.
3347	MerchantId uint64 `json:"merchantId,omitempty,string"`
3348
3349	// Method: The method of the batch entry. Acceptable values are: -
3350	// "delete" - "fetchNow" - "get" - "insert" - "update"
3351	Method string `json:"method,omitempty"`
3352
3353	// ForceSendFields is a list of field names (e.g. "BatchId") to
3354	// unconditionally include in API requests. By default, fields with
3355	// empty or default values are omitted from API requests. However, any
3356	// non-pointer, non-interface field appearing in ForceSendFields will be
3357	// sent to the server regardless of whether the field is empty or not.
3358	// This may be used to include empty fields in Patch requests.
3359	ForceSendFields []string `json:"-"`
3360
3361	// NullFields is a list of field names (e.g. "BatchId") to include in
3362	// API requests with the JSON null value. By default, fields with empty
3363	// values are omitted from API requests. However, any field with an
3364	// empty value appearing in NullFields will be sent to the server as
3365	// null. It is an error if a field in this list has a non-empty value.
3366	// This may be used to include null fields in Patch requests.
3367	NullFields []string `json:"-"`
3368}
3369
3370func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3371	type NoMethod DatafeedsCustomBatchRequestEntry
3372	raw := NoMethod(*s)
3373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3374}
3375
3376type DatafeedsCustomBatchResponse struct {
3377	// Entries: The result of the execution of the batch requests.
3378	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
3379
3380	// Kind: Identifies what kind of resource this is. Value: the fixed
3381	// string "content#datafeedsCustomBatchResponse".
3382	Kind string `json:"kind,omitempty"`
3383
3384	// ServerResponse contains the HTTP response code and headers from the
3385	// server.
3386	googleapi.ServerResponse `json:"-"`
3387
3388	// ForceSendFields is a list of field names (e.g. "Entries") to
3389	// unconditionally include in API requests. By default, fields with
3390	// empty or default values are omitted from API requests. However, any
3391	// non-pointer, non-interface field appearing in ForceSendFields will be
3392	// sent to the server regardless of whether the field is empty or not.
3393	// This may be used to include empty fields in Patch requests.
3394	ForceSendFields []string `json:"-"`
3395
3396	// NullFields is a list of field names (e.g. "Entries") to include in
3397	// API requests with the JSON null value. By default, fields with empty
3398	// values are omitted from API requests. However, any field with an
3399	// empty value appearing in NullFields will be sent to the server as
3400	// null. It is an error if a field in this list has a non-empty value.
3401	// This may be used to include null fields in Patch requests.
3402	NullFields []string `json:"-"`
3403}
3404
3405func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
3406	type NoMethod DatafeedsCustomBatchResponse
3407	raw := NoMethod(*s)
3408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3409}
3410
3411// DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
3412// non-batch datafeeds response.
3413type DatafeedsCustomBatchResponseEntry struct {
3414	// BatchId: The ID of the request entry this entry responds to.
3415	BatchId int64 `json:"batchId,omitempty"`
3416
3417	// Datafeed: The requested data feed. Defined if and only if the request
3418	// was successful.
3419	Datafeed *Datafeed `json:"datafeed,omitempty"`
3420
3421	// Errors: A list of errors defined if and only if the request failed.
3422	Errors *Errors `json:"errors,omitempty"`
3423
3424	// ForceSendFields is a list of field names (e.g. "BatchId") to
3425	// unconditionally include in API requests. By default, fields with
3426	// empty or default values are omitted from API requests. However, any
3427	// non-pointer, non-interface field appearing in ForceSendFields will be
3428	// sent to the server regardless of whether the field is empty or not.
3429	// This may be used to include empty fields in Patch requests.
3430	ForceSendFields []string `json:"-"`
3431
3432	// NullFields is a list of field names (e.g. "BatchId") to include in
3433	// API requests with the JSON null value. By default, fields with empty
3434	// values are omitted from API requests. However, any field with an
3435	// empty value appearing in NullFields will be sent to the server as
3436	// null. It is an error if a field in this list has a non-empty value.
3437	// This may be used to include null fields in Patch requests.
3438	NullFields []string `json:"-"`
3439}
3440
3441func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3442	type NoMethod DatafeedsCustomBatchResponseEntry
3443	raw := NoMethod(*s)
3444	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3445}
3446
3447type DatafeedsFetchNowResponse struct {
3448	// Kind: Identifies what kind of resource this is. Value: the fixed
3449	// string "content#datafeedsFetchNowResponse".
3450	Kind string `json:"kind,omitempty"`
3451
3452	// ServerResponse contains the HTTP response code and headers from the
3453	// server.
3454	googleapi.ServerResponse `json:"-"`
3455
3456	// ForceSendFields is a list of field names (e.g. "Kind") to
3457	// unconditionally include in API requests. By default, fields with
3458	// empty or default values are omitted from API requests. However, any
3459	// non-pointer, non-interface field appearing in ForceSendFields will be
3460	// sent to the server regardless of whether the field is empty or not.
3461	// This may be used to include empty fields in Patch requests.
3462	ForceSendFields []string `json:"-"`
3463
3464	// NullFields is a list of field names (e.g. "Kind") to include in API
3465	// requests with the JSON null value. By default, fields with empty
3466	// values are omitted from API requests. However, any field with an
3467	// empty value appearing in NullFields will be sent to the server as
3468	// null. It is an error if a field in this list has a non-empty value.
3469	// This may be used to include null fields in Patch requests.
3470	NullFields []string `json:"-"`
3471}
3472
3473func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
3474	type NoMethod DatafeedsFetchNowResponse
3475	raw := NoMethod(*s)
3476	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3477}
3478
3479type DatafeedsListResponse struct {
3480	// Kind: Identifies what kind of resource this is. Value: the fixed
3481	// string "content#datafeedsListResponse".
3482	Kind string `json:"kind,omitempty"`
3483
3484	// NextPageToken: The token for the retrieval of the next page of
3485	// datafeeds.
3486	NextPageToken string `json:"nextPageToken,omitempty"`
3487
3488	Resources []*Datafeed `json:"resources,omitempty"`
3489
3490	// ServerResponse contains the HTTP response code and headers from the
3491	// server.
3492	googleapi.ServerResponse `json:"-"`
3493
3494	// ForceSendFields is a list of field names (e.g. "Kind") to
3495	// unconditionally include in API requests. By default, fields with
3496	// empty or default values are omitted from API requests. However, any
3497	// non-pointer, non-interface field appearing in ForceSendFields will be
3498	// sent to the server regardless of whether the field is empty or not.
3499	// This may be used to include empty fields in Patch requests.
3500	ForceSendFields []string `json:"-"`
3501
3502	// NullFields is a list of field names (e.g. "Kind") to include in API
3503	// requests with the JSON null value. By default, fields with empty
3504	// values are omitted from API requests. However, any field with an
3505	// empty value appearing in NullFields will be sent to the server as
3506	// null. It is an error if a field in this list has a non-empty value.
3507	// This may be used to include null fields in Patch requests.
3508	NullFields []string `json:"-"`
3509}
3510
3511func (s *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
3512	type NoMethod DatafeedsListResponse
3513	raw := NoMethod(*s)
3514	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3515}
3516
3517type DatafeedstatusesCustomBatchRequest struct {
3518	// Entries: The request entries to be processed in the batch.
3519	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
3520
3521	// ForceSendFields is a list of field names (e.g. "Entries") to
3522	// unconditionally include in API requests. By default, fields with
3523	// empty or default values are omitted from API requests. However, any
3524	// non-pointer, non-interface field appearing in ForceSendFields will be
3525	// sent to the server regardless of whether the field is empty or not.
3526	// This may be used to include empty fields in Patch requests.
3527	ForceSendFields []string `json:"-"`
3528
3529	// NullFields is a list of field names (e.g. "Entries") to include in
3530	// API requests with the JSON null value. By default, fields with empty
3531	// values are omitted from API requests. However, any field with an
3532	// empty value appearing in NullFields will be sent to the server as
3533	// null. It is an error if a field in this list has a non-empty value.
3534	// This may be used to include null fields in Patch requests.
3535	NullFields []string `json:"-"`
3536}
3537
3538func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
3539	type NoMethod DatafeedstatusesCustomBatchRequest
3540	raw := NoMethod(*s)
3541	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3542}
3543
3544// DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
3545// single non-batch datafeedstatuses request.
3546type DatafeedstatusesCustomBatchRequestEntry struct {
3547	// BatchId: An entry ID, unique within the batch request.
3548	BatchId int64 `json:"batchId,omitempty"`
3549
3550	// Country: The country for which to get the datafeed status. If this
3551	// parameter is provided then language must also be provided. Note that
3552	// for multi-target datafeeds this parameter is required.
3553	Country string `json:"country,omitempty"`
3554
3555	// DatafeedId: The ID of the data feed to get.
3556	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3557
3558	// Language: The language for which to get the datafeed status. If this
3559	// parameter is provided then country must also be provided. Note that
3560	// for multi-target datafeeds this parameter is required.
3561	Language string `json:"language,omitempty"`
3562
3563	// MerchantId: The ID of the managing account.
3564	MerchantId uint64 `json:"merchantId,omitempty,string"`
3565
3566	// Method: The method of the batch entry. Acceptable values are: -
3567	// "get"
3568	Method string `json:"method,omitempty"`
3569
3570	// ForceSendFields is a list of field names (e.g. "BatchId") to
3571	// unconditionally include in API requests. By default, fields with
3572	// empty or default values are omitted from API requests. However, any
3573	// non-pointer, non-interface field appearing in ForceSendFields will be
3574	// sent to the server regardless of whether the field is empty or not.
3575	// This may be used to include empty fields in Patch requests.
3576	ForceSendFields []string `json:"-"`
3577
3578	// NullFields is a list of field names (e.g. "BatchId") to include in
3579	// API requests with the JSON null value. By default, fields with empty
3580	// values are omitted from API requests. However, any field with an
3581	// empty value appearing in NullFields will be sent to the server as
3582	// null. It is an error if a field in this list has a non-empty value.
3583	// This may be used to include null fields in Patch requests.
3584	NullFields []string `json:"-"`
3585}
3586
3587func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3588	type NoMethod DatafeedstatusesCustomBatchRequestEntry
3589	raw := NoMethod(*s)
3590	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3591}
3592
3593type DatafeedstatusesCustomBatchResponse struct {
3594	// Entries: The result of the execution of the batch requests.
3595	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
3596
3597	// Kind: Identifies what kind of resource this is. Value: the fixed
3598	// string "content#datafeedstatusesCustomBatchResponse".
3599	Kind string `json:"kind,omitempty"`
3600
3601	// ServerResponse contains the HTTP response code and headers from the
3602	// server.
3603	googleapi.ServerResponse `json:"-"`
3604
3605	// ForceSendFields is a list of field names (e.g. "Entries") to
3606	// unconditionally include in API requests. By default, fields with
3607	// empty or default values are omitted from API requests. However, any
3608	// non-pointer, non-interface field appearing in ForceSendFields will be
3609	// sent to the server regardless of whether the field is empty or not.
3610	// This may be used to include empty fields in Patch requests.
3611	ForceSendFields []string `json:"-"`
3612
3613	// NullFields is a list of field names (e.g. "Entries") to include in
3614	// API requests with the JSON null value. By default, fields with empty
3615	// values are omitted from API requests. However, any field with an
3616	// empty value appearing in NullFields will be sent to the server as
3617	// null. It is an error if a field in this list has a non-empty value.
3618	// This may be used to include null fields in Patch requests.
3619	NullFields []string `json:"-"`
3620}
3621
3622func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
3623	type NoMethod DatafeedstatusesCustomBatchResponse
3624	raw := NoMethod(*s)
3625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3626}
3627
3628// DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
3629// single non-batch datafeedstatuses response.
3630type DatafeedstatusesCustomBatchResponseEntry struct {
3631	// BatchId: The ID of the request entry this entry responds to.
3632	BatchId int64 `json:"batchId,omitempty"`
3633
3634	// DatafeedStatus: The requested data feed status. Defined if and only
3635	// if the request was successful.
3636	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
3637
3638	// Errors: A list of errors defined if and only if the request failed.
3639	Errors *Errors `json:"errors,omitempty"`
3640
3641	// ForceSendFields is a list of field names (e.g. "BatchId") to
3642	// unconditionally include in API requests. By default, fields with
3643	// empty or default values are omitted from API requests. However, any
3644	// non-pointer, non-interface field appearing in ForceSendFields will be
3645	// sent to the server regardless of whether the field is empty or not.
3646	// This may be used to include empty fields in Patch requests.
3647	ForceSendFields []string `json:"-"`
3648
3649	// NullFields is a list of field names (e.g. "BatchId") to include in
3650	// API requests with the JSON null value. By default, fields with empty
3651	// values are omitted from API requests. However, any field with an
3652	// empty value appearing in NullFields will be sent to the server as
3653	// null. It is an error if a field in this list has a non-empty value.
3654	// This may be used to include null fields in Patch requests.
3655	NullFields []string `json:"-"`
3656}
3657
3658func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3659	type NoMethod DatafeedstatusesCustomBatchResponseEntry
3660	raw := NoMethod(*s)
3661	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3662}
3663
3664type DatafeedstatusesListResponse struct {
3665	// Kind: Identifies what kind of resource this is. Value: the fixed
3666	// string "content#datafeedstatusesListResponse".
3667	Kind string `json:"kind,omitempty"`
3668
3669	// NextPageToken: The token for the retrieval of the next page of
3670	// datafeed statuses.
3671	NextPageToken string `json:"nextPageToken,omitempty"`
3672
3673	Resources []*DatafeedStatus `json:"resources,omitempty"`
3674
3675	// ServerResponse contains the HTTP response code and headers from the
3676	// server.
3677	googleapi.ServerResponse `json:"-"`
3678
3679	// ForceSendFields is a list of field names (e.g. "Kind") to
3680	// unconditionally include in API requests. By default, fields with
3681	// empty or default values are omitted from API requests. However, any
3682	// non-pointer, non-interface field appearing in ForceSendFields will be
3683	// sent to the server regardless of whether the field is empty or not.
3684	// This may be used to include empty fields in Patch requests.
3685	ForceSendFields []string `json:"-"`
3686
3687	// NullFields is a list of field names (e.g. "Kind") to include in API
3688	// requests with the JSON null value. By default, fields with empty
3689	// values are omitted from API requests. However, any field with an
3690	// empty value appearing in NullFields will be sent to the server as
3691	// null. It is an error if a field in this list has a non-empty value.
3692	// This may be used to include null fields in Patch requests.
3693	NullFields []string `json:"-"`
3694}
3695
3696func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
3697	type NoMethod DatafeedstatusesListResponse
3698	raw := NoMethod(*s)
3699	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3700}
3701
3702// Date: Represents a whole or partial calendar date, such as a
3703// birthday. The time of day and time zone are either specified
3704// elsewhere or are insignificant. The date is relative to the Gregorian
3705// Calendar. This can represent one of the following: * A full date,
3706// with non-zero year, month, and day values * A month and day value,
3707// with a zero year, such as an anniversary * A year on its own, with
3708// zero month and day values * A year and month value, with a zero day,
3709// such as a credit card expiration date Related types are
3710// google.type.TimeOfDay and `google.protobuf.Timestamp`.
3711type Date struct {
3712	// Day: Day of a month. Must be from 1 to 31 and valid for the year and
3713	// month, or 0 to specify a year by itself or a year and month where the
3714	// day isn't significant.
3715	Day int64 `json:"day,omitempty"`
3716
3717	// Month: Month of a year. Must be from 1 to 12, or 0 to specify a year
3718	// without a month and day.
3719	Month int64 `json:"month,omitempty"`
3720
3721	// Year: Year of the date. Must be from 1 to 9999, or 0 to specify a
3722	// date without a year.
3723	Year int64 `json:"year,omitempty"`
3724
3725	// ForceSendFields is a list of field names (e.g. "Day") to
3726	// unconditionally include in API requests. By default, fields with
3727	// empty or default values are omitted from API requests. However, any
3728	// non-pointer, non-interface field appearing in ForceSendFields will be
3729	// sent to the server regardless of whether the field is empty or not.
3730	// This may be used to include empty fields in Patch requests.
3731	ForceSendFields []string `json:"-"`
3732
3733	// NullFields is a list of field names (e.g. "Day") to include in API
3734	// requests with the JSON null value. By default, fields with empty
3735	// values are omitted from API requests. However, any field with an
3736	// empty value appearing in NullFields will be sent to the server as
3737	// null. It is an error if a field in this list has a non-empty value.
3738	// This may be used to include null fields in Patch requests.
3739	NullFields []string `json:"-"`
3740}
3741
3742func (s *Date) MarshalJSON() ([]byte, error) {
3743	type NoMethod Date
3744	raw := NoMethod(*s)
3745	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3746}
3747
3748// DateTime: Represents civil time (or occasionally physical time). This
3749// type can represent a civil time in one of a few possible ways: * When
3750// utc_offset is set and time_zone is unset: a civil time on a calendar
3751// day with a particular offset from UTC. * When time_zone is set and
3752// utc_offset is unset: a civil time on a calendar day in a particular
3753// time zone. * When neither time_zone nor utc_offset is set: a civil
3754// time on a calendar day in local time. The date is relative to the
3755// Proleptic Gregorian Calendar. If year is 0, the DateTime is
3756// considered not to have a specific year. month and day must have
3757// valid, non-zero values. This type may also be used to represent a
3758// physical time if all the date and time fields are set and either case
3759// of the `time_offset` oneof is set. Consider using `Timestamp` message
3760// for physical time instead. If your use case also would like to store
3761// the user's timezone, that can be done in another field. This type is
3762// more flexible than some applications may want. Make sure to document
3763// and validate your application's limitations.
3764type DateTime struct {
3765	// Day: Required. Day of month. Must be from 1 to 31 and valid for the
3766	// year and month.
3767	Day int64 `json:"day,omitempty"`
3768
3769	// Hours: Required. Hours of day in 24 hour format. Should be from 0 to
3770	// 23. An API may choose to allow the value "24:00:00" for scenarios
3771	// like business closing time.
3772	Hours int64 `json:"hours,omitempty"`
3773
3774	// Minutes: Required. Minutes of hour of day. Must be from 0 to 59.
3775	Minutes int64 `json:"minutes,omitempty"`
3776
3777	// Month: Required. Month of year. Must be from 1 to 12.
3778	Month int64 `json:"month,omitempty"`
3779
3780	// Nanos: Required. Fractions of seconds in nanoseconds. Must be from 0
3781	// to 999,999,999.
3782	Nanos int64 `json:"nanos,omitempty"`
3783
3784	// Seconds: Required. Seconds of minutes of the time. Must normally be
3785	// from 0 to 59. An API may allow the value 60 if it allows
3786	// leap-seconds.
3787	Seconds int64 `json:"seconds,omitempty"`
3788
3789	// TimeZone: Time zone.
3790	TimeZone *TimeZone `json:"timeZone,omitempty"`
3791
3792	// UtcOffset: UTC offset. Must be whole seconds, between -18 hours and
3793	// +18 hours. For example, a UTC offset of -4:00 would be represented as
3794	// { seconds: -14400 }.
3795	UtcOffset string `json:"utcOffset,omitempty"`
3796
3797	// Year: Optional. Year of date. Must be from 1 to 9999, or 0 if
3798	// specifying a datetime without a year.
3799	Year int64 `json:"year,omitempty"`
3800
3801	// ForceSendFields is a list of field names (e.g. "Day") to
3802	// unconditionally include in API requests. By default, fields with
3803	// empty or default values are omitted from API requests. However, any
3804	// non-pointer, non-interface field appearing in ForceSendFields will be
3805	// sent to the server regardless of whether the field is empty or not.
3806	// This may be used to include empty fields in Patch requests.
3807	ForceSendFields []string `json:"-"`
3808
3809	// NullFields is a list of field names (e.g. "Day") to include in API
3810	// 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 *DateTime) MarshalJSON() ([]byte, error) {
3819	type NoMethod DateTime
3820	raw := NoMethod(*s)
3821	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3822}
3823
3824type DeliveryTime struct {
3825	// CutoffTime: Business days cutoff time definition. If not configured
3826	// the cutoff time will be defaulted to 8AM PST.
3827	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
3828
3829	// HandlingBusinessDayConfig: The business days during which orders can
3830	// be handled. If not provided, Monday to Friday business days will be
3831	// assumed.
3832	HandlingBusinessDayConfig *BusinessDayConfig `json:"handlingBusinessDayConfig,omitempty"`
3833
3834	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
3835	// specify order cutoff times for holiday-specific shipping.
3836	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
3837
3838	// MaxHandlingTimeInDays: Maximum number of business days spent before
3839	// an order is shipped. 0 means same day shipped, 1 means next day
3840	// shipped. Must be greater than or equal to `minHandlingTimeInDays`.
3841	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
3842
3843	// MaxTransitTimeInDays: Maximum number of business days that is spent
3844	// in transit. 0 means same day delivery, 1 means next day delivery.
3845	// Must be greater than or equal to `minTransitTimeInDays`.
3846	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
3847
3848	// MinHandlingTimeInDays: Minimum number of business days spent before
3849	// an order is shipped. 0 means same day shipped, 1 means next day
3850	// shipped.
3851	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
3852
3853	// MinTransitTimeInDays: Minimum number of business days that is spent
3854	// in transit. 0 means same day delivery, 1 means next day delivery.
3855	// Either `{min,max}TransitTimeInDays` or `transitTimeTable` must be
3856	// set, but not both.
3857	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
3858
3859	// TransitBusinessDayConfig: The business days during which orders can
3860	// be in-transit. If not provided, Monday to Friday business days will
3861	// be assumed.
3862	TransitBusinessDayConfig *BusinessDayConfig `json:"transitBusinessDayConfig,omitempty"`
3863
3864	// TransitTimeTable: Transit time table, number of business days spent
3865	// in transit based on row and column dimensions. Either
3866	// `{min,max}TransitTimeInDays` or `transitTimeTable` can be set, but
3867	// not both.
3868	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
3869
3870	// WarehouseBasedDeliveryTimes: Indicates that the delivery time should
3871	// be calculated per warehouse (shipping origin location) based on the
3872	// settings of the selected carrier. When set, no other transit time
3873	// related field in DeliveryTime should be set.
3874	WarehouseBasedDeliveryTimes []*WarehouseBasedDeliveryTime `json:"warehouseBasedDeliveryTimes,omitempty"`
3875
3876	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
3877	// unconditionally include in API requests. By default, fields with
3878	// empty or default values are omitted from API requests. However, any
3879	// non-pointer, non-interface field appearing in ForceSendFields will be
3880	// sent to the server regardless of whether the field is empty or not.
3881	// This may be used to include empty fields in Patch requests.
3882	ForceSendFields []string `json:"-"`
3883
3884	// NullFields is a list of field names (e.g. "CutoffTime") to include in
3885	// API requests with the JSON null value. By default, fields with empty
3886	// values are omitted from API requests. However, any field with an
3887	// empty value appearing in NullFields will be sent to the server as
3888	// null. It is an error if a field in this list has a non-empty value.
3889	// This may be used to include null fields in Patch requests.
3890	NullFields []string `json:"-"`
3891}
3892
3893func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
3894	type NoMethod DeliveryTime
3895	raw := NoMethod(*s)
3896	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3897}
3898
3899// Error: An error returned by the API.
3900type Error struct {
3901	// Domain: The domain of the error.
3902	Domain string `json:"domain,omitempty"`
3903
3904	// Message: A description of the error.
3905	Message string `json:"message,omitempty"`
3906
3907	// Reason: The error code.
3908	Reason string `json:"reason,omitempty"`
3909
3910	// ForceSendFields is a list of field names (e.g. "Domain") to
3911	// unconditionally include in API requests. By default, fields with
3912	// empty or default values are omitted from API requests. However, any
3913	// non-pointer, non-interface field appearing in ForceSendFields will be
3914	// sent to the server regardless of whether the field is empty or not.
3915	// This may be used to include empty fields in Patch requests.
3916	ForceSendFields []string `json:"-"`
3917
3918	// NullFields is a list of field names (e.g. "Domain") to include in API
3919	// requests with the JSON null value. By default, fields with empty
3920	// values are omitted from API requests. However, any field with an
3921	// empty value appearing in NullFields will be sent to the server as
3922	// null. It is an error if a field in this list has a non-empty value.
3923	// This may be used to include null fields in Patch requests.
3924	NullFields []string `json:"-"`
3925}
3926
3927func (s *Error) MarshalJSON() ([]byte, error) {
3928	type NoMethod Error
3929	raw := NoMethod(*s)
3930	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3931}
3932
3933// Errors: A list of errors returned by a failed batch entry.
3934type Errors struct {
3935	// Code: The HTTP status of the first error in `errors`.
3936	Code int64 `json:"code,omitempty"`
3937
3938	// Errors: A list of errors.
3939	Errors []*Error `json:"errors,omitempty"`
3940
3941	// Message: The message of the first error in `errors`.
3942	Message string `json:"message,omitempty"`
3943
3944	// ForceSendFields is a list of field names (e.g. "Code") to
3945	// unconditionally include in API requests. By default, fields with
3946	// empty or default values are omitted from API requests. However, any
3947	// non-pointer, non-interface field appearing in ForceSendFields will be
3948	// sent to the server regardless of whether the field is empty or not.
3949	// This may be used to include empty fields in Patch requests.
3950	ForceSendFields []string `json:"-"`
3951
3952	// NullFields is a list of field names (e.g. "Code") to include in API
3953	// requests with the JSON null value. By default, fields with empty
3954	// values are omitted from API requests. However, any field with an
3955	// empty value appearing in NullFields will be sent to the server as
3956	// null. It is an error if a field in this list has a non-empty value.
3957	// This may be used to include null fields in Patch requests.
3958	NullFields []string `json:"-"`
3959}
3960
3961func (s *Errors) MarshalJSON() ([]byte, error) {
3962	type NoMethod Errors
3963	raw := NoMethod(*s)
3964	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3965}
3966
3967// FreeListingsProgramStatus: Response message for
3968// GetFreeListingsProgramStatus.
3969type FreeListingsProgramStatus struct {
3970	// RegionStatuses: Status of the program in each region. Regions with
3971	// the same status and review eligibility are grouped together in
3972	// `regionCodes`.
3973	RegionStatuses []*FreeListingsProgramStatusRegionStatus `json:"regionStatuses,omitempty"`
3974
3975	// State: If program is successfully onboarded for at least one region.
3976	//
3977	// Possible values:
3978	//   "PROGRAM_STATE_UNSPECIFIED" - State is not known.
3979	//   "ONBOARDED" - Program is onboarded for at least one country.
3980	//   "NOT_ONBOARDED" - Program is not onboarded for any country.
3981	State string `json:"state,omitempty"`
3982
3983	// ServerResponse contains the HTTP response code and headers from the
3984	// server.
3985	googleapi.ServerResponse `json:"-"`
3986
3987	// ForceSendFields is a list of field names (e.g. "RegionStatuses") to
3988	// unconditionally include in API requests. By default, fields with
3989	// empty or default values are omitted from API requests. However, any
3990	// non-pointer, non-interface field appearing in ForceSendFields will be
3991	// sent to the server regardless of whether the field is empty or not.
3992	// This may be used to include empty fields in Patch requests.
3993	ForceSendFields []string `json:"-"`
3994
3995	// NullFields is a list of field names (e.g. "RegionStatuses") to
3996	// include in API requests with the JSON null value. By default, fields
3997	// with empty values are omitted from API requests. However, any field
3998	// with an empty value appearing in NullFields will be sent to the
3999	// server as null. It is an error if a field in this list has a
4000	// non-empty value. This may be used to include null fields in Patch
4001	// requests.
4002	NullFields []string `json:"-"`
4003}
4004
4005func (s *FreeListingsProgramStatus) MarshalJSON() ([]byte, error) {
4006	type NoMethod FreeListingsProgramStatus
4007	raw := NoMethod(*s)
4008	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4009}
4010
4011// FreeListingsProgramStatusRegionStatus: Status of program and region.
4012type FreeListingsProgramStatusRegionStatus struct {
4013	// DisapprovalDate: Date by which `eligibility_status` will go from
4014	// `WARNING` to `DISAPPROVED`. It will be present when
4015	// `eligibility_status` is `WARNING`. Date will be provided in ISO 8601
4016	// format i.e. YYYY-MM-DD
4017	DisapprovalDate string `json:"disapprovalDate,omitempty"`
4018
4019	// EligibilityStatus: Eligibility status of the standard free listing
4020	// program.
4021	//
4022	// Possible values:
4023	//   "STATE_UNSPECIFIED" - State is not known.
4024	//   "APPROVED" - If the account has no issues and review is completed
4025	// successfully.
4026	//   "DISAPPROVED" - There are one or more issues that needs to be
4027	// resolved for account to be active for the program. Detailed list of
4028	// account issues are available in
4029	// [accountstatuses](https://developers.google.com/shopping-content/refer
4030	// ence/rest/v2.1/accountstatuses) API.
4031	//   "WARNING" - If account has issues but offers are servable. Some of
4032	// the issue can make account DISAPPROVED after a certain deadline.
4033	//   "UNDER_REVIEW" - Account is under review.
4034	//   "PENDING_REVIEW" - Account is waiting for review to start.
4035	//   "ONBOARDING" - Program is currently onboarding.
4036	EligibilityStatus string `json:"eligibilityStatus,omitempty"`
4037
4038	// EnhancedEligibilityStatus: Eligibility status of the enhanced free
4039	// listing program.
4040	//
4041	// Possible values:
4042	//   "STATE_UNSPECIFIED" - State is not known.
4043	//   "APPROVED" - If the account has no issues and review is completed
4044	// successfully.
4045	//   "DISAPPROVED" - There are one or more issues that needs to be
4046	// resolved for account to be active for the program. Detailed list of
4047	// account issues are available in
4048	// [accountstatuses](https://developers.google.com/shopping-content/refer
4049	// ence/rest/v2.1/accountstatuses) API.
4050	//   "WARNING" - If account has issues but offers are servable. Some of
4051	// the issue can make account DISAPPROVED after a certain deadline.
4052	//   "UNDER_REVIEW" - Account is under review.
4053	//   "PENDING_REVIEW" - Account is waiting for review to start.
4054	//   "ONBOARDING" - Program is currently onboarding.
4055	EnhancedEligibilityStatus string `json:"enhancedEligibilityStatus,omitempty"`
4056
4057	// IneligibilityReason: Reason if a program in a given country is not
4058	// eligible for review. Populated only if `review_eligibility_status` is
4059	// `INELIGIBLE`.
4060	IneligibilityReason string `json:"ineligibilityReason,omitempty"`
4061
4062	// RegionCodes: The two-letter ISO 3166-1 alpha-2
4063	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) codes for all the
4064	// regions with the same `eligibilityStatus` and `reviewEligibility`.
4065	RegionCodes []string `json:"regionCodes,omitempty"`
4066
4067	// ReviewEligibilityStatus: If a program in a given country is eligible
4068	// for review. It will be present only if eligibility status is
4069	// `DISAPPROVED`.
4070	//
4071	// Possible values:
4072	//   "REVIEW_ELIGIBILITY_UNSPECIFIED" - Review eligibility state is
4073	// unknown.
4074	//   "ELIGIBLE" - Account for a region code is eligible for review.
4075	//   "INELIGIBLE" - Account for a region code is not eligible for
4076	// review.
4077	ReviewEligibilityStatus string `json:"reviewEligibilityStatus,omitempty"`
4078
4079	// ReviewIssues: These issues will be evaluated in review process. Fix
4080	// all the issues before requesting the review.
4081	ReviewIssues []string `json:"reviewIssues,omitempty"`
4082
4083	// ForceSendFields is a list of field names (e.g. "DisapprovalDate") to
4084	// unconditionally include in API requests. By default, fields with
4085	// empty or default values are omitted from API requests. However, any
4086	// non-pointer, non-interface field appearing in ForceSendFields will be
4087	// sent to the server regardless of whether the field is empty or not.
4088	// This may be used to include empty fields in Patch requests.
4089	ForceSendFields []string `json:"-"`
4090
4091	// NullFields is a list of field names (e.g. "DisapprovalDate") to
4092	// include in API requests with the JSON null value. By default, fields
4093	// with empty values are omitted from API requests. However, any field
4094	// with an empty value appearing in NullFields will be sent to the
4095	// server as null. It is an error if a field in this list has a
4096	// non-empty value. This may be used to include null fields in Patch
4097	// requests.
4098	NullFields []string `json:"-"`
4099}
4100
4101func (s *FreeListingsProgramStatusRegionStatus) MarshalJSON() ([]byte, error) {
4102	type NoMethod FreeListingsProgramStatusRegionStatus
4103	raw := NoMethod(*s)
4104	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4105}
4106
4107type GmbAccounts struct {
4108	// AccountId: The ID of the Merchant Center account.
4109	AccountId uint64 `json:"accountId,omitempty,string"`
4110
4111	// GmbAccounts: A list of GMB accounts which are available to the
4112	// merchant.
4113	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
4114
4115	// ForceSendFields is a list of field names (e.g. "AccountId") to
4116	// unconditionally include in API requests. By default, fields with
4117	// empty or default values are omitted from API requests. However, any
4118	// non-pointer, non-interface field appearing in ForceSendFields will be
4119	// sent to the server regardless of whether the field is empty or not.
4120	// This may be used to include empty fields in Patch requests.
4121	ForceSendFields []string `json:"-"`
4122
4123	// NullFields is a list of field names (e.g. "AccountId") to include in
4124	// API requests with the JSON null value. By default, fields with empty
4125	// values are omitted from API requests. However, any field with an
4126	// empty value appearing in NullFields will be sent to the server as
4127	// null. It is an error if a field in this list has a non-empty value.
4128	// This may be used to include null fields in Patch requests.
4129	NullFields []string `json:"-"`
4130}
4131
4132func (s *GmbAccounts) MarshalJSON() ([]byte, error) {
4133	type NoMethod GmbAccounts
4134	raw := NoMethod(*s)
4135	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4136}
4137
4138type GmbAccountsGmbAccount struct {
4139	// Email: The email which identifies the GMB account.
4140	Email string `json:"email,omitempty"`
4141
4142	// ListingCount: Number of listings under this account.
4143	ListingCount uint64 `json:"listingCount,omitempty,string"`
4144
4145	// Name: The name of the GMB account.
4146	Name string `json:"name,omitempty"`
4147
4148	// Type: The type of the GMB account (User or Business).
4149	Type string `json:"type,omitempty"`
4150
4151	// ForceSendFields is a list of field names (e.g. "Email") to
4152	// unconditionally include in API requests. By default, fields with
4153	// empty or default values are omitted from API requests. However, any
4154	// non-pointer, non-interface field appearing in ForceSendFields will be
4155	// sent to the server regardless of whether the field is empty or not.
4156	// This may be used to include empty fields in Patch requests.
4157	ForceSendFields []string `json:"-"`
4158
4159	// NullFields is a list of field names (e.g. "Email") to include in API
4160	// requests with the JSON null value. By default, fields with empty
4161	// values are omitted from API requests. However, any field with an
4162	// empty value appearing in NullFields will be sent to the server as
4163	// null. It is an error if a field in this list has a non-empty value.
4164	// This may be used to include null fields in Patch requests.
4165	NullFields []string `json:"-"`
4166}
4167
4168func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
4169	type NoMethod GmbAccountsGmbAccount
4170	raw := NoMethod(*s)
4171	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4172}
4173
4174// Headers: A non-empty list of row or column headers for a table.
4175// Exactly one of `prices`, `weights`, `numItems`,
4176// `postalCodeGroupNames`, or `location` must be set.
4177type Headers struct {
4178	// Locations: A list of location ID sets. Must be non-empty. Can only be
4179	// set if all other fields are not set.
4180	Locations []*LocationIdSet `json:"locations,omitempty"`
4181
4182	// NumberOfItems: A list of inclusive number of items upper bounds. The
4183	// last value can be "infinity". For example `["10", "50",
4184	// "infinity"]` represents the headers "<= 10 items", "<= 50 items", and
4185	// "> 50 items". Must be non-empty. Can only be set if all other fields
4186	// are not set.
4187	NumberOfItems []string `json:"numberOfItems,omitempty"`
4188
4189	// PostalCodeGroupNames: A list of postal group names. The last value
4190	// can be "all other locations". Example: `["zone 1", "zone 2", "all
4191	// other locations"]`. The referred postal code groups must match the
4192	// delivery country of the service. Must be non-empty. Can only be set
4193	// if all other fields are not set.
4194	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
4195
4196	// Prices: A list of inclusive order price upper bounds. The last
4197	// price's value can be "infinity". For example `[{"value": "10",
4198	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
4199	// "infinity", "currency": "USD"}]` represents the headers "<= $10", "<=
4200	// $500", and "> $500". All prices within a service must have the same
4201	// currency. Must be non-empty. Can only be set if all other fields are
4202	// not set.
4203	Prices []*Price `json:"prices,omitempty"`
4204
4205	// Weights: A list of inclusive order weight upper bounds. The last
4206	// weight's value can be "infinity". For example `[{"value": "10",
4207	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
4208	// "unit": "kg"}]` represents the headers "<= 10kg", "<= 50kg", and ">
4209	// 50kg". All weights within a service must have the same unit. Must be
4210	// non-empty. Can only be set if all other fields are not set.
4211	Weights []*Weight `json:"weights,omitempty"`
4212
4213	// ForceSendFields is a list of field names (e.g. "Locations") to
4214	// unconditionally include in API requests. By default, fields with
4215	// empty or default values are omitted from API requests. However, any
4216	// non-pointer, non-interface field appearing in ForceSendFields will be
4217	// sent to the server regardless of whether the field is empty or not.
4218	// This may be used to include empty fields in Patch requests.
4219	ForceSendFields []string `json:"-"`
4220
4221	// NullFields is a list of field names (e.g. "Locations") to include in
4222	// API requests with the JSON null value. By default, fields with empty
4223	// values are omitted from API requests. However, any field with an
4224	// empty value appearing in NullFields will be sent to the server as
4225	// null. It is an error if a field in this list has a non-empty value.
4226	// This may be used to include null fields in Patch requests.
4227	NullFields []string `json:"-"`
4228}
4229
4230func (s *Headers) MarshalJSON() ([]byte, error) {
4231	type NoMethod Headers
4232	raw := NoMethod(*s)
4233	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4234}
4235
4236type HolidayCutoff struct {
4237	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
4238	// "2016-11-29" for 29th November 2016. Required.
4239	DeadlineDate string `json:"deadlineDate,omitempty"`
4240
4241	// DeadlineHour: Hour of the day on the deadline date until which the
4242	// order has to be placed to qualify for the delivery guarantee.
4243	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
4244	// Required.
4245	DeadlineHour int64 `json:"deadlineHour,omitempty"`
4246
4247	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
4248	// of identifiers can be found in the AdWords API documentation. E.g.
4249	// "Europe/Zurich". Required.
4250	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
4251
4252	// HolidayId: Unique identifier for the holiday. Required.
4253	HolidayId string `json:"holidayId,omitempty"`
4254
4255	// VisibleFromDate: Date on which the deadline will become visible to
4256	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
4257	// 2016. Required.
4258	VisibleFromDate string `json:"visibleFromDate,omitempty"`
4259
4260	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
4261	// unconditionally include in API requests. By default, fields with
4262	// empty or default values are omitted from API requests. However, any
4263	// non-pointer, non-interface field appearing in ForceSendFields will be
4264	// sent to the server regardless of whether the field is empty or not.
4265	// This may be used to include empty fields in Patch requests.
4266	ForceSendFields []string `json:"-"`
4267
4268	// NullFields is a list of field names (e.g. "DeadlineDate") to include
4269	// in API requests with the JSON null value. By default, fields with
4270	// empty values are omitted from API requests. However, any field with
4271	// an empty value appearing in NullFields will be sent to the server as
4272	// null. It is an error if a field in this list has a non-empty value.
4273	// This may be used to include null fields in Patch requests.
4274	NullFields []string `json:"-"`
4275}
4276
4277func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
4278	type NoMethod HolidayCutoff
4279	raw := NoMethod(*s)
4280	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4281}
4282
4283type HolidaysHoliday struct {
4284	// CountryCode: The CLDR territory code of the country in which the
4285	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
4286	// only be configured in a shipping settings service with matching
4287	// delivery country. Always present.
4288	CountryCode string `json:"countryCode,omitempty"`
4289
4290	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
4291	// Christmas 2016. Always present.
4292	Date string `json:"date,omitempty"`
4293
4294	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
4295	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
4296	// 2016. Always present.
4297	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
4298
4299	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
4300	// timezone on the guaranteed delivery date by which the order has to
4301	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
4302	// 12 (noon), 13, ..., 23. Always present.
4303	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
4304
4305	// Id: Unique identifier for the holiday to be used when configuring
4306	// holiday cutoffs. Always present.
4307	Id string `json:"id,omitempty"`
4308
4309	// Type: The holiday type. Always present. Acceptable values are: -
4310	// "Christmas" - "Easter" - "Father's Day" - "Halloween" -
4311	// "Independence Day (USA)" - "Mother's Day" - "Thanksgiving" -
4312	// "Valentine's Day"
4313	Type string `json:"type,omitempty"`
4314
4315	// ForceSendFields is a list of field names (e.g. "CountryCode") to
4316	// unconditionally include in API requests. By default, fields with
4317	// empty or default values are omitted from API requests. However, any
4318	// non-pointer, non-interface field appearing in ForceSendFields will be
4319	// sent to the server regardless of whether the field is empty or not.
4320	// This may be used to include empty fields in Patch requests.
4321	ForceSendFields []string `json:"-"`
4322
4323	// NullFields is a list of field names (e.g. "CountryCode") to include
4324	// in API requests with the JSON null value. By default, fields with
4325	// empty values are omitted from API requests. However, any field with
4326	// an empty value appearing in NullFields will be sent to the server as
4327	// null. It is an error if a field in this list has a non-empty value.
4328	// This may be used to include null fields in Patch requests.
4329	NullFields []string `json:"-"`
4330}
4331
4332func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
4333	type NoMethod HolidaysHoliday
4334	raw := NoMethod(*s)
4335	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4336}
4337
4338// InapplicabilityDetails: Map of inapplicability details.
4339type InapplicabilityDetails struct {
4340	// InapplicableCount: Count of this inapplicable reason code.
4341	InapplicableCount int64 `json:"inapplicableCount,omitempty,string"`
4342
4343	// InapplicableReason: Reason code this rule was not applicable.
4344	//
4345	// Possible values:
4346	//   "INAPPLICABLE_REASON_UNSPECIFIED" - Default value. Should not be
4347	// used.
4348	//   "CANNOT_BEAT_BUYBOX_WINNER" - The rule set for this product cannot
4349	// beat the buybox winner.
4350	//   "ALREADY_WINNING_BUYBOX" - This product can already win the buybox
4351	// without rule.
4352	//   "TRIUMPHED_OVER_BY_SAME_TYPE_RULE" - Another rule of the same type
4353	// takes precedence over this one.
4354	//   "TRIUMPHED_OVER_BY_OTHER_RULE_ON_OFFER" - Another rule of a
4355	// different type takes precedence over this one.
4356	//   "RESTRICTIONS_NOT_MET" - The rule restrictions are not met. For
4357	// example, this may be the case if the calculated rule price is lower
4358	// than floor price in the restriction.
4359	//   "UNCATEGORIZED" - The reason is not categorized to any known
4360	// reason.
4361	//   "INVALID_AUTO_PRICE_MIN" - The auto_pricing_min_price is invalid.
4362	// For example, it is missing or < 0.
4363	//   "INVALID_FLOOR_CONFIG" - The floor defined in the rule is invalid.
4364	// For example, it has the wrong sign which results in a floor < 0.
4365	InapplicableReason string `json:"inapplicableReason,omitempty"`
4366
4367	// ForceSendFields is a list of field names (e.g. "InapplicableCount")
4368	// to unconditionally include in API requests. By default, fields with
4369	// empty or default values are omitted from API requests. However, any
4370	// non-pointer, non-interface field appearing in ForceSendFields will be
4371	// sent to the server regardless of whether the field is empty or not.
4372	// This may be used to include empty fields in Patch requests.
4373	ForceSendFields []string `json:"-"`
4374
4375	// NullFields is a list of field names (e.g. "InapplicableCount") to
4376	// include in API requests with the JSON null value. By default, fields
4377	// with empty values are omitted from API requests. However, any field
4378	// with an empty value appearing in NullFields will be sent to the
4379	// server as null. It is an error if a field in this list has a
4380	// non-empty value. This may be used to include null fields in Patch
4381	// requests.
4382	NullFields []string `json:"-"`
4383}
4384
4385func (s *InapplicabilityDetails) MarshalJSON() ([]byte, error) {
4386	type NoMethod InapplicabilityDetails
4387	raw := NoMethod(*s)
4388	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4389}
4390
4391type Installment struct {
4392	// Amount: The amount the buyer has to pay per month.
4393	Amount *Price `json:"amount,omitempty"`
4394
4395	// Months: The number of installments the buyer has to pay.
4396	Months int64 `json:"months,omitempty,string"`
4397
4398	// ForceSendFields is a list of field names (e.g. "Amount") to
4399	// unconditionally include in API requests. By default, fields with
4400	// empty or default values are omitted from API requests. However, any
4401	// non-pointer, non-interface field appearing in ForceSendFields will be
4402	// sent to the server regardless of whether the field is empty or not.
4403	// This may be used to include empty fields in Patch requests.
4404	ForceSendFields []string `json:"-"`
4405
4406	// NullFields is a list of field names (e.g. "Amount") to include in API
4407	// requests with the JSON null value. By default, fields with empty
4408	// values are omitted from API requests. However, any field with an
4409	// empty value appearing in NullFields will be sent to the server as
4410	// null. It is an error if a field in this list has a non-empty value.
4411	// This may be used to include null fields in Patch requests.
4412	NullFields []string `json:"-"`
4413}
4414
4415func (s *Installment) MarshalJSON() ([]byte, error) {
4416	type NoMethod Installment
4417	raw := NoMethod(*s)
4418	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4419}
4420
4421type InvoiceSummary struct {
4422	// AdditionalChargeSummaries: Summary of the total amounts of the
4423	// additional charges.
4424	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
4425
4426	// ProductTotal: [required] Total price for the product.
4427	ProductTotal *Amount `json:"productTotal,omitempty"`
4428
4429	// ForceSendFields is a list of field names (e.g.
4430	// "AdditionalChargeSummaries") to unconditionally include in API
4431	// requests. By default, fields with empty or default values are omitted
4432	// from API requests. However, any non-pointer, non-interface field
4433	// appearing in ForceSendFields will be sent to the server regardless of
4434	// whether the field is empty or not. This may be used to include empty
4435	// fields in Patch requests.
4436	ForceSendFields []string `json:"-"`
4437
4438	// NullFields is a list of field names (e.g.
4439	// "AdditionalChargeSummaries") to include in API requests with the JSON
4440	// null value. By default, fields with empty values are omitted from API
4441	// requests. However, any field with an empty value appearing in
4442	// NullFields will be sent to the server as null. It is an error if a
4443	// field in this list has a non-empty value. This may be used to include
4444	// null fields in Patch requests.
4445	NullFields []string `json:"-"`
4446}
4447
4448func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
4449	type NoMethod InvoiceSummary
4450	raw := NoMethod(*s)
4451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4452}
4453
4454type InvoiceSummaryAdditionalChargeSummary struct {
4455	// TotalAmount: [required] Total additional charge for this type.
4456	TotalAmount *Amount `json:"totalAmount,omitempty"`
4457
4458	// Type: [required] Type of the additional charge. Acceptable values
4459	// are: - "shipping"
4460	Type string `json:"type,omitempty"`
4461
4462	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
4463	// unconditionally include in API requests. By default, fields with
4464	// empty or default values are omitted from API requests. However, any
4465	// non-pointer, non-interface field appearing in ForceSendFields will be
4466	// sent to the server regardless of whether the field is empty or not.
4467	// This may be used to include empty fields in Patch requests.
4468	ForceSendFields []string `json:"-"`
4469
4470	// NullFields is a list of field names (e.g. "TotalAmount") to include
4471	// in API requests with the JSON null value. By default, fields with
4472	// empty values are omitted from API requests. However, any field with
4473	// an empty value appearing in NullFields will be sent to the server as
4474	// null. It is an error if a field in this list has a non-empty value.
4475	// This may be used to include null fields in Patch requests.
4476	NullFields []string `json:"-"`
4477}
4478
4479func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
4480	type NoMethod InvoiceSummaryAdditionalChargeSummary
4481	raw := NoMethod(*s)
4482	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4483}
4484
4485// LabelIds: The IDs of labels that should be assigned to the CSS
4486// domain.
4487type LabelIds struct {
4488	// LabelIds: The list of label IDs.
4489	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
4490
4491	// ForceSendFields is a list of field names (e.g. "LabelIds") to
4492	// unconditionally include in API requests. By default, fields with
4493	// empty or default values are omitted from API requests. However, any
4494	// non-pointer, non-interface field appearing in ForceSendFields will be
4495	// sent to the server regardless of whether the field is empty or not.
4496	// This may be used to include empty fields in Patch requests.
4497	ForceSendFields []string `json:"-"`
4498
4499	// NullFields is a list of field names (e.g. "LabelIds") to include in
4500	// API requests with the JSON null value. By default, fields with empty
4501	// values are omitted from API requests. However, any field with an
4502	// empty value appearing in NullFields will be sent to the server as
4503	// null. It is an error if a field in this list has a non-empty value.
4504	// This may be used to include null fields in Patch requests.
4505	NullFields []string `json:"-"`
4506}
4507
4508func (s *LabelIds) MarshalJSON() ([]byte, error) {
4509	type NoMethod LabelIds
4510	raw := NoMethod(*s)
4511	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4512}
4513
4514type LiaAboutPageSettings struct {
4515	// Status: The status of the verification process for the About page.
4516	// Acceptable values are: - "active" - "inactive" - "pending"
4517	Status string `json:"status,omitempty"`
4518
4519	// Url: The URL for the About page.
4520	Url string `json:"url,omitempty"`
4521
4522	// ForceSendFields is a list of field names (e.g. "Status") to
4523	// unconditionally include in API requests. By default, fields with
4524	// empty or default values are omitted from API requests. However, any
4525	// non-pointer, non-interface field appearing in ForceSendFields will be
4526	// sent to the server regardless of whether the field is empty or not.
4527	// This may be used to include empty fields in Patch requests.
4528	ForceSendFields []string `json:"-"`
4529
4530	// NullFields is a list of field names (e.g. "Status") to include in API
4531	// requests with the JSON null value. By default, fields with empty
4532	// values are omitted from API requests. However, any field with an
4533	// empty value appearing in NullFields will be sent to the server as
4534	// null. It is an error if a field in this list has a non-empty value.
4535	// This may be used to include null fields in Patch requests.
4536	NullFields []string `json:"-"`
4537}
4538
4539func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
4540	type NoMethod LiaAboutPageSettings
4541	raw := NoMethod(*s)
4542	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4543}
4544
4545type LiaCountrySettings struct {
4546	// About: The settings for the About page.
4547	About *LiaAboutPageSettings `json:"about,omitempty"`
4548
4549	// Country: Required. CLDR country code (e.g. "US").
4550	Country string `json:"country,omitempty"`
4551
4552	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
4553	// storefront" feature.
4554	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
4555
4556	// Inventory: LIA inventory verification settings.
4557	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
4558
4559	// OnDisplayToOrder: LIA "On Display To Order" settings.
4560	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
4561
4562	// PosDataProvider: The POS data provider linked with this country.
4563	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
4564
4565	// StorePickupActive: The status of the "Store pickup" feature.
4566	StorePickupActive bool `json:"storePickupActive,omitempty"`
4567
4568	// ForceSendFields is a list of field names (e.g. "About") to
4569	// unconditionally include in API requests. By default, fields with
4570	// empty or default values are omitted from API requests. However, any
4571	// non-pointer, non-interface field appearing in ForceSendFields will be
4572	// sent to the server regardless of whether the field is empty or not.
4573	// This may be used to include empty fields in Patch requests.
4574	ForceSendFields []string `json:"-"`
4575
4576	// NullFields is a list of field names (e.g. "About") to include in API
4577	// requests with the JSON null value. By default, fields with empty
4578	// values are omitted from API requests. However, any field with an
4579	// empty value appearing in NullFields will be sent to the server as
4580	// null. It is an error if a field in this list has a non-empty value.
4581	// This may be used to include null fields in Patch requests.
4582	NullFields []string `json:"-"`
4583}
4584
4585func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
4586	type NoMethod LiaCountrySettings
4587	raw := NoMethod(*s)
4588	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4589}
4590
4591type LiaInventorySettings struct {
4592	// InventoryVerificationContactEmail: The email of the contact for the
4593	// inventory verification process.
4594	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
4595
4596	// InventoryVerificationContactName: The name of the contact for the
4597	// inventory verification process.
4598	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
4599
4600	// InventoryVerificationContactStatus: The status of the verification
4601	// contact. Acceptable values are: - "active" - "inactive" -
4602	// "pending"
4603	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
4604
4605	// Status: The status of the inventory verification process. Acceptable
4606	// values are: - "active" - "inactive" - "pending"
4607	Status string `json:"status,omitempty"`
4608
4609	// ForceSendFields is a list of field names (e.g.
4610	// "InventoryVerificationContactEmail") to unconditionally include in
4611	// API requests. By default, fields with empty or default values are
4612	// omitted from API requests. However, any non-pointer, non-interface
4613	// field appearing in ForceSendFields will be sent to the server
4614	// regardless of whether the field is empty or not. This may be used to
4615	// include empty fields in Patch requests.
4616	ForceSendFields []string `json:"-"`
4617
4618	// NullFields is a list of field names (e.g.
4619	// "InventoryVerificationContactEmail") to include in API requests with
4620	// the JSON null value. By default, fields with empty values are omitted
4621	// from API requests. However, any field with an empty value appearing
4622	// in NullFields will be sent to the server as null. It is an error if a
4623	// field in this list has a non-empty value. This may be used to include
4624	// null fields in Patch requests.
4625	NullFields []string `json:"-"`
4626}
4627
4628func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
4629	type NoMethod LiaInventorySettings
4630	raw := NoMethod(*s)
4631	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4632}
4633
4634type LiaOnDisplayToOrderSettings struct {
4635	// ShippingCostPolicyUrl: Shipping cost and policy URL.
4636	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
4637
4638	// Status: The status of the ?On display to order? feature. Acceptable
4639	// values are: - "active" - "inactive" - "pending"
4640	Status string `json:"status,omitempty"`
4641
4642	// ForceSendFields is a list of field names (e.g.
4643	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
4644	// By default, fields with empty or default values are omitted from API
4645	// requests. However, any non-pointer, non-interface field appearing in
4646	// ForceSendFields will be sent to the server regardless of whether the
4647	// field is empty or not. This may be used to include empty fields in
4648	// Patch requests.
4649	ForceSendFields []string `json:"-"`
4650
4651	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
4652	// include in API requests with the JSON null value. By default, fields
4653	// with empty values are omitted from API requests. However, any field
4654	// with an empty value appearing in NullFields will be sent to the
4655	// server as null. It is an error if a field in this list has a
4656	// non-empty value. This may be used to include null fields in Patch
4657	// requests.
4658	NullFields []string `json:"-"`
4659}
4660
4661func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
4662	type NoMethod LiaOnDisplayToOrderSettings
4663	raw := NoMethod(*s)
4664	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4665}
4666
4667type LiaPosDataProvider struct {
4668	// PosDataProviderId: The ID of the POS data provider.
4669	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
4670
4671	// PosExternalAccountId: The account ID by which this merchant is known
4672	// to the POS data provider.
4673	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
4674
4675	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
4676	// to unconditionally include in API requests. By default, fields with
4677	// empty or default values are omitted from API requests. However, any
4678	// non-pointer, non-interface field appearing in ForceSendFields will be
4679	// sent to the server regardless of whether the field is empty or not.
4680	// This may be used to include empty fields in Patch requests.
4681	ForceSendFields []string `json:"-"`
4682
4683	// NullFields is a list of field names (e.g. "PosDataProviderId") to
4684	// include in API requests with the JSON null value. By default, fields
4685	// with empty values are omitted from API requests. However, any field
4686	// with an empty value appearing in NullFields will be sent to the
4687	// server as null. It is an error if a field in this list has a
4688	// non-empty value. This may be used to include null fields in Patch
4689	// requests.
4690	NullFields []string `json:"-"`
4691}
4692
4693func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
4694	type NoMethod LiaPosDataProvider
4695	raw := NoMethod(*s)
4696	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4697}
4698
4699// LiaSettings: Local Inventory ads (LIA) settings. All methods except
4700// listposdataproviders require the admin role.
4701type LiaSettings struct {
4702	// AccountId: The ID of the account to which these LIA settings belong.
4703	// Ignored upon update, always present in get request responses.
4704	AccountId uint64 `json:"accountId,omitempty,string"`
4705
4706	// CountrySettings: The LIA settings for each country.
4707	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
4708
4709	// Kind: Identifies what kind of resource this is. Value: the fixed
4710	// string "content#liaSettings"
4711	Kind string `json:"kind,omitempty"`
4712
4713	// ServerResponse contains the HTTP response code and headers from the
4714	// server.
4715	googleapi.ServerResponse `json:"-"`
4716
4717	// ForceSendFields is a list of field names (e.g. "AccountId") to
4718	// unconditionally include in API requests. By default, fields with
4719	// empty or default values are omitted from API requests. However, any
4720	// non-pointer, non-interface field appearing in ForceSendFields will be
4721	// sent to the server regardless of whether the field is empty or not.
4722	// This may be used to include empty fields in Patch requests.
4723	ForceSendFields []string `json:"-"`
4724
4725	// NullFields is a list of field names (e.g. "AccountId") to include in
4726	// API requests with the JSON null value. By default, fields with empty
4727	// values are omitted from API requests. However, any field with an
4728	// empty value appearing in NullFields will be sent to the server as
4729	// null. It is an error if a field in this list has a non-empty value.
4730	// This may be used to include null fields in Patch requests.
4731	NullFields []string `json:"-"`
4732}
4733
4734func (s *LiaSettings) MarshalJSON() ([]byte, error) {
4735	type NoMethod LiaSettings
4736	raw := NoMethod(*s)
4737	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4738}
4739
4740type LiasettingsCustomBatchRequest struct {
4741	// Entries: The request entries to be processed in the batch.
4742	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
4743
4744	// ForceSendFields is a list of field names (e.g. "Entries") to
4745	// unconditionally include in API requests. By default, fields with
4746	// empty or default values are omitted from API requests. However, any
4747	// non-pointer, non-interface field appearing in ForceSendFields will be
4748	// sent to the server regardless of whether the field is empty or not.
4749	// This may be used to include empty fields in Patch requests.
4750	ForceSendFields []string `json:"-"`
4751
4752	// NullFields is a list of field names (e.g. "Entries") to include in
4753	// API requests with the JSON null value. By default, fields with empty
4754	// values are omitted from API requests. However, any field with an
4755	// empty value appearing in NullFields will be sent to the server as
4756	// null. It is an error if a field in this list has a non-empty value.
4757	// This may be used to include null fields in Patch requests.
4758	NullFields []string `json:"-"`
4759}
4760
4761func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
4762	type NoMethod LiasettingsCustomBatchRequest
4763	raw := NoMethod(*s)
4764	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4765}
4766
4767type LiasettingsCustomBatchRequestEntry struct {
4768	// AccountId: The ID of the account for which to get/update account LIA
4769	// settings.
4770	AccountId uint64 `json:"accountId,omitempty,string"`
4771
4772	// BatchId: An entry ID, unique within the batch request.
4773	BatchId int64 `json:"batchId,omitempty"`
4774
4775	// ContactEmail: Inventory validation contact email. Required only for
4776	// SetInventoryValidationContact.
4777	ContactEmail string `json:"contactEmail,omitempty"`
4778
4779	// ContactName: Inventory validation contact name. Required only for
4780	// SetInventoryValidationContact.
4781	ContactName string `json:"contactName,omitempty"`
4782
4783	// Country: The country code. Required only for
4784	// RequestInventoryVerification.
4785	Country string `json:"country,omitempty"`
4786
4787	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
4788	GmbEmail string `json:"gmbEmail,omitempty"`
4789
4790	// LiaSettings: The account Lia settings to update. Only defined if the
4791	// method is `update`.
4792	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4793
4794	// MerchantId: The ID of the managing account.
4795	MerchantId uint64 `json:"merchantId,omitempty,string"`
4796
4797	// Method: The method of the batch entry. Acceptable values are: -
4798	// "get" - "getAccessibleGmbAccounts" - "requestGmbAccess" -
4799	// "requestInventoryVerification" -
4800	// "setInventoryVerificationContact" - "update"
4801	Method string `json:"method,omitempty"`
4802
4803	// PosDataProviderId: The ID of POS data provider. Required only for
4804	// SetPosProvider.
4805	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
4806
4807	// PosExternalAccountId: The account ID by which this merchant is known
4808	// to the POS provider.
4809	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
4810
4811	// ForceSendFields is a list of field names (e.g. "AccountId") to
4812	// unconditionally include in API requests. By default, fields with
4813	// empty or default values are omitted from API requests. However, any
4814	// non-pointer, non-interface field appearing in ForceSendFields will be
4815	// sent to the server regardless of whether the field is empty or not.
4816	// This may be used to include empty fields in Patch requests.
4817	ForceSendFields []string `json:"-"`
4818
4819	// NullFields is a list of field names (e.g. "AccountId") to include in
4820	// API requests with the JSON null value. By default, fields with empty
4821	// values are omitted from API requests. However, any field with an
4822	// empty value appearing in NullFields will be sent to the server as
4823	// null. It is an error if a field in this list has a non-empty value.
4824	// This may be used to include null fields in Patch requests.
4825	NullFields []string `json:"-"`
4826}
4827
4828func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
4829	type NoMethod LiasettingsCustomBatchRequestEntry
4830	raw := NoMethod(*s)
4831	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4832}
4833
4834type LiasettingsCustomBatchResponse struct {
4835	// Entries: The result of the execution of the batch requests.
4836	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
4837
4838	// Kind: Identifies what kind of resource this is. Value: the fixed
4839	// string "content#liasettingsCustomBatchResponse".
4840	Kind string `json:"kind,omitempty"`
4841
4842	// ServerResponse contains the HTTP response code and headers from the
4843	// server.
4844	googleapi.ServerResponse `json:"-"`
4845
4846	// ForceSendFields is a list of field names (e.g. "Entries") to
4847	// unconditionally include in API requests. By default, fields with
4848	// empty or default values are omitted from API requests. However, any
4849	// non-pointer, non-interface field appearing in ForceSendFields will be
4850	// sent to the server regardless of whether the field is empty or not.
4851	// This may be used to include empty fields in Patch requests.
4852	ForceSendFields []string `json:"-"`
4853
4854	// NullFields is a list of field names (e.g. "Entries") to include in
4855	// API requests with the JSON null value. By default, fields with empty
4856	// values are omitted from API requests. However, any field with an
4857	// empty value appearing in NullFields will be sent to the server as
4858	// null. It is an error if a field in this list has a non-empty value.
4859	// This may be used to include null fields in Patch requests.
4860	NullFields []string `json:"-"`
4861}
4862
4863func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
4864	type NoMethod LiasettingsCustomBatchResponse
4865	raw := NoMethod(*s)
4866	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4867}
4868
4869type LiasettingsCustomBatchResponseEntry struct {
4870	// BatchId: The ID of the request entry to which this entry responds.
4871	BatchId int64 `json:"batchId,omitempty"`
4872
4873	// Errors: A list of errors defined if, and only if, the request failed.
4874	Errors *Errors `json:"errors,omitempty"`
4875
4876	// GmbAccounts: The list of accessible GMB accounts.
4877	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
4878
4879	// Kind: Identifies what kind of resource this is. Value: the fixed
4880	// string "content#liasettingsCustomBatchResponseEntry"
4881	Kind string `json:"kind,omitempty"`
4882
4883	// LiaSettings: The retrieved or updated Lia settings.
4884	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4885
4886	// PosDataProviders: The list of POS data providers.
4887	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4888
4889	// ForceSendFields is a list of field names (e.g. "BatchId") to
4890	// unconditionally include in API requests. By default, fields with
4891	// empty or default values are omitted from API requests. However, any
4892	// non-pointer, non-interface field appearing in ForceSendFields will be
4893	// sent to the server regardless of whether the field is empty or not.
4894	// This may be used to include empty fields in Patch requests.
4895	ForceSendFields []string `json:"-"`
4896
4897	// NullFields is a list of field names (e.g. "BatchId") to include in
4898	// API requests with the JSON null value. By default, fields with empty
4899	// values are omitted from API requests. However, any field with an
4900	// empty value appearing in NullFields will be sent to the server as
4901	// null. It is an error if a field in this list has a non-empty value.
4902	// This may be used to include null fields in Patch requests.
4903	NullFields []string `json:"-"`
4904}
4905
4906func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
4907	type NoMethod LiasettingsCustomBatchResponseEntry
4908	raw := NoMethod(*s)
4909	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4910}
4911
4912type LiasettingsGetAccessibleGmbAccountsResponse struct {
4913	// AccountId: The ID of the Merchant Center account.
4914	AccountId uint64 `json:"accountId,omitempty,string"`
4915
4916	// GmbAccounts: A list of GMB accounts which are available to the
4917	// merchant.
4918	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
4919
4920	// Kind: Identifies what kind of resource this is. Value: the fixed
4921	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
4922	Kind string `json:"kind,omitempty"`
4923
4924	// ServerResponse contains the HTTP response code and headers from the
4925	// server.
4926	googleapi.ServerResponse `json:"-"`
4927
4928	// ForceSendFields is a list of field names (e.g. "AccountId") to
4929	// unconditionally include in API requests. By default, fields with
4930	// empty or default values are omitted from API requests. However, any
4931	// non-pointer, non-interface field appearing in ForceSendFields will be
4932	// sent to the server regardless of whether the field is empty or not.
4933	// This may be used to include empty fields in Patch requests.
4934	ForceSendFields []string `json:"-"`
4935
4936	// NullFields is a list of field names (e.g. "AccountId") to include in
4937	// API requests with the JSON null value. By default, fields with empty
4938	// values are omitted from API requests. However, any field with an
4939	// empty value appearing in NullFields will be sent to the server as
4940	// null. It is an error if a field in this list has a non-empty value.
4941	// This may be used to include null fields in Patch requests.
4942	NullFields []string `json:"-"`
4943}
4944
4945func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
4946	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
4947	raw := NoMethod(*s)
4948	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4949}
4950
4951type LiasettingsListPosDataProvidersResponse struct {
4952	// Kind: Identifies what kind of resource this is. Value: the fixed
4953	// string "content#liasettingsListPosDataProvidersResponse".
4954	Kind string `json:"kind,omitempty"`
4955
4956	// PosDataProviders: The list of POS data providers for each eligible
4957	// country
4958	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4959
4960	// ServerResponse contains the HTTP response code and headers from the
4961	// server.
4962	googleapi.ServerResponse `json:"-"`
4963
4964	// ForceSendFields is a list of field names (e.g. "Kind") to
4965	// unconditionally include in API requests. By default, fields with
4966	// empty or default values are omitted from API requests. However, any
4967	// non-pointer, non-interface field appearing in ForceSendFields will be
4968	// sent to the server regardless of whether the field is empty or not.
4969	// This may be used to include empty fields in Patch requests.
4970	ForceSendFields []string `json:"-"`
4971
4972	// NullFields is a list of field names (e.g. "Kind") to include in API
4973	// requests with the JSON null value. By default, fields with empty
4974	// values are omitted from API requests. However, any field with an
4975	// empty value appearing in NullFields will be sent to the server as
4976	// null. It is an error if a field in this list has a non-empty value.
4977	// This may be used to include null fields in Patch requests.
4978	NullFields []string `json:"-"`
4979}
4980
4981func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
4982	type NoMethod LiasettingsListPosDataProvidersResponse
4983	raw := NoMethod(*s)
4984	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4985}
4986
4987type LiasettingsListResponse struct {
4988	// Kind: Identifies what kind of resource this is. Value: the fixed
4989	// string "content#liasettingsListResponse".
4990	Kind string `json:"kind,omitempty"`
4991
4992	// NextPageToken: The token for the retrieval of the next page of LIA
4993	// settings.
4994	NextPageToken string `json:"nextPageToken,omitempty"`
4995
4996	Resources []*LiaSettings `json:"resources,omitempty"`
4997
4998	// ServerResponse contains the HTTP response code and headers from the
4999	// server.
5000	googleapi.ServerResponse `json:"-"`
5001
5002	// ForceSendFields is a list of field names (e.g. "Kind") to
5003	// unconditionally include in API requests. By default, fields with
5004	// empty or default values are omitted from API requests. However, any
5005	// non-pointer, non-interface field appearing in ForceSendFields will be
5006	// sent to the server regardless of whether the field is empty or not.
5007	// This may be used to include empty fields in Patch requests.
5008	ForceSendFields []string `json:"-"`
5009
5010	// NullFields is a list of field names (e.g. "Kind") to include in API
5011	// requests with the JSON null value. By default, fields with empty
5012	// values are omitted from API requests. However, any field with an
5013	// empty value appearing in NullFields will be sent to the server as
5014	// null. It is an error if a field in this list has a non-empty value.
5015	// This may be used to include null fields in Patch requests.
5016	NullFields []string `json:"-"`
5017}
5018
5019func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
5020	type NoMethod LiasettingsListResponse
5021	raw := NoMethod(*s)
5022	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5023}
5024
5025type LiasettingsRequestGmbAccessResponse struct {
5026	// Kind: Identifies what kind of resource this is. Value: the fixed
5027	// string "content#liasettingsRequestGmbAccessResponse".
5028	Kind string `json:"kind,omitempty"`
5029
5030	// ServerResponse contains the HTTP response code and headers from the
5031	// server.
5032	googleapi.ServerResponse `json:"-"`
5033
5034	// ForceSendFields is a list of field names (e.g. "Kind") to
5035	// unconditionally include in API requests. By default, fields with
5036	// empty or default values are omitted from API requests. However, any
5037	// non-pointer, non-interface field appearing in ForceSendFields will be
5038	// sent to the server regardless of whether the field is empty or not.
5039	// This may be used to include empty fields in Patch requests.
5040	ForceSendFields []string `json:"-"`
5041
5042	// NullFields is a list of field names (e.g. "Kind") to include in API
5043	// requests with the JSON null value. By default, fields with empty
5044	// values are omitted from API requests. However, any field with an
5045	// empty value appearing in NullFields will be sent to the server as
5046	// null. It is an error if a field in this list has a non-empty value.
5047	// This may be used to include null fields in Patch requests.
5048	NullFields []string `json:"-"`
5049}
5050
5051func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
5052	type NoMethod LiasettingsRequestGmbAccessResponse
5053	raw := NoMethod(*s)
5054	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5055}
5056
5057type LiasettingsRequestInventoryVerificationResponse struct {
5058	// Kind: Identifies what kind of resource this is. Value: the fixed
5059	// string "content#liasettingsRequestInventoryVerificationResponse".
5060	Kind string `json:"kind,omitempty"`
5061
5062	// ServerResponse contains the HTTP response code and headers from the
5063	// server.
5064	googleapi.ServerResponse `json:"-"`
5065
5066	// ForceSendFields is a list of field names (e.g. "Kind") to
5067	// unconditionally include in API requests. By default, fields with
5068	// empty or default values are omitted from API requests. However, any
5069	// non-pointer, non-interface field appearing in ForceSendFields will be
5070	// sent to the server regardless of whether the field is empty or not.
5071	// This may be used to include empty fields in Patch requests.
5072	ForceSendFields []string `json:"-"`
5073
5074	// NullFields is a list of field names (e.g. "Kind") to include in API
5075	// requests with the JSON null value. By default, fields with empty
5076	// values are omitted from API requests. However, any field with an
5077	// empty value appearing in NullFields will be sent to the server as
5078	// null. It is an error if a field in this list has a non-empty value.
5079	// This may be used to include null fields in Patch requests.
5080	NullFields []string `json:"-"`
5081}
5082
5083func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
5084	type NoMethod LiasettingsRequestInventoryVerificationResponse
5085	raw := NoMethod(*s)
5086	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5087}
5088
5089type LiasettingsSetInventoryVerificationContactResponse struct {
5090	// Kind: Identifies what kind of resource this is. Value: the fixed
5091	// string
5092	// "content#liasettingsSetInventoryVerificationContactResponse".
5093	Kind string `json:"kind,omitempty"`
5094
5095	// ServerResponse contains the HTTP response code and headers from the
5096	// server.
5097	googleapi.ServerResponse `json:"-"`
5098
5099	// ForceSendFields is a list of field names (e.g. "Kind") to
5100	// unconditionally include in API requests. By default, fields with
5101	// empty or default values are omitted from API requests. However, any
5102	// non-pointer, non-interface field appearing in ForceSendFields will be
5103	// sent to the server regardless of whether the field is empty or not.
5104	// This may be used to include empty fields in Patch requests.
5105	ForceSendFields []string `json:"-"`
5106
5107	// NullFields is a list of field names (e.g. "Kind") to include in API
5108	// requests with the JSON null value. By default, fields with empty
5109	// values are omitted from API requests. However, any field with an
5110	// empty value appearing in NullFields will be sent to the server as
5111	// null. It is an error if a field in this list has a non-empty value.
5112	// This may be used to include null fields in Patch requests.
5113	NullFields []string `json:"-"`
5114}
5115
5116func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
5117	type NoMethod LiasettingsSetInventoryVerificationContactResponse
5118	raw := NoMethod(*s)
5119	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5120}
5121
5122type LiasettingsSetPosDataProviderResponse struct {
5123	// Kind: Identifies what kind of resource this is. Value: the fixed
5124	// string "content#liasettingsSetPosDataProviderResponse".
5125	Kind string `json:"kind,omitempty"`
5126
5127	// ServerResponse contains the HTTP response code and headers from the
5128	// server.
5129	googleapi.ServerResponse `json:"-"`
5130
5131	// ForceSendFields is a list of field names (e.g. "Kind") to
5132	// unconditionally include in API requests. By default, fields with
5133	// empty or default values are omitted from API requests. However, any
5134	// non-pointer, non-interface field appearing in ForceSendFields will be
5135	// sent to the server regardless of whether the field is empty or not.
5136	// This may be used to include empty fields in Patch requests.
5137	ForceSendFields []string `json:"-"`
5138
5139	// NullFields is a list of field names (e.g. "Kind") to include in API
5140	// requests with the JSON null value. By default, fields with empty
5141	// values are omitted from API requests. However, any field with an
5142	// empty value appearing in NullFields will be sent to the server as
5143	// null. It is an error if a field in this list has a non-empty value.
5144	// This may be used to include null fields in Patch requests.
5145	NullFields []string `json:"-"`
5146}
5147
5148func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
5149	type NoMethod LiasettingsSetPosDataProviderResponse
5150	raw := NoMethod(*s)
5151	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5152}
5153
5154type LinkService struct {
5155	// Service: Service provided to or by the linked account. Acceptable
5156	// values are: - "shoppingActionsOrderManagement" -
5157	// "shoppingActionsProductManagement" -
5158	// "shoppingAdsProductManagement" - "paymentProcessing"
5159	Service string `json:"service,omitempty"`
5160
5161	// Status: Status of the link Acceptable values are: - "active" -
5162	// "inactive" - "pending"
5163	Status string `json:"status,omitempty"`
5164
5165	// ForceSendFields is a list of field names (e.g. "Service") to
5166	// unconditionally include in API requests. By default, fields with
5167	// empty or default values are omitted from API requests. However, any
5168	// non-pointer, non-interface field appearing in ForceSendFields will be
5169	// sent to the server regardless of whether the field is empty or not.
5170	// This may be used to include empty fields in Patch requests.
5171	ForceSendFields []string `json:"-"`
5172
5173	// NullFields is a list of field names (e.g. "Service") to include in
5174	// API requests with the JSON null value. By default, fields with empty
5175	// values are omitted from API requests. However, any field with an
5176	// empty value appearing in NullFields will be sent to the server as
5177	// null. It is an error if a field in this list has a non-empty value.
5178	// This may be used to include null fields in Patch requests.
5179	NullFields []string `json:"-"`
5180}
5181
5182func (s *LinkService) MarshalJSON() ([]byte, error) {
5183	type NoMethod LinkService
5184	raw := NoMethod(*s)
5185	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5186}
5187
5188type LinkedAccount struct {
5189	// LinkedAccountId: The ID of the linked account.
5190	LinkedAccountId string `json:"linkedAccountId,omitempty"`
5191
5192	// Services: List of provided services.
5193	Services []*LinkService `json:"services,omitempty"`
5194
5195	// ForceSendFields is a list of field names (e.g. "LinkedAccountId") to
5196	// unconditionally include in API requests. By default, fields with
5197	// empty or default values are omitted from API requests. However, any
5198	// non-pointer, non-interface field appearing in ForceSendFields will be
5199	// sent to the server regardless of whether the field is empty or not.
5200	// This may be used to include empty fields in Patch requests.
5201	ForceSendFields []string `json:"-"`
5202
5203	// NullFields is a list of field names (e.g. "LinkedAccountId") to
5204	// include in API requests with the JSON null value. By default, fields
5205	// with empty values are omitted from API requests. However, any field
5206	// with an empty value appearing in NullFields will be sent to the
5207	// server as null. It is an error if a field in this list has a
5208	// non-empty value. This may be used to include null fields in Patch
5209	// requests.
5210	NullFields []string `json:"-"`
5211}
5212
5213func (s *LinkedAccount) MarshalJSON() ([]byte, error) {
5214	type NoMethod LinkedAccount
5215	raw := NoMethod(*s)
5216	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5217}
5218
5219// ListAccountLabelsResponse: Response message for the
5220// `ListAccountLabels` method.
5221type ListAccountLabelsResponse struct {
5222	// AccountLabels: The labels from the specified account.
5223	AccountLabels []*AccountLabel `json:"accountLabels,omitempty"`
5224
5225	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5226	// the next page. If this field is omitted, there are no subsequent
5227	// pages.
5228	NextPageToken string `json:"nextPageToken,omitempty"`
5229
5230	// ServerResponse contains the HTTP response code and headers from the
5231	// server.
5232	googleapi.ServerResponse `json:"-"`
5233
5234	// ForceSendFields is a list of field names (e.g. "AccountLabels") to
5235	// unconditionally include in API requests. By default, fields with
5236	// empty or default values are omitted from API requests. However, any
5237	// non-pointer, non-interface field appearing in ForceSendFields will be
5238	// sent to the server regardless of whether the field is empty or not.
5239	// This may be used to include empty fields in Patch requests.
5240	ForceSendFields []string `json:"-"`
5241
5242	// NullFields is a list of field names (e.g. "AccountLabels") to include
5243	// in API requests with the JSON null value. By default, fields with
5244	// empty values are omitted from API requests. However, any field with
5245	// an empty value appearing in NullFields will be sent to the server as
5246	// null. It is an error if a field in this list has a non-empty value.
5247	// This may be used to include null fields in Patch requests.
5248	NullFields []string `json:"-"`
5249}
5250
5251func (s *ListAccountLabelsResponse) MarshalJSON() ([]byte, error) {
5252	type NoMethod ListAccountLabelsResponse
5253	raw := NoMethod(*s)
5254	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5255}
5256
5257// ListAccountReturnCarrierResponse: Response for listing account return
5258// carriers.
5259type ListAccountReturnCarrierResponse struct {
5260	// AccountReturnCarriers: List of all available account return carriers
5261	// for the merchant.
5262	AccountReturnCarriers []*AccountReturnCarrier `json:"accountReturnCarriers,omitempty"`
5263
5264	// ServerResponse contains the HTTP response code and headers from the
5265	// server.
5266	googleapi.ServerResponse `json:"-"`
5267
5268	// ForceSendFields is a list of field names (e.g.
5269	// "AccountReturnCarriers") to unconditionally include in API requests.
5270	// By default, fields with empty or default values are omitted from API
5271	// requests. However, any non-pointer, non-interface field appearing in
5272	// ForceSendFields will be sent to the server regardless of whether the
5273	// field is empty or not. This may be used to include empty fields in
5274	// Patch requests.
5275	ForceSendFields []string `json:"-"`
5276
5277	// NullFields is a list of field names (e.g. "AccountReturnCarriers") to
5278	// include in API requests with the JSON null value. By default, fields
5279	// with empty values are omitted from API requests. However, any field
5280	// with an empty value appearing in NullFields will be sent to the
5281	// server as null. It is an error if a field in this list has a
5282	// non-empty value. This may be used to include null fields in Patch
5283	// requests.
5284	NullFields []string `json:"-"`
5285}
5286
5287func (s *ListAccountReturnCarrierResponse) MarshalJSON() ([]byte, error) {
5288	type NoMethod ListAccountReturnCarrierResponse
5289	raw := NoMethod(*s)
5290	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5291}
5292
5293// ListCollectionStatusesResponse: Response message for the
5294// ListCollectionStatuses method.
5295type ListCollectionStatusesResponse struct {
5296	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5297	// the next page. If this field is omitted, there are no subsequent
5298	// pages.
5299	NextPageToken string `json:"nextPageToken,omitempty"`
5300
5301	// Resources: The collectionstatuses listed.
5302	Resources []*CollectionStatus `json:"resources,omitempty"`
5303
5304	// ServerResponse contains the HTTP response code and headers from the
5305	// server.
5306	googleapi.ServerResponse `json:"-"`
5307
5308	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5309	// unconditionally include in API requests. By default, fields with
5310	// empty or default values are omitted from API requests. However, any
5311	// non-pointer, non-interface field appearing in ForceSendFields will be
5312	// sent to the server regardless of whether the field is empty or not.
5313	// This may be used to include empty fields in Patch requests.
5314	ForceSendFields []string `json:"-"`
5315
5316	// NullFields is a list of field names (e.g. "NextPageToken") to include
5317	// in API requests with the JSON null value. By default, fields with
5318	// empty values are omitted from API requests. However, any field with
5319	// an empty value appearing in NullFields will be sent to the server as
5320	// null. It is an error if a field in this list has a non-empty value.
5321	// This may be used to include null fields in Patch requests.
5322	NullFields []string `json:"-"`
5323}
5324
5325func (s *ListCollectionStatusesResponse) MarshalJSON() ([]byte, error) {
5326	type NoMethod ListCollectionStatusesResponse
5327	raw := NoMethod(*s)
5328	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5329}
5330
5331// ListCollectionsResponse: Response message for the ListCollections
5332// method.
5333type ListCollectionsResponse struct {
5334	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5335	// the next page. If this field is omitted, there are no subsequent
5336	// pages.
5337	NextPageToken string `json:"nextPageToken,omitempty"`
5338
5339	// Resources: The collections listed.
5340	Resources []*Collection `json:"resources,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. "NextPageToken") to
5347	// unconditionally include in API requests. By default, fields with
5348	// empty or default values are omitted from API requests. However, any
5349	// non-pointer, non-interface field appearing in ForceSendFields will be
5350	// sent to the server regardless of whether the field is empty or not.
5351	// This may be used to include empty fields in Patch requests.
5352	ForceSendFields []string `json:"-"`
5353
5354	// NullFields is a list of field names (e.g. "NextPageToken") to include
5355	// in API requests with the JSON null value. By default, fields with
5356	// empty values are omitted from API requests. However, any field with
5357	// an empty value appearing in NullFields will be sent to the server as
5358	// null. It is an error if a field in this list has a non-empty value.
5359	// This may be used to include null fields in Patch requests.
5360	NullFields []string `json:"-"`
5361}
5362
5363func (s *ListCollectionsResponse) MarshalJSON() ([]byte, error) {
5364	type NoMethod ListCollectionsResponse
5365	raw := NoMethod(*s)
5366	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5367}
5368
5369// ListCssesResponse: The response message for the `ListCsses` method
5370type ListCssesResponse struct {
5371	// Csses: The CSS domains affiliated with the specified CSS group.
5372	Csses []*Css `json:"csses,omitempty"`
5373
5374	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5375	// the next page. If this field is omitted, there are no subsequent
5376	// pages.
5377	NextPageToken string `json:"nextPageToken,omitempty"`
5378
5379	// ServerResponse contains the HTTP response code and headers from the
5380	// server.
5381	googleapi.ServerResponse `json:"-"`
5382
5383	// ForceSendFields is a list of field names (e.g. "Csses") to
5384	// unconditionally include in API requests. By default, fields with
5385	// empty or default values are omitted from API requests. However, any
5386	// non-pointer, non-interface field appearing in ForceSendFields will be
5387	// sent to the server regardless of whether the field is empty or not.
5388	// This may be used to include empty fields in Patch requests.
5389	ForceSendFields []string `json:"-"`
5390
5391	// NullFields is a list of field names (e.g. "Csses") to include in API
5392	// requests with the JSON null value. By default, fields with empty
5393	// values are omitted from API requests. However, any field with an
5394	// empty value appearing in NullFields will be sent to the server as
5395	// null. It is an error if a field in this list has a non-empty value.
5396	// This may be used to include null fields in Patch requests.
5397	NullFields []string `json:"-"`
5398}
5399
5400func (s *ListCssesResponse) MarshalJSON() ([]byte, error) {
5401	type NoMethod ListCssesResponse
5402	raw := NoMethod(*s)
5403	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5404}
5405
5406// ListRegionsResponse: Response message for the `ListRegions` method.
5407type ListRegionsResponse struct {
5408	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5409	// the next page. If this field is omitted, there are no subsequent
5410	// pages.
5411	NextPageToken string `json:"nextPageToken,omitempty"`
5412
5413	// Regions: The regions from the specified merchant.
5414	Regions []*Region `json:"regions,omitempty"`
5415
5416	// ServerResponse contains the HTTP response code and headers from the
5417	// server.
5418	googleapi.ServerResponse `json:"-"`
5419
5420	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5421	// unconditionally include in API requests. By default, fields with
5422	// empty or default values are omitted from API requests. However, any
5423	// non-pointer, non-interface field appearing in ForceSendFields will be
5424	// sent to the server regardless of whether the field is empty or not.
5425	// This may be used to include empty fields in Patch requests.
5426	ForceSendFields []string `json:"-"`
5427
5428	// NullFields is a list of field names (e.g. "NextPageToken") to include
5429	// in API requests with the JSON null value. By default, fields with
5430	// empty values are omitted from API requests. However, any field with
5431	// an empty value appearing in NullFields will be sent to the server as
5432	// null. It is an error if a field in this list has a non-empty value.
5433	// This may be used to include null fields in Patch requests.
5434	NullFields []string `json:"-"`
5435}
5436
5437func (s *ListRegionsResponse) MarshalJSON() ([]byte, error) {
5438	type NoMethod ListRegionsResponse
5439	raw := NoMethod(*s)
5440	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5441}
5442
5443// ListRepricingProductReportsResponse: Response message for the
5444// ListRepricingProductReports method.
5445type ListRepricingProductReportsResponse struct {
5446	// NextPageToken: A token for retrieving the next page. Its absence
5447	// means there is no subsequent page.
5448	NextPageToken string `json:"nextPageToken,omitempty"`
5449
5450	// RepricingProductReports: Periodic reports for the given Repricing
5451	// product.
5452	RepricingProductReports []*RepricingProductReport `json:"repricingProductReports,omitempty"`
5453
5454	// ServerResponse contains the HTTP response code and headers from the
5455	// server.
5456	googleapi.ServerResponse `json:"-"`
5457
5458	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5459	// unconditionally include in API requests. By default, fields with
5460	// empty or default values are omitted from API requests. However, any
5461	// non-pointer, non-interface field appearing in ForceSendFields will be
5462	// sent to the server regardless of whether the field is empty or not.
5463	// This may be used to include empty fields in Patch requests.
5464	ForceSendFields []string `json:"-"`
5465
5466	// NullFields is a list of field names (e.g. "NextPageToken") to include
5467	// in API requests with the JSON null value. By default, fields with
5468	// empty values are omitted from API requests. However, any field with
5469	// an empty value appearing in NullFields will be sent to the server as
5470	// null. It is an error if a field in this list has a non-empty value.
5471	// This may be used to include null fields in Patch requests.
5472	NullFields []string `json:"-"`
5473}
5474
5475func (s *ListRepricingProductReportsResponse) MarshalJSON() ([]byte, error) {
5476	type NoMethod ListRepricingProductReportsResponse
5477	raw := NoMethod(*s)
5478	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5479}
5480
5481// ListRepricingRuleReportsResponse: Response message for the
5482// ListRepricingRuleReports method.
5483type ListRepricingRuleReportsResponse struct {
5484	// NextPageToken: A token for retrieving the next page. Its absence
5485	// means there is no subsequent page.
5486	NextPageToken string `json:"nextPageToken,omitempty"`
5487
5488	// RepricingRuleReports: Daily reports for the given Repricing rule.
5489	RepricingRuleReports []*RepricingRuleReport `json:"repricingRuleReports,omitempty"`
5490
5491	// ServerResponse contains the HTTP response code and headers from the
5492	// server.
5493	googleapi.ServerResponse `json:"-"`
5494
5495	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5496	// unconditionally include in API requests. By default, fields with
5497	// empty or default values are omitted from API requests. However, any
5498	// non-pointer, non-interface field appearing in ForceSendFields will be
5499	// sent to the server regardless of whether the field is empty or not.
5500	// This may be used to include empty fields in Patch requests.
5501	ForceSendFields []string `json:"-"`
5502
5503	// NullFields is a list of field names (e.g. "NextPageToken") to include
5504	// in API requests with the JSON null value. By default, fields with
5505	// empty values are omitted from API requests. However, any field with
5506	// an empty value appearing in NullFields will be sent to the server as
5507	// null. It is an error if a field in this list has a non-empty value.
5508	// This may be used to include null fields in Patch requests.
5509	NullFields []string `json:"-"`
5510}
5511
5512func (s *ListRepricingRuleReportsResponse) MarshalJSON() ([]byte, error) {
5513	type NoMethod ListRepricingRuleReportsResponse
5514	raw := NoMethod(*s)
5515	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5516}
5517
5518// ListRepricingRulesResponse: Response message for the
5519// `ListRepricingRules` method.
5520type ListRepricingRulesResponse struct {
5521	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5522	// the next page. If this field is omitted, there are no subsequent
5523	// pages.
5524	NextPageToken string `json:"nextPageToken,omitempty"`
5525
5526	// RepricingRules: The rules from the specified merchant.
5527	RepricingRules []*RepricingRule `json:"repricingRules,omitempty"`
5528
5529	// ServerResponse contains the HTTP response code and headers from the
5530	// server.
5531	googleapi.ServerResponse `json:"-"`
5532
5533	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5534	// unconditionally include in API requests. By default, fields with
5535	// empty or default values are omitted from API requests. However, any
5536	// non-pointer, non-interface field appearing in ForceSendFields will be
5537	// sent to the server regardless of whether the field is empty or not.
5538	// This may be used to include empty fields in Patch requests.
5539	ForceSendFields []string `json:"-"`
5540
5541	// NullFields is a list of field names (e.g. "NextPageToken") to include
5542	// in API requests with the JSON null value. By default, fields with
5543	// empty values are omitted from API requests. However, any field with
5544	// an empty value appearing in NullFields will be sent to the server as
5545	// null. It is an error if a field in this list has a non-empty value.
5546	// This may be used to include null fields in Patch requests.
5547	NullFields []string `json:"-"`
5548}
5549
5550func (s *ListRepricingRulesResponse) MarshalJSON() ([]byte, error) {
5551	type NoMethod ListRepricingRulesResponse
5552	raw := NoMethod(*s)
5553	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5554}
5555
5556// ListReturnPolicyOnlineResponse: Response message for the
5557// `ListReturnPolicyOnline` method.
5558type ListReturnPolicyOnlineResponse struct {
5559	// ReturnPolicies: The retrieved return policies.
5560	ReturnPolicies []*ReturnPolicyOnline `json:"returnPolicies,omitempty"`
5561
5562	// ServerResponse contains the HTTP response code and headers from the
5563	// server.
5564	googleapi.ServerResponse `json:"-"`
5565
5566	// ForceSendFields is a list of field names (e.g. "ReturnPolicies") to
5567	// unconditionally include in API requests. By default, fields with
5568	// empty or default values are omitted from API requests. However, any
5569	// non-pointer, non-interface field appearing in ForceSendFields will be
5570	// sent to the server regardless of whether the field is empty or not.
5571	// This may be used to include empty fields in Patch requests.
5572	ForceSendFields []string `json:"-"`
5573
5574	// NullFields is a list of field names (e.g. "ReturnPolicies") to
5575	// include in API requests with the JSON null value. By default, fields
5576	// with empty values are omitted from API requests. However, any field
5577	// with an empty value appearing in NullFields will be sent to the
5578	// server as null. It is an error if a field in this list has a
5579	// non-empty value. This may be used to include null fields in Patch
5580	// requests.
5581	NullFields []string `json:"-"`
5582}
5583
5584func (s *ListReturnPolicyOnlineResponse) MarshalJSON() ([]byte, error) {
5585	type NoMethod ListReturnPolicyOnlineResponse
5586	raw := NoMethod(*s)
5587	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5588}
5589
5590// LocalInventory: Local inventory resource. For accepted attribute
5591// values, see the local product inventory feed specification.
5592type LocalInventory struct {
5593	// Availability: Availability of the product. For accepted attribute
5594	// values, see the local product inventory feed specification.
5595	Availability string `json:"availability,omitempty"`
5596
5597	// InstoreProductLocation: In-store product location.
5598	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
5599
5600	// Kind: Identifies what kind of resource this is. Value: the fixed
5601	// string "content#localInventory"
5602	Kind string `json:"kind,omitempty"`
5603
5604	// PickupMethod: Supported pickup method for this offer. Unless the
5605	// value is "not supported", this field must be submitted together with
5606	// `pickupSla`. For accepted attribute values, see the local product
5607	// inventory feed // specification.
5608	PickupMethod string `json:"pickupMethod,omitempty"`
5609
5610	// PickupSla: Expected date that an order will be ready for pickup
5611	// relative to the order date. Must be submitted together with
5612	// `pickupMethod`. For accepted attribute values, see the local product
5613	// inventory feed specification.
5614	PickupSla string `json:"pickupSla,omitempty"`
5615
5616	// Price: Price of the product.
5617	Price *Price `json:"price,omitempty"`
5618
5619	// Quantity: Quantity of the product. Must be nonnegative.
5620	Quantity int64 `json:"quantity,omitempty"`
5621
5622	// SalePrice: Sale price of the product. Mandatory if
5623	// `sale_price_effective_date` is defined.
5624	SalePrice *Price `json:"salePrice,omitempty"`
5625
5626	// SalePriceEffectiveDate: A date range represented by a pair of ISO
5627	// 8601 dates separated by a space, comma, or slash. Both dates may be
5628	// specified as 'null' if undecided.
5629	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
5630
5631	// StoreCode: Required. Store code of this local inventory resource.
5632	StoreCode string `json:"storeCode,omitempty"`
5633
5634	// ServerResponse contains the HTTP response code and headers from the
5635	// server.
5636	googleapi.ServerResponse `json:"-"`
5637
5638	// ForceSendFields is a list of field names (e.g. "Availability") to
5639	// unconditionally include in API requests. By default, fields with
5640	// empty or default values are omitted from API requests. However, any
5641	// non-pointer, non-interface field appearing in ForceSendFields will be
5642	// sent to the server regardless of whether the field is empty or not.
5643	// This may be used to include empty fields in Patch requests.
5644	ForceSendFields []string `json:"-"`
5645
5646	// NullFields is a list of field names (e.g. "Availability") to include
5647	// in API requests with the JSON null value. By default, fields with
5648	// empty values are omitted from API requests. However, any field with
5649	// an empty value appearing in NullFields will be sent to the server as
5650	// null. It is an error if a field in this list has a non-empty value.
5651	// This may be used to include null fields in Patch requests.
5652	NullFields []string `json:"-"`
5653}
5654
5655func (s *LocalInventory) MarshalJSON() ([]byte, error) {
5656	type NoMethod LocalInventory
5657	raw := NoMethod(*s)
5658	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5659}
5660
5661type LocalinventoryCustomBatchRequest struct {
5662	// Entries: The request entries to be processed in the batch.
5663	Entries []*LocalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
5664
5665	// ForceSendFields is a list of field names (e.g. "Entries") to
5666	// unconditionally include in API requests. By default, fields with
5667	// empty or default values are omitted from API requests. However, any
5668	// non-pointer, non-interface field appearing in ForceSendFields will be
5669	// sent to the server regardless of whether the field is empty or not.
5670	// This may be used to include empty fields in Patch requests.
5671	ForceSendFields []string `json:"-"`
5672
5673	// NullFields is a list of field names (e.g. "Entries") to include in
5674	// API requests with the JSON null value. By default, fields with empty
5675	// values are omitted from API requests. However, any field with an
5676	// empty value appearing in NullFields will be sent to the server as
5677	// null. It is an error if a field in this list has a non-empty value.
5678	// This may be used to include null fields in Patch requests.
5679	NullFields []string `json:"-"`
5680}
5681
5682func (s *LocalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
5683	type NoMethod LocalinventoryCustomBatchRequest
5684	raw := NoMethod(*s)
5685	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5686}
5687
5688// LocalinventoryCustomBatchRequestEntry: Batch entry encoding a single
5689// local inventory update request.
5690type LocalinventoryCustomBatchRequestEntry struct {
5691	// BatchId: An entry ID, unique within the batch request.
5692	BatchId int64 `json:"batchId,omitempty"`
5693
5694	// LocalInventory: Local inventory of the product.
5695	LocalInventory *LocalInventory `json:"localInventory,omitempty"`
5696
5697	// MerchantId: The ID of the managing account.
5698	MerchantId uint64 `json:"merchantId,omitempty,string"`
5699
5700	// Method: Method of the batch request entry. Acceptable values are: -
5701	// "insert"
5702	Method string `json:"method,omitempty"`
5703
5704	// ProductId: The ID of the product for which to update local inventory.
5705	ProductId string `json:"productId,omitempty"`
5706
5707	// ForceSendFields is a list of field names (e.g. "BatchId") to
5708	// unconditionally include in API requests. By default, fields with
5709	// empty or default values are omitted from API requests. However, any
5710	// non-pointer, non-interface field appearing in ForceSendFields will be
5711	// sent to the server regardless of whether the field is empty or not.
5712	// This may be used to include empty fields in Patch requests.
5713	ForceSendFields []string `json:"-"`
5714
5715	// NullFields is a list of field names (e.g. "BatchId") to include in
5716	// API requests with the JSON null value. By default, fields with empty
5717	// values are omitted from API requests. However, any field with an
5718	// empty value appearing in NullFields will be sent to the server as
5719	// null. It is an error if a field in this list has a non-empty value.
5720	// This may be used to include null fields in Patch requests.
5721	NullFields []string `json:"-"`
5722}
5723
5724func (s *LocalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
5725	type NoMethod LocalinventoryCustomBatchRequestEntry
5726	raw := NoMethod(*s)
5727	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5728}
5729
5730type LocalinventoryCustomBatchResponse struct {
5731	// Entries: The result of the execution of the batch requests.
5732	Entries []*LocalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
5733
5734	// Kind: Identifies what kind of resource this is. Value: the fixed
5735	// string "content#localinventoryCustomBatchResponse".
5736	Kind string `json:"kind,omitempty"`
5737
5738	// ServerResponse contains the HTTP response code and headers from the
5739	// server.
5740	googleapi.ServerResponse `json:"-"`
5741
5742	// ForceSendFields is a list of field names (e.g. "Entries") to
5743	// unconditionally include in API requests. By default, fields with
5744	// empty or default values are omitted from API requests. However, any
5745	// non-pointer, non-interface field appearing in ForceSendFields will be
5746	// sent to the server regardless of whether the field is empty or not.
5747	// This may be used to include empty fields in Patch requests.
5748	ForceSendFields []string `json:"-"`
5749
5750	// NullFields is a list of field names (e.g. "Entries") to include in
5751	// API requests with the JSON null value. By default, fields with empty
5752	// values are omitted from API requests. However, any field with an
5753	// empty value appearing in NullFields will be sent to the server as
5754	// null. It is an error if a field in this list has a non-empty value.
5755	// This may be used to include null fields in Patch requests.
5756	NullFields []string `json:"-"`
5757}
5758
5759func (s *LocalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
5760	type NoMethod LocalinventoryCustomBatchResponse
5761	raw := NoMethod(*s)
5762	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5763}
5764
5765// LocalinventoryCustomBatchResponseEntry: Batch entry encoding a single
5766// local inventory update response.
5767type LocalinventoryCustomBatchResponseEntry struct {
5768	// BatchId: The ID of the request entry this entry responds to.
5769	BatchId int64 `json:"batchId,omitempty"`
5770
5771	// Errors: A list of errors defined if and only if the request failed.
5772	Errors *Errors `json:"errors,omitempty"`
5773
5774	// Kind: Identifies what kind of resource this is. Value: the fixed
5775	// string "content#localinventoryCustomBatchResponseEntry"
5776	Kind string `json:"kind,omitempty"`
5777
5778	// ForceSendFields is a list of field names (e.g. "BatchId") to
5779	// unconditionally include in API requests. By default, fields with
5780	// empty or default values are omitted from API requests. However, any
5781	// non-pointer, non-interface field appearing in ForceSendFields will be
5782	// sent to the server regardless of whether the field is empty or not.
5783	// This may be used to include empty fields in Patch requests.
5784	ForceSendFields []string `json:"-"`
5785
5786	// NullFields is a list of field names (e.g. "BatchId") to include in
5787	// API requests with the JSON null value. By default, fields with empty
5788	// values are omitted from API requests. However, any field with an
5789	// empty value appearing in NullFields will be sent to the server as
5790	// null. It is an error if a field in this list has a non-empty value.
5791	// This may be used to include null fields in Patch requests.
5792	NullFields []string `json:"-"`
5793}
5794
5795func (s *LocalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
5796	type NoMethod LocalinventoryCustomBatchResponseEntry
5797	raw := NoMethod(*s)
5798	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5799}
5800
5801type LocationIdSet struct {
5802	// LocationIds: A non-empty list of location IDs. They must all be of
5803	// the same location type (e.g., state).
5804	LocationIds []string `json:"locationIds,omitempty"`
5805
5806	// ForceSendFields is a list of field names (e.g. "LocationIds") to
5807	// unconditionally include in API requests. By default, fields with
5808	// empty or default values are omitted from API requests. However, any
5809	// non-pointer, non-interface field appearing in ForceSendFields will be
5810	// sent to the server regardless of whether the field is empty or not.
5811	// This may be used to include empty fields in Patch requests.
5812	ForceSendFields []string `json:"-"`
5813
5814	// NullFields is a list of field names (e.g. "LocationIds") to include
5815	// in API requests with the JSON null value. By default, fields with
5816	// empty values are omitted from API requests. However, any field with
5817	// an empty value appearing in NullFields will be sent to the server as
5818	// null. It is an error if a field in this list has a non-empty value.
5819	// This may be used to include null fields in Patch requests.
5820	NullFields []string `json:"-"`
5821}
5822
5823func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
5824	type NoMethod LocationIdSet
5825	raw := NoMethod(*s)
5826	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5827}
5828
5829type LoyaltyPoints struct {
5830	// Name: Name of loyalty points program. It is recommended to limit the
5831	// name to 12 full-width characters or 24 Roman characters.
5832	Name string `json:"name,omitempty"`
5833
5834	// PointsValue: The retailer's loyalty points in absolute value.
5835	PointsValue int64 `json:"pointsValue,omitempty,string"`
5836
5837	// Ratio: The ratio of a point when converted to currency. Google
5838	// assumes currency based on Merchant Center settings. If ratio is left
5839	// out, it defaults to 1.0.
5840	Ratio float64 `json:"ratio,omitempty"`
5841
5842	// ForceSendFields is a list of field names (e.g. "Name") to
5843	// unconditionally include in API requests. By default, fields with
5844	// empty or default values are omitted from API requests. However, any
5845	// non-pointer, non-interface field appearing in ForceSendFields will be
5846	// sent to the server regardless of whether the field is empty or not.
5847	// This may be used to include empty fields in Patch requests.
5848	ForceSendFields []string `json:"-"`
5849
5850	// NullFields is a list of field names (e.g. "Name") to include in API
5851	// requests with the JSON null value. By default, fields with empty
5852	// values are omitted from API requests. However, any field with an
5853	// empty value appearing in NullFields will be sent to the server as
5854	// null. It is an error if a field in this list has a non-empty value.
5855	// This may be used to include null fields in Patch requests.
5856	NullFields []string `json:"-"`
5857}
5858
5859func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
5860	type NoMethod LoyaltyPoints
5861	raw := NoMethod(*s)
5862	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5863}
5864
5865func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
5866	type NoMethod LoyaltyPoints
5867	var s1 struct {
5868		Ratio gensupport.JSONFloat64 `json:"ratio"`
5869		*NoMethod
5870	}
5871	s1.NoMethod = (*NoMethod)(s)
5872	if err := json.Unmarshal(data, &s1); err != nil {
5873		return err
5874	}
5875	s.Ratio = float64(s1.Ratio)
5876	return nil
5877}
5878
5879// MerchantOrderReturn: Order return. Production access (all methods)
5880// requires the order manager role. Sandbox access does not.
5881type MerchantOrderReturn struct {
5882	// CreationDate: The date of creation of the return, in ISO 8601 format.
5883	CreationDate string `json:"creationDate,omitempty"`
5884
5885	// MerchantOrderId: Merchant defined order ID.
5886	MerchantOrderId string `json:"merchantOrderId,omitempty"`
5887
5888	// OrderId: Google order ID.
5889	OrderId string `json:"orderId,omitempty"`
5890
5891	// OrderReturnId: Order return ID generated by Google.
5892	OrderReturnId string `json:"orderReturnId,omitempty"`
5893
5894	// ReturnItems: Items of the return.
5895	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
5896
5897	// ReturnPricingInfo: Information about shipping costs.
5898	ReturnPricingInfo *ReturnPricingInfo `json:"returnPricingInfo,omitempty"`
5899
5900	// ReturnShipments: Shipments of the return.
5901	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
5902
5903	// ServerResponse contains the HTTP response code and headers from the
5904	// server.
5905	googleapi.ServerResponse `json:"-"`
5906
5907	// ForceSendFields is a list of field names (e.g. "CreationDate") to
5908	// unconditionally include in API requests. By default, fields with
5909	// empty or default values are omitted from API requests. However, any
5910	// non-pointer, non-interface field appearing in ForceSendFields will be
5911	// sent to the server regardless of whether the field is empty or not.
5912	// This may be used to include empty fields in Patch requests.
5913	ForceSendFields []string `json:"-"`
5914
5915	// NullFields is a list of field names (e.g. "CreationDate") to include
5916	// in API requests with the JSON null value. By default, fields with
5917	// empty values are omitted from API requests. However, any field with
5918	// an empty value appearing in NullFields will be sent to the server as
5919	// null. It is an error if a field in this list has a non-empty value.
5920	// This may be used to include null fields in Patch requests.
5921	NullFields []string `json:"-"`
5922}
5923
5924func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
5925	type NoMethod MerchantOrderReturn
5926	raw := NoMethod(*s)
5927	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5928}
5929
5930type MerchantOrderReturnItem struct {
5931	// CustomerReturnReason: The reason that the customer chooses to return
5932	// an item.
5933	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
5934
5935	// ItemId: Product level item ID. If the returned items are of the same
5936	// product, they will have the same ID.
5937	ItemId string `json:"itemId,omitempty"`
5938
5939	// MerchantRejectionReason: The reason that the merchant chose to reject
5940	// an item return.
5941	MerchantRejectionReason *MerchantRejectionReason `json:"merchantRejectionReason,omitempty"`
5942
5943	// MerchantReturnReason: The reason that merchant chooses to accept a
5944	// return item.
5945	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
5946
5947	// Product: Product data from the time of the order placement.
5948	Product *OrderLineItemProduct `json:"product,omitempty"`
5949
5950	// RefundableAmount: Maximum amount that can be refunded for this return
5951	// item.
5952	RefundableAmount *MonetaryAmount `json:"refundableAmount,omitempty"`
5953
5954	// ReturnItemId: Unit level ID for the return item. Different units of
5955	// the same product will have different IDs.
5956	ReturnItemId string `json:"returnItemId,omitempty"`
5957
5958	// ReturnShipmentIds: IDs of the return shipments that this return item
5959	// belongs to.
5960	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
5961
5962	// ShipmentGroupId: ID of the original shipment group. Provided for
5963	// shipments with invoice support.
5964	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
5965
5966	// ShipmentUnitId: ID of the shipment unit assigned by the merchant.
5967	// Provided for shipments with invoice support.
5968	ShipmentUnitId string `json:"shipmentUnitId,omitempty"`
5969
5970	// State: State of the item. Acceptable values are: - "canceled" -
5971	// "new" - "received" - "refunded" - "rejected"
5972	State string `json:"state,omitempty"`
5973
5974	// ForceSendFields is a list of field names (e.g.
5975	// "CustomerReturnReason") to unconditionally include in API requests.
5976	// By default, fields with empty or default values are omitted from API
5977	// requests. However, any non-pointer, non-interface field appearing in
5978	// ForceSendFields will be sent to the server regardless of whether the
5979	// field is empty or not. This may be used to include empty fields in
5980	// Patch requests.
5981	ForceSendFields []string `json:"-"`
5982
5983	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
5984	// include in API requests with the JSON null value. By default, fields
5985	// with empty values are omitted from API requests. However, any field
5986	// with an empty value appearing in NullFields will be sent to the
5987	// server as null. It is an error if a field in this list has a
5988	// non-empty value. This may be used to include null fields in Patch
5989	// requests.
5990	NullFields []string `json:"-"`
5991}
5992
5993func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
5994	type NoMethod MerchantOrderReturnItem
5995	raw := NoMethod(*s)
5996	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5997}
5998
5999type MerchantRejectionReason struct {
6000	// Description: Description of the reason.
6001	Description string `json:"description,omitempty"`
6002
6003	// ReasonCode: Code of the rejection reason.
6004	ReasonCode string `json:"reasonCode,omitempty"`
6005
6006	// ForceSendFields is a list of field names (e.g. "Description") to
6007	// unconditionally include in API requests. By default, fields with
6008	// empty or default values are omitted from API requests. However, any
6009	// non-pointer, non-interface field appearing in ForceSendFields will be
6010	// sent to the server regardless of whether the field is empty or not.
6011	// This may be used to include empty fields in Patch requests.
6012	ForceSendFields []string `json:"-"`
6013
6014	// NullFields is a list of field names (e.g. "Description") to include
6015	// in API requests with the JSON null value. By default, fields with
6016	// empty values are omitted from API requests. However, any field with
6017	// an empty value appearing in NullFields will be sent to the server as
6018	// null. It is an error if a field in this list has a non-empty value.
6019	// This may be used to include null fields in Patch requests.
6020	NullFields []string `json:"-"`
6021}
6022
6023func (s *MerchantRejectionReason) MarshalJSON() ([]byte, error) {
6024	type NoMethod MerchantRejectionReason
6025	raw := NoMethod(*s)
6026	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6027}
6028
6029// Metrics: Performance metrics. Values are only set for metrics
6030// requested explicitly in the request's search query.
6031type Metrics struct {
6032	// Aos: Average order size - the average number of items in an order.
6033	// **This metric cannot be segmented by product dimensions.**
6034	Aos float64 `json:"aos,omitempty"`
6035
6036	// AovMicros: Average order value - the average value (total price of
6037	// items) of all placed orders. The currency of the returned value is
6038	// stored in the currency_code segment. If this metric is selected,
6039	// 'segments.currency_code' is automatically added to the SELECT clause
6040	// in the search query (unless it is explicitly selected by the user)
6041	// and the currency_code segment is populated in the response. **This
6042	// metric cannot be segmented by product dimensions.**
6043	AovMicros float64 `json:"aovMicros,omitempty"`
6044
6045	// Clicks: Number of clicks.
6046	Clicks int64 `json:"clicks,omitempty,string"`
6047
6048	// Ctr: Click-through rate - the number of clicks merchant's products
6049	// receive (clicks) divided by the number of times the products are
6050	// shown (impressions).
6051	Ctr float64 `json:"ctr,omitempty"`
6052
6053	// DaysToShip: Average number of days between an order being placed and
6054	// the order being fully shipped, reported on the last shipment date.
6055	// **This metric cannot be segmented by product dimensions.**
6056	DaysToShip float64 `json:"daysToShip,omitempty"`
6057
6058	// Impressions: Number of times merchant's products are shown.
6059	Impressions int64 `json:"impressions,omitempty,string"`
6060
6061	// ItemDaysToShip: Average number of days between an item being ordered
6062	// and the item being
6063	ItemDaysToShip float64 `json:"itemDaysToShip,omitempty"`
6064
6065	// ItemFillRate: Percentage of shipped items in relation to all
6066	// finalized items (shipped or rejected by the merchant; unshipped items
6067	// are not taken into account), reported on the order date. Item fill
6068	// rate is lowered by merchant rejections.
6069	ItemFillRate float64 `json:"itemFillRate,omitempty"`
6070
6071	// OrderedItemSalesMicros: Total price of ordered items. Excludes
6072	// shipping, taxes (US only), and customer cancellations that happened
6073	// within 30 minutes of placing the order. The currency of the returned
6074	// value is stored in the currency_code segment. If this metric is
6075	// selected, 'segments.currency_code' is automatically added to the
6076	// SELECT clause in the search query (unless it is explicitly selected
6077	// by the user) and the currency_code segment is populated in the
6078	// response.
6079	OrderedItemSalesMicros int64 `json:"orderedItemSalesMicros,omitempty,string"`
6080
6081	// OrderedItems: Number of ordered items. Excludes customer
6082	// cancellations that happened within 30 minutes of placing the order.
6083	OrderedItems int64 `json:"orderedItems,omitempty,string"`
6084
6085	// Orders: Number of placed orders. Excludes customer cancellations that
6086	// happened within 30 minutes of placing the order. **This metric cannot
6087	// be segmented by product dimensions.**
6088	Orders int64 `json:"orders,omitempty,string"`
6089
6090	// RejectedItems: Number of ordered items canceled by the merchant,
6091	// reported on the order date.
6092	RejectedItems int64 `json:"rejectedItems,omitempty,string"`
6093
6094	// ReturnRate: Total price of returned items divided by the total price
6095	// of shipped items, reported on the order date. If this metric is
6096	// selected, 'segments.currency_code' is automatically added to the
6097	// SELECT clause in the search query (unless it is explicitly selected
6098	// by the user) and the currency_code segment is populated in the
6099	// response.
6100	ReturnRate float64 `json:"returnRate,omitempty"`
6101
6102	// ReturnedItems: Number of ordered items sent back for return, reported
6103	// on the date when the merchant accepted the return.
6104	ReturnedItems int64 `json:"returnedItems,omitempty,string"`
6105
6106	// ReturnsMicros: Total price of ordered items sent back for return,
6107	// reported on the date when the merchant accepted the return. The
6108	// currency of the returned value is stored in the currency_code
6109	// segment. If this metric is selected, 'segments.currency_code' is
6110	// automatically added to the SELECT clause in the search query (unless
6111	// it is explicitly selected by the user) and the currency_code segment
6112	// is populated in the response.
6113	ReturnsMicros int64 `json:"returnsMicros,omitempty,string"`
6114
6115	// ShippedItemSalesMicros: Total price of shipped items, reported on the
6116	// order date. Excludes shipping and taxes (US only). The currency of
6117	// the returned value is stored in the currency_code segment. If this
6118	// metric is selected, 'segments.currency_code' is automatically added
6119	// to the SELECT clause in the search query (unless it is explicitly
6120	// selected by the user) and the currency_code segment is populated in
6121	// the response.
6122	ShippedItemSalesMicros int64 `json:"shippedItemSalesMicros,omitempty,string"`
6123
6124	// ShippedItems: Number of shipped items, reported on the shipment date.
6125	ShippedItems int64 `json:"shippedItems,omitempty,string"`
6126
6127	// ShippedOrders: Number of fully shipped orders, reported on the last
6128	// shipment date. **This metric cannot be segmented by product
6129	// dimensions.**
6130	ShippedOrders int64 `json:"shippedOrders,omitempty,string"`
6131
6132	// UnshippedItems: Number of ordered items not shipped up until the end
6133	// of the queried day. If a multi-day period is specified in the search
6134	// query, the returned value is the average number of unshipped items
6135	// over the days in the queried period.
6136	UnshippedItems float64 `json:"unshippedItems,omitempty"`
6137
6138	// UnshippedOrders: Number of orders not shipped or partially shipped up
6139	// until the end of the queried day. If a multi-day period is specified
6140	// in the search query, the returned value is the average number of
6141	// unshipped orders over the days in the queried period. **This metric
6142	// cannot be segmented by product dimensions.**
6143	UnshippedOrders float64 `json:"unshippedOrders,omitempty"`
6144
6145	// ForceSendFields is a list of field names (e.g. "Aos") to
6146	// unconditionally include in API requests. By default, fields with
6147	// empty or default values are omitted from API requests. However, any
6148	// non-pointer, non-interface field appearing in ForceSendFields will be
6149	// sent to the server regardless of whether the field is empty or not.
6150	// This may be used to include empty fields in Patch requests.
6151	ForceSendFields []string `json:"-"`
6152
6153	// NullFields is a list of field names (e.g. "Aos") to include in API
6154	// requests with the JSON null value. By default, fields with empty
6155	// values are omitted from API requests. However, any field with an
6156	// empty value appearing in NullFields will be sent to the server as
6157	// null. It is an error if a field in this list has a non-empty value.
6158	// This may be used to include null fields in Patch requests.
6159	NullFields []string `json:"-"`
6160}
6161
6162func (s *Metrics) MarshalJSON() ([]byte, error) {
6163	type NoMethod Metrics
6164	raw := NoMethod(*s)
6165	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6166}
6167
6168func (s *Metrics) UnmarshalJSON(data []byte) error {
6169	type NoMethod Metrics
6170	var s1 struct {
6171		Aos             gensupport.JSONFloat64 `json:"aos"`
6172		AovMicros       gensupport.JSONFloat64 `json:"aovMicros"`
6173		Ctr             gensupport.JSONFloat64 `json:"ctr"`
6174		DaysToShip      gensupport.JSONFloat64 `json:"daysToShip"`
6175		ItemDaysToShip  gensupport.JSONFloat64 `json:"itemDaysToShip"`
6176		ItemFillRate    gensupport.JSONFloat64 `json:"itemFillRate"`
6177		ReturnRate      gensupport.JSONFloat64 `json:"returnRate"`
6178		UnshippedItems  gensupport.JSONFloat64 `json:"unshippedItems"`
6179		UnshippedOrders gensupport.JSONFloat64 `json:"unshippedOrders"`
6180		*NoMethod
6181	}
6182	s1.NoMethod = (*NoMethod)(s)
6183	if err := json.Unmarshal(data, &s1); err != nil {
6184		return err
6185	}
6186	s.Aos = float64(s1.Aos)
6187	s.AovMicros = float64(s1.AovMicros)
6188	s.Ctr = float64(s1.Ctr)
6189	s.DaysToShip = float64(s1.DaysToShip)
6190	s.ItemDaysToShip = float64(s1.ItemDaysToShip)
6191	s.ItemFillRate = float64(s1.ItemFillRate)
6192	s.ReturnRate = float64(s1.ReturnRate)
6193	s.UnshippedItems = float64(s1.UnshippedItems)
6194	s.UnshippedOrders = float64(s1.UnshippedOrders)
6195	return nil
6196}
6197
6198type MinimumOrderValueTable struct {
6199	StoreCodeSetWithMovs []*MinimumOrderValueTableStoreCodeSetWithMov `json:"storeCodeSetWithMovs,omitempty"`
6200
6201	// ForceSendFields is a list of field names (e.g.
6202	// "StoreCodeSetWithMovs") to unconditionally include in API requests.
6203	// By default, fields with empty or default values are omitted from API
6204	// requests. However, any non-pointer, non-interface field appearing in
6205	// ForceSendFields will be sent to the server regardless of whether the
6206	// field is empty or not. This may be used to include empty fields in
6207	// Patch requests.
6208	ForceSendFields []string `json:"-"`
6209
6210	// NullFields is a list of field names (e.g. "StoreCodeSetWithMovs") to
6211	// include in API requests with the JSON null value. By default, fields
6212	// with empty values are omitted from API requests. However, any field
6213	// with an empty value appearing in NullFields will be sent to the
6214	// server as null. It is an error if a field in this list has a
6215	// non-empty value. This may be used to include null fields in Patch
6216	// requests.
6217	NullFields []string `json:"-"`
6218}
6219
6220func (s *MinimumOrderValueTable) MarshalJSON() ([]byte, error) {
6221	type NoMethod MinimumOrderValueTable
6222	raw := NoMethod(*s)
6223	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6224}
6225
6226// MinimumOrderValueTableStoreCodeSetWithMov: A list of store code sets
6227// sharing the same minimum order value. At least two sets are required
6228// and the last one must be empty, which signifies 'MOV for all other
6229// stores'. Each store code can only appear once across all the sets.
6230// All prices within a service must have the same currency.
6231type MinimumOrderValueTableStoreCodeSetWithMov struct {
6232	// StoreCodes: A list of unique store codes or empty for the catch all.
6233	StoreCodes []string `json:"storeCodes,omitempty"`
6234
6235	// Value: The minimum order value for the given stores.
6236	Value *Price `json:"value,omitempty"`
6237
6238	// ForceSendFields is a list of field names (e.g. "StoreCodes") to
6239	// unconditionally include in API requests. By default, fields with
6240	// empty or default values are omitted from API requests. However, any
6241	// non-pointer, non-interface field appearing in ForceSendFields will be
6242	// sent to the server regardless of whether the field is empty or not.
6243	// This may be used to include empty fields in Patch requests.
6244	ForceSendFields []string `json:"-"`
6245
6246	// NullFields is a list of field names (e.g. "StoreCodes") to include in
6247	// API requests with the JSON null value. By default, fields with empty
6248	// values are omitted from API requests. However, any field with an
6249	// empty value appearing in NullFields will be sent to the server as
6250	// null. It is an error if a field in this list has a non-empty value.
6251	// This may be used to include null fields in Patch requests.
6252	NullFields []string `json:"-"`
6253}
6254
6255func (s *MinimumOrderValueTableStoreCodeSetWithMov) MarshalJSON() ([]byte, error) {
6256	type NoMethod MinimumOrderValueTableStoreCodeSetWithMov
6257	raw := NoMethod(*s)
6258	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6259}
6260
6261type MonetaryAmount struct {
6262	// PriceAmount: The pre-tax or post-tax price depends on the location of
6263	// the order. - For countries (e.g. US) where price attribute excludes
6264	// tax, this field corresponds to the pre-tax value. - For coutries
6265	// (e.g. France) where price attribute includes tax, this field
6266	// corresponds to the post-tax value .
6267	PriceAmount *Price `json:"priceAmount,omitempty"`
6268
6269	// TaxAmount: Tax value, present only for countries where price
6270	// attribute excludes tax (e.g. US). No tax is referenced as 0 value
6271	// with the corresponding `currency`.
6272	TaxAmount *Price `json:"taxAmount,omitempty"`
6273
6274	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
6275	// unconditionally include in API requests. By default, fields with
6276	// empty or default values are omitted from API requests. However, any
6277	// non-pointer, non-interface field appearing in ForceSendFields will be
6278	// sent to the server regardless of whether the field is empty or not.
6279	// This may be used to include empty fields in Patch requests.
6280	ForceSendFields []string `json:"-"`
6281
6282	// NullFields is a list of field names (e.g. "PriceAmount") to include
6283	// in API requests with the JSON null value. By default, fields with
6284	// empty values are omitted from API requests. However, any field with
6285	// an empty value appearing in NullFields will be sent to the server as
6286	// null. It is an error if a field in this list has a non-empty value.
6287	// This may be used to include null fields in Patch requests.
6288	NullFields []string `json:"-"`
6289}
6290
6291func (s *MonetaryAmount) MarshalJSON() ([]byte, error) {
6292	type NoMethod MonetaryAmount
6293	raw := NoMethod(*s)
6294	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6295}
6296
6297// OnboardBuyOnGoogleProgramRequest: Request message for the
6298// OnboardProgram method.
6299type OnboardBuyOnGoogleProgramRequest struct {
6300	// CustomerServiceEmail: The customer service email.
6301	CustomerServiceEmail string `json:"customerServiceEmail,omitempty"`
6302
6303	// ForceSendFields is a list of field names (e.g.
6304	// "CustomerServiceEmail") to unconditionally include in API requests.
6305	// By default, fields with empty or default values are omitted from API
6306	// requests. However, any non-pointer, non-interface field appearing in
6307	// ForceSendFields will be sent to the server regardless of whether the
6308	// field is empty or not. This may be used to include empty fields in
6309	// Patch requests.
6310	ForceSendFields []string `json:"-"`
6311
6312	// NullFields is a list of field names (e.g. "CustomerServiceEmail") to
6313	// include in API requests with the JSON null value. By default, fields
6314	// with empty values are omitted from API requests. However, any field
6315	// with an empty value appearing in NullFields will be sent to the
6316	// server as null. It is an error if a field in this list has a
6317	// non-empty value. This may be used to include null fields in Patch
6318	// requests.
6319	NullFields []string `json:"-"`
6320}
6321
6322func (s *OnboardBuyOnGoogleProgramRequest) MarshalJSON() ([]byte, error) {
6323	type NoMethod OnboardBuyOnGoogleProgramRequest
6324	raw := NoMethod(*s)
6325	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6326}
6327
6328// Order: Order. Production access (all methods) requires the order
6329// manager role. Sandbox access does not.
6330type Order struct {
6331	// Acknowledged: Whether the order was acknowledged.
6332	Acknowledged bool `json:"acknowledged,omitempty"`
6333
6334	// Annotations: List of key-value pairs that are attached to a given
6335	// order.
6336	Annotations []*OrderOrderAnnotation `json:"annotations,omitempty"`
6337
6338	// BillingAddress: The billing address.
6339	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
6340
6341	// Customer: The details of the customer who placed the order.
6342	Customer *OrderCustomer `json:"customer,omitempty"`
6343
6344	// DeliveryDetails: Delivery details for shipments of type `delivery`.
6345	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
6346
6347	// Id: The REST ID of the order. Globally unique.
6348	Id string `json:"id,omitempty"`
6349
6350	// Kind: Identifies what kind of resource this is. Value: the fixed
6351	// string "content#order"
6352	Kind string `json:"kind,omitempty"`
6353
6354	// LineItems: Line items that are ordered.
6355	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
6356
6357	MerchantId uint64 `json:"merchantId,omitempty,string"`
6358
6359	// MerchantOrderId: Merchant-provided ID of the order.
6360	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6361
6362	// NetPriceAmount: The net amount for the order (price part). For
6363	// example, if an order was originally for $100 and a refund was issued
6364	// for $20, the net amount will be $80.
6365	NetPriceAmount *Price `json:"netPriceAmount,omitempty"`
6366
6367	// NetTaxAmount: The net amount for the order (tax part). Note that in
6368	// certain cases due to taxable base adjustment `netTaxAmount` might not
6369	// match to a sum of tax field across all lineItems and refunds.
6370	NetTaxAmount *Price `json:"netTaxAmount,omitempty"`
6371
6372	// PaymentStatus: The status of the payment. Acceptable values are: -
6373	// "paymentCaptured" - "paymentRejected" - "paymentSecured" -
6374	// "pendingAuthorization"
6375	PaymentStatus string `json:"paymentStatus,omitempty"`
6376
6377	// PickupDetails: Pickup details for shipments of type `pickup`.
6378	PickupDetails *OrderPickupDetails `json:"pickupDetails,omitempty"`
6379
6380	// PlacedDate: The date when the order was placed, in ISO 8601 format.
6381	PlacedDate string `json:"placedDate,omitempty"`
6382
6383	// Promotions: Promotions associated with the order. To determine which
6384	// promotions apply to which products, check the
6385	// `Promotions[].appliedItems[].lineItemId` field against the
6386	// `LineItems[].id` field for each promotion. If a promotion is applied
6387	// to more than 1 offerId, divide the discount value by the number of
6388	// affected offers to determine how much discount to apply to each
6389	// offerId. Examples: 1. To calculate price paid by the customer for a
6390	// single line item including the discount: For each promotion, subtract
6391	// the `LineItems[].adjustments[].priceAdjustment.value` amount from the
6392	// `LineItems[].Price.value`. 2. To calculate price paid by the customer
6393	// for a single line item including the discount in case of multiple
6394	// quantity: For each promotion, divide the
6395	// `LineItems[].adjustments[].priceAdjustment.value` by the quantity of
6396	// products then subtract the resulting value from the
6397	// `LineItems[].Product.Price.value` for each quantity item. Only 1
6398	// promotion can be applied to an offerId in a given order. To refund an
6399	// item which had a promotion applied to it, make sure to refund the
6400	// amount after first subtracting the promotion discount from the item
6401	// price. More details about the program are here.
6402	Promotions []*OrderPromotion `json:"promotions,omitempty"`
6403
6404	// Refunds: Refunds for the order.
6405	Refunds []*OrderRefund `json:"refunds,omitempty"`
6406
6407	// Shipments: Shipments of the order.
6408	Shipments []*OrderShipment `json:"shipments,omitempty"`
6409
6410	// ShippingCost: The total cost of shipping for all items.
6411	ShippingCost *Price `json:"shippingCost,omitempty"`
6412
6413	// ShippingCostTax: The tax for the total shipping cost.
6414	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
6415
6416	// Status: The status of the order. Acceptable values are: -
6417	// "canceled" - "delivered" - "inProgress" -
6418	// "partiallyDelivered" - "partiallyReturned" - "partiallyShipped"
6419	// - "pendingShipment" - "returned" - "shipped"
6420	Status string `json:"status,omitempty"`
6421
6422	// TaxCollector: The party responsible for collecting and remitting
6423	// taxes. Acceptable values are: - "marketplaceFacilitator" -
6424	// "merchant"
6425	TaxCollector string `json:"taxCollector,omitempty"`
6426
6427	// ServerResponse contains the HTTP response code and headers from the
6428	// server.
6429	googleapi.ServerResponse `json:"-"`
6430
6431	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
6432	// unconditionally include in API requests. By default, fields with
6433	// empty or default values are omitted from API requests. However, any
6434	// non-pointer, non-interface field appearing in ForceSendFields will be
6435	// sent to the server regardless of whether the field is empty or not.
6436	// This may be used to include empty fields in Patch requests.
6437	ForceSendFields []string `json:"-"`
6438
6439	// NullFields is a list of field names (e.g. "Acknowledged") to include
6440	// in API requests with the JSON null value. By default, fields with
6441	// empty values are omitted from API requests. However, any field with
6442	// an empty value appearing in NullFields will be sent to the server as
6443	// null. It is an error if a field in this list has a non-empty value.
6444	// This may be used to include null fields in Patch requests.
6445	NullFields []string `json:"-"`
6446}
6447
6448func (s *Order) MarshalJSON() ([]byte, error) {
6449	type NoMethod Order
6450	raw := NoMethod(*s)
6451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6452}
6453
6454type OrderAddress struct {
6455	// Country: CLDR country code (e.g. "US").
6456	Country string `json:"country,omitempty"`
6457
6458	// FullAddress: Strings representing the lines of the printed label for
6459	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
6460	// Mountain View, CA, 94043 United States
6461	FullAddress []string `json:"fullAddress,omitempty"`
6462
6463	// IsPostOfficeBox: Whether the address is a post office box.
6464	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
6465
6466	// Locality: City, town or commune. May also include dependent
6467	// localities or sublocalities (e.g. neighborhoods or suburbs).
6468	Locality string `json:"locality,omitempty"`
6469
6470	// PostalCode: Postal Code or ZIP (e.g. "94043").
6471	PostalCode string `json:"postalCode,omitempty"`
6472
6473	// RecipientName: Name of the recipient.
6474	RecipientName string `json:"recipientName,omitempty"`
6475
6476	// Region: Top-level administrative subdivision of the country. For
6477	// example, a state like California ("CA") or a province like Quebec
6478	// ("QC").
6479	Region string `json:"region,omitempty"`
6480
6481	// StreetAddress: Street-level part of the address.
6482	StreetAddress []string `json:"streetAddress,omitempty"`
6483
6484	// ForceSendFields is a list of field names (e.g. "Country") to
6485	// unconditionally include in API requests. By default, fields with
6486	// empty or default values are omitted from API requests. However, any
6487	// non-pointer, non-interface field appearing in ForceSendFields will be
6488	// sent to the server regardless of whether the field is empty or not.
6489	// This may be used to include empty fields in Patch requests.
6490	ForceSendFields []string `json:"-"`
6491
6492	// NullFields is a list of field names (e.g. "Country") to include in
6493	// API requests with the JSON null value. By default, fields with empty
6494	// values are omitted from API requests. However, any field with an
6495	// empty value appearing in NullFields will be sent to the server as
6496	// null. It is an error if a field in this list has a non-empty value.
6497	// This may be used to include null fields in Patch requests.
6498	NullFields []string `json:"-"`
6499}
6500
6501func (s *OrderAddress) MarshalJSON() ([]byte, error) {
6502	type NoMethod OrderAddress
6503	raw := NoMethod(*s)
6504	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6505}
6506
6507type OrderCancellation struct {
6508	// Actor: The actor that created the cancellation. Acceptable values
6509	// are: - "customer" - "googleBot" - "googleCustomerService" -
6510	// "googlePayments" - "googleSabre" - "merchant"
6511	Actor string `json:"actor,omitempty"`
6512
6513	// CreationDate: Date on which the cancellation has been created, in ISO
6514	// 8601 format.
6515	CreationDate string `json:"creationDate,omitempty"`
6516
6517	// Quantity: The quantity that was canceled.
6518	Quantity int64 `json:"quantity,omitempty"`
6519
6520	// Reason: The reason for the cancellation. Orders that are canceled
6521	// with a noInventory reason will lead to the removal of the product
6522	// from Buy on Google until you make an update to that product. This
6523	// will not affect your Shopping ads. Acceptable values are: -
6524	// "autoPostInternal" - "autoPostInvalidBillingAddress" -
6525	// "autoPostNoInventory" - "autoPostPriceError" -
6526	// "autoPostUndeliverableShippingAddress" - "couponAbuse" -
6527	// "customerCanceled" - "customerInitiatedCancel" -
6528	// "customerSupportRequested" - "failToPushOrderGoogleError" -
6529	// "failToPushOrderMerchantError" -
6530	// "failToPushOrderMerchantFulfillmentError" -
6531	// "failToPushOrderToMerchant" -
6532	// "failToPushOrderToMerchantOutOfStock" - "invalidCoupon" -
6533	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
6534	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
6535	// "paymentDeclined" - "priceError" - "returnRefundAbuse" -
6536	// "shippingPriceError" - "taxError" -
6537	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
6538	Reason string `json:"reason,omitempty"`
6539
6540	// ReasonText: The explanation of the reason.
6541	ReasonText string `json:"reasonText,omitempty"`
6542
6543	// ForceSendFields is a list of field names (e.g. "Actor") to
6544	// unconditionally include in API requests. By default, fields with
6545	// empty or default values are omitted from API requests. However, any
6546	// non-pointer, non-interface field appearing in ForceSendFields will be
6547	// sent to the server regardless of whether the field is empty or not.
6548	// This may be used to include empty fields in Patch requests.
6549	ForceSendFields []string `json:"-"`
6550
6551	// NullFields is a list of field names (e.g. "Actor") to include in API
6552	// requests with the JSON null value. By default, fields with empty
6553	// values are omitted from API requests. However, any field with an
6554	// empty value appearing in NullFields will be sent to the server as
6555	// null. It is an error if a field in this list has a non-empty value.
6556	// This may be used to include null fields in Patch requests.
6557	NullFields []string `json:"-"`
6558}
6559
6560func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
6561	type NoMethod OrderCancellation
6562	raw := NoMethod(*s)
6563	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6564}
6565
6566type OrderCustomer struct {
6567	// FullName: Full name of the customer.
6568	FullName string `json:"fullName,omitempty"`
6569
6570	// InvoiceReceivingEmail: Email address for the merchant to send
6571	// value-added tax or invoice documentation of the order. Only the last
6572	// document sent is made available to the customer. For more
6573	// information, see About automated VAT invoicing for Buy on Google.
6574	InvoiceReceivingEmail string `json:"invoiceReceivingEmail,omitempty"`
6575
6576	// LoyaltyInfo: Loyalty program information.
6577	LoyaltyInfo *OrderCustomerLoyaltyInfo `json:"loyaltyInfo,omitempty"`
6578
6579	// MarketingRightsInfo: Customer's marketing preferences. Contains the
6580	// marketing opt-in information that is current at the time that the
6581	// merchant call. User preference selections can change from one order
6582	// to the next so preferences must be checked with every order.
6583	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
6584
6585	// ForceSendFields is a list of field names (e.g. "FullName") to
6586	// unconditionally include in API requests. By default, fields with
6587	// empty or default values are omitted from API requests. However, any
6588	// non-pointer, non-interface field appearing in ForceSendFields will be
6589	// sent to the server regardless of whether the field is empty or not.
6590	// This may be used to include empty fields in Patch requests.
6591	ForceSendFields []string `json:"-"`
6592
6593	// NullFields is a list of field names (e.g. "FullName") to include in
6594	// API requests with the JSON null value. By default, fields with empty
6595	// values are omitted from API requests. However, any field with an
6596	// empty value appearing in NullFields will be sent to the server as
6597	// null. It is an error if a field in this list has a non-empty value.
6598	// This may be used to include null fields in Patch requests.
6599	NullFields []string `json:"-"`
6600}
6601
6602func (s *OrderCustomer) MarshalJSON() ([]byte, error) {
6603	type NoMethod OrderCustomer
6604	raw := NoMethod(*s)
6605	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6606}
6607
6608type OrderCustomerLoyaltyInfo struct {
6609	// LoyaltyNumber: The loyalty card/membership number.
6610	LoyaltyNumber string `json:"loyaltyNumber,omitempty"`
6611
6612	// Name: Name of card/membership holder, this field will be populated
6613	// when
6614	Name string `json:"name,omitempty"`
6615
6616	// ForceSendFields is a list of field names (e.g. "LoyaltyNumber") to
6617	// unconditionally include in API requests. By default, fields with
6618	// empty or default values are omitted from API requests. However, any
6619	// non-pointer, non-interface field appearing in ForceSendFields will be
6620	// sent to the server regardless of whether the field is empty or not.
6621	// This may be used to include empty fields in Patch requests.
6622	ForceSendFields []string `json:"-"`
6623
6624	// NullFields is a list of field names (e.g. "LoyaltyNumber") to include
6625	// in API requests with the JSON null value. By default, fields with
6626	// empty values are omitted from API requests. However, any field with
6627	// an empty value appearing in NullFields will be sent to the server as
6628	// null. It is an error if a field in this list has a non-empty value.
6629	// This may be used to include null fields in Patch requests.
6630	NullFields []string `json:"-"`
6631}
6632
6633func (s *OrderCustomerLoyaltyInfo) MarshalJSON() ([]byte, error) {
6634	type NoMethod OrderCustomerLoyaltyInfo
6635	raw := NoMethod(*s)
6636	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6637}
6638
6639type OrderCustomerMarketingRightsInfo struct {
6640	// ExplicitMarketingPreference: Last known customer selection regarding
6641	// marketing preferences. In certain cases this selection might not be
6642	// known, so this field would be empty. If a customer selected `granted`
6643	// in their most recent order, they can be subscribed to marketing
6644	// emails. Customers who have chosen `denied` must not be subscribed, or
6645	// must be unsubscribed if already opted-in. Acceptable values are: -
6646	// "denied" - "granted"
6647	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
6648
6649	// LastUpdatedTimestamp: Timestamp when last time marketing preference
6650	// was updated. Could be empty, if user wasn't offered a selection yet.
6651	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
6652
6653	// MarketingEmailAddress: Email address that can be used for marketing
6654	// purposes. The field may be empty even if
6655	// `explicitMarketingPreference` is 'granted'. This happens when
6656	// retrieving an old order from the customer who deleted their account.
6657	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
6658
6659	// ForceSendFields is a list of field names (e.g.
6660	// "ExplicitMarketingPreference") to unconditionally include in API
6661	// requests. By default, fields with empty or default values are omitted
6662	// from API requests. However, any non-pointer, non-interface field
6663	// appearing in ForceSendFields will be sent to the server regardless of
6664	// whether the field is empty or not. This may be used to include empty
6665	// fields in Patch requests.
6666	ForceSendFields []string `json:"-"`
6667
6668	// NullFields is a list of field names (e.g.
6669	// "ExplicitMarketingPreference") to include in API requests with the
6670	// JSON null value. By default, fields with empty values are omitted
6671	// from API requests. However, any field with an empty value appearing
6672	// in NullFields will be sent to the server as null. It is an error if a
6673	// field in this list has a non-empty value. This may be used to include
6674	// null fields in Patch requests.
6675	NullFields []string `json:"-"`
6676}
6677
6678func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
6679	type NoMethod OrderCustomerMarketingRightsInfo
6680	raw := NoMethod(*s)
6681	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6682}
6683
6684type OrderDeliveryDetails struct {
6685	// Address: The delivery address
6686	Address *OrderAddress `json:"address,omitempty"`
6687
6688	// PhoneNumber: The phone number of the person receiving the delivery.
6689	PhoneNumber string `json:"phoneNumber,omitempty"`
6690
6691	// ForceSendFields is a list of field names (e.g. "Address") to
6692	// unconditionally include in API requests. By default, fields with
6693	// empty or default values are omitted from API requests. However, any
6694	// non-pointer, non-interface field appearing in ForceSendFields will be
6695	// sent to the server regardless of whether the field is empty or not.
6696	// This may be used to include empty fields in Patch requests.
6697	ForceSendFields []string `json:"-"`
6698
6699	// NullFields is a list of field names (e.g. "Address") to include in
6700	// API requests with the JSON null value. By default, fields with empty
6701	// values are omitted from API requests. However, any field with an
6702	// empty value appearing in NullFields will be sent to the server as
6703	// null. It is an error if a field in this list has a non-empty value.
6704	// This may be used to include null fields in Patch requests.
6705	NullFields []string `json:"-"`
6706}
6707
6708func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
6709	type NoMethod OrderDeliveryDetails
6710	raw := NoMethod(*s)
6711	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6712}
6713
6714type OrderLineItem struct {
6715	// Adjustments: Price and tax adjustments applied on the line item.
6716	Adjustments []*OrderLineItemAdjustment `json:"adjustments,omitempty"`
6717
6718	// Annotations: Annotations that are attached to the line item.
6719	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
6720
6721	// Cancellations: Cancellations of the line item.
6722	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
6723
6724	// Id: The ID of the line item.
6725	Id string `json:"id,omitempty"`
6726
6727	// Price: Total price for the line item. For example, if two items for
6728	// $10 are purchased, the total price will be $20.
6729	Price *Price `json:"price,omitempty"`
6730
6731	// Product: Product data as seen by customer from the time of the order
6732	// placement. Note that certain attributes values (e.g. title or gtin)
6733	// might be reformatted and no longer match values submitted via product
6734	// feed.
6735	Product *OrderLineItemProduct `json:"product,omitempty"`
6736
6737	// QuantityCanceled: Number of items canceled.
6738	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
6739
6740	// QuantityDelivered: Number of items delivered.
6741	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
6742
6743	// QuantityOrdered: Number of items ordered.
6744	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
6745
6746	// QuantityPending: Number of items pending.
6747	QuantityPending int64 `json:"quantityPending,omitempty"`
6748
6749	// QuantityReadyForPickup: Number of items ready for pickup.
6750	QuantityReadyForPickup int64 `json:"quantityReadyForPickup,omitempty"`
6751
6752	// QuantityReturned: Number of items returned.
6753	QuantityReturned int64 `json:"quantityReturned,omitempty"`
6754
6755	// QuantityShipped: Number of items shipped.
6756	QuantityShipped int64 `json:"quantityShipped,omitempty"`
6757
6758	// QuantityUndeliverable: Number of items undeliverable.
6759	QuantityUndeliverable int64 `json:"quantityUndeliverable,omitempty"`
6760
6761	// ReturnInfo: Details of the return policy for the line item.
6762	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
6763
6764	// Returns: Returns of the line item.
6765	Returns []*OrderReturn `json:"returns,omitempty"`
6766
6767	// ShippingDetails: Details of the requested shipping for the line item.
6768	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
6769
6770	// Tax: Total tax amount for the line item. For example, if two items
6771	// are purchased, and each have a cost tax of $2, the total tax amount
6772	// will be $4.
6773	Tax *Price `json:"tax,omitempty"`
6774
6775	// ForceSendFields is a list of field names (e.g. "Adjustments") to
6776	// unconditionally include in API requests. By default, fields with
6777	// empty or default values are omitted from API requests. However, any
6778	// non-pointer, non-interface field appearing in ForceSendFields will be
6779	// sent to the server regardless of whether the field is empty or not.
6780	// This may be used to include empty fields in Patch requests.
6781	ForceSendFields []string `json:"-"`
6782
6783	// NullFields is a list of field names (e.g. "Adjustments") to include
6784	// in API requests with the JSON null value. By default, fields with
6785	// empty values are omitted from API requests. However, any field with
6786	// an empty value appearing in NullFields will be sent to the server as
6787	// null. It is an error if a field in this list has a non-empty value.
6788	// This may be used to include null fields in Patch requests.
6789	NullFields []string `json:"-"`
6790}
6791
6792func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
6793	type NoMethod OrderLineItem
6794	raw := NoMethod(*s)
6795	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6796}
6797
6798type OrderLineItemAdjustment struct {
6799	// PriceAdjustment: Adjustment for total price of the line item.
6800	PriceAdjustment *Price `json:"priceAdjustment,omitempty"`
6801
6802	// TaxAdjustment: Adjustment for total tax of the line item.
6803	TaxAdjustment *Price `json:"taxAdjustment,omitempty"`
6804
6805	// Type: Type of this adjustment. Acceptable values are: - "promotion"
6806	Type string `json:"type,omitempty"`
6807
6808	// ForceSendFields is a list of field names (e.g. "PriceAdjustment") to
6809	// unconditionally include in API requests. By default, fields with
6810	// empty or default values are omitted from API requests. However, any
6811	// non-pointer, non-interface field appearing in ForceSendFields will be
6812	// sent to the server regardless of whether the field is empty or not.
6813	// This may be used to include empty fields in Patch requests.
6814	ForceSendFields []string `json:"-"`
6815
6816	// NullFields is a list of field names (e.g. "PriceAdjustment") to
6817	// include in API requests with the JSON null value. By default, fields
6818	// with empty values are omitted from API requests. However, any field
6819	// with an empty value appearing in NullFields will be sent to the
6820	// server as null. It is an error if a field in this list has a
6821	// non-empty value. This may be used to include null fields in Patch
6822	// requests.
6823	NullFields []string `json:"-"`
6824}
6825
6826func (s *OrderLineItemAdjustment) MarshalJSON() ([]byte, error) {
6827	type NoMethod OrderLineItemAdjustment
6828	raw := NoMethod(*s)
6829	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6830}
6831
6832type OrderLineItemProduct struct {
6833	// Brand: Brand of the item.
6834	Brand string `json:"brand,omitempty"`
6835
6836	// Condition: Condition or state of the item. Acceptable values are: -
6837	// "new" - "refurbished" - "used"
6838	Condition string `json:"condition,omitempty"`
6839
6840	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
6841	ContentLanguage string `json:"contentLanguage,omitempty"`
6842
6843	// Fees: Associated fees at order creation time.
6844	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
6845
6846	// Gtin: Global Trade Item Number (GTIN) of the item.
6847	Gtin string `json:"gtin,omitempty"`
6848
6849	// Id: The REST ID of the product.
6850	Id string `json:"id,omitempty"`
6851
6852	// ImageLink: URL of an image of the item.
6853	ImageLink string `json:"imageLink,omitempty"`
6854
6855	// ItemGroupId: Shared identifier for all variants of the same product.
6856	ItemGroupId string `json:"itemGroupId,omitempty"`
6857
6858	// Mpn: Manufacturer Part Number (MPN) of the item.
6859	Mpn string `json:"mpn,omitempty"`
6860
6861	// OfferId: An identifier of the item.
6862	OfferId string `json:"offerId,omitempty"`
6863
6864	// Price: Price of the item.
6865	Price *Price `json:"price,omitempty"`
6866
6867	// ShownImage: URL to the cached image shown to the user when order was
6868	// placed.
6869	ShownImage string `json:"shownImage,omitempty"`
6870
6871	// TargetCountry: The CLDR territory // code of the target country of
6872	// the product.
6873	TargetCountry string `json:"targetCountry,omitempty"`
6874
6875	// Title: The title of the product.
6876	Title string `json:"title,omitempty"`
6877
6878	// VariantAttributes: Variant attributes for the item. These are
6879	// dimensions of the product, such as color, gender, material, pattern,
6880	// and size. You can find a comprehensive list of variant attributes
6881	// here.
6882	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
6883
6884	// ForceSendFields is a list of field names (e.g. "Brand") to
6885	// unconditionally include in API requests. By default, fields with
6886	// empty or default values are omitted from API requests. However, any
6887	// non-pointer, non-interface field appearing in ForceSendFields will be
6888	// sent to the server regardless of whether the field is empty or not.
6889	// This may be used to include empty fields in Patch requests.
6890	ForceSendFields []string `json:"-"`
6891
6892	// NullFields is a list of field names (e.g. "Brand") to include in API
6893	// requests with the JSON null value. By default, fields with empty
6894	// values are omitted from API requests. However, any field with an
6895	// empty value appearing in NullFields will be sent to the server as
6896	// null. It is an error if a field in this list has a non-empty value.
6897	// This may be used to include null fields in Patch requests.
6898	NullFields []string `json:"-"`
6899}
6900
6901func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
6902	type NoMethod OrderLineItemProduct
6903	raw := NoMethod(*s)
6904	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6905}
6906
6907type OrderLineItemProductFee struct {
6908	// Amount: Amount of the fee.
6909	Amount *Price `json:"amount,omitempty"`
6910
6911	// Name: Name of the fee.
6912	Name string `json:"name,omitempty"`
6913
6914	// ForceSendFields is a list of field names (e.g. "Amount") to
6915	// unconditionally include in API requests. By default, fields with
6916	// empty or default values are omitted from API requests. However, any
6917	// non-pointer, non-interface field appearing in ForceSendFields will be
6918	// sent to the server regardless of whether the field is empty or not.
6919	// This may be used to include empty fields in Patch requests.
6920	ForceSendFields []string `json:"-"`
6921
6922	// NullFields is a list of field names (e.g. "Amount") to include in API
6923	// requests with the JSON null value. By default, fields with empty
6924	// values are omitted from API requests. However, any field with an
6925	// empty value appearing in NullFields will be sent to the server as
6926	// null. It is an error if a field in this list has a non-empty value.
6927	// This may be used to include null fields in Patch requests.
6928	NullFields []string `json:"-"`
6929}
6930
6931func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
6932	type NoMethod OrderLineItemProductFee
6933	raw := NoMethod(*s)
6934	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6935}
6936
6937type OrderLineItemProductVariantAttribute struct {
6938	// Dimension: The dimension of the variant.
6939	Dimension string `json:"dimension,omitempty"`
6940
6941	// Value: The value for the dimension.
6942	Value string `json:"value,omitempty"`
6943
6944	// ForceSendFields is a list of field names (e.g. "Dimension") to
6945	// unconditionally include in API requests. By default, fields with
6946	// empty or default values are omitted from API requests. However, any
6947	// non-pointer, non-interface field appearing in ForceSendFields will be
6948	// sent to the server regardless of whether the field is empty or not.
6949	// This may be used to include empty fields in Patch requests.
6950	ForceSendFields []string `json:"-"`
6951
6952	// NullFields is a list of field names (e.g. "Dimension") to include in
6953	// API requests with the JSON null value. By default, fields with empty
6954	// values are omitted from API requests. However, any field with an
6955	// empty value appearing in NullFields will be sent to the server as
6956	// null. It is an error if a field in this list has a non-empty value.
6957	// This may be used to include null fields in Patch requests.
6958	NullFields []string `json:"-"`
6959}
6960
6961func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
6962	type NoMethod OrderLineItemProductVariantAttribute
6963	raw := NoMethod(*s)
6964	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6965}
6966
6967type OrderLineItemReturnInfo struct {
6968	// DaysToReturn: Required. How many days later the item can be returned.
6969	DaysToReturn int64 `json:"daysToReturn,omitempty"`
6970
6971	// IsReturnable: Required. Whether the item is returnable.
6972	IsReturnable bool `json:"isReturnable,omitempty"`
6973
6974	// PolicyUrl: Required. URL of the item return policy.
6975	PolicyUrl string `json:"policyUrl,omitempty"`
6976
6977	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
6978	// unconditionally include in API requests. By default, fields with
6979	// empty or default values are omitted from API requests. However, any
6980	// non-pointer, non-interface field appearing in ForceSendFields will be
6981	// sent to the server regardless of whether the field is empty or not.
6982	// This may be used to include empty fields in Patch requests.
6983	ForceSendFields []string `json:"-"`
6984
6985	// NullFields is a list of field names (e.g. "DaysToReturn") to include
6986	// in API requests with the JSON null value. By default, fields with
6987	// empty values are omitted from API requests. However, any field with
6988	// an empty value appearing in NullFields will be sent to the server as
6989	// null. It is an error if a field in this list has a non-empty value.
6990	// This may be used to include null fields in Patch requests.
6991	NullFields []string `json:"-"`
6992}
6993
6994func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
6995	type NoMethod OrderLineItemReturnInfo
6996	raw := NoMethod(*s)
6997	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6998}
6999
7000type OrderLineItemShippingDetails struct {
7001	// DeliverByDate: Required. The delivery by date, in ISO 8601 format.
7002	DeliverByDate string `json:"deliverByDate,omitempty"`
7003
7004	// Method: Required. Details of the shipping method.
7005	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
7006
7007	// PickupPromiseInMinutes: The promised time in minutes in which the
7008	// order will be ready for pickup. This only applies to
7009	// buy-online-pickup-in-store same-day order.
7010	PickupPromiseInMinutes int64 `json:"pickupPromiseInMinutes,omitempty"`
7011
7012	// ShipByDate: Required. The ship by date, in ISO 8601 format.
7013	ShipByDate string `json:"shipByDate,omitempty"`
7014
7015	// Type: Type of shipment. Indicates whether `deliveryDetails` or
7016	// `pickupDetails` is applicable for this shipment. Acceptable values
7017	// are: - "delivery" - "pickup"
7018	Type string `json:"type,omitempty"`
7019
7020	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
7021	// unconditionally include in API requests. By default, fields with
7022	// empty or default values are omitted from API requests. However, any
7023	// non-pointer, non-interface field appearing in ForceSendFields will be
7024	// sent to the server regardless of whether the field is empty or not.
7025	// This may be used to include empty fields in Patch requests.
7026	ForceSendFields []string `json:"-"`
7027
7028	// NullFields is a list of field names (e.g. "DeliverByDate") to include
7029	// in API requests with the JSON null value. By default, fields with
7030	// empty values are omitted from API requests. However, any field with
7031	// an empty value appearing in NullFields will be sent to the server as
7032	// null. It is an error if a field in this list has a non-empty value.
7033	// This may be used to include null fields in Patch requests.
7034	NullFields []string `json:"-"`
7035}
7036
7037func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
7038	type NoMethod OrderLineItemShippingDetails
7039	raw := NoMethod(*s)
7040	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7041}
7042
7043type OrderLineItemShippingDetailsMethod struct {
7044	// Carrier: The carrier for the shipping. Optional. See
7045	// `shipments[].carrier` for a list of acceptable values.
7046	Carrier string `json:"carrier,omitempty"`
7047
7048	// MaxDaysInTransit: Required. Maximum transit time.
7049	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
7050
7051	// MethodName: Required. The name of the shipping method.
7052	MethodName string `json:"methodName,omitempty"`
7053
7054	// MinDaysInTransit: Required. Minimum transit time.
7055	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
7056
7057	// ForceSendFields is a list of field names (e.g. "Carrier") to
7058	// unconditionally include in API requests. By default, fields with
7059	// empty or default values are omitted from API requests. However, any
7060	// non-pointer, non-interface field appearing in ForceSendFields will be
7061	// sent to the server regardless of whether the field is empty or not.
7062	// This may be used to include empty fields in Patch requests.
7063	ForceSendFields []string `json:"-"`
7064
7065	// NullFields is a list of field names (e.g. "Carrier") to include in
7066	// API requests with the JSON null value. By default, fields with empty
7067	// values are omitted from API requests. However, any field with an
7068	// empty value appearing in NullFields will be sent to the server as
7069	// null. It is an error if a field in this list has a non-empty value.
7070	// This may be used to include null fields in Patch requests.
7071	NullFields []string `json:"-"`
7072}
7073
7074func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
7075	type NoMethod OrderLineItemShippingDetailsMethod
7076	raw := NoMethod(*s)
7077	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7078}
7079
7080type OrderMerchantProvidedAnnotation struct {
7081	// Key: Key for additional merchant provided (as key-value pairs)
7082	// annotation about the line item.
7083	Key string `json:"key,omitempty"`
7084
7085	// Value: Value for additional merchant provided (as key-value pairs)
7086	// annotation about the line item.
7087	Value string `json:"value,omitempty"`
7088
7089	// ForceSendFields is a list of field names (e.g. "Key") to
7090	// unconditionally include in API requests. By default, fields with
7091	// empty or default values are omitted from API requests. However, any
7092	// non-pointer, non-interface field appearing in ForceSendFields will be
7093	// sent to the server regardless of whether the field is empty or not.
7094	// This may be used to include empty fields in Patch requests.
7095	ForceSendFields []string `json:"-"`
7096
7097	// NullFields is a list of field names (e.g. "Key") to include in API
7098	// requests with the JSON null value. By default, fields with empty
7099	// values are omitted from API requests. However, any field with an
7100	// empty value appearing in NullFields will be sent to the server as
7101	// null. It is an error if a field in this list has a non-empty value.
7102	// This may be used to include null fields in Patch requests.
7103	NullFields []string `json:"-"`
7104}
7105
7106func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
7107	type NoMethod OrderMerchantProvidedAnnotation
7108	raw := NoMethod(*s)
7109	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7110}
7111
7112type OrderOrderAnnotation struct {
7113	// Key: Key for additional google provided (as key-value pairs)
7114	// annotation.
7115	Key string `json:"key,omitempty"`
7116
7117	// Value: Value for additional google provided (as key-value pairs)
7118	// annotation.
7119	Value string `json:"value,omitempty"`
7120
7121	// ForceSendFields is a list of field names (e.g. "Key") to
7122	// unconditionally include in API requests. By default, fields with
7123	// empty or default values are omitted from API requests. However, any
7124	// non-pointer, non-interface field appearing in ForceSendFields will be
7125	// sent to the server regardless of whether the field is empty or not.
7126	// This may be used to include empty fields in Patch requests.
7127	ForceSendFields []string `json:"-"`
7128
7129	// NullFields is a list of field names (e.g. "Key") to include in API
7130	// requests with the JSON null value. By default, fields with empty
7131	// values are omitted from API requests. However, any field with an
7132	// empty value appearing in NullFields will be sent to the server as
7133	// null. It is an error if a field in this list has a non-empty value.
7134	// This may be used to include null fields in Patch requests.
7135	NullFields []string `json:"-"`
7136}
7137
7138func (s *OrderOrderAnnotation) MarshalJSON() ([]byte, error) {
7139	type NoMethod OrderOrderAnnotation
7140	raw := NoMethod(*s)
7141	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7142}
7143
7144type OrderPickupDetails struct {
7145	// Address: Address of the pickup location where the shipment should be
7146	// sent. Note that `recipientName` in the address is the name of the
7147	// business at the pickup location.
7148	Address *OrderAddress `json:"address,omitempty"`
7149
7150	// Collectors: Collectors authorized to pick up shipment from the pickup
7151	// location.
7152	Collectors []*OrderPickupDetailsCollector `json:"collectors,omitempty"`
7153
7154	// LocationId: ID of the pickup location.
7155	LocationId string `json:"locationId,omitempty"`
7156
7157	// PickupType: The pickup type of this order. Acceptable values are: -
7158	// "merchantStore" - "merchantStoreCurbside" -
7159	// "merchantStoreLocker" - "thirdPartyPickupPoint" -
7160	// "thirdPartyLocker"
7161	PickupType string `json:"pickupType,omitempty"`
7162
7163	// ForceSendFields is a list of field names (e.g. "Address") to
7164	// unconditionally include in API requests. By default, fields with
7165	// empty or default values are omitted from API requests. However, any
7166	// non-pointer, non-interface field appearing in ForceSendFields will be
7167	// sent to the server regardless of whether the field is empty or not.
7168	// This may be used to include empty fields in Patch requests.
7169	ForceSendFields []string `json:"-"`
7170
7171	// NullFields is a list of field names (e.g. "Address") to include in
7172	// API requests with the JSON null value. By default, fields with empty
7173	// values are omitted from API requests. However, any field with an
7174	// empty value appearing in NullFields will be sent to the server as
7175	// null. It is an error if a field in this list has a non-empty value.
7176	// This may be used to include null fields in Patch requests.
7177	NullFields []string `json:"-"`
7178}
7179
7180func (s *OrderPickupDetails) MarshalJSON() ([]byte, error) {
7181	type NoMethod OrderPickupDetails
7182	raw := NoMethod(*s)
7183	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7184}
7185
7186type OrderPickupDetailsCollector struct {
7187	// Name: Name of the person picking up the shipment.
7188	Name string `json:"name,omitempty"`
7189
7190	// PhoneNumber: Phone number of the person picking up the shipment.
7191	PhoneNumber string `json:"phoneNumber,omitempty"`
7192
7193	// ForceSendFields is a list of field names (e.g. "Name") to
7194	// unconditionally include in API requests. By default, fields with
7195	// empty or default values are omitted from API requests. However, any
7196	// non-pointer, non-interface field appearing in ForceSendFields will be
7197	// sent to the server regardless of whether the field is empty or not.
7198	// This may be used to include empty fields in Patch requests.
7199	ForceSendFields []string `json:"-"`
7200
7201	// NullFields is a list of field names (e.g. "Name") to include in API
7202	// requests with the JSON null value. By default, fields with empty
7203	// values are omitted from API requests. However, any field with an
7204	// empty value appearing in NullFields will be sent to the server as
7205	// null. It is an error if a field in this list has a non-empty value.
7206	// This may be used to include null fields in Patch requests.
7207	NullFields []string `json:"-"`
7208}
7209
7210func (s *OrderPickupDetailsCollector) MarshalJSON() ([]byte, error) {
7211	type NoMethod OrderPickupDetailsCollector
7212	raw := NoMethod(*s)
7213	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7214}
7215
7216type OrderPromotion struct {
7217	// ApplicableItems: Items that this promotion may be applied to. If
7218	// empty, there are no restrictions on applicable items and quantity.
7219	// This field will also be empty for shipping promotions because
7220	// shipping is not tied to any specific item.
7221	ApplicableItems []*OrderPromotionItem `json:"applicableItems,omitempty"`
7222
7223	// AppliedItems: Items that this promotion have been applied to. Do not
7224	// provide for `orders.createtestorder`. This field will be empty for
7225	// shipping promotions because shipping is not tied to any specific
7226	// item.
7227	AppliedItems []*OrderPromotionItem `json:"appliedItems,omitempty"`
7228
7229	// EndTime: Promotion end time in ISO 8601 format. Date, time, and
7230	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
7231	// "2020-01-02T09:00:00Z".
7232	EndTime string `json:"endTime,omitempty"`
7233
7234	// Funder: Required. The party funding the promotion. Only `merchant` is
7235	// supported for `orders.createtestorder`. Acceptable values are: -
7236	// "google" - "merchant"
7237	Funder string `json:"funder,omitempty"`
7238
7239	// MerchantPromotionId: Required. This field is used to identify
7240	// promotions within merchants' own systems.
7241	MerchantPromotionId string `json:"merchantPromotionId,omitempty"`
7242
7243	// PriceValue: Estimated discount applied to price. Amount is pre-tax or
7244	// post-tax depending on location of order.
7245	PriceValue *Price `json:"priceValue,omitempty"`
7246
7247	// ShortTitle: A short title of the promotion to be shown on the
7248	// checkout page. Do not provide for `orders.createtestorder`.
7249	ShortTitle string `json:"shortTitle,omitempty"`
7250
7251	// StartTime: Promotion start time in ISO 8601 format. Date, time, and
7252	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
7253	// "2020-01-02T09:00:00Z".
7254	StartTime string `json:"startTime,omitempty"`
7255
7256	// Subtype: Required. The category of the promotion. Only `moneyOff` is
7257	// supported for `orders.createtestorder`. Acceptable values are: -
7258	// "buyMGetMoneyOff" - "buyMGetNMoneyOff" - "buyMGetNPercentOff" -
7259	// "buyMGetPercentOff" - "freeGift" - "freeGiftWithItemId" -
7260	// "freeGiftWithValue" - "freeShippingOvernight" -
7261	// "freeShippingStandard" - "freeShippingTwoDay" - "moneyOff" -
7262	// "percentOff" - "rewardPoints" - "salePrice"
7263	Subtype string `json:"subtype,omitempty"`
7264
7265	// TaxValue: Estimated discount applied to tax (if allowed by law). Do
7266	// not provide for `orders.createtestorder`.
7267	TaxValue *Price `json:"taxValue,omitempty"`
7268
7269	// Title: Required. The title of the promotion.
7270	Title string `json:"title,omitempty"`
7271
7272	// Type: Required. The scope of the promotion. Only `product` is
7273	// supported for `orders.createtestorder`. Acceptable values are: -
7274	// "product" - "shipping"
7275	Type string `json:"type,omitempty"`
7276
7277	// ForceSendFields is a list of field names (e.g. "ApplicableItems") to
7278	// unconditionally include in API requests. By default, fields with
7279	// empty or default values are omitted from API requests. However, any
7280	// non-pointer, non-interface field appearing in ForceSendFields will be
7281	// sent to the server regardless of whether the field is empty or not.
7282	// This may be used to include empty fields in Patch requests.
7283	ForceSendFields []string `json:"-"`
7284
7285	// NullFields is a list of field names (e.g. "ApplicableItems") to
7286	// include in API requests with the JSON null value. By default, fields
7287	// with empty values are omitted from API requests. However, any field
7288	// with an empty value appearing in NullFields will be sent to the
7289	// server as null. It is an error if a field in this list has a
7290	// non-empty value. This may be used to include null fields in Patch
7291	// requests.
7292	NullFields []string `json:"-"`
7293}
7294
7295func (s *OrderPromotion) MarshalJSON() ([]byte, error) {
7296	type NoMethod OrderPromotion
7297	raw := NoMethod(*s)
7298	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7299}
7300
7301type OrderPromotionItem struct {
7302	// LineItemId: The line item ID of a product. Do not provide for
7303	// `orders.createtestorder`.
7304	LineItemId string `json:"lineItemId,omitempty"`
7305
7306	// OfferId: Required. Offer ID of a product. Only for
7307	// `orders.createtestorder`.
7308	OfferId string `json:"offerId,omitempty"`
7309
7310	// ProductId: `orders.createtestorder`.
7311	ProductId string `json:"productId,omitempty"`
7312
7313	// Quantity: The quantity of the associated product. Do not provide for
7314	// `orders.createtestorder`.
7315	Quantity int64 `json:"quantity,omitempty"`
7316
7317	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7318	// unconditionally include in API requests. By default, fields with
7319	// empty or default values are omitted from API requests. However, any
7320	// non-pointer, non-interface field appearing in ForceSendFields will be
7321	// sent to the server regardless of whether the field is empty or not.
7322	// This may be used to include empty fields in Patch requests.
7323	ForceSendFields []string `json:"-"`
7324
7325	// NullFields is a list of field names (e.g. "LineItemId") to include in
7326	// API requests with the JSON null value. By default, fields with empty
7327	// values are omitted from API requests. However, any field with an
7328	// empty value appearing in NullFields will be sent to the server as
7329	// null. It is an error if a field in this list has a non-empty value.
7330	// This may be used to include null fields in Patch requests.
7331	NullFields []string `json:"-"`
7332}
7333
7334func (s *OrderPromotionItem) MarshalJSON() ([]byte, error) {
7335	type NoMethod OrderPromotionItem
7336	raw := NoMethod(*s)
7337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7338}
7339
7340type OrderRefund struct {
7341	// Actor: The actor that created the refund. Acceptable values are: -
7342	// "customer" - "googleBot" - "googleCustomerService" -
7343	// "googlePayments" - "googleSabre" - "merchant"
7344	Actor string `json:"actor,omitempty"`
7345
7346	// Amount: The amount that is refunded.
7347	Amount *Price `json:"amount,omitempty"`
7348
7349	// CreationDate: Date on which the item has been created, in ISO 8601
7350	// format.
7351	CreationDate string `json:"creationDate,omitempty"`
7352
7353	// Reason: The reason for the refund. Acceptable values are: -
7354	// "adjustment" - "autoPostInternal" -
7355	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
7356	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
7357	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
7358	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7359	// - "customerSupportRequested" - "deliveredLateByCarrier" -
7360	// "deliveredTooLate" - "expiredItem" -
7361	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
7362	// "failToPushOrderMerchantFulfillmentError" -
7363	// "failToPushOrderToMerchant" -
7364	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
7365	// "invalidCoupon" - "lateShipmentCredit" -
7366	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
7367	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
7368	// "paymentDeclined" - "priceAdjustment" - "priceError" -
7369	// "productArrivedDamaged" - "productNotAsDescribed" -
7370	// "promoReallocation" - "qualityNotAsExpected" -
7371	// "returnRefundAbuse" - "shippingCostAdjustment" -
7372	// "shippingPriceError" - "taxAdjustment" - "taxError" -
7373	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7374	// "wrongProductShipped"
7375	Reason string `json:"reason,omitempty"`
7376
7377	// ReasonText: The explanation of the reason.
7378	ReasonText string `json:"reasonText,omitempty"`
7379
7380	// ForceSendFields is a list of field names (e.g. "Actor") to
7381	// unconditionally include in API requests. By default, fields with
7382	// empty or default values are omitted from API requests. However, any
7383	// non-pointer, non-interface field appearing in ForceSendFields will be
7384	// sent to the server regardless of whether the field is empty or not.
7385	// This may be used to include empty fields in Patch requests.
7386	ForceSendFields []string `json:"-"`
7387
7388	// NullFields is a list of field names (e.g. "Actor") to include in API
7389	// requests with the JSON null value. By default, fields with empty
7390	// values are omitted from API requests. However, any field with an
7391	// empty value appearing in NullFields will be sent to the server as
7392	// null. It is an error if a field in this list has a non-empty value.
7393	// This may be used to include null fields in Patch requests.
7394	NullFields []string `json:"-"`
7395}
7396
7397func (s *OrderRefund) MarshalJSON() ([]byte, error) {
7398	type NoMethod OrderRefund
7399	raw := NoMethod(*s)
7400	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7401}
7402
7403// OrderReportDisbursement: Order disbursement. All methods require the
7404// payment analyst role.
7405type OrderReportDisbursement struct {
7406	// DisbursementAmount: The disbursement amount.
7407	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
7408
7409	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
7410	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
7411
7412	// DisbursementDate: The date the disbursement was initiated, in ISO
7413	// 8601 format.
7414	DisbursementDate string `json:"disbursementDate,omitempty"`
7415
7416	// DisbursementId: The ID of the disbursement.
7417	DisbursementId string `json:"disbursementId,omitempty"`
7418
7419	// MerchantId: The ID of the managing account.
7420	MerchantId uint64 `json:"merchantId,omitempty,string"`
7421
7422	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
7423	// to unconditionally include in API requests. By default, fields with
7424	// empty or default values are omitted from API requests. However, any
7425	// non-pointer, non-interface field appearing in ForceSendFields will be
7426	// sent to the server regardless of whether the field is empty or not.
7427	// This may be used to include empty fields in Patch requests.
7428	ForceSendFields []string `json:"-"`
7429
7430	// NullFields is a list of field names (e.g. "DisbursementAmount") to
7431	// include in API requests with the JSON null value. By default, fields
7432	// with empty values are omitted from API requests. However, any field
7433	// with an empty value appearing in NullFields will be sent to the
7434	// server as null. It is an error if a field in this list has a
7435	// non-empty value. This may be used to include null fields in Patch
7436	// requests.
7437	NullFields []string `json:"-"`
7438}
7439
7440func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
7441	type NoMethod OrderReportDisbursement
7442	raw := NoMethod(*s)
7443	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7444}
7445
7446type OrderReportTransaction struct {
7447	// DisbursementAmount: The disbursement amount.
7448	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
7449
7450	// DisbursementCreationDate: The date the disbursement was created, in
7451	// ISO 8601 format.
7452	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
7453
7454	// DisbursementDate: The date the disbursement was initiated, in ISO
7455	// 8601 format.
7456	DisbursementDate string `json:"disbursementDate,omitempty"`
7457
7458	// DisbursementId: The ID of the disbursement.
7459	DisbursementId string `json:"disbursementId,omitempty"`
7460
7461	// MerchantId: The ID of the managing account.
7462	MerchantId uint64 `json:"merchantId,omitempty,string"`
7463
7464	// MerchantOrderId: Merchant-provided ID of the order.
7465	MerchantOrderId string `json:"merchantOrderId,omitempty"`
7466
7467	// OrderId: The ID of the order.
7468	OrderId string `json:"orderId,omitempty"`
7469
7470	// ProductAmount: Total amount for the items.
7471	ProductAmount *ProductAmount `json:"productAmount,omitempty"`
7472
7473	// TransactionDate: The date of the transaction, in ISO 8601 format.
7474	TransactionDate string `json:"transactionDate,omitempty"`
7475
7476	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
7477	// to unconditionally include in API requests. By default, fields with
7478	// empty or default values are omitted from API requests. However, any
7479	// non-pointer, non-interface field appearing in ForceSendFields will be
7480	// sent to the server regardless of whether the field is empty or not.
7481	// This may be used to include empty fields in Patch requests.
7482	ForceSendFields []string `json:"-"`
7483
7484	// NullFields is a list of field names (e.g. "DisbursementAmount") to
7485	// include in API requests with the JSON null value. By default, fields
7486	// with empty values are omitted from API requests. However, any field
7487	// with an empty value appearing in NullFields will be sent to the
7488	// server as null. It is an error if a field in this list has a
7489	// non-empty value. This may be used to include null fields in Patch
7490	// requests.
7491	NullFields []string `json:"-"`
7492}
7493
7494func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
7495	type NoMethod OrderReportTransaction
7496	raw := NoMethod(*s)
7497	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7498}
7499
7500type OrderReturn struct {
7501	// Actor: The actor that created the refund. Acceptable values are: -
7502	// "customer" - "googleBot" - "googleCustomerService" -
7503	// "googlePayments" - "googleSabre" - "merchant"
7504	Actor string `json:"actor,omitempty"`
7505
7506	// CreationDate: Date on which the item has been created, in ISO 8601
7507	// format.
7508	CreationDate string `json:"creationDate,omitempty"`
7509
7510	// Quantity: Quantity that is returned.
7511	Quantity int64 `json:"quantity,omitempty"`
7512
7513	// Reason: The reason for the return. Acceptable values are: -
7514	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7515	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7516	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7517	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7518	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7519	// "wrongProductShipped"
7520	Reason string `json:"reason,omitempty"`
7521
7522	// ReasonText: The explanation of the reason.
7523	ReasonText string `json:"reasonText,omitempty"`
7524
7525	// ForceSendFields is a list of field names (e.g. "Actor") to
7526	// unconditionally include in API requests. By default, fields with
7527	// empty or default values are omitted from API requests. However, any
7528	// non-pointer, non-interface field appearing in ForceSendFields will be
7529	// sent to the server regardless of whether the field is empty or not.
7530	// This may be used to include empty fields in Patch requests.
7531	ForceSendFields []string `json:"-"`
7532
7533	// NullFields is a list of field names (e.g. "Actor") to include in API
7534	// requests with the JSON null value. By default, fields with empty
7535	// values are omitted from API requests. However, any field with an
7536	// empty value appearing in NullFields will be sent to the server as
7537	// null. It is an error if a field in this list has a non-empty value.
7538	// This may be used to include null fields in Patch requests.
7539	NullFields []string `json:"-"`
7540}
7541
7542func (s *OrderReturn) MarshalJSON() ([]byte, error) {
7543	type NoMethod OrderReturn
7544	raw := NoMethod(*s)
7545	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7546}
7547
7548type OrderShipment struct {
7549	// Carrier: The carrier handling the shipment. For supported carriers,
7550	// Google includes the carrier name and tracking URL in emails to
7551	// customers. For select supported carriers, Google also automatically
7552	// updates the shipment status based on the provided shipment ID.
7553	// *Note:* You can also use unsupported carriers, but emails to
7554	// customers will not include the carrier name or tracking URL, and
7555	// there will be no automatic order status updates. Supported carriers
7556	// for US are: - "ups" (United Parcel Service) *automatic status
7557	// updates* - "usps" (United States Postal Service) *automatic status
7558	// updates* - "fedex" (FedEx) *automatic status updates * - "dhl"
7559	// (DHL eCommerce) *automatic status updates* (US only) - "ontrac"
7560	// (OnTrac) *automatic status updates * - "dhl express" (DHL Express)
7561	// - "deliv" (Deliv) - "dynamex" (TForce) - "lasership"
7562	// (LaserShip) - "mpx" (Military Parcel Xpress) - "uds" (United
7563	// Delivery Service) - "efw" (Estes Forwarding Worldwide) - "jd
7564	// logistics" (JD Logistics) - "yunexpress" (YunExpress) - "china
7565	// post" (China Post) - "china ems" (China Post Express Mail Service)
7566	// - "singapore post" (Singapore Post) - "pos malaysia" (Pos
7567	// Malaysia) - "postnl" (PostNL) - "ptt" (PTT Turkish Post) -
7568	// "eub" (ePacket) - "chukou1" (Chukou1 Logistics) - "bestex"
7569	// (Best Express) - "canada post" (Canada Post) - "purolator"
7570	// (Purolator) - "canpar" (Canpar) - "india post" (India Post) -
7571	// "blue dart" (Blue Dart) - "delhivery" (Delhivery) - "dtdc"
7572	// (DTDC) - "tpc india" (TPC India) - "lso" (Lone Star Overnight) -
7573	// "tww" (Team Worldwide) Supported carriers for FR are: - "la
7574	// poste" (La Poste) *automatic status updates * - "colissimo"
7575	// (Colissimo by La Poste) *automatic status updates* - "ups" (United
7576	// Parcel Service) *automatic status updates * - "chronopost"
7577	// (Chronopost by La Poste) - "gls" (General Logistics Systems France)
7578	// - "dpd" (DPD Group by GeoPost) - "bpost" (Belgian Post Group) -
7579	// "colis prive" (Colis Privé) - "boxtal" (Boxtal) - "geodis"
7580	// (GEODIS) - "tnt" (TNT) - "db schenker" (DB Schenker) - "aramex"
7581	// (Aramex)
7582	Carrier string `json:"carrier,omitempty"`
7583
7584	// CreationDate: Date on which the shipment has been created, in ISO
7585	// 8601 format.
7586	CreationDate string `json:"creationDate,omitempty"`
7587
7588	// DeliveryDate: Date on which the shipment has been delivered, in ISO
7589	// 8601 format. Present only if `status` is `delivered`
7590	DeliveryDate string `json:"deliveryDate,omitempty"`
7591
7592	// Id: The ID of the shipment.
7593	Id string `json:"id,omitempty"`
7594
7595	// LineItems: The line items that are shipped.
7596	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
7597
7598	// ScheduledDeliveryDetails: Delivery details of the shipment if
7599	// scheduling is needed.
7600	ScheduledDeliveryDetails *OrderShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
7601
7602	// ShipmentGroupId: The shipment group ID of the shipment. This is set
7603	// in shiplineitems request.
7604	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7605
7606	// Status: The status of the shipment. Acceptable values are: -
7607	// "delivered" - "readyForPickup" - "shipped" - "undeliverable"
7608	Status string `json:"status,omitempty"`
7609
7610	// TrackingId: The tracking ID for the shipment.
7611	TrackingId string `json:"trackingId,omitempty"`
7612
7613	// ForceSendFields is a list of field names (e.g. "Carrier") to
7614	// unconditionally include in API requests. By default, fields with
7615	// empty or default values are omitted from API requests. However, any
7616	// non-pointer, non-interface field appearing in ForceSendFields will be
7617	// sent to the server regardless of whether the field is empty or not.
7618	// This may be used to include empty fields in Patch requests.
7619	ForceSendFields []string `json:"-"`
7620
7621	// NullFields is a list of field names (e.g. "Carrier") to include in
7622	// API requests with the JSON null value. By default, fields with empty
7623	// values are omitted from API requests. However, any field with an
7624	// empty value appearing in NullFields will be sent to the server as
7625	// null. It is an error if a field in this list has a non-empty value.
7626	// This may be used to include null fields in Patch requests.
7627	NullFields []string `json:"-"`
7628}
7629
7630func (s *OrderShipment) MarshalJSON() ([]byte, error) {
7631	type NoMethod OrderShipment
7632	raw := NoMethod(*s)
7633	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7634}
7635
7636type OrderShipmentLineItemShipment struct {
7637	// LineItemId: The ID of the line item that is shipped. This value is
7638	// assigned by Google when an order is created. Either lineItemId or
7639	// productId is required.
7640	LineItemId string `json:"lineItemId,omitempty"`
7641
7642	// ProductId: The ID of the product to ship. This is the REST ID used in
7643	// the products service. Either lineItemId or productId is required.
7644	ProductId string `json:"productId,omitempty"`
7645
7646	// Quantity: The quantity that is shipped.
7647	Quantity int64 `json:"quantity,omitempty"`
7648
7649	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7650	// unconditionally include in API requests. By default, fields with
7651	// empty or default values are omitted from API requests. However, any
7652	// non-pointer, non-interface field appearing in ForceSendFields will be
7653	// sent to the server regardless of whether the field is empty or not.
7654	// This may be used to include empty fields in Patch requests.
7655	ForceSendFields []string `json:"-"`
7656
7657	// NullFields is a list of field names (e.g. "LineItemId") to include in
7658	// API requests with the JSON null value. By default, fields with empty
7659	// values are omitted from API requests. However, any field with an
7660	// empty value appearing in NullFields will be sent to the server as
7661	// null. It is an error if a field in this list has a non-empty value.
7662	// This may be used to include null fields in Patch requests.
7663	NullFields []string `json:"-"`
7664}
7665
7666func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
7667	type NoMethod OrderShipmentLineItemShipment
7668	raw := NoMethod(*s)
7669	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7670}
7671
7672type OrderShipmentScheduledDeliveryDetails struct {
7673	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
7674	// delivery. The phone number is formatted as the international notation
7675	// in ITU-T Recommendation E.123 (e.g., "+41 44 668 1800").
7676	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
7677
7678	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
7679	// 8601 format.
7680	ScheduledDate string `json:"scheduledDate,omitempty"`
7681
7682	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
7683	// to unconditionally include in API requests. By default, fields with
7684	// empty or default values are omitted from API requests. However, any
7685	// non-pointer, non-interface field appearing in ForceSendFields will be
7686	// sent to the server regardless of whether the field is empty or not.
7687	// This may be used to include empty fields in Patch requests.
7688	ForceSendFields []string `json:"-"`
7689
7690	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
7691	// include in API requests with the JSON null value. By default, fields
7692	// with empty values are omitted from API requests. However, any field
7693	// with an empty value appearing in NullFields will be sent to the
7694	// server as null. It is an error if a field in this list has a
7695	// non-empty value. This may be used to include null fields in Patch
7696	// requests.
7697	NullFields []string `json:"-"`
7698}
7699
7700func (s *OrderShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
7701	type NoMethod OrderShipmentScheduledDeliveryDetails
7702	raw := NoMethod(*s)
7703	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7704}
7705
7706// OrderTrackingSignal: Represents a merchant trade from which signals
7707// are extracted, e.g. shipping.
7708type OrderTrackingSignal struct {
7709	// CustomerShippingFee: The shipping fee of the order; this value should
7710	// be set to zero in the case of free shipping.
7711	CustomerShippingFee *PriceAmount `json:"customerShippingFee,omitempty"`
7712
7713	// DeliveryPostalCode: Required. The delivery postal code, as a
7714	// continuous string without spaces or dashes, e.g. "95016". This field
7715	// will be anonymized in returned OrderTrackingSignal creation response.
7716	DeliveryPostalCode string `json:"deliveryPostalCode,omitempty"`
7717
7718	// DeliveryRegionCode: Required. The [CLDR territory code]
7719	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
7720	// for the shipping destination.
7721	DeliveryRegionCode string `json:"deliveryRegionCode,omitempty"`
7722
7723	// LineItems: Information about line items in the order.
7724	LineItems []*OrderTrackingSignalLineItemDetails `json:"lineItems,omitempty"`
7725
7726	// MerchantId: The Google merchant ID of this order tracking signal.
7727	// This value is optional. If left unset, the caller's merchant ID is
7728	// used. You must request access in order to provide data on behalf of
7729	// another merchant. For more information, see Submitting Order Tracking
7730	// Signals (/shopping-content/guides/order-tracking-signals).
7731	MerchantId int64 `json:"merchantId,omitempty,string"`
7732
7733	// OrderCreatedTime: Required. The time when the order was created on
7734	// the merchant side. Include the year and timezone string, if
7735	// available.
7736	OrderCreatedTime *DateTime `json:"orderCreatedTime,omitempty"`
7737
7738	// OrderId: Required. The ID of the order on the merchant side. This
7739	// field will be hashed in returned OrderTrackingSignal creation
7740	// response.
7741	OrderId string `json:"orderId,omitempty"`
7742
7743	// OrderTrackingSignalId: Output only. The ID that uniquely identifies
7744	// this order tracking signal.
7745	OrderTrackingSignalId int64 `json:"orderTrackingSignalId,omitempty,string"`
7746
7747	// ShipmentLineItemMapping: The mapping of the line items to the
7748	// shipment information.
7749	ShipmentLineItemMapping []*OrderTrackingSignalShipmentLineItemMapping `json:"shipmentLineItemMapping,omitempty"`
7750
7751	// ShippingInfo: The shipping information for the order.
7752	ShippingInfo []*OrderTrackingSignalShippingInfo `json:"shippingInfo,omitempty"`
7753
7754	// ServerResponse contains the HTTP response code and headers from the
7755	// server.
7756	googleapi.ServerResponse `json:"-"`
7757
7758	// ForceSendFields is a list of field names (e.g. "CustomerShippingFee")
7759	// to unconditionally include in API requests. By default, fields with
7760	// empty or default values are omitted from API requests. However, any
7761	// non-pointer, non-interface field appearing in ForceSendFields will be
7762	// sent to the server regardless of whether the field is empty or not.
7763	// This may be used to include empty fields in Patch requests.
7764	ForceSendFields []string `json:"-"`
7765
7766	// NullFields is a list of field names (e.g. "CustomerShippingFee") to
7767	// include in API requests with the JSON null value. By default, fields
7768	// with empty values are omitted from API requests. However, any field
7769	// with an empty value appearing in NullFields will be sent to the
7770	// server as null. It is an error if a field in this list has a
7771	// non-empty value. This may be used to include null fields in Patch
7772	// requests.
7773	NullFields []string `json:"-"`
7774}
7775
7776func (s *OrderTrackingSignal) MarshalJSON() ([]byte, error) {
7777	type NoMethod OrderTrackingSignal
7778	raw := NoMethod(*s)
7779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7780}
7781
7782// OrderTrackingSignalLineItemDetails: The line items of the order.
7783type OrderTrackingSignalLineItemDetails struct {
7784	// Gtin: The Global Trade Item Number.
7785	Gtin string `json:"gtin,omitempty"`
7786
7787	// LineItemId: Required. The ID for this line item.
7788	LineItemId string `json:"lineItemId,omitempty"`
7789
7790	// Mpn: The manufacturer part number.
7791	Mpn string `json:"mpn,omitempty"`
7792
7793	// ProductId: Required. The Content API REST ID of the product, in the
7794	// form channel:contentLanguage:targetCountry:offerId.
7795	ProductId string `json:"productId,omitempty"`
7796
7797	// Quantity: Required. The quantity of the line item in the order.
7798	Quantity int64 `json:"quantity,omitempty,string"`
7799
7800	// ForceSendFields is a list of field names (e.g. "Gtin") to
7801	// unconditionally include in API requests. By default, fields with
7802	// empty or default values are omitted from API requests. However, any
7803	// non-pointer, non-interface field appearing in ForceSendFields will be
7804	// sent to the server regardless of whether the field is empty or not.
7805	// This may be used to include empty fields in Patch requests.
7806	ForceSendFields []string `json:"-"`
7807
7808	// NullFields is a list of field names (e.g. "Gtin") to include in API
7809	// requests with the JSON null value. By default, fields with empty
7810	// values are omitted from API requests. However, any field with an
7811	// empty value appearing in NullFields will be sent to the server as
7812	// null. It is an error if a field in this list has a non-empty value.
7813	// This may be used to include null fields in Patch requests.
7814	NullFields []string `json:"-"`
7815}
7816
7817func (s *OrderTrackingSignalLineItemDetails) MarshalJSON() ([]byte, error) {
7818	type NoMethod OrderTrackingSignalLineItemDetails
7819	raw := NoMethod(*s)
7820	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7821}
7822
7823// OrderTrackingSignalShipmentLineItemMapping: Represents how many items
7824// are in the shipment for the given shipment_id and line_item_id.
7825type OrderTrackingSignalShipmentLineItemMapping struct {
7826	// LineItemId: Required. The line item ID.
7827	LineItemId string `json:"lineItemId,omitempty"`
7828
7829	// Quantity: Required. The line item quantity in the shipment.
7830	Quantity int64 `json:"quantity,omitempty,string"`
7831
7832	// ShipmentId: Required. The shipment ID. This field will be hashed in
7833	// returned OrderTrackingSignal creation response.
7834	ShipmentId string `json:"shipmentId,omitempty"`
7835
7836	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7837	// unconditionally include in API requests. By default, fields with
7838	// empty or default values are omitted from API requests. However, any
7839	// non-pointer, non-interface field appearing in ForceSendFields will be
7840	// sent to the server regardless of whether the field is empty or not.
7841	// This may be used to include empty fields in Patch requests.
7842	ForceSendFields []string `json:"-"`
7843
7844	// NullFields is a list of field names (e.g. "LineItemId") to include in
7845	// API requests with the JSON null value. By default, fields with empty
7846	// values are omitted from API requests. However, any field with an
7847	// empty value appearing in NullFields will be sent to the server as
7848	// null. It is an error if a field in this list has a non-empty value.
7849	// This may be used to include null fields in Patch requests.
7850	NullFields []string `json:"-"`
7851}
7852
7853func (s *OrderTrackingSignalShipmentLineItemMapping) MarshalJSON() ([]byte, error) {
7854	type NoMethod OrderTrackingSignalShipmentLineItemMapping
7855	raw := NoMethod(*s)
7856	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7857}
7858
7859// OrderTrackingSignalShippingInfo: The shipping information for the
7860// order.
7861type OrderTrackingSignalShippingInfo struct {
7862	// ActualDeliveryTime: The time when the shipment was actually
7863	// delivered. Include the year and timezone string, if available. This
7864	// field is required, if one of the following fields is absent:
7865	// tracking_id or carrier_name.
7866	ActualDeliveryTime *DateTime `json:"actualDeliveryTime,omitempty"`
7867
7868	// CarrierName: The name of the shipping carrier for the delivery. This
7869	// field is required if one of the following fields is absent:
7870	// earliest_delivery_promise_time, latest_delivery_promise_time, and
7871	// actual_delivery_time.
7872	CarrierName string `json:"carrierName,omitempty"`
7873
7874	// CarrierServiceName: The service type for fulfillment, e.g., GROUND,
7875	// FIRST_CLASS, etc.
7876	CarrierServiceName string `json:"carrierServiceName,omitempty"`
7877
7878	// EarliestDeliveryPromiseTime: The earliest delivery promised time.
7879	// Include the year and timezone string, if available. This field is
7880	// required, if one of the following fields is absent: tracking_id or
7881	// carrier_name.
7882	EarliestDeliveryPromiseTime *DateTime `json:"earliestDeliveryPromiseTime,omitempty"`
7883
7884	// LatestDeliveryPromiseTime: The latest delivery promised time. Include
7885	// the year and timezone string, if available. This field is required,
7886	// if one of the following fields is absent: tracking_id or
7887	// carrier_name.
7888	LatestDeliveryPromiseTime *DateTime `json:"latestDeliveryPromiseTime,omitempty"`
7889
7890	// OriginPostalCode: The origin postal code, as a continuous string
7891	// without spaces or dashes, e.g. "95016". This field will be anonymized
7892	// in returned OrderTrackingSignal creation response.
7893	OriginPostalCode string `json:"originPostalCode,omitempty"`
7894
7895	// OriginRegionCode: The [CLDR territory code]
7896	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
7897	// for the shipping origin.
7898	OriginRegionCode string `json:"originRegionCode,omitempty"`
7899
7900	// ShipmentId: Required. The shipment ID. This field will be hashed in
7901	// returned OrderTrackingSignal creation response.
7902	ShipmentId string `json:"shipmentId,omitempty"`
7903
7904	// ShippedTime: The time when the shipment was shipped. Include the year
7905	// and timezone string, if available.
7906	ShippedTime *DateTime `json:"shippedTime,omitempty"`
7907
7908	// ShippingStatus: The status of the shipment.
7909	//
7910	// Possible values:
7911	//   "SHIPPING_STATE_UNSPECIFIED" - The shipping status is not known to
7912	// merchant.
7913	//   "SHIPPED" - All items are shipped.
7914	//   "DELIVERED" - The shipment is already delivered.
7915	ShippingStatus string `json:"shippingStatus,omitempty"`
7916
7917	// TrackingId: The tracking ID of the shipment. This field is required
7918	// if one of the following fields is absent:
7919	// earliest_delivery_promise_time, latest_delivery_promise_time, and
7920	// actual_delivery_time.
7921	TrackingId string `json:"trackingId,omitempty"`
7922
7923	// ForceSendFields is a list of field names (e.g. "ActualDeliveryTime")
7924	// to unconditionally include in API requests. By default, fields with
7925	// empty or default values are omitted from API requests. However, any
7926	// non-pointer, non-interface field appearing in ForceSendFields will be
7927	// sent to the server regardless of whether the field is empty or not.
7928	// This may be used to include empty fields in Patch requests.
7929	ForceSendFields []string `json:"-"`
7930
7931	// NullFields is a list of field names (e.g. "ActualDeliveryTime") to
7932	// include in API requests with the JSON null value. By default, fields
7933	// with empty values are omitted from API requests. However, any field
7934	// with an empty value appearing in NullFields will be sent to the
7935	// server as null. It is an error if a field in this list has a
7936	// non-empty value. This may be used to include null fields in Patch
7937	// requests.
7938	NullFields []string `json:"-"`
7939}
7940
7941func (s *OrderTrackingSignalShippingInfo) MarshalJSON() ([]byte, error) {
7942	type NoMethod OrderTrackingSignalShippingInfo
7943	raw := NoMethod(*s)
7944	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7945}
7946
7947type OrderinvoicesCreateChargeInvoiceRequest struct {
7948	// InvoiceId: [required] The ID of the invoice.
7949	InvoiceId string `json:"invoiceId,omitempty"`
7950
7951	// InvoiceSummary: [required] Invoice summary.
7952	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
7953
7954	// LineItemInvoices: [required] Invoice details per line item.
7955	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
7956
7957	// OperationId: [required] The ID of the operation, unique across all
7958	// operations for a given order.
7959	OperationId string `json:"operationId,omitempty"`
7960
7961	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
7962	// by the merchant in the `shipLineItems` method and is used to group
7963	// multiple line items that have the same kind of shipping charges.
7964	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7965
7966	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
7967	// unconditionally include in API requests. By default, fields with
7968	// empty or default values are omitted from API requests. However, any
7969	// non-pointer, non-interface field appearing in ForceSendFields will be
7970	// sent to the server regardless of whether the field is empty or not.
7971	// This may be used to include empty fields in Patch requests.
7972	ForceSendFields []string `json:"-"`
7973
7974	// NullFields is a list of field names (e.g. "InvoiceId") to include in
7975	// API requests with the JSON null value. By default, fields with empty
7976	// values are omitted from API requests. However, any field with an
7977	// empty value appearing in NullFields will be sent to the server as
7978	// null. It is an error if a field in this list has a non-empty value.
7979	// This may be used to include null fields in Patch requests.
7980	NullFields []string `json:"-"`
7981}
7982
7983func (s *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
7984	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
7985	raw := NoMethod(*s)
7986	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7987}
7988
7989type OrderinvoicesCreateChargeInvoiceResponse struct {
7990	// ExecutionStatus: The status of the execution. Acceptable values are:
7991	// - "duplicate" - "executed"
7992	ExecutionStatus string `json:"executionStatus,omitempty"`
7993
7994	// Kind: Identifies what kind of resource this is. Value: the fixed
7995	// string "content#orderinvoicesCreateChargeInvoiceResponse".
7996	Kind string `json:"kind,omitempty"`
7997
7998	// ServerResponse contains the HTTP response code and headers from the
7999	// server.
8000	googleapi.ServerResponse `json:"-"`
8001
8002	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8003	// unconditionally include in API requests. By default, fields with
8004	// empty or default values are omitted from API requests. However, any
8005	// non-pointer, non-interface field appearing in ForceSendFields will be
8006	// sent to the server regardless of whether the field is empty or not.
8007	// This may be used to include empty fields in Patch requests.
8008	ForceSendFields []string `json:"-"`
8009
8010	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8011	// include in API requests with the JSON null value. By default, fields
8012	// with empty values are omitted from API requests. However, any field
8013	// with an empty value appearing in NullFields will be sent to the
8014	// server as null. It is an error if a field in this list has a
8015	// non-empty value. This may be used to include null fields in Patch
8016	// requests.
8017	NullFields []string `json:"-"`
8018}
8019
8020func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
8021	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
8022	raw := NoMethod(*s)
8023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8024}
8025
8026type OrderinvoicesCreateRefundInvoiceRequest struct {
8027	// InvoiceId: [required] The ID of the invoice.
8028	InvoiceId string `json:"invoiceId,omitempty"`
8029
8030	// OperationId: [required] The ID of the operation, unique across all
8031	// operations for a given order.
8032	OperationId string `json:"operationId,omitempty"`
8033
8034	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
8035	// of `refundOnlyOption` or `returnOption` must be provided.
8036	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
8037
8038	// ReturnOption: Option to create an invoice for a refund and mark all
8039	// items within the invoice as returned. Exactly one of
8040	// `refundOnlyOption` or `returnOption` must be provided.
8041	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
8042
8043	// ShipmentInvoices: Invoice details for different shipment groups.
8044	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
8045
8046	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
8047	// unconditionally include in API requests. By default, fields with
8048	// empty or default values are omitted from API requests. However, any
8049	// non-pointer, non-interface field appearing in ForceSendFields will be
8050	// sent to the server regardless of whether the field is empty or not.
8051	// This may be used to include empty fields in Patch requests.
8052	ForceSendFields []string `json:"-"`
8053
8054	// NullFields is a list of field names (e.g. "InvoiceId") to include in
8055	// API requests with the JSON null value. By default, fields with empty
8056	// values are omitted from API requests. However, any field with an
8057	// empty value appearing in NullFields will be sent to the server as
8058	// null. It is an error if a field in this list has a non-empty value.
8059	// This may be used to include null fields in Patch requests.
8060	NullFields []string `json:"-"`
8061}
8062
8063func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
8064	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
8065	raw := NoMethod(*s)
8066	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8067}
8068
8069type OrderinvoicesCreateRefundInvoiceResponse struct {
8070	// ExecutionStatus: The status of the execution. Acceptable values are:
8071	// - "duplicate" - "executed"
8072	ExecutionStatus string `json:"executionStatus,omitempty"`
8073
8074	// Kind: Identifies what kind of resource this is. Value: the fixed
8075	// string "content#orderinvoicesCreateRefundInvoiceResponse".
8076	Kind string `json:"kind,omitempty"`
8077
8078	// ServerResponse contains the HTTP response code and headers from the
8079	// server.
8080	googleapi.ServerResponse `json:"-"`
8081
8082	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8083	// unconditionally include in API requests. By default, fields with
8084	// empty or default values are omitted from API requests. However, any
8085	// non-pointer, non-interface field appearing in ForceSendFields will be
8086	// sent to the server regardless of whether the field is empty or not.
8087	// This may be used to include empty fields in Patch requests.
8088	ForceSendFields []string `json:"-"`
8089
8090	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8091	// include in API requests with the JSON null value. By default, fields
8092	// with empty values are omitted from API requests. However, any field
8093	// with an empty value appearing in NullFields will be sent to the
8094	// server as null. It is an error if a field in this list has a
8095	// non-empty value. This may be used to include null fields in Patch
8096	// requests.
8097	NullFields []string `json:"-"`
8098}
8099
8100func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
8101	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
8102	raw := NoMethod(*s)
8103	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8104}
8105
8106type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
8107	// Description: Optional description of the refund reason.
8108	Description string `json:"description,omitempty"`
8109
8110	// Reason: [required] Reason for the refund. Acceptable values are: -
8111	// "adjustment" - "autoPostInternal" -
8112	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
8113	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
8114	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
8115	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8116	// - "customerSupportRequested" - "deliveredLateByCarrier" -
8117	// "deliveredTooLate" - "expiredItem" -
8118	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
8119	// "failToPushOrderMerchantFulfillmentError" -
8120	// "failToPushOrderToMerchant" -
8121	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
8122	// "invalidCoupon" - "lateShipmentCredit" -
8123	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
8124	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
8125	// "paymentDeclined" - "priceAdjustment" - "priceError" -
8126	// "productArrivedDamaged" - "productNotAsDescribed" -
8127	// "promoReallocation" - "qualityNotAsExpected" -
8128	// "returnRefundAbuse" - "shippingCostAdjustment" -
8129	// "shippingPriceError" - "taxAdjustment" - "taxError" -
8130	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8131	// "wrongProductShipped"
8132	Reason string `json:"reason,omitempty"`
8133
8134	// ForceSendFields is a list of field names (e.g. "Description") to
8135	// unconditionally include in API requests. By default, fields with
8136	// empty or default values are omitted from API requests. However, any
8137	// non-pointer, non-interface field appearing in ForceSendFields will be
8138	// sent to the server regardless of whether the field is empty or not.
8139	// This may be used to include empty fields in Patch requests.
8140	ForceSendFields []string `json:"-"`
8141
8142	// NullFields is a list of field names (e.g. "Description") to include
8143	// in API requests with the JSON null value. By default, fields with
8144	// empty values are omitted from API requests. However, any field with
8145	// an empty value appearing in NullFields will be sent to the server as
8146	// null. It is an error if a field in this list has a non-empty value.
8147	// This may be used to include null fields in Patch requests.
8148	NullFields []string `json:"-"`
8149}
8150
8151func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
8152	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
8153	raw := NoMethod(*s)
8154	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8155}
8156
8157type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
8158	// Description: Optional description of the return reason.
8159	Description string `json:"description,omitempty"`
8160
8161	// Reason: [required] Reason for the return. Acceptable values are: -
8162	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8163	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
8164	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
8165	// - "productNotAsDescribed" - "qualityNotAsExpected" -
8166	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8167	// "wrongProductShipped"
8168	Reason string `json:"reason,omitempty"`
8169
8170	// ForceSendFields is a list of field names (e.g. "Description") to
8171	// unconditionally include in API requests. By default, fields with
8172	// empty or default values are omitted from API requests. However, any
8173	// non-pointer, non-interface field appearing in ForceSendFields will be
8174	// sent to the server regardless of whether the field is empty or not.
8175	// This may be used to include empty fields in Patch requests.
8176	ForceSendFields []string `json:"-"`
8177
8178	// NullFields is a list of field names (e.g. "Description") to include
8179	// in API requests with the JSON null value. By default, fields with
8180	// empty values are omitted from API requests. However, any field with
8181	// an empty value appearing in NullFields will be sent to the server as
8182	// null. It is an error if a field in this list has a non-empty value.
8183	// This may be used to include null fields in Patch requests.
8184	NullFields []string `json:"-"`
8185}
8186
8187func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
8188	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
8189	raw := NoMethod(*s)
8190	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8191}
8192
8193type OrderreportsListDisbursementsResponse struct {
8194	// Disbursements: The list of disbursements.
8195	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
8196
8197	// Kind: Identifies what kind of resource this is. Value: the fixed
8198	// string "content#orderreportsListDisbursementsResponse".
8199	Kind string `json:"kind,omitempty"`
8200
8201	// NextPageToken: The token for the retrieval of the next page of
8202	// disbursements.
8203	NextPageToken string `json:"nextPageToken,omitempty"`
8204
8205	// ServerResponse contains the HTTP response code and headers from the
8206	// server.
8207	googleapi.ServerResponse `json:"-"`
8208
8209	// ForceSendFields is a list of field names (e.g. "Disbursements") to
8210	// unconditionally include in API requests. By default, fields with
8211	// empty or default values are omitted from API requests. However, any
8212	// non-pointer, non-interface field appearing in ForceSendFields will be
8213	// sent to the server regardless of whether the field is empty or not.
8214	// This may be used to include empty fields in Patch requests.
8215	ForceSendFields []string `json:"-"`
8216
8217	// NullFields is a list of field names (e.g. "Disbursements") to include
8218	// in API requests with the JSON null value. By default, fields with
8219	// empty values are omitted from API requests. However, any field with
8220	// an empty value appearing in NullFields will be sent to the server as
8221	// null. It is an error if a field in this list has a non-empty value.
8222	// This may be used to include null fields in Patch requests.
8223	NullFields []string `json:"-"`
8224}
8225
8226func (s *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
8227	type NoMethod OrderreportsListDisbursementsResponse
8228	raw := NoMethod(*s)
8229	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8230}
8231
8232type OrderreportsListTransactionsResponse struct {
8233	// Kind: Identifies what kind of resource this is. Value: the fixed
8234	// string "content#orderreportsListTransactionsResponse".
8235	Kind string `json:"kind,omitempty"`
8236
8237	// NextPageToken: The token for the retrieval of the next page of
8238	// transactions.
8239	NextPageToken string `json:"nextPageToken,omitempty"`
8240
8241	// Transactions: The list of transactions.
8242	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
8243
8244	// ServerResponse contains the HTTP response code and headers from the
8245	// server.
8246	googleapi.ServerResponse `json:"-"`
8247
8248	// ForceSendFields is a list of field names (e.g. "Kind") to
8249	// unconditionally include in API requests. By default, fields with
8250	// empty or default values are omitted from API requests. However, any
8251	// non-pointer, non-interface field appearing in ForceSendFields will be
8252	// sent to the server regardless of whether the field is empty or not.
8253	// This may be used to include empty fields in Patch requests.
8254	ForceSendFields []string `json:"-"`
8255
8256	// NullFields is a list of field names (e.g. "Kind") to include in API
8257	// requests with the JSON null value. By default, fields with empty
8258	// values are omitted from API requests. However, any field with an
8259	// empty value appearing in NullFields will be sent to the server as
8260	// null. It is an error if a field in this list has a non-empty value.
8261	// This may be used to include null fields in Patch requests.
8262	NullFields []string `json:"-"`
8263}
8264
8265func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
8266	type NoMethod OrderreportsListTransactionsResponse
8267	raw := NoMethod(*s)
8268	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8269}
8270
8271type OrderreturnsAcknowledgeRequest struct {
8272	// OperationId: [required] The ID of the operation, unique across all
8273	// operations for a given order return.
8274	OperationId string `json:"operationId,omitempty"`
8275
8276	// ForceSendFields is a list of field names (e.g. "OperationId") to
8277	// unconditionally include in API requests. By default, fields with
8278	// empty or default values are omitted from API requests. However, any
8279	// non-pointer, non-interface field appearing in ForceSendFields will be
8280	// sent to the server regardless of whether the field is empty or not.
8281	// This may be used to include empty fields in Patch requests.
8282	ForceSendFields []string `json:"-"`
8283
8284	// NullFields is a list of field names (e.g. "OperationId") to include
8285	// in API requests with the JSON null value. By default, fields with
8286	// empty values are omitted from API requests. However, any field with
8287	// an empty value appearing in NullFields will be sent to the server as
8288	// null. It is an error if a field in this list has a non-empty value.
8289	// This may be used to include null fields in Patch requests.
8290	NullFields []string `json:"-"`
8291}
8292
8293func (s *OrderreturnsAcknowledgeRequest) MarshalJSON() ([]byte, error) {
8294	type NoMethod OrderreturnsAcknowledgeRequest
8295	raw := NoMethod(*s)
8296	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8297}
8298
8299type OrderreturnsAcknowledgeResponse struct {
8300	// ExecutionStatus: The status of the execution. Acceptable values are:
8301	// - "duplicate" - "executed"
8302	ExecutionStatus string `json:"executionStatus,omitempty"`
8303
8304	// Kind: Identifies what kind of resource this is. Value: the fixed
8305	// string "content#orderreturnsAcknowledgeResponse".
8306	Kind string `json:"kind,omitempty"`
8307
8308	// ServerResponse contains the HTTP response code and headers from the
8309	// server.
8310	googleapi.ServerResponse `json:"-"`
8311
8312	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8313	// unconditionally include in API requests. By default, fields with
8314	// empty or default values are omitted from API requests. However, any
8315	// non-pointer, non-interface field appearing in ForceSendFields will be
8316	// sent to the server regardless of whether the field is empty or not.
8317	// This may be used to include empty fields in Patch requests.
8318	ForceSendFields []string `json:"-"`
8319
8320	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8321	// include in API requests with the JSON null value. By default, fields
8322	// with empty values are omitted from API requests. However, any field
8323	// with an empty value appearing in NullFields will be sent to the
8324	// server as null. It is an error if a field in this list has a
8325	// non-empty value. This may be used to include null fields in Patch
8326	// requests.
8327	NullFields []string `json:"-"`
8328}
8329
8330func (s *OrderreturnsAcknowledgeResponse) MarshalJSON() ([]byte, error) {
8331	type NoMethod OrderreturnsAcknowledgeResponse
8332	raw := NoMethod(*s)
8333	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8334}
8335
8336type OrderreturnsCreateOrderReturnRequest struct {
8337	// LineItems: The list of line items to return.
8338	LineItems []*OrderreturnsLineItem `json:"lineItems,omitempty"`
8339
8340	// OperationId: The ID of the operation. Unique across all operations
8341	// for a given order.
8342	OperationId string `json:"operationId,omitempty"`
8343
8344	// OrderId: The ID of the order.
8345	OrderId string `json:"orderId,omitempty"`
8346
8347	// ReturnMethodType: The way of the package being returned.
8348	ReturnMethodType string `json:"returnMethodType,omitempty"`
8349
8350	// ForceSendFields is a list of field names (e.g. "LineItems") to
8351	// unconditionally include in API requests. By default, fields with
8352	// empty or default values are omitted from API requests. However, any
8353	// non-pointer, non-interface field appearing in ForceSendFields will be
8354	// sent to the server regardless of whether the field is empty or not.
8355	// This may be used to include empty fields in Patch requests.
8356	ForceSendFields []string `json:"-"`
8357
8358	// NullFields is a list of field names (e.g. "LineItems") to include in
8359	// API requests with the JSON null value. By default, fields with empty
8360	// values are omitted from API requests. However, any field with an
8361	// empty value appearing in NullFields will be sent to the server as
8362	// null. It is an error if a field in this list has a non-empty value.
8363	// This may be used to include null fields in Patch requests.
8364	NullFields []string `json:"-"`
8365}
8366
8367func (s *OrderreturnsCreateOrderReturnRequest) MarshalJSON() ([]byte, error) {
8368	type NoMethod OrderreturnsCreateOrderReturnRequest
8369	raw := NoMethod(*s)
8370	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8371}
8372
8373type OrderreturnsCreateOrderReturnResponse struct {
8374	// ExecutionStatus: The status of the execution. Acceptable values are:
8375	// - "duplicate" - "executed"
8376	ExecutionStatus string `json:"executionStatus,omitempty"`
8377
8378	// Kind: Identifies what kind of resource this is. Value: the fixed
8379	// string "content#orderreturnsCreateOrderReturnResponse".
8380	Kind string `json:"kind,omitempty"`
8381
8382	// OrderReturn: Created order return.
8383	OrderReturn *MerchantOrderReturn `json:"orderReturn,omitempty"`
8384
8385	// ServerResponse contains the HTTP response code and headers from the
8386	// server.
8387	googleapi.ServerResponse `json:"-"`
8388
8389	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8390	// unconditionally include in API requests. By default, fields with
8391	// empty or default values are omitted from API requests. However, any
8392	// non-pointer, non-interface field appearing in ForceSendFields will be
8393	// sent to the server regardless of whether the field is empty or not.
8394	// This may be used to include empty fields in Patch requests.
8395	ForceSendFields []string `json:"-"`
8396
8397	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8398	// include in API requests with the JSON null value. By default, fields
8399	// with empty values are omitted from API requests. However, any field
8400	// with an empty value appearing in NullFields will be sent to the
8401	// server as null. It is an error if a field in this list has a
8402	// non-empty value. This may be used to include null fields in Patch
8403	// requests.
8404	NullFields []string `json:"-"`
8405}
8406
8407func (s *OrderreturnsCreateOrderReturnResponse) MarshalJSON() ([]byte, error) {
8408	type NoMethod OrderreturnsCreateOrderReturnResponse
8409	raw := NoMethod(*s)
8410	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8411}
8412
8413type OrderreturnsLineItem struct {
8414	// LineItemId: The ID of the line item. This value is assigned by Google
8415	// when an order is created. Either lineItemId or productId is required.
8416	LineItemId string `json:"lineItemId,omitempty"`
8417
8418	// ProductId: The ID of the product to cancel. This is the REST ID used
8419	// in the products service. Either lineItemId or productId is required.
8420	ProductId string `json:"productId,omitempty"`
8421
8422	// Quantity: The quantity of this line item.
8423	Quantity int64 `json:"quantity,omitempty"`
8424
8425	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8426	// unconditionally include in API requests. By default, fields with
8427	// empty or default values are omitted from API requests. However, any
8428	// non-pointer, non-interface field appearing in ForceSendFields will be
8429	// sent to the server regardless of whether the field is empty or not.
8430	// This may be used to include empty fields in Patch requests.
8431	ForceSendFields []string `json:"-"`
8432
8433	// NullFields is a list of field names (e.g. "LineItemId") to include in
8434	// API requests with the JSON null value. By default, fields with empty
8435	// values are omitted from API requests. However, any field with an
8436	// empty value appearing in NullFields will be sent to the server as
8437	// null. It is an error if a field in this list has a non-empty value.
8438	// This may be used to include null fields in Patch requests.
8439	NullFields []string `json:"-"`
8440}
8441
8442func (s *OrderreturnsLineItem) MarshalJSON() ([]byte, error) {
8443	type NoMethod OrderreturnsLineItem
8444	raw := NoMethod(*s)
8445	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8446}
8447
8448type OrderreturnsListResponse struct {
8449	// Kind: Identifies what kind of resource this is. Value: the fixed
8450	// string "content#orderreturnsListResponse".
8451	Kind string `json:"kind,omitempty"`
8452
8453	// NextPageToken: The token for the retrieval of the next page of
8454	// returns.
8455	NextPageToken string `json:"nextPageToken,omitempty"`
8456
8457	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
8458
8459	// ServerResponse contains the HTTP response code and headers from the
8460	// server.
8461	googleapi.ServerResponse `json:"-"`
8462
8463	// ForceSendFields is a list of field names (e.g. "Kind") to
8464	// unconditionally include in API requests. By default, fields with
8465	// empty or default values are omitted from API requests. However, any
8466	// non-pointer, non-interface field appearing in ForceSendFields will be
8467	// sent to the server regardless of whether the field is empty or not.
8468	// This may be used to include empty fields in Patch requests.
8469	ForceSendFields []string `json:"-"`
8470
8471	// NullFields is a list of field names (e.g. "Kind") to include in API
8472	// requests with the JSON null value. By default, fields with empty
8473	// values are omitted from API requests. However, any field with an
8474	// empty value appearing in NullFields will be sent to the server as
8475	// null. It is an error if a field in this list has a non-empty value.
8476	// This may be used to include null fields in Patch requests.
8477	NullFields []string `json:"-"`
8478}
8479
8480func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
8481	type NoMethod OrderreturnsListResponse
8482	raw := NoMethod(*s)
8483	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8484}
8485
8486type OrderreturnsPartialRefund struct {
8487	// PriceAmount: The pre-tax or post-tax amount to be refunded, depending
8488	// on the location of the order.
8489	PriceAmount *Price `json:"priceAmount,omitempty"`
8490
8491	// TaxAmount: Tax amount to be refunded. Note: This has different
8492	// meaning depending on the location of the order.
8493	TaxAmount *Price `json:"taxAmount,omitempty"`
8494
8495	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
8496	// unconditionally include in API requests. By default, fields with
8497	// empty or default values are omitted from API requests. However, any
8498	// non-pointer, non-interface field appearing in ForceSendFields will be
8499	// sent to the server regardless of whether the field is empty or not.
8500	// This may be used to include empty fields in Patch requests.
8501	ForceSendFields []string `json:"-"`
8502
8503	// NullFields is a list of field names (e.g. "PriceAmount") to include
8504	// in API requests with the JSON null value. By default, fields with
8505	// empty values are omitted from API requests. However, any field with
8506	// an empty value appearing in NullFields will be sent to the server as
8507	// null. It is an error if a field in this list has a non-empty value.
8508	// This may be used to include null fields in Patch requests.
8509	NullFields []string `json:"-"`
8510}
8511
8512func (s *OrderreturnsPartialRefund) MarshalJSON() ([]byte, error) {
8513	type NoMethod OrderreturnsPartialRefund
8514	raw := NoMethod(*s)
8515	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8516}
8517
8518type OrderreturnsProcessRequest struct {
8519	// FullChargeReturnShippingCost: Option to charge the customer return
8520	// shipping cost.
8521	FullChargeReturnShippingCost bool `json:"fullChargeReturnShippingCost,omitempty"`
8522
8523	// OperationId: [required] The ID of the operation, unique across all
8524	// operations for a given order return.
8525	OperationId string `json:"operationId,omitempty"`
8526
8527	// RefundShippingFee: Refunds for original shipping fee.
8528	RefundShippingFee *OrderreturnsRefundOperation `json:"refundShippingFee,omitempty"`
8529
8530	// ReturnItems: The list of items to return.
8531	ReturnItems []*OrderreturnsReturnItem `json:"returnItems,omitempty"`
8532
8533	// ForceSendFields is a list of field names (e.g.
8534	// "FullChargeReturnShippingCost") to unconditionally include in API
8535	// requests. By default, fields with empty or default values are omitted
8536	// from API requests. However, any non-pointer, non-interface field
8537	// appearing in ForceSendFields will be sent to the server regardless of
8538	// whether the field is empty or not. This may be used to include empty
8539	// fields in Patch requests.
8540	ForceSendFields []string `json:"-"`
8541
8542	// NullFields is a list of field names (e.g.
8543	// "FullChargeReturnShippingCost") to include in API requests with the
8544	// JSON null value. By default, fields with empty values are omitted
8545	// from API requests. However, any field with an empty value appearing
8546	// in NullFields will be sent to the server as null. It is an error if a
8547	// field in this list has a non-empty value. This may be used to include
8548	// null fields in Patch requests.
8549	NullFields []string `json:"-"`
8550}
8551
8552func (s *OrderreturnsProcessRequest) MarshalJSON() ([]byte, error) {
8553	type NoMethod OrderreturnsProcessRequest
8554	raw := NoMethod(*s)
8555	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8556}
8557
8558type OrderreturnsProcessResponse struct {
8559	// ExecutionStatus: The status of the execution. Acceptable values are:
8560	// - "duplicate" - "executed"
8561	ExecutionStatus string `json:"executionStatus,omitempty"`
8562
8563	// Kind: Identifies what kind of resource this is. Value: the fixed
8564	// string "content#orderreturnsProcessResponse".
8565	Kind string `json:"kind,omitempty"`
8566
8567	// ServerResponse contains the HTTP response code and headers from the
8568	// server.
8569	googleapi.ServerResponse `json:"-"`
8570
8571	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8572	// unconditionally include in API requests. By default, fields with
8573	// empty or default values are omitted from API requests. However, any
8574	// non-pointer, non-interface field appearing in ForceSendFields will be
8575	// sent to the server regardless of whether the field is empty or not.
8576	// This may be used to include empty fields in Patch requests.
8577	ForceSendFields []string `json:"-"`
8578
8579	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8580	// include in API requests with the JSON null value. By default, fields
8581	// with empty values are omitted from API requests. However, any field
8582	// with an empty value appearing in NullFields will be sent to the
8583	// server as null. It is an error if a field in this list has a
8584	// non-empty value. This may be used to include null fields in Patch
8585	// requests.
8586	NullFields []string `json:"-"`
8587}
8588
8589func (s *OrderreturnsProcessResponse) MarshalJSON() ([]byte, error) {
8590	type NoMethod OrderreturnsProcessResponse
8591	raw := NoMethod(*s)
8592	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8593}
8594
8595type OrderreturnsRefundOperation struct {
8596	// FullRefund: If true, the item will be fully refunded. Allowed only
8597	// when payment_type is FOP. Merchant can choose this refund option to
8598	// indicate the full remaining amount of corresponding object to be
8599	// refunded to the customer via FOP.
8600	FullRefund bool `json:"fullRefund,omitempty"`
8601
8602	// PartialRefund: If this is set, the item will be partially refunded.
8603	// Merchant can choose this refund option to specify the customized
8604	// amount that to be refunded to the customer.
8605	PartialRefund *OrderreturnsPartialRefund `json:"partialRefund,omitempty"`
8606
8607	// PaymentType: The payment way of issuing refund. Default value is
8608	// ORIGINAL_FOP if not set.
8609	PaymentType string `json:"paymentType,omitempty"`
8610
8611	// ReasonText: The explanation of the reason.
8612	ReasonText string `json:"reasonText,omitempty"`
8613
8614	// ReturnRefundReason: Code of the refund reason.
8615	ReturnRefundReason string `json:"returnRefundReason,omitempty"`
8616
8617	// ForceSendFields is a list of field names (e.g. "FullRefund") to
8618	// unconditionally include in API requests. By default, fields with
8619	// empty or default values are omitted from API requests. However, any
8620	// non-pointer, non-interface field appearing in ForceSendFields will be
8621	// sent to the server regardless of whether the field is empty or not.
8622	// This may be used to include empty fields in Patch requests.
8623	ForceSendFields []string `json:"-"`
8624
8625	// NullFields is a list of field names (e.g. "FullRefund") to include in
8626	// API requests with the JSON null value. By default, fields with empty
8627	// values are omitted from API requests. However, any field with an
8628	// empty value appearing in NullFields will be sent to the server as
8629	// null. It is an error if a field in this list has a non-empty value.
8630	// This may be used to include null fields in Patch requests.
8631	NullFields []string `json:"-"`
8632}
8633
8634func (s *OrderreturnsRefundOperation) MarshalJSON() ([]byte, error) {
8635	type NoMethod OrderreturnsRefundOperation
8636	raw := NoMethod(*s)
8637	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8638}
8639
8640type OrderreturnsRejectOperation struct {
8641	// Reason: The reason for the return.
8642	Reason string `json:"reason,omitempty"`
8643
8644	// ReasonText: The explanation of the reason.
8645	ReasonText string `json:"reasonText,omitempty"`
8646
8647	// ForceSendFields is a list of field names (e.g. "Reason") to
8648	// unconditionally include in API requests. By default, fields with
8649	// empty or default values are omitted from API requests. However, any
8650	// non-pointer, non-interface field appearing in ForceSendFields will be
8651	// sent to the server regardless of whether the field is empty or not.
8652	// This may be used to include empty fields in Patch requests.
8653	ForceSendFields []string `json:"-"`
8654
8655	// NullFields is a list of field names (e.g. "Reason") to include in API
8656	// requests with the JSON null value. By default, fields with empty
8657	// values are omitted from API requests. However, any field with an
8658	// empty value appearing in NullFields will be sent to the server as
8659	// null. It is an error if a field in this list has a non-empty value.
8660	// This may be used to include null fields in Patch requests.
8661	NullFields []string `json:"-"`
8662}
8663
8664func (s *OrderreturnsRejectOperation) MarshalJSON() ([]byte, error) {
8665	type NoMethod OrderreturnsRejectOperation
8666	raw := NoMethod(*s)
8667	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8668}
8669
8670type OrderreturnsReturnItem struct {
8671	// Refund: Refunds the item.
8672	Refund *OrderreturnsRefundOperation `json:"refund,omitempty"`
8673
8674	// Reject: Rejects the item.
8675	Reject *OrderreturnsRejectOperation `json:"reject,omitempty"`
8676
8677	// ReturnItemId: Unit level ID for the return item. Different units of
8678	// the same product will have different IDs.
8679	ReturnItemId string `json:"returnItemId,omitempty"`
8680
8681	// ForceSendFields is a list of field names (e.g. "Refund") to
8682	// unconditionally include in API requests. By default, fields with
8683	// empty or default values are omitted from API requests. However, any
8684	// non-pointer, non-interface field appearing in ForceSendFields will be
8685	// sent to the server regardless of whether the field is empty or not.
8686	// This may be used to include empty fields in Patch requests.
8687	ForceSendFields []string `json:"-"`
8688
8689	// NullFields is a list of field names (e.g. "Refund") to include in API
8690	// requests with the JSON null value. By default, fields with empty
8691	// values are omitted from API requests. However, any field with an
8692	// empty value appearing in NullFields will be sent to the server as
8693	// null. It is an error if a field in this list has a non-empty value.
8694	// This may be used to include null fields in Patch requests.
8695	NullFields []string `json:"-"`
8696}
8697
8698func (s *OrderreturnsReturnItem) MarshalJSON() ([]byte, error) {
8699	type NoMethod OrderreturnsReturnItem
8700	raw := NoMethod(*s)
8701	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8702}
8703
8704type OrdersAcknowledgeRequest struct {
8705	// OperationId: The ID of the operation. Unique across all operations
8706	// for a given order.
8707	OperationId string `json:"operationId,omitempty"`
8708
8709	// ForceSendFields is a list of field names (e.g. "OperationId") to
8710	// unconditionally include in API requests. By default, fields with
8711	// empty or default values are omitted from API requests. However, any
8712	// non-pointer, non-interface field appearing in ForceSendFields will be
8713	// sent to the server regardless of whether the field is empty or not.
8714	// This may be used to include empty fields in Patch requests.
8715	ForceSendFields []string `json:"-"`
8716
8717	// NullFields is a list of field names (e.g. "OperationId") to include
8718	// in API requests with the JSON null value. By default, fields with
8719	// empty values are omitted from API requests. However, any field with
8720	// an empty value appearing in NullFields will be sent to the server as
8721	// null. It is an error if a field in this list has a non-empty value.
8722	// This may be used to include null fields in Patch requests.
8723	NullFields []string `json:"-"`
8724}
8725
8726func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
8727	type NoMethod OrdersAcknowledgeRequest
8728	raw := NoMethod(*s)
8729	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8730}
8731
8732type OrdersAcknowledgeResponse struct {
8733	// ExecutionStatus: The status of the execution. Acceptable values are:
8734	// - "duplicate" - "executed"
8735	ExecutionStatus string `json:"executionStatus,omitempty"`
8736
8737	// Kind: Identifies what kind of resource this is. Value: the fixed
8738	// string "content#ordersAcknowledgeResponse".
8739	Kind string `json:"kind,omitempty"`
8740
8741	// ServerResponse contains the HTTP response code and headers from the
8742	// server.
8743	googleapi.ServerResponse `json:"-"`
8744
8745	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8746	// unconditionally include in API requests. By default, fields with
8747	// empty or default values are omitted from API requests. However, any
8748	// non-pointer, non-interface field appearing in ForceSendFields will be
8749	// sent to the server regardless of whether the field is empty or not.
8750	// This may be used to include empty fields in Patch requests.
8751	ForceSendFields []string `json:"-"`
8752
8753	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8754	// include in API requests with the JSON null value. By default, fields
8755	// with empty values are omitted from API requests. However, any field
8756	// with an empty value appearing in NullFields will be sent to the
8757	// server as null. It is an error if a field in this list has a
8758	// non-empty value. This may be used to include null fields in Patch
8759	// requests.
8760	NullFields []string `json:"-"`
8761}
8762
8763func (s *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
8764	type NoMethod OrdersAcknowledgeResponse
8765	raw := NoMethod(*s)
8766	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8767}
8768
8769type OrdersAdvanceTestOrderResponse struct {
8770	// Kind: Identifies what kind of resource this is. Value: the fixed
8771	// string "content#ordersAdvanceTestOrderResponse".
8772	Kind string `json:"kind,omitempty"`
8773
8774	// ServerResponse contains the HTTP response code and headers from the
8775	// server.
8776	googleapi.ServerResponse `json:"-"`
8777
8778	// ForceSendFields is a list of field names (e.g. "Kind") to
8779	// unconditionally include in API requests. By default, fields with
8780	// empty or default values are omitted from API requests. However, any
8781	// non-pointer, non-interface field appearing in ForceSendFields will be
8782	// sent to the server regardless of whether the field is empty or not.
8783	// This may be used to include empty fields in Patch requests.
8784	ForceSendFields []string `json:"-"`
8785
8786	// NullFields is a list of field names (e.g. "Kind") to include in API
8787	// requests with the JSON null value. By default, fields with empty
8788	// values are omitted from API requests. However, any field with an
8789	// empty value appearing in NullFields will be sent to the server as
8790	// null. It is an error if a field in this list has a non-empty value.
8791	// This may be used to include null fields in Patch requests.
8792	NullFields []string `json:"-"`
8793}
8794
8795func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
8796	type NoMethod OrdersAdvanceTestOrderResponse
8797	raw := NoMethod(*s)
8798	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8799}
8800
8801type OrdersCancelLineItemRequest struct {
8802	// LineItemId: The ID of the line item to cancel. Either lineItemId or
8803	// productId is required.
8804	LineItemId string `json:"lineItemId,omitempty"`
8805
8806	// OperationId: The ID of the operation. Unique across all operations
8807	// for a given order.
8808	OperationId string `json:"operationId,omitempty"`
8809
8810	// ProductId: The ID of the product to cancel. This is the REST ID used
8811	// in the products service. Either lineItemId or productId is required.
8812	ProductId string `json:"productId,omitempty"`
8813
8814	// Quantity: The quantity to cancel.
8815	Quantity int64 `json:"quantity,omitempty"`
8816
8817	// Reason: The reason for the cancellation. Acceptable values are: -
8818	// "customerInitiatedCancel" - "invalidCoupon" -
8819	// "malformedShippingAddress" - "noInventory" - "other" -
8820	// "priceError" - "shippingPriceError" - "taxError" -
8821	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
8822	Reason string `json:"reason,omitempty"`
8823
8824	// ReasonText: The explanation of the reason.
8825	ReasonText string `json:"reasonText,omitempty"`
8826
8827	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8828	// unconditionally include in API requests. By default, fields with
8829	// empty or default values are omitted from API requests. However, any
8830	// non-pointer, non-interface field appearing in ForceSendFields will be
8831	// sent to the server regardless of whether the field is empty or not.
8832	// This may be used to include empty fields in Patch requests.
8833	ForceSendFields []string `json:"-"`
8834
8835	// NullFields is a list of field names (e.g. "LineItemId") to include in
8836	// API requests with the JSON null value. By default, fields with empty
8837	// values are omitted from API requests. However, any field with an
8838	// empty value appearing in NullFields will be sent to the server as
8839	// null. It is an error if a field in this list has a non-empty value.
8840	// This may be used to include null fields in Patch requests.
8841	NullFields []string `json:"-"`
8842}
8843
8844func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
8845	type NoMethod OrdersCancelLineItemRequest
8846	raw := NoMethod(*s)
8847	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8848}
8849
8850type OrdersCancelLineItemResponse struct {
8851	// ExecutionStatus: The status of the execution. Acceptable values are:
8852	// - "duplicate" - "executed"
8853	ExecutionStatus string `json:"executionStatus,omitempty"`
8854
8855	// Kind: Identifies what kind of resource this is. Value: the fixed
8856	// string "content#ordersCancelLineItemResponse".
8857	Kind string `json:"kind,omitempty"`
8858
8859	// ServerResponse contains the HTTP response code and headers from the
8860	// server.
8861	googleapi.ServerResponse `json:"-"`
8862
8863	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8864	// unconditionally include in API requests. By default, fields with
8865	// empty or default values are omitted from API requests. However, any
8866	// non-pointer, non-interface field appearing in ForceSendFields will be
8867	// sent to the server regardless of whether the field is empty or not.
8868	// This may be used to include empty fields in Patch requests.
8869	ForceSendFields []string `json:"-"`
8870
8871	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8872	// include in API requests with the JSON null value. By default, fields
8873	// with empty values are omitted from API requests. However, any field
8874	// with an empty value appearing in NullFields will be sent to the
8875	// server as null. It is an error if a field in this list has a
8876	// non-empty value. This may be used to include null fields in Patch
8877	// requests.
8878	NullFields []string `json:"-"`
8879}
8880
8881func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
8882	type NoMethod OrdersCancelLineItemResponse
8883	raw := NoMethod(*s)
8884	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8885}
8886
8887type OrdersCancelRequest struct {
8888	// OperationId: The ID of the operation. Unique across all operations
8889	// for a given order.
8890	OperationId string `json:"operationId,omitempty"`
8891
8892	// Reason: The reason for the cancellation. Acceptable values are: -
8893	// "customerInitiatedCancel" - "invalidCoupon" -
8894	// "malformedShippingAddress" - "noInventory" - "other" -
8895	// "priceError" - "shippingPriceError" - "taxError" -
8896	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
8897	Reason string `json:"reason,omitempty"`
8898
8899	// ReasonText: The explanation of the reason.
8900	ReasonText string `json:"reasonText,omitempty"`
8901
8902	// ForceSendFields is a list of field names (e.g. "OperationId") to
8903	// unconditionally include in API requests. By default, fields with
8904	// empty or default values are omitted from API requests. However, any
8905	// non-pointer, non-interface field appearing in ForceSendFields will be
8906	// sent to the server regardless of whether the field is empty or not.
8907	// This may be used to include empty fields in Patch requests.
8908	ForceSendFields []string `json:"-"`
8909
8910	// NullFields is a list of field names (e.g. "OperationId") to include
8911	// in API requests with the JSON null value. By default, fields with
8912	// empty values are omitted from API requests. However, any field with
8913	// an empty value appearing in NullFields will be sent to the server as
8914	// null. It is an error if a field in this list has a non-empty value.
8915	// This may be used to include null fields in Patch requests.
8916	NullFields []string `json:"-"`
8917}
8918
8919func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
8920	type NoMethod OrdersCancelRequest
8921	raw := NoMethod(*s)
8922	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8923}
8924
8925type OrdersCancelResponse struct {
8926	// ExecutionStatus: The status of the execution. Acceptable values are:
8927	// - "duplicate" - "executed"
8928	ExecutionStatus string `json:"executionStatus,omitempty"`
8929
8930	// Kind: Identifies what kind of resource this is. Value: the fixed
8931	// string "content#ordersCancelResponse".
8932	Kind string `json:"kind,omitempty"`
8933
8934	// ServerResponse contains the HTTP response code and headers from the
8935	// server.
8936	googleapi.ServerResponse `json:"-"`
8937
8938	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8939	// unconditionally include in API requests. By default, fields with
8940	// empty or default values are omitted from API requests. However, any
8941	// non-pointer, non-interface field appearing in ForceSendFields will be
8942	// sent to the server regardless of whether the field is empty or not.
8943	// This may be used to include empty fields in Patch requests.
8944	ForceSendFields []string `json:"-"`
8945
8946	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8947	// include in API requests with the JSON null value. By default, fields
8948	// with empty values are omitted from API requests. However, any field
8949	// with an empty value appearing in NullFields will be sent to the
8950	// server as null. It is an error if a field in this list has a
8951	// non-empty value. This may be used to include null fields in Patch
8952	// requests.
8953	NullFields []string `json:"-"`
8954}
8955
8956func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
8957	type NoMethod OrdersCancelResponse
8958	raw := NoMethod(*s)
8959	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8960}
8961
8962type OrdersCancelTestOrderByCustomerRequest struct {
8963	// Reason: The reason for the cancellation. Acceptable values are: -
8964	// "changedMind" - "orderedWrongItem" - "other"
8965	Reason string `json:"reason,omitempty"`
8966
8967	// ForceSendFields is a list of field names (e.g. "Reason") to
8968	// unconditionally include in API requests. By default, fields with
8969	// empty or default values are omitted from API requests. However, any
8970	// non-pointer, non-interface field appearing in ForceSendFields will be
8971	// sent to the server regardless of whether the field is empty or not.
8972	// This may be used to include empty fields in Patch requests.
8973	ForceSendFields []string `json:"-"`
8974
8975	// NullFields is a list of field names (e.g. "Reason") to include in API
8976	// requests with the JSON null value. By default, fields with empty
8977	// values are omitted from API requests. However, any field with an
8978	// empty value appearing in NullFields will be sent to the server as
8979	// null. It is an error if a field in this list has a non-empty value.
8980	// This may be used to include null fields in Patch requests.
8981	NullFields []string `json:"-"`
8982}
8983
8984func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
8985	type NoMethod OrdersCancelTestOrderByCustomerRequest
8986	raw := NoMethod(*s)
8987	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8988}
8989
8990type OrdersCancelTestOrderByCustomerResponse struct {
8991	// Kind: Identifies what kind of resource this is. Value: the fixed
8992	// string "content#ordersCancelTestOrderByCustomerResponse".
8993	Kind string `json:"kind,omitempty"`
8994
8995	// ServerResponse contains the HTTP response code and headers from the
8996	// server.
8997	googleapi.ServerResponse `json:"-"`
8998
8999	// ForceSendFields is a list of field names (e.g. "Kind") to
9000	// unconditionally include in API requests. By default, fields with
9001	// empty or default values are omitted from API requests. However, any
9002	// non-pointer, non-interface field appearing in ForceSendFields will be
9003	// sent to the server regardless of whether the field is empty or not.
9004	// This may be used to include empty fields in Patch requests.
9005	ForceSendFields []string `json:"-"`
9006
9007	// NullFields is a list of field names (e.g. "Kind") to include in API
9008	// requests with the JSON null value. By default, fields with empty
9009	// values are omitted from API requests. However, any field with an
9010	// empty value appearing in NullFields will be sent to the server as
9011	// null. It is an error if a field in this list has a non-empty value.
9012	// This may be used to include null fields in Patch requests.
9013	NullFields []string `json:"-"`
9014}
9015
9016func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
9017	type NoMethod OrdersCancelTestOrderByCustomerResponse
9018	raw := NoMethod(*s)
9019	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9020}
9021
9022type OrdersCreateTestOrderRequest struct {
9023	// Country: The CLDR territory code of the country of the test order to
9024	// create. Affects the currency and addresses of orders created via
9025	// `template_name`, or the addresses of orders created via `test_order`.
9026	// Acceptable values are: - "US" - "FR" Defaults to `US`.
9027	Country string `json:"country,omitempty"`
9028
9029	// TemplateName: The test order template to use. Specify as an
9030	// alternative to `testOrder` as a shortcut for retrieving a template
9031	// and then creating an order using that template. Acceptable values
9032	// are: - "template1" - "template1a" - "template1b" -
9033	// "template2" - "template3"
9034	TemplateName string `json:"templateName,omitempty"`
9035
9036	// TestOrder: The test order to create.
9037	TestOrder *TestOrder `json:"testOrder,omitempty"`
9038
9039	// ForceSendFields is a list of field names (e.g. "Country") to
9040	// unconditionally include in API requests. By default, fields with
9041	// empty or default values are omitted from API requests. However, any
9042	// non-pointer, non-interface field appearing in ForceSendFields will be
9043	// sent to the server regardless of whether the field is empty or not.
9044	// This may be used to include empty fields in Patch requests.
9045	ForceSendFields []string `json:"-"`
9046
9047	// NullFields is a list of field names (e.g. "Country") to include in
9048	// API 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 *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
9057	type NoMethod OrdersCreateTestOrderRequest
9058	raw := NoMethod(*s)
9059	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9060}
9061
9062type OrdersCreateTestOrderResponse struct {
9063	// Kind: Identifies what kind of resource this is. Value: the fixed
9064	// string "content#ordersCreateTestOrderResponse".
9065	Kind string `json:"kind,omitempty"`
9066
9067	// OrderId: The ID of the newly created test order.
9068	OrderId string `json:"orderId,omitempty"`
9069
9070	// ServerResponse contains the HTTP response code and headers from the
9071	// server.
9072	googleapi.ServerResponse `json:"-"`
9073
9074	// ForceSendFields is a list of field names (e.g. "Kind") to
9075	// unconditionally include in API requests. By default, fields with
9076	// empty or default values are omitted from API requests. However, any
9077	// non-pointer, non-interface field appearing in ForceSendFields will be
9078	// sent to the server regardless of whether the field is empty or not.
9079	// This may be used to include empty fields in Patch requests.
9080	ForceSendFields []string `json:"-"`
9081
9082	// NullFields is a list of field names (e.g. "Kind") to include in API
9083	// requests with the JSON null value. By default, fields with empty
9084	// values are omitted from API requests. However, any field with an
9085	// empty value appearing in NullFields will be sent to the server as
9086	// null. It is an error if a field in this list has a non-empty value.
9087	// This may be used to include null fields in Patch requests.
9088	NullFields []string `json:"-"`
9089}
9090
9091func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
9092	type NoMethod OrdersCreateTestOrderResponse
9093	raw := NoMethod(*s)
9094	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9095}
9096
9097type OrdersCreateTestReturnRequest struct {
9098	// Items: Returned items.
9099	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
9100
9101	// ForceSendFields is a list of field names (e.g. "Items") to
9102	// unconditionally include in API requests. By default, fields with
9103	// empty or default values are omitted from API requests. However, any
9104	// non-pointer, non-interface field appearing in ForceSendFields will be
9105	// sent to the server regardless of whether the field is empty or not.
9106	// This may be used to include empty fields in Patch requests.
9107	ForceSendFields []string `json:"-"`
9108
9109	// NullFields is a list of field names (e.g. "Items") to include in API
9110	// requests with the JSON null value. By default, fields with empty
9111	// values are omitted from API requests. However, any field with an
9112	// empty value appearing in NullFields will be sent to the server as
9113	// null. It is an error if a field in this list has a non-empty value.
9114	// This may be used to include null fields in Patch requests.
9115	NullFields []string `json:"-"`
9116}
9117
9118func (s *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
9119	type NoMethod OrdersCreateTestReturnRequest
9120	raw := NoMethod(*s)
9121	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9122}
9123
9124type OrdersCreateTestReturnResponse struct {
9125	// Kind: Identifies what kind of resource this is. Value: the fixed
9126	// string "content#ordersCreateTestReturnResponse".
9127	Kind string `json:"kind,omitempty"`
9128
9129	// ReturnId: The ID of the newly created test order return.
9130	ReturnId string `json:"returnId,omitempty"`
9131
9132	// ServerResponse contains the HTTP response code and headers from the
9133	// server.
9134	googleapi.ServerResponse `json:"-"`
9135
9136	// ForceSendFields is a list of field names (e.g. "Kind") to
9137	// unconditionally include in API requests. By default, fields with
9138	// empty or default values are omitted from API requests. However, any
9139	// non-pointer, non-interface field appearing in ForceSendFields will be
9140	// sent to the server regardless of whether the field is empty or not.
9141	// This may be used to include empty fields in Patch requests.
9142	ForceSendFields []string `json:"-"`
9143
9144	// NullFields is a list of field names (e.g. "Kind") to include in API
9145	// requests with the JSON null value. By default, fields with empty
9146	// values are omitted from API requests. However, any field with an
9147	// empty value appearing in NullFields will be sent to the server as
9148	// null. It is an error if a field in this list has a non-empty value.
9149	// This may be used to include null fields in Patch requests.
9150	NullFields []string `json:"-"`
9151}
9152
9153func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
9154	type NoMethod OrdersCreateTestReturnResponse
9155	raw := NoMethod(*s)
9156	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9157}
9158
9159type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
9160	// LineItemId: The ID of the line item to return.
9161	LineItemId string `json:"lineItemId,omitempty"`
9162
9163	// Quantity: Quantity that is returned.
9164	Quantity int64 `json:"quantity,omitempty"`
9165
9166	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9167	// unconditionally include in API requests. By default, fields with
9168	// empty or default values are omitted from API requests. However, any
9169	// non-pointer, non-interface field appearing in ForceSendFields will be
9170	// sent to the server regardless of whether the field is empty or not.
9171	// This may be used to include empty fields in Patch requests.
9172	ForceSendFields []string `json:"-"`
9173
9174	// NullFields is a list of field names (e.g. "LineItemId") to include in
9175	// API requests with the JSON null value. By default, fields with empty
9176	// values are omitted from API requests. However, any field with an
9177	// empty value appearing in NullFields will be sent to the server as
9178	// null. It is an error if a field in this list has a non-empty value.
9179	// This may be used to include null fields in Patch requests.
9180	NullFields []string `json:"-"`
9181}
9182
9183func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
9184	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
9185	raw := NoMethod(*s)
9186	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9187}
9188
9189type OrdersCustomBatchRequestEntryRefundItemItem struct {
9190	// Amount: The total amount that is refunded. (e.g. refunding $5 each
9191	// for 2 products should be done by setting quantity to 2 and amount to
9192	// 10$) In case of multiple refunds, this should be the amount you
9193	// currently want to refund to the customer.
9194	Amount *MonetaryAmount `json:"amount,omitempty"`
9195
9196	// FullRefund: If true, the full item will be refunded. If this is true,
9197	// amount should not be provided and will be ignored.
9198	FullRefund bool `json:"fullRefund,omitempty"`
9199
9200	// LineItemId: The ID of the line item. Either lineItemId or productId
9201	// is required.
9202	LineItemId string `json:"lineItemId,omitempty"`
9203
9204	// ProductId: The ID of the product. This is the REST ID used in the
9205	// products service. Either lineItemId or productId is required.
9206	ProductId string `json:"productId,omitempty"`
9207
9208	// Quantity: The number of products that are refunded.
9209	Quantity int64 `json:"quantity,omitempty"`
9210
9211	// ForceSendFields is a list of field names (e.g. "Amount") to
9212	// unconditionally include in API requests. By default, fields with
9213	// empty or default values are omitted from API requests. However, any
9214	// non-pointer, non-interface field appearing in ForceSendFields will be
9215	// sent to the server regardless of whether the field is empty or not.
9216	// This may be used to include empty fields in Patch requests.
9217	ForceSendFields []string `json:"-"`
9218
9219	// NullFields is a list of field names (e.g. "Amount") to include in API
9220	// requests with the JSON null value. By default, fields with empty
9221	// values are omitted from API requests. However, any field with an
9222	// empty value appearing in NullFields will be sent to the server as
9223	// null. It is an error if a field in this list has a non-empty value.
9224	// This may be used to include null fields in Patch requests.
9225	NullFields []string `json:"-"`
9226}
9227
9228func (s *OrdersCustomBatchRequestEntryRefundItemItem) MarshalJSON() ([]byte, error) {
9229	type NoMethod OrdersCustomBatchRequestEntryRefundItemItem
9230	raw := NoMethod(*s)
9231	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9232}
9233
9234type OrdersCustomBatchRequestEntryRefundItemShipping struct {
9235	// Amount: The amount that is refunded. If this is not the first refund
9236	// for the shipment, this should be the newly refunded amount.
9237	Amount *Price `json:"amount,omitempty"`
9238
9239	// FullRefund: If set to true, all shipping costs for the order will be
9240	// refunded. If this is true, amount should not be provided and will be
9241	// ignored. If set to false, submit the amount of the partial shipping
9242	// refund, excluding the shipping tax. The shipping tax is calculated
9243	// and handled on Google's side.
9244	FullRefund bool `json:"fullRefund,omitempty"`
9245
9246	// ForceSendFields is a list of field names (e.g. "Amount") to
9247	// unconditionally include in API requests. By default, fields with
9248	// empty or default values are omitted from API requests. However, any
9249	// non-pointer, non-interface field appearing in ForceSendFields will be
9250	// sent to the server regardless of whether the field is empty or not.
9251	// This may be used to include empty fields in Patch requests.
9252	ForceSendFields []string `json:"-"`
9253
9254	// NullFields is a list of field names (e.g. "Amount") to include in API
9255	// requests with the JSON null value. By default, fields with empty
9256	// values are omitted from API requests. However, any field with an
9257	// empty value appearing in NullFields will be sent to the server as
9258	// null. It is an error if a field in this list has a non-empty value.
9259	// This may be used to include null fields in Patch requests.
9260	NullFields []string `json:"-"`
9261}
9262
9263func (s *OrdersCustomBatchRequestEntryRefundItemShipping) MarshalJSON() ([]byte, error) {
9264	type NoMethod OrdersCustomBatchRequestEntryRefundItemShipping
9265	raw := NoMethod(*s)
9266	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9267}
9268
9269type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
9270	// Carrier: The carrier handling the shipment. See `shipments[].carrier`
9271	// in the Orders resource representation for a list of acceptable
9272	// values.
9273	Carrier string `json:"carrier,omitempty"`
9274
9275	// ShipmentId: Required. The ID of the shipment. This is assigned by the
9276	// merchant and is unique to each shipment.
9277	ShipmentId string `json:"shipmentId,omitempty"`
9278
9279	// TrackingId: The tracking ID for the shipment.
9280	TrackingId string `json:"trackingId,omitempty"`
9281
9282	// ForceSendFields is a list of field names (e.g. "Carrier") to
9283	// unconditionally include in API requests. By default, fields with
9284	// empty or default values are omitted from API requests. However, any
9285	// non-pointer, non-interface field appearing in ForceSendFields will be
9286	// sent to the server regardless of whether the field is empty or not.
9287	// This may be used to include empty fields in Patch requests.
9288	ForceSendFields []string `json:"-"`
9289
9290	// NullFields is a list of field names (e.g. "Carrier") to include in
9291	// API requests with the JSON null value. By default, fields with empty
9292	// values are omitted from API requests. However, any field with an
9293	// empty value appearing in NullFields will be sent to the server as
9294	// null. It is an error if a field in this list has a non-empty value.
9295	// This may be used to include null fields in Patch requests.
9296	NullFields []string `json:"-"`
9297}
9298
9299func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
9300	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
9301	raw := NoMethod(*s)
9302	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9303}
9304
9305// OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails:
9306// ScheduledDeliveryDetails used to update the scheduled delivery order.
9307type OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails struct {
9308	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
9309	// delivery. The phone number should be formatted as the international
9310	// notation in
9311	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
9312
9313	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
9314	// 8601 format.
9315	ScheduledDate string `json:"scheduledDate,omitempty"`
9316
9317	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
9318	// to unconditionally include in API requests. By default, fields with
9319	// empty or default values are omitted from API requests. However, any
9320	// non-pointer, non-interface field appearing in ForceSendFields will be
9321	// sent to the server regardless of whether the field is empty or not.
9322	// This may be used to include empty fields in Patch requests.
9323	ForceSendFields []string `json:"-"`
9324
9325	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
9326	// include in API requests with the JSON null value. By default, fields
9327	// with empty values are omitted from API requests. However, any field
9328	// with an empty value appearing in NullFields will be sent to the
9329	// server as null. It is an error if a field in this list has a
9330	// non-empty value. This may be used to include null fields in Patch
9331	// requests.
9332	NullFields []string `json:"-"`
9333}
9334
9335func (s *OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
9336	type NoMethod OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails
9337	raw := NoMethod(*s)
9338	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9339}
9340
9341type OrdersGetByMerchantOrderIdResponse struct {
9342	// Kind: Identifies what kind of resource this is. Value: the fixed
9343	// string "content#ordersGetByMerchantOrderIdResponse".
9344	Kind string `json:"kind,omitempty"`
9345
9346	// Order: The requested order.
9347	Order *Order `json:"order,omitempty"`
9348
9349	// ServerResponse contains the HTTP response code and headers from the
9350	// server.
9351	googleapi.ServerResponse `json:"-"`
9352
9353	// ForceSendFields is a list of field names (e.g. "Kind") to
9354	// unconditionally include in API requests. By default, fields with
9355	// empty or default values are omitted from API requests. However, any
9356	// non-pointer, non-interface field appearing in ForceSendFields will be
9357	// sent to the server regardless of whether the field is empty or not.
9358	// This may be used to include empty fields in Patch requests.
9359	ForceSendFields []string `json:"-"`
9360
9361	// NullFields is a list of field names (e.g. "Kind") to include in API
9362	// requests with the JSON null value. By default, fields with empty
9363	// values are omitted from API requests. However, any field with an
9364	// empty value appearing in NullFields will be sent to the server as
9365	// null. It is an error if a field in this list has a non-empty value.
9366	// This may be used to include null fields in Patch requests.
9367	NullFields []string `json:"-"`
9368}
9369
9370func (s *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
9371	type NoMethod OrdersGetByMerchantOrderIdResponse
9372	raw := NoMethod(*s)
9373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9374}
9375
9376type OrdersGetTestOrderTemplateResponse struct {
9377	// Kind: Identifies what kind of resource this is. Value: the fixed
9378	// string "content#ordersGetTestOrderTemplateResponse".
9379	Kind string `json:"kind,omitempty"`
9380
9381	// Template: The requested test order template.
9382	Template *TestOrder `json:"template,omitempty"`
9383
9384	// ServerResponse contains the HTTP response code and headers from the
9385	// server.
9386	googleapi.ServerResponse `json:"-"`
9387
9388	// ForceSendFields is a list of field names (e.g. "Kind") to
9389	// unconditionally include in API requests. By default, fields with
9390	// empty or default values are omitted from API requests. However, any
9391	// non-pointer, non-interface field appearing in ForceSendFields will be
9392	// sent to the server regardless of whether the field is empty or not.
9393	// This may be used to include empty fields in Patch requests.
9394	ForceSendFields []string `json:"-"`
9395
9396	// NullFields is a list of field names (e.g. "Kind") to include in API
9397	// requests with the JSON null value. By default, fields with empty
9398	// values are omitted from API requests. However, any field with an
9399	// empty value appearing in NullFields will be sent to the server as
9400	// null. It is an error if a field in this list has a non-empty value.
9401	// This may be used to include null fields in Patch requests.
9402	NullFields []string `json:"-"`
9403}
9404
9405func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
9406	type NoMethod OrdersGetTestOrderTemplateResponse
9407	raw := NoMethod(*s)
9408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9409}
9410
9411type OrdersInStoreRefundLineItemRequest struct {
9412	// LineItemId: The ID of the line item to return. Either lineItemId or
9413	// productId is required.
9414	LineItemId string `json:"lineItemId,omitempty"`
9415
9416	// OperationId: The ID of the operation. Unique across all operations
9417	// for a given order.
9418	OperationId string `json:"operationId,omitempty"`
9419
9420	// PriceAmount: The amount to be refunded. This may be pre-tax or
9421	// post-tax depending on the location of the order. Required.
9422	PriceAmount *Price `json:"priceAmount,omitempty"`
9423
9424	// ProductId: The ID of the product to return. This is the REST ID used
9425	// in the products service. Either lineItemId or productId is required.
9426	ProductId string `json:"productId,omitempty"`
9427
9428	// Quantity: The quantity to return and refund.
9429	Quantity int64 `json:"quantity,omitempty"`
9430
9431	// Reason: The reason for the return. Acceptable values are: -
9432	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
9433	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
9434	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
9435	// - "productNotAsDescribed" - "qualityNotAsExpected" -
9436	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9437	// "wrongProductShipped"
9438	Reason string `json:"reason,omitempty"`
9439
9440	// ReasonText: The explanation of the reason.
9441	ReasonText string `json:"reasonText,omitempty"`
9442
9443	// TaxAmount: The amount of tax to be refunded. Required.
9444	TaxAmount *Price `json:"taxAmount,omitempty"`
9445
9446	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9447	// unconditionally include in API requests. By default, fields with
9448	// empty or default values are omitted from API requests. However, any
9449	// non-pointer, non-interface field appearing in ForceSendFields will be
9450	// sent to the server regardless of whether the field is empty or not.
9451	// This may be used to include empty fields in Patch requests.
9452	ForceSendFields []string `json:"-"`
9453
9454	// NullFields is a list of field names (e.g. "LineItemId") to include in
9455	// API requests with the JSON null value. By default, fields with empty
9456	// values are omitted from API requests. However, any field with an
9457	// empty value appearing in NullFields will be sent to the server as
9458	// null. It is an error if a field in this list has a non-empty value.
9459	// This may be used to include null fields in Patch requests.
9460	NullFields []string `json:"-"`
9461}
9462
9463func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
9464	type NoMethod OrdersInStoreRefundLineItemRequest
9465	raw := NoMethod(*s)
9466	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9467}
9468
9469type OrdersInStoreRefundLineItemResponse struct {
9470	// ExecutionStatus: The status of the execution. Acceptable values are:
9471	// - "duplicate" - "executed"
9472	ExecutionStatus string `json:"executionStatus,omitempty"`
9473
9474	// Kind: Identifies what kind of resource this is. Value: the fixed
9475	// string "content#ordersInStoreRefundLineItemResponse".
9476	Kind string `json:"kind,omitempty"`
9477
9478	// ServerResponse contains the HTTP response code and headers from the
9479	// server.
9480	googleapi.ServerResponse `json:"-"`
9481
9482	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9483	// unconditionally include in API requests. By default, fields with
9484	// empty or default values are omitted from API requests. However, any
9485	// non-pointer, non-interface field appearing in ForceSendFields will be
9486	// sent to the server regardless of whether the field is empty or not.
9487	// This may be used to include empty fields in Patch requests.
9488	ForceSendFields []string `json:"-"`
9489
9490	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9491	// include in API requests with the JSON null value. By default, fields
9492	// with empty values are omitted from API requests. However, any field
9493	// with an empty value appearing in NullFields will be sent to the
9494	// server as null. It is an error if a field in this list has a
9495	// non-empty value. This may be used to include null fields in Patch
9496	// requests.
9497	NullFields []string `json:"-"`
9498}
9499
9500func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
9501	type NoMethod OrdersInStoreRefundLineItemResponse
9502	raw := NoMethod(*s)
9503	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9504}
9505
9506type OrdersListResponse struct {
9507	// Kind: Identifies what kind of resource this is. Value: the fixed
9508	// string "content#ordersListResponse".
9509	Kind string `json:"kind,omitempty"`
9510
9511	// NextPageToken: The token for the retrieval of the next page of
9512	// orders.
9513	NextPageToken string `json:"nextPageToken,omitempty"`
9514
9515	Resources []*Order `json:"resources,omitempty"`
9516
9517	// ServerResponse contains the HTTP response code and headers from the
9518	// server.
9519	googleapi.ServerResponse `json:"-"`
9520
9521	// ForceSendFields is a list of field names (e.g. "Kind") to
9522	// unconditionally include in API requests. By default, fields with
9523	// empty or default values are omitted from API requests. However, any
9524	// non-pointer, non-interface field appearing in ForceSendFields will be
9525	// sent to the server regardless of whether the field is empty or not.
9526	// This may be used to include empty fields in Patch requests.
9527	ForceSendFields []string `json:"-"`
9528
9529	// NullFields is a list of field names (e.g. "Kind") to include in API
9530	// requests with the JSON null value. By default, fields with empty
9531	// values are omitted from API requests. However, any field with an
9532	// empty value appearing in NullFields will be sent to the server as
9533	// null. It is an error if a field in this list has a non-empty value.
9534	// This may be used to include null fields in Patch requests.
9535	NullFields []string `json:"-"`
9536}
9537
9538func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
9539	type NoMethod OrdersListResponse
9540	raw := NoMethod(*s)
9541	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9542}
9543
9544type OrdersRefundItemRequest struct {
9545	// Items: The items that are refunded. Either Item or Shipping must be
9546	// provided in the request.
9547	Items []*OrdersCustomBatchRequestEntryRefundItemItem `json:"items,omitempty"`
9548
9549	// OperationId: The ID of the operation. Unique across all operations
9550	// for a given order.
9551	OperationId string `json:"operationId,omitempty"`
9552
9553	// Reason: The reason for the refund. Acceptable values are: -
9554	// "shippingCostAdjustment" - "priceAdjustment" - "taxAdjustment"
9555	// - "feeAdjustment" - "courtesyAdjustment" - "adjustment" -
9556	// "customerCancelled" - "noInventory" - "productNotAsDescribed" -
9557	// "undeliverableShippingAddress" - "wrongProductShipped" -
9558	// "lateShipmentCredit" - "deliveredLateByCarrier" -
9559	// "productArrivedDamaged"
9560	Reason string `json:"reason,omitempty"`
9561
9562	// ReasonText: The explanation of the reason.
9563	ReasonText string `json:"reasonText,omitempty"`
9564
9565	// Shipping: The refund on shipping. Optional, but either Item or
9566	// Shipping must be provided in the request.
9567	Shipping *OrdersCustomBatchRequestEntryRefundItemShipping `json:"shipping,omitempty"`
9568
9569	// ForceSendFields is a list of field names (e.g. "Items") to
9570	// unconditionally include in API requests. By default, fields with
9571	// empty or default values are omitted from API requests. However, any
9572	// non-pointer, non-interface field appearing in ForceSendFields will be
9573	// sent to the server regardless of whether the field is empty or not.
9574	// This may be used to include empty fields in Patch requests.
9575	ForceSendFields []string `json:"-"`
9576
9577	// NullFields is a list of field names (e.g. "Items") to include in API
9578	// requests with the JSON null value. By default, fields with empty
9579	// values are omitted from API requests. However, any field with an
9580	// empty value appearing in NullFields will be sent to the server as
9581	// null. It is an error if a field in this list has a non-empty value.
9582	// This may be used to include null fields in Patch requests.
9583	NullFields []string `json:"-"`
9584}
9585
9586func (s *OrdersRefundItemRequest) MarshalJSON() ([]byte, error) {
9587	type NoMethod OrdersRefundItemRequest
9588	raw := NoMethod(*s)
9589	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9590}
9591
9592type OrdersRefundItemResponse struct {
9593	// ExecutionStatus: The status of the execution. Acceptable values are:
9594	// - "duplicate" - "executed"
9595	ExecutionStatus string `json:"executionStatus,omitempty"`
9596
9597	// Kind: Identifies what kind of resource this is. Value: the fixed
9598	// string "content#ordersRefundItemResponse".
9599	Kind string `json:"kind,omitempty"`
9600
9601	// ServerResponse contains the HTTP response code and headers from the
9602	// server.
9603	googleapi.ServerResponse `json:"-"`
9604
9605	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9606	// unconditionally include in API requests. By default, fields with
9607	// empty or default values are omitted from API requests. However, any
9608	// non-pointer, non-interface field appearing in ForceSendFields will be
9609	// sent to the server regardless of whether the field is empty or not.
9610	// This may be used to include empty fields in Patch requests.
9611	ForceSendFields []string `json:"-"`
9612
9613	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9614	// include in API requests with the JSON null value. By default, fields
9615	// with empty values are omitted from API requests. However, any field
9616	// with an empty value appearing in NullFields will be sent to the
9617	// server as null. It is an error if a field in this list has a
9618	// non-empty value. This may be used to include null fields in Patch
9619	// requests.
9620	NullFields []string `json:"-"`
9621}
9622
9623func (s *OrdersRefundItemResponse) MarshalJSON() ([]byte, error) {
9624	type NoMethod OrdersRefundItemResponse
9625	raw := NoMethod(*s)
9626	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9627}
9628
9629type OrdersRefundOrderRequest struct {
9630	// Amount: The amount that is refunded. If this is not the first refund
9631	// for the order, this should be the newly refunded amount.
9632	Amount *MonetaryAmount `json:"amount,omitempty"`
9633
9634	// FullRefund: If true, the full order will be refunded, including
9635	// shipping. If this is true, amount should not be provided and will be
9636	// ignored.
9637	FullRefund bool `json:"fullRefund,omitempty"`
9638
9639	// OperationId: The ID of the operation. Unique across all operations
9640	// for a given order.
9641	OperationId string `json:"operationId,omitempty"`
9642
9643	// Reason: The reason for the refund. Acceptable values are: -
9644	// "courtesyAdjustment" - "other"
9645	Reason string `json:"reason,omitempty"`
9646
9647	// ReasonText: The explanation of the reason.
9648	ReasonText string `json:"reasonText,omitempty"`
9649
9650	// ForceSendFields is a list of field names (e.g. "Amount") to
9651	// unconditionally include in API requests. By default, fields with
9652	// empty or default values are omitted from API requests. However, any
9653	// non-pointer, non-interface field appearing in ForceSendFields will be
9654	// sent to the server regardless of whether the field is empty or not.
9655	// This may be used to include empty fields in Patch requests.
9656	ForceSendFields []string `json:"-"`
9657
9658	// NullFields is a list of field names (e.g. "Amount") to include in API
9659	// requests with the JSON null value. By default, fields with empty
9660	// values are omitted from API requests. However, any field with an
9661	// empty value appearing in NullFields will be sent to the server as
9662	// null. It is an error if a field in this list has a non-empty value.
9663	// This may be used to include null fields in Patch requests.
9664	NullFields []string `json:"-"`
9665}
9666
9667func (s *OrdersRefundOrderRequest) MarshalJSON() ([]byte, error) {
9668	type NoMethod OrdersRefundOrderRequest
9669	raw := NoMethod(*s)
9670	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9671}
9672
9673type OrdersRefundOrderResponse struct {
9674	// ExecutionStatus: The status of the execution. Acceptable values are:
9675	// - "duplicate" - "executed"
9676	ExecutionStatus string `json:"executionStatus,omitempty"`
9677
9678	// Kind: Identifies what kind of resource this is. Value: the fixed
9679	// string "content#ordersRefundOrderResponse".
9680	Kind string `json:"kind,omitempty"`
9681
9682	// ServerResponse contains the HTTP response code and headers from the
9683	// server.
9684	googleapi.ServerResponse `json:"-"`
9685
9686	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9687	// unconditionally include in API requests. By default, fields with
9688	// empty or default values are omitted from API requests. However, any
9689	// non-pointer, non-interface field appearing in ForceSendFields will be
9690	// sent to the server regardless of whether the field is empty or not.
9691	// This may be used to include empty fields in Patch requests.
9692	ForceSendFields []string `json:"-"`
9693
9694	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9695	// include in API requests with the JSON null value. By default, fields
9696	// with empty values are omitted from API requests. However, any field
9697	// with an empty value appearing in NullFields will be sent to the
9698	// server as null. It is an error if a field in this list has a
9699	// non-empty value. This may be used to include null fields in Patch
9700	// requests.
9701	NullFields []string `json:"-"`
9702}
9703
9704func (s *OrdersRefundOrderResponse) MarshalJSON() ([]byte, error) {
9705	type NoMethod OrdersRefundOrderResponse
9706	raw := NoMethod(*s)
9707	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9708}
9709
9710type OrdersRejectReturnLineItemRequest struct {
9711	// LineItemId: The ID of the line item to return. Either lineItemId or
9712	// productId is required.
9713	LineItemId string `json:"lineItemId,omitempty"`
9714
9715	// OperationId: The ID of the operation. Unique across all operations
9716	// for a given order.
9717	OperationId string `json:"operationId,omitempty"`
9718
9719	// ProductId: The ID of the product to return. This is the REST ID used
9720	// in the products service. Either lineItemId or productId is required.
9721	ProductId string `json:"productId,omitempty"`
9722
9723	// Quantity: The quantity to return and refund.
9724	Quantity int64 `json:"quantity,omitempty"`
9725
9726	// Reason: The reason for the return. Acceptable values are: -
9727	// "damagedOrUsed" - "missingComponent" - "notEligible" -
9728	// "other" - "outOfReturnWindow"
9729	Reason string `json:"reason,omitempty"`
9730
9731	// ReasonText: The explanation of the reason.
9732	ReasonText string `json:"reasonText,omitempty"`
9733
9734	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9735	// unconditionally include in API requests. By default, fields with
9736	// empty or default values are omitted from API requests. However, any
9737	// non-pointer, non-interface field appearing in ForceSendFields will be
9738	// sent to the server regardless of whether the field is empty or not.
9739	// This may be used to include empty fields in Patch requests.
9740	ForceSendFields []string `json:"-"`
9741
9742	// NullFields is a list of field names (e.g. "LineItemId") to include in
9743	// API requests with the JSON null value. By default, fields with empty
9744	// values are omitted from API requests. However, any field with an
9745	// empty value appearing in NullFields will be sent to the server as
9746	// null. It is an error if a field in this list has a non-empty value.
9747	// This may be used to include null fields in Patch requests.
9748	NullFields []string `json:"-"`
9749}
9750
9751func (s *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
9752	type NoMethod OrdersRejectReturnLineItemRequest
9753	raw := NoMethod(*s)
9754	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9755}
9756
9757type OrdersRejectReturnLineItemResponse struct {
9758	// ExecutionStatus: The status of the execution. Acceptable values are:
9759	// - "duplicate" - "executed"
9760	ExecutionStatus string `json:"executionStatus,omitempty"`
9761
9762	// Kind: Identifies what kind of resource this is. Value: the fixed
9763	// string "content#ordersRejectReturnLineItemResponse".
9764	Kind string `json:"kind,omitempty"`
9765
9766	// ServerResponse contains the HTTP response code and headers from the
9767	// server.
9768	googleapi.ServerResponse `json:"-"`
9769
9770	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9771	// unconditionally include in API requests. By default, fields with
9772	// empty or default values are omitted from API requests. However, any
9773	// non-pointer, non-interface field appearing in ForceSendFields will be
9774	// sent to the server regardless of whether the field is empty or not.
9775	// This may be used to include empty fields in Patch requests.
9776	ForceSendFields []string `json:"-"`
9777
9778	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9779	// include in API requests with the JSON null value. By default, fields
9780	// with empty values are omitted from API requests. However, any field
9781	// with an empty value appearing in NullFields will be sent to the
9782	// server as null. It is an error if a field in this list has a
9783	// non-empty value. This may be used to include null fields in Patch
9784	// requests.
9785	NullFields []string `json:"-"`
9786}
9787
9788func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
9789	type NoMethod OrdersRejectReturnLineItemResponse
9790	raw := NoMethod(*s)
9791	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9792}
9793
9794type OrdersReturnRefundLineItemRequest struct {
9795	// LineItemId: The ID of the line item to return. Either lineItemId or
9796	// productId is required.
9797	LineItemId string `json:"lineItemId,omitempty"`
9798
9799	// OperationId: The ID of the operation. Unique across all operations
9800	// for a given order.
9801	OperationId string `json:"operationId,omitempty"`
9802
9803	// PriceAmount: The amount to be refunded. This may be pre-tax or
9804	// post-tax depending on the location of the order. If omitted,
9805	// refundless return is assumed.
9806	PriceAmount *Price `json:"priceAmount,omitempty"`
9807
9808	// ProductId: The ID of the product to return. This is the REST ID used
9809	// in the products service. Either lineItemId or productId is required.
9810	ProductId string `json:"productId,omitempty"`
9811
9812	// Quantity: The quantity to return and refund. Quantity is required.
9813	Quantity int64 `json:"quantity,omitempty"`
9814
9815	// Reason: The reason for the return. Acceptable values are: -
9816	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
9817	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
9818	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
9819	// - "productNotAsDescribed" - "qualityNotAsExpected" -
9820	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9821	// "wrongProductShipped"
9822	Reason string `json:"reason,omitempty"`
9823
9824	// ReasonText: The explanation of the reason.
9825	ReasonText string `json:"reasonText,omitempty"`
9826
9827	// TaxAmount: The amount of tax to be refunded. Optional, but if filled,
9828	// then priceAmount must be set. Calculated automatically if not
9829	// provided.
9830	TaxAmount *Price `json:"taxAmount,omitempty"`
9831
9832	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9833	// unconditionally include in API requests. By default, fields with
9834	// empty or default values are omitted from API requests. However, any
9835	// non-pointer, non-interface field appearing in ForceSendFields will be
9836	// sent to the server regardless of whether the field is empty or not.
9837	// This may be used to include empty fields in Patch requests.
9838	ForceSendFields []string `json:"-"`
9839
9840	// NullFields is a list of field names (e.g. "LineItemId") to include in
9841	// API requests with the JSON null value. By default, fields with empty
9842	// values are omitted from API requests. However, any field with an
9843	// empty value appearing in NullFields will be sent to the server as
9844	// null. It is an error if a field in this list has a non-empty value.
9845	// This may be used to include null fields in Patch requests.
9846	NullFields []string `json:"-"`
9847}
9848
9849func (s *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
9850	type NoMethod OrdersReturnRefundLineItemRequest
9851	raw := NoMethod(*s)
9852	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9853}
9854
9855type OrdersReturnRefundLineItemResponse struct {
9856	// ExecutionStatus: The status of the execution. Acceptable values are:
9857	// - "duplicate" - "executed"
9858	ExecutionStatus string `json:"executionStatus,omitempty"`
9859
9860	// Kind: Identifies what kind of resource this is. Value: the fixed
9861	// string "content#ordersReturnRefundLineItemResponse".
9862	Kind string `json:"kind,omitempty"`
9863
9864	// ServerResponse contains the HTTP response code and headers from the
9865	// server.
9866	googleapi.ServerResponse `json:"-"`
9867
9868	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9869	// unconditionally include in API requests. By default, fields with
9870	// empty or default values are omitted from API requests. However, any
9871	// non-pointer, non-interface field appearing in ForceSendFields will be
9872	// sent to the server regardless of whether the field is empty or not.
9873	// This may be used to include empty fields in Patch requests.
9874	ForceSendFields []string `json:"-"`
9875
9876	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9877	// include in API requests with the JSON null value. By default, fields
9878	// with empty values are omitted from API requests. However, any field
9879	// with an empty value appearing in NullFields will be sent to the
9880	// server as null. It is an error if a field in this list has a
9881	// non-empty value. This may be used to include null fields in Patch
9882	// requests.
9883	NullFields []string `json:"-"`
9884}
9885
9886func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
9887	type NoMethod OrdersReturnRefundLineItemResponse
9888	raw := NoMethod(*s)
9889	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9890}
9891
9892type OrdersSetLineItemMetadataRequest struct {
9893	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
9894
9895	// LineItemId: The ID of the line item to set metadata. Either
9896	// lineItemId or productId is required.
9897	LineItemId string `json:"lineItemId,omitempty"`
9898
9899	// OperationId: The ID of the operation. Unique across all operations
9900	// for a given order.
9901	OperationId string `json:"operationId,omitempty"`
9902
9903	// ProductId: The ID of the product to set metadata. This is the REST ID
9904	// used in the products service. Either lineItemId or productId is
9905	// required.
9906	ProductId string `json:"productId,omitempty"`
9907
9908	// ForceSendFields is a list of field names (e.g. "Annotations") to
9909	// unconditionally include in API requests. By default, fields with
9910	// empty or default values are omitted from API requests. However, any
9911	// non-pointer, non-interface field appearing in ForceSendFields will be
9912	// sent to the server regardless of whether the field is empty or not.
9913	// This may be used to include empty fields in Patch requests.
9914	ForceSendFields []string `json:"-"`
9915
9916	// NullFields is a list of field names (e.g. "Annotations") to include
9917	// in API requests with the JSON null value. By default, fields with
9918	// empty values are omitted from API requests. However, any field with
9919	// an empty value appearing in NullFields will be sent to the server as
9920	// null. It is an error if a field in this list has a non-empty value.
9921	// This may be used to include null fields in Patch requests.
9922	NullFields []string `json:"-"`
9923}
9924
9925func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
9926	type NoMethod OrdersSetLineItemMetadataRequest
9927	raw := NoMethod(*s)
9928	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9929}
9930
9931type OrdersSetLineItemMetadataResponse struct {
9932	// ExecutionStatus: The status of the execution. Acceptable values are:
9933	// - "duplicate" - "executed"
9934	ExecutionStatus string `json:"executionStatus,omitempty"`
9935
9936	// Kind: Identifies what kind of resource this is. Value: the fixed
9937	// string "content#ordersSetLineItemMetadataResponse".
9938	Kind string `json:"kind,omitempty"`
9939
9940	// ServerResponse contains the HTTP response code and headers from the
9941	// server.
9942	googleapi.ServerResponse `json:"-"`
9943
9944	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9945	// unconditionally include in API requests. By default, fields with
9946	// empty or default values are omitted from API requests. However, any
9947	// non-pointer, non-interface field appearing in ForceSendFields will be
9948	// sent to the server regardless of whether the field is empty or not.
9949	// This may be used to include empty fields in Patch requests.
9950	ForceSendFields []string `json:"-"`
9951
9952	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9953	// include in API requests with the JSON null value. By default, fields
9954	// with empty values are omitted from API requests. However, any field
9955	// with an empty value appearing in NullFields will be sent to the
9956	// server as null. It is an error if a field in this list has a
9957	// non-empty value. This may be used to include null fields in Patch
9958	// requests.
9959	NullFields []string `json:"-"`
9960}
9961
9962func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
9963	type NoMethod OrdersSetLineItemMetadataResponse
9964	raw := NoMethod(*s)
9965	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9966}
9967
9968type OrdersShipLineItemsRequest struct {
9969	// LineItems: Line items to ship.
9970	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
9971
9972	// OperationId: The ID of the operation. Unique across all operations
9973	// for a given order.
9974	OperationId string `json:"operationId,omitempty"`
9975
9976	// ShipmentGroupId: ID of the shipment group. Required for orders that
9977	// use the orderinvoices service.
9978	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
9979
9980	// ShipmentInfos: Shipment information. This field is repeated because a
9981	// single line item can be shipped in several packages (and have several
9982	// tracking IDs).
9983	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
9984
9985	// ForceSendFields is a list of field names (e.g. "LineItems") to
9986	// unconditionally include in API requests. By default, fields with
9987	// empty or default values are omitted from API requests. However, any
9988	// non-pointer, non-interface field appearing in ForceSendFields will be
9989	// sent to the server regardless of whether the field is empty or not.
9990	// This may be used to include empty fields in Patch requests.
9991	ForceSendFields []string `json:"-"`
9992
9993	// NullFields is a list of field names (e.g. "LineItems") to include in
9994	// API requests with the JSON null value. By default, fields with empty
9995	// values are omitted from API requests. However, any field with an
9996	// empty value appearing in NullFields will be sent to the server as
9997	// null. It is an error if a field in this list has a non-empty value.
9998	// This may be used to include null fields in Patch requests.
9999	NullFields []string `json:"-"`
10000}
10001
10002func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
10003	type NoMethod OrdersShipLineItemsRequest
10004	raw := NoMethod(*s)
10005	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10006}
10007
10008type OrdersShipLineItemsResponse struct {
10009	// ExecutionStatus: The status of the execution. Acceptable values are:
10010	// - "duplicate" - "executed"
10011	ExecutionStatus string `json:"executionStatus,omitempty"`
10012
10013	// Kind: Identifies what kind of resource this is. Value: the fixed
10014	// string "content#ordersShipLineItemsResponse".
10015	Kind string `json:"kind,omitempty"`
10016
10017	// ServerResponse contains the HTTP response code and headers from the
10018	// server.
10019	googleapi.ServerResponse `json:"-"`
10020
10021	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10022	// unconditionally include in API requests. By default, fields with
10023	// empty or default values are omitted from API requests. However, any
10024	// non-pointer, non-interface field appearing in ForceSendFields will be
10025	// sent to the server regardless of whether the field is empty or not.
10026	// This may be used to include empty fields in Patch requests.
10027	ForceSendFields []string `json:"-"`
10028
10029	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10030	// include in API requests with the JSON null value. By default, fields
10031	// with empty values are omitted from API requests. However, any field
10032	// with an empty value appearing in NullFields will be sent to the
10033	// server as null. It is an error if a field in this list has a
10034	// non-empty value. This may be used to include null fields in Patch
10035	// requests.
10036	NullFields []string `json:"-"`
10037}
10038
10039func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
10040	type NoMethod OrdersShipLineItemsResponse
10041	raw := NoMethod(*s)
10042	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10043}
10044
10045type OrdersUpdateLineItemShippingDetailsRequest struct {
10046	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
10047	// specified only ship by date is updated. Provided date should be
10048	// within 1 year timeframe and can not be a date in the past.
10049	DeliverByDate string `json:"deliverByDate,omitempty"`
10050
10051	// LineItemId: The ID of the line item to set metadata. Either
10052	// lineItemId or productId is required.
10053	LineItemId string `json:"lineItemId,omitempty"`
10054
10055	// OperationId: The ID of the operation. Unique across all operations
10056	// for a given order.
10057	OperationId string `json:"operationId,omitempty"`
10058
10059	// ProductId: The ID of the product to set metadata. This is the REST ID
10060	// used in the products service. Either lineItemId or productId is
10061	// required.
10062	ProductId string `json:"productId,omitempty"`
10063
10064	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
10065	// specified only deliver by date is updated. Provided date should be
10066	// within 1 year timeframe and can not be a date in the past.
10067	ShipByDate string `json:"shipByDate,omitempty"`
10068
10069	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
10070	// unconditionally include in API requests. By default, fields with
10071	// empty or default values are omitted from API requests. However, any
10072	// non-pointer, non-interface field appearing in ForceSendFields will be
10073	// sent to the server regardless of whether the field is empty or not.
10074	// This may be used to include empty fields in Patch requests.
10075	ForceSendFields []string `json:"-"`
10076
10077	// NullFields is a list of field names (e.g. "DeliverByDate") to include
10078	// in API requests with the JSON null value. By default, fields with
10079	// empty values are omitted from API requests. However, any field with
10080	// an empty value appearing in NullFields will be sent to the server as
10081	// null. It is an error if a field in this list has a non-empty value.
10082	// This may be used to include null fields in Patch requests.
10083	NullFields []string `json:"-"`
10084}
10085
10086func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
10087	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
10088	raw := NoMethod(*s)
10089	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10090}
10091
10092type OrdersUpdateLineItemShippingDetailsResponse struct {
10093	// ExecutionStatus: The status of the execution. Acceptable values are:
10094	// - "duplicate" - "executed"
10095	ExecutionStatus string `json:"executionStatus,omitempty"`
10096
10097	// Kind: Identifies what kind of resource this is. Value: the fixed
10098	// string "content#ordersUpdateLineItemShippingDetailsResponse".
10099	Kind string `json:"kind,omitempty"`
10100
10101	// ServerResponse contains the HTTP response code and headers from the
10102	// server.
10103	googleapi.ServerResponse `json:"-"`
10104
10105	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10106	// unconditionally include in API requests. By default, fields with
10107	// empty or default values are omitted from API requests. However, any
10108	// non-pointer, non-interface field appearing in ForceSendFields will be
10109	// sent to the server regardless of whether the field is empty or not.
10110	// This may be used to include empty fields in Patch requests.
10111	ForceSendFields []string `json:"-"`
10112
10113	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10114	// include in API requests with the JSON null value. By default, fields
10115	// with empty values are omitted from API requests. However, any field
10116	// with an empty value appearing in NullFields will be sent to the
10117	// server as null. It is an error if a field in this list has a
10118	// non-empty value. This may be used to include null fields in Patch
10119	// requests.
10120	NullFields []string `json:"-"`
10121}
10122
10123func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
10124	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
10125	raw := NoMethod(*s)
10126	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10127}
10128
10129type OrdersUpdateMerchantOrderIdRequest struct {
10130	// MerchantOrderId: The merchant order id to be assigned to the order.
10131	// Must be unique per merchant.
10132	MerchantOrderId string `json:"merchantOrderId,omitempty"`
10133
10134	// OperationId: The ID of the operation. Unique across all operations
10135	// for a given order.
10136	OperationId string `json:"operationId,omitempty"`
10137
10138	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
10139	// unconditionally include in API requests. By default, fields with
10140	// empty or default values are omitted from API requests. However, any
10141	// non-pointer, non-interface field appearing in ForceSendFields will be
10142	// sent to the server regardless of whether the field is empty or not.
10143	// This may be used to include empty fields in Patch requests.
10144	ForceSendFields []string `json:"-"`
10145
10146	// NullFields is a list of field names (e.g. "MerchantOrderId") to
10147	// include in API requests with the JSON null value. By default, fields
10148	// with empty values are omitted from API requests. However, any field
10149	// with an empty value appearing in NullFields will be sent to the
10150	// server as null. It is an error if a field in this list has a
10151	// non-empty value. This may be used to include null fields in Patch
10152	// requests.
10153	NullFields []string `json:"-"`
10154}
10155
10156func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
10157	type NoMethod OrdersUpdateMerchantOrderIdRequest
10158	raw := NoMethod(*s)
10159	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10160}
10161
10162type OrdersUpdateMerchantOrderIdResponse struct {
10163	// ExecutionStatus: The status of the execution. Acceptable values are:
10164	// - "duplicate" - "executed"
10165	ExecutionStatus string `json:"executionStatus,omitempty"`
10166
10167	// Kind: Identifies what kind of resource this is. Value: the fixed
10168	// string "content#ordersUpdateMerchantOrderIdResponse".
10169	Kind string `json:"kind,omitempty"`
10170
10171	// ServerResponse contains the HTTP response code and headers from the
10172	// server.
10173	googleapi.ServerResponse `json:"-"`
10174
10175	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10176	// unconditionally include in API requests. By default, fields with
10177	// empty or default values are omitted from API requests. However, any
10178	// non-pointer, non-interface field appearing in ForceSendFields will be
10179	// sent to the server regardless of whether the field is empty or not.
10180	// This may be used to include empty fields in Patch requests.
10181	ForceSendFields []string `json:"-"`
10182
10183	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10184	// include in API requests with the JSON null value. By default, fields
10185	// with empty values are omitted from API requests. However, any field
10186	// with an empty value appearing in NullFields will be sent to the
10187	// server as null. It is an error if a field in this list has a
10188	// non-empty value. This may be used to include null fields in Patch
10189	// requests.
10190	NullFields []string `json:"-"`
10191}
10192
10193func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
10194	type NoMethod OrdersUpdateMerchantOrderIdResponse
10195	raw := NoMethod(*s)
10196	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10197}
10198
10199type OrdersUpdateShipmentRequest struct {
10200	// Carrier: The carrier handling the shipment. Not updated if missing.
10201	// See `shipments[].carrier` in the Orders resource representation for a
10202	// list of acceptable values.
10203	Carrier string `json:"carrier,omitempty"`
10204
10205	// DeliveryDate: Date on which the shipment has been delivered, in ISO
10206	// 8601 format. Optional and can be provided only if `status` is
10207	// `delivered`.
10208	DeliveryDate string `json:"deliveryDate,omitempty"`
10209
10210	// LastPickupDate: Date after which the pickup will expire, in ISO 8601
10211	// format. Required only when order is buy-online-pickup-in-store(BOPIS)
10212	// and `status` is `ready for pickup`.
10213	LastPickupDate string `json:"lastPickupDate,omitempty"`
10214
10215	// OperationId: The ID of the operation. Unique across all operations
10216	// for a given order.
10217	OperationId string `json:"operationId,omitempty"`
10218
10219	// ReadyPickupDate: Date on which the shipment has been ready for
10220	// pickup, in ISO 8601 format. Optional and can be provided only if
10221	// `status` is `ready for pickup`.
10222	ReadyPickupDate string `json:"readyPickupDate,omitempty"`
10223
10224	// ScheduledDeliveryDetails: Delivery details of the shipment if
10225	// scheduling is needed.
10226	ScheduledDeliveryDetails *OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
10227
10228	// ShipmentId: The ID of the shipment.
10229	ShipmentId string `json:"shipmentId,omitempty"`
10230
10231	// Status: New status for the shipment. Not updated if missing.
10232	// Acceptable values are: - "delivered" - "undeliverable" -
10233	// "readyForPickup"
10234	Status string `json:"status,omitempty"`
10235
10236	// TrackingId: The tracking ID for the shipment. Not updated if missing.
10237	TrackingId string `json:"trackingId,omitempty"`
10238
10239	// UndeliveredDate: Date on which the shipment has been undeliverable,
10240	// in ISO 8601 format. Optional and can be provided only if `status` is
10241	// `undeliverable`.
10242	UndeliveredDate string `json:"undeliveredDate,omitempty"`
10243
10244	// ForceSendFields is a list of field names (e.g. "Carrier") to
10245	// unconditionally include in API requests. By default, fields with
10246	// empty or default values are omitted from API requests. However, any
10247	// non-pointer, non-interface field appearing in ForceSendFields will be
10248	// sent to the server regardless of whether the field is empty or not.
10249	// This may be used to include empty fields in Patch requests.
10250	ForceSendFields []string `json:"-"`
10251
10252	// NullFields is a list of field names (e.g. "Carrier") to include in
10253	// API requests with the JSON null value. By default, fields with empty
10254	// values are omitted from API requests. However, any field with an
10255	// empty value appearing in NullFields will be sent to the server as
10256	// null. It is an error if a field in this list has a non-empty value.
10257	// This may be used to include null fields in Patch requests.
10258	NullFields []string `json:"-"`
10259}
10260
10261func (s *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
10262	type NoMethod OrdersUpdateShipmentRequest
10263	raw := NoMethod(*s)
10264	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10265}
10266
10267type OrdersUpdateShipmentResponse struct {
10268	// ExecutionStatus: The status of the execution. Acceptable values are:
10269	// - "duplicate" - "executed"
10270	ExecutionStatus string `json:"executionStatus,omitempty"`
10271
10272	// Kind: Identifies what kind of resource this is. Value: the fixed
10273	// string "content#ordersUpdateShipmentResponse".
10274	Kind string `json:"kind,omitempty"`
10275
10276	// ServerResponse contains the HTTP response code and headers from the
10277	// server.
10278	googleapi.ServerResponse `json:"-"`
10279
10280	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10281	// unconditionally include in API requests. By default, fields with
10282	// empty or default values are omitted from API requests. However, any
10283	// non-pointer, non-interface field appearing in ForceSendFields will be
10284	// sent to the server regardless of whether the field is empty or not.
10285	// This may be used to include empty fields in Patch requests.
10286	ForceSendFields []string `json:"-"`
10287
10288	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10289	// include in API requests with the JSON null value. By default, fields
10290	// with empty values are omitted from API requests. However, any field
10291	// with an empty value appearing in NullFields will be sent to the
10292	// server as null. It is an error if a field in this list has a
10293	// non-empty value. This may be used to include null fields in Patch
10294	// requests.
10295	NullFields []string `json:"-"`
10296}
10297
10298func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
10299	type NoMethod OrdersUpdateShipmentResponse
10300	raw := NoMethod(*s)
10301	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10302}
10303
10304// PauseBuyOnGoogleProgramRequest: Request message for the PauseProgram
10305// method.
10306type PauseBuyOnGoogleProgramRequest struct {
10307}
10308
10309// PaymentServiceProviderLinkInfo: Additional information required for
10310// PAYMENT_SERVICE_PROVIDER link type.
10311type PaymentServiceProviderLinkInfo struct {
10312	// ExternalAccountBusinessCountry: The business country of the merchant
10313	// account as identified by the third party service provider.
10314	ExternalAccountBusinessCountry string `json:"externalAccountBusinessCountry,omitempty"`
10315
10316	// ExternalAccountId: The id used by the third party service provider to
10317	// identify the merchant.
10318	ExternalAccountId string `json:"externalAccountId,omitempty"`
10319
10320	// ForceSendFields is a list of field names (e.g.
10321	// "ExternalAccountBusinessCountry") to unconditionally include in API
10322	// requests. By default, fields with empty or default values are omitted
10323	// from API requests. However, any non-pointer, non-interface field
10324	// appearing in ForceSendFields will be sent to the server regardless of
10325	// whether the field is empty or not. This may be used to include empty
10326	// fields in Patch requests.
10327	ForceSendFields []string `json:"-"`
10328
10329	// NullFields is a list of field names (e.g.
10330	// "ExternalAccountBusinessCountry") to include in API requests with the
10331	// JSON null value. By default, fields with empty values are omitted
10332	// from API requests. However, any field with an empty value appearing
10333	// in NullFields will be sent to the server as null. It is an error if a
10334	// field in this list has a non-empty value. This may be used to include
10335	// null fields in Patch requests.
10336	NullFields []string `json:"-"`
10337}
10338
10339func (s *PaymentServiceProviderLinkInfo) MarshalJSON() ([]byte, error) {
10340	type NoMethod PaymentServiceProviderLinkInfo
10341	raw := NoMethod(*s)
10342	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10343}
10344
10345type PickupCarrierService struct {
10346	// CarrierName: The name of the pickup carrier (e.g., "UPS").
10347	// Required.
10348	CarrierName string `json:"carrierName,omitempty"`
10349
10350	// ServiceName: The name of the pickup service (e.g., "Access point").
10351	// Required.
10352	ServiceName string `json:"serviceName,omitempty"`
10353
10354	// ForceSendFields is a list of field names (e.g. "CarrierName") to
10355	// unconditionally include in API requests. By default, fields with
10356	// empty or default values are omitted from API requests. However, any
10357	// non-pointer, non-interface field appearing in ForceSendFields will be
10358	// sent to the server regardless of whether the field is empty or not.
10359	// This may be used to include empty fields in Patch requests.
10360	ForceSendFields []string `json:"-"`
10361
10362	// NullFields is a list of field names (e.g. "CarrierName") to include
10363	// in API requests with the JSON null value. By default, fields with
10364	// empty values are omitted from API requests. However, any field with
10365	// an empty value appearing in NullFields will be sent to the server as
10366	// null. It is an error if a field in this list has a non-empty value.
10367	// This may be used to include null fields in Patch requests.
10368	NullFields []string `json:"-"`
10369}
10370
10371func (s *PickupCarrierService) MarshalJSON() ([]byte, error) {
10372	type NoMethod PickupCarrierService
10373	raw := NoMethod(*s)
10374	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10375}
10376
10377type PickupServicesPickupService struct {
10378	// CarrierName: The name of the carrier (e.g., "UPS"). Always present.
10379	CarrierName string `json:"carrierName,omitempty"`
10380
10381	// Country: The CLDR country code of the carrier (e.g., "US"). Always
10382	// present.
10383	Country string `json:"country,omitempty"`
10384
10385	// ServiceName: The name of the pickup service (e.g., "Access point").
10386	// Always present.
10387	ServiceName string `json:"serviceName,omitempty"`
10388
10389	// ForceSendFields is a list of field names (e.g. "CarrierName") to
10390	// unconditionally include in API requests. By default, fields with
10391	// empty or default values are omitted from API requests. However, any
10392	// non-pointer, non-interface field appearing in ForceSendFields will be
10393	// sent to the server regardless of whether the field is empty or not.
10394	// This may be used to include empty fields in Patch requests.
10395	ForceSendFields []string `json:"-"`
10396
10397	// NullFields is a list of field names (e.g. "CarrierName") to include
10398	// in API requests with the JSON null value. By default, fields with
10399	// empty values are omitted from API requests. However, any field with
10400	// an empty value appearing in NullFields will be sent to the server as
10401	// null. It is an error if a field in this list has a non-empty value.
10402	// This may be used to include null fields in Patch requests.
10403	NullFields []string `json:"-"`
10404}
10405
10406func (s *PickupServicesPickupService) MarshalJSON() ([]byte, error) {
10407	type NoMethod PickupServicesPickupService
10408	raw := NoMethod(*s)
10409	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10410}
10411
10412type PosCustomBatchRequest struct {
10413	// Entries: The request entries to be processed in the batch.
10414	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
10415
10416	// ForceSendFields is a list of field names (e.g. "Entries") to
10417	// unconditionally include in API requests. By default, fields with
10418	// empty or default values are omitted from API requests. However, any
10419	// non-pointer, non-interface field appearing in ForceSendFields will be
10420	// sent to the server regardless of whether the field is empty or not.
10421	// This may be used to include empty fields in Patch requests.
10422	ForceSendFields []string `json:"-"`
10423
10424	// NullFields is a list of field names (e.g. "Entries") to include in
10425	// API requests with the JSON null value. By default, fields with empty
10426	// values are omitted from API requests. However, any field with an
10427	// empty value appearing in NullFields will be sent to the server as
10428	// null. It is an error if a field in this list has a non-empty value.
10429	// This may be used to include null fields in Patch requests.
10430	NullFields []string `json:"-"`
10431}
10432
10433func (s *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
10434	type NoMethod PosCustomBatchRequest
10435	raw := NoMethod(*s)
10436	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10437}
10438
10439type PosCustomBatchRequestEntry struct {
10440	// BatchId: An entry ID, unique within the batch request.
10441	BatchId int64 `json:"batchId,omitempty"`
10442
10443	// Inventory: The inventory to submit. This should be set only if the
10444	// method is `inventory`.
10445	Inventory *PosInventory `json:"inventory,omitempty"`
10446
10447	// MerchantId: The ID of the POS data provider.
10448	MerchantId uint64 `json:"merchantId,omitempty,string"`
10449
10450	// Method: The method of the batch entry. Acceptable values are: -
10451	// "delete" - "get" - "insert" - "inventory" - "sale"
10452	Method string `json:"method,omitempty"`
10453
10454	// Sale: The sale information to submit. This should be set only if the
10455	// method is `sale`.
10456	Sale *PosSale `json:"sale,omitempty"`
10457
10458	// Store: The store information to submit. This should be set only if
10459	// the method is `insert`.
10460	Store *PosStore `json:"store,omitempty"`
10461
10462	// StoreCode: The store code. This should be set only if the method is
10463	// `delete` or `get`.
10464	StoreCode string `json:"storeCode,omitempty"`
10465
10466	// TargetMerchantId: The ID of the account for which to get/submit data.
10467	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
10468
10469	// ForceSendFields is a list of field names (e.g. "BatchId") to
10470	// unconditionally include in API requests. By default, fields with
10471	// empty or default values are omitted from API requests. However, any
10472	// non-pointer, non-interface field appearing in ForceSendFields will be
10473	// sent to the server regardless of whether the field is empty or not.
10474	// This may be used to include empty fields in Patch requests.
10475	ForceSendFields []string `json:"-"`
10476
10477	// NullFields is a list of field names (e.g. "BatchId") to include in
10478	// API requests with the JSON null value. By default, fields with empty
10479	// values are omitted from API requests. However, any field with an
10480	// empty value appearing in NullFields will be sent to the server as
10481	// null. It is an error if a field in this list has a non-empty value.
10482	// This may be used to include null fields in Patch requests.
10483	NullFields []string `json:"-"`
10484}
10485
10486func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10487	type NoMethod PosCustomBatchRequestEntry
10488	raw := NoMethod(*s)
10489	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10490}
10491
10492type PosCustomBatchResponse struct {
10493	// Entries: The result of the execution of the batch requests.
10494	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
10495
10496	// Kind: Identifies what kind of resource this is. Value: the fixed
10497	// string "content#posCustomBatchResponse".
10498	Kind string `json:"kind,omitempty"`
10499
10500	// ServerResponse contains the HTTP response code and headers from the
10501	// server.
10502	googleapi.ServerResponse `json:"-"`
10503
10504	// ForceSendFields is a list of field names (e.g. "Entries") to
10505	// unconditionally include in API requests. By default, fields with
10506	// empty or default values are omitted from API requests. However, any
10507	// non-pointer, non-interface field appearing in ForceSendFields will be
10508	// sent to the server regardless of whether the field is empty or not.
10509	// This may be used to include empty fields in Patch requests.
10510	ForceSendFields []string `json:"-"`
10511
10512	// NullFields is a list of field names (e.g. "Entries") to include in
10513	// API requests with the JSON null value. By default, fields with empty
10514	// values are omitted from API requests. However, any field with an
10515	// empty value appearing in NullFields will be sent to the server as
10516	// null. It is an error if a field in this list has a non-empty value.
10517	// This may be used to include null fields in Patch requests.
10518	NullFields []string `json:"-"`
10519}
10520
10521func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
10522	type NoMethod PosCustomBatchResponse
10523	raw := NoMethod(*s)
10524	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10525}
10526
10527type PosCustomBatchResponseEntry struct {
10528	// BatchId: The ID of the request entry to which this entry responds.
10529	BatchId int64 `json:"batchId,omitempty"`
10530
10531	// Errors: A list of errors defined if, and only if, the request failed.
10532	Errors *Errors `json:"errors,omitempty"`
10533
10534	// Inventory: The updated inventory information.
10535	Inventory *PosInventory `json:"inventory,omitempty"`
10536
10537	// Kind: Identifies what kind of resource this is. Value: the fixed
10538	// string "content#posCustomBatchResponseEntry"
10539	Kind string `json:"kind,omitempty"`
10540
10541	// Sale: The updated sale information.
10542	Sale *PosSale `json:"sale,omitempty"`
10543
10544	// Store: The retrieved or updated store information.
10545	Store *PosStore `json:"store,omitempty"`
10546
10547	// ForceSendFields is a list of field names (e.g. "BatchId") to
10548	// unconditionally include in API requests. By default, fields with
10549	// empty or default values are omitted from API requests. However, any
10550	// non-pointer, non-interface field appearing in ForceSendFields will be
10551	// sent to the server regardless of whether the field is empty or not.
10552	// This may be used to include empty fields in Patch requests.
10553	ForceSendFields []string `json:"-"`
10554
10555	// NullFields is a list of field names (e.g. "BatchId") to include in
10556	// API requests with the JSON null value. By default, fields with empty
10557	// values are omitted from API requests. However, any field with an
10558	// empty value appearing in NullFields will be sent to the server as
10559	// null. It is an error if a field in this list has a non-empty value.
10560	// This may be used to include null fields in Patch requests.
10561	NullFields []string `json:"-"`
10562}
10563
10564func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10565	type NoMethod PosCustomBatchResponseEntry
10566	raw := NoMethod(*s)
10567	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10568}
10569
10570type PosDataProviders struct {
10571	// Country: Country code.
10572	Country string `json:"country,omitempty"`
10573
10574	// PosDataProviders: A list of POS data providers.
10575	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
10576
10577	// ForceSendFields is a list of field names (e.g. "Country") to
10578	// unconditionally include in API requests. By default, fields with
10579	// empty or default values are omitted from API requests. However, any
10580	// non-pointer, non-interface field appearing in ForceSendFields will be
10581	// sent to the server regardless of whether the field is empty or not.
10582	// This may be used to include empty fields in Patch requests.
10583	ForceSendFields []string `json:"-"`
10584
10585	// NullFields is a list of field names (e.g. "Country") to include in
10586	// API requests with the JSON null value. By default, fields with empty
10587	// values are omitted from API requests. However, any field with an
10588	// empty value appearing in NullFields will be sent to the server as
10589	// null. It is an error if a field in this list has a non-empty value.
10590	// This may be used to include null fields in Patch requests.
10591	NullFields []string `json:"-"`
10592}
10593
10594func (s *PosDataProviders) MarshalJSON() ([]byte, error) {
10595	type NoMethod PosDataProviders
10596	raw := NoMethod(*s)
10597	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10598}
10599
10600type PosDataProvidersPosDataProvider struct {
10601	// DisplayName: The display name of Pos data Provider.
10602	DisplayName string `json:"displayName,omitempty"`
10603
10604	// FullName: The full name of this POS data Provider.
10605	FullName string `json:"fullName,omitempty"`
10606
10607	// ProviderId: The ID of the account.
10608	ProviderId uint64 `json:"providerId,omitempty,string"`
10609
10610	// ForceSendFields is a list of field names (e.g. "DisplayName") to
10611	// unconditionally include in API requests. By default, fields with
10612	// empty or default values are omitted from API requests. However, any
10613	// non-pointer, non-interface field appearing in ForceSendFields will be
10614	// sent to the server regardless of whether the field is empty or not.
10615	// This may be used to include empty fields in Patch requests.
10616	ForceSendFields []string `json:"-"`
10617
10618	// NullFields is a list of field names (e.g. "DisplayName") to include
10619	// in API requests with the JSON null value. By default, fields with
10620	// empty values are omitted from API requests. However, any field with
10621	// an empty value appearing in NullFields will be sent to the server as
10622	// null. It is an error if a field in this list has a non-empty value.
10623	// This may be used to include null fields in Patch requests.
10624	NullFields []string `json:"-"`
10625}
10626
10627func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
10628	type NoMethod PosDataProvidersPosDataProvider
10629	raw := NoMethod(*s)
10630	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10631}
10632
10633// PosInventory: The absolute quantity of an item available at the given
10634// store.
10635type PosInventory struct {
10636	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10637	// the item.
10638	ContentLanguage string `json:"contentLanguage,omitempty"`
10639
10640	// Gtin: Global Trade Item Number.
10641	Gtin string `json:"gtin,omitempty"`
10642
10643	// ItemId: Required. A unique identifier for the item.
10644	ItemId string `json:"itemId,omitempty"`
10645
10646	// Kind: Identifies what kind of resource this is. Value: the fixed
10647	// string "content#posInventory"
10648	Kind string `json:"kind,omitempty"`
10649
10650	// Price: Required. The current price of the item.
10651	Price *Price `json:"price,omitempty"`
10652
10653	// Quantity: Required. The available quantity of the item.
10654	Quantity int64 `json:"quantity,omitempty,string"`
10655
10656	// StoreCode: Required. The identifier of the merchant's store. Either a
10657	// `storeCode` inserted via the API or the code of the store in Google
10658	// My Business.
10659	StoreCode string `json:"storeCode,omitempty"`
10660
10661	// TargetCountry: Required. The CLDR territory code for the item.
10662	TargetCountry string `json:"targetCountry,omitempty"`
10663
10664	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10665	Timestamp string `json:"timestamp,omitempty"`
10666
10667	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10668	// unconditionally include in API requests. By default, fields with
10669	// empty or default values are omitted from API requests. However, any
10670	// non-pointer, non-interface field appearing in ForceSendFields will be
10671	// sent to the server regardless of whether the field is empty or not.
10672	// This may be used to include empty fields in Patch requests.
10673	ForceSendFields []string `json:"-"`
10674
10675	// NullFields is a list of field names (e.g. "ContentLanguage") to
10676	// include in API requests with the JSON null value. By default, fields
10677	// with empty values are omitted from API requests. However, any field
10678	// with an empty value appearing in NullFields will be sent to the
10679	// server as null. It is an error if a field in this list has a
10680	// non-empty value. This may be used to include null fields in Patch
10681	// requests.
10682	NullFields []string `json:"-"`
10683}
10684
10685func (s *PosInventory) MarshalJSON() ([]byte, error) {
10686	type NoMethod PosInventory
10687	raw := NoMethod(*s)
10688	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10689}
10690
10691type PosInventoryRequest struct {
10692	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10693	// the item.
10694	ContentLanguage string `json:"contentLanguage,omitempty"`
10695
10696	// Gtin: Global Trade Item Number.
10697	Gtin string `json:"gtin,omitempty"`
10698
10699	// ItemId: Required. A unique identifier for the item.
10700	ItemId string `json:"itemId,omitempty"`
10701
10702	// Price: Required. The current price of the item.
10703	Price *Price `json:"price,omitempty"`
10704
10705	// Quantity: Required. The available quantity of the item.
10706	Quantity int64 `json:"quantity,omitempty,string"`
10707
10708	// StoreCode: Required. The identifier of the merchant's store. Either a
10709	// `storeCode` inserted via the API or the code of the store in Google
10710	// My Business.
10711	StoreCode string `json:"storeCode,omitempty"`
10712
10713	// TargetCountry: Required. The CLDR territory code for the item.
10714	TargetCountry string `json:"targetCountry,omitempty"`
10715
10716	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10717	Timestamp string `json:"timestamp,omitempty"`
10718
10719	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10720	// unconditionally include in API requests. By default, fields with
10721	// empty or default values are omitted from API requests. However, any
10722	// non-pointer, non-interface field appearing in ForceSendFields will be
10723	// sent to the server regardless of whether the field is empty or not.
10724	// This may be used to include empty fields in Patch requests.
10725	ForceSendFields []string `json:"-"`
10726
10727	// NullFields is a list of field names (e.g. "ContentLanguage") to
10728	// include in API requests with the JSON null value. By default, fields
10729	// with empty values are omitted from API requests. However, any field
10730	// with an empty value appearing in NullFields will be sent to the
10731	// server as null. It is an error if a field in this list has a
10732	// non-empty value. This may be used to include null fields in Patch
10733	// requests.
10734	NullFields []string `json:"-"`
10735}
10736
10737func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
10738	type NoMethod PosInventoryRequest
10739	raw := NoMethod(*s)
10740	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10741}
10742
10743type PosInventoryResponse struct {
10744	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10745	// the item.
10746	ContentLanguage string `json:"contentLanguage,omitempty"`
10747
10748	// Gtin: Global Trade Item Number.
10749	Gtin string `json:"gtin,omitempty"`
10750
10751	// ItemId: Required. A unique identifier for the item.
10752	ItemId string `json:"itemId,omitempty"`
10753
10754	// Kind: Identifies what kind of resource this is. Value: the fixed
10755	// string "content#posInventoryResponse".
10756	Kind string `json:"kind,omitempty"`
10757
10758	// Price: Required. The current price of the item.
10759	Price *Price `json:"price,omitempty"`
10760
10761	// Quantity: Required. The available quantity of the item.
10762	Quantity int64 `json:"quantity,omitempty,string"`
10763
10764	// StoreCode: Required. The identifier of the merchant's store. Either a
10765	// `storeCode` inserted via the API or the code of the store in Google
10766	// My Business.
10767	StoreCode string `json:"storeCode,omitempty"`
10768
10769	// TargetCountry: Required. The CLDR territory code for the item.
10770	TargetCountry string `json:"targetCountry,omitempty"`
10771
10772	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10773	Timestamp string `json:"timestamp,omitempty"`
10774
10775	// ServerResponse contains the HTTP response code and headers from the
10776	// server.
10777	googleapi.ServerResponse `json:"-"`
10778
10779	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10780	// unconditionally include in API requests. By default, fields with
10781	// empty or default values are omitted from API requests. However, any
10782	// non-pointer, non-interface field appearing in ForceSendFields will be
10783	// sent to the server regardless of whether the field is empty or not.
10784	// This may be used to include empty fields in Patch requests.
10785	ForceSendFields []string `json:"-"`
10786
10787	// NullFields is a list of field names (e.g. "ContentLanguage") to
10788	// include in API requests with the JSON null value. By default, fields
10789	// with empty values are omitted from API requests. However, any field
10790	// with an empty value appearing in NullFields will be sent to the
10791	// server as null. It is an error if a field in this list has a
10792	// non-empty value. This may be used to include null fields in Patch
10793	// requests.
10794	NullFields []string `json:"-"`
10795}
10796
10797func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
10798	type NoMethod PosInventoryResponse
10799	raw := NoMethod(*s)
10800	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10801}
10802
10803type PosListResponse struct {
10804	// Kind: Identifies what kind of resource this is. Value: the fixed
10805	// string "content#posListResponse".
10806	Kind string `json:"kind,omitempty"`
10807
10808	Resources []*PosStore `json:"resources,omitempty"`
10809
10810	// ServerResponse contains the HTTP response code and headers from the
10811	// server.
10812	googleapi.ServerResponse `json:"-"`
10813
10814	// ForceSendFields is a list of field names (e.g. "Kind") to
10815	// unconditionally include in API requests. By default, fields with
10816	// empty or default values are omitted from API requests. However, any
10817	// non-pointer, non-interface field appearing in ForceSendFields will be
10818	// sent to the server regardless of whether the field is empty or not.
10819	// This may be used to include empty fields in Patch requests.
10820	ForceSendFields []string `json:"-"`
10821
10822	// NullFields is a list of field names (e.g. "Kind") to include in API
10823	// requests with the JSON null value. By default, fields with empty
10824	// values are omitted from API requests. However, any field with an
10825	// empty value appearing in NullFields will be sent to the server as
10826	// null. It is an error if a field in this list has a non-empty value.
10827	// This may be used to include null fields in Patch requests.
10828	NullFields []string `json:"-"`
10829}
10830
10831func (s *PosListResponse) MarshalJSON() ([]byte, error) {
10832	type NoMethod PosListResponse
10833	raw := NoMethod(*s)
10834	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10835}
10836
10837// PosSale: The change of the available quantity of an item at the given
10838// store.
10839type PosSale struct {
10840	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10841	// the item.
10842	ContentLanguage string `json:"contentLanguage,omitempty"`
10843
10844	// Gtin: Global Trade Item Number.
10845	Gtin string `json:"gtin,omitempty"`
10846
10847	// ItemId: Required. A unique identifier for the item.
10848	ItemId string `json:"itemId,omitempty"`
10849
10850	// Kind: Identifies what kind of resource this is. Value: the fixed
10851	// string "content#posSale"
10852	Kind string `json:"kind,omitempty"`
10853
10854	// Price: Required. The price of the item.
10855	Price *Price `json:"price,omitempty"`
10856
10857	// Quantity: Required. The relative change of the available quantity.
10858	// Negative for items returned.
10859	Quantity int64 `json:"quantity,omitempty,string"`
10860
10861	// SaleId: A unique ID to group items from the same sale event.
10862	SaleId string `json:"saleId,omitempty"`
10863
10864	// StoreCode: Required. The identifier of the merchant's store. Either a
10865	// `storeCode` inserted via the API or the code of the store in Google
10866	// My Business.
10867	StoreCode string `json:"storeCode,omitempty"`
10868
10869	// TargetCountry: Required. The CLDR territory code for the item.
10870	TargetCountry string `json:"targetCountry,omitempty"`
10871
10872	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10873	Timestamp string `json:"timestamp,omitempty"`
10874
10875	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10876	// unconditionally include in API requests. By default, fields with
10877	// empty or default values are omitted from API requests. However, any
10878	// non-pointer, non-interface field appearing in ForceSendFields will be
10879	// sent to the server regardless of whether the field is empty or not.
10880	// This may be used to include empty fields in Patch requests.
10881	ForceSendFields []string `json:"-"`
10882
10883	// NullFields is a list of field names (e.g. "ContentLanguage") to
10884	// include in API requests with the JSON null value. By default, fields
10885	// with empty values are omitted from API requests. However, any field
10886	// with an empty value appearing in NullFields will be sent to the
10887	// server as null. It is an error if a field in this list has a
10888	// non-empty value. This may be used to include null fields in Patch
10889	// requests.
10890	NullFields []string `json:"-"`
10891}
10892
10893func (s *PosSale) MarshalJSON() ([]byte, error) {
10894	type NoMethod PosSale
10895	raw := NoMethod(*s)
10896	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10897}
10898
10899type PosSaleRequest struct {
10900	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10901	// the item.
10902	ContentLanguage string `json:"contentLanguage,omitempty"`
10903
10904	// Gtin: Global Trade Item Number.
10905	Gtin string `json:"gtin,omitempty"`
10906
10907	// ItemId: Required. A unique identifier for the item.
10908	ItemId string `json:"itemId,omitempty"`
10909
10910	// Price: Required. The price of the item.
10911	Price *Price `json:"price,omitempty"`
10912
10913	// Quantity: Required. The relative change of the available quantity.
10914	// Negative for items returned.
10915	Quantity int64 `json:"quantity,omitempty,string"`
10916
10917	// SaleId: A unique ID to group items from the same sale event.
10918	SaleId string `json:"saleId,omitempty"`
10919
10920	// StoreCode: Required. The identifier of the merchant's store. Either a
10921	// `storeCode` inserted via the API or the code of the store in Google
10922	// My Business.
10923	StoreCode string `json:"storeCode,omitempty"`
10924
10925	// TargetCountry: Required. The CLDR territory code for the item.
10926	TargetCountry string `json:"targetCountry,omitempty"`
10927
10928	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10929	Timestamp string `json:"timestamp,omitempty"`
10930
10931	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10932	// unconditionally include in API requests. By default, fields with
10933	// empty or default values are omitted from API requests. However, any
10934	// non-pointer, non-interface field appearing in ForceSendFields will be
10935	// sent to the server regardless of whether the field is empty or not.
10936	// This may be used to include empty fields in Patch requests.
10937	ForceSendFields []string `json:"-"`
10938
10939	// NullFields is a list of field names (e.g. "ContentLanguage") to
10940	// include in API requests with the JSON null value. By default, fields
10941	// with empty values are omitted from API requests. However, any field
10942	// with an empty value appearing in NullFields will be sent to the
10943	// server as null. It is an error if a field in this list has a
10944	// non-empty value. This may be used to include null fields in Patch
10945	// requests.
10946	NullFields []string `json:"-"`
10947}
10948
10949func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
10950	type NoMethod PosSaleRequest
10951	raw := NoMethod(*s)
10952	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10953}
10954
10955type PosSaleResponse struct {
10956	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10957	// the item.
10958	ContentLanguage string `json:"contentLanguage,omitempty"`
10959
10960	// Gtin: Global Trade Item Number.
10961	Gtin string `json:"gtin,omitempty"`
10962
10963	// ItemId: Required. A unique identifier for the item.
10964	ItemId string `json:"itemId,omitempty"`
10965
10966	// Kind: Identifies what kind of resource this is. Value: the fixed
10967	// string "content#posSaleResponse".
10968	Kind string `json:"kind,omitempty"`
10969
10970	// Price: Required. The price of the item.
10971	Price *Price `json:"price,omitempty"`
10972
10973	// Quantity: Required. The relative change of the available quantity.
10974	// Negative for items returned.
10975	Quantity int64 `json:"quantity,omitempty,string"`
10976
10977	// SaleId: A unique ID to group items from the same sale event.
10978	SaleId string `json:"saleId,omitempty"`
10979
10980	// StoreCode: Required. The identifier of the merchant's store. Either a
10981	// `storeCode` inserted via the API or the code of the store in Google
10982	// My Business.
10983	StoreCode string `json:"storeCode,omitempty"`
10984
10985	// TargetCountry: Required. The CLDR territory code for the item.
10986	TargetCountry string `json:"targetCountry,omitempty"`
10987
10988	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10989	Timestamp string `json:"timestamp,omitempty"`
10990
10991	// ServerResponse contains the HTTP response code and headers from the
10992	// server.
10993	googleapi.ServerResponse `json:"-"`
10994
10995	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10996	// unconditionally include in API requests. By default, fields with
10997	// empty or default values are omitted from API requests. However, any
10998	// non-pointer, non-interface field appearing in ForceSendFields will be
10999	// sent to the server regardless of whether the field is empty or not.
11000	// This may be used to include empty fields in Patch requests.
11001	ForceSendFields []string `json:"-"`
11002
11003	// NullFields is a list of field names (e.g. "ContentLanguage") to
11004	// include in API requests with the JSON null value. By default, fields
11005	// with empty values are omitted from API requests. However, any field
11006	// with an empty value appearing in NullFields will be sent to the
11007	// server as null. It is an error if a field in this list has a
11008	// non-empty value. This may be used to include null fields in Patch
11009	// requests.
11010	NullFields []string `json:"-"`
11011}
11012
11013func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
11014	type NoMethod PosSaleResponse
11015	raw := NoMethod(*s)
11016	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11017}
11018
11019// PosStore: Store resource.
11020type PosStore struct {
11021	// Kind: Identifies what kind of resource this is. Value: the fixed
11022	// string "content#posStore"
11023	Kind string `json:"kind,omitempty"`
11024
11025	// StoreAddress: Required. The street address of the store.
11026	StoreAddress string `json:"storeAddress,omitempty"`
11027
11028	// StoreCode: Required. A store identifier that is unique for the given
11029	// merchant.
11030	StoreCode string `json:"storeCode,omitempty"`
11031
11032	// ServerResponse contains the HTTP response code and headers from the
11033	// server.
11034	googleapi.ServerResponse `json:"-"`
11035
11036	// ForceSendFields is a list of field names (e.g. "Kind") to
11037	// unconditionally include in API requests. By default, fields with
11038	// empty or default values are omitted from API requests. However, any
11039	// non-pointer, non-interface field appearing in ForceSendFields will be
11040	// sent to the server regardless of whether the field is empty or not.
11041	// This may be used to include empty fields in Patch requests.
11042	ForceSendFields []string `json:"-"`
11043
11044	// NullFields is a list of field names (e.g. "Kind") to include in API
11045	// requests with the JSON null value. By default, fields with empty
11046	// values are omitted from API requests. However, any field with an
11047	// empty value appearing in NullFields will be sent to the server as
11048	// null. It is an error if a field in this list has a non-empty value.
11049	// This may be used to include null fields in Patch requests.
11050	NullFields []string `json:"-"`
11051}
11052
11053func (s *PosStore) MarshalJSON() ([]byte, error) {
11054	type NoMethod PosStore
11055	raw := NoMethod(*s)
11056	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11057}
11058
11059type PostalCodeGroup struct {
11060	// Country: The CLDR territory code of the country the postal code group
11061	// applies to. Required.
11062	Country string `json:"country,omitempty"`
11063
11064	// Name: The name of the postal code group, referred to in headers.
11065	// Required.
11066	Name string `json:"name,omitempty"`
11067
11068	// PostalCodeRanges: A range of postal codes. Required.
11069	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
11070
11071	// ForceSendFields is a list of field names (e.g. "Country") to
11072	// unconditionally include in API requests. By default, fields with
11073	// empty or default values are omitted from API requests. However, any
11074	// non-pointer, non-interface field appearing in ForceSendFields will be
11075	// sent to the server regardless of whether the field is empty or not.
11076	// This may be used to include empty fields in Patch requests.
11077	ForceSendFields []string `json:"-"`
11078
11079	// NullFields is a list of field names (e.g. "Country") to include in
11080	// API requests with the JSON null value. By default, fields with empty
11081	// values are omitted from API requests. However, any field with an
11082	// empty value appearing in NullFields will be sent to the server as
11083	// null. It is an error if a field in this list has a non-empty value.
11084	// This may be used to include null fields in Patch requests.
11085	NullFields []string `json:"-"`
11086}
11087
11088func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
11089	type NoMethod PostalCodeGroup
11090	raw := NoMethod(*s)
11091	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11092}
11093
11094type PostalCodeRange struct {
11095	// PostalCodeRangeBegin: A postal code or a pattern of the form
11096	// `prefix*` denoting the inclusive lower bound of the range defining
11097	// the area. Examples values: "94108", "9410*", "9*". Required.
11098	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
11099
11100	// PostalCodeRangeEnd: A postal code or a pattern of the form `prefix*`
11101	// denoting the inclusive upper bound of the range defining the area. It
11102	// must have the same length as `postalCodeRangeBegin`: if
11103	// `postalCodeRangeBegin` is a postal code then `postalCodeRangeEnd`
11104	// must be a postal code too; if `postalCodeRangeBegin` is a pattern
11105	// then `postalCodeRangeEnd` must be a pattern with the same prefix
11106	// length. Optional: if not set, then the area is defined as being all
11107	// the postal codes matching `postalCodeRangeBegin`.
11108	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
11109
11110	// ForceSendFields is a list of field names (e.g.
11111	// "PostalCodeRangeBegin") to unconditionally include in API requests.
11112	// By default, fields with empty or default values are omitted from API
11113	// requests. However, any non-pointer, non-interface field appearing in
11114	// ForceSendFields will be sent to the server regardless of whether the
11115	// field is empty or not. This may be used to include empty fields in
11116	// Patch requests.
11117	ForceSendFields []string `json:"-"`
11118
11119	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
11120	// include in API requests with the JSON null value. By default, fields
11121	// with empty values are omitted from API requests. However, any field
11122	// with an empty value appearing in NullFields will be sent to the
11123	// server as null. It is an error if a field in this list has a
11124	// non-empty value. This may be used to include null fields in Patch
11125	// requests.
11126	NullFields []string `json:"-"`
11127}
11128
11129func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
11130	type NoMethod PostalCodeRange
11131	raw := NoMethod(*s)
11132	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11133}
11134
11135type Price struct {
11136	// Currency: The currency of the price.
11137	Currency string `json:"currency,omitempty"`
11138
11139	// Value: The price represented as a number.
11140	Value string `json:"value,omitempty"`
11141
11142	// ForceSendFields is a list of field names (e.g. "Currency") to
11143	// unconditionally include in API requests. By default, fields with
11144	// empty or default values are omitted from API requests. However, any
11145	// non-pointer, non-interface field appearing in ForceSendFields will be
11146	// sent to the server regardless of whether the field is empty or not.
11147	// This may be used to include empty fields in Patch requests.
11148	ForceSendFields []string `json:"-"`
11149
11150	// NullFields is a list of field names (e.g. "Currency") to include in
11151	// API requests with the JSON null value. By default, fields with empty
11152	// values are omitted from API requests. However, any field with an
11153	// empty value appearing in NullFields will be sent to the server as
11154	// null. It is an error if a field in this list has a non-empty value.
11155	// This may be used to include null fields in Patch requests.
11156	NullFields []string `json:"-"`
11157}
11158
11159func (s *Price) MarshalJSON() ([]byte, error) {
11160	type NoMethod Price
11161	raw := NoMethod(*s)
11162	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11163}
11164
11165// PriceAmount: The price represented as a number and currency.
11166type PriceAmount struct {
11167	// Currency: The currency of the price.
11168	Currency string `json:"currency,omitempty"`
11169
11170	// Value: The price represented as a number.
11171	Value string `json:"value,omitempty"`
11172
11173	// ForceSendFields is a list of field names (e.g. "Currency") to
11174	// unconditionally include in API requests. By default, fields with
11175	// empty or default values are omitted from API requests. However, any
11176	// non-pointer, non-interface field appearing in ForceSendFields will be
11177	// sent to the server regardless of whether the field is empty or not.
11178	// This may be used to include empty fields in Patch requests.
11179	ForceSendFields []string `json:"-"`
11180
11181	// NullFields is a list of field names (e.g. "Currency") to include in
11182	// API requests with the JSON null value. By default, fields with empty
11183	// values are omitted from API requests. However, any field with an
11184	// empty value appearing in NullFields will be sent to the server as
11185	// null. It is an error if a field in this list has a non-empty value.
11186	// This may be used to include null fields in Patch requests.
11187	NullFields []string `json:"-"`
11188}
11189
11190func (s *PriceAmount) MarshalJSON() ([]byte, error) {
11191	type NoMethod PriceAmount
11192	raw := NoMethod(*s)
11193	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11194}
11195
11196// Product:  Required product attributes are primarily defined by the
11197// products data specification. See the Products Data Specification Help
11198// Center article for information. Product data. After inserting,
11199// updating, or deleting a product, it may take several minutes before
11200// changes take effect.
11201type Product struct {
11202	// AdditionalImageLinks: Additional URLs of images of the item.
11203	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
11204
11205	// AdditionalSizeType: Additional cut of the item. Used together with
11206	// size_type to represent combined size types for apparel items.
11207	AdditionalSizeType string `json:"additionalSizeType,omitempty"`
11208
11209	// AdsGrouping: Used to group items in an arbitrary way. Only for CPA%,
11210	// discouraged otherwise.
11211	AdsGrouping string `json:"adsGrouping,omitempty"`
11212
11213	// AdsLabels: Similar to ads_grouping, but only works on CPC.
11214	AdsLabels []string `json:"adsLabels,omitempty"`
11215
11216	// AdsRedirect: Allows advertisers to override the item URL when the
11217	// product is shown within the context of Product Ads.
11218	AdsRedirect string `json:"adsRedirect,omitempty"`
11219
11220	// Adult: Should be set to true if the item is targeted towards adults.
11221	Adult bool `json:"adult,omitempty"`
11222
11223	// AgeGroup: Target age group of the item.
11224	AgeGroup string `json:"ageGroup,omitempty"`
11225
11226	// Availability: Availability status of the item.
11227	Availability string `json:"availability,omitempty"`
11228
11229	// AvailabilityDate: The day a pre-ordered product becomes available for
11230	// delivery, in ISO 8601 format.
11231	AvailabilityDate string `json:"availabilityDate,omitempty"`
11232
11233	// Brand: Brand of the item.
11234	Brand string `json:"brand,omitempty"`
11235
11236	// CanonicalLink: URL for the canonical version of your item's landing
11237	// page.
11238	CanonicalLink string `json:"canonicalLink,omitempty"`
11239
11240	// Channel: Required. The item's channel (online or local). Acceptable
11241	// values are: - "local" - "online"
11242	Channel string `json:"channel,omitempty"`
11243
11244	// Color: Color of the item.
11245	Color string `json:"color,omitempty"`
11246
11247	// Condition: Condition or state of the item.
11248	Condition string `json:"condition,omitempty"`
11249
11250	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11251	// the item.
11252	ContentLanguage string `json:"contentLanguage,omitempty"`
11253
11254	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
11255	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
11256
11257	// CustomAttributes: A list of custom (merchant-provided) attributes. It
11258	// can also be used for submitting any attribute of the feed
11259	// specification in its generic form (e.g., `{ "name": "size type",
11260	// "value": "regular" }`). This is useful for submitting attributes not
11261	// explicitly exposed by the API, such as additional attributes used for
11262	// Buy on Google (formerly known as Shopping Actions).
11263	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
11264
11265	// CustomLabel0: Custom label 0 for custom grouping of items in a
11266	// Shopping campaign.
11267	CustomLabel0 string `json:"customLabel0,omitempty"`
11268
11269	// CustomLabel1: Custom label 1 for custom grouping of items in a
11270	// Shopping campaign.
11271	CustomLabel1 string `json:"customLabel1,omitempty"`
11272
11273	// CustomLabel2: Custom label 2 for custom grouping of items in a
11274	// Shopping campaign.
11275	CustomLabel2 string `json:"customLabel2,omitempty"`
11276
11277	// CustomLabel3: Custom label 3 for custom grouping of items in a
11278	// Shopping campaign.
11279	CustomLabel3 string `json:"customLabel3,omitempty"`
11280
11281	// CustomLabel4: Custom label 4 for custom grouping of items in a
11282	// Shopping campaign.
11283	CustomLabel4 string `json:"customLabel4,omitempty"`
11284
11285	// Description: Description of the item.
11286	Description string `json:"description,omitempty"`
11287
11288	// DisplayAdsId: An identifier for an item for dynamic remarketing
11289	// campaigns.
11290	DisplayAdsId string `json:"displayAdsId,omitempty"`
11291
11292	// DisplayAdsLink: URL directly to your item's landing page for dynamic
11293	// remarketing campaigns.
11294	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
11295
11296	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
11297	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
11298
11299	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
11300	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
11301
11302	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
11303	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
11304
11305	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
11306	// directive 2010/30/EU.
11307	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
11308
11309	// ExcludedDestinations: The list of destinations to exclude for this
11310	// target (corresponds to unchecked check boxes in Merchant Center).
11311	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
11312
11313	// ExpirationDate: Date on which the item should expire, as specified
11314	// upon insertion, in ISO 8601 format. The actual expiration date in
11315	// Google Shopping is exposed in `productstatuses` as
11316	// `googleExpirationDate` and might be earlier if `expirationDate` is
11317	// too far in the future.
11318	ExpirationDate string `json:"expirationDate,omitempty"`
11319
11320	// Gender: Target gender of the item.
11321	Gender string `json:"gender,omitempty"`
11322
11323	// GoogleProductCategory: Google's category of the item (see Google
11324	// product taxonomy
11325	// (https://support.google.com/merchants/answer/1705911)). When querying
11326	// products, this field will contain the user provided value. There is
11327	// currently no way to get back the auto assigned google product
11328	// categories through the API.
11329	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
11330
11331	// Gtin: Global Trade Item Number (GTIN) of the item.
11332	Gtin string `json:"gtin,omitempty"`
11333
11334	// Id: The REST ID of the product. Content API methods that operate on
11335	// products take this as their `productId` parameter. The REST ID for a
11336	// product is of the form channel:contentLanguage: targetCountry:
11337	// offerId.
11338	Id string `json:"id,omitempty"`
11339
11340	// IdentifierExists: False when the item does not have unique product
11341	// identifiers appropriate to its category, such as GTIN, MPN, and
11342	// brand. Required according to the Unique Product Identifier Rules for
11343	// all target countries except for Canada.
11344	IdentifierExists bool `json:"identifierExists,omitempty"`
11345
11346	// ImageLink: URL of an image of the item.
11347	ImageLink string `json:"imageLink,omitempty"`
11348
11349	// IncludedDestinations: The list of destinations to include for this
11350	// target (corresponds to checked check boxes in Merchant Center).
11351	// Default destinations are always included unless provided in
11352	// `excludedDestinations`.
11353	IncludedDestinations []string `json:"includedDestinations,omitempty"`
11354
11355	// Installment: Number and amount of installments to pay for an item.
11356	Installment *Installment `json:"installment,omitempty"`
11357
11358	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
11359	// a custom grouping of different products sold by a merchant for a
11360	// single price.
11361	IsBundle bool `json:"isBundle,omitempty"`
11362
11363	// ItemGroupId: Shared identifier for all variants of the same product.
11364	ItemGroupId string `json:"itemGroupId,omitempty"`
11365
11366	// Kind: Identifies what kind of resource this is. Value: the fixed
11367	// string "content#product"
11368	Kind string `json:"kind,omitempty"`
11369
11370	// Link: URL directly linking to your item's page on your website.
11371	Link string `json:"link,omitempty"`
11372
11373	// LinkTemplate: URL template for merchant hosted local storefront.
11374	LinkTemplate string `json:"linkTemplate,omitempty"`
11375
11376	// LoyaltyPoints: Loyalty points that users receive after purchasing the
11377	// item. Japan only.
11378	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
11379
11380	// Material: The material of which the item is made.
11381	Material string `json:"material,omitempty"`
11382
11383	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
11384	// EU directive 2010/30/EU.
11385	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
11386
11387	// MaxHandlingTime: Maximal product handling time (in business days).
11388	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
11389
11390	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
11391	// EU directive 2010/30/EU.
11392	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
11393
11394	// MinHandlingTime: Minimal product handling time (in business days).
11395	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
11396
11397	// MobileLink: URL for the mobile-optimized version of your item's
11398	// landing page.
11399	MobileLink string `json:"mobileLink,omitempty"`
11400
11401	// MobileLinkTemplate: URL template for merchant hosted local storefront
11402	// optimized for mobile devices.
11403	MobileLinkTemplate string `json:"mobileLinkTemplate,omitempty"`
11404
11405	// Mpn: Manufacturer Part Number (MPN) of the item.
11406	Mpn string `json:"mpn,omitempty"`
11407
11408	// Multipack: The number of identical products in a merchant-defined
11409	// multipack.
11410	Multipack int64 `json:"multipack,omitempty,string"`
11411
11412	// OfferId: Required. A unique identifier for the item. Leading and
11413	// trailing whitespaces are stripped and multiple whitespaces are
11414	// replaced by a single whitespace upon submission. Only valid unicode
11415	// characters are accepted. See the products feed specification for
11416	// details. *Note:* Content API methods that operate on products take
11417	// the REST ID of the product, *not* this identifier.
11418	OfferId string `json:"offerId,omitempty"`
11419
11420	// Pattern: The item's pattern (e.g. polka dots).
11421	Pattern string `json:"pattern,omitempty"`
11422
11423	// PickupMethod: The pick up option for the item. Acceptable values are:
11424	// - "buy" - "reserve" - "ship to store" - "not supported"
11425	PickupMethod string `json:"pickupMethod,omitempty"`
11426
11427	// PickupSla: Item store pickup timeline. Acceptable values are: -
11428	// "same day" - "next day" - "2-day" - "3-day" - "4-day" -
11429	// "5-day" - "6-day" - "7-day" - "multi-week"
11430	PickupSla string `json:"pickupSla,omitempty"`
11431
11432	// Price: Price of the item.
11433	Price *Price `json:"price,omitempty"`
11434
11435	// ProductDetails: Technical specification or additional product
11436	// details.
11437	ProductDetails []*ProductProductDetail `json:"productDetails,omitempty"`
11438
11439	// ProductHighlights: Bullet points describing the most relevant
11440	// highlights of a product.
11441	ProductHighlights []string `json:"productHighlights,omitempty"`
11442
11443	// ProductTypes: Categories of the item (formatted as in products data
11444	// specification).
11445	ProductTypes []string `json:"productTypes,omitempty"`
11446
11447	// PromotionIds: The unique ID of a promotion.
11448	PromotionIds []string `json:"promotionIds,omitempty"`
11449
11450	// SalePrice: Advertised sale price of the item.
11451	SalePrice *Price `json:"salePrice,omitempty"`
11452
11453	// SalePriceEffectiveDate: Date range during which the item is on sale
11454	// (see products data specification ).
11455	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
11456
11457	// SellOnGoogleQuantity: The quantity of the product that is available
11458	// for selling on Google. Supported only for online products.
11459	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
11460
11461	// Shipping: Shipping rules.
11462	Shipping []*ProductShipping `json:"shipping,omitempty"`
11463
11464	// ShippingHeight: Height of the item for shipping.
11465	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
11466
11467	// ShippingLabel: The shipping label of the product, used to group
11468	// product in account-level shipping rules.
11469	ShippingLabel string `json:"shippingLabel,omitempty"`
11470
11471	// ShippingLength: Length of the item for shipping.
11472	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
11473
11474	// ShippingWeight: Weight of the item for shipping.
11475	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
11476
11477	// ShippingWidth: Width of the item for shipping.
11478	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
11479
11480	// ShoppingAdsExcludedCountries: List of country codes (ISO 3166-1
11481	// alpha-2) to exclude the offer from Shopping Ads destination.
11482	// Countries from this list are removed from countries configured in MC
11483	// feed settings.
11484	ShoppingAdsExcludedCountries []string `json:"shoppingAdsExcludedCountries,omitempty"`
11485
11486	// SizeSystem: System in which the size is specified. Recommended for
11487	// apparel items.
11488	SizeSystem string `json:"sizeSystem,omitempty"`
11489
11490	// SizeType: The cut of the item. Recommended for apparel items.
11491	SizeType string `json:"sizeType,omitempty"`
11492
11493	// Sizes: Size of the item. Only one value is allowed. For variants with
11494	// different sizes, insert a separate product for each size with the
11495	// same `itemGroupId` value (see size definition).
11496	Sizes []string `json:"sizes,omitempty"`
11497
11498	// Source: The source of the offer, i.e., how the offer was created.
11499	// Acceptable values are: - "api" - "crawl" - "feed"
11500	Source string `json:"source,omitempty"`
11501
11502	// SubscriptionCost: Number of periods (months or years) and amount of
11503	// payment per period for an item with an associated subscription
11504	// contract.
11505	SubscriptionCost *ProductSubscriptionCost `json:"subscriptionCost,omitempty"`
11506
11507	// TargetCountry: Required. The CLDR territory code for the item.
11508	TargetCountry string `json:"targetCountry,omitempty"`
11509
11510	// TaxCategory: The tax category of the product, used to configure
11511	// detailed tax nexus in account-level tax settings.
11512	TaxCategory string `json:"taxCategory,omitempty"`
11513
11514	// Taxes: Tax information.
11515	Taxes []*ProductTax `json:"taxes,omitempty"`
11516
11517	// Title: Title of the item.
11518	Title string `json:"title,omitempty"`
11519
11520	// TransitTimeLabel: The transit time label of the product, used to
11521	// group product in account-level transit time tables.
11522	TransitTimeLabel string `json:"transitTimeLabel,omitempty"`
11523
11524	// UnitPricingBaseMeasure: The preference of the denominator of the unit
11525	// price.
11526	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
11527
11528	// UnitPricingMeasure: The measure and dimension of an item.
11529	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
11530
11531	// ServerResponse contains the HTTP response code and headers from the
11532	// server.
11533	googleapi.ServerResponse `json:"-"`
11534
11535	// ForceSendFields is a list of field names (e.g.
11536	// "AdditionalImageLinks") to unconditionally include in API requests.
11537	// By default, fields with empty or default values are omitted from API
11538	// requests. However, any non-pointer, non-interface field appearing in
11539	// ForceSendFields will be sent to the server regardless of whether the
11540	// field is empty or not. This may be used to include empty fields in
11541	// Patch requests.
11542	ForceSendFields []string `json:"-"`
11543
11544	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
11545	// include in API requests with the JSON null value. By default, fields
11546	// with empty values are omitted from API requests. However, any field
11547	// with an empty value appearing in NullFields will be sent to the
11548	// server as null. It is an error if a field in this list has a
11549	// non-empty value. This may be used to include null fields in Patch
11550	// requests.
11551	NullFields []string `json:"-"`
11552}
11553
11554func (s *Product) MarshalJSON() ([]byte, error) {
11555	type NoMethod Product
11556	raw := NoMethod(*s)
11557	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11558}
11559
11560func (s *Product) UnmarshalJSON(data []byte) error {
11561	type NoMethod Product
11562	var s1 struct {
11563		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
11564		*NoMethod
11565	}
11566	s1.NoMethod = (*NoMethod)(s)
11567	if err := json.Unmarshal(data, &s1); err != nil {
11568		return err
11569	}
11570	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
11571	return nil
11572}
11573
11574type ProductAmount struct {
11575	// PriceAmount: The pre-tax or post-tax price depending on the location
11576	// of the order.
11577	PriceAmount *Price `json:"priceAmount,omitempty"`
11578
11579	// RemittedTaxAmount: Remitted tax value.
11580	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
11581
11582	// TaxAmount: Tax value.
11583	TaxAmount *Price `json:"taxAmount,omitempty"`
11584
11585	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
11586	// unconditionally include in API requests. By default, fields with
11587	// empty or default values are omitted from API requests. However, any
11588	// non-pointer, non-interface field appearing in ForceSendFields will be
11589	// sent to the server regardless of whether the field is empty or not.
11590	// This may be used to include empty fields in Patch requests.
11591	ForceSendFields []string `json:"-"`
11592
11593	// NullFields is a list of field names (e.g. "PriceAmount") to include
11594	// in API requests with the JSON null value. By default, fields with
11595	// empty values are omitted from API requests. However, any field with
11596	// an empty value appearing in NullFields will be sent to the server as
11597	// null. It is an error if a field in this list has a non-empty value.
11598	// This may be used to include null fields in Patch requests.
11599	NullFields []string `json:"-"`
11600}
11601
11602func (s *ProductAmount) MarshalJSON() ([]byte, error) {
11603	type NoMethod ProductAmount
11604	raw := NoMethod(*s)
11605	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11606}
11607
11608type ProductProductDetail struct {
11609	// AttributeName: The name of the product detail.
11610	AttributeName string `json:"attributeName,omitempty"`
11611
11612	// AttributeValue: The value of the product detail.
11613	AttributeValue string `json:"attributeValue,omitempty"`
11614
11615	// SectionName: The section header used to group a set of product
11616	// details.
11617	SectionName string `json:"sectionName,omitempty"`
11618
11619	// ForceSendFields is a list of field names (e.g. "AttributeName") to
11620	// unconditionally include in API requests. By default, fields with
11621	// empty or default values are omitted from API requests. However, any
11622	// non-pointer, non-interface field appearing in ForceSendFields will be
11623	// sent to the server regardless of whether the field is empty or not.
11624	// This may be used to include empty fields in Patch requests.
11625	ForceSendFields []string `json:"-"`
11626
11627	// NullFields is a list of field names (e.g. "AttributeName") to include
11628	// in API requests with the JSON null value. By default, fields with
11629	// empty values are omitted from API requests. However, any field with
11630	// an empty value appearing in NullFields will be sent to the server as
11631	// null. It is an error if a field in this list has a non-empty value.
11632	// This may be used to include null fields in Patch requests.
11633	NullFields []string `json:"-"`
11634}
11635
11636func (s *ProductProductDetail) MarshalJSON() ([]byte, error) {
11637	type NoMethod ProductProductDetail
11638	raw := NoMethod(*s)
11639	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11640}
11641
11642type ProductShipping struct {
11643	// Country: The CLDR territory code of the country to which an item will
11644	// ship.
11645	Country string `json:"country,omitempty"`
11646
11647	// LocationGroupName: The location where the shipping is applicable,
11648	// represented by a location group name.
11649	LocationGroupName string `json:"locationGroupName,omitempty"`
11650
11651	// LocationId: The numeric ID of a location that the shipping rate
11652	// applies to as defined in the AdWords API.
11653	LocationId int64 `json:"locationId,omitempty,string"`
11654
11655	// MaxHandlingTime: Maximum handling time (inclusive) between when the
11656	// order is received and shipped in business days. 0 means that the
11657	// order is shipped on the same day as it is received if it happens
11658	// before the cut-off time. Both maxHandlingTime and maxTransitTime are
11659	// required if providing shipping speeds.
11660	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
11661
11662	// MaxTransitTime: Maximum transit time (inclusive) between when the
11663	// order has shipped and when it is delivered in business days. 0 means
11664	// that the order is delivered on the same day as it ships. Both
11665	// maxHandlingTime and maxTransitTime are required if providing shipping
11666	// speeds.
11667	MaxTransitTime int64 `json:"maxTransitTime,omitempty,string"`
11668
11669	// MinHandlingTime: Minimum handling time (inclusive) between when the
11670	// order is received and shipped in business days. 0 means that the
11671	// order is shipped on the same day as it is received if it happens
11672	// before the cut-off time. minHandlingTime can only be present together
11673	// with maxHandlingTime; but it is not required if maxHandlingTime is
11674	// present.
11675	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
11676
11677	// MinTransitTime: Minimum transit time (inclusive) between when the
11678	// order has shipped and when it is delivered in business days. 0 means
11679	// that the order is delivered on the same day as it ships.
11680	// minTransitTime can only be present together with maxTransitTime; but
11681	// it is not required if maxTransitTime is present.
11682	MinTransitTime int64 `json:"minTransitTime,omitempty,string"`
11683
11684	// PostalCode: The postal code range that the shipping rate applies to,
11685	// represented by a postal code, a postal code prefix followed by a *
11686	// wildcard, a range between two postal codes or two postal code
11687	// prefixes of equal length.
11688	PostalCode string `json:"postalCode,omitempty"`
11689
11690	// Price: Fixed shipping price, represented as a number.
11691	Price *Price `json:"price,omitempty"`
11692
11693	// Region: The geographic region to which a shipping rate applies.
11694	Region string `json:"region,omitempty"`
11695
11696	// Service: A free-form description of the service class or delivery
11697	// speed.
11698	Service string `json:"service,omitempty"`
11699
11700	// ForceSendFields is a list of field names (e.g. "Country") to
11701	// unconditionally include in API requests. By default, fields with
11702	// empty or default values are omitted from API requests. However, any
11703	// non-pointer, non-interface field appearing in ForceSendFields will be
11704	// sent to the server regardless of whether the field is empty or not.
11705	// This may be used to include empty fields in Patch requests.
11706	ForceSendFields []string `json:"-"`
11707
11708	// NullFields is a list of field names (e.g. "Country") to include in
11709	// API requests with the JSON null value. By default, fields with empty
11710	// values are omitted from API requests. However, any field with an
11711	// empty value appearing in NullFields will be sent to the server as
11712	// null. It is an error if a field in this list has a non-empty value.
11713	// This may be used to include null fields in Patch requests.
11714	NullFields []string `json:"-"`
11715}
11716
11717func (s *ProductShipping) MarshalJSON() ([]byte, error) {
11718	type NoMethod ProductShipping
11719	raw := NoMethod(*s)
11720	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11721}
11722
11723type ProductShippingDimension struct {
11724	// Unit: The unit of value.
11725	Unit string `json:"unit,omitempty"`
11726
11727	// Value: The dimension of the product used to calculate the shipping
11728	// cost of the item.
11729	Value float64 `json:"value,omitempty"`
11730
11731	// ForceSendFields is a list of field names (e.g. "Unit") to
11732	// unconditionally include in API requests. By default, fields with
11733	// empty or default values are omitted from API requests. However, any
11734	// non-pointer, non-interface field appearing in ForceSendFields will be
11735	// sent to the server regardless of whether the field is empty or not.
11736	// This may be used to include empty fields in Patch requests.
11737	ForceSendFields []string `json:"-"`
11738
11739	// NullFields is a list of field names (e.g. "Unit") to include in API
11740	// requests with the JSON null value. By default, fields with empty
11741	// values are omitted from API requests. However, any field with an
11742	// empty value appearing in NullFields will be sent to the server as
11743	// null. It is an error if a field in this list has a non-empty value.
11744	// This may be used to include null fields in Patch requests.
11745	NullFields []string `json:"-"`
11746}
11747
11748func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
11749	type NoMethod ProductShippingDimension
11750	raw := NoMethod(*s)
11751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11752}
11753
11754func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
11755	type NoMethod ProductShippingDimension
11756	var s1 struct {
11757		Value gensupport.JSONFloat64 `json:"value"`
11758		*NoMethod
11759	}
11760	s1.NoMethod = (*NoMethod)(s)
11761	if err := json.Unmarshal(data, &s1); err != nil {
11762		return err
11763	}
11764	s.Value = float64(s1.Value)
11765	return nil
11766}
11767
11768type ProductShippingWeight struct {
11769	// Unit: The unit of value.
11770	Unit string `json:"unit,omitempty"`
11771
11772	// Value: The weight of the product used to calculate the shipping cost
11773	// of the item.
11774	Value float64 `json:"value,omitempty"`
11775
11776	// ForceSendFields is a list of field names (e.g. "Unit") to
11777	// unconditionally include in API requests. By default, fields with
11778	// empty or default values are omitted from API requests. However, any
11779	// non-pointer, non-interface field appearing in ForceSendFields will be
11780	// sent to the server regardless of whether the field is empty or not.
11781	// This may be used to include empty fields in Patch requests.
11782	ForceSendFields []string `json:"-"`
11783
11784	// NullFields is a list of field names (e.g. "Unit") to include in API
11785	// requests with the JSON null value. By default, fields with empty
11786	// values are omitted from API requests. However, any field with an
11787	// empty value appearing in NullFields will be sent to the server as
11788	// null. It is an error if a field in this list has a non-empty value.
11789	// This may be used to include null fields in Patch requests.
11790	NullFields []string `json:"-"`
11791}
11792
11793func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
11794	type NoMethod ProductShippingWeight
11795	raw := NoMethod(*s)
11796	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11797}
11798
11799func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
11800	type NoMethod ProductShippingWeight
11801	var s1 struct {
11802		Value gensupport.JSONFloat64 `json:"value"`
11803		*NoMethod
11804	}
11805	s1.NoMethod = (*NoMethod)(s)
11806	if err := json.Unmarshal(data, &s1); err != nil {
11807		return err
11808	}
11809	s.Value = float64(s1.Value)
11810	return nil
11811}
11812
11813// ProductStatus: The status of a product, i.e., information about a
11814// product computed asynchronously.
11815type ProductStatus struct {
11816	// CreationDate: Date on which the item has been created, in ISO 8601
11817	// format.
11818	CreationDate string `json:"creationDate,omitempty"`
11819
11820	// DestinationStatuses: The intended destinations for the product.
11821	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
11822
11823	// GoogleExpirationDate: Date on which the item expires in Google
11824	// Shopping, in ISO 8601 format.
11825	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
11826
11827	// ItemLevelIssues: A list of all issues associated with the product.
11828	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
11829
11830	// Kind: Identifies what kind of resource this is. Value: the fixed
11831	// string "content#productStatus"
11832	Kind string `json:"kind,omitempty"`
11833
11834	// LastUpdateDate: Date on which the item has been last updated, in ISO
11835	// 8601 format.
11836	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
11837
11838	// Link: The link to the product.
11839	Link string `json:"link,omitempty"`
11840
11841	// ProductId: The ID of the product for which status is reported.
11842	ProductId string `json:"productId,omitempty"`
11843
11844	// Title: The title of the product.
11845	Title string `json:"title,omitempty"`
11846
11847	// ServerResponse contains the HTTP response code and headers from the
11848	// server.
11849	googleapi.ServerResponse `json:"-"`
11850
11851	// ForceSendFields is a list of field names (e.g. "CreationDate") to
11852	// unconditionally include in API requests. By default, fields with
11853	// empty or default values are omitted from API requests. However, any
11854	// non-pointer, non-interface field appearing in ForceSendFields will be
11855	// sent to the server regardless of whether the field is empty or not.
11856	// This may be used to include empty fields in Patch requests.
11857	ForceSendFields []string `json:"-"`
11858
11859	// NullFields is a list of field names (e.g. "CreationDate") to include
11860	// in API requests with the JSON null value. By default, fields with
11861	// empty values are omitted from API requests. However, any field with
11862	// an empty value appearing in NullFields will be sent to the server as
11863	// null. It is an error if a field in this list has a non-empty value.
11864	// This may be used to include null fields in Patch requests.
11865	NullFields []string `json:"-"`
11866}
11867
11868func (s *ProductStatus) MarshalJSON() ([]byte, error) {
11869	type NoMethod ProductStatus
11870	raw := NoMethod(*s)
11871	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11872}
11873
11874type ProductStatusDestinationStatus struct {
11875	// ApprovedCountries: List of country codes (ISO 3166-1 alpha-2) where
11876	// the offer is approved.
11877	ApprovedCountries []string `json:"approvedCountries,omitempty"`
11878
11879	// Destination: The name of the destination
11880	Destination string `json:"destination,omitempty"`
11881
11882	// DisapprovedCountries: List of country codes (ISO 3166-1 alpha-2)
11883	// where the offer is disapproved.
11884	DisapprovedCountries []string `json:"disapprovedCountries,omitempty"`
11885
11886	// PendingCountries: List of country codes (ISO 3166-1 alpha-2) where
11887	// the offer is pending approval.
11888	PendingCountries []string `json:"pendingCountries,omitempty"`
11889
11890	// Status: Destination approval status in `targetCountry` of the offer.
11891	Status string `json:"status,omitempty"`
11892
11893	// ForceSendFields is a list of field names (e.g. "ApprovedCountries")
11894	// to unconditionally include in API requests. By default, fields with
11895	// empty or default values are omitted from API requests. However, any
11896	// non-pointer, non-interface field appearing in ForceSendFields will be
11897	// sent to the server regardless of whether the field is empty or not.
11898	// This may be used to include empty fields in Patch requests.
11899	ForceSendFields []string `json:"-"`
11900
11901	// NullFields is a list of field names (e.g. "ApprovedCountries") to
11902	// include in API requests with the JSON null value. By default, fields
11903	// with empty values are omitted from API requests. However, any field
11904	// with an empty value appearing in NullFields will be sent to the
11905	// server as null. It is an error if a field in this list has a
11906	// non-empty value. This may be used to include null fields in Patch
11907	// requests.
11908	NullFields []string `json:"-"`
11909}
11910
11911func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
11912	type NoMethod ProductStatusDestinationStatus
11913	raw := NoMethod(*s)
11914	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11915}
11916
11917type ProductStatusItemLevelIssue struct {
11918	// ApplicableCountries: List of country codes (ISO 3166-1 alpha-2) where
11919	// issue applies to the offer.
11920	ApplicableCountries []string `json:"applicableCountries,omitempty"`
11921
11922	// AttributeName: The attribute's name, if the issue is caused by a
11923	// single attribute.
11924	AttributeName string `json:"attributeName,omitempty"`
11925
11926	// Code: The error code of the issue.
11927	Code string `json:"code,omitempty"`
11928
11929	// Description: A short issue description in English.
11930	Description string `json:"description,omitempty"`
11931
11932	// Destination: The destination the issue applies to.
11933	Destination string `json:"destination,omitempty"`
11934
11935	// Detail: A detailed issue description in English.
11936	Detail string `json:"detail,omitempty"`
11937
11938	// Documentation: The URL of a web page to help with resolving this
11939	// issue.
11940	Documentation string `json:"documentation,omitempty"`
11941
11942	// Resolution: Whether the issue can be resolved by the merchant.
11943	Resolution string `json:"resolution,omitempty"`
11944
11945	// Servability: How this issue affects serving of the offer.
11946	Servability string `json:"servability,omitempty"`
11947
11948	// ForceSendFields is a list of field names (e.g. "ApplicableCountries")
11949	// to unconditionally include in API requests. By default, fields with
11950	// empty or default values are omitted from API requests. However, any
11951	// non-pointer, non-interface field appearing in ForceSendFields will be
11952	// sent to the server regardless of whether the field is empty or not.
11953	// This may be used to include empty fields in Patch requests.
11954	ForceSendFields []string `json:"-"`
11955
11956	// NullFields is a list of field names (e.g. "ApplicableCountries") to
11957	// include in API requests with the JSON null value. By default, fields
11958	// with empty values are omitted from API requests. However, any field
11959	// with an empty value appearing in NullFields will be sent to the
11960	// server as null. It is an error if a field in this list has a
11961	// non-empty value. This may be used to include null fields in Patch
11962	// requests.
11963	NullFields []string `json:"-"`
11964}
11965
11966func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
11967	type NoMethod ProductStatusItemLevelIssue
11968	raw := NoMethod(*s)
11969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11970}
11971
11972type ProductSubscriptionCost struct {
11973	// Amount: The amount the buyer has to pay per subscription period.
11974	Amount *Price `json:"amount,omitempty"`
11975
11976	// Period: The type of subscription period.
11977	Period string `json:"period,omitempty"`
11978
11979	// PeriodLength: The number of subscription periods the buyer has to
11980	// pay.
11981	PeriodLength int64 `json:"periodLength,omitempty,string"`
11982
11983	// ForceSendFields is a list of field names (e.g. "Amount") to
11984	// unconditionally include in API requests. By default, fields with
11985	// empty or default values are omitted from API requests. However, any
11986	// non-pointer, non-interface field appearing in ForceSendFields will be
11987	// sent to the server regardless of whether the field is empty or not.
11988	// This may be used to include empty fields in Patch requests.
11989	ForceSendFields []string `json:"-"`
11990
11991	// NullFields is a list of field names (e.g. "Amount") to include in API
11992	// requests with the JSON null value. By default, fields with empty
11993	// values are omitted from API requests. However, any field with an
11994	// empty value appearing in NullFields will be sent to the server as
11995	// null. It is an error if a field in this list has a non-empty value.
11996	// This may be used to include null fields in Patch requests.
11997	NullFields []string `json:"-"`
11998}
11999
12000func (s *ProductSubscriptionCost) MarshalJSON() ([]byte, error) {
12001	type NoMethod ProductSubscriptionCost
12002	raw := NoMethod(*s)
12003	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12004}
12005
12006type ProductTax struct {
12007	// Country: The country within which the item is taxed, specified as a
12008	// CLDR territory code.
12009	Country string `json:"country,omitempty"`
12010
12011	// LocationId: The numeric ID of a location that the tax rate applies to
12012	// as defined in the AdWords API.
12013	LocationId int64 `json:"locationId,omitempty,string"`
12014
12015	// PostalCode: The postal code range that the tax rate applies to,
12016	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
12017	// range between two ZIP codes or two ZIP code prefixes of equal length.
12018	// Examples: 94114, 94*, 94002-95460, 94*-95*.
12019	PostalCode string `json:"postalCode,omitempty"`
12020
12021	// Rate: The percentage of tax rate that applies to the item price.
12022	Rate float64 `json:"rate,omitempty"`
12023
12024	// Region: The geographic region to which the tax rate applies.
12025	Region string `json:"region,omitempty"`
12026
12027	// TaxShip: Should be set to true if tax is charged on shipping.
12028	TaxShip bool `json:"taxShip,omitempty"`
12029
12030	// ForceSendFields is a list of field names (e.g. "Country") to
12031	// unconditionally include in API requests. By default, fields with
12032	// empty or default values are omitted from API requests. However, any
12033	// non-pointer, non-interface field appearing in ForceSendFields will be
12034	// sent to the server regardless of whether the field is empty or not.
12035	// This may be used to include empty fields in Patch requests.
12036	ForceSendFields []string `json:"-"`
12037
12038	// NullFields is a list of field names (e.g. "Country") to include in
12039	// API requests with the JSON null value. By default, fields with empty
12040	// values are omitted from API requests. However, any field with an
12041	// empty value appearing in NullFields will be sent to the server as
12042	// null. It is an error if a field in this list has a non-empty value.
12043	// This may be used to include null fields in Patch requests.
12044	NullFields []string `json:"-"`
12045}
12046
12047func (s *ProductTax) MarshalJSON() ([]byte, error) {
12048	type NoMethod ProductTax
12049	raw := NoMethod(*s)
12050	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12051}
12052
12053func (s *ProductTax) UnmarshalJSON(data []byte) error {
12054	type NoMethod ProductTax
12055	var s1 struct {
12056		Rate gensupport.JSONFloat64 `json:"rate"`
12057		*NoMethod
12058	}
12059	s1.NoMethod = (*NoMethod)(s)
12060	if err := json.Unmarshal(data, &s1); err != nil {
12061		return err
12062	}
12063	s.Rate = float64(s1.Rate)
12064	return nil
12065}
12066
12067type ProductUnitPricingBaseMeasure struct {
12068	// Unit: The unit of the denominator.
12069	Unit string `json:"unit,omitempty"`
12070
12071	// Value: The denominator of the unit price.
12072	Value int64 `json:"value,omitempty,string"`
12073
12074	// ForceSendFields is a list of field names (e.g. "Unit") to
12075	// unconditionally include in API requests. By default, fields with
12076	// empty or default values are omitted from API requests. However, any
12077	// non-pointer, non-interface field appearing in ForceSendFields will be
12078	// sent to the server regardless of whether the field is empty or not.
12079	// This may be used to include empty fields in Patch requests.
12080	ForceSendFields []string `json:"-"`
12081
12082	// NullFields is a list of field names (e.g. "Unit") to include in API
12083	// requests with the JSON null value. By default, fields with empty
12084	// values are omitted from API requests. However, any field with an
12085	// empty value appearing in NullFields will be sent to the server as
12086	// null. It is an error if a field in this list has a non-empty value.
12087	// This may be used to include null fields in Patch requests.
12088	NullFields []string `json:"-"`
12089}
12090
12091func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
12092	type NoMethod ProductUnitPricingBaseMeasure
12093	raw := NoMethod(*s)
12094	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12095}
12096
12097type ProductUnitPricingMeasure struct {
12098	// Unit: The unit of the measure.
12099	Unit string `json:"unit,omitempty"`
12100
12101	// Value: The measure of an item.
12102	Value float64 `json:"value,omitempty"`
12103
12104	// ForceSendFields is a list of field names (e.g. "Unit") to
12105	// unconditionally include in API requests. By default, fields with
12106	// empty or default values are omitted from API requests. However, any
12107	// non-pointer, non-interface field appearing in ForceSendFields will be
12108	// sent to the server regardless of whether the field is empty or not.
12109	// This may be used to include empty fields in Patch requests.
12110	ForceSendFields []string `json:"-"`
12111
12112	// NullFields is a list of field names (e.g. "Unit") to include in API
12113	// requests with the JSON null value. By default, fields with empty
12114	// values are omitted from API requests. However, any field with an
12115	// empty value appearing in NullFields will be sent to the server as
12116	// null. It is an error if a field in this list has a non-empty value.
12117	// This may be used to include null fields in Patch requests.
12118	NullFields []string `json:"-"`
12119}
12120
12121func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
12122	type NoMethod ProductUnitPricingMeasure
12123	raw := NoMethod(*s)
12124	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12125}
12126
12127func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
12128	type NoMethod ProductUnitPricingMeasure
12129	var s1 struct {
12130		Value gensupport.JSONFloat64 `json:"value"`
12131		*NoMethod
12132	}
12133	s1.NoMethod = (*NoMethod)(s)
12134	if err := json.Unmarshal(data, &s1); err != nil {
12135		return err
12136	}
12137	s.Value = float64(s1.Value)
12138	return nil
12139}
12140
12141type ProductsCustomBatchRequest struct {
12142	// Entries: The request entries to be processed in the batch.
12143	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
12144
12145	// ForceSendFields is a list of field names (e.g. "Entries") to
12146	// unconditionally include in API requests. By default, fields with
12147	// empty or default values are omitted from API requests. However, any
12148	// non-pointer, non-interface field appearing in ForceSendFields will be
12149	// sent to the server regardless of whether the field is empty or not.
12150	// This may be used to include empty fields in Patch requests.
12151	ForceSendFields []string `json:"-"`
12152
12153	// NullFields is a list of field names (e.g. "Entries") to include in
12154	// API requests with the JSON null value. By default, fields with empty
12155	// values are omitted from API requests. However, any field with an
12156	// empty value appearing in NullFields will be sent to the server as
12157	// null. It is an error if a field in this list has a non-empty value.
12158	// This may be used to include null fields in Patch requests.
12159	NullFields []string `json:"-"`
12160}
12161
12162func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
12163	type NoMethod ProductsCustomBatchRequest
12164	raw := NoMethod(*s)
12165	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12166}
12167
12168// ProductsCustomBatchRequestEntry: A batch entry encoding a single
12169// non-batch products request.
12170type ProductsCustomBatchRequestEntry struct {
12171	// BatchId: An entry ID, unique within the batch request.
12172	BatchId int64 `json:"batchId,omitempty"`
12173
12174	// FeedId: The Content API Supplemental Feed ID. If present then product
12175	// insertion or deletion applies to a supplemental feed instead of
12176	// primary Content API feed.
12177	FeedId uint64 `json:"feedId,omitempty,string"`
12178
12179	// MerchantId: The ID of the managing account.
12180	MerchantId uint64 `json:"merchantId,omitempty,string"`
12181
12182	// Method: The method of the batch entry. Acceptable values are: -
12183	// "delete" - "get" - "insert" - "update"
12184	Method string `json:"method,omitempty"`
12185
12186	// Product: The product to insert or update. Only required if the method
12187	// is `insert` or `update`. If the `update` method is used with
12188	// `updateMask` only to delete a field, then this isn't required. For
12189	// example, setting `salePrice` on the `updateMask` and not providing a
12190	// `product` will result in an existing sale price on the product
12191	// specified by `productId` being deleted.
12192	Product *Product `json:"product,omitempty"`
12193
12194	// ProductId: The ID of the product to mutate. Only defined if the
12195	// method is `get`, `delete`, or `update`. or `delete`.
12196	ProductId string `json:"productId,omitempty"`
12197
12198	// UpdateMask: The comma-separated list of product attributes to be
12199	// updated. Example: "title,salePrice". Attributes specified in the
12200	// update mask without a value specified in the body will be deleted
12201	// from the product. Only top-level product attributes can be updated.
12202	// If not defined, product attributes with set values will be updated
12203	// and other attributes will stay unchanged. Only defined if the method
12204	// is `update`.
12205	UpdateMask string `json:"updateMask,omitempty"`
12206
12207	// ForceSendFields is a list of field names (e.g. "BatchId") to
12208	// unconditionally include in API requests. By default, fields with
12209	// empty or default values are omitted from API requests. However, any
12210	// non-pointer, non-interface field appearing in ForceSendFields will be
12211	// sent to the server regardless of whether the field is empty or not.
12212	// This may be used to include empty fields in Patch requests.
12213	ForceSendFields []string `json:"-"`
12214
12215	// NullFields is a list of field names (e.g. "BatchId") to include in
12216	// API requests with the JSON null value. By default, fields with empty
12217	// values are omitted from API requests. However, any field with an
12218	// empty value appearing in NullFields will be sent to the server as
12219	// null. It is an error if a field in this list has a non-empty value.
12220	// This may be used to include null fields in Patch requests.
12221	NullFields []string `json:"-"`
12222}
12223
12224func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12225	type NoMethod ProductsCustomBatchRequestEntry
12226	raw := NoMethod(*s)
12227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12228}
12229
12230type ProductsCustomBatchResponse struct {
12231	// Entries: The result of the execution of the batch requests.
12232	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
12233
12234	// Kind: Identifies what kind of resource this is. Value: the fixed
12235	// string "content#productsCustomBatchResponse".
12236	Kind string `json:"kind,omitempty"`
12237
12238	// ServerResponse contains the HTTP response code and headers from the
12239	// server.
12240	googleapi.ServerResponse `json:"-"`
12241
12242	// ForceSendFields is a list of field names (e.g. "Entries") to
12243	// unconditionally include in API requests. By default, fields with
12244	// empty or default values are omitted from API requests. However, any
12245	// non-pointer, non-interface field appearing in ForceSendFields will be
12246	// sent to the server regardless of whether the field is empty or not.
12247	// This may be used to include empty fields in Patch requests.
12248	ForceSendFields []string `json:"-"`
12249
12250	// NullFields is a list of field names (e.g. "Entries") to include in
12251	// API requests with the JSON null value. By default, fields with empty
12252	// values are omitted from API requests. However, any field with an
12253	// empty value appearing in NullFields will be sent to the server as
12254	// null. It is an error if a field in this list has a non-empty value.
12255	// This may be used to include null fields in Patch requests.
12256	NullFields []string `json:"-"`
12257}
12258
12259func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
12260	type NoMethod ProductsCustomBatchResponse
12261	raw := NoMethod(*s)
12262	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12263}
12264
12265// ProductsCustomBatchResponseEntry: A batch entry encoding a single
12266// non-batch products response.
12267type ProductsCustomBatchResponseEntry struct {
12268	// BatchId: The ID of the request entry this entry responds to.
12269	BatchId int64 `json:"batchId,omitempty"`
12270
12271	// Errors: A list of errors defined if and only if the request failed.
12272	Errors *Errors `json:"errors,omitempty"`
12273
12274	// Kind: Identifies what kind of resource this is. Value: the fixed
12275	// string "content#productsCustomBatchResponseEntry"
12276	Kind string `json:"kind,omitempty"`
12277
12278	// Product: The inserted product. Only defined if the method is `insert`
12279	// and if the request was successful.
12280	Product *Product `json:"product,omitempty"`
12281
12282	// ForceSendFields is a list of field names (e.g. "BatchId") to
12283	// unconditionally include in API requests. By default, fields with
12284	// empty or default values are omitted from API requests. However, any
12285	// non-pointer, non-interface field appearing in ForceSendFields will be
12286	// sent to the server regardless of whether the field is empty or not.
12287	// This may be used to include empty fields in Patch requests.
12288	ForceSendFields []string `json:"-"`
12289
12290	// NullFields is a list of field names (e.g. "BatchId") to include in
12291	// API requests with the JSON null value. By default, fields with empty
12292	// values are omitted from API requests. However, any field with an
12293	// empty value appearing in NullFields will be sent to the server as
12294	// null. It is an error if a field in this list has a non-empty value.
12295	// This may be used to include null fields in Patch requests.
12296	NullFields []string `json:"-"`
12297}
12298
12299func (s *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12300	type NoMethod ProductsCustomBatchResponseEntry
12301	raw := NoMethod(*s)
12302	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12303}
12304
12305type ProductsListResponse struct {
12306	// Kind: Identifies what kind of resource this is. Value: the fixed
12307	// string "content#productsListResponse".
12308	Kind string `json:"kind,omitempty"`
12309
12310	// NextPageToken: The token for the retrieval of the next page of
12311	// products.
12312	NextPageToken string `json:"nextPageToken,omitempty"`
12313
12314	Resources []*Product `json:"resources,omitempty"`
12315
12316	// ServerResponse contains the HTTP response code and headers from the
12317	// server.
12318	googleapi.ServerResponse `json:"-"`
12319
12320	// ForceSendFields is a list of field names (e.g. "Kind") to
12321	// unconditionally include in API requests. By default, fields with
12322	// empty or default values are omitted from API requests. However, any
12323	// non-pointer, non-interface field appearing in ForceSendFields will be
12324	// sent to the server regardless of whether the field is empty or not.
12325	// This may be used to include empty fields in Patch requests.
12326	ForceSendFields []string `json:"-"`
12327
12328	// NullFields is a list of field names (e.g. "Kind") to include in API
12329	// requests with the JSON null value. By default, fields with empty
12330	// values are omitted from API requests. However, any field with an
12331	// empty value appearing in NullFields will be sent to the server as
12332	// null. It is an error if a field in this list has a non-empty value.
12333	// This may be used to include null fields in Patch requests.
12334	NullFields []string `json:"-"`
12335}
12336
12337func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
12338	type NoMethod ProductsListResponse
12339	raw := NoMethod(*s)
12340	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12341}
12342
12343type ProductstatusesCustomBatchRequest struct {
12344	// Entries: The request entries to be processed in the batch.
12345	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
12346
12347	// ForceSendFields is a list of field names (e.g. "Entries") to
12348	// unconditionally include in API requests. By default, fields with
12349	// empty or default values are omitted from API requests. However, any
12350	// non-pointer, non-interface field appearing in ForceSendFields will be
12351	// sent to the server regardless of whether the field is empty or not.
12352	// This may be used to include empty fields in Patch requests.
12353	ForceSendFields []string `json:"-"`
12354
12355	// NullFields is a list of field names (e.g. "Entries") to include in
12356	// API requests with the JSON null value. By default, fields with empty
12357	// values are omitted from API requests. However, any field with an
12358	// empty value appearing in NullFields will be sent to the server as
12359	// null. It is an error if a field in this list has a non-empty value.
12360	// This may be used to include null fields in Patch requests.
12361	NullFields []string `json:"-"`
12362}
12363
12364func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
12365	type NoMethod ProductstatusesCustomBatchRequest
12366	raw := NoMethod(*s)
12367	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12368}
12369
12370// ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
12371// single non-batch productstatuses request.
12372type ProductstatusesCustomBatchRequestEntry struct {
12373	// BatchId: An entry ID, unique within the batch request.
12374	BatchId int64 `json:"batchId,omitempty"`
12375
12376	// Destinations: If set, only issues for the specified destinations are
12377	// returned, otherwise only issues for the Shopping destination.
12378	Destinations []string `json:"destinations,omitempty"`
12379
12380	IncludeAttributes bool `json:"includeAttributes,omitempty"`
12381
12382	// MerchantId: The ID of the managing account.
12383	MerchantId uint64 `json:"merchantId,omitempty,string"`
12384
12385	// Method: The method of the batch entry. Acceptable values are: -
12386	// "get"
12387	Method string `json:"method,omitempty"`
12388
12389	// ProductId: The ID of the product whose status to get.
12390	ProductId string `json:"productId,omitempty"`
12391
12392	// ForceSendFields is a list of field names (e.g. "BatchId") to
12393	// unconditionally include in API requests. By default, fields with
12394	// empty or default values are omitted from API requests. However, any
12395	// non-pointer, non-interface field appearing in ForceSendFields will be
12396	// sent to the server regardless of whether the field is empty or not.
12397	// This may be used to include empty fields in Patch requests.
12398	ForceSendFields []string `json:"-"`
12399
12400	// NullFields is a list of field names (e.g. "BatchId") to include in
12401	// API requests with the JSON null value. By default, fields with empty
12402	// values are omitted from API requests. However, any field with an
12403	// empty value appearing in NullFields will be sent to the server as
12404	// null. It is an error if a field in this list has a non-empty value.
12405	// This may be used to include null fields in Patch requests.
12406	NullFields []string `json:"-"`
12407}
12408
12409func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12410	type NoMethod ProductstatusesCustomBatchRequestEntry
12411	raw := NoMethod(*s)
12412	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12413}
12414
12415type ProductstatusesCustomBatchResponse struct {
12416	// Entries: The result of the execution of the batch requests.
12417	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
12418
12419	// Kind: Identifies what kind of resource this is. Value: the fixed
12420	// string "content#productstatusesCustomBatchResponse".
12421	Kind string `json:"kind,omitempty"`
12422
12423	// ServerResponse contains the HTTP response code and headers from the
12424	// server.
12425	googleapi.ServerResponse `json:"-"`
12426
12427	// ForceSendFields is a list of field names (e.g. "Entries") to
12428	// unconditionally include in API requests. By default, fields with
12429	// empty or default values are omitted from API requests. However, any
12430	// non-pointer, non-interface field appearing in ForceSendFields will be
12431	// sent to the server regardless of whether the field is empty or not.
12432	// This may be used to include empty fields in Patch requests.
12433	ForceSendFields []string `json:"-"`
12434
12435	// NullFields is a list of field names (e.g. "Entries") to include in
12436	// API requests with the JSON null value. By default, fields with empty
12437	// values are omitted from API requests. However, any field with an
12438	// empty value appearing in NullFields will be sent to the server as
12439	// null. It is an error if a field in this list has a non-empty value.
12440	// This may be used to include null fields in Patch requests.
12441	NullFields []string `json:"-"`
12442}
12443
12444func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
12445	type NoMethod ProductstatusesCustomBatchResponse
12446	raw := NoMethod(*s)
12447	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12448}
12449
12450// ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
12451// single non-batch productstatuses response.
12452type ProductstatusesCustomBatchResponseEntry struct {
12453	// BatchId: The ID of the request entry this entry responds to.
12454	BatchId int64 `json:"batchId,omitempty"`
12455
12456	// Errors: A list of errors, if the request failed.
12457	Errors *Errors `json:"errors,omitempty"`
12458
12459	// Kind: Identifies what kind of resource this is. Value: the fixed
12460	// string "content#productstatusesCustomBatchResponseEntry"
12461	Kind string `json:"kind,omitempty"`
12462
12463	// ProductStatus: The requested product status. Only defined if the
12464	// request was successful.
12465	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
12466
12467	// ForceSendFields is a list of field names (e.g. "BatchId") to
12468	// unconditionally include in API requests. By default, fields with
12469	// empty or default values are omitted from API requests. However, any
12470	// non-pointer, non-interface field appearing in ForceSendFields will be
12471	// sent to the server regardless of whether the field is empty or not.
12472	// This may be used to include empty fields in Patch requests.
12473	ForceSendFields []string `json:"-"`
12474
12475	// NullFields is a list of field names (e.g. "BatchId") to include in
12476	// API requests with the JSON null value. By default, fields with empty
12477	// values are omitted from API requests. However, any field with an
12478	// empty value appearing in NullFields will be sent to the server as
12479	// null. It is an error if a field in this list has a non-empty value.
12480	// This may be used to include null fields in Patch requests.
12481	NullFields []string `json:"-"`
12482}
12483
12484func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12485	type NoMethod ProductstatusesCustomBatchResponseEntry
12486	raw := NoMethod(*s)
12487	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12488}
12489
12490type ProductstatusesListResponse struct {
12491	// Kind: Identifies what kind of resource this is. Value: the fixed
12492	// string "content#productstatusesListResponse".
12493	Kind string `json:"kind,omitempty"`
12494
12495	// NextPageToken: The token for the retrieval of the next page of
12496	// products statuses.
12497	NextPageToken string `json:"nextPageToken,omitempty"`
12498
12499	Resources []*ProductStatus `json:"resources,omitempty"`
12500
12501	// ServerResponse contains the HTTP response code and headers from the
12502	// server.
12503	googleapi.ServerResponse `json:"-"`
12504
12505	// ForceSendFields is a list of field names (e.g. "Kind") to
12506	// unconditionally include in API requests. By default, fields with
12507	// empty or default values are omitted from API requests. However, any
12508	// non-pointer, non-interface field appearing in ForceSendFields will be
12509	// sent to the server regardless of whether the field is empty or not.
12510	// This may be used to include empty fields in Patch requests.
12511	ForceSendFields []string `json:"-"`
12512
12513	// NullFields is a list of field names (e.g. "Kind") to include in API
12514	// requests with the JSON null value. By default, fields with empty
12515	// values are omitted from API requests. However, any field with an
12516	// empty value appearing in NullFields will be sent to the server as
12517	// null. It is an error if a field in this list has a non-empty value.
12518	// This may be used to include null fields in Patch requests.
12519	NullFields []string `json:"-"`
12520}
12521
12522func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
12523	type NoMethod ProductstatusesListResponse
12524	raw := NoMethod(*s)
12525	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12526}
12527
12528// PubsubNotificationSettings: Settings for Pub/Sub notifications, all
12529// methods require that the caller is a direct user of the merchant
12530// center account.
12531type PubsubNotificationSettings struct {
12532	// CloudTopicName: Cloud pub/sub topic to which notifications are sent
12533	// (read-only).
12534	CloudTopicName string `json:"cloudTopicName,omitempty"`
12535
12536	// Kind: Identifies what kind of resource this is. Value: the fixed
12537	// string "content#pubsubNotificationSettings"
12538	Kind string `json:"kind,omitempty"`
12539
12540	// RegisteredEvents: List of event types. Acceptable values are: -
12541	// "orderPendingShipment"
12542	RegisteredEvents []string `json:"registeredEvents,omitempty"`
12543
12544	// ServerResponse contains the HTTP response code and headers from the
12545	// server.
12546	googleapi.ServerResponse `json:"-"`
12547
12548	// ForceSendFields is a list of field names (e.g. "CloudTopicName") to
12549	// unconditionally include in API requests. By default, fields with
12550	// empty or default values are omitted from API requests. However, any
12551	// non-pointer, non-interface field appearing in ForceSendFields will be
12552	// sent to the server regardless of whether the field is empty or not.
12553	// This may be used to include empty fields in Patch requests.
12554	ForceSendFields []string `json:"-"`
12555
12556	// NullFields is a list of field names (e.g. "CloudTopicName") to
12557	// include in API requests with the JSON null value. By default, fields
12558	// with empty values are omitted from API requests. However, any field
12559	// with an empty value appearing in NullFields will be sent to the
12560	// server as null. It is an error if a field in this list has a
12561	// non-empty value. This may be used to include null fields in Patch
12562	// requests.
12563	NullFields []string `json:"-"`
12564}
12565
12566func (s *PubsubNotificationSettings) MarshalJSON() ([]byte, error) {
12567	type NoMethod PubsubNotificationSettings
12568	raw := NoMethod(*s)
12569	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12570}
12571
12572type RateGroup struct {
12573	// ApplicableShippingLabels: A list of shipping labels defining the
12574	// products to which this rate group applies to. This is a disjunction:
12575	// only one of the labels has to match for the rate group to apply. May
12576	// only be empty for the last rate group of a service. Required.
12577	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
12578
12579	// CarrierRates: A list of carrier rates that can be referred to by
12580	// `mainTable` or `singleValue`.
12581	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
12582
12583	// MainTable: A table defining the rate group, when `singleValue` is not
12584	// expressive enough. Can only be set if `singleValue` is not set.
12585	MainTable *Table `json:"mainTable,omitempty"`
12586
12587	// Name: Name of the rate group. Optional. If set has to be unique
12588	// within shipping service.
12589	Name string `json:"name,omitempty"`
12590
12591	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
12592	// only be set if `mainTable` and `subtables` are not set.
12593	SingleValue *Value `json:"singleValue,omitempty"`
12594
12595	// Subtables: A list of subtables referred to by `mainTable`. Can only
12596	// be set if `mainTable` is set.
12597	Subtables []*Table `json:"subtables,omitempty"`
12598
12599	// ForceSendFields is a list of field names (e.g.
12600	// "ApplicableShippingLabels") to unconditionally include in API
12601	// requests. By default, fields with empty or default values are omitted
12602	// from API requests. However, any non-pointer, non-interface field
12603	// appearing in ForceSendFields will be sent to the server regardless of
12604	// whether the field is empty or not. This may be used to include empty
12605	// fields in Patch requests.
12606	ForceSendFields []string `json:"-"`
12607
12608	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
12609	// to include in API requests with the JSON null value. By default,
12610	// fields with empty values are omitted from API requests. However, any
12611	// field with an empty value appearing in NullFields will be sent to the
12612	// server as null. It is an error if a field in this list has a
12613	// non-empty value. This may be used to include null fields in Patch
12614	// requests.
12615	NullFields []string `json:"-"`
12616}
12617
12618func (s *RateGroup) MarshalJSON() ([]byte, error) {
12619	type NoMethod RateGroup
12620	raw := NoMethod(*s)
12621	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12622}
12623
12624type RefundReason struct {
12625	// Description: Description of the reason.
12626	Description string `json:"description,omitempty"`
12627
12628	// ReasonCode: Code of the refund reason. Acceptable values are: -
12629	// "adjustment" - "autoPostInternal" -
12630	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
12631	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
12632	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
12633	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
12634	// - "customerSupportRequested" - "deliveredLateByCarrier" -
12635	// "deliveredTooLate" - "expiredItem" -
12636	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
12637	// "failToPushOrderMerchantFulfillmentError" -
12638	// "failToPushOrderToMerchant" -
12639	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
12640	// "invalidCoupon" - "lateShipmentCredit" -
12641	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
12642	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
12643	// "paymentDeclined" - "priceAdjustment" - "priceError" -
12644	// "productArrivedDamaged" - "productNotAsDescribed" -
12645	// "promoReallocation" - "qualityNotAsExpected" -
12646	// "returnRefundAbuse" - "shippingCostAdjustment" -
12647	// "shippingPriceError" - "taxAdjustment" - "taxError" -
12648	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
12649	// "wrongProductShipped"
12650	ReasonCode string `json:"reasonCode,omitempty"`
12651
12652	// ForceSendFields is a list of field names (e.g. "Description") to
12653	// unconditionally include in API requests. By default, fields with
12654	// empty or default values are omitted from API requests. However, any
12655	// non-pointer, non-interface field appearing in ForceSendFields will be
12656	// sent to the server regardless of whether the field is empty or not.
12657	// This may be used to include empty fields in Patch requests.
12658	ForceSendFields []string `json:"-"`
12659
12660	// NullFields is a list of field names (e.g. "Description") to include
12661	// in API requests with the JSON null value. By default, fields with
12662	// empty values are omitted from API requests. However, any field with
12663	// an empty value appearing in NullFields will be sent to the server as
12664	// null. It is an error if a field in this list has a non-empty value.
12665	// This may be used to include null fields in Patch requests.
12666	NullFields []string `json:"-"`
12667}
12668
12669func (s *RefundReason) MarshalJSON() ([]byte, error) {
12670	type NoMethod RefundReason
12671	raw := NoMethod(*s)
12672	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12673}
12674
12675// Region: Represents a geographic region that you can use as a target
12676// with both the `RegionalInventory` and `ShippingSettings` services.
12677// You can define regions as collections of either postal codes or, in
12678// some countries, using predefined geotargets.
12679type Region struct {
12680	// DisplayName: The display name of the region.
12681	DisplayName string `json:"displayName,omitempty"`
12682
12683	// GeotargetArea: A list of geotargets that defines the region area.
12684	GeotargetArea *RegionGeoTargetArea `json:"geotargetArea,omitempty"`
12685
12686	// MerchantId: Output only. Immutable. Merchant that owns the region.
12687	MerchantId int64 `json:"merchantId,omitempty,string"`
12688
12689	// PostalCodeArea: A list of postal codes that defines the region area.
12690	PostalCodeArea *RegionPostalCodeArea `json:"postalCodeArea,omitempty"`
12691
12692	// RegionId: Output only. Immutable. The ID uniquely identifying each
12693	// region.
12694	RegionId string `json:"regionId,omitempty"`
12695
12696	// RegionalInventoryEligible: Output only. Indicates if the region is
12697	// eligible to use in the Regional Inventory configuration.
12698	RegionalInventoryEligible bool `json:"regionalInventoryEligible,omitempty"`
12699
12700	// ShippingEligible: Output only. Indicates if the region is eligible to
12701	// use in the Shipping Services configuration.
12702	ShippingEligible bool `json:"shippingEligible,omitempty"`
12703
12704	// ServerResponse contains the HTTP response code and headers from the
12705	// server.
12706	googleapi.ServerResponse `json:"-"`
12707
12708	// ForceSendFields is a list of field names (e.g. "DisplayName") to
12709	// unconditionally include in API requests. By default, fields with
12710	// empty or default values are omitted from API requests. However, any
12711	// non-pointer, non-interface field appearing in ForceSendFields will be
12712	// sent to the server regardless of whether the field is empty or not.
12713	// This may be used to include empty fields in Patch requests.
12714	ForceSendFields []string `json:"-"`
12715
12716	// NullFields is a list of field names (e.g. "DisplayName") to include
12717	// in API requests with the JSON null value. By default, fields with
12718	// empty values are omitted from API requests. However, any field with
12719	// an empty value appearing in NullFields will be sent to the server as
12720	// null. It is an error if a field in this list has a non-empty value.
12721	// This may be used to include null fields in Patch requests.
12722	NullFields []string `json:"-"`
12723}
12724
12725func (s *Region) MarshalJSON() ([]byte, error) {
12726	type NoMethod Region
12727	raw := NoMethod(*s)
12728	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12729}
12730
12731// RegionGeoTargetArea: A list of geotargets that defines the region
12732// area.
12733type RegionGeoTargetArea struct {
12734	// GeotargetCriteriaIds: Required. A non-empty list of location IDs
12735	// (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
12736	// They must all be of the same location type (e.g., state).
12737	GeotargetCriteriaIds googleapi.Int64s `json:"geotargetCriteriaIds,omitempty"`
12738
12739	// ForceSendFields is a list of field names (e.g.
12740	// "GeotargetCriteriaIds") to unconditionally include in API requests.
12741	// By default, fields with empty or default values are omitted from API
12742	// requests. However, any non-pointer, non-interface field appearing in
12743	// ForceSendFields will be sent to the server regardless of whether the
12744	// field is empty or not. This may be used to include empty fields in
12745	// Patch requests.
12746	ForceSendFields []string `json:"-"`
12747
12748	// NullFields is a list of field names (e.g. "GeotargetCriteriaIds") to
12749	// include in API requests with the JSON null value. By default, fields
12750	// with empty values are omitted from API requests. However, any field
12751	// with an empty value appearing in NullFields will be sent to the
12752	// server as null. It is an error if a field in this list has a
12753	// non-empty value. This may be used to include null fields in Patch
12754	// requests.
12755	NullFields []string `json:"-"`
12756}
12757
12758func (s *RegionGeoTargetArea) MarshalJSON() ([]byte, error) {
12759	type NoMethod RegionGeoTargetArea
12760	raw := NoMethod(*s)
12761	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12762}
12763
12764// RegionPostalCodeArea: A list of postal codes that defines the region
12765// area. Note: All regions defined using postal codes are accessible via
12766// the account's `ShippingSettings.postalCodeGroups` resource.
12767type RegionPostalCodeArea struct {
12768	// PostalCodes: Required. A range of postal codes.
12769	PostalCodes []*RegionPostalCodeAreaPostalCodeRange `json:"postalCodes,omitempty"`
12770
12771	// RegionCode: Required. CLDR territory code or the country the postal
12772	// code group applies to.
12773	RegionCode string `json:"regionCode,omitempty"`
12774
12775	// ForceSendFields is a list of field names (e.g. "PostalCodes") to
12776	// unconditionally include in API requests. By default, fields with
12777	// empty or default values are omitted from API requests. However, any
12778	// non-pointer, non-interface field appearing in ForceSendFields will be
12779	// sent to the server regardless of whether the field is empty or not.
12780	// This may be used to include empty fields in Patch requests.
12781	ForceSendFields []string `json:"-"`
12782
12783	// NullFields is a list of field names (e.g. "PostalCodes") to include
12784	// in API requests with the JSON null value. By default, fields with
12785	// empty values are omitted from API requests. However, any field with
12786	// an empty value appearing in NullFields will be sent to the server as
12787	// null. It is an error if a field in this list has a non-empty value.
12788	// This may be used to include null fields in Patch requests.
12789	NullFields []string `json:"-"`
12790}
12791
12792func (s *RegionPostalCodeArea) MarshalJSON() ([]byte, error) {
12793	type NoMethod RegionPostalCodeArea
12794	raw := NoMethod(*s)
12795	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12796}
12797
12798// RegionPostalCodeAreaPostalCodeRange: A range of postal codes that
12799// defines the region area.
12800type RegionPostalCodeAreaPostalCodeRange struct {
12801	// Begin: Required. A postal code or a pattern of the form prefix*
12802	// denoting the inclusive lower bound of the range defining the area.
12803	// Examples values: "94108", "9410*", "9*".
12804	Begin string `json:"begin,omitempty"`
12805
12806	// End: Optional. A postal code or a pattern of the form prefix*
12807	// denoting the inclusive upper bound of the range defining the area. It
12808	// must have the same length as postalCodeRangeBegin: if
12809	// postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be
12810	// a postal code too; if postalCodeRangeBegin is a pattern then
12811	// postalCodeRangeEnd must be a pattern with the same prefix length.
12812	// Optional: if not set, then the area is defined as being all the
12813	// postal codes matching postalCodeRangeBegin.
12814	End string `json:"end,omitempty"`
12815
12816	// ForceSendFields is a list of field names (e.g. "Begin") to
12817	// unconditionally include in API requests. By default, fields with
12818	// empty or default values are omitted from API requests. However, any
12819	// non-pointer, non-interface field appearing in ForceSendFields will be
12820	// sent to the server regardless of whether the field is empty or not.
12821	// This may be used to include empty fields in Patch requests.
12822	ForceSendFields []string `json:"-"`
12823
12824	// NullFields is a list of field names (e.g. "Begin") to include in API
12825	// requests with the JSON null value. By default, fields with empty
12826	// values are omitted from API requests. However, any field with an
12827	// empty value appearing in NullFields will be sent to the server as
12828	// null. It is an error if a field in this list has a non-empty value.
12829	// This may be used to include null fields in Patch requests.
12830	NullFields []string `json:"-"`
12831}
12832
12833func (s *RegionPostalCodeAreaPostalCodeRange) MarshalJSON() ([]byte, error) {
12834	type NoMethod RegionPostalCodeAreaPostalCodeRange
12835	raw := NoMethod(*s)
12836	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12837}
12838
12839// RegionalInventory: Regional inventory resource. contains the regional
12840// name and all attributes which are overridden for the specified
12841// region.
12842type RegionalInventory struct {
12843	// Availability: The availability of the product.
12844	Availability string `json:"availability,omitempty"`
12845
12846	// CustomAttributes: A list of custom (merchant-provided) attributes. It
12847	// can also be used for submitting any attribute of the feed
12848	// specification in its generic form.
12849	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
12850
12851	// Kind: Identifies what kind of resource this is. Value: the fixed
12852	// string "content#regionalInventory".
12853	Kind string `json:"kind,omitempty"`
12854
12855	// Price: The price of the product.
12856	Price *Price `json:"price,omitempty"`
12857
12858	// RegionId: The ID uniquely identifying each region.
12859	RegionId string `json:"regionId,omitempty"`
12860
12861	// SalePrice: The sale price of the product. Mandatory if
12862	// `sale_price_effective_date` is defined.
12863	SalePrice *Price `json:"salePrice,omitempty"`
12864
12865	// SalePriceEffectiveDate: A date range represented by a pair of ISO
12866	// 8601 dates separated by a space, comma, or slash. Both dates might be
12867	// specified as 'null' if undecided.
12868	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
12869
12870	// ServerResponse contains the HTTP response code and headers from the
12871	// server.
12872	googleapi.ServerResponse `json:"-"`
12873
12874	// ForceSendFields is a list of field names (e.g. "Availability") to
12875	// unconditionally include in API requests. By default, fields with
12876	// empty or default values are omitted from API requests. However, any
12877	// non-pointer, non-interface field appearing in ForceSendFields will be
12878	// sent to the server regardless of whether the field is empty or not.
12879	// This may be used to include empty fields in Patch requests.
12880	ForceSendFields []string `json:"-"`
12881
12882	// NullFields is a list of field names (e.g. "Availability") to include
12883	// in API requests with the JSON null value. By default, fields with
12884	// empty values are omitted from API requests. However, any field with
12885	// an empty value appearing in NullFields will be sent to the server as
12886	// null. It is an error if a field in this list has a non-empty value.
12887	// This may be used to include null fields in Patch requests.
12888	NullFields []string `json:"-"`
12889}
12890
12891func (s *RegionalInventory) MarshalJSON() ([]byte, error) {
12892	type NoMethod RegionalInventory
12893	raw := NoMethod(*s)
12894	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12895}
12896
12897type RegionalinventoryCustomBatchRequest struct {
12898	// Entries: The request entries to be processed in the batch.
12899	Entries []*RegionalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
12900
12901	// ForceSendFields is a list of field names (e.g. "Entries") to
12902	// unconditionally include in API requests. By default, fields with
12903	// empty or default values are omitted from API requests. However, any
12904	// non-pointer, non-interface field appearing in ForceSendFields will be
12905	// sent to the server regardless of whether the field is empty or not.
12906	// This may be used to include empty fields in Patch requests.
12907	ForceSendFields []string `json:"-"`
12908
12909	// NullFields is a list of field names (e.g. "Entries") to include in
12910	// API requests with the JSON null value. By default, fields with empty
12911	// values are omitted from API requests. However, any field with an
12912	// empty value appearing in NullFields will be sent to the server as
12913	// null. It is an error if a field in this list has a non-empty value.
12914	// This may be used to include null fields in Patch requests.
12915	NullFields []string `json:"-"`
12916}
12917
12918func (s *RegionalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
12919	type NoMethod RegionalinventoryCustomBatchRequest
12920	raw := NoMethod(*s)
12921	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12922}
12923
12924// RegionalinventoryCustomBatchRequestEntry: A batch entry encoding a
12925// single non-batch regional inventory request.
12926type RegionalinventoryCustomBatchRequestEntry struct {
12927	// BatchId: An entry ID, unique within the batch request.
12928	BatchId int64 `json:"batchId,omitempty"`
12929
12930	// MerchantId: The ID of the managing account.
12931	MerchantId uint64 `json:"merchantId,omitempty,string"`
12932
12933	// Method: Method of the batch request entry. Acceptable values are: -
12934	// "insert"
12935	Method string `json:"method,omitempty"`
12936
12937	// ProductId: The ID of the product for which to update price and
12938	// availability.
12939	ProductId string `json:"productId,omitempty"`
12940
12941	// RegionalInventory: Price and availability of the product.
12942	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
12943
12944	// ForceSendFields is a list of field names (e.g. "BatchId") to
12945	// unconditionally include in API requests. By default, fields with
12946	// empty or default values are omitted from API requests. However, any
12947	// non-pointer, non-interface field appearing in ForceSendFields will be
12948	// sent to the server regardless of whether the field is empty or not.
12949	// This may be used to include empty fields in Patch requests.
12950	ForceSendFields []string `json:"-"`
12951
12952	// NullFields is a list of field names (e.g. "BatchId") to include in
12953	// API requests with the JSON null value. By default, fields with empty
12954	// values are omitted from API requests. However, any field with an
12955	// empty value appearing in NullFields will be sent to the server as
12956	// null. It is an error if a field in this list has a non-empty value.
12957	// This may be used to include null fields in Patch requests.
12958	NullFields []string `json:"-"`
12959}
12960
12961func (s *RegionalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12962	type NoMethod RegionalinventoryCustomBatchRequestEntry
12963	raw := NoMethod(*s)
12964	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12965}
12966
12967type RegionalinventoryCustomBatchResponse struct {
12968	// Entries: The result of the execution of the batch requests.
12969	Entries []*RegionalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
12970
12971	// Kind: Identifies what kind of resource this is. Value: the fixed
12972	// string "content#regionalinventoryCustomBatchResponse".
12973	Kind string `json:"kind,omitempty"`
12974
12975	// ServerResponse contains the HTTP response code and headers from the
12976	// server.
12977	googleapi.ServerResponse `json:"-"`
12978
12979	// ForceSendFields is a list of field names (e.g. "Entries") to
12980	// unconditionally include in API requests. By default, fields with
12981	// empty or default values are omitted from API requests. However, any
12982	// non-pointer, non-interface field appearing in ForceSendFields will be
12983	// sent to the server regardless of whether the field is empty or not.
12984	// This may be used to include empty fields in Patch requests.
12985	ForceSendFields []string `json:"-"`
12986
12987	// NullFields is a list of field names (e.g. "Entries") to include in
12988	// API requests with the JSON null value. By default, fields with empty
12989	// values are omitted from API requests. However, any field with an
12990	// empty value appearing in NullFields will be sent to the server as
12991	// null. It is an error if a field in this list has a non-empty value.
12992	// This may be used to include null fields in Patch requests.
12993	NullFields []string `json:"-"`
12994}
12995
12996func (s *RegionalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
12997	type NoMethod RegionalinventoryCustomBatchResponse
12998	raw := NoMethod(*s)
12999	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13000}
13001
13002// RegionalinventoryCustomBatchResponseEntry: A batch entry encoding a
13003// single non-batch regional inventory response.
13004type RegionalinventoryCustomBatchResponseEntry struct {
13005	// BatchId: The ID of the request entry this entry responds to.
13006	BatchId int64 `json:"batchId,omitempty"`
13007
13008	// Errors: A list of errors defined if and only if the request failed.
13009	Errors *Errors `json:"errors,omitempty"`
13010
13011	// Kind: Identifies what kind of resource this is. Value: the fixed
13012	// string "content#regionalinventoryCustomBatchResponseEntry".
13013	Kind string `json:"kind,omitempty"`
13014
13015	// RegionalInventory: Price and availability of the product.
13016	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
13017
13018	// ForceSendFields is a list of field names (e.g. "BatchId") to
13019	// unconditionally include in API requests. By default, fields with
13020	// empty or default values are omitted from API requests. However, any
13021	// non-pointer, non-interface field appearing in ForceSendFields will be
13022	// sent to the server regardless of whether the field is empty or not.
13023	// This may be used to include empty fields in Patch requests.
13024	ForceSendFields []string `json:"-"`
13025
13026	// NullFields is a list of field names (e.g. "BatchId") to include in
13027	// API requests with the JSON null value. By default, fields with empty
13028	// values are omitted from API requests. However, any field with an
13029	// empty value appearing in NullFields will be sent to the server as
13030	// null. It is an error if a field in this list has a non-empty value.
13031	// This may be used to include null fields in Patch requests.
13032	NullFields []string `json:"-"`
13033}
13034
13035func (s *RegionalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
13036	type NoMethod RegionalinventoryCustomBatchResponseEntry
13037	raw := NoMethod(*s)
13038	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13039}
13040
13041// ReportRow: Result row returned from the search query.
13042type ReportRow struct {
13043	// Metrics: Metrics requested by the merchant in the query. Metric
13044	// values are only set for metrics requested explicitly in the query.
13045	Metrics *Metrics `json:"metrics,omitempty"`
13046
13047	// Segments: Segmentation dimensions requested by the merchant in the
13048	// query. Dimension values are only set for dimensions requested
13049	// explicitly in the query.
13050	Segments *Segments `json:"segments,omitempty"`
13051
13052	// ForceSendFields is a list of field names (e.g. "Metrics") to
13053	// unconditionally include in API requests. By default, fields with
13054	// empty or default values are omitted from API requests. However, any
13055	// non-pointer, non-interface field appearing in ForceSendFields will be
13056	// sent to the server regardless of whether the field is empty or not.
13057	// This may be used to include empty fields in Patch requests.
13058	ForceSendFields []string `json:"-"`
13059
13060	// NullFields is a list of field names (e.g. "Metrics") to include in
13061	// API requests with the JSON null value. By default, fields with empty
13062	// values are omitted from API requests. However, any field with an
13063	// empty value appearing in NullFields will be sent to the server as
13064	// null. It is an error if a field in this list has a non-empty value.
13065	// This may be used to include null fields in Patch requests.
13066	NullFields []string `json:"-"`
13067}
13068
13069func (s *ReportRow) MarshalJSON() ([]byte, error) {
13070	type NoMethod ReportRow
13071	raw := NoMethod(*s)
13072	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13073}
13074
13075// RepricingProductReport: Resource that represents a daily Repricing
13076// product report. Each report contains stats for a single type of
13077// Repricing rule for a single product on a given day. If there are
13078// multiple rules of the same type for the product on that day, the
13079// report lists all the rules by rule ids, combines the stats, and
13080// paginates the results by date. To retrieve the stats of a particular
13081// rule, provide the rule_id in the request.
13082type RepricingProductReport struct {
13083	// ApplicationCount: Total count of Repricer applications. This value
13084	// captures how many times the rule of this type was applied to this
13085	// product during this reporting period.
13086	ApplicationCount int64 `json:"applicationCount,omitempty,string"`
13087
13088	// BuyboxWinningProductStats: Stats specific to buybox winning rules for
13089	// product report (deprecated).
13090	BuyboxWinningProductStats *RepricingProductReportBuyboxWinningProductStats `json:"buyboxWinningProductStats,omitempty"`
13091
13092	// Date: Date of the stats in this report. The report starts and ends
13093	// according to the merchant's timezone.
13094	Date *Date `json:"date,omitempty"`
13095
13096	// HighWatermark: Maximum displayed price after repriced during this
13097	// reporting period.
13098	HighWatermark *PriceAmount `json:"highWatermark,omitempty"`
13099
13100	// InapplicabilityDetails: List of all reasons the rule did not apply to
13101	// the product during the specified reporting period.
13102	InapplicabilityDetails []*InapplicabilityDetails `json:"inapplicabilityDetails,omitempty"`
13103
13104	// LowWatermark: Minimum displayed price after repriced during this
13105	// reporting period.
13106	LowWatermark *PriceAmount `json:"lowWatermark,omitempty"`
13107
13108	// OrderItemCount: Total unit count of impacted products ordered while
13109	// the rule was active on the date of the report. This count includes
13110	// all orders that were started while the rule was active, even if the
13111	// rule was no longer active when the order was completed.
13112	OrderItemCount int64 `json:"orderItemCount,omitempty"`
13113
13114	// RuleIds: Ids of the Repricing rule for this report.
13115	RuleIds []string `json:"ruleIds,omitempty"`
13116
13117	// TotalGmv: Total GMV generated by impacted products while the rule was
13118	// active on the date of the report. This value includes all orders that
13119	// were started while the rule was active, even if the rule was no
13120	// longer active when the order was completed.
13121	TotalGmv *PriceAmount `json:"totalGmv,omitempty"`
13122
13123	// Type: Type of the rule.
13124	//
13125	// Possible values:
13126	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13127	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13128	// Google SA merchants. If this rule is chosen, repricer will adjust the
13129	// offer price based on statistical metrics (currently only min is
13130	// available) among other merchants who sell the same product. Details
13131	// need to be provdided in the RuleDefinition.
13132	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13133	// adjust the offer price based on the offer's sale cost which is
13134	// provided by the merchant.
13135	Type string `json:"type,omitempty"`
13136
13137	// ForceSendFields is a list of field names (e.g. "ApplicationCount") to
13138	// unconditionally include in API requests. By default, fields with
13139	// empty or default values are omitted from API requests. However, any
13140	// non-pointer, non-interface field appearing in ForceSendFields will be
13141	// sent to the server regardless of whether the field is empty or not.
13142	// This may be used to include empty fields in Patch requests.
13143	ForceSendFields []string `json:"-"`
13144
13145	// NullFields is a list of field names (e.g. "ApplicationCount") to
13146	// include in API requests with the JSON null value. By default, fields
13147	// with empty values are omitted from API requests. However, any field
13148	// with an empty value appearing in NullFields will be sent to the
13149	// server as null. It is an error if a field in this list has a
13150	// non-empty value. This may be used to include null fields in Patch
13151	// requests.
13152	NullFields []string `json:"-"`
13153}
13154
13155func (s *RepricingProductReport) MarshalJSON() ([]byte, error) {
13156	type NoMethod RepricingProductReport
13157	raw := NoMethod(*s)
13158	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13159}
13160
13161// RepricingProductReportBuyboxWinningProductStats: Stats specific to
13162// buybox winning rules for product report.
13163type RepricingProductReportBuyboxWinningProductStats struct {
13164	// BuyboxWinsCount: Number of times this product won the buybox with
13165	// these rules during this time period.
13166	BuyboxWinsCount int64 `json:"buyboxWinsCount,omitempty"`
13167
13168	// ForceSendFields is a list of field names (e.g. "BuyboxWinsCount") to
13169	// unconditionally include in API requests. By default, fields with
13170	// empty or default values are omitted from API requests. However, any
13171	// non-pointer, non-interface field appearing in ForceSendFields will be
13172	// sent to the server regardless of whether the field is empty or not.
13173	// This may be used to include empty fields in Patch requests.
13174	ForceSendFields []string `json:"-"`
13175
13176	// NullFields is a list of field names (e.g. "BuyboxWinsCount") to
13177	// include in API requests with the JSON null value. By default, fields
13178	// with empty values are omitted from API requests. However, any field
13179	// with an empty value appearing in NullFields will be sent to the
13180	// server as null. It is an error if a field in this list has a
13181	// non-empty value. This may be used to include null fields in Patch
13182	// requests.
13183	NullFields []string `json:"-"`
13184}
13185
13186func (s *RepricingProductReportBuyboxWinningProductStats) MarshalJSON() ([]byte, error) {
13187	type NoMethod RepricingProductReportBuyboxWinningProductStats
13188	raw := NoMethod(*s)
13189	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13190}
13191
13192// RepricingRule: Represents a repricing rule. A repricing rule is used
13193// by shopping serving to adjust transactable offer prices if conditions
13194// are met. Next ID: 24
13195type RepricingRule struct {
13196	// CogsBasedRule: The rule definition for TYPE_COGS_BASED. Required when
13197	// the rule type is TYPE_COGS_BASED.
13198	CogsBasedRule *RepricingRuleCostOfGoodsSaleRule `json:"cogsBasedRule,omitempty"`
13199
13200	// CountryCode: Required. Immutable. CLDR country code
13201	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
13202	// (e.g. "US").
13203	CountryCode string `json:"countryCode,omitempty"`
13204
13205	// EffectiveTimePeriod: Required. Time period when the rule should take
13206	// effect.
13207	EffectiveTimePeriod *RepricingRuleEffectiveTime `json:"effectiveTimePeriod,omitempty"`
13208
13209	// EligibleOfferMatcher: Required. Match criteria for the eligible
13210	// offers.
13211	EligibleOfferMatcher *RepricingRuleEligibleOfferMatcher `json:"eligibleOfferMatcher,omitempty"`
13212
13213	// LanguageCode: Required. Immutable. The two-letter ISO 639-1 language
13214	// code associated with the repricing rule.
13215	LanguageCode string `json:"languageCode,omitempty"`
13216
13217	// MerchantId: Output only. Immutable. Merchant that owns the repricing
13218	// rule.
13219	MerchantId int64 `json:"merchantId,omitempty,string"`
13220
13221	// Paused: Represents whether a rule is paused. A paused rule will
13222	// behave like a non-paused rule within CRUD operations, with the major
13223	// difference that a paused rule will not be evaluated and will have no
13224	// effect on offers.
13225	Paused bool `json:"paused,omitempty"`
13226
13227	// Restriction: Required. Restriction of the rule appliance.
13228	Restriction *RepricingRuleRestriction `json:"restriction,omitempty"`
13229
13230	// RuleId: Output only. Immutable. The ID to uniquely identify each
13231	// repricing rule.
13232	RuleId string `json:"ruleId,omitempty"`
13233
13234	// StatsBasedRule: The rule definition for TYPE_STATS_BASED. Required
13235	// when the rule type is TYPE_STATS_BASED.
13236	StatsBasedRule *RepricingRuleStatsBasedRule `json:"statsBasedRule,omitempty"`
13237
13238	// Title: The title for the rule.
13239	Title string `json:"title,omitempty"`
13240
13241	// Type: Required. Immutable. The type of the rule.
13242	//
13243	// Possible values:
13244	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13245	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13246	// Google SA merchants. If this rule is chosen, repricer will adjust the
13247	// offer price based on statistical metrics (currently only min is
13248	// available) among other merchants who sell the same product. Details
13249	// need to be provdided in the RuleDefinition.
13250	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13251	// adjust the offer price based on the offer's sale cost which is
13252	// provided by the merchant.
13253	Type string `json:"type,omitempty"`
13254
13255	// ServerResponse contains the HTTP response code and headers from the
13256	// server.
13257	googleapi.ServerResponse `json:"-"`
13258
13259	// ForceSendFields is a list of field names (e.g. "CogsBasedRule") to
13260	// unconditionally include in API requests. By default, fields with
13261	// empty or default values are omitted from API requests. However, any
13262	// non-pointer, non-interface field appearing in ForceSendFields will be
13263	// sent to the server regardless of whether the field is empty or not.
13264	// This may be used to include empty fields in Patch requests.
13265	ForceSendFields []string `json:"-"`
13266
13267	// NullFields is a list of field names (e.g. "CogsBasedRule") to include
13268	// in API requests with the JSON null value. By default, fields with
13269	// empty values are omitted from API requests. However, any field with
13270	// an empty value appearing in NullFields will be sent to the server as
13271	// null. It is an error if a field in this list has a non-empty value.
13272	// This may be used to include null fields in Patch requests.
13273	NullFields []string `json:"-"`
13274}
13275
13276func (s *RepricingRule) MarshalJSON() ([]byte, error) {
13277	type NoMethod RepricingRule
13278	raw := NoMethod(*s)
13279	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13280}
13281
13282// RepricingRuleCostOfGoodsSaleRule: A repricing rule that changes the
13283// sale price based on cost of goods sale.
13284type RepricingRuleCostOfGoodsSaleRule struct {
13285	// PercentageDelta: The percent change against the COGS. Ex: 20 would
13286	// mean to set the adjusted price 1.2X of the COGS data.
13287	PercentageDelta int64 `json:"percentageDelta,omitempty"`
13288
13289	// PriceDelta: The price delta against the COGS. E.g. 2 means $2 more of
13290	// the COGS.
13291	PriceDelta string `json:"priceDelta,omitempty"`
13292
13293	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
13294	// unconditionally include in API requests. By default, fields with
13295	// empty or default values are omitted from API requests. However, any
13296	// non-pointer, non-interface field appearing in ForceSendFields will be
13297	// sent to the server regardless of whether the field is empty or not.
13298	// This may be used to include empty fields in Patch requests.
13299	ForceSendFields []string `json:"-"`
13300
13301	// NullFields is a list of field names (e.g. "PercentageDelta") to
13302	// include in API requests with the JSON null value. By default, fields
13303	// with empty values are omitted from API requests. However, any field
13304	// with an empty value appearing in NullFields will be sent to the
13305	// server as null. It is an error if a field in this list has a
13306	// non-empty value. This may be used to include null fields in Patch
13307	// requests.
13308	NullFields []string `json:"-"`
13309}
13310
13311func (s *RepricingRuleCostOfGoodsSaleRule) MarshalJSON() ([]byte, error) {
13312	type NoMethod RepricingRuleCostOfGoodsSaleRule
13313	raw := NoMethod(*s)
13314	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13315}
13316
13317type RepricingRuleEffectiveTime struct {
13318	// FixedTimePeriods: A list of fixed time periods combined with OR. The
13319	// maximum number of entries is limited to 5.
13320	FixedTimePeriods []*RepricingRuleEffectiveTimeFixedTimePeriod `json:"fixedTimePeriods,omitempty"`
13321
13322	// ForceSendFields is a list of field names (e.g. "FixedTimePeriods") to
13323	// unconditionally include in API requests. By default, fields with
13324	// empty or default values are omitted from API requests. However, any
13325	// non-pointer, non-interface field appearing in ForceSendFields will be
13326	// sent to the server regardless of whether the field is empty or not.
13327	// This may be used to include empty fields in Patch requests.
13328	ForceSendFields []string `json:"-"`
13329
13330	// NullFields is a list of field names (e.g. "FixedTimePeriods") to
13331	// include in API requests with the JSON null value. By default, fields
13332	// with empty values are omitted from API requests. However, any field
13333	// with an empty value appearing in NullFields will be sent to the
13334	// server as null. It is an error if a field in this list has a
13335	// non-empty value. This may be used to include null fields in Patch
13336	// requests.
13337	NullFields []string `json:"-"`
13338}
13339
13340func (s *RepricingRuleEffectiveTime) MarshalJSON() ([]byte, error) {
13341	type NoMethod RepricingRuleEffectiveTime
13342	raw := NoMethod(*s)
13343	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13344}
13345
13346// RepricingRuleEffectiveTimeFixedTimePeriod: Definition of a fixed time
13347// period.
13348type RepricingRuleEffectiveTimeFixedTimePeriod struct {
13349	// EndTime: The end time (exclusive) of the period. It can only be hour
13350	// granularity.
13351	EndTime string `json:"endTime,omitempty"`
13352
13353	// StartTime: The start time (inclusive) of the period. It can only be
13354	// hour granularity.
13355	StartTime string `json:"startTime,omitempty"`
13356
13357	// ForceSendFields is a list of field names (e.g. "EndTime") to
13358	// unconditionally include in API requests. By default, fields with
13359	// empty or default values are omitted from API requests. However, any
13360	// non-pointer, non-interface field appearing in ForceSendFields will be
13361	// sent to the server regardless of whether the field is empty or not.
13362	// This may be used to include empty fields in Patch requests.
13363	ForceSendFields []string `json:"-"`
13364
13365	// NullFields is a list of field names (e.g. "EndTime") to include in
13366	// API requests with the JSON null value. By default, fields with empty
13367	// values are omitted from API requests. However, any field with an
13368	// empty value appearing in NullFields will be sent to the server as
13369	// null. It is an error if a field in this list has a non-empty value.
13370	// This may be used to include null fields in Patch requests.
13371	NullFields []string `json:"-"`
13372}
13373
13374func (s *RepricingRuleEffectiveTimeFixedTimePeriod) MarshalJSON() ([]byte, error) {
13375	type NoMethod RepricingRuleEffectiveTimeFixedTimePeriod
13376	raw := NoMethod(*s)
13377	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13378}
13379
13380// RepricingRuleEligibleOfferMatcher: Matcher that specifies eligible
13381// offers. When the USE_FEED_ATTRIBUTE option is selected, only the
13382// repricing_rule_id attribute on the product feed is used to specify
13383// offer-rule mapping. When the CUSTOM_FILTER option is selected, only
13384// the *_matcher fields are used to filter the offers for offer-rule
13385// mapping. If the CUSTOM_FILTER option is selected, an offer needs to
13386// satisfy each custom filter matcher to be eligible for a rule. Size
13387// limit: the sum of the number of entries in all the matchers should
13388// not exceed 20. For example, there can be 15 product ids and 5 brands,
13389// but not 10 product ids and 11 brands.
13390type RepricingRuleEligibleOfferMatcher struct {
13391	// BrandMatcher: Filter by the brand.
13392	BrandMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"brandMatcher,omitempty"`
13393
13394	// ItemGroupIdMatcher: Filter by the item group id.
13395	ItemGroupIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"itemGroupIdMatcher,omitempty"`
13396
13397	// MatcherOption: Determines whether to use the custom matchers or the
13398	// product feed attribute "repricing_rule_id" to specify offer-rule
13399	// mapping.
13400	//
13401	// Possible values:
13402	//   "MATCHER_OPTION_UNSPECIFIED" - Unused.
13403	//   "MATCHER_OPTION_CUSTOM_FILTER" - Use custom filters.
13404	//   "MATCHER_OPTION_USE_FEED_ATTRIBUTE" - Use repricing_rule_id feed
13405	// attribute on the product resource to specify offer-rule mapping.
13406	//   "MATCHER_OPTION_ALL_PRODUCTS" - Matching all products.
13407	MatcherOption string `json:"matcherOption,omitempty"`
13408
13409	// OfferIdMatcher: Filter by the offer id.
13410	OfferIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"offerIdMatcher,omitempty"`
13411
13412	// SkipWhenOnPromotion: When true, the rule won't be applied to offers
13413	// with active promotions.
13414	SkipWhenOnPromotion bool `json:"skipWhenOnPromotion,omitempty"`
13415
13416	// ForceSendFields is a list of field names (e.g. "BrandMatcher") to
13417	// unconditionally include in API requests. By default, fields with
13418	// empty or default values are omitted from API requests. However, any
13419	// non-pointer, non-interface field appearing in ForceSendFields will be
13420	// sent to the server regardless of whether the field is empty or not.
13421	// This may be used to include empty fields in Patch requests.
13422	ForceSendFields []string `json:"-"`
13423
13424	// NullFields is a list of field names (e.g. "BrandMatcher") to include
13425	// in API requests with the JSON null value. By default, fields with
13426	// empty values are omitted from API requests. However, any field with
13427	// an empty value appearing in NullFields will be sent to the server as
13428	// null. It is an error if a field in this list has a non-empty value.
13429	// This may be used to include null fields in Patch requests.
13430	NullFields []string `json:"-"`
13431}
13432
13433func (s *RepricingRuleEligibleOfferMatcher) MarshalJSON() ([]byte, error) {
13434	type NoMethod RepricingRuleEligibleOfferMatcher
13435	raw := NoMethod(*s)
13436	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13437}
13438
13439// RepricingRuleEligibleOfferMatcherStringMatcher: Matcher by string
13440// attributes.
13441type RepricingRuleEligibleOfferMatcherStringMatcher struct {
13442	// StrAttributes: String attributes, as long as such attribute of an
13443	// offer is one of the string attribute values, the offer is considered
13444	// as passing the matcher. The string matcher checks an offer for
13445	// inclusivity in the string attributes, not equality. Only literal
13446	// string matching is supported, no regex.
13447	StrAttributes []string `json:"strAttributes,omitempty"`
13448
13449	// ForceSendFields is a list of field names (e.g. "StrAttributes") to
13450	// unconditionally include in API requests. By default, fields with
13451	// empty or default values are omitted from API requests. However, any
13452	// non-pointer, non-interface field appearing in ForceSendFields will be
13453	// sent to the server regardless of whether the field is empty or not.
13454	// This may be used to include empty fields in Patch requests.
13455	ForceSendFields []string `json:"-"`
13456
13457	// NullFields is a list of field names (e.g. "StrAttributes") to include
13458	// in API requests with the JSON null value. By default, fields with
13459	// empty values are omitted from API requests. However, any field with
13460	// an empty value appearing in NullFields will be sent to the server as
13461	// null. It is an error if a field in this list has a non-empty value.
13462	// This may be used to include null fields in Patch requests.
13463	NullFields []string `json:"-"`
13464}
13465
13466func (s *RepricingRuleEligibleOfferMatcherStringMatcher) MarshalJSON() ([]byte, error) {
13467	type NoMethod RepricingRuleEligibleOfferMatcherStringMatcher
13468	raw := NoMethod(*s)
13469	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13470}
13471
13472// RepricingRuleReport: Resource that represents a daily Repricing rule
13473// report. Next ID: 11
13474type RepricingRuleReport struct {
13475	// BuyboxWinningRuleStats: Stats specific to buybox winning rules for
13476	// rule report (deprecated).
13477	BuyboxWinningRuleStats *RepricingRuleReportBuyboxWinningRuleStats `json:"buyboxWinningRuleStats,omitempty"`
13478
13479	// Date: Date of the stats in this report. The report starts and ends
13480	// according to the merchant's timezone.
13481	Date *Date `json:"date,omitempty"`
13482
13483	// ImpactedProducts: List of product ids that are impacted by this rule
13484	// during this reporting period. Out of stock products and products not
13485	// searched for by customers are examples of non-impacted products.
13486	ImpactedProducts []string `json:"impactedProducts,omitempty"`
13487
13488	// InapplicabilityDetails: List of all reasons the rule did not apply to
13489	// the inapplicable products during the specified reporting period.
13490	InapplicabilityDetails []*InapplicabilityDetails `json:"inapplicabilityDetails,omitempty"`
13491
13492	// InapplicableProducts: List of product ids that are inapplicable to
13493	// this rule during this reporting period. To get the inapplicable
13494	// reason for a specific product, see RepricingProductReport.
13495	InapplicableProducts []string `json:"inapplicableProducts,omitempty"`
13496
13497	// OrderItemCount: Total unit count of impacted products ordered while
13498	// the rule was active on the date of the report. This count includes
13499	// all orders that were started while the rule was active, even if the
13500	// rule was no longer active when the order was completed.
13501	OrderItemCount int64 `json:"orderItemCount,omitempty"`
13502
13503	// RuleId: Id of the Repricing rule for this report.
13504	RuleId string `json:"ruleId,omitempty"`
13505
13506	// TotalGmv: Total GMV generated by impacted products while the rule was
13507	// active on the date of the report. This value includes all orders that
13508	// were started while the rule was active, even if the rule was no
13509	// longer active when the order was completed.
13510	TotalGmv *PriceAmount `json:"totalGmv,omitempty"`
13511
13512	// Type: Type of the rule.
13513	//
13514	// Possible values:
13515	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13516	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13517	// Google SA merchants. If this rule is chosen, repricer will adjust the
13518	// offer price based on statistical metrics (currently only min is
13519	// available) among other merchants who sell the same product. Details
13520	// need to be provdided in the RuleDefinition.
13521	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13522	// adjust the offer price based on the offer's sale cost which is
13523	// provided by the merchant.
13524	Type string `json:"type,omitempty"`
13525
13526	// ForceSendFields is a list of field names (e.g.
13527	// "BuyboxWinningRuleStats") to unconditionally include in API requests.
13528	// By default, fields with empty or default values are omitted from API
13529	// requests. However, any non-pointer, non-interface field appearing in
13530	// ForceSendFields will be sent to the server regardless of whether the
13531	// field is empty or not. This may be used to include empty fields in
13532	// Patch requests.
13533	ForceSendFields []string `json:"-"`
13534
13535	// NullFields is a list of field names (e.g. "BuyboxWinningRuleStats")
13536	// to include in API requests with the JSON null value. By default,
13537	// fields with empty values are omitted from API requests. However, any
13538	// field with an empty value appearing in NullFields will be sent to the
13539	// server as null. It is an error if a field in this list has a
13540	// non-empty value. This may be used to include null fields in Patch
13541	// requests.
13542	NullFields []string `json:"-"`
13543}
13544
13545func (s *RepricingRuleReport) MarshalJSON() ([]byte, error) {
13546	type NoMethod RepricingRuleReport
13547	raw := NoMethod(*s)
13548	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13549}
13550
13551// RepricingRuleReportBuyboxWinningRuleStats: Stats specific to buybox
13552// winning rules for rule report.
13553type RepricingRuleReportBuyboxWinningRuleStats struct {
13554	// BuyboxWonProductCount: Number of unique products that won the buybox
13555	// with this rule during this period of time.
13556	BuyboxWonProductCount int64 `json:"buyboxWonProductCount,omitempty"`
13557
13558	// ForceSendFields is a list of field names (e.g.
13559	// "BuyboxWonProductCount") to unconditionally include in API requests.
13560	// By default, fields with empty or default values are omitted from API
13561	// requests. However, any non-pointer, non-interface field appearing in
13562	// ForceSendFields will be sent to the server regardless of whether the
13563	// field is empty or not. This may be used to include empty fields in
13564	// Patch requests.
13565	ForceSendFields []string `json:"-"`
13566
13567	// NullFields is a list of field names (e.g. "BuyboxWonProductCount") to
13568	// include in API requests with the JSON null value. By default, fields
13569	// with empty values are omitted from API requests. However, any field
13570	// with an empty value appearing in NullFields will be sent to the
13571	// server as null. It is an error if a field in this list has a
13572	// non-empty value. This may be used to include null fields in Patch
13573	// requests.
13574	NullFields []string `json:"-"`
13575}
13576
13577func (s *RepricingRuleReportBuyboxWinningRuleStats) MarshalJSON() ([]byte, error) {
13578	type NoMethod RepricingRuleReportBuyboxWinningRuleStats
13579	raw := NoMethod(*s)
13580	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13581}
13582
13583// RepricingRuleRestriction: Definition of a rule restriction. At least
13584// one of the following needs to be true: (1) use_auto_pricing_min_price
13585// is true (2) floor.price_delta exists (3) floor.percentage_delta
13586// exists If floor.price_delta and floor.percentage_delta are both set
13587// on a rule, the highest value will be chosen by the Repricer. In other
13588// words, for a product with a price of $50, if the
13589// `floor.percentage_delta` is "-10" and the floor.price_delta is "-12",
13590// the offer price will only be lowered $5 (10% lower than the original
13591// offer price).
13592type RepricingRuleRestriction struct {
13593	// Floor: The inclusive floor lower bound. The repricing rule only
13594	// applies when new price >= floor.
13595	Floor *RepricingRuleRestrictionBoundary `json:"floor,omitempty"`
13596
13597	// UseAutoPricingMinPrice: If true, use the AUTO_PRICING_MIN_PRICE offer
13598	// attribute as the lower bound of the rule. If
13599	// use_auto_pricing_min_price is true, then only offers with
13600	// `AUTO_PRICING_MIN_PRICE` existing on the offer will get Repricer
13601	// treatment, even if a floor value is set on the rule. Also, if
13602	// use_auto_pricing_min_price is true, the floor restriction will be
13603	// ignored.
13604	UseAutoPricingMinPrice bool `json:"useAutoPricingMinPrice,omitempty"`
13605
13606	// ForceSendFields is a list of field names (e.g. "Floor") to
13607	// unconditionally include in API requests. By default, fields with
13608	// empty or default values are omitted from API requests. However, any
13609	// non-pointer, non-interface field appearing in ForceSendFields will be
13610	// sent to the server regardless of whether the field is empty or not.
13611	// This may be used to include empty fields in Patch requests.
13612	ForceSendFields []string `json:"-"`
13613
13614	// NullFields is a list of field names (e.g. "Floor") to include in API
13615	// requests with the JSON null value. By default, fields with empty
13616	// values are omitted from API requests. However, any field with an
13617	// empty value appearing in NullFields will be sent to the server as
13618	// null. It is an error if a field in this list has a non-empty value.
13619	// This may be used to include null fields in Patch requests.
13620	NullFields []string `json:"-"`
13621}
13622
13623func (s *RepricingRuleRestriction) MarshalJSON() ([]byte, error) {
13624	type NoMethod RepricingRuleRestriction
13625	raw := NoMethod(*s)
13626	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13627}
13628
13629// RepricingRuleRestrictionBoundary: Definition of a boundary.
13630type RepricingRuleRestrictionBoundary struct {
13631	// PercentageDelta: The percentage delta relative to the offer selling
13632	// price. This field is signed. It must be negative in floor. When it is
13633	// used in floor, it should be > -100. For example, if an offer is
13634	// selling at $10 and this field is -30 in floor, the repricing rule
13635	// only applies if the calculated new price is >= $7.
13636	PercentageDelta int64 `json:"percentageDelta,omitempty"`
13637
13638	// PriceDelta: The price micros relative to the offer selling price.
13639	// This field is signed. It must be negative in floor. For example, if
13640	// an offer is selling at $10 and this field is -$2 in floor, the
13641	// repricing rule only applies if the calculated new price is >= $8.
13642	PriceDelta string `json:"priceDelta,omitempty"`
13643
13644	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
13645	// unconditionally include in API requests. By default, fields with
13646	// empty or default values are omitted from API requests. However, any
13647	// non-pointer, non-interface field appearing in ForceSendFields will be
13648	// sent to the server regardless of whether the field is empty or not.
13649	// This may be used to include empty fields in Patch requests.
13650	ForceSendFields []string `json:"-"`
13651
13652	// NullFields is a list of field names (e.g. "PercentageDelta") to
13653	// include in API requests with the JSON null value. By default, fields
13654	// with empty values are omitted from API requests. However, any field
13655	// with an empty value appearing in NullFields will be sent to the
13656	// server as null. It is an error if a field in this list has a
13657	// non-empty value. This may be used to include null fields in Patch
13658	// requests.
13659	NullFields []string `json:"-"`
13660}
13661
13662func (s *RepricingRuleRestrictionBoundary) MarshalJSON() ([]byte, error) {
13663	type NoMethod RepricingRuleRestrictionBoundary
13664	raw := NoMethod(*s)
13665	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13666}
13667
13668// RepricingRuleStatsBasedRule: Definition of stats based rule.
13669type RepricingRuleStatsBasedRule struct {
13670	// PercentageDelta: The percent change against the price target. Valid
13671	// from 0 to 100 inclusively.
13672	PercentageDelta int64 `json:"percentageDelta,omitempty"`
13673
13674	// PriceDelta: The price delta against the above price target. A
13675	// positive value means the price should be adjusted to be above
13676	// statistical measure, and a negative value means below. Currency code
13677	// must not be included.
13678	PriceDelta string `json:"priceDelta,omitempty"`
13679
13680	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
13681	// unconditionally include in API requests. By default, fields with
13682	// empty or default values are omitted from API requests. However, any
13683	// non-pointer, non-interface field appearing in ForceSendFields will be
13684	// sent to the server regardless of whether the field is empty or not.
13685	// This may be used to include empty fields in Patch requests.
13686	ForceSendFields []string `json:"-"`
13687
13688	// NullFields is a list of field names (e.g. "PercentageDelta") to
13689	// include in API requests with the JSON null value. By default, fields
13690	// with empty values are omitted from API requests. However, any field
13691	// with an empty value appearing in NullFields will be sent to the
13692	// server as null. It is an error if a field in this list has a
13693	// non-empty value. This may be used to include null fields in Patch
13694	// requests.
13695	NullFields []string `json:"-"`
13696}
13697
13698func (s *RepricingRuleStatsBasedRule) MarshalJSON() ([]byte, error) {
13699	type NoMethod RepricingRuleStatsBasedRule
13700	raw := NoMethod(*s)
13701	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13702}
13703
13704// RequestPhoneVerificationRequest: Request message for the
13705// RequestPhoneVerification method.
13706type RequestPhoneVerificationRequest struct {
13707	// LanguageCode: Language code IETF BCP 47 syntax
13708	// (https://tools.ietf.org/html/bcp47) (for example, en-US). Language
13709	// code is used to provide localized `SMS` and `PHONE_CALL`. Default
13710	// language used is en-US if not provided.
13711	LanguageCode string `json:"languageCode,omitempty"`
13712
13713	// PhoneNumber: Phone number to be verified.
13714	PhoneNumber string `json:"phoneNumber,omitempty"`
13715
13716	// PhoneRegionCode: Required. Two letter country code for the phone
13717	// number, for example `CA` for Canadian numbers. See the ISO 3166-1
13718	// alpha-2
13719	// (https://wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)
13720	// officially assigned codes.
13721	PhoneRegionCode string `json:"phoneRegionCode,omitempty"`
13722
13723	// PhoneVerificationMethod: Verification method to receive verification
13724	// code.
13725	//
13726	// Possible values:
13727	//   "PHONE_VERIFICATION_METHOD_UNSPECIFIED" - Unknown method.
13728	//   "SMS" - Receive verification code by SMS.
13729	//   "PHONE_CALL" - Receive verification code by phone call.
13730	PhoneVerificationMethod string `json:"phoneVerificationMethod,omitempty"`
13731
13732	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
13733	// unconditionally include in API requests. By default, fields with
13734	// empty or default values are omitted from API requests. However, any
13735	// non-pointer, non-interface field appearing in ForceSendFields will be
13736	// sent to the server regardless of whether the field is empty or not.
13737	// This may be used to include empty fields in Patch requests.
13738	ForceSendFields []string `json:"-"`
13739
13740	// NullFields is a list of field names (e.g. "LanguageCode") to include
13741	// in API requests with the JSON null value. By default, fields with
13742	// empty values are omitted from API requests. However, any field with
13743	// an empty value appearing in NullFields will be sent to the server as
13744	// null. It is an error if a field in this list has a non-empty value.
13745	// This may be used to include null fields in Patch requests.
13746	NullFields []string `json:"-"`
13747}
13748
13749func (s *RequestPhoneVerificationRequest) MarshalJSON() ([]byte, error) {
13750	type NoMethod RequestPhoneVerificationRequest
13751	raw := NoMethod(*s)
13752	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13753}
13754
13755// RequestPhoneVerificationResponse: Response message for the
13756// RequestPhoneVerification method.
13757type RequestPhoneVerificationResponse struct {
13758	// VerificationId: The verification ID to use in subsequent calls to
13759	// `verifyphonenumber`.
13760	VerificationId string `json:"verificationId,omitempty"`
13761
13762	// ServerResponse contains the HTTP response code and headers from the
13763	// server.
13764	googleapi.ServerResponse `json:"-"`
13765
13766	// ForceSendFields is a list of field names (e.g. "VerificationId") to
13767	// unconditionally include in API requests. By default, fields with
13768	// empty or default values are omitted from API requests. However, any
13769	// non-pointer, non-interface field appearing in ForceSendFields will be
13770	// sent to the server regardless of whether the field is empty or not.
13771	// This may be used to include empty fields in Patch requests.
13772	ForceSendFields []string `json:"-"`
13773
13774	// NullFields is a list of field names (e.g. "VerificationId") to
13775	// include in API requests with the JSON null value. By default, fields
13776	// with empty values are omitted from API requests. However, any field
13777	// with an empty value appearing in NullFields will be sent to the
13778	// server as null. It is an error if a field in this list has a
13779	// non-empty value. This may be used to include null fields in Patch
13780	// requests.
13781	NullFields []string `json:"-"`
13782}
13783
13784func (s *RequestPhoneVerificationResponse) MarshalJSON() ([]byte, error) {
13785	type NoMethod RequestPhoneVerificationResponse
13786	raw := NoMethod(*s)
13787	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13788}
13789
13790// RequestReviewBuyOnGoogleProgramRequest: Request message for the
13791// RequestReviewProgram method.
13792type RequestReviewBuyOnGoogleProgramRequest struct {
13793}
13794
13795// RequestReviewFreeListingsRequest: Request message for the
13796// RequestReviewFreeListings Program method.
13797type RequestReviewFreeListingsRequest struct {
13798	// RegionCode: The code ISO 3166-1 alpha-2
13799	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the country for
13800	// which review is to be requested.
13801	RegionCode string `json:"regionCode,omitempty"`
13802
13803	// ForceSendFields is a list of field names (e.g. "RegionCode") to
13804	// unconditionally include in API requests. By default, fields with
13805	// empty or default values are omitted from API requests. However, any
13806	// non-pointer, non-interface field appearing in ForceSendFields will be
13807	// sent to the server regardless of whether the field is empty or not.
13808	// This may be used to include empty fields in Patch requests.
13809	ForceSendFields []string `json:"-"`
13810
13811	// NullFields is a list of field names (e.g. "RegionCode") to include in
13812	// API requests with the JSON null value. By default, fields with empty
13813	// values are omitted from API requests. However, any field with an
13814	// empty value appearing in NullFields will be sent to the server as
13815	// null. It is an error if a field in this list has a non-empty value.
13816	// This may be used to include null fields in Patch requests.
13817	NullFields []string `json:"-"`
13818}
13819
13820func (s *RequestReviewFreeListingsRequest) MarshalJSON() ([]byte, error) {
13821	type NoMethod RequestReviewFreeListingsRequest
13822	raw := NoMethod(*s)
13823	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13824}
13825
13826// RequestReviewShoppingAdsRequest: Request message for the
13827// RequestReviewShoppingAds program method.
13828type RequestReviewShoppingAdsRequest struct {
13829	// RegionCode: The code ISO 3166-1 alpha-2
13830	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the country for
13831	// which review is to be requested.
13832	RegionCode string `json:"regionCode,omitempty"`
13833
13834	// ForceSendFields is a list of field names (e.g. "RegionCode") to
13835	// unconditionally include in API requests. By default, fields with
13836	// empty or default values are omitted from API requests. However, any
13837	// non-pointer, non-interface field appearing in ForceSendFields will be
13838	// sent to the server regardless of whether the field is empty or not.
13839	// This may be used to include empty fields in Patch requests.
13840	ForceSendFields []string `json:"-"`
13841
13842	// NullFields is a list of field names (e.g. "RegionCode") to include in
13843	// API requests with the JSON null value. By default, fields with empty
13844	// values are omitted from API requests. However, any field with an
13845	// empty value appearing in NullFields will be sent to the server as
13846	// null. It is an error if a field in this list has a non-empty value.
13847	// This may be used to include null fields in Patch requests.
13848	NullFields []string `json:"-"`
13849}
13850
13851func (s *RequestReviewShoppingAdsRequest) MarshalJSON() ([]byte, error) {
13852	type NoMethod RequestReviewShoppingAdsRequest
13853	raw := NoMethod(*s)
13854	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13855}
13856
13857// ReturnAddress: Return address resource.
13858type ReturnAddress struct {
13859	// Address: Required. The address.
13860	Address *ReturnAddressAddress `json:"address,omitempty"`
13861
13862	// Country: Required. The country of sale where the return address is
13863	// applicable.
13864	Country string `json:"country,omitempty"`
13865
13866	// Kind: Identifies what kind of resource this is. Value: the fixed
13867	// string "content#returnAddress"
13868	Kind string `json:"kind,omitempty"`
13869
13870	// Label: Required. The user-defined label of the return address. For
13871	// the default address, use the label "default".
13872	Label string `json:"label,omitempty"`
13873
13874	// PhoneNumber: Required. The merchant's contact phone number regarding
13875	// the return.
13876	PhoneNumber string `json:"phoneNumber,omitempty"`
13877
13878	// ReturnAddressId: Return address ID generated by Google.
13879	ReturnAddressId string `json:"returnAddressId,omitempty"`
13880
13881	// ServerResponse contains the HTTP response code and headers from the
13882	// server.
13883	googleapi.ServerResponse `json:"-"`
13884
13885	// ForceSendFields is a list of field names (e.g. "Address") to
13886	// unconditionally include in API requests. By default, fields with
13887	// empty or default values are omitted from API requests. However, any
13888	// non-pointer, non-interface field appearing in ForceSendFields will be
13889	// sent to the server regardless of whether the field is empty or not.
13890	// This may be used to include empty fields in Patch requests.
13891	ForceSendFields []string `json:"-"`
13892
13893	// NullFields is a list of field names (e.g. "Address") to include in
13894	// API requests with the JSON null value. By default, fields with empty
13895	// values are omitted from API requests. However, any field with an
13896	// empty value appearing in NullFields will be sent to the server as
13897	// null. It is an error if a field in this list has a non-empty value.
13898	// This may be used to include null fields in Patch requests.
13899	NullFields []string `json:"-"`
13900}
13901
13902func (s *ReturnAddress) MarshalJSON() ([]byte, error) {
13903	type NoMethod ReturnAddress
13904	raw := NoMethod(*s)
13905	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13906}
13907
13908type ReturnAddressAddress struct {
13909	// Country: CLDR country code (e.g. "US").
13910	Country string `json:"country,omitempty"`
13911
13912	// Locality: City, town or commune. May also include dependent
13913	// localities or sublocalities (e.g. neighborhoods or suburbs).
13914	Locality string `json:"locality,omitempty"`
13915
13916	// PostalCode: Postal code or ZIP (e.g. "94043").
13917	PostalCode string `json:"postalCode,omitempty"`
13918
13919	// RecipientName: Name of the recipient to address returns to.
13920	RecipientName string `json:"recipientName,omitempty"`
13921
13922	// Region: Top-level administrative subdivision of the country. For
13923	// example, a state like California ("CA") or a province like Quebec
13924	// ("QC").
13925	Region string `json:"region,omitempty"`
13926
13927	// StreetAddress: Street-level part of the address. May be up to two
13928	// lines, each line specified as an array element.
13929	StreetAddress []string `json:"streetAddress,omitempty"`
13930
13931	// ForceSendFields is a list of field names (e.g. "Country") to
13932	// unconditionally include in API requests. By default, fields with
13933	// empty or default values are omitted from API requests. However, any
13934	// non-pointer, non-interface field appearing in ForceSendFields will be
13935	// sent to the server regardless of whether the field is empty or not.
13936	// This may be used to include empty fields in Patch requests.
13937	ForceSendFields []string `json:"-"`
13938
13939	// NullFields is a list of field names (e.g. "Country") to include in
13940	// API requests with the JSON null value. By default, fields with empty
13941	// values are omitted from API requests. However, any field with an
13942	// empty value appearing in NullFields will be sent to the server as
13943	// null. It is an error if a field in this list has a non-empty value.
13944	// This may be used to include null fields in Patch requests.
13945	NullFields []string `json:"-"`
13946}
13947
13948func (s *ReturnAddressAddress) MarshalJSON() ([]byte, error) {
13949	type NoMethod ReturnAddressAddress
13950	raw := NoMethod(*s)
13951	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13952}
13953
13954// ReturnPolicy: Return policy resource.
13955type ReturnPolicy struct {
13956	// Country: Required. The country of sale where the return policy is
13957	// applicable.
13958	Country string `json:"country,omitempty"`
13959
13960	// Kind: Identifies what kind of resource this is. Value: the fixed
13961	// string "content#returnPolicy"
13962	Kind string `json:"kind,omitempty"`
13963
13964	// Label: Required. The user-defined label of the return policy. For the
13965	// default policy, use the label "default".
13966	Label string `json:"label,omitempty"`
13967
13968	// Name: Required. The name of the policy as shown in Merchant Center.
13969	Name string `json:"name,omitempty"`
13970
13971	// NonFreeReturnReasons: Return reasons that will incur return fees.
13972	NonFreeReturnReasons []string `json:"nonFreeReturnReasons,omitempty"`
13973
13974	// Policy: Required. The policy.
13975	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
13976
13977	// ReturnPolicyId: Return policy ID generated by Google.
13978	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
13979
13980	// ReturnShippingFee: The return shipping fee that will apply to non
13981	// free return reasons.
13982	ReturnShippingFee *Price `json:"returnShippingFee,omitempty"`
13983
13984	// SeasonalOverrides: An optional list of seasonal overrides.
13985	SeasonalOverrides []*ReturnPolicySeasonalOverride `json:"seasonalOverrides,omitempty"`
13986
13987	// ServerResponse contains the HTTP response code and headers from the
13988	// server.
13989	googleapi.ServerResponse `json:"-"`
13990
13991	// ForceSendFields is a list of field names (e.g. "Country") to
13992	// unconditionally include in API requests. By default, fields with
13993	// empty or default values are omitted from API requests. However, any
13994	// non-pointer, non-interface field appearing in ForceSendFields will be
13995	// sent to the server regardless of whether the field is empty or not.
13996	// This may be used to include empty fields in Patch requests.
13997	ForceSendFields []string `json:"-"`
13998
13999	// NullFields is a list of field names (e.g. "Country") to include in
14000	// API requests with the JSON null value. By default, fields with empty
14001	// values are omitted from API requests. However, any field with an
14002	// empty value appearing in NullFields will be sent to the server as
14003	// null. It is an error if a field in this list has a non-empty value.
14004	// This may be used to include null fields in Patch requests.
14005	NullFields []string `json:"-"`
14006}
14007
14008func (s *ReturnPolicy) MarshalJSON() ([]byte, error) {
14009	type NoMethod ReturnPolicy
14010	raw := NoMethod(*s)
14011	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14012}
14013
14014// ReturnPolicyOnline: Return policy online object. This is currently
14015// used to represent return policies for ads and free listings programs.
14016type ReturnPolicyOnline struct {
14017	// Countries: The countries of sale where the return policy is
14018	// applicable. The values must be a valid 2 letter ISO 3166 code, e.g.
14019	// "US".
14020	Countries []string `json:"countries,omitempty"`
14021
14022	// ItemConditions: The item conditions that are accepted for returns.
14023	// This is required to not be empty unless the type of return policy is
14024	// noReturns.
14025	//
14026	// Possible values:
14027	//   "ITEM_CONDITION_UNSPECIFIED" - Default value. This value is unused.
14028	//   "NEW" - New.
14029	//   "USED" - Used.
14030	ItemConditions []string `json:"itemConditions,omitempty"`
14031
14032	// Label: The unique user-defined label of the return policy. The same
14033	// label cannot be used in different return policies for the same
14034	// country. Policies with the label 'default' will apply to all
14035	// products, unless a product specifies a return_policy_label attribute.
14036	Label string `json:"label,omitempty"`
14037
14038	// Name: The name of the policy as shown in Merchant Center.
14039	Name string `json:"name,omitempty"`
14040
14041	// Policy: The return policy.
14042	Policy *ReturnPolicyOnlinePolicy `json:"policy,omitempty"`
14043
14044	// RestockingFee: The restocking fee that applies to all return reason
14045	// categories. This would be treated as a free restocking fee if the
14046	// value is not set.
14047	RestockingFee *ReturnPolicyOnlineRestockingFee `json:"restockingFee,omitempty"`
14048
14049	// ReturnMethods: The return methods of how customers can return an
14050	// item. This value is required to not be empty unless the type of
14051	// return policy is noReturns.
14052	//
14053	// Possible values:
14054	//   "RETURN_METHOD_UNSPECIFIED" - Default value. This value is unused.
14055	//   "BY_MAIL" - By mail.
14056	//   "IN_STORE" - In store.
14057	//   "AT_A_KIOSK" - At a kiosk.
14058	ReturnMethods []string `json:"returnMethods,omitempty"`
14059
14060	// ReturnPolicyId: Output only. Return policy ID generated by Google.
14061	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
14062
14063	// ReturnPolicyUri: The return policy uri. This can used by Google to do
14064	// a sanity check for the policy.
14065	ReturnPolicyUri string `json:"returnPolicyUri,omitempty"`
14066
14067	// ReturnReasonCategoryInfo: The return reason category information.
14068	// This required to not be empty unless the type of return policy is
14069	// noReturns.
14070	ReturnReasonCategoryInfo []*ReturnPolicyOnlineReturnReasonCategoryInfo `json:"returnReasonCategoryInfo,omitempty"`
14071
14072	// ServerResponse contains the HTTP response code and headers from the
14073	// server.
14074	googleapi.ServerResponse `json:"-"`
14075
14076	// ForceSendFields is a list of field names (e.g. "Countries") to
14077	// unconditionally include in API requests. By default, fields with
14078	// empty or default values are omitted from API requests. However, any
14079	// non-pointer, non-interface field appearing in ForceSendFields will be
14080	// sent to the server regardless of whether the field is empty or not.
14081	// This may be used to include empty fields in Patch requests.
14082	ForceSendFields []string `json:"-"`
14083
14084	// NullFields is a list of field names (e.g. "Countries") to include in
14085	// API requests with the JSON null value. By default, fields with empty
14086	// values are omitted from API requests. However, any field with an
14087	// empty value appearing in NullFields will be sent to the server as
14088	// null. It is an error if a field in this list has a non-empty value.
14089	// This may be used to include null fields in Patch requests.
14090	NullFields []string `json:"-"`
14091}
14092
14093func (s *ReturnPolicyOnline) MarshalJSON() ([]byte, error) {
14094	type NoMethod ReturnPolicyOnline
14095	raw := NoMethod(*s)
14096	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14097}
14098
14099// ReturnPolicyOnlinePolicy: The available policies.
14100type ReturnPolicyOnlinePolicy struct {
14101	// Days: The number of days items can be returned after delivery, where
14102	// one day is defined to be 24 hours after the delivery timestamp.
14103	// Required for `numberOfDaysAfterDelivery` returns.
14104	Days int64 `json:"days,omitempty,string"`
14105
14106	// Type: Policy type.
14107	//
14108	// Possible values:
14109	//   "TYPE_UNSPECIFIED" - Default value. This value is unused.
14110	//   "NUMBER_OF_DAYS_AFTER_DELIVERY" - Number of days after a return is
14111	// delivered.
14112	//   "NO_RETURNS" - No returns.
14113	//   "LIFETIME_RETURNS" - Life time returns.
14114	Type string `json:"type,omitempty"`
14115
14116	// ForceSendFields is a list of field names (e.g. "Days") to
14117	// unconditionally include in API requests. By default, fields with
14118	// empty or default values are omitted from API requests. However, any
14119	// non-pointer, non-interface field appearing in ForceSendFields will be
14120	// sent to the server regardless of whether the field is empty or not.
14121	// This may be used to include empty fields in Patch requests.
14122	ForceSendFields []string `json:"-"`
14123
14124	// NullFields is a list of field names (e.g. "Days") to include in API
14125	// requests with the JSON null value. By default, fields with empty
14126	// values are omitted from API requests. However, any field with an
14127	// empty value appearing in NullFields will be sent to the server as
14128	// null. It is an error if a field in this list has a non-empty value.
14129	// This may be used to include null fields in Patch requests.
14130	NullFields []string `json:"-"`
14131}
14132
14133func (s *ReturnPolicyOnlinePolicy) MarshalJSON() ([]byte, error) {
14134	type NoMethod ReturnPolicyOnlinePolicy
14135	raw := NoMethod(*s)
14136	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14137}
14138
14139// ReturnPolicyOnlineRestockingFee: The restocking fee. This can either
14140// be a fixed fee or a micro percent.
14141type ReturnPolicyOnlineRestockingFee struct {
14142	// FixedFee: Fixed restocking fee.
14143	FixedFee *PriceAmount `json:"fixedFee,omitempty"`
14144
14145	// MicroPercent: Percent of total price in micros. 15,000,000 means 15%
14146	// of the total price would be charged.
14147	MicroPercent int64 `json:"microPercent,omitempty"`
14148
14149	// ForceSendFields is a list of field names (e.g. "FixedFee") to
14150	// unconditionally include in API requests. By default, fields with
14151	// empty or default values are omitted from API requests. However, any
14152	// non-pointer, non-interface field appearing in ForceSendFields will be
14153	// sent to the server regardless of whether the field is empty or not.
14154	// This may be used to include empty fields in Patch requests.
14155	ForceSendFields []string `json:"-"`
14156
14157	// NullFields is a list of field names (e.g. "FixedFee") to include in
14158	// API requests with the JSON null value. By default, fields with empty
14159	// values are omitted from API requests. However, any field with an
14160	// empty value appearing in NullFields will be sent to the server as
14161	// null. It is an error if a field in this list has a non-empty value.
14162	// This may be used to include null fields in Patch requests.
14163	NullFields []string `json:"-"`
14164}
14165
14166func (s *ReturnPolicyOnlineRestockingFee) MarshalJSON() ([]byte, error) {
14167	type NoMethod ReturnPolicyOnlineRestockingFee
14168	raw := NoMethod(*s)
14169	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14170}
14171
14172// ReturnPolicyOnlineReturnReasonCategoryInfo: The return reason
14173// category info wrapper.
14174type ReturnPolicyOnlineReturnReasonCategoryInfo struct {
14175	// ReturnLabelSource: The corresponding return label source.
14176	//
14177	// Possible values:
14178	//   "RETURN_LABEL_SOURCE_UNSPECIFIED" - Default value. This value is
14179	// unused.
14180	//   "DOWNLOAD_AND_PRINT" - Download and print the label.
14181	//   "IN_THE_BOX" - Label in the box.
14182	//   "CUSTOMER_RESPONSIBILITY" - Customers' responsibility to get the
14183	// label.
14184	ReturnLabelSource string `json:"returnLabelSource,omitempty"`
14185
14186	// ReturnReasonCategory: The return reason category.
14187	//
14188	// Possible values:
14189	//   "RETURN_REASON_CATEGORY_UNSPECIFIED" - Default value. This value is
14190	// unused.
14191	//   "BUYER_REMORSE" - Buyer remorse.
14192	//   "ITEM_DEFECT" - Item defect.
14193	ReturnReasonCategory string `json:"returnReasonCategory,omitempty"`
14194
14195	// ReturnShippingFee: The corresponding return shipping fee. This is
14196	// only applicable when returnLabelSource is not the customer's
14197	// responsibility.
14198	ReturnShippingFee *ReturnPolicyOnlineReturnShippingFee `json:"returnShippingFee,omitempty"`
14199
14200	// ForceSendFields is a list of field names (e.g. "ReturnLabelSource")
14201	// to unconditionally include in API requests. By default, fields with
14202	// empty or default values are omitted from API requests. However, any
14203	// non-pointer, non-interface field appearing in ForceSendFields will be
14204	// sent to the server regardless of whether the field is empty or not.
14205	// This may be used to include empty fields in Patch requests.
14206	ForceSendFields []string `json:"-"`
14207
14208	// NullFields is a list of field names (e.g. "ReturnLabelSource") to
14209	// include in API requests with the JSON null value. By default, fields
14210	// with empty values are omitted from API requests. However, any field
14211	// with an empty value appearing in NullFields will be sent to the
14212	// server as null. It is an error if a field in this list has a
14213	// non-empty value. This may be used to include null fields in Patch
14214	// requests.
14215	NullFields []string `json:"-"`
14216}
14217
14218func (s *ReturnPolicyOnlineReturnReasonCategoryInfo) MarshalJSON() ([]byte, error) {
14219	type NoMethod ReturnPolicyOnlineReturnReasonCategoryInfo
14220	raw := NoMethod(*s)
14221	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14222}
14223
14224// ReturnPolicyOnlineReturnShippingFee: The return shipping fee. This
14225// can either be a fixed fee or a boolean to indicate that the customer
14226// pays the actual shipping cost.
14227type ReturnPolicyOnlineReturnShippingFee struct {
14228	// FixedFee: Fixed return shipping fee amount. This value is only
14229	// applicable when type is FIXED. We will treat the return shipping fee
14230	// as free if type is FIXED and this value is not set.
14231	FixedFee *PriceAmount `json:"fixedFee,omitempty"`
14232
14233	// Type: Type of return shipping fee.
14234	//
14235	// Possible values:
14236	//   "TYPE_UNSPECIFIED" - Default value. This value is unused.
14237	//   "FIXED" - The return shipping fee is a fixed value.
14238	//   "CUSTOMER_PAYING_ACTUAL_FEE" - Customer will pay the actual return
14239	// shipping fee.
14240	Type string `json:"type,omitempty"`
14241
14242	// ForceSendFields is a list of field names (e.g. "FixedFee") to
14243	// unconditionally include in API requests. By default, fields with
14244	// empty or default values are omitted from API requests. However, any
14245	// non-pointer, non-interface field appearing in ForceSendFields will be
14246	// sent to the server regardless of whether the field is empty or not.
14247	// This may be used to include empty fields in Patch requests.
14248	ForceSendFields []string `json:"-"`
14249
14250	// NullFields is a list of field names (e.g. "FixedFee") to include in
14251	// API requests with the JSON null value. By default, fields with empty
14252	// values are omitted from API requests. However, any field with an
14253	// empty value appearing in NullFields will be sent to the server as
14254	// null. It is an error if a field in this list has a non-empty value.
14255	// This may be used to include null fields in Patch requests.
14256	NullFields []string `json:"-"`
14257}
14258
14259func (s *ReturnPolicyOnlineReturnShippingFee) MarshalJSON() ([]byte, error) {
14260	type NoMethod ReturnPolicyOnlineReturnShippingFee
14261	raw := NoMethod(*s)
14262	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14263}
14264
14265type ReturnPolicyPolicy struct {
14266	// LastReturnDate: Required. Last day for returning the items. In ISO
14267	// 8601 format. When specifying the return window like this, set the
14268	// policy type to "lastReturnDate". Use this for seasonal overrides
14269	// only.
14270	LastReturnDate string `json:"lastReturnDate,omitempty"`
14271
14272	// NumberOfDays: The number of days items can be returned after
14273	// delivery, where one day is defined to be 24 hours after the delivery
14274	// timestamp. When specifying the return window like this, set the
14275	// policy type to "numberOfDaysAfterDelivery". Acceptable values are 30,
14276	// 45, 60, 90, 100, 180, 270 and 365 for the default policy. Additional
14277	// policies further allow 14, 15, 21 and 28 days, but note that for most
14278	// items a minimum of 30 days is required for returns. Exceptions may be
14279	// made for electronics. A policy of less than 30 days can only be
14280	// applied to those items.
14281	NumberOfDays int64 `json:"numberOfDays,omitempty,string"`
14282
14283	// Type: Policy type. Use "lastReturnDate" for seasonal overrides only.
14284	// Note that for most items a minimum of 30 days is required for
14285	// returns. Exceptions may be made for electronics or non-returnable
14286	// items such as food, perishables, and living things. A policy of less
14287	// than 30 days can only be applied to those items. Acceptable values
14288	// are: - "lastReturnDate" - "lifetimeReturns" - "noReturns" -
14289	// "numberOfDaysAfterDelivery"
14290	Type string `json:"type,omitempty"`
14291
14292	// ForceSendFields is a list of field names (e.g. "LastReturnDate") to
14293	// unconditionally include in API requests. By default, fields with
14294	// empty or default values are omitted from API requests. However, any
14295	// non-pointer, non-interface field appearing in ForceSendFields will be
14296	// sent to the server regardless of whether the field is empty or not.
14297	// This may be used to include empty fields in Patch requests.
14298	ForceSendFields []string `json:"-"`
14299
14300	// NullFields is a list of field names (e.g. "LastReturnDate") to
14301	// include in API requests with the JSON null value. By default, fields
14302	// with empty values are omitted from API requests. However, any field
14303	// with an empty value appearing in NullFields will be sent to the
14304	// server as null. It is an error if a field in this list has a
14305	// non-empty value. This may be used to include null fields in Patch
14306	// requests.
14307	NullFields []string `json:"-"`
14308}
14309
14310func (s *ReturnPolicyPolicy) MarshalJSON() ([]byte, error) {
14311	type NoMethod ReturnPolicyPolicy
14312	raw := NoMethod(*s)
14313	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14314}
14315
14316type ReturnPolicySeasonalOverride struct {
14317	// EndDate: Required. Last day on which the override applies. In ISO
14318	// 8601 format.
14319	EndDate string `json:"endDate,omitempty"`
14320
14321	// Name: Required. The name of the seasonal override as shown in
14322	// Merchant Center.
14323	Name string `json:"name,omitempty"`
14324
14325	// Policy: Required. The policy which is in effect during that time.
14326	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
14327
14328	// StartDate: Required. First day on which the override applies. In ISO
14329	// 8601 format.
14330	StartDate string `json:"startDate,omitempty"`
14331
14332	// ForceSendFields is a list of field names (e.g. "EndDate") to
14333	// unconditionally include in API requests. By default, fields with
14334	// empty or default values are omitted from API requests. However, any
14335	// non-pointer, non-interface field appearing in ForceSendFields will be
14336	// sent to the server regardless of whether the field is empty or not.
14337	// This may be used to include empty fields in Patch requests.
14338	ForceSendFields []string `json:"-"`
14339
14340	// NullFields is a list of field names (e.g. "EndDate") to include in
14341	// API requests with the JSON null value. By default, fields with empty
14342	// values are omitted from API requests. However, any field with an
14343	// empty value appearing in NullFields will be sent to the server as
14344	// null. It is an error if a field in this list has a non-empty value.
14345	// This may be used to include null fields in Patch requests.
14346	NullFields []string `json:"-"`
14347}
14348
14349func (s *ReturnPolicySeasonalOverride) MarshalJSON() ([]byte, error) {
14350	type NoMethod ReturnPolicySeasonalOverride
14351	raw := NoMethod(*s)
14352	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14353}
14354
14355type ReturnPricingInfo struct {
14356	// ChargeReturnShippingFee: Default option for whether merchant should
14357	// charge the customer for return shipping costs, based on customer
14358	// selected return reason and merchant's return policy for the items
14359	// being returned.
14360	ChargeReturnShippingFee bool `json:"chargeReturnShippingFee,omitempty"`
14361
14362	// MaxReturnShippingFee: Maximum return shipping costs that may be
14363	// charged to the customer depending on merchant's assessment of the
14364	// return reason and the merchant's return policy for the items being
14365	// returned.
14366	MaxReturnShippingFee *MonetaryAmount `json:"maxReturnShippingFee,omitempty"`
14367
14368	// RefundableItemsTotalAmount: Total amount that can be refunded for the
14369	// items in this return. It represents the total amount received by the
14370	// merchant for the items, after applying merchant coupons.
14371	RefundableItemsTotalAmount *MonetaryAmount `json:"refundableItemsTotalAmount,omitempty"`
14372
14373	// RefundableShippingAmount: Maximum amount that can be refunded for the
14374	// original shipping fee.
14375	RefundableShippingAmount *MonetaryAmount `json:"refundableShippingAmount,omitempty"`
14376
14377	// TotalRefundedAmount: Total amount already refunded by the merchant.
14378	// It includes all types of refunds (items, shipping, etc.) Not provided
14379	// if no refund has been applied yet.
14380	TotalRefundedAmount *MonetaryAmount `json:"totalRefundedAmount,omitempty"`
14381
14382	// ForceSendFields is a list of field names (e.g.
14383	// "ChargeReturnShippingFee") to unconditionally include in API
14384	// requests. By default, fields with empty or default values are omitted
14385	// from API requests. However, any non-pointer, non-interface field
14386	// appearing in ForceSendFields will be sent to the server regardless of
14387	// whether the field is empty or not. This may be used to include empty
14388	// fields in Patch requests.
14389	ForceSendFields []string `json:"-"`
14390
14391	// NullFields is a list of field names (e.g. "ChargeReturnShippingFee")
14392	// to include in API requests with the JSON null value. By default,
14393	// fields with empty values are omitted from API requests. However, any
14394	// field with an empty value appearing in NullFields will be sent to the
14395	// server as null. It is an error if a field in this list has a
14396	// non-empty value. This may be used to include null fields in Patch
14397	// requests.
14398	NullFields []string `json:"-"`
14399}
14400
14401func (s *ReturnPricingInfo) MarshalJSON() ([]byte, error) {
14402	type NoMethod ReturnPricingInfo
14403	raw := NoMethod(*s)
14404	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14405}
14406
14407type ReturnShipment struct {
14408	// CreationDate: The date of creation of the shipment, in ISO 8601
14409	// format.
14410	CreationDate string `json:"creationDate,omitempty"`
14411
14412	// DeliveryDate: The date of delivery of the shipment, in ISO 8601
14413	// format.
14414	DeliveryDate string `json:"deliveryDate,omitempty"`
14415
14416	// ReturnMethodType: Type of the return method. Acceptable values are: -
14417	// "byMail" - "contactCustomerSupport" - "returnless" -
14418	// "inStore"
14419	ReturnMethodType string `json:"returnMethodType,omitempty"`
14420
14421	// ShipmentId: Shipment ID generated by Google.
14422	ShipmentId string `json:"shipmentId,omitempty"`
14423
14424	// ShipmentTrackingInfos: Tracking information of the shipment. One
14425	// return shipment might be handled by several shipping carriers
14426	// sequentially.
14427	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
14428
14429	// ShippingDate: The date of shipping of the shipment, in ISO 8601
14430	// format.
14431	ShippingDate string `json:"shippingDate,omitempty"`
14432
14433	// State: State of the shipment. Acceptable values are: - "completed"
14434	// - "new" - "shipped" - "undeliverable" - "pending"
14435	State string `json:"state,omitempty"`
14436
14437	// ForceSendFields is a list of field names (e.g. "CreationDate") to
14438	// unconditionally include in API requests. By default, fields with
14439	// empty or default values are omitted from API requests. However, any
14440	// non-pointer, non-interface field appearing in ForceSendFields will be
14441	// sent to the server regardless of whether the field is empty or not.
14442	// This may be used to include empty fields in Patch requests.
14443	ForceSendFields []string `json:"-"`
14444
14445	// NullFields is a list of field names (e.g. "CreationDate") to include
14446	// in API requests with the JSON null value. By default, fields with
14447	// empty values are omitted from API requests. However, any field with
14448	// an empty value appearing in NullFields will be sent to the server as
14449	// null. It is an error if a field in this list has a non-empty value.
14450	// This may be used to include null fields in Patch requests.
14451	NullFields []string `json:"-"`
14452}
14453
14454func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
14455	type NoMethod ReturnShipment
14456	raw := NoMethod(*s)
14457	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14458}
14459
14460// ReturnShippingLabel: Return shipping label for a Buy on Google
14461// merchant-managed return.
14462type ReturnShippingLabel struct {
14463	// Carrier: Name of the carrier.
14464	Carrier string `json:"carrier,omitempty"`
14465
14466	// LabelUri: The URL for the return shipping label in PDF format
14467	LabelUri string `json:"labelUri,omitempty"`
14468
14469	// TrackingId: The tracking id of this return label.
14470	TrackingId string `json:"trackingId,omitempty"`
14471
14472	// ServerResponse contains the HTTP response code and headers from the
14473	// server.
14474	googleapi.ServerResponse `json:"-"`
14475
14476	// ForceSendFields is a list of field names (e.g. "Carrier") to
14477	// unconditionally include in API requests. By default, fields with
14478	// empty or default values are omitted from API requests. However, any
14479	// non-pointer, non-interface field appearing in ForceSendFields will be
14480	// sent to the server regardless of whether the field is empty or not.
14481	// This may be used to include empty fields in Patch requests.
14482	ForceSendFields []string `json:"-"`
14483
14484	// NullFields is a list of field names (e.g. "Carrier") to include in
14485	// API requests with the JSON null value. By default, fields with empty
14486	// values are omitted from API requests. However, any field with an
14487	// empty value appearing in NullFields will be sent to the server as
14488	// null. It is an error if a field in this list has a non-empty value.
14489	// This may be used to include null fields in Patch requests.
14490	NullFields []string `json:"-"`
14491}
14492
14493func (s *ReturnShippingLabel) MarshalJSON() ([]byte, error) {
14494	type NoMethod ReturnShippingLabel
14495	raw := NoMethod(*s)
14496	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14497}
14498
14499type ReturnaddressCustomBatchRequest struct {
14500	// Entries: The request entries to be processed in the batch.
14501	Entries []*ReturnaddressCustomBatchRequestEntry `json:"entries,omitempty"`
14502
14503	// ForceSendFields is a list of field names (e.g. "Entries") to
14504	// unconditionally include in API requests. By default, fields with
14505	// empty or default values are omitted from API requests. However, any
14506	// non-pointer, non-interface field appearing in ForceSendFields will be
14507	// sent to the server regardless of whether the field is empty or not.
14508	// This may be used to include empty fields in Patch requests.
14509	ForceSendFields []string `json:"-"`
14510
14511	// NullFields is a list of field names (e.g. "Entries") to include in
14512	// API requests with the JSON null value. By default, fields with empty
14513	// values are omitted from API requests. However, any field with an
14514	// empty value appearing in NullFields will be sent to the server as
14515	// null. It is an error if a field in this list has a non-empty value.
14516	// This may be used to include null fields in Patch requests.
14517	NullFields []string `json:"-"`
14518}
14519
14520func (s *ReturnaddressCustomBatchRequest) MarshalJSON() ([]byte, error) {
14521	type NoMethod ReturnaddressCustomBatchRequest
14522	raw := NoMethod(*s)
14523	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14524}
14525
14526type ReturnaddressCustomBatchRequestEntry struct {
14527	// BatchId: An entry ID, unique within the batch request.
14528	BatchId int64 `json:"batchId,omitempty"`
14529
14530	// MerchantId: The Merchant Center account ID.
14531	MerchantId uint64 `json:"merchantId,omitempty,string"`
14532
14533	// Method: Method of the batch request entry. Acceptable values are: -
14534	// "delete" - "get" - "insert"
14535	Method string `json:"method,omitempty"`
14536
14537	// ReturnAddress: The return address to submit. This should be set only
14538	// if the method is `insert`.
14539	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
14540
14541	// ReturnAddressId: The return address ID. This should be set only if
14542	// the method is `delete` or `get`.
14543	ReturnAddressId string `json:"returnAddressId,omitempty"`
14544
14545	// ForceSendFields is a list of field names (e.g. "BatchId") to
14546	// unconditionally include in API requests. By default, fields with
14547	// empty or default values are omitted from API requests. However, any
14548	// non-pointer, non-interface field appearing in ForceSendFields will be
14549	// sent to the server regardless of whether the field is empty or not.
14550	// This may be used to include empty fields in Patch requests.
14551	ForceSendFields []string `json:"-"`
14552
14553	// NullFields is a list of field names (e.g. "BatchId") to include in
14554	// API requests with the JSON null value. By default, fields with empty
14555	// values are omitted from API requests. However, any field with an
14556	// empty value appearing in NullFields will be sent to the server as
14557	// null. It is an error if a field in this list has a non-empty value.
14558	// This may be used to include null fields in Patch requests.
14559	NullFields []string `json:"-"`
14560}
14561
14562func (s *ReturnaddressCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
14563	type NoMethod ReturnaddressCustomBatchRequestEntry
14564	raw := NoMethod(*s)
14565	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14566}
14567
14568type ReturnaddressCustomBatchResponse struct {
14569	// Entries: The result of the execution of the batch requests.
14570	Entries []*ReturnaddressCustomBatchResponseEntry `json:"entries,omitempty"`
14571
14572	// Kind: Identifies what kind of resource this is. Value: the fixed
14573	// string "content#returnaddressCustomBatchResponse".
14574	Kind string `json:"kind,omitempty"`
14575
14576	// ServerResponse contains the HTTP response code and headers from the
14577	// server.
14578	googleapi.ServerResponse `json:"-"`
14579
14580	// ForceSendFields is a list of field names (e.g. "Entries") to
14581	// unconditionally include in API requests. By default, fields with
14582	// empty or default values are omitted from API requests. However, any
14583	// non-pointer, non-interface field appearing in ForceSendFields will be
14584	// sent to the server regardless of whether the field is empty or not.
14585	// This may be used to include empty fields in Patch requests.
14586	ForceSendFields []string `json:"-"`
14587
14588	// NullFields is a list of field names (e.g. "Entries") to include in
14589	// API requests with the JSON null value. By default, fields with empty
14590	// values are omitted from API requests. However, any field with an
14591	// empty value appearing in NullFields will be sent to the server as
14592	// null. It is an error if a field in this list has a non-empty value.
14593	// This may be used to include null fields in Patch requests.
14594	NullFields []string `json:"-"`
14595}
14596
14597func (s *ReturnaddressCustomBatchResponse) MarshalJSON() ([]byte, error) {
14598	type NoMethod ReturnaddressCustomBatchResponse
14599	raw := NoMethod(*s)
14600	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14601}
14602
14603type ReturnaddressCustomBatchResponseEntry struct {
14604	// BatchId: The ID of the request entry to which this entry responds.
14605	BatchId int64 `json:"batchId,omitempty"`
14606
14607	// Errors: A list of errors defined if, and only if, the request failed.
14608	Errors *Errors `json:"errors,omitempty"`
14609
14610	// Kind: Identifies what kind of resource this is. Value: the fixed
14611	// string "content#returnaddressCustomBatchResponseEntry"
14612	Kind string `json:"kind,omitempty"`
14613
14614	// ReturnAddress: The retrieved return address.
14615	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
14616
14617	// ForceSendFields is a list of field names (e.g. "BatchId") to
14618	// unconditionally include in API requests. By default, fields with
14619	// empty or default values are omitted from API requests. However, any
14620	// non-pointer, non-interface field appearing in ForceSendFields will be
14621	// sent to the server regardless of whether the field is empty or not.
14622	// This may be used to include empty fields in Patch requests.
14623	ForceSendFields []string `json:"-"`
14624
14625	// NullFields is a list of field names (e.g. "BatchId") to include in
14626	// API requests with the JSON null value. By default, fields with empty
14627	// values are omitted from API requests. However, any field with an
14628	// empty value appearing in NullFields will be sent to the server as
14629	// null. It is an error if a field in this list has a non-empty value.
14630	// This may be used to include null fields in Patch requests.
14631	NullFields []string `json:"-"`
14632}
14633
14634func (s *ReturnaddressCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
14635	type NoMethod ReturnaddressCustomBatchResponseEntry
14636	raw := NoMethod(*s)
14637	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14638}
14639
14640type ReturnaddressListResponse struct {
14641	// Kind: Identifies what kind of resource this is. Value: the fixed
14642	// string "content#returnaddressListResponse".
14643	Kind string `json:"kind,omitempty"`
14644
14645	// NextPageToken: The token for the retrieval of the next page of
14646	// addresses.
14647	NextPageToken string `json:"nextPageToken,omitempty"`
14648
14649	Resources []*ReturnAddress `json:"resources,omitempty"`
14650
14651	// ServerResponse contains the HTTP response code and headers from the
14652	// server.
14653	googleapi.ServerResponse `json:"-"`
14654
14655	// ForceSendFields is a list of field names (e.g. "Kind") to
14656	// unconditionally include in API requests. By default, fields with
14657	// empty or default values are omitted from API requests. However, any
14658	// non-pointer, non-interface field appearing in ForceSendFields will be
14659	// sent to the server regardless of whether the field is empty or not.
14660	// This may be used to include empty fields in Patch requests.
14661	ForceSendFields []string `json:"-"`
14662
14663	// NullFields is a list of field names (e.g. "Kind") to include in API
14664	// requests with the JSON null value. By default, fields with empty
14665	// values are omitted from API requests. However, any field with an
14666	// empty value appearing in NullFields will be sent to the server as
14667	// null. It is an error if a field in this list has a non-empty value.
14668	// This may be used to include null fields in Patch requests.
14669	NullFields []string `json:"-"`
14670}
14671
14672func (s *ReturnaddressListResponse) MarshalJSON() ([]byte, error) {
14673	type NoMethod ReturnaddressListResponse
14674	raw := NoMethod(*s)
14675	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14676}
14677
14678type ReturnpolicyCustomBatchRequest struct {
14679	// Entries: The request entries to be processed in the batch.
14680	Entries []*ReturnpolicyCustomBatchRequestEntry `json:"entries,omitempty"`
14681
14682	// ForceSendFields is a list of field names (e.g. "Entries") to
14683	// unconditionally include in API requests. By default, fields with
14684	// empty or default values are omitted from API requests. However, any
14685	// non-pointer, non-interface field appearing in ForceSendFields will be
14686	// sent to the server regardless of whether the field is empty or not.
14687	// This may be used to include empty fields in Patch requests.
14688	ForceSendFields []string `json:"-"`
14689
14690	// NullFields is a list of field names (e.g. "Entries") to include in
14691	// API requests with the JSON null value. By default, fields with empty
14692	// values are omitted from API requests. However, any field with an
14693	// empty value appearing in NullFields will be sent to the server as
14694	// null. It is an error if a field in this list has a non-empty value.
14695	// This may be used to include null fields in Patch requests.
14696	NullFields []string `json:"-"`
14697}
14698
14699func (s *ReturnpolicyCustomBatchRequest) MarshalJSON() ([]byte, error) {
14700	type NoMethod ReturnpolicyCustomBatchRequest
14701	raw := NoMethod(*s)
14702	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14703}
14704
14705type ReturnpolicyCustomBatchRequestEntry struct {
14706	// BatchId: An entry ID, unique within the batch request.
14707	BatchId int64 `json:"batchId,omitempty"`
14708
14709	// MerchantId: The Merchant Center account ID.
14710	MerchantId uint64 `json:"merchantId,omitempty,string"`
14711
14712	// Method: Method of the batch request entry. Acceptable values are: -
14713	// "delete" - "get" - "insert"
14714	Method string `json:"method,omitempty"`
14715
14716	// ReturnPolicy: The return policy to submit. This should be set only if
14717	// the method is `insert`.
14718	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
14719
14720	// ReturnPolicyId: The return policy ID. This should be set only if the
14721	// method is `delete` or `get`.
14722	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
14723
14724	// ForceSendFields is a list of field names (e.g. "BatchId") to
14725	// unconditionally include in API requests. By default, fields with
14726	// empty or default values are omitted from API requests. However, any
14727	// non-pointer, non-interface field appearing in ForceSendFields will be
14728	// sent to the server regardless of whether the field is empty or not.
14729	// This may be used to include empty fields in Patch requests.
14730	ForceSendFields []string `json:"-"`
14731
14732	// NullFields is a list of field names (e.g. "BatchId") to include in
14733	// API requests with the JSON null value. By default, fields with empty
14734	// values are omitted from API requests. However, any field with an
14735	// empty value appearing in NullFields will be sent to the server as
14736	// null. It is an error if a field in this list has a non-empty value.
14737	// This may be used to include null fields in Patch requests.
14738	NullFields []string `json:"-"`
14739}
14740
14741func (s *ReturnpolicyCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
14742	type NoMethod ReturnpolicyCustomBatchRequestEntry
14743	raw := NoMethod(*s)
14744	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14745}
14746
14747type ReturnpolicyCustomBatchResponse struct {
14748	// Entries: The result of the execution of the batch requests.
14749	Entries []*ReturnpolicyCustomBatchResponseEntry `json:"entries,omitempty"`
14750
14751	// Kind: Identifies what kind of resource this is. Value: the fixed
14752	// string "content#returnpolicyCustomBatchResponse".
14753	Kind string `json:"kind,omitempty"`
14754
14755	// ServerResponse contains the HTTP response code and headers from the
14756	// server.
14757	googleapi.ServerResponse `json:"-"`
14758
14759	// ForceSendFields is a list of field names (e.g. "Entries") to
14760	// unconditionally include in API requests. By default, fields with
14761	// empty or default values are omitted from API requests. However, any
14762	// non-pointer, non-interface field appearing in ForceSendFields will be
14763	// sent to the server regardless of whether the field is empty or not.
14764	// This may be used to include empty fields in Patch requests.
14765	ForceSendFields []string `json:"-"`
14766
14767	// NullFields is a list of field names (e.g. "Entries") to include in
14768	// API requests with the JSON null value. By default, fields with empty
14769	// values are omitted from API requests. However, any field with an
14770	// empty value appearing in NullFields will be sent to the server as
14771	// null. It is an error if a field in this list has a non-empty value.
14772	// This may be used to include null fields in Patch requests.
14773	NullFields []string `json:"-"`
14774}
14775
14776func (s *ReturnpolicyCustomBatchResponse) MarshalJSON() ([]byte, error) {
14777	type NoMethod ReturnpolicyCustomBatchResponse
14778	raw := NoMethod(*s)
14779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14780}
14781
14782type ReturnpolicyCustomBatchResponseEntry struct {
14783	// BatchId: The ID of the request entry to which this entry responds.
14784	BatchId int64 `json:"batchId,omitempty"`
14785
14786	// Errors: A list of errors defined if, and only if, the request failed.
14787	Errors *Errors `json:"errors,omitempty"`
14788
14789	// Kind: Identifies what kind of resource this is. Value: the fixed
14790	// string "content#returnpolicyCustomBatchResponseEntry"
14791	Kind string `json:"kind,omitempty"`
14792
14793	// ReturnPolicy: The retrieved return policy.
14794	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
14795
14796	// ForceSendFields is a list of field names (e.g. "BatchId") to
14797	// unconditionally include in API requests. By default, fields with
14798	// empty or default values are omitted from API requests. However, any
14799	// non-pointer, non-interface field appearing in ForceSendFields will be
14800	// sent to the server regardless of whether the field is empty or not.
14801	// This may be used to include empty fields in Patch requests.
14802	ForceSendFields []string `json:"-"`
14803
14804	// NullFields is a list of field names (e.g. "BatchId") to include in
14805	// API requests with the JSON null value. By default, fields with empty
14806	// values are omitted from API requests. However, any field with an
14807	// empty value appearing in NullFields will be sent to the server as
14808	// null. It is an error if a field in this list has a non-empty value.
14809	// This may be used to include null fields in Patch requests.
14810	NullFields []string `json:"-"`
14811}
14812
14813func (s *ReturnpolicyCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
14814	type NoMethod ReturnpolicyCustomBatchResponseEntry
14815	raw := NoMethod(*s)
14816	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14817}
14818
14819type ReturnpolicyListResponse struct {
14820	// Kind: Identifies what kind of resource this is. Value: the fixed
14821	// string "content#returnpolicyListResponse".
14822	Kind string `json:"kind,omitempty"`
14823
14824	Resources []*ReturnPolicy `json:"resources,omitempty"`
14825
14826	// ServerResponse contains the HTTP response code and headers from the
14827	// server.
14828	googleapi.ServerResponse `json:"-"`
14829
14830	// ForceSendFields is a list of field names (e.g. "Kind") to
14831	// unconditionally include in API requests. By default, fields with
14832	// empty or default values are omitted from API requests. However, any
14833	// non-pointer, non-interface field appearing in ForceSendFields will be
14834	// sent to the server regardless of whether the field is empty or not.
14835	// This may be used to include empty fields in Patch requests.
14836	ForceSendFields []string `json:"-"`
14837
14838	// NullFields is a list of field names (e.g. "Kind") to include in API
14839	// requests with the JSON null value. By default, fields with empty
14840	// values are omitted from API requests. However, any field with an
14841	// empty value appearing in NullFields will be sent to the server as
14842	// null. It is an error if a field in this list has a non-empty value.
14843	// This may be used to include null fields in Patch requests.
14844	NullFields []string `json:"-"`
14845}
14846
14847func (s *ReturnpolicyListResponse) MarshalJSON() ([]byte, error) {
14848	type NoMethod ReturnpolicyListResponse
14849	raw := NoMethod(*s)
14850	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14851}
14852
14853type Row struct {
14854	// Cells: The list of cells that constitute the row. Must have the same
14855	// length as `columnHeaders` for two-dimensional tables, a length of 1
14856	// for one-dimensional tables. Required.
14857	Cells []*Value `json:"cells,omitempty"`
14858
14859	// ForceSendFields is a list of field names (e.g. "Cells") to
14860	// unconditionally include in API requests. By default, fields with
14861	// empty or default values are omitted from API requests. However, any
14862	// non-pointer, non-interface field appearing in ForceSendFields will be
14863	// sent to the server regardless of whether the field is empty or not.
14864	// This may be used to include empty fields in Patch requests.
14865	ForceSendFields []string `json:"-"`
14866
14867	// NullFields is a list of field names (e.g. "Cells") to include in API
14868	// requests with the JSON null value. By default, fields with empty
14869	// values are omitted from API requests. However, any field with an
14870	// empty value appearing in NullFields will be sent to the server as
14871	// null. It is an error if a field in this list has a non-empty value.
14872	// This may be used to include null fields in Patch requests.
14873	NullFields []string `json:"-"`
14874}
14875
14876func (s *Row) MarshalJSON() ([]byte, error) {
14877	type NoMethod Row
14878	raw := NoMethod(*s)
14879	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14880}
14881
14882// SearchRequest: Request message for the ReportService.Search method.
14883type SearchRequest struct {
14884	// PageSize: Number of ReportRows to retrieve in a single page. Defaults
14885	// to the maximum of 1000. Values above 1000 are coerced to 1000.
14886	PageSize int64 `json:"pageSize,omitempty"`
14887
14888	// PageToken: Token of the page to retrieve. If not specified, the first
14889	// page of results is returned. In order to request the next page of
14890	// results, the value obtained from `next_page_token` in the previous
14891	// response should be used.
14892	PageToken string `json:"pageToken,omitempty"`
14893
14894	// Query: Required. Query that defines performance metrics to retrieve
14895	// and dimensions according to which the metrics are to be segmented.
14896	// For details on how to construct your query, see the Query Language
14897	// guide
14898	// (https://developers.google.com/shopping-content/guides/reports/query-language/overview).
14899	Query string `json:"query,omitempty"`
14900
14901	// ForceSendFields is a list of field names (e.g. "PageSize") to
14902	// unconditionally include in API requests. By default, fields with
14903	// empty or default values are omitted from API requests. However, any
14904	// non-pointer, non-interface field appearing in ForceSendFields will be
14905	// sent to the server regardless of whether the field is empty or not.
14906	// This may be used to include empty fields in Patch requests.
14907	ForceSendFields []string `json:"-"`
14908
14909	// NullFields is a list of field names (e.g. "PageSize") to include in
14910	// API requests with the JSON null value. By default, fields with empty
14911	// values are omitted from API requests. However, any field with an
14912	// empty value appearing in NullFields will be sent to the server as
14913	// null. It is an error if a field in this list has a non-empty value.
14914	// This may be used to include null fields in Patch requests.
14915	NullFields []string `json:"-"`
14916}
14917
14918func (s *SearchRequest) MarshalJSON() ([]byte, error) {
14919	type NoMethod SearchRequest
14920	raw := NoMethod(*s)
14921	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14922}
14923
14924// SearchResponse: Response message for the ReportService.Search method.
14925type SearchResponse struct {
14926	// NextPageToken: Token which can be sent as `page_token` to retrieve
14927	// the next page. If omitted, there are no subsequent pages.
14928	NextPageToken string `json:"nextPageToken,omitempty"`
14929
14930	// Results: Rows that matched the search query.
14931	Results []*ReportRow `json:"results,omitempty"`
14932
14933	// ServerResponse contains the HTTP response code and headers from the
14934	// server.
14935	googleapi.ServerResponse `json:"-"`
14936
14937	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
14938	// unconditionally include in API requests. By default, fields with
14939	// empty or default values are omitted from API requests. However, any
14940	// non-pointer, non-interface field appearing in ForceSendFields will be
14941	// sent to the server regardless of whether the field is empty or not.
14942	// This may be used to include empty fields in Patch requests.
14943	ForceSendFields []string `json:"-"`
14944
14945	// NullFields is a list of field names (e.g. "NextPageToken") to include
14946	// in API requests with the JSON null value. By default, fields with
14947	// empty values are omitted from API requests. However, any field with
14948	// an empty value appearing in NullFields will be sent to the server as
14949	// null. It is an error if a field in this list has a non-empty value.
14950	// This may be used to include null fields in Patch requests.
14951	NullFields []string `json:"-"`
14952}
14953
14954func (s *SearchResponse) MarshalJSON() ([]byte, error) {
14955	type NoMethod SearchResponse
14956	raw := NoMethod(*s)
14957	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14958}
14959
14960// Segments: Dimensions according to which metrics are segmented in the
14961// response. Values of product dimensions, e.g., offer id, reflect the
14962// state of a product at the time of the corresponding event, e.g.,
14963// impression or order. Segment fields cannot be selected in queries
14964// without also selecting at least one metric field. Values are only set
14965// for dimensions requested explicitly in the request's search query.
14966type Segments struct {
14967	// Brand: Brand of the product.
14968	Brand string `json:"brand,omitempty"`
14969
14970	// CategoryL1: Product category (1st level)
14971	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
14972	// in Google's product taxonomy.
14973	CategoryL1 string `json:"categoryL1,omitempty"`
14974
14975	// CategoryL2: Product category (2nd level)
14976	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
14977	// in Google's product taxonomy.
14978	CategoryL2 string `json:"categoryL2,omitempty"`
14979
14980	// CategoryL3: Product category (3rd level)
14981	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
14982	// in Google's product taxonomy.
14983	CategoryL3 string `json:"categoryL3,omitempty"`
14984
14985	// CategoryL4: Product category (4th level)
14986	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
14987	// in Google's product taxonomy.
14988	CategoryL4 string `json:"categoryL4,omitempty"`
14989
14990	// CategoryL5: Product category (5th level)
14991	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
14992	// in Google's product taxonomy.
14993	CategoryL5 string `json:"categoryL5,omitempty"`
14994
14995	// CurrencyCode: Currency in which price metrics are represented, e.g.,
14996	// if you select `ordered_item_sales_micros`, the returned value will be
14997	// represented by this currency.
14998	CurrencyCode string `json:"currencyCode,omitempty"`
14999
15000	// CustomLabel0: Custom label 0 for custom grouping of products.
15001	CustomLabel0 string `json:"customLabel0,omitempty"`
15002
15003	// CustomLabel1: Custom label 1 for custom grouping of products.
15004	CustomLabel1 string `json:"customLabel1,omitempty"`
15005
15006	// CustomLabel2: Custom label 2 for custom grouping of products.
15007	CustomLabel2 string `json:"customLabel2,omitempty"`
15008
15009	// CustomLabel3: Custom label 3 for custom grouping of products.
15010	CustomLabel3 string `json:"customLabel3,omitempty"`
15011
15012	// CustomLabel4: Custom label 4 for custom grouping of products.
15013	CustomLabel4 string `json:"customLabel4,omitempty"`
15014
15015	// Date: Date in the merchant timezone to which metrics apply.
15016	Date *Date `json:"date,omitempty"`
15017
15018	// OfferId: Merchant-provided id of the product.
15019	OfferId string `json:"offerId,omitempty"`
15020
15021	// ProductTypeL1: Product type (1st level)
15022	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15023	// in merchant's own product taxonomy.
15024	ProductTypeL1 string `json:"productTypeL1,omitempty"`
15025
15026	// ProductTypeL2: Product type (2nd level)
15027	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15028	// in merchant's own product taxonomy.
15029	ProductTypeL2 string `json:"productTypeL2,omitempty"`
15030
15031	// ProductTypeL3: Product type (3rd level)
15032	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15033	// in merchant's own product taxonomy.
15034	ProductTypeL3 string `json:"productTypeL3,omitempty"`
15035
15036	// ProductTypeL4: Product type (4th level)
15037	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15038	// in merchant's own product taxonomy.
15039	ProductTypeL4 string `json:"productTypeL4,omitempty"`
15040
15041	// ProductTypeL5: Product type (5th level)
15042	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15043	// in merchant's own product taxonomy.
15044	ProductTypeL5 string `json:"productTypeL5,omitempty"`
15045
15046	// Program: Program to which metrics apply, e.g., Free Product Listing.
15047	//
15048	// Possible values:
15049	//   "PROGRAM_UNSPECIFIED" - Not specified.
15050	//   "SHOPPING_ADS" - Shopping Ads.
15051	//   "FREE_PRODUCT_LISTING" - Free Product Listing.
15052	//   "FREE_LOCAL_PRODUCT_LISTING" - Free Local Product Listing.
15053	//   "BUY_ON_GOOGLE_LISTING" - Buy on Google Listing.
15054	Program string `json:"program,omitempty"`
15055
15056	// Title: Title of the product.
15057	Title string `json:"title,omitempty"`
15058
15059	// Week: First day of the week (Monday) of the metrics date in the
15060	// merchant timezone.
15061	Week *Date `json:"week,omitempty"`
15062
15063	// ForceSendFields is a list of field names (e.g. "Brand") to
15064	// unconditionally include in API requests. By default, fields with
15065	// empty or default values are omitted from API requests. However, any
15066	// non-pointer, non-interface field appearing in ForceSendFields will be
15067	// sent to the server regardless of whether the field is empty or not.
15068	// This may be used to include empty fields in Patch requests.
15069	ForceSendFields []string `json:"-"`
15070
15071	// NullFields is a list of field names (e.g. "Brand") to include in API
15072	// requests with the JSON null value. By default, fields with empty
15073	// values are omitted from API requests. However, any field with an
15074	// empty value appearing in NullFields will be sent to the server as
15075	// null. It is an error if a field in this list has a non-empty value.
15076	// This may be used to include null fields in Patch requests.
15077	NullFields []string `json:"-"`
15078}
15079
15080func (s *Segments) MarshalJSON() ([]byte, error) {
15081	type NoMethod Segments
15082	raw := NoMethod(*s)
15083	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15084}
15085
15086type Service struct {
15087	// Active: A boolean exposing the active status of the shipping service.
15088	// Required.
15089	Active bool `json:"active,omitempty"`
15090
15091	// Currency: The CLDR code of the currency to which this service
15092	// applies. Must match that of the prices in rate groups.
15093	Currency string `json:"currency,omitempty"`
15094
15095	// DeliveryCountry: The CLDR territory code of the country to which the
15096	// service applies. Required.
15097	DeliveryCountry string `json:"deliveryCountry,omitempty"`
15098
15099	// DeliveryTime: Time spent in various aspects from order to the
15100	// delivery of the product. Required.
15101	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
15102
15103	// Eligibility: Eligibility for this service. Acceptable values are: -
15104	// "All scenarios" - "All scenarios except Shopping Actions" -
15105	// "Shopping Actions"
15106	Eligibility string `json:"eligibility,omitempty"`
15107
15108	// MinimumOrderValue: Minimum order value for this service. If set,
15109	// indicates that customers will have to spend at least this amount. All
15110	// prices within a service must have the same currency. Cannot be set
15111	// together with minimum_order_value_table.
15112	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
15113
15114	// MinimumOrderValueTable: Table of per store minimum order values for
15115	// the pickup fulfillment type. Cannot be set together with
15116	// minimum_order_value.
15117	MinimumOrderValueTable *MinimumOrderValueTable `json:"minimumOrderValueTable,omitempty"`
15118
15119	// Name: Free-form name of the service. Must be unique within target
15120	// account. Required.
15121	Name string `json:"name,omitempty"`
15122
15123	// PickupService: The carrier-service pair delivering items to
15124	// collection points. The list of supported pickup services can be
15125	// retrieved via the `getSupportedPickupServices` method. Required if
15126	// and only if the service delivery type is `pickup`.
15127	PickupService *PickupCarrierService `json:"pickupService,omitempty"`
15128
15129	// RateGroups: Shipping rate group definitions. Only the last one is
15130	// allowed to have an empty `applicableShippingLabels`, which means
15131	// "everything else". The other `applicableShippingLabels` must not
15132	// overlap.
15133	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
15134
15135	// ShipmentType: Type of locations this service ships orders to.
15136	// Acceptable values are: - "delivery" - "pickup"
15137	ShipmentType string `json:"shipmentType,omitempty"`
15138
15139	// ForceSendFields is a list of field names (e.g. "Active") to
15140	// unconditionally include in API requests. By default, fields with
15141	// empty or default values are omitted from API requests. However, any
15142	// non-pointer, non-interface field appearing in ForceSendFields will be
15143	// sent to the server regardless of whether the field is empty or not.
15144	// This may be used to include empty fields in Patch requests.
15145	ForceSendFields []string `json:"-"`
15146
15147	// NullFields is a list of field names (e.g. "Active") to include in API
15148	// requests with the JSON null value. By default, fields with empty
15149	// values are omitted from API requests. However, any field with an
15150	// empty value appearing in NullFields will be sent to the server as
15151	// null. It is an error if a field in this list has a non-empty value.
15152	// This may be used to include null fields in Patch requests.
15153	NullFields []string `json:"-"`
15154}
15155
15156func (s *Service) MarshalJSON() ([]byte, error) {
15157	type NoMethod Service
15158	raw := NoMethod(*s)
15159	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15160}
15161
15162// SettlementReport:  Settlement reports detail order-level and
15163// item-level credits and debits between you and Google.
15164type SettlementReport struct {
15165	// EndDate: The end date on which all transactions are included in the
15166	// report, in ISO 8601 format.
15167	EndDate string `json:"endDate,omitempty"`
15168
15169	// Kind: Identifies what kind of resource this is. Value: the fixed
15170	// string "content#settlementReport"
15171	Kind string `json:"kind,omitempty"`
15172
15173	// PreviousBalance: The residual amount from the previous invoice. This
15174	// is set only if the previous invoices are not paid because of negative
15175	// balance.
15176	PreviousBalance *Price `json:"previousBalance,omitempty"`
15177
15178	// SettlementId: The ID of the settlement report.
15179	SettlementId string `json:"settlementId,omitempty"`
15180
15181	// StartDate: The start date on which all transactions are included in
15182	// the report, in ISO 8601 format.
15183	StartDate string `json:"startDate,omitempty"`
15184
15185	// TransferAmount: The money due to the merchant.
15186	TransferAmount *Price `json:"transferAmount,omitempty"`
15187
15188	// TransferDate: Date on which transfer for this payment was initiated
15189	// by Google, in ISO 8601 format.
15190	TransferDate string `json:"transferDate,omitempty"`
15191
15192	// TransferIds: The list of bank identifiers used for the transfer. e.g.
15193	// Trace ID for Federal Automated Clearing House (ACH). This may also be
15194	// known as the Wire ID.
15195	TransferIds []string `json:"transferIds,omitempty"`
15196
15197	// ServerResponse contains the HTTP response code and headers from the
15198	// server.
15199	googleapi.ServerResponse `json:"-"`
15200
15201	// ForceSendFields is a list of field names (e.g. "EndDate") to
15202	// unconditionally include in API requests. By default, fields with
15203	// empty or default values are omitted from API requests. However, any
15204	// non-pointer, non-interface field appearing in ForceSendFields will be
15205	// sent to the server regardless of whether the field is empty or not.
15206	// This may be used to include empty fields in Patch requests.
15207	ForceSendFields []string `json:"-"`
15208
15209	// NullFields is a list of field names (e.g. "EndDate") to include in
15210	// API requests with the JSON null value. By default, fields with empty
15211	// values are omitted from API requests. However, any field with an
15212	// empty value appearing in NullFields will be sent to the server as
15213	// null. It is an error if a field in this list has a non-empty value.
15214	// This may be used to include null fields in Patch requests.
15215	NullFields []string `json:"-"`
15216}
15217
15218func (s *SettlementReport) MarshalJSON() ([]byte, error) {
15219	type NoMethod SettlementReport
15220	raw := NoMethod(*s)
15221	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15222}
15223
15224// SettlementTransaction: Settlement transactions give a detailed
15225// breakdown of the settlement report.
15226type SettlementTransaction struct {
15227	// Amount: The amount for the transaction.
15228	Amount *SettlementTransactionAmount `json:"amount,omitempty"`
15229
15230	// Identifiers: Identifiers of the transaction.
15231	Identifiers *SettlementTransactionIdentifiers `json:"identifiers,omitempty"`
15232
15233	// Kind: Identifies what kind of resource this is. Value: the fixed
15234	// string "content#settlementTransaction"
15235	Kind string `json:"kind,omitempty"`
15236
15237	// Transaction: Details of the transaction.
15238	Transaction *SettlementTransactionTransaction `json:"transaction,omitempty"`
15239
15240	// ForceSendFields is a list of field names (e.g. "Amount") to
15241	// unconditionally include in API requests. By default, fields with
15242	// empty or default values are omitted from API requests. However, any
15243	// non-pointer, non-interface field appearing in ForceSendFields will be
15244	// sent to the server regardless of whether the field is empty or not.
15245	// This may be used to include empty fields in Patch requests.
15246	ForceSendFields []string `json:"-"`
15247
15248	// NullFields is a list of field names (e.g. "Amount") to include in API
15249	// requests with the JSON null value. By default, fields with empty
15250	// values are omitted from API requests. However, any field with an
15251	// empty value appearing in NullFields will be sent to the server as
15252	// null. It is an error if a field in this list has a non-empty value.
15253	// This may be used to include null fields in Patch requests.
15254	NullFields []string `json:"-"`
15255}
15256
15257func (s *SettlementTransaction) MarshalJSON() ([]byte, error) {
15258	type NoMethod SettlementTransaction
15259	raw := NoMethod(*s)
15260	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15261}
15262
15263type SettlementTransactionAmount struct {
15264	Commission *SettlementTransactionAmountCommission `json:"commission,omitempty"`
15265
15266	// Description: The description of the event. Acceptable values are: -
15267	// "taxWithhold" - "principal" - "principalAdjustment" -
15268	// "shippingFee" - "merchantRemittedSalesTax" -
15269	// "googleRemittedSalesTax" - "merchantCoupon" -
15270	// "merchantCouponTax" - "merchantRemittedDisposalTax" -
15271	// "googleRemittedDisposalTax" - "merchantRemittedRedemptionFee" -
15272	// "googleRemittedRedemptionFee" - "eeeEcoFee" - "furnitureEcoFee"
15273	// - "copyPrivateFee" - "eeeEcoFeeCommission" -
15274	// "furnitureEcoFeeCommission" - "copyPrivateFeeCommission" -
15275	// "principalRefund" - "principalRefundTax" - "itemCommission" -
15276	// "adjustmentCommission" - "shippingFeeCommission" -
15277	// "commissionRefund" - "damaged" - "damagedOrDefectiveItem" -
15278	// "expiredItem" - "faultyItem" - "incorrectItemReceived" -
15279	// "itemMissing" - "qualityNotExpected" - "receivedTooLate" -
15280	// "storePackageMissing" - "transitPackageMissing" -
15281	// "unsuccessfulDeliveryUndeliverable" - "wrongChargeInStore" -
15282	// "wrongItem" - "returns" - "undeliverable" -
15283	// "issueRelatedRefundAndReplacementAmountDescription" -
15284	// "refundFromMerchant" - "returnLabelShippingFee" -
15285	// "lumpSumCorrection" - "pspFee" - "principalRefundDoesNotFit" -
15286	// "principalRefundOrderedWrongItem" -
15287	// "principalRefundQualityNotExpected" -
15288	// "principalRefundBetterPriceFound" -
15289	// "principalRefundNoLongerNeeded" - "principalRefundChangedMind" -
15290	// "principalRefundReceivedTooLate" -
15291	// "principalRefundIncorrectItemReceived" -
15292	// "principalRefundDamagedOrDefectiveItem" -
15293	// "principalRefundDidNotMatchDescription" -
15294	// "principalRefundExpiredItem"
15295	Description string `json:"description,omitempty"`
15296
15297	// TransactionAmount: The amount that contributes to the line item
15298	// price.
15299	TransactionAmount *Price `json:"transactionAmount,omitempty"`
15300
15301	// Type: The type of the amount. Acceptable values are: - "itemPrice"
15302	// - "orderPrice" - "refund" - "earlyRefund" - "courtesyRefund"
15303	// - "returnRefund" - "returnLabelShippingFeeAmount" -
15304	// "lumpSumCorrectionAmount"
15305	Type string `json:"type,omitempty"`
15306
15307	// ForceSendFields is a list of field names (e.g. "Commission") to
15308	// unconditionally include in API requests. By default, fields with
15309	// empty or default values are omitted from API requests. However, any
15310	// non-pointer, non-interface field appearing in ForceSendFields will be
15311	// sent to the server regardless of whether the field is empty or not.
15312	// This may be used to include empty fields in Patch requests.
15313	ForceSendFields []string `json:"-"`
15314
15315	// NullFields is a list of field names (e.g. "Commission") to include in
15316	// API requests with the JSON null value. By default, fields with empty
15317	// values are omitted from API requests. However, any field with an
15318	// empty value appearing in NullFields will be sent to the server as
15319	// null. It is an error if a field in this list has a non-empty value.
15320	// This may be used to include null fields in Patch requests.
15321	NullFields []string `json:"-"`
15322}
15323
15324func (s *SettlementTransactionAmount) MarshalJSON() ([]byte, error) {
15325	type NoMethod SettlementTransactionAmount
15326	raw := NoMethod(*s)
15327	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15328}
15329
15330type SettlementTransactionAmountCommission struct {
15331	// Category: The category of the commission. Acceptable values are: -
15332	// "animalsAndPetSupplies" - "dogCatFoodAndCatLitter" -
15333	// "apparelAndAccessories" - "shoesHandbagsAndSunglasses" -
15334	// "costumesAndAccessories" - "jewelry" - "watches" -
15335	// "hobbiesArtsAndCrafts" - "homeAndGarden" -
15336	// "entertainmentCollectibles" - "collectibleCoins" -
15337	// "sportsCollectibles" - "sportingGoods" - "toysAndGames" -
15338	// "musicalInstruments" - "giftCards" - "babyAndToddler" -
15339	// "babyFoodWipesAndDiapers" - "businessAndIndustrial" -
15340	// "camerasOpticsAndPhotography" - "consumerElectronics" -
15341	// "electronicsAccessories" - "personalComputers" -
15342	// "videoGameConsoles" - "foodAndGrocery" - "beverages" -
15343	// "tobaccoProducts" - "furniture" - "hardware" -
15344	// "buildingMaterials" - "tools" - "healthAndPersonalCare" -
15345	// "beauty" - "householdSupplies" - "kitchenAndDining" -
15346	// "majorAppliances" - "luggageAndBags" - "media" -
15347	// "officeSupplies" - "softwareAndVideoGames" -
15348	// "vehiclePartsAndAccessories" - "vehicleTiresAndWheels" -
15349	// "vehicles" - "everythingElse"
15350	Category string `json:"category,omitempty"`
15351
15352	// Rate: Rate of the commission in percentage.
15353	Rate string `json:"rate,omitempty"`
15354
15355	// ForceSendFields is a list of field names (e.g. "Category") to
15356	// unconditionally include in API requests. By default, fields with
15357	// empty or default values are omitted from API requests. However, any
15358	// non-pointer, non-interface field appearing in ForceSendFields will be
15359	// sent to the server regardless of whether the field is empty or not.
15360	// This may be used to include empty fields in Patch requests.
15361	ForceSendFields []string `json:"-"`
15362
15363	// NullFields is a list of field names (e.g. "Category") to include in
15364	// API requests with the JSON null value. By default, fields with empty
15365	// values are omitted from API requests. However, any field with an
15366	// empty value appearing in NullFields will be sent to the server as
15367	// null. It is an error if a field in this list has a non-empty value.
15368	// This may be used to include null fields in Patch requests.
15369	NullFields []string `json:"-"`
15370}
15371
15372func (s *SettlementTransactionAmountCommission) MarshalJSON() ([]byte, error) {
15373	type NoMethod SettlementTransactionAmountCommission
15374	raw := NoMethod(*s)
15375	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15376}
15377
15378type SettlementTransactionIdentifiers struct {
15379	// AdjustmentId: The identifier of the adjustments, if it is available.
15380	AdjustmentId string `json:"adjustmentId,omitempty"`
15381
15382	// MerchantOrderId: The merchant provided order ID.
15383	MerchantOrderId string `json:"merchantOrderId,omitempty"`
15384
15385	// OrderItemId: The identifier of the item.
15386	OrderItemId string `json:"orderItemId,omitempty"`
15387
15388	// SettlementEntryId: The unique ID of the settlement transaction entry.
15389	SettlementEntryId string `json:"settlementEntryId,omitempty"`
15390
15391	// ShipmentIds: The shipment ids for the item.
15392	ShipmentIds []string `json:"shipmentIds,omitempty"`
15393
15394	// TransactionId: The Google transaction ID.
15395	TransactionId string `json:"transactionId,omitempty"`
15396
15397	// ForceSendFields is a list of field names (e.g. "AdjustmentId") to
15398	// unconditionally include in API requests. By default, fields with
15399	// empty or default values are omitted from API requests. However, any
15400	// non-pointer, non-interface field appearing in ForceSendFields will be
15401	// sent to the server regardless of whether the field is empty or not.
15402	// This may be used to include empty fields in Patch requests.
15403	ForceSendFields []string `json:"-"`
15404
15405	// NullFields is a list of field names (e.g. "AdjustmentId") to include
15406	// in API requests with the JSON null value. By default, fields with
15407	// empty values are omitted from API requests. However, any field with
15408	// an empty value appearing in NullFields will be sent to the server as
15409	// null. It is an error if a field in this list has a non-empty value.
15410	// This may be used to include null fields in Patch requests.
15411	NullFields []string `json:"-"`
15412}
15413
15414func (s *SettlementTransactionIdentifiers) MarshalJSON() ([]byte, error) {
15415	type NoMethod SettlementTransactionIdentifiers
15416	raw := NoMethod(*s)
15417	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15418}
15419
15420type SettlementTransactionTransaction struct {
15421	// PostDate: The time on which the event occurred in ISO 8601 format.
15422	PostDate string `json:"postDate,omitempty"`
15423
15424	// Type: The type of the transaction that occurred. Acceptable values
15425	// are: - "order" - "reversal" - "orderRefund" -
15426	// "reversalRefund" - "issueRelatedRefundAndReplacement" -
15427	// "returnLabelShippingFeeTransaction" -
15428	// "reversalIssueRelatedRefundAndReplacement" -
15429	// "reversalReturnLabelShippingFeeTransaction" -
15430	// "lumpSumCorrectionTransaction"
15431	Type string `json:"type,omitempty"`
15432
15433	// ForceSendFields is a list of field names (e.g. "PostDate") to
15434	// unconditionally include in API requests. By default, fields with
15435	// empty or default values are omitted from API requests. However, any
15436	// non-pointer, non-interface field appearing in ForceSendFields will be
15437	// sent to the server regardless of whether the field is empty or not.
15438	// This may be used to include empty fields in Patch requests.
15439	ForceSendFields []string `json:"-"`
15440
15441	// NullFields is a list of field names (e.g. "PostDate") to include in
15442	// API requests with the JSON null value. By default, fields with empty
15443	// values are omitted from API requests. However, any field with an
15444	// empty value appearing in NullFields will be sent to the server as
15445	// null. It is an error if a field in this list has a non-empty value.
15446	// This may be used to include null fields in Patch requests.
15447	NullFields []string `json:"-"`
15448}
15449
15450func (s *SettlementTransactionTransaction) MarshalJSON() ([]byte, error) {
15451	type NoMethod SettlementTransactionTransaction
15452	raw := NoMethod(*s)
15453	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15454}
15455
15456type SettlementreportsListResponse struct {
15457	// Kind: Identifies what kind of resource this is. Value: the fixed
15458	// string "content#settlementreportsListResponse".
15459	Kind string `json:"kind,omitempty"`
15460
15461	// NextPageToken: The token for the retrieval of the next page of
15462	// returns.
15463	NextPageToken string `json:"nextPageToken,omitempty"`
15464
15465	Resources []*SettlementReport `json:"resources,omitempty"`
15466
15467	// ServerResponse contains the HTTP response code and headers from the
15468	// server.
15469	googleapi.ServerResponse `json:"-"`
15470
15471	// ForceSendFields is a list of field names (e.g. "Kind") to
15472	// unconditionally include in API requests. By default, fields with
15473	// empty or default values are omitted from API requests. However, any
15474	// non-pointer, non-interface field appearing in ForceSendFields will be
15475	// sent to the server regardless of whether the field is empty or not.
15476	// This may be used to include empty fields in Patch requests.
15477	ForceSendFields []string `json:"-"`
15478
15479	// NullFields is a list of field names (e.g. "Kind") to include in API
15480	// requests with the JSON null value. By default, fields with empty
15481	// values are omitted from API requests. However, any field with an
15482	// empty value appearing in NullFields will be sent to the server as
15483	// null. It is an error if a field in this list has a non-empty value.
15484	// This may be used to include null fields in Patch requests.
15485	NullFields []string `json:"-"`
15486}
15487
15488func (s *SettlementreportsListResponse) MarshalJSON() ([]byte, error) {
15489	type NoMethod SettlementreportsListResponse
15490	raw := NoMethod(*s)
15491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15492}
15493
15494type SettlementtransactionsListResponse struct {
15495	// Kind: Identifies what kind of resource this is. Value: the fixed
15496	// string "content#settlementtransactionsListResponse".
15497	Kind string `json:"kind,omitempty"`
15498
15499	// NextPageToken: The token for the retrieval of the next page of
15500	// returns.
15501	NextPageToken string `json:"nextPageToken,omitempty"`
15502
15503	Resources []*SettlementTransaction `json:"resources,omitempty"`
15504
15505	// ServerResponse contains the HTTP response code and headers from the
15506	// server.
15507	googleapi.ServerResponse `json:"-"`
15508
15509	// ForceSendFields is a list of field names (e.g. "Kind") to
15510	// unconditionally include in API requests. By default, fields with
15511	// empty or default values are omitted from API requests. However, any
15512	// non-pointer, non-interface field appearing in ForceSendFields will be
15513	// sent to the server regardless of whether the field is empty or not.
15514	// This may be used to include empty fields in Patch requests.
15515	ForceSendFields []string `json:"-"`
15516
15517	// NullFields is a list of field names (e.g. "Kind") to include in API
15518	// requests with the JSON null value. By default, fields with empty
15519	// values are omitted from API requests. However, any field with an
15520	// empty value appearing in NullFields will be sent to the server as
15521	// null. It is an error if a field in this list has a non-empty value.
15522	// This may be used to include null fields in Patch requests.
15523	NullFields []string `json:"-"`
15524}
15525
15526func (s *SettlementtransactionsListResponse) MarshalJSON() ([]byte, error) {
15527	type NoMethod SettlementtransactionsListResponse
15528	raw := NoMethod(*s)
15529	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15530}
15531
15532type ShipmentInvoice struct {
15533	// InvoiceSummary: [required] Invoice summary.
15534	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
15535
15536	// LineItemInvoices: [required] Invoice details per line item.
15537	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
15538
15539	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
15540	// by the merchant in the `shipLineItems` method and is used to group
15541	// multiple line items that have the same kind of shipping charges.
15542	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
15543
15544	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
15545	// unconditionally include in API requests. By default, fields with
15546	// empty or default values are omitted from API requests. However, any
15547	// non-pointer, non-interface field appearing in ForceSendFields will be
15548	// sent to the server regardless of whether the field is empty or not.
15549	// This may be used to include empty fields in Patch requests.
15550	ForceSendFields []string `json:"-"`
15551
15552	// NullFields is a list of field names (e.g. "InvoiceSummary") to
15553	// include in API requests with the JSON null value. By default, fields
15554	// with empty values are omitted from API requests. However, any field
15555	// with an empty value appearing in NullFields will be sent to the
15556	// server as null. It is an error if a field in this list has a
15557	// non-empty value. This may be used to include null fields in Patch
15558	// requests.
15559	NullFields []string `json:"-"`
15560}
15561
15562func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
15563	type NoMethod ShipmentInvoice
15564	raw := NoMethod(*s)
15565	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15566}
15567
15568type ShipmentInvoiceLineItemInvoice struct {
15569	// LineItemId: ID of the line item. Either lineItemId or productId must
15570	// be set.
15571	LineItemId string `json:"lineItemId,omitempty"`
15572
15573	// ProductId: ID of the product. This is the REST ID used in the
15574	// products service. Either lineItemId or productId must be set.
15575	ProductId string `json:"productId,omitempty"`
15576
15577	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
15578	// merchant and defines individual quantities within a line item. The
15579	// same ID can be assigned to units that are the same while units that
15580	// differ must be assigned a different ID (for example: free or
15581	// promotional units).
15582	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
15583
15584	// UnitInvoice: [required] Invoice details for a single unit.
15585	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
15586
15587	// ForceSendFields is a list of field names (e.g. "LineItemId") to
15588	// unconditionally include in API requests. By default, fields with
15589	// empty or default values are omitted from API requests. However, any
15590	// non-pointer, non-interface field appearing in ForceSendFields will be
15591	// sent to the server regardless of whether the field is empty or not.
15592	// This may be used to include empty fields in Patch requests.
15593	ForceSendFields []string `json:"-"`
15594
15595	// NullFields is a list of field names (e.g. "LineItemId") to include in
15596	// API requests with the JSON null value. By default, fields with empty
15597	// values are omitted from API requests. However, any field with an
15598	// empty value appearing in NullFields will be sent to the server as
15599	// null. It is an error if a field in this list has a non-empty value.
15600	// This may be used to include null fields in Patch requests.
15601	NullFields []string `json:"-"`
15602}
15603
15604func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
15605	type NoMethod ShipmentInvoiceLineItemInvoice
15606	raw := NoMethod(*s)
15607	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15608}
15609
15610type ShipmentTrackingInfo struct {
15611	// Carrier: The shipping carrier that handles the package. Acceptable
15612	// values are: - "boxtal" - "bpost" - "chronopost" -
15613	// "colisPrive" - "colissimo" - "cxt" - "deliv" - "dhl" -
15614	// "dpd" - "dynamex" - "eCourier" - "easypost" - "efw" -
15615	// "fedex" - "fedexSmartpost" - "geodis" - "gls" -
15616	// "googleCourier" - "gsx" - "jdLogistics" - "laPoste" -
15617	// "lasership" - "manual" - "mpx" - "onTrac" - "other" -
15618	// "tnt" - "uds" - "ups" - "usps"
15619	Carrier string `json:"carrier,omitempty"`
15620
15621	// TrackingNumber: The tracking number for the package.
15622	TrackingNumber string `json:"trackingNumber,omitempty"`
15623
15624	// ForceSendFields is a list of field names (e.g. "Carrier") to
15625	// unconditionally include in API requests. By default, fields with
15626	// empty or default values are omitted from API requests. However, any
15627	// non-pointer, non-interface field appearing in ForceSendFields will be
15628	// sent to the server regardless of whether the field is empty or not.
15629	// This may be used to include empty fields in Patch requests.
15630	ForceSendFields []string `json:"-"`
15631
15632	// NullFields is a list of field names (e.g. "Carrier") to include in
15633	// API requests with the JSON null value. By default, fields with empty
15634	// values are omitted from API requests. However, any field with an
15635	// empty value appearing in NullFields will be sent to the server as
15636	// null. It is an error if a field in this list has a non-empty value.
15637	// This may be used to include null fields in Patch requests.
15638	NullFields []string `json:"-"`
15639}
15640
15641func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
15642	type NoMethod ShipmentTrackingInfo
15643	raw := NoMethod(*s)
15644	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15645}
15646
15647// ShippingSettings: The merchant account's shipping settings. All
15648// methods except getsupportedcarriers and getsupportedholidays require
15649// the admin role.
15650type ShippingSettings struct {
15651	// AccountId: The ID of the account to which these account shipping
15652	// settings belong. Ignored upon update, always present in get request
15653	// responses.
15654	AccountId uint64 `json:"accountId,omitempty,string"`
15655
15656	// PostalCodeGroups: A list of postal code groups that can be referred
15657	// to in `services`. Optional.
15658	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
15659
15660	// Services: The target account's list of services. Optional.
15661	Services []*Service `json:"services,omitempty"`
15662
15663	// ServerResponse contains the HTTP response code and headers from the
15664	// server.
15665	googleapi.ServerResponse `json:"-"`
15666
15667	// ForceSendFields is a list of field names (e.g. "AccountId") to
15668	// unconditionally include in API requests. By default, fields with
15669	// empty or default values are omitted from API requests. However, any
15670	// non-pointer, non-interface field appearing in ForceSendFields will be
15671	// sent to the server regardless of whether the field is empty or not.
15672	// This may be used to include empty fields in Patch requests.
15673	ForceSendFields []string `json:"-"`
15674
15675	// NullFields is a list of field names (e.g. "AccountId") to include in
15676	// API requests with the JSON null value. By default, fields with empty
15677	// values are omitted from API requests. However, any field with an
15678	// empty value appearing in NullFields will be sent to the server as
15679	// null. It is an error if a field in this list has a non-empty value.
15680	// This may be used to include null fields in Patch requests.
15681	NullFields []string `json:"-"`
15682}
15683
15684func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
15685	type NoMethod ShippingSettings
15686	raw := NoMethod(*s)
15687	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15688}
15689
15690type ShippingsettingsCustomBatchRequest struct {
15691	// Entries: The request entries to be processed in the batch.
15692	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
15693
15694	// ForceSendFields is a list of field names (e.g. "Entries") to
15695	// unconditionally include in API requests. By default, fields with
15696	// empty or default values are omitted from API requests. However, any
15697	// non-pointer, non-interface field appearing in ForceSendFields will be
15698	// sent to the server regardless of whether the field is empty or not.
15699	// This may be used to include empty fields in Patch requests.
15700	ForceSendFields []string `json:"-"`
15701
15702	// NullFields is a list of field names (e.g. "Entries") to include in
15703	// API requests with the JSON null value. By default, fields with empty
15704	// values are omitted from API requests. However, any field with an
15705	// empty value appearing in NullFields will be sent to the server as
15706	// null. It is an error if a field in this list has a non-empty value.
15707	// This may be used to include null fields in Patch requests.
15708	NullFields []string `json:"-"`
15709}
15710
15711func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
15712	type NoMethod ShippingsettingsCustomBatchRequest
15713	raw := NoMethod(*s)
15714	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15715}
15716
15717// ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
15718// single non-batch shippingsettings request.
15719type ShippingsettingsCustomBatchRequestEntry struct {
15720	// AccountId: The ID of the account for which to get/update account
15721	// shipping settings.
15722	AccountId uint64 `json:"accountId,omitempty,string"`
15723
15724	// BatchId: An entry ID, unique within the batch request.
15725	BatchId int64 `json:"batchId,omitempty"`
15726
15727	// MerchantId: The ID of the managing account.
15728	MerchantId uint64 `json:"merchantId,omitempty,string"`
15729
15730	// Method: The method of the batch entry. Acceptable values are: -
15731	// "get" - "update"
15732	Method string `json:"method,omitempty"`
15733
15734	// ShippingSettings: The account shipping settings to update. Only
15735	// defined if the method is `update`.
15736	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
15737
15738	// ForceSendFields is a list of field names (e.g. "AccountId") to
15739	// unconditionally include in API requests. By default, fields with
15740	// empty or default values are omitted from API requests. However, any
15741	// non-pointer, non-interface field appearing in ForceSendFields will be
15742	// sent to the server regardless of whether the field is empty or not.
15743	// This may be used to include empty fields in Patch requests.
15744	ForceSendFields []string `json:"-"`
15745
15746	// NullFields is a list of field names (e.g. "AccountId") to include in
15747	// API requests with the JSON null value. By default, fields with empty
15748	// values are omitted from API requests. However, any field with an
15749	// empty value appearing in NullFields will be sent to the server as
15750	// null. It is an error if a field in this list has a non-empty value.
15751	// This may be used to include null fields in Patch requests.
15752	NullFields []string `json:"-"`
15753}
15754
15755func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
15756	type NoMethod ShippingsettingsCustomBatchRequestEntry
15757	raw := NoMethod(*s)
15758	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15759}
15760
15761type ShippingsettingsCustomBatchResponse struct {
15762	// Entries: The result of the execution of the batch requests.
15763	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
15764
15765	// Kind: Identifies what kind of resource this is. Value: the fixed
15766	// string "content#shippingsettingsCustomBatchResponse".
15767	Kind string `json:"kind,omitempty"`
15768
15769	// ServerResponse contains the HTTP response code and headers from the
15770	// server.
15771	googleapi.ServerResponse `json:"-"`
15772
15773	// ForceSendFields is a list of field names (e.g. "Entries") to
15774	// unconditionally include in API requests. By default, fields with
15775	// empty or default values are omitted from API requests. However, any
15776	// non-pointer, non-interface field appearing in ForceSendFields will be
15777	// sent to the server regardless of whether the field is empty or not.
15778	// This may be used to include empty fields in Patch requests.
15779	ForceSendFields []string `json:"-"`
15780
15781	// NullFields is a list of field names (e.g. "Entries") to include in
15782	// API requests with the JSON null value. By default, fields with empty
15783	// values are omitted from API requests. However, any field with an
15784	// empty value appearing in NullFields will be sent to the server as
15785	// null. It is an error if a field in this list has a non-empty value.
15786	// This may be used to include null fields in Patch requests.
15787	NullFields []string `json:"-"`
15788}
15789
15790func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
15791	type NoMethod ShippingsettingsCustomBatchResponse
15792	raw := NoMethod(*s)
15793	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15794}
15795
15796// ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
15797// single non-batch shipping settings response.
15798type ShippingsettingsCustomBatchResponseEntry struct {
15799	// BatchId: The ID of the request entry to which this entry responds.
15800	BatchId int64 `json:"batchId,omitempty"`
15801
15802	// Errors: A list of errors defined if, and only if, the request failed.
15803	Errors *Errors `json:"errors,omitempty"`
15804
15805	// Kind: Identifies what kind of resource this is. Value: the fixed
15806	// string "content#shippingsettingsCustomBatchResponseEntry"
15807	Kind string `json:"kind,omitempty"`
15808
15809	// ShippingSettings: The retrieved or updated account shipping settings.
15810	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
15811
15812	// ForceSendFields is a list of field names (e.g. "BatchId") to
15813	// unconditionally include in API requests. By default, fields with
15814	// empty or default values are omitted from API requests. However, any
15815	// non-pointer, non-interface field appearing in ForceSendFields will be
15816	// sent to the server regardless of whether the field is empty or not.
15817	// This may be used to include empty fields in Patch requests.
15818	ForceSendFields []string `json:"-"`
15819
15820	// NullFields is a list of field names (e.g. "BatchId") to include in
15821	// API requests with the JSON null value. By default, fields with empty
15822	// values are omitted from API requests. However, any field with an
15823	// empty value appearing in NullFields will be sent to the server as
15824	// null. It is an error if a field in this list has a non-empty value.
15825	// This may be used to include null fields in Patch requests.
15826	NullFields []string `json:"-"`
15827}
15828
15829func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
15830	type NoMethod ShippingsettingsCustomBatchResponseEntry
15831	raw := NoMethod(*s)
15832	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15833}
15834
15835type ShippingsettingsGetSupportedCarriersResponse struct {
15836	// Carriers: A list of supported carriers. May be empty.
15837	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
15838
15839	// Kind: Identifies what kind of resource this is. Value: the fixed
15840	// string "content#shippingsettingsGetSupportedCarriersResponse".
15841	Kind string `json:"kind,omitempty"`
15842
15843	// ServerResponse contains the HTTP response code and headers from the
15844	// server.
15845	googleapi.ServerResponse `json:"-"`
15846
15847	// ForceSendFields is a list of field names (e.g. "Carriers") to
15848	// unconditionally include in API requests. By default, fields with
15849	// empty or default values are omitted from API requests. However, any
15850	// non-pointer, non-interface field appearing in ForceSendFields will be
15851	// sent to the server regardless of whether the field is empty or not.
15852	// This may be used to include empty fields in Patch requests.
15853	ForceSendFields []string `json:"-"`
15854
15855	// NullFields is a list of field names (e.g. "Carriers") to include in
15856	// API requests with the JSON null value. By default, fields with empty
15857	// values are omitted from API requests. However, any field with an
15858	// empty value appearing in NullFields will be sent to the server as
15859	// null. It is an error if a field in this list has a non-empty value.
15860	// This may be used to include null fields in Patch requests.
15861	NullFields []string `json:"-"`
15862}
15863
15864func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
15865	type NoMethod ShippingsettingsGetSupportedCarriersResponse
15866	raw := NoMethod(*s)
15867	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15868}
15869
15870type ShippingsettingsGetSupportedHolidaysResponse struct {
15871	// Holidays: A list of holidays applicable for delivery guarantees. May
15872	// be empty.
15873	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
15874
15875	// Kind: Identifies what kind of resource this is. Value: the fixed
15876	// string "content#shippingsettingsGetSupportedHolidaysResponse".
15877	Kind string `json:"kind,omitempty"`
15878
15879	// ServerResponse contains the HTTP response code and headers from the
15880	// server.
15881	googleapi.ServerResponse `json:"-"`
15882
15883	// ForceSendFields is a list of field names (e.g. "Holidays") to
15884	// unconditionally include in API requests. By default, fields with
15885	// empty or default values are omitted from API requests. However, any
15886	// non-pointer, non-interface field appearing in ForceSendFields will be
15887	// sent to the server regardless of whether the field is empty or not.
15888	// This may be used to include empty fields in Patch requests.
15889	ForceSendFields []string `json:"-"`
15890
15891	// NullFields is a list of field names (e.g. "Holidays") to include in
15892	// API requests with the JSON null value. By default, fields with empty
15893	// values are omitted from API requests. However, any field with an
15894	// empty value appearing in NullFields will be sent to the server as
15895	// null. It is an error if a field in this list has a non-empty value.
15896	// This may be used to include null fields in Patch requests.
15897	NullFields []string `json:"-"`
15898}
15899
15900func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
15901	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
15902	raw := NoMethod(*s)
15903	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15904}
15905
15906type ShippingsettingsGetSupportedPickupServicesResponse struct {
15907	// Kind: Identifies what kind of resource this is. Value: the fixed
15908	// string
15909	// "content#shippingsettingsGetSupportedPickupServicesResponse".
15910	Kind string `json:"kind,omitempty"`
15911
15912	// PickupServices: A list of supported pickup services. May be empty.
15913	PickupServices []*PickupServicesPickupService `json:"pickupServices,omitempty"`
15914
15915	// ServerResponse contains the HTTP response code and headers from the
15916	// server.
15917	googleapi.ServerResponse `json:"-"`
15918
15919	// ForceSendFields is a list of field names (e.g. "Kind") to
15920	// unconditionally include in API requests. By default, fields with
15921	// empty or default values are omitted from API requests. However, any
15922	// non-pointer, non-interface field appearing in ForceSendFields will be
15923	// sent to the server regardless of whether the field is empty or not.
15924	// This may be used to include empty fields in Patch requests.
15925	ForceSendFields []string `json:"-"`
15926
15927	// NullFields is a list of field names (e.g. "Kind") to include in API
15928	// requests with the JSON null value. By default, fields with empty
15929	// values are omitted from API requests. However, any field with an
15930	// empty value appearing in NullFields will be sent to the server as
15931	// null. It is an error if a field in this list has a non-empty value.
15932	// This may be used to include null fields in Patch requests.
15933	NullFields []string `json:"-"`
15934}
15935
15936func (s *ShippingsettingsGetSupportedPickupServicesResponse) MarshalJSON() ([]byte, error) {
15937	type NoMethod ShippingsettingsGetSupportedPickupServicesResponse
15938	raw := NoMethod(*s)
15939	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15940}
15941
15942type ShippingsettingsListResponse struct {
15943	// Kind: Identifies what kind of resource this is. Value: the fixed
15944	// string "content#shippingsettingsListResponse".
15945	Kind string `json:"kind,omitempty"`
15946
15947	// NextPageToken: The token for the retrieval of the next page of
15948	// shipping settings.
15949	NextPageToken string `json:"nextPageToken,omitempty"`
15950
15951	Resources []*ShippingSettings `json:"resources,omitempty"`
15952
15953	// ServerResponse contains the HTTP response code and headers from the
15954	// server.
15955	googleapi.ServerResponse `json:"-"`
15956
15957	// ForceSendFields is a list of field names (e.g. "Kind") to
15958	// unconditionally include in API requests. By default, fields with
15959	// empty or default values are omitted from API requests. However, any
15960	// non-pointer, non-interface field appearing in ForceSendFields will be
15961	// sent to the server regardless of whether the field is empty or not.
15962	// This may be used to include empty fields in Patch requests.
15963	ForceSendFields []string `json:"-"`
15964
15965	// NullFields is a list of field names (e.g. "Kind") to include in API
15966	// requests with the JSON null value. By default, fields with empty
15967	// values are omitted from API requests. However, any field with an
15968	// empty value appearing in NullFields will be sent to the server as
15969	// null. It is an error if a field in this list has a non-empty value.
15970	// This may be used to include null fields in Patch requests.
15971	NullFields []string `json:"-"`
15972}
15973
15974func (s *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
15975	type NoMethod ShippingsettingsListResponse
15976	raw := NoMethod(*s)
15977	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15978}
15979
15980// ShoppingAdsProgramStatus: Response message for
15981// GetShoppingAdsProgramStatus.
15982type ShoppingAdsProgramStatus struct {
15983	// RegionStatuses: Status of the program in each region. Regions with
15984	// the same status and review eligibility are grouped together in
15985	// `regionCodes`.
15986	RegionStatuses []*ShoppingAdsProgramStatusRegionStatus `json:"regionStatuses,omitempty"`
15987
15988	// State: If program is successfully onboarded for at least one region.
15989	//
15990	// Possible values:
15991	//   "PROGRAM_STATE_UNSPECIFIED" - State is not known.
15992	//   "ONBOARDED" - Program is onboarded for at least one country.
15993	//   "NOT_ONBOARDED" - Program is not onboarded for any country.
15994	State string `json:"state,omitempty"`
15995
15996	// ServerResponse contains the HTTP response code and headers from the
15997	// server.
15998	googleapi.ServerResponse `json:"-"`
15999
16000	// ForceSendFields is a list of field names (e.g. "RegionStatuses") to
16001	// unconditionally include in API requests. By default, fields with
16002	// empty or default values are omitted from API requests. However, any
16003	// non-pointer, non-interface field appearing in ForceSendFields will be
16004	// sent to the server regardless of whether the field is empty or not.
16005	// This may be used to include empty fields in Patch requests.
16006	ForceSendFields []string `json:"-"`
16007
16008	// NullFields is a list of field names (e.g. "RegionStatuses") to
16009	// include in API requests with the JSON null value. By default, fields
16010	// with empty values are omitted from API requests. However, any field
16011	// with an empty value appearing in NullFields will be sent to the
16012	// server as null. It is an error if a field in this list has a
16013	// non-empty value. This may be used to include null fields in Patch
16014	// requests.
16015	NullFields []string `json:"-"`
16016}
16017
16018func (s *ShoppingAdsProgramStatus) MarshalJSON() ([]byte, error) {
16019	type NoMethod ShoppingAdsProgramStatus
16020	raw := NoMethod(*s)
16021	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16022}
16023
16024// ShoppingAdsProgramStatusRegionStatus: Status of program and region.
16025type ShoppingAdsProgramStatusRegionStatus struct {
16026	// DisapprovalDate: Date by which `eligibility_status` will go from
16027	// `WARNING` to `DISAPPROVED`. It will be present when
16028	// `eligibility_status` is `WARNING`. Date will be provided in ISO 8601
16029	// (https://en.wikipedia.org/wiki/ISO_8601) format i.e. YYYY-MM-DD
16030	DisapprovalDate string `json:"disapprovalDate,omitempty"`
16031
16032	// EligibilityStatus: Eligibility status of the Shopping Ads program.
16033	//
16034	// Possible values:
16035	//   "STATE_UNSPECIFIED" - State is not known.
16036	//   "APPROVED" - If the account has no issues and review is completed
16037	// successfully.
16038	//   "DISAPPROVED" - There are one or more issues that needs to be
16039	// resolved for account to be active for the program. Detailed list of
16040	// account issues are available in
16041	// [accountstatuses](https://developers.google.com/shopping-content/refer
16042	// ence/rest/v2.1/accountstatuses) API.
16043	//   "WARNING" - If account has issues but offers are servable. Some of
16044	// the issue can make account DISAPPROVED after a certain deadline.
16045	//   "UNDER_REVIEW" - Account is under review.
16046	//   "PENDING_REVIEW" - Account is waiting for review to start.
16047	//   "ONBOARDING" - Program is currently onboarding.
16048	EligibilityStatus string `json:"eligibilityStatus,omitempty"`
16049
16050	// IneligibilityReason: Reason if a program in a given country is not
16051	// eligible for review. Populated only if `review_eligibility_status` is
16052	// `INELIGIBLE`.
16053	IneligibilityReason string `json:"ineligibilityReason,omitempty"`
16054
16055	// RegionCodes: The two-letter ISO 3166-1 alpha-2
16056	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) codes for all the
16057	// regions with the same `eligibilityStatus` and `reviewEligibility`.
16058	RegionCodes []string `json:"regionCodes,omitempty"`
16059
16060	// ReviewEligibilityStatus: If a program in a given country is eligible
16061	// for review. It will be present only if eligibility status is
16062	// `DISAPPROVED`.
16063	//
16064	// Possible values:
16065	//   "REVIEW_ELIGIBILITY_UNSPECIFIED" - Review eligibility state is
16066	// unknown.
16067	//   "ELIGIBLE" - Account for a region code is eligible for review.
16068	//   "INELIGIBLE" - Account for a region code is not eligible for
16069	// review.
16070	ReviewEligibilityStatus string `json:"reviewEligibilityStatus,omitempty"`
16071
16072	// ReviewIssues: These issues will be evaluated in review process. Fix
16073	// all the issues before requesting the review.
16074	ReviewIssues []string `json:"reviewIssues,omitempty"`
16075
16076	// ForceSendFields is a list of field names (e.g. "DisapprovalDate") to
16077	// unconditionally include in API requests. By default, fields with
16078	// empty or default values are omitted from API requests. However, any
16079	// non-pointer, non-interface field appearing in ForceSendFields will be
16080	// sent to the server regardless of whether the field is empty or not.
16081	// This may be used to include empty fields in Patch requests.
16082	ForceSendFields []string `json:"-"`
16083
16084	// NullFields is a list of field names (e.g. "DisapprovalDate") to
16085	// include in API requests with the JSON null value. By default, fields
16086	// with empty values are omitted from API requests. However, any field
16087	// with an empty value appearing in NullFields will be sent to the
16088	// server as null. It is an error if a field in this list has a
16089	// non-empty value. This may be used to include null fields in Patch
16090	// requests.
16091	NullFields []string `json:"-"`
16092}
16093
16094func (s *ShoppingAdsProgramStatusRegionStatus) MarshalJSON() ([]byte, error) {
16095	type NoMethod ShoppingAdsProgramStatusRegionStatus
16096	raw := NoMethod(*s)
16097	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16098}
16099
16100type Table struct {
16101	// ColumnHeaders: Headers of the table's columns. Optional: if not set
16102	// then the table has only one dimension.
16103	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
16104
16105	// Name: Name of the table. Required for subtables, ignored for the main
16106	// table.
16107	Name string `json:"name,omitempty"`
16108
16109	// RowHeaders: Headers of the table's rows. Required.
16110	RowHeaders *Headers `json:"rowHeaders,omitempty"`
16111
16112	// Rows: The list of rows that constitute the table. Must have the same
16113	// length as `rowHeaders`. Required.
16114	Rows []*Row `json:"rows,omitempty"`
16115
16116	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
16117	// unconditionally include in API requests. By default, fields with
16118	// empty or default values are omitted from API requests. However, any
16119	// non-pointer, non-interface field appearing in ForceSendFields will be
16120	// sent to the server regardless of whether the field is empty or not.
16121	// This may be used to include empty fields in Patch requests.
16122	ForceSendFields []string `json:"-"`
16123
16124	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
16125	// in API requests with the JSON null value. By default, fields with
16126	// empty values are omitted from API requests. However, any field with
16127	// an empty value appearing in NullFields will be sent to the server as
16128	// null. It is an error if a field in this list has a non-empty value.
16129	// This may be used to include null fields in Patch requests.
16130	NullFields []string `json:"-"`
16131}
16132
16133func (s *Table) MarshalJSON() ([]byte, error) {
16134	type NoMethod Table
16135	raw := NoMethod(*s)
16136	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16137}
16138
16139type TestOrder struct {
16140	// DeliveryDetails: Overrides the predefined delivery details if
16141	// provided.
16142	DeliveryDetails *TestOrderDeliveryDetails `json:"deliveryDetails,omitempty"`
16143
16144	// EnableOrderinvoices: Whether the orderinvoices service should support
16145	// this order.
16146	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
16147
16148	// Kind: Identifies what kind of resource this is. Value: the fixed
16149	// string "content#testOrder"
16150	Kind string `json:"kind,omitempty"`
16151
16152	// LineItems: Required. Line items that are ordered. At least one line
16153	// item must be provided.
16154	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
16155
16156	// NotificationMode: Restricted. Do not use.
16157	NotificationMode string `json:"notificationMode,omitempty"`
16158
16159	// PickupDetails: Overrides the predefined pickup details if provided.
16160	PickupDetails *TestOrderPickupDetails `json:"pickupDetails,omitempty"`
16161
16162	// PredefinedBillingAddress: Required. The billing address. Acceptable
16163	// values are: - "dwight" - "jim" - "pam"
16164	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
16165
16166	// PredefinedDeliveryAddress: Required. Identifier of one of the
16167	// predefined delivery addresses for the delivery. Acceptable values
16168	// are: - "dwight" - "jim" - "pam"
16169	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
16170
16171	// PredefinedEmail: Required. Email address of the customer. Acceptable
16172	// values are: - "pog.dwight.schrute@gmail.com" -
16173	// "pog.jim.halpert@gmail.com" - "penpog.pam.beesly@gmail.comding"
16174	PredefinedEmail string `json:"predefinedEmail,omitempty"`
16175
16176	// PredefinedPickupDetails: Identifier of one of the predefined pickup
16177	// details. Required for orders containing line items with shipping type
16178	// `pickup`. Acceptable values are: - "dwight" - "jim" - "pam"
16179	PredefinedPickupDetails string `json:"predefinedPickupDetails,omitempty"`
16180
16181	// Promotions: Promotions associated with the order.
16182	Promotions []*OrderPromotion `json:"promotions,omitempty"`
16183
16184	// ShippingCost: Required. The price of shipping for all items. Shipping
16185	// tax is automatically calculated for orders where marketplace
16186	// facilitator tax laws are applicable. Otherwise, tax settings from
16187	// Merchant Center are applied. Note that shipping is not taxed in
16188	// certain states.
16189	ShippingCost *Price `json:"shippingCost,omitempty"`
16190
16191	// ShippingOption: Required. The requested shipping option. Acceptable
16192	// values are: - "economy" - "expedited" - "oneDay" - "sameDay"
16193	// - "standard" - "twoDay"
16194	ShippingOption string `json:"shippingOption,omitempty"`
16195
16196	// ForceSendFields is a list of field names (e.g. "DeliveryDetails") to
16197	// unconditionally include in API requests. By default, fields with
16198	// empty or default values are omitted from API requests. However, any
16199	// non-pointer, non-interface field appearing in ForceSendFields will be
16200	// sent to the server regardless of whether the field is empty or not.
16201	// This may be used to include empty fields in Patch requests.
16202	ForceSendFields []string `json:"-"`
16203
16204	// NullFields is a list of field names (e.g. "DeliveryDetails") to
16205	// include in API requests with the JSON null value. By default, fields
16206	// with empty values are omitted from API requests. However, any field
16207	// with an empty value appearing in NullFields will be sent to the
16208	// server as null. It is an error if a field in this list has a
16209	// non-empty value. This may be used to include null fields in Patch
16210	// requests.
16211	NullFields []string `json:"-"`
16212}
16213
16214func (s *TestOrder) MarshalJSON() ([]byte, error) {
16215	type NoMethod TestOrder
16216	raw := NoMethod(*s)
16217	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16218}
16219
16220type TestOrderAddress struct {
16221	// Country: CLDR country code (e.g. "US").
16222	Country string `json:"country,omitempty"`
16223
16224	// FullAddress: Strings representing the lines of the printed label for
16225	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
16226	// Mountain View, CA, 94043 United States
16227	FullAddress []string `json:"fullAddress,omitempty"`
16228
16229	// IsPostOfficeBox: Whether the address is a post office box.
16230	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
16231
16232	// Locality: City, town or commune. May also include dependent
16233	// localities or sublocalities (e.g. neighborhoods or suburbs).
16234	Locality string `json:"locality,omitempty"`
16235
16236	// PostalCode: Postal Code or ZIP (e.g. "94043").
16237	PostalCode string `json:"postalCode,omitempty"`
16238
16239	// RecipientName: Name of the recipient.
16240	RecipientName string `json:"recipientName,omitempty"`
16241
16242	// Region: Top-level administrative subdivision of the country. For
16243	// example, a state like California ("CA") or a province like Quebec
16244	// ("QC").
16245	Region string `json:"region,omitempty"`
16246
16247	// StreetAddress: Street-level part of the address.
16248	StreetAddress []string `json:"streetAddress,omitempty"`
16249
16250	// ForceSendFields is a list of field names (e.g. "Country") to
16251	// unconditionally include in API requests. By default, fields with
16252	// empty or default values are omitted from API requests. However, any
16253	// non-pointer, non-interface field appearing in ForceSendFields will be
16254	// sent to the server regardless of whether the field is empty or not.
16255	// This may be used to include empty fields in Patch requests.
16256	ForceSendFields []string `json:"-"`
16257
16258	// NullFields is a list of field names (e.g. "Country") to include in
16259	// API requests with the JSON null value. By default, fields with empty
16260	// values are omitted from API requests. However, any field with an
16261	// empty value appearing in NullFields will be sent to the server as
16262	// null. It is an error if a field in this list has a non-empty value.
16263	// This may be used to include null fields in Patch requests.
16264	NullFields []string `json:"-"`
16265}
16266
16267func (s *TestOrderAddress) MarshalJSON() ([]byte, error) {
16268	type NoMethod TestOrderAddress
16269	raw := NoMethod(*s)
16270	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16271}
16272
16273type TestOrderDeliveryDetails struct {
16274	// Address: The delivery address
16275	Address *TestOrderAddress `json:"address,omitempty"`
16276
16277	// IsScheduledDelivery: Whether the order is scheduled delivery order.
16278	IsScheduledDelivery bool `json:"isScheduledDelivery,omitempty"`
16279
16280	// PhoneNumber: The phone number of the person receiving the delivery.
16281	PhoneNumber string `json:"phoneNumber,omitempty"`
16282
16283	// ForceSendFields is a list of field names (e.g. "Address") to
16284	// unconditionally include in API requests. By default, fields with
16285	// empty or default values are omitted from API requests. However, any
16286	// non-pointer, non-interface field appearing in ForceSendFields will be
16287	// sent to the server regardless of whether the field is empty or not.
16288	// This may be used to include empty fields in Patch requests.
16289	ForceSendFields []string `json:"-"`
16290
16291	// NullFields is a list of field names (e.g. "Address") to include in
16292	// API requests with the JSON null value. By default, fields with empty
16293	// values are omitted from API requests. However, any field with an
16294	// empty value appearing in NullFields will be sent to the server as
16295	// null. It is an error if a field in this list has a non-empty value.
16296	// This may be used to include null fields in Patch requests.
16297	NullFields []string `json:"-"`
16298}
16299
16300func (s *TestOrderDeliveryDetails) MarshalJSON() ([]byte, error) {
16301	type NoMethod TestOrderDeliveryDetails
16302	raw := NoMethod(*s)
16303	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16304}
16305
16306type TestOrderLineItem struct {
16307	// Product: Required. Product data from the time of the order placement.
16308	Product *TestOrderLineItemProduct `json:"product,omitempty"`
16309
16310	// QuantityOrdered: Required. Number of items ordered.
16311	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
16312
16313	// ReturnInfo: Required. Details of the return policy for the line item.
16314	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
16315
16316	// ShippingDetails: Required. Details of the requested shipping for the
16317	// line item.
16318	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
16319
16320	// ForceSendFields is a list of field names (e.g. "Product") to
16321	// unconditionally include in API requests. By default, fields with
16322	// empty or default values are omitted from API requests. However, any
16323	// non-pointer, non-interface field appearing in ForceSendFields will be
16324	// sent to the server regardless of whether the field is empty or not.
16325	// This may be used to include empty fields in Patch requests.
16326	ForceSendFields []string `json:"-"`
16327
16328	// NullFields is a list of field names (e.g. "Product") to include in
16329	// API requests with the JSON null value. By default, fields with empty
16330	// values are omitted from API requests. However, any field with an
16331	// empty value appearing in NullFields will be sent to the server as
16332	// null. It is an error if a field in this list has a non-empty value.
16333	// This may be used to include null fields in Patch requests.
16334	NullFields []string `json:"-"`
16335}
16336
16337func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
16338	type NoMethod TestOrderLineItem
16339	raw := NoMethod(*s)
16340	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16341}
16342
16343type TestOrderLineItemProduct struct {
16344	// Brand: Required. Brand of the item.
16345	Brand string `json:"brand,omitempty"`
16346
16347	// Condition: Required. Condition or state of the item. Acceptable
16348	// values are: - "new"
16349	Condition string `json:"condition,omitempty"`
16350
16351	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
16352	// the item. Acceptable values are: - "en" - "fr"
16353	ContentLanguage string `json:"contentLanguage,omitempty"`
16354
16355	// Fees: Fees for the item. Optional.
16356	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
16357
16358	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
16359	Gtin string `json:"gtin,omitempty"`
16360
16361	// ImageLink: Required. URL of an image of the item.
16362	ImageLink string `json:"imageLink,omitempty"`
16363
16364	// ItemGroupId: Shared identifier for all variants of the same product.
16365	// Optional.
16366	ItemGroupId string `json:"itemGroupId,omitempty"`
16367
16368	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
16369	Mpn string `json:"mpn,omitempty"`
16370
16371	// OfferId: Required. An identifier of the item.
16372	OfferId string `json:"offerId,omitempty"`
16373
16374	// Price: Required. The price for the product. Tax is automatically
16375	// calculated for orders where marketplace facilitator tax laws are
16376	// applicable. Otherwise, tax settings from Merchant Center are applied.
16377	Price *Price `json:"price,omitempty"`
16378
16379	// TargetCountry: Required. The CLDR territory // code of the target
16380	// country of the product.
16381	TargetCountry string `json:"targetCountry,omitempty"`
16382
16383	// Title: Required. The title of the product.
16384	Title string `json:"title,omitempty"`
16385
16386	// VariantAttributes: Variant attributes for the item. Optional.
16387	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
16388
16389	// ForceSendFields is a list of field names (e.g. "Brand") to
16390	// unconditionally include in API requests. By default, fields with
16391	// empty or default values are omitted from API requests. However, any
16392	// non-pointer, non-interface field appearing in ForceSendFields will be
16393	// sent to the server regardless of whether the field is empty or not.
16394	// This may be used to include empty fields in Patch requests.
16395	ForceSendFields []string `json:"-"`
16396
16397	// NullFields is a list of field names (e.g. "Brand") to include in API
16398	// requests with the JSON null value. By default, fields with empty
16399	// values are omitted from API requests. However, any field with an
16400	// empty value appearing in NullFields will be sent to the server as
16401	// null. It is an error if a field in this list has a non-empty value.
16402	// This may be used to include null fields in Patch requests.
16403	NullFields []string `json:"-"`
16404}
16405
16406func (s *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
16407	type NoMethod TestOrderLineItemProduct
16408	raw := NoMethod(*s)
16409	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16410}
16411
16412type TestOrderPickupDetails struct {
16413	// LocationCode: Required. Code of the location defined by provider or
16414	// merchant.
16415	LocationCode string `json:"locationCode,omitempty"`
16416
16417	// PickupLocationAddress: Required. Pickup location address.
16418	PickupLocationAddress *TestOrderAddress `json:"pickupLocationAddress,omitempty"`
16419
16420	// PickupLocationType: Pickup location type. Acceptable values are: -
16421	// "locker" - "store" - "curbside"
16422	PickupLocationType string `json:"pickupLocationType,omitempty"`
16423
16424	// PickupPersons: Required. all pickup persons set by users.
16425	PickupPersons []*TestOrderPickupDetailsPickupPerson `json:"pickupPersons,omitempty"`
16426
16427	// ForceSendFields is a list of field names (e.g. "LocationCode") to
16428	// unconditionally include in API requests. By default, fields with
16429	// empty or default values are omitted from API requests. However, any
16430	// non-pointer, non-interface field appearing in ForceSendFields will be
16431	// sent to the server regardless of whether the field is empty or not.
16432	// This may be used to include empty fields in Patch requests.
16433	ForceSendFields []string `json:"-"`
16434
16435	// NullFields is a list of field names (e.g. "LocationCode") to include
16436	// in API requests with the JSON null value. By default, fields with
16437	// empty values are omitted from API requests. However, any field with
16438	// an empty value appearing in NullFields will be sent to the server as
16439	// null. It is an error if a field in this list has a non-empty value.
16440	// This may be used to include null fields in Patch requests.
16441	NullFields []string `json:"-"`
16442}
16443
16444func (s *TestOrderPickupDetails) MarshalJSON() ([]byte, error) {
16445	type NoMethod TestOrderPickupDetails
16446	raw := NoMethod(*s)
16447	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16448}
16449
16450type TestOrderPickupDetailsPickupPerson struct {
16451	// Name: Required. Full name of the pickup person.
16452	Name string `json:"name,omitempty"`
16453
16454	// PhoneNumber: Required. The phone number of the person picking up the
16455	// items.
16456	PhoneNumber string `json:"phoneNumber,omitempty"`
16457
16458	// ForceSendFields is a list of field names (e.g. "Name") to
16459	// unconditionally include in API requests. By default, fields with
16460	// empty or default values are omitted from API requests. However, any
16461	// non-pointer, non-interface field appearing in ForceSendFields will be
16462	// sent to the server regardless of whether the field is empty or not.
16463	// This may be used to include empty fields in Patch requests.
16464	ForceSendFields []string `json:"-"`
16465
16466	// NullFields is a list of field names (e.g. "Name") to include in API
16467	// requests with the JSON null value. By default, fields with empty
16468	// values are omitted from API requests. However, any field with an
16469	// empty value appearing in NullFields will be sent to the server as
16470	// null. It is an error if a field in this list has a non-empty value.
16471	// This may be used to include null fields in Patch requests.
16472	NullFields []string `json:"-"`
16473}
16474
16475func (s *TestOrderPickupDetailsPickupPerson) MarshalJSON() ([]byte, error) {
16476	type NoMethod TestOrderPickupDetailsPickupPerson
16477	raw := NoMethod(*s)
16478	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16479}
16480
16481// TimeZone: Represents a time zone from the IANA Time Zone Database
16482// (https://www.iana.org/time-zones).
16483type TimeZone struct {
16484	// Id: IANA Time Zone Database time zone, e.g. "America/New_York".
16485	Id string `json:"id,omitempty"`
16486
16487	// Version: Optional. IANA Time Zone Database version number, e.g.
16488	// "2019a".
16489	Version string `json:"version,omitempty"`
16490
16491	// ForceSendFields is a list of field names (e.g. "Id") to
16492	// unconditionally include in API requests. By default, fields with
16493	// empty or default values are omitted from API requests. However, any
16494	// non-pointer, non-interface field appearing in ForceSendFields will be
16495	// sent to the server regardless of whether the field is empty or not.
16496	// This may be used to include empty fields in Patch requests.
16497	ForceSendFields []string `json:"-"`
16498
16499	// NullFields is a list of field names (e.g. "Id") to include in API
16500	// requests with the JSON null value. By default, fields with empty
16501	// values are omitted from API requests. However, any field with an
16502	// empty value appearing in NullFields will be sent to the server as
16503	// null. It is an error if a field in this list has a non-empty value.
16504	// This may be used to include null fields in Patch requests.
16505	NullFields []string `json:"-"`
16506}
16507
16508func (s *TimeZone) MarshalJSON() ([]byte, error) {
16509	type NoMethod TimeZone
16510	raw := NoMethod(*s)
16511	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16512}
16513
16514type TransitTable struct {
16515	// PostalCodeGroupNames: A list of postal group names. The last value
16516	// can be "all other locations". Example: `["zone 1", "zone 2", "all
16517	// other locations"]`. The referred postal code groups must match the
16518	// delivery country of the service.
16519	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
16520
16521	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
16522
16523	// TransitTimeLabels: A list of transit time labels. The last value can
16524	// be "all other labels". Example: `["food", "electronics", "all other
16525	// labels"]`.
16526	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
16527
16528	// ForceSendFields is a list of field names (e.g.
16529	// "PostalCodeGroupNames") to unconditionally include in API requests.
16530	// By default, fields with empty or default values are omitted from API
16531	// requests. However, any non-pointer, non-interface field appearing in
16532	// ForceSendFields will be sent to the server regardless of whether the
16533	// field is empty or not. This may be used to include empty fields in
16534	// Patch requests.
16535	ForceSendFields []string `json:"-"`
16536
16537	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
16538	// include in API requests with the JSON null value. By default, fields
16539	// with empty values are omitted from API requests. However, any field
16540	// with an empty value appearing in NullFields will be sent to the
16541	// server as null. It is an error if a field in this list has a
16542	// non-empty value. This may be used to include null fields in Patch
16543	// requests.
16544	NullFields []string `json:"-"`
16545}
16546
16547func (s *TransitTable) MarshalJSON() ([]byte, error) {
16548	type NoMethod TransitTable
16549	raw := NoMethod(*s)
16550	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16551}
16552
16553type TransitTableTransitTimeRow struct {
16554	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
16555
16556	// ForceSendFields is a list of field names (e.g. "Values") to
16557	// unconditionally include in API requests. By default, fields with
16558	// empty or default values are omitted from API requests. However, any
16559	// non-pointer, non-interface field appearing in ForceSendFields will be
16560	// sent to the server regardless of whether the field is empty or not.
16561	// This may be used to include empty fields in Patch requests.
16562	ForceSendFields []string `json:"-"`
16563
16564	// NullFields is a list of field names (e.g. "Values") to include in API
16565	// requests with the JSON null value. By default, fields with empty
16566	// values are omitted from API requests. However, any field with an
16567	// empty value appearing in NullFields will be sent to the server as
16568	// null. It is an error if a field in this list has a non-empty value.
16569	// This may be used to include null fields in Patch requests.
16570	NullFields []string `json:"-"`
16571}
16572
16573func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
16574	type NoMethod TransitTableTransitTimeRow
16575	raw := NoMethod(*s)
16576	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16577}
16578
16579type TransitTableTransitTimeRowTransitTimeValue struct {
16580	// MaxTransitTimeInDays: Must be greater than or equal to
16581	// `minTransitTimeInDays`.
16582	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
16583
16584	// MinTransitTimeInDays: Transit time range (min-max) in business days.
16585	// 0 means same day delivery, 1 means next day delivery.
16586	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
16587
16588	// ForceSendFields is a list of field names (e.g.
16589	// "MaxTransitTimeInDays") to unconditionally include in API requests.
16590	// By default, fields with empty or default values are omitted from API
16591	// requests. However, any non-pointer, non-interface field appearing in
16592	// ForceSendFields will be sent to the server regardless of whether the
16593	// field is empty or not. This may be used to include empty fields in
16594	// Patch requests.
16595	ForceSendFields []string `json:"-"`
16596
16597	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
16598	// include in API requests with the JSON null value. By default, fields
16599	// with empty values are omitted from API requests. However, any field
16600	// with an empty value appearing in NullFields will be sent to the
16601	// server as null. It is an error if a field in this list has a
16602	// non-empty value. This may be used to include null fields in Patch
16603	// requests.
16604	NullFields []string `json:"-"`
16605}
16606
16607func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
16608	type NoMethod TransitTableTransitTimeRowTransitTimeValue
16609	raw := NoMethod(*s)
16610	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16611}
16612
16613type UnitInvoice struct {
16614	// AdditionalCharges: Additional charges for a unit, e.g. shipping
16615	// costs.
16616	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
16617
16618	// UnitPrice: [required] Pre-tax or post-tax price of one unit depending
16619	// on the locality of the order. *Note:* Invoicing works on a per unit
16620	// basis. The `unitPrice` is the price of a single unit, and will be
16621	// multiplied by the number of entries in `shipmentUnitId`.
16622	UnitPrice *Price `json:"unitPrice,omitempty"`
16623
16624	// UnitPriceTaxes: Tax amounts to apply to the unit price.
16625	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
16626
16627	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
16628	// to unconditionally include in API requests. By default, fields with
16629	// empty or default values are omitted from API requests. However, any
16630	// non-pointer, non-interface field appearing in ForceSendFields will be
16631	// sent to the server regardless of whether the field is empty or not.
16632	// This may be used to include empty fields in Patch requests.
16633	ForceSendFields []string `json:"-"`
16634
16635	// NullFields is a list of field names (e.g. "AdditionalCharges") to
16636	// include in API requests with the JSON null value. By default, fields
16637	// with empty values are omitted from API requests. However, any field
16638	// with an empty value appearing in NullFields will be sent to the
16639	// server as null. It is an error if a field in this list has a
16640	// non-empty value. This may be used to include null fields in Patch
16641	// requests.
16642	NullFields []string `json:"-"`
16643}
16644
16645func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
16646	type NoMethod UnitInvoice
16647	raw := NoMethod(*s)
16648	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16649}
16650
16651type UnitInvoiceAdditionalCharge struct {
16652	// AdditionalChargeAmount: [required] Amount of the additional charge
16653	// per unit. *Note:* Invoicing works on a per unit bases. The
16654	// `additionalChargeAmount` is the amount charged per unit, and will be
16655	// multiplied by the number of entries in `shipmentUnitID`.
16656	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
16657
16658	// Type: [required] Type of the additional charge. Acceptable values
16659	// are: - "shipping"
16660	Type string `json:"type,omitempty"`
16661
16662	// ForceSendFields is a list of field names (e.g.
16663	// "AdditionalChargeAmount") to unconditionally include in API requests.
16664	// By default, fields with empty or default values are omitted from API
16665	// requests. However, any non-pointer, non-interface field appearing in
16666	// ForceSendFields will be sent to the server regardless of whether the
16667	// field is empty or not. This may be used to include empty fields in
16668	// Patch requests.
16669	ForceSendFields []string `json:"-"`
16670
16671	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
16672	// to include in API requests with the JSON null value. By default,
16673	// fields with empty values are omitted from API requests. However, any
16674	// field with an empty value appearing in NullFields will be sent to the
16675	// server as null. It is an error if a field in this list has a
16676	// non-empty value. This may be used to include null fields in Patch
16677	// requests.
16678	NullFields []string `json:"-"`
16679}
16680
16681func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
16682	type NoMethod UnitInvoiceAdditionalCharge
16683	raw := NoMethod(*s)
16684	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16685}
16686
16687type UnitInvoiceTaxLine struct {
16688	// TaxAmount: [required] Tax amount for the tax type.
16689	TaxAmount *Price `json:"taxAmount,omitempty"`
16690
16691	// TaxName: Optional name of the tax type. This should only be provided
16692	// if `taxType` is `otherFeeTax`.
16693	TaxName string `json:"taxName,omitempty"`
16694
16695	// TaxType: [required] Type of the tax. Acceptable values are: -
16696	// "otherFee" - "otherFeeTax" - "sales"
16697	TaxType string `json:"taxType,omitempty"`
16698
16699	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
16700	// unconditionally include in API requests. By default, fields with
16701	// empty or default values are omitted from API requests. However, any
16702	// non-pointer, non-interface field appearing in ForceSendFields will be
16703	// sent to the server regardless of whether the field is empty or not.
16704	// This may be used to include empty fields in Patch requests.
16705	ForceSendFields []string `json:"-"`
16706
16707	// NullFields is a list of field names (e.g. "TaxAmount") to include in
16708	// API requests with the JSON null value. By default, fields with empty
16709	// values are omitted from API requests. However, any field with an
16710	// empty value appearing in NullFields will be sent to the server as
16711	// null. It is an error if a field in this list has a non-empty value.
16712	// This may be used to include null fields in Patch requests.
16713	NullFields []string `json:"-"`
16714}
16715
16716func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
16717	type NoMethod UnitInvoiceTaxLine
16718	raw := NoMethod(*s)
16719	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16720}
16721
16722// Value: The single value of a rate group or the value of a rate group
16723// table's cell. Exactly one of `noShipping`, `flatRate`,
16724// `pricePercentage`, `carrierRateName`, `subtableName` must be set.
16725type Value struct {
16726	// CarrierRateName: The name of a carrier rate referring to a carrier
16727	// rate defined in the same rate group. Can only be set if all other
16728	// fields are not set.
16729	CarrierRateName string `json:"carrierRateName,omitempty"`
16730
16731	// FlatRate: A flat rate. Can only be set if all other fields are not
16732	// set.
16733	FlatRate *Price `json:"flatRate,omitempty"`
16734
16735	// NoShipping: If true, then the product can't ship. Must be true when
16736	// set, can only be set if all other fields are not set.
16737	NoShipping bool `json:"noShipping,omitempty"`
16738
16739	// PricePercentage: A percentage of the price represented as a number in
16740	// decimal notation (e.g., "5.4"). Can only be set if all other fields
16741	// are not set.
16742	PricePercentage string `json:"pricePercentage,omitempty"`
16743
16744	// SubtableName: The name of a subtable. Can only be set in table cells
16745	// (i.e., not for single values), and only if all other fields are not
16746	// set.
16747	SubtableName string `json:"subtableName,omitempty"`
16748
16749	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
16750	// unconditionally include in API requests. By default, fields with
16751	// empty or default values are omitted from API requests. However, any
16752	// non-pointer, non-interface field appearing in ForceSendFields will be
16753	// sent to the server regardless of whether the field is empty or not.
16754	// This may be used to include empty fields in Patch requests.
16755	ForceSendFields []string `json:"-"`
16756
16757	// NullFields is a list of field names (e.g. "CarrierRateName") to
16758	// include in API requests with the JSON null value. By default, fields
16759	// with empty values are omitted from API requests. However, any field
16760	// with an empty value appearing in NullFields will be sent to the
16761	// server as null. It is an error if a field in this list has a
16762	// non-empty value. This may be used to include null fields in Patch
16763	// requests.
16764	NullFields []string `json:"-"`
16765}
16766
16767func (s *Value) MarshalJSON() ([]byte, error) {
16768	type NoMethod Value
16769	raw := NoMethod(*s)
16770	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16771}
16772
16773// VerifyPhoneNumberRequest: Request message for the VerifyPhoneNumber
16774// method.
16775type VerifyPhoneNumberRequest struct {
16776	// PhoneVerificationMethod: Verification method used to receive
16777	// verification code.
16778	//
16779	// Possible values:
16780	//   "PHONE_VERIFICATION_METHOD_UNSPECIFIED" - Unknown method.
16781	//   "SMS" - Receive verification code by SMS.
16782	//   "PHONE_CALL" - Receive verification code by phone call.
16783	PhoneVerificationMethod string `json:"phoneVerificationMethod,omitempty"`
16784
16785	// VerificationCode: The verification code that was sent to the phone
16786	// number for validation.
16787	VerificationCode string `json:"verificationCode,omitempty"`
16788
16789	// VerificationId: The verification ID returned by
16790	// `requestphoneverification`.
16791	VerificationId string `json:"verificationId,omitempty"`
16792
16793	// ForceSendFields is a list of field names (e.g.
16794	// "PhoneVerificationMethod") to unconditionally include in API
16795	// requests. By default, fields with empty or default values are omitted
16796	// from API requests. However, any non-pointer, non-interface field
16797	// appearing in ForceSendFields will be sent to the server regardless of
16798	// whether the field is empty or not. This may be used to include empty
16799	// fields in Patch requests.
16800	ForceSendFields []string `json:"-"`
16801
16802	// NullFields is a list of field names (e.g. "PhoneVerificationMethod")
16803	// to include in API requests with the JSON null value. By default,
16804	// fields with empty values are omitted from API requests. However, any
16805	// field with an empty value appearing in NullFields will be sent to the
16806	// server as null. It is an error if a field in this list has a
16807	// non-empty value. This may be used to include null fields in Patch
16808	// requests.
16809	NullFields []string `json:"-"`
16810}
16811
16812func (s *VerifyPhoneNumberRequest) MarshalJSON() ([]byte, error) {
16813	type NoMethod VerifyPhoneNumberRequest
16814	raw := NoMethod(*s)
16815	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16816}
16817
16818// VerifyPhoneNumberResponse: Response message for the VerifyPhoneNumber
16819// method.
16820type VerifyPhoneNumberResponse struct {
16821	// VerifiedPhoneNumber: Verified phone number if verification is
16822	// successful.
16823	VerifiedPhoneNumber string `json:"verifiedPhoneNumber,omitempty"`
16824
16825	// ServerResponse contains the HTTP response code and headers from the
16826	// server.
16827	googleapi.ServerResponse `json:"-"`
16828
16829	// ForceSendFields is a list of field names (e.g. "VerifiedPhoneNumber")
16830	// to unconditionally include in API requests. By default, fields with
16831	// empty or default values are omitted from API requests. However, any
16832	// non-pointer, non-interface field appearing in ForceSendFields will be
16833	// sent to the server regardless of whether the field is empty or not.
16834	// This may be used to include empty fields in Patch requests.
16835	ForceSendFields []string `json:"-"`
16836
16837	// NullFields is a list of field names (e.g. "VerifiedPhoneNumber") to
16838	// include in API requests with the JSON null value. By default, fields
16839	// with empty values are omitted from API requests. However, any field
16840	// with an empty value appearing in NullFields will be sent to the
16841	// server as null. It is an error if a field in this list has a
16842	// non-empty value. This may be used to include null fields in Patch
16843	// requests.
16844	NullFields []string `json:"-"`
16845}
16846
16847func (s *VerifyPhoneNumberResponse) MarshalJSON() ([]byte, error) {
16848	type NoMethod VerifyPhoneNumberResponse
16849	raw := NoMethod(*s)
16850	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16851}
16852
16853type WarehouseBasedDeliveryTime struct {
16854	// Carrier: Required. Carrier, such as "UPS" or "Fedex". The list of
16855	// supported carriers can be retrieved via the `listSupportedCarriers`
16856	// method.
16857	Carrier string `json:"carrier,omitempty"`
16858
16859	// CarrierService: Required. Carrier service, such as "ground" or "2
16860	// days". The list of supported services for a carrier can be retrieved
16861	// via the `listSupportedCarriers` method. The name of the service must
16862	// be in the eddSupportedServices list.
16863	CarrierService string `json:"carrierService,omitempty"`
16864
16865	// OriginAdministrativeArea: Required. Shipping origin's state.
16866	OriginAdministrativeArea string `json:"originAdministrativeArea,omitempty"`
16867
16868	// OriginCity: Required. Shipping origin's city.
16869	OriginCity string `json:"originCity,omitempty"`
16870
16871	// OriginCountry: Required. Shipping origin's country represented as a
16872	// CLDR territory code
16873	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml).
16874	OriginCountry string `json:"originCountry,omitempty"`
16875
16876	// OriginPostalCode: Required. Shipping origin.
16877	OriginPostalCode string `json:"originPostalCode,omitempty"`
16878
16879	// OriginStreetAddress: Shipping origin's street address.
16880	OriginStreetAddress string `json:"originStreetAddress,omitempty"`
16881
16882	// ForceSendFields is a list of field names (e.g. "Carrier") to
16883	// unconditionally include in API requests. By default, fields with
16884	// empty or default values are omitted from API requests. However, any
16885	// non-pointer, non-interface field appearing in ForceSendFields will be
16886	// sent to the server regardless of whether the field is empty or not.
16887	// This may be used to include empty fields in Patch requests.
16888	ForceSendFields []string `json:"-"`
16889
16890	// NullFields is a list of field names (e.g. "Carrier") to include in
16891	// API requests with the JSON null value. By default, fields with empty
16892	// values are omitted from API requests. However, any field with an
16893	// empty value appearing in NullFields will be sent to the server as
16894	// null. It is an error if a field in this list has a non-empty value.
16895	// This may be used to include null fields in Patch requests.
16896	NullFields []string `json:"-"`
16897}
16898
16899func (s *WarehouseBasedDeliveryTime) MarshalJSON() ([]byte, error) {
16900	type NoMethod WarehouseBasedDeliveryTime
16901	raw := NoMethod(*s)
16902	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16903}
16904
16905type Weight struct {
16906	// Unit: Required. The weight unit. Acceptable values are: - "kg" -
16907	// "lb"
16908	Unit string `json:"unit,omitempty"`
16909
16910	// Value: Required. The weight represented as a number. The weight can
16911	// have a maximum precision of four decimal places.
16912	Value string `json:"value,omitempty"`
16913
16914	// ForceSendFields is a list of field names (e.g. "Unit") to
16915	// unconditionally include in API requests. By default, fields with
16916	// empty or default values are omitted from API requests. However, any
16917	// non-pointer, non-interface field appearing in ForceSendFields will be
16918	// sent to the server regardless of whether the field is empty or not.
16919	// This may be used to include empty fields in Patch requests.
16920	ForceSendFields []string `json:"-"`
16921
16922	// NullFields is a list of field names (e.g. "Unit") to include in API
16923	// requests with the JSON null value. By default, fields with empty
16924	// values are omitted from API requests. However, any field with an
16925	// empty value appearing in NullFields will be sent to the server as
16926	// null. It is an error if a field in this list has a non-empty value.
16927	// This may be used to include null fields in Patch requests.
16928	NullFields []string `json:"-"`
16929}
16930
16931func (s *Weight) MarshalJSON() ([]byte, error) {
16932	type NoMethod Weight
16933	raw := NoMethod(*s)
16934	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16935}
16936
16937// method id "content.accounts.authinfo":
16938
16939type AccountsAuthinfoCall struct {
16940	s            *APIService
16941	urlParams_   gensupport.URLParams
16942	ifNoneMatch_ string
16943	ctx_         context.Context
16944	header_      http.Header
16945}
16946
16947// Authinfo: Returns information about the authenticated user.
16948func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
16949	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16950	return c
16951}
16952
16953// Fields allows partial responses to be retrieved. See
16954// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16955// for more information.
16956func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
16957	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16958	return c
16959}
16960
16961// IfNoneMatch sets the optional parameter which makes the operation
16962// fail if the object's ETag matches the given value. This is useful for
16963// getting updates only after the object has changed since the last
16964// request. Use googleapi.IsNotModified to check whether the response
16965// error from Do is the result of In-None-Match.
16966func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
16967	c.ifNoneMatch_ = entityTag
16968	return c
16969}
16970
16971// Context sets the context to be used in this call's Do method. Any
16972// pending HTTP request will be aborted if the provided context is
16973// canceled.
16974func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
16975	c.ctx_ = ctx
16976	return c
16977}
16978
16979// Header returns an http.Header that can be modified by the caller to
16980// add HTTP headers to the request.
16981func (c *AccountsAuthinfoCall) Header() http.Header {
16982	if c.header_ == nil {
16983		c.header_ = make(http.Header)
16984	}
16985	return c.header_
16986}
16987
16988func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
16989	reqHeaders := make(http.Header)
16990	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
16991	for k, v := range c.header_ {
16992		reqHeaders[k] = v
16993	}
16994	reqHeaders.Set("User-Agent", c.s.userAgent())
16995	if c.ifNoneMatch_ != "" {
16996		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16997	}
16998	var body io.Reader = nil
16999	c.urlParams_.Set("alt", alt)
17000	c.urlParams_.Set("prettyPrint", "false")
17001	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/authinfo")
17002	urls += "?" + c.urlParams_.Encode()
17003	req, err := http.NewRequest("GET", urls, body)
17004	if err != nil {
17005		return nil, err
17006	}
17007	req.Header = reqHeaders
17008	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17009}
17010
17011// Do executes the "content.accounts.authinfo" call.
17012// Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
17013// Any non-2xx status code is an error. Response headers are in either
17014// *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
17015// returned at all) in error.(*googleapi.Error).Header. Use
17016// googleapi.IsNotModified to check whether the returned error was
17017// because http.StatusNotModified was returned.
17018func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
17019	gensupport.SetOptions(c.urlParams_, opts...)
17020	res, err := c.doRequest("json")
17021	if res != nil && res.StatusCode == http.StatusNotModified {
17022		if res.Body != nil {
17023			res.Body.Close()
17024		}
17025		return nil, &googleapi.Error{
17026			Code:   res.StatusCode,
17027			Header: res.Header,
17028		}
17029	}
17030	if err != nil {
17031		return nil, err
17032	}
17033	defer googleapi.CloseBody(res)
17034	if err := googleapi.CheckResponse(res); err != nil {
17035		return nil, err
17036	}
17037	ret := &AccountsAuthInfoResponse{
17038		ServerResponse: googleapi.ServerResponse{
17039			Header:         res.Header,
17040			HTTPStatusCode: res.StatusCode,
17041		},
17042	}
17043	target := &ret
17044	if err := gensupport.DecodeResponse(target, res); err != nil {
17045		return nil, err
17046	}
17047	return ret, nil
17048	// {
17049	//   "description": "Returns information about the authenticated user.",
17050	//   "flatPath": "accounts/authinfo",
17051	//   "httpMethod": "GET",
17052	//   "id": "content.accounts.authinfo",
17053	//   "parameterOrder": [],
17054	//   "parameters": {},
17055	//   "path": "accounts/authinfo",
17056	//   "response": {
17057	//     "$ref": "AccountsAuthInfoResponse"
17058	//   },
17059	//   "scopes": [
17060	//     "https://www.googleapis.com/auth/content"
17061	//   ]
17062	// }
17063
17064}
17065
17066// method id "content.accounts.claimwebsite":
17067
17068type AccountsClaimwebsiteCall struct {
17069	s          *APIService
17070	merchantId uint64
17071	accountId  uint64
17072	urlParams_ gensupport.URLParams
17073	ctx_       context.Context
17074	header_    http.Header
17075}
17076
17077// Claimwebsite: Claims the website of a Merchant Center sub-account.
17078//
17079// - accountId: The ID of the account whose website is claimed.
17080// - merchantId: The ID of the managing account. If this parameter is
17081//   not the same as accountId, then this account must be a multi-client
17082//   account and `accountId` must be the ID of a sub-account of this
17083//   account.
17084func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
17085	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17086	c.merchantId = merchantId
17087	c.accountId = accountId
17088	return c
17089}
17090
17091// Overwrite sets the optional parameter "overwrite": Only available to
17092// selected merchants. When set to `True`, this flag removes any
17093// existing claim on the requested website by another account and
17094// replaces it with a claim from this account.
17095func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
17096	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
17097	return c
17098}
17099
17100// Fields allows partial responses to be retrieved. See
17101// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17102// for more information.
17103func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
17104	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17105	return c
17106}
17107
17108// Context sets the context to be used in this call's Do method. Any
17109// pending HTTP request will be aborted if the provided context is
17110// canceled.
17111func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
17112	c.ctx_ = ctx
17113	return c
17114}
17115
17116// Header returns an http.Header that can be modified by the caller to
17117// add HTTP headers to the request.
17118func (c *AccountsClaimwebsiteCall) Header() http.Header {
17119	if c.header_ == nil {
17120		c.header_ = make(http.Header)
17121	}
17122	return c.header_
17123}
17124
17125func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
17126	reqHeaders := make(http.Header)
17127	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17128	for k, v := range c.header_ {
17129		reqHeaders[k] = v
17130	}
17131	reqHeaders.Set("User-Agent", c.s.userAgent())
17132	var body io.Reader = nil
17133	c.urlParams_.Set("alt", alt)
17134	c.urlParams_.Set("prettyPrint", "false")
17135	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/claimwebsite")
17136	urls += "?" + c.urlParams_.Encode()
17137	req, err := http.NewRequest("POST", urls, body)
17138	if err != nil {
17139		return nil, err
17140	}
17141	req.Header = reqHeaders
17142	googleapi.Expand(req.URL, map[string]string{
17143		"merchantId": strconv.FormatUint(c.merchantId, 10),
17144		"accountId":  strconv.FormatUint(c.accountId, 10),
17145	})
17146	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17147}
17148
17149// Do executes the "content.accounts.claimwebsite" call.
17150// Exactly one of *AccountsClaimWebsiteResponse or error will be
17151// non-nil. Any non-2xx status code is an error. Response headers are in
17152// either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
17153// response was returned at all) in error.(*googleapi.Error).Header. Use
17154// googleapi.IsNotModified to check whether the returned error was
17155// because http.StatusNotModified was returned.
17156func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
17157	gensupport.SetOptions(c.urlParams_, opts...)
17158	res, err := c.doRequest("json")
17159	if res != nil && res.StatusCode == http.StatusNotModified {
17160		if res.Body != nil {
17161			res.Body.Close()
17162		}
17163		return nil, &googleapi.Error{
17164			Code:   res.StatusCode,
17165			Header: res.Header,
17166		}
17167	}
17168	if err != nil {
17169		return nil, err
17170	}
17171	defer googleapi.CloseBody(res)
17172	if err := googleapi.CheckResponse(res); err != nil {
17173		return nil, err
17174	}
17175	ret := &AccountsClaimWebsiteResponse{
17176		ServerResponse: googleapi.ServerResponse{
17177			Header:         res.Header,
17178			HTTPStatusCode: res.StatusCode,
17179		},
17180	}
17181	target := &ret
17182	if err := gensupport.DecodeResponse(target, res); err != nil {
17183		return nil, err
17184	}
17185	return ret, nil
17186	// {
17187	//   "description": "Claims the website of a Merchant Center sub-account.",
17188	//   "flatPath": "{merchantId}/accounts/{accountId}/claimwebsite",
17189	//   "httpMethod": "POST",
17190	//   "id": "content.accounts.claimwebsite",
17191	//   "parameterOrder": [
17192	//     "merchantId",
17193	//     "accountId"
17194	//   ],
17195	//   "parameters": {
17196	//     "accountId": {
17197	//       "description": "The ID of the account whose website is claimed.",
17198	//       "format": "uint64",
17199	//       "location": "path",
17200	//       "required": true,
17201	//       "type": "string"
17202	//     },
17203	//     "merchantId": {
17204	//       "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.",
17205	//       "format": "uint64",
17206	//       "location": "path",
17207	//       "required": true,
17208	//       "type": "string"
17209	//     },
17210	//     "overwrite": {
17211	//       "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.",
17212	//       "location": "query",
17213	//       "type": "boolean"
17214	//     }
17215	//   },
17216	//   "path": "{merchantId}/accounts/{accountId}/claimwebsite",
17217	//   "response": {
17218	//     "$ref": "AccountsClaimWebsiteResponse"
17219	//   },
17220	//   "scopes": [
17221	//     "https://www.googleapis.com/auth/content"
17222	//   ]
17223	// }
17224
17225}
17226
17227// method id "content.accounts.custombatch":
17228
17229type AccountsCustombatchCall struct {
17230	s                          *APIService
17231	accountscustombatchrequest *AccountsCustomBatchRequest
17232	urlParams_                 gensupport.URLParams
17233	ctx_                       context.Context
17234	header_                    http.Header
17235}
17236
17237// Custombatch: Retrieves, inserts, updates, and deletes multiple
17238// Merchant Center (sub-)accounts in a single request.
17239func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
17240	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17241	c.accountscustombatchrequest = accountscustombatchrequest
17242	return c
17243}
17244
17245// Fields allows partial responses to be retrieved. See
17246// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17247// for more information.
17248func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
17249	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17250	return c
17251}
17252
17253// Context sets the context to be used in this call's Do method. Any
17254// pending HTTP request will be aborted if the provided context is
17255// canceled.
17256func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
17257	c.ctx_ = ctx
17258	return c
17259}
17260
17261// Header returns an http.Header that can be modified by the caller to
17262// add HTTP headers to the request.
17263func (c *AccountsCustombatchCall) Header() http.Header {
17264	if c.header_ == nil {
17265		c.header_ = make(http.Header)
17266	}
17267	return c.header_
17268}
17269
17270func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
17271	reqHeaders := make(http.Header)
17272	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17273	for k, v := range c.header_ {
17274		reqHeaders[k] = v
17275	}
17276	reqHeaders.Set("User-Agent", c.s.userAgent())
17277	var body io.Reader = nil
17278	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
17279	if err != nil {
17280		return nil, err
17281	}
17282	reqHeaders.Set("Content-Type", "application/json")
17283	c.urlParams_.Set("alt", alt)
17284	c.urlParams_.Set("prettyPrint", "false")
17285	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/batch")
17286	urls += "?" + c.urlParams_.Encode()
17287	req, err := http.NewRequest("POST", urls, body)
17288	if err != nil {
17289		return nil, err
17290	}
17291	req.Header = reqHeaders
17292	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17293}
17294
17295// Do executes the "content.accounts.custombatch" call.
17296// Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
17297// Any non-2xx status code is an error. Response headers are in either
17298// *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
17299// was returned at all) in error.(*googleapi.Error).Header. Use
17300// googleapi.IsNotModified to check whether the returned error was
17301// because http.StatusNotModified was returned.
17302func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
17303	gensupport.SetOptions(c.urlParams_, opts...)
17304	res, err := c.doRequest("json")
17305	if res != nil && res.StatusCode == http.StatusNotModified {
17306		if res.Body != nil {
17307			res.Body.Close()
17308		}
17309		return nil, &googleapi.Error{
17310			Code:   res.StatusCode,
17311			Header: res.Header,
17312		}
17313	}
17314	if err != nil {
17315		return nil, err
17316	}
17317	defer googleapi.CloseBody(res)
17318	if err := googleapi.CheckResponse(res); err != nil {
17319		return nil, err
17320	}
17321	ret := &AccountsCustomBatchResponse{
17322		ServerResponse: googleapi.ServerResponse{
17323			Header:         res.Header,
17324			HTTPStatusCode: res.StatusCode,
17325		},
17326	}
17327	target := &ret
17328	if err := gensupport.DecodeResponse(target, res); err != nil {
17329		return nil, err
17330	}
17331	return ret, nil
17332	// {
17333	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
17334	//   "flatPath": "accounts/batch",
17335	//   "httpMethod": "POST",
17336	//   "id": "content.accounts.custombatch",
17337	//   "parameterOrder": [],
17338	//   "parameters": {},
17339	//   "path": "accounts/batch",
17340	//   "request": {
17341	//     "$ref": "AccountsCustomBatchRequest"
17342	//   },
17343	//   "response": {
17344	//     "$ref": "AccountsCustomBatchResponse"
17345	//   },
17346	//   "scopes": [
17347	//     "https://www.googleapis.com/auth/content"
17348	//   ]
17349	// }
17350
17351}
17352
17353// method id "content.accounts.delete":
17354
17355type AccountsDeleteCall struct {
17356	s          *APIService
17357	merchantId uint64
17358	accountId  uint64
17359	urlParams_ gensupport.URLParams
17360	ctx_       context.Context
17361	header_    http.Header
17362}
17363
17364// Delete: Deletes a Merchant Center sub-account.
17365//
17366// - accountId: The ID of the account.
17367// - merchantId: The ID of the managing account. This must be a
17368//   multi-client account, and accountId must be the ID of a sub-account
17369//   of this account.
17370func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
17371	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17372	c.merchantId = merchantId
17373	c.accountId = accountId
17374	return c
17375}
17376
17377// Force sets the optional parameter "force": Flag to delete
17378// sub-accounts with products. The default value is false.
17379func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
17380	c.urlParams_.Set("force", fmt.Sprint(force))
17381	return c
17382}
17383
17384// Fields allows partial responses to be retrieved. See
17385// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17386// for more information.
17387func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
17388	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17389	return c
17390}
17391
17392// Context sets the context to be used in this call's Do method. Any
17393// pending HTTP request will be aborted if the provided context is
17394// canceled.
17395func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
17396	c.ctx_ = ctx
17397	return c
17398}
17399
17400// Header returns an http.Header that can be modified by the caller to
17401// add HTTP headers to the request.
17402func (c *AccountsDeleteCall) Header() http.Header {
17403	if c.header_ == nil {
17404		c.header_ = make(http.Header)
17405	}
17406	return c.header_
17407}
17408
17409func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
17410	reqHeaders := make(http.Header)
17411	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17412	for k, v := range c.header_ {
17413		reqHeaders[k] = v
17414	}
17415	reqHeaders.Set("User-Agent", c.s.userAgent())
17416	var body io.Reader = nil
17417	c.urlParams_.Set("alt", alt)
17418	c.urlParams_.Set("prettyPrint", "false")
17419	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
17420	urls += "?" + c.urlParams_.Encode()
17421	req, err := http.NewRequest("DELETE", urls, body)
17422	if err != nil {
17423		return nil, err
17424	}
17425	req.Header = reqHeaders
17426	googleapi.Expand(req.URL, map[string]string{
17427		"merchantId": strconv.FormatUint(c.merchantId, 10),
17428		"accountId":  strconv.FormatUint(c.accountId, 10),
17429	})
17430	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17431}
17432
17433// Do executes the "content.accounts.delete" call.
17434func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
17435	gensupport.SetOptions(c.urlParams_, opts...)
17436	res, err := c.doRequest("json")
17437	if err != nil {
17438		return err
17439	}
17440	defer googleapi.CloseBody(res)
17441	if err := googleapi.CheckResponse(res); err != nil {
17442		return err
17443	}
17444	return nil
17445	// {
17446	//   "description": "Deletes a Merchant Center sub-account.",
17447	//   "flatPath": "{merchantId}/accounts/{accountId}",
17448	//   "httpMethod": "DELETE",
17449	//   "id": "content.accounts.delete",
17450	//   "parameterOrder": [
17451	//     "merchantId",
17452	//     "accountId"
17453	//   ],
17454	//   "parameters": {
17455	//     "accountId": {
17456	//       "description": "The ID of the account.",
17457	//       "format": "uint64",
17458	//       "location": "path",
17459	//       "required": true,
17460	//       "type": "string"
17461	//     },
17462	//     "force": {
17463	//       "default": "false",
17464	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
17465	//       "location": "query",
17466	//       "type": "boolean"
17467	//     },
17468	//     "merchantId": {
17469	//       "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.",
17470	//       "format": "uint64",
17471	//       "location": "path",
17472	//       "required": true,
17473	//       "type": "string"
17474	//     }
17475	//   },
17476	//   "path": "{merchantId}/accounts/{accountId}",
17477	//   "scopes": [
17478	//     "https://www.googleapis.com/auth/content"
17479	//   ]
17480	// }
17481
17482}
17483
17484// method id "content.accounts.get":
17485
17486type AccountsGetCall struct {
17487	s            *APIService
17488	merchantId   uint64
17489	accountId    uint64
17490	urlParams_   gensupport.URLParams
17491	ifNoneMatch_ string
17492	ctx_         context.Context
17493	header_      http.Header
17494}
17495
17496// Get: Retrieves a Merchant Center account.
17497//
17498// - accountId: The ID of the account.
17499// - merchantId: The ID of the managing account. If this parameter is
17500//   not the same as accountId, then this account must be a multi-client
17501//   account and `accountId` must be the ID of a sub-account of this
17502//   account.
17503func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
17504	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17505	c.merchantId = merchantId
17506	c.accountId = accountId
17507	return c
17508}
17509
17510// View sets the optional parameter "view": Controls which fields will
17511// be populated. Acceptable values are: "merchant" and "css". The
17512// default value is "merchant".
17513//
17514// Possible values:
17515//   "MERCHANT" - Default. View is populated with Merchant Center
17516// fields.
17517//   "CSS" - View is populated with Comparison Shopping Services fields.
17518func (c *AccountsGetCall) View(view string) *AccountsGetCall {
17519	c.urlParams_.Set("view", view)
17520	return c
17521}
17522
17523// Fields allows partial responses to be retrieved. See
17524// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17525// for more information.
17526func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
17527	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17528	return c
17529}
17530
17531// IfNoneMatch sets the optional parameter which makes the operation
17532// fail if the object's ETag matches the given value. This is useful for
17533// getting updates only after the object has changed since the last
17534// request. Use googleapi.IsNotModified to check whether the response
17535// error from Do is the result of In-None-Match.
17536func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
17537	c.ifNoneMatch_ = entityTag
17538	return c
17539}
17540
17541// Context sets the context to be used in this call's Do method. Any
17542// pending HTTP request will be aborted if the provided context is
17543// canceled.
17544func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
17545	c.ctx_ = ctx
17546	return c
17547}
17548
17549// Header returns an http.Header that can be modified by the caller to
17550// add HTTP headers to the request.
17551func (c *AccountsGetCall) Header() http.Header {
17552	if c.header_ == nil {
17553		c.header_ = make(http.Header)
17554	}
17555	return c.header_
17556}
17557
17558func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
17559	reqHeaders := make(http.Header)
17560	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17561	for k, v := range c.header_ {
17562		reqHeaders[k] = v
17563	}
17564	reqHeaders.Set("User-Agent", c.s.userAgent())
17565	if c.ifNoneMatch_ != "" {
17566		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17567	}
17568	var body io.Reader = nil
17569	c.urlParams_.Set("alt", alt)
17570	c.urlParams_.Set("prettyPrint", "false")
17571	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
17572	urls += "?" + c.urlParams_.Encode()
17573	req, err := http.NewRequest("GET", urls, body)
17574	if err != nil {
17575		return nil, err
17576	}
17577	req.Header = reqHeaders
17578	googleapi.Expand(req.URL, map[string]string{
17579		"merchantId": strconv.FormatUint(c.merchantId, 10),
17580		"accountId":  strconv.FormatUint(c.accountId, 10),
17581	})
17582	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17583}
17584
17585// Do executes the "content.accounts.get" call.
17586// Exactly one of *Account or error will be non-nil. Any non-2xx status
17587// code is an error. Response headers are in either
17588// *Account.ServerResponse.Header or (if a response was returned at all)
17589// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
17590// check whether the returned error was because http.StatusNotModified
17591// was returned.
17592func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
17593	gensupport.SetOptions(c.urlParams_, opts...)
17594	res, err := c.doRequest("json")
17595	if res != nil && res.StatusCode == http.StatusNotModified {
17596		if res.Body != nil {
17597			res.Body.Close()
17598		}
17599		return nil, &googleapi.Error{
17600			Code:   res.StatusCode,
17601			Header: res.Header,
17602		}
17603	}
17604	if err != nil {
17605		return nil, err
17606	}
17607	defer googleapi.CloseBody(res)
17608	if err := googleapi.CheckResponse(res); err != nil {
17609		return nil, err
17610	}
17611	ret := &Account{
17612		ServerResponse: googleapi.ServerResponse{
17613			Header:         res.Header,
17614			HTTPStatusCode: res.StatusCode,
17615		},
17616	}
17617	target := &ret
17618	if err := gensupport.DecodeResponse(target, res); err != nil {
17619		return nil, err
17620	}
17621	return ret, nil
17622	// {
17623	//   "description": "Retrieves a Merchant Center account.",
17624	//   "flatPath": "{merchantId}/accounts/{accountId}",
17625	//   "httpMethod": "GET",
17626	//   "id": "content.accounts.get",
17627	//   "parameterOrder": [
17628	//     "merchantId",
17629	//     "accountId"
17630	//   ],
17631	//   "parameters": {
17632	//     "accountId": {
17633	//       "description": "The ID of the account.",
17634	//       "format": "uint64",
17635	//       "location": "path",
17636	//       "required": true,
17637	//       "type": "string"
17638	//     },
17639	//     "merchantId": {
17640	//       "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.",
17641	//       "format": "uint64",
17642	//       "location": "path",
17643	//       "required": true,
17644	//       "type": "string"
17645	//     },
17646	//     "view": {
17647	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
17648	//       "enum": [
17649	//         "MERCHANT",
17650	//         "CSS"
17651	//       ],
17652	//       "enumDescriptions": [
17653	//         "Default. View is populated with Merchant Center fields.",
17654	//         "View is populated with Comparison Shopping Services fields."
17655	//       ],
17656	//       "location": "query",
17657	//       "type": "string"
17658	//     }
17659	//   },
17660	//   "path": "{merchantId}/accounts/{accountId}",
17661	//   "response": {
17662	//     "$ref": "Account"
17663	//   },
17664	//   "scopes": [
17665	//     "https://www.googleapis.com/auth/content"
17666	//   ]
17667	// }
17668
17669}
17670
17671// method id "content.accounts.insert":
17672
17673type AccountsInsertCall struct {
17674	s          *APIService
17675	merchantId uint64
17676	account    *Account
17677	urlParams_ gensupport.URLParams
17678	ctx_       context.Context
17679	header_    http.Header
17680}
17681
17682// Insert: Creates a Merchant Center sub-account.
17683//
17684// - merchantId: The ID of the managing account. This must be a
17685//   multi-client account.
17686func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
17687	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17688	c.merchantId = merchantId
17689	c.account = account
17690	return c
17691}
17692
17693// Fields allows partial responses to be retrieved. See
17694// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17695// for more information.
17696func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
17697	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17698	return c
17699}
17700
17701// Context sets the context to be used in this call's Do method. Any
17702// pending HTTP request will be aborted if the provided context is
17703// canceled.
17704func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
17705	c.ctx_ = ctx
17706	return c
17707}
17708
17709// Header returns an http.Header that can be modified by the caller to
17710// add HTTP headers to the request.
17711func (c *AccountsInsertCall) Header() http.Header {
17712	if c.header_ == nil {
17713		c.header_ = make(http.Header)
17714	}
17715	return c.header_
17716}
17717
17718func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
17719	reqHeaders := make(http.Header)
17720	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17721	for k, v := range c.header_ {
17722		reqHeaders[k] = v
17723	}
17724	reqHeaders.Set("User-Agent", c.s.userAgent())
17725	var body io.Reader = nil
17726	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
17727	if err != nil {
17728		return nil, err
17729	}
17730	reqHeaders.Set("Content-Type", "application/json")
17731	c.urlParams_.Set("alt", alt)
17732	c.urlParams_.Set("prettyPrint", "false")
17733	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
17734	urls += "?" + c.urlParams_.Encode()
17735	req, err := http.NewRequest("POST", urls, body)
17736	if err != nil {
17737		return nil, err
17738	}
17739	req.Header = reqHeaders
17740	googleapi.Expand(req.URL, map[string]string{
17741		"merchantId": strconv.FormatUint(c.merchantId, 10),
17742	})
17743	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17744}
17745
17746// Do executes the "content.accounts.insert" call.
17747// Exactly one of *Account or error will be non-nil. Any non-2xx status
17748// code is an error. Response headers are in either
17749// *Account.ServerResponse.Header or (if a response was returned at all)
17750// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
17751// check whether the returned error was because http.StatusNotModified
17752// was returned.
17753func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
17754	gensupport.SetOptions(c.urlParams_, opts...)
17755	res, err := c.doRequest("json")
17756	if res != nil && res.StatusCode == http.StatusNotModified {
17757		if res.Body != nil {
17758			res.Body.Close()
17759		}
17760		return nil, &googleapi.Error{
17761			Code:   res.StatusCode,
17762			Header: res.Header,
17763		}
17764	}
17765	if err != nil {
17766		return nil, err
17767	}
17768	defer googleapi.CloseBody(res)
17769	if err := googleapi.CheckResponse(res); err != nil {
17770		return nil, err
17771	}
17772	ret := &Account{
17773		ServerResponse: googleapi.ServerResponse{
17774			Header:         res.Header,
17775			HTTPStatusCode: res.StatusCode,
17776		},
17777	}
17778	target := &ret
17779	if err := gensupport.DecodeResponse(target, res); err != nil {
17780		return nil, err
17781	}
17782	return ret, nil
17783	// {
17784	//   "description": "Creates a Merchant Center sub-account.",
17785	//   "flatPath": "{merchantId}/accounts",
17786	//   "httpMethod": "POST",
17787	//   "id": "content.accounts.insert",
17788	//   "parameterOrder": [
17789	//     "merchantId"
17790	//   ],
17791	//   "parameters": {
17792	//     "merchantId": {
17793	//       "description": "The ID of the managing account. This must be a multi-client account.",
17794	//       "format": "uint64",
17795	//       "location": "path",
17796	//       "required": true,
17797	//       "type": "string"
17798	//     }
17799	//   },
17800	//   "path": "{merchantId}/accounts",
17801	//   "request": {
17802	//     "$ref": "Account"
17803	//   },
17804	//   "response": {
17805	//     "$ref": "Account"
17806	//   },
17807	//   "scopes": [
17808	//     "https://www.googleapis.com/auth/content"
17809	//   ]
17810	// }
17811
17812}
17813
17814// method id "content.accounts.link":
17815
17816type AccountsLinkCall struct {
17817	s                   *APIService
17818	merchantId          uint64
17819	accountId           uint64
17820	accountslinkrequest *AccountsLinkRequest
17821	urlParams_          gensupport.URLParams
17822	ctx_                context.Context
17823	header_             http.Header
17824}
17825
17826// Link: Performs an action on a link between two Merchant Center
17827// accounts, namely accountId and linkedAccountId.
17828//
17829// - accountId: The ID of the account that should be linked.
17830// - merchantId: The ID of the managing account. If this parameter is
17831//   not the same as accountId, then this account must be a multi-client
17832//   account and `accountId` must be the ID of a sub-account of this
17833//   account.
17834func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
17835	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17836	c.merchantId = merchantId
17837	c.accountId = accountId
17838	c.accountslinkrequest = accountslinkrequest
17839	return c
17840}
17841
17842// Fields allows partial responses to be retrieved. See
17843// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17844// for more information.
17845func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
17846	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17847	return c
17848}
17849
17850// Context sets the context to be used in this call's Do method. Any
17851// pending HTTP request will be aborted if the provided context is
17852// canceled.
17853func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
17854	c.ctx_ = ctx
17855	return c
17856}
17857
17858// Header returns an http.Header that can be modified by the caller to
17859// add HTTP headers to the request.
17860func (c *AccountsLinkCall) Header() http.Header {
17861	if c.header_ == nil {
17862		c.header_ = make(http.Header)
17863	}
17864	return c.header_
17865}
17866
17867func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
17868	reqHeaders := make(http.Header)
17869	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
17870	for k, v := range c.header_ {
17871		reqHeaders[k] = v
17872	}
17873	reqHeaders.Set("User-Agent", c.s.userAgent())
17874	var body io.Reader = nil
17875	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
17876	if err != nil {
17877		return nil, err
17878	}
17879	reqHeaders.Set("Content-Type", "application/json")
17880	c.urlParams_.Set("alt", alt)
17881	c.urlParams_.Set("prettyPrint", "false")
17882	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/link")
17883	urls += "?" + c.urlParams_.Encode()
17884	req, err := http.NewRequest("POST", urls, body)
17885	if err != nil {
17886		return nil, err
17887	}
17888	req.Header = reqHeaders
17889	googleapi.Expand(req.URL, map[string]string{
17890		"merchantId": strconv.FormatUint(c.merchantId, 10),
17891		"accountId":  strconv.FormatUint(c.accountId, 10),
17892	})
17893	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17894}
17895
17896// Do executes the "content.accounts.link" call.
17897// Exactly one of *AccountsLinkResponse or error will be non-nil. Any
17898// non-2xx status code is an error. Response headers are in either
17899// *AccountsLinkResponse.ServerResponse.Header or (if a response was
17900// returned at all) in error.(*googleapi.Error).Header. Use
17901// googleapi.IsNotModified to check whether the returned error was
17902// because http.StatusNotModified was returned.
17903func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
17904	gensupport.SetOptions(c.urlParams_, opts...)
17905	res, err := c.doRequest("json")
17906	if res != nil && res.StatusCode == http.StatusNotModified {
17907		if res.Body != nil {
17908			res.Body.Close()
17909		}
17910		return nil, &googleapi.Error{
17911			Code:   res.StatusCode,
17912			Header: res.Header,
17913		}
17914	}
17915	if err != nil {
17916		return nil, err
17917	}
17918	defer googleapi.CloseBody(res)
17919	if err := googleapi.CheckResponse(res); err != nil {
17920		return nil, err
17921	}
17922	ret := &AccountsLinkResponse{
17923		ServerResponse: googleapi.ServerResponse{
17924			Header:         res.Header,
17925			HTTPStatusCode: res.StatusCode,
17926		},
17927	}
17928	target := &ret
17929	if err := gensupport.DecodeResponse(target, res); err != nil {
17930		return nil, err
17931	}
17932	return ret, nil
17933	// {
17934	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
17935	//   "flatPath": "{merchantId}/accounts/{accountId}/link",
17936	//   "httpMethod": "POST",
17937	//   "id": "content.accounts.link",
17938	//   "parameterOrder": [
17939	//     "merchantId",
17940	//     "accountId"
17941	//   ],
17942	//   "parameters": {
17943	//     "accountId": {
17944	//       "description": "The ID of the account that should be linked.",
17945	//       "format": "uint64",
17946	//       "location": "path",
17947	//       "required": true,
17948	//       "type": "string"
17949	//     },
17950	//     "merchantId": {
17951	//       "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.",
17952	//       "format": "uint64",
17953	//       "location": "path",
17954	//       "required": true,
17955	//       "type": "string"
17956	//     }
17957	//   },
17958	//   "path": "{merchantId}/accounts/{accountId}/link",
17959	//   "request": {
17960	//     "$ref": "AccountsLinkRequest"
17961	//   },
17962	//   "response": {
17963	//     "$ref": "AccountsLinkResponse"
17964	//   },
17965	//   "scopes": [
17966	//     "https://www.googleapis.com/auth/content"
17967	//   ]
17968	// }
17969
17970}
17971
17972// method id "content.accounts.list":
17973
17974type AccountsListCall struct {
17975	s            *APIService
17976	merchantId   uint64
17977	urlParams_   gensupport.URLParams
17978	ifNoneMatch_ string
17979	ctx_         context.Context
17980	header_      http.Header
17981}
17982
17983// List: Lists the sub-accounts in your Merchant Center account.
17984//
17985// - merchantId: The ID of the managing account. This must be a
17986//   multi-client account.
17987func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
17988	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17989	c.merchantId = merchantId
17990	return c
17991}
17992
17993// Label sets the optional parameter "label": If view is set to "css",
17994// only return accounts that are assigned label with given ID.
17995func (c *AccountsListCall) Label(label uint64) *AccountsListCall {
17996	c.urlParams_.Set("label", fmt.Sprint(label))
17997	return c
17998}
17999
18000// MaxResults sets the optional parameter "maxResults": The maximum
18001// number of accounts to return in the response, used for paging.
18002func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
18003	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18004	return c
18005}
18006
18007// Name sets the optional parameter "name": If set, only the accounts
18008// with the given name (case sensitive) will be returned.
18009func (c *AccountsListCall) Name(name string) *AccountsListCall {
18010	c.urlParams_.Set("name", name)
18011	return c
18012}
18013
18014// PageToken sets the optional parameter "pageToken": The token returned
18015// by the previous request.
18016func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
18017	c.urlParams_.Set("pageToken", pageToken)
18018	return c
18019}
18020
18021// View sets the optional parameter "view": Controls which fields will
18022// be populated. Acceptable values are: "merchant" and "css". The
18023// default value is "merchant".
18024//
18025// Possible values:
18026//   "MERCHANT" - Default. View is populated with Merchant Center
18027// fields.
18028//   "CSS" - View is populated with Comparison Shopping Services fields.
18029func (c *AccountsListCall) View(view string) *AccountsListCall {
18030	c.urlParams_.Set("view", view)
18031	return c
18032}
18033
18034// Fields allows partial responses to be retrieved. See
18035// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18036// for more information.
18037func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
18038	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18039	return c
18040}
18041
18042// IfNoneMatch sets the optional parameter which makes the operation
18043// fail if the object's ETag matches the given value. This is useful for
18044// getting updates only after the object has changed since the last
18045// request. Use googleapi.IsNotModified to check whether the response
18046// error from Do is the result of In-None-Match.
18047func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
18048	c.ifNoneMatch_ = entityTag
18049	return c
18050}
18051
18052// Context sets the context to be used in this call's Do method. Any
18053// pending HTTP request will be aborted if the provided context is
18054// canceled.
18055func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
18056	c.ctx_ = ctx
18057	return c
18058}
18059
18060// Header returns an http.Header that can be modified by the caller to
18061// add HTTP headers to the request.
18062func (c *AccountsListCall) Header() http.Header {
18063	if c.header_ == nil {
18064		c.header_ = make(http.Header)
18065	}
18066	return c.header_
18067}
18068
18069func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
18070	reqHeaders := make(http.Header)
18071	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18072	for k, v := range c.header_ {
18073		reqHeaders[k] = v
18074	}
18075	reqHeaders.Set("User-Agent", c.s.userAgent())
18076	if c.ifNoneMatch_ != "" {
18077		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18078	}
18079	var body io.Reader = nil
18080	c.urlParams_.Set("alt", alt)
18081	c.urlParams_.Set("prettyPrint", "false")
18082	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
18083	urls += "?" + c.urlParams_.Encode()
18084	req, err := http.NewRequest("GET", urls, body)
18085	if err != nil {
18086		return nil, err
18087	}
18088	req.Header = reqHeaders
18089	googleapi.Expand(req.URL, map[string]string{
18090		"merchantId": strconv.FormatUint(c.merchantId, 10),
18091	})
18092	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18093}
18094
18095// Do executes the "content.accounts.list" call.
18096// Exactly one of *AccountsListResponse or error will be non-nil. Any
18097// non-2xx status code is an error. Response headers are in either
18098// *AccountsListResponse.ServerResponse.Header or (if a response was
18099// returned at all) in error.(*googleapi.Error).Header. Use
18100// googleapi.IsNotModified to check whether the returned error was
18101// because http.StatusNotModified was returned.
18102func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
18103	gensupport.SetOptions(c.urlParams_, opts...)
18104	res, err := c.doRequest("json")
18105	if res != nil && res.StatusCode == http.StatusNotModified {
18106		if res.Body != nil {
18107			res.Body.Close()
18108		}
18109		return nil, &googleapi.Error{
18110			Code:   res.StatusCode,
18111			Header: res.Header,
18112		}
18113	}
18114	if err != nil {
18115		return nil, err
18116	}
18117	defer googleapi.CloseBody(res)
18118	if err := googleapi.CheckResponse(res); err != nil {
18119		return nil, err
18120	}
18121	ret := &AccountsListResponse{
18122		ServerResponse: googleapi.ServerResponse{
18123			Header:         res.Header,
18124			HTTPStatusCode: res.StatusCode,
18125		},
18126	}
18127	target := &ret
18128	if err := gensupport.DecodeResponse(target, res); err != nil {
18129		return nil, err
18130	}
18131	return ret, nil
18132	// {
18133	//   "description": "Lists the sub-accounts in your Merchant Center account.",
18134	//   "flatPath": "{merchantId}/accounts",
18135	//   "httpMethod": "GET",
18136	//   "id": "content.accounts.list",
18137	//   "parameterOrder": [
18138	//     "merchantId"
18139	//   ],
18140	//   "parameters": {
18141	//     "label": {
18142	//       "description": "If view is set to \"css\", only return accounts that are assigned label with given ID.",
18143	//       "format": "uint64",
18144	//       "location": "query",
18145	//       "type": "string"
18146	//     },
18147	//     "maxResults": {
18148	//       "description": "The maximum number of accounts to return in the response, used for paging.",
18149	//       "format": "uint32",
18150	//       "location": "query",
18151	//       "type": "integer"
18152	//     },
18153	//     "merchantId": {
18154	//       "description": "The ID of the managing account. This must be a multi-client account.",
18155	//       "format": "uint64",
18156	//       "location": "path",
18157	//       "required": true,
18158	//       "type": "string"
18159	//     },
18160	//     "name": {
18161	//       "description": "If set, only the accounts with the given name (case sensitive) will be returned.",
18162	//       "location": "query",
18163	//       "type": "string"
18164	//     },
18165	//     "pageToken": {
18166	//       "description": "The token returned by the previous request.",
18167	//       "location": "query",
18168	//       "type": "string"
18169	//     },
18170	//     "view": {
18171	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
18172	//       "enum": [
18173	//         "MERCHANT",
18174	//         "CSS"
18175	//       ],
18176	//       "enumDescriptions": [
18177	//         "Default. View is populated with Merchant Center fields.",
18178	//         "View is populated with Comparison Shopping Services fields."
18179	//       ],
18180	//       "location": "query",
18181	//       "type": "string"
18182	//     }
18183	//   },
18184	//   "path": "{merchantId}/accounts",
18185	//   "response": {
18186	//     "$ref": "AccountsListResponse"
18187	//   },
18188	//   "scopes": [
18189	//     "https://www.googleapis.com/auth/content"
18190	//   ]
18191	// }
18192
18193}
18194
18195// Pages invokes f for each page of results.
18196// A non-nil error returned from f will halt the iteration.
18197// The provided context supersedes any context provided to the Context method.
18198func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
18199	c.ctx_ = ctx
18200	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18201	for {
18202		x, err := c.Do()
18203		if err != nil {
18204			return err
18205		}
18206		if err := f(x); err != nil {
18207			return err
18208		}
18209		if x.NextPageToken == "" {
18210			return nil
18211		}
18212		c.PageToken(x.NextPageToken)
18213	}
18214}
18215
18216// method id "content.accounts.listlinks":
18217
18218type AccountsListlinksCall struct {
18219	s            *APIService
18220	merchantId   uint64
18221	accountId    uint64
18222	urlParams_   gensupport.URLParams
18223	ifNoneMatch_ string
18224	ctx_         context.Context
18225	header_      http.Header
18226}
18227
18228// Listlinks: Returns the list of accounts linked to your Merchant
18229// Center account.
18230//
18231// - accountId: The ID of the account for which to list links.
18232// - merchantId: The ID of the managing account. If this parameter is
18233//   not the same as accountId, then this account must be a multi-client
18234//   account and `accountId` must be the ID of a sub-account of this
18235//   account.
18236func (r *AccountsService) Listlinks(merchantId uint64, accountId uint64) *AccountsListlinksCall {
18237	c := &AccountsListlinksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18238	c.merchantId = merchantId
18239	c.accountId = accountId
18240	return c
18241}
18242
18243// MaxResults sets the optional parameter "maxResults": The maximum
18244// number of links to return in the response, used for pagination. The
18245// minimum allowed value is 5 results per page. If provided value is
18246// lower than 5, it will be automatically increased to 5.
18247func (c *AccountsListlinksCall) MaxResults(maxResults int64) *AccountsListlinksCall {
18248	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18249	return c
18250}
18251
18252// PageToken sets the optional parameter "pageToken": The token returned
18253// by the previous request.
18254func (c *AccountsListlinksCall) PageToken(pageToken string) *AccountsListlinksCall {
18255	c.urlParams_.Set("pageToken", pageToken)
18256	return c
18257}
18258
18259// Fields allows partial responses to be retrieved. See
18260// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18261// for more information.
18262func (c *AccountsListlinksCall) Fields(s ...googleapi.Field) *AccountsListlinksCall {
18263	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18264	return c
18265}
18266
18267// IfNoneMatch sets the optional parameter which makes the operation
18268// fail if the object's ETag matches the given value. This is useful for
18269// getting updates only after the object has changed since the last
18270// request. Use googleapi.IsNotModified to check whether the response
18271// error from Do is the result of In-None-Match.
18272func (c *AccountsListlinksCall) IfNoneMatch(entityTag string) *AccountsListlinksCall {
18273	c.ifNoneMatch_ = entityTag
18274	return c
18275}
18276
18277// Context sets the context to be used in this call's Do method. Any
18278// pending HTTP request will be aborted if the provided context is
18279// canceled.
18280func (c *AccountsListlinksCall) Context(ctx context.Context) *AccountsListlinksCall {
18281	c.ctx_ = ctx
18282	return c
18283}
18284
18285// Header returns an http.Header that can be modified by the caller to
18286// add HTTP headers to the request.
18287func (c *AccountsListlinksCall) Header() http.Header {
18288	if c.header_ == nil {
18289		c.header_ = make(http.Header)
18290	}
18291	return c.header_
18292}
18293
18294func (c *AccountsListlinksCall) doRequest(alt string) (*http.Response, error) {
18295	reqHeaders := make(http.Header)
18296	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18297	for k, v := range c.header_ {
18298		reqHeaders[k] = v
18299	}
18300	reqHeaders.Set("User-Agent", c.s.userAgent())
18301	if c.ifNoneMatch_ != "" {
18302		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18303	}
18304	var body io.Reader = nil
18305	c.urlParams_.Set("alt", alt)
18306	c.urlParams_.Set("prettyPrint", "false")
18307	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/listlinks")
18308	urls += "?" + c.urlParams_.Encode()
18309	req, err := http.NewRequest("GET", urls, body)
18310	if err != nil {
18311		return nil, err
18312	}
18313	req.Header = reqHeaders
18314	googleapi.Expand(req.URL, map[string]string{
18315		"merchantId": strconv.FormatUint(c.merchantId, 10),
18316		"accountId":  strconv.FormatUint(c.accountId, 10),
18317	})
18318	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18319}
18320
18321// Do executes the "content.accounts.listlinks" call.
18322// Exactly one of *AccountsListLinksResponse or error will be non-nil.
18323// Any non-2xx status code is an error. Response headers are in either
18324// *AccountsListLinksResponse.ServerResponse.Header or (if a response
18325// was returned at all) in error.(*googleapi.Error).Header. Use
18326// googleapi.IsNotModified to check whether the returned error was
18327// because http.StatusNotModified was returned.
18328func (c *AccountsListlinksCall) Do(opts ...googleapi.CallOption) (*AccountsListLinksResponse, error) {
18329	gensupport.SetOptions(c.urlParams_, opts...)
18330	res, err := c.doRequest("json")
18331	if res != nil && res.StatusCode == http.StatusNotModified {
18332		if res.Body != nil {
18333			res.Body.Close()
18334		}
18335		return nil, &googleapi.Error{
18336			Code:   res.StatusCode,
18337			Header: res.Header,
18338		}
18339	}
18340	if err != nil {
18341		return nil, err
18342	}
18343	defer googleapi.CloseBody(res)
18344	if err := googleapi.CheckResponse(res); err != nil {
18345		return nil, err
18346	}
18347	ret := &AccountsListLinksResponse{
18348		ServerResponse: googleapi.ServerResponse{
18349			Header:         res.Header,
18350			HTTPStatusCode: res.StatusCode,
18351		},
18352	}
18353	target := &ret
18354	if err := gensupport.DecodeResponse(target, res); err != nil {
18355		return nil, err
18356	}
18357	return ret, nil
18358	// {
18359	//   "description": "Returns the list of accounts linked to your Merchant Center account.",
18360	//   "flatPath": "{merchantId}/accounts/{accountId}/listlinks",
18361	//   "httpMethod": "GET",
18362	//   "id": "content.accounts.listlinks",
18363	//   "parameterOrder": [
18364	//     "merchantId",
18365	//     "accountId"
18366	//   ],
18367	//   "parameters": {
18368	//     "accountId": {
18369	//       "description": "The ID of the account for which to list links.",
18370	//       "format": "uint64",
18371	//       "location": "path",
18372	//       "required": true,
18373	//       "type": "string"
18374	//     },
18375	//     "maxResults": {
18376	//       "description": "The maximum number of links to return in the response, used for pagination. The minimum allowed value is 5 results per page. If provided value is lower than 5, it will be automatically increased to 5.",
18377	//       "format": "uint32",
18378	//       "location": "query",
18379	//       "type": "integer"
18380	//     },
18381	//     "merchantId": {
18382	//       "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.",
18383	//       "format": "uint64",
18384	//       "location": "path",
18385	//       "required": true,
18386	//       "type": "string"
18387	//     },
18388	//     "pageToken": {
18389	//       "description": "The token returned by the previous request.",
18390	//       "location": "query",
18391	//       "type": "string"
18392	//     }
18393	//   },
18394	//   "path": "{merchantId}/accounts/{accountId}/listlinks",
18395	//   "response": {
18396	//     "$ref": "AccountsListLinksResponse"
18397	//   },
18398	//   "scopes": [
18399	//     "https://www.googleapis.com/auth/content"
18400	//   ]
18401	// }
18402
18403}
18404
18405// Pages invokes f for each page of results.
18406// A non-nil error returned from f will halt the iteration.
18407// The provided context supersedes any context provided to the Context method.
18408func (c *AccountsListlinksCall) Pages(ctx context.Context, f func(*AccountsListLinksResponse) error) error {
18409	c.ctx_ = ctx
18410	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18411	for {
18412		x, err := c.Do()
18413		if err != nil {
18414			return err
18415		}
18416		if err := f(x); err != nil {
18417			return err
18418		}
18419		if x.NextPageToken == "" {
18420			return nil
18421		}
18422		c.PageToken(x.NextPageToken)
18423	}
18424}
18425
18426// method id "content.accounts.requestphoneverification":
18427
18428type AccountsRequestphoneverificationCall struct {
18429	s                               *APIService
18430	merchantId                      int64
18431	accountId                       int64
18432	requestphoneverificationrequest *RequestPhoneVerificationRequest
18433	urlParams_                      gensupport.URLParams
18434	ctx_                            context.Context
18435	header_                         http.Header
18436}
18437
18438// Requestphoneverification: Request verification code to start phone
18439// verification.
18440//
18441// - accountId: The ID of the account.
18442// - merchantId: The ID of the managing account. If this parameter is
18443//   not the same as accountId, then this account must be a multi-client
18444//   account and accountId must be the ID of a sub-account of this
18445//   account.
18446func (r *AccountsService) Requestphoneverification(merchantId int64, accountId int64, requestphoneverificationrequest *RequestPhoneVerificationRequest) *AccountsRequestphoneverificationCall {
18447	c := &AccountsRequestphoneverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18448	c.merchantId = merchantId
18449	c.accountId = accountId
18450	c.requestphoneverificationrequest = requestphoneverificationrequest
18451	return c
18452}
18453
18454// Fields allows partial responses to be retrieved. See
18455// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18456// for more information.
18457func (c *AccountsRequestphoneverificationCall) Fields(s ...googleapi.Field) *AccountsRequestphoneverificationCall {
18458	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18459	return c
18460}
18461
18462// Context sets the context to be used in this call's Do method. Any
18463// pending HTTP request will be aborted if the provided context is
18464// canceled.
18465func (c *AccountsRequestphoneverificationCall) Context(ctx context.Context) *AccountsRequestphoneverificationCall {
18466	c.ctx_ = ctx
18467	return c
18468}
18469
18470// Header returns an http.Header that can be modified by the caller to
18471// add HTTP headers to the request.
18472func (c *AccountsRequestphoneverificationCall) Header() http.Header {
18473	if c.header_ == nil {
18474		c.header_ = make(http.Header)
18475	}
18476	return c.header_
18477}
18478
18479func (c *AccountsRequestphoneverificationCall) doRequest(alt string) (*http.Response, error) {
18480	reqHeaders := make(http.Header)
18481	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18482	for k, v := range c.header_ {
18483		reqHeaders[k] = v
18484	}
18485	reqHeaders.Set("User-Agent", c.s.userAgent())
18486	var body io.Reader = nil
18487	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestphoneverificationrequest)
18488	if err != nil {
18489		return nil, err
18490	}
18491	reqHeaders.Set("Content-Type", "application/json")
18492	c.urlParams_.Set("alt", alt)
18493	c.urlParams_.Set("prettyPrint", "false")
18494	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/requestphoneverification")
18495	urls += "?" + c.urlParams_.Encode()
18496	req, err := http.NewRequest("POST", urls, body)
18497	if err != nil {
18498		return nil, err
18499	}
18500	req.Header = reqHeaders
18501	googleapi.Expand(req.URL, map[string]string{
18502		"merchantId": strconv.FormatInt(c.merchantId, 10),
18503		"accountId":  strconv.FormatInt(c.accountId, 10),
18504	})
18505	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18506}
18507
18508// Do executes the "content.accounts.requestphoneverification" call.
18509// Exactly one of *RequestPhoneVerificationResponse or error will be
18510// non-nil. Any non-2xx status code is an error. Response headers are in
18511// either *RequestPhoneVerificationResponse.ServerResponse.Header or (if
18512// a response was returned at all) in error.(*googleapi.Error).Header.
18513// Use googleapi.IsNotModified to check whether the returned error was
18514// because http.StatusNotModified was returned.
18515func (c *AccountsRequestphoneverificationCall) Do(opts ...googleapi.CallOption) (*RequestPhoneVerificationResponse, error) {
18516	gensupport.SetOptions(c.urlParams_, opts...)
18517	res, err := c.doRequest("json")
18518	if res != nil && res.StatusCode == http.StatusNotModified {
18519		if res.Body != nil {
18520			res.Body.Close()
18521		}
18522		return nil, &googleapi.Error{
18523			Code:   res.StatusCode,
18524			Header: res.Header,
18525		}
18526	}
18527	if err != nil {
18528		return nil, err
18529	}
18530	defer googleapi.CloseBody(res)
18531	if err := googleapi.CheckResponse(res); err != nil {
18532		return nil, err
18533	}
18534	ret := &RequestPhoneVerificationResponse{
18535		ServerResponse: googleapi.ServerResponse{
18536			Header:         res.Header,
18537			HTTPStatusCode: res.StatusCode,
18538		},
18539	}
18540	target := &ret
18541	if err := gensupport.DecodeResponse(target, res); err != nil {
18542		return nil, err
18543	}
18544	return ret, nil
18545	// {
18546	//   "description": "Request verification code to start phone verification.",
18547	//   "flatPath": "{merchantId}/accounts/{accountId}/requestphoneverification",
18548	//   "httpMethod": "POST",
18549	//   "id": "content.accounts.requestphoneverification",
18550	//   "parameterOrder": [
18551	//     "merchantId",
18552	//     "accountId"
18553	//   ],
18554	//   "parameters": {
18555	//     "accountId": {
18556	//       "description": "Required. The ID of the account.",
18557	//       "format": "int64",
18558	//       "location": "path",
18559	//       "required": true,
18560	//       "type": "string"
18561	//     },
18562	//     "merchantId": {
18563	//       "description": "Required. The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.",
18564	//       "format": "int64",
18565	//       "location": "path",
18566	//       "required": true,
18567	//       "type": "string"
18568	//     }
18569	//   },
18570	//   "path": "{merchantId}/accounts/{accountId}/requestphoneverification",
18571	//   "request": {
18572	//     "$ref": "RequestPhoneVerificationRequest"
18573	//   },
18574	//   "response": {
18575	//     "$ref": "RequestPhoneVerificationResponse"
18576	//   },
18577	//   "scopes": [
18578	//     "https://www.googleapis.com/auth/content"
18579	//   ]
18580	// }
18581
18582}
18583
18584// method id "content.accounts.update":
18585
18586type AccountsUpdateCall struct {
18587	s          *APIService
18588	merchantId uint64
18589	accountId  uint64
18590	account    *Account
18591	urlParams_ gensupport.URLParams
18592	ctx_       context.Context
18593	header_    http.Header
18594}
18595
18596// Update: Updates a Merchant Center account. Any fields that are not
18597// provided are deleted from the resource.
18598//
18599// - accountId: The ID of the account.
18600// - merchantId: The ID of the managing account. If this parameter is
18601//   not the same as accountId, then this account must be a multi-client
18602//   account and `accountId` must be the ID of a sub-account of this
18603//   account.
18604func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
18605	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18606	c.merchantId = merchantId
18607	c.accountId = accountId
18608	c.account = account
18609	return c
18610}
18611
18612// Fields allows partial responses to be retrieved. See
18613// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18614// for more information.
18615func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
18616	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18617	return c
18618}
18619
18620// Context sets the context to be used in this call's Do method. Any
18621// pending HTTP request will be aborted if the provided context is
18622// canceled.
18623func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
18624	c.ctx_ = ctx
18625	return c
18626}
18627
18628// Header returns an http.Header that can be modified by the caller to
18629// add HTTP headers to the request.
18630func (c *AccountsUpdateCall) Header() http.Header {
18631	if c.header_ == nil {
18632		c.header_ = make(http.Header)
18633	}
18634	return c.header_
18635}
18636
18637func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
18638	reqHeaders := make(http.Header)
18639	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18640	for k, v := range c.header_ {
18641		reqHeaders[k] = v
18642	}
18643	reqHeaders.Set("User-Agent", c.s.userAgent())
18644	var body io.Reader = nil
18645	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
18646	if err != nil {
18647		return nil, err
18648	}
18649	reqHeaders.Set("Content-Type", "application/json")
18650	c.urlParams_.Set("alt", alt)
18651	c.urlParams_.Set("prettyPrint", "false")
18652	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
18653	urls += "?" + c.urlParams_.Encode()
18654	req, err := http.NewRequest("PUT", urls, body)
18655	if err != nil {
18656		return nil, err
18657	}
18658	req.Header = reqHeaders
18659	googleapi.Expand(req.URL, map[string]string{
18660		"merchantId": strconv.FormatUint(c.merchantId, 10),
18661		"accountId":  strconv.FormatUint(c.accountId, 10),
18662	})
18663	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18664}
18665
18666// Do executes the "content.accounts.update" call.
18667// Exactly one of *Account or error will be non-nil. Any non-2xx status
18668// code is an error. Response headers are in either
18669// *Account.ServerResponse.Header or (if a response was returned at all)
18670// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
18671// check whether the returned error was because http.StatusNotModified
18672// was returned.
18673func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
18674	gensupport.SetOptions(c.urlParams_, opts...)
18675	res, err := c.doRequest("json")
18676	if res != nil && res.StatusCode == http.StatusNotModified {
18677		if res.Body != nil {
18678			res.Body.Close()
18679		}
18680		return nil, &googleapi.Error{
18681			Code:   res.StatusCode,
18682			Header: res.Header,
18683		}
18684	}
18685	if err != nil {
18686		return nil, err
18687	}
18688	defer googleapi.CloseBody(res)
18689	if err := googleapi.CheckResponse(res); err != nil {
18690		return nil, err
18691	}
18692	ret := &Account{
18693		ServerResponse: googleapi.ServerResponse{
18694			Header:         res.Header,
18695			HTTPStatusCode: res.StatusCode,
18696		},
18697	}
18698	target := &ret
18699	if err := gensupport.DecodeResponse(target, res); err != nil {
18700		return nil, err
18701	}
18702	return ret, nil
18703	// {
18704	//   "description": "Updates a Merchant Center account. Any fields that are not provided are deleted from the resource.",
18705	//   "flatPath": "{merchantId}/accounts/{accountId}",
18706	//   "httpMethod": "PUT",
18707	//   "id": "content.accounts.update",
18708	//   "parameterOrder": [
18709	//     "merchantId",
18710	//     "accountId"
18711	//   ],
18712	//   "parameters": {
18713	//     "accountId": {
18714	//       "description": "The ID of the account.",
18715	//       "format": "uint64",
18716	//       "location": "path",
18717	//       "required": true,
18718	//       "type": "string"
18719	//     },
18720	//     "merchantId": {
18721	//       "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.",
18722	//       "format": "uint64",
18723	//       "location": "path",
18724	//       "required": true,
18725	//       "type": "string"
18726	//     }
18727	//   },
18728	//   "path": "{merchantId}/accounts/{accountId}",
18729	//   "request": {
18730	//     "$ref": "Account"
18731	//   },
18732	//   "response": {
18733	//     "$ref": "Account"
18734	//   },
18735	//   "scopes": [
18736	//     "https://www.googleapis.com/auth/content"
18737	//   ]
18738	// }
18739
18740}
18741
18742// method id "content.accounts.updatelabels":
18743
18744type AccountsUpdatelabelsCall struct {
18745	s                           *APIService
18746	merchantId                  uint64
18747	accountId                   uint64
18748	accountsupdatelabelsrequest *AccountsUpdateLabelsRequest
18749	urlParams_                  gensupport.URLParams
18750	ctx_                        context.Context
18751	header_                     http.Header
18752}
18753
18754// Updatelabels: Updates labels that are assigned to the Merchant Center
18755// account by CSS user.
18756//
18757// - accountId: The ID of the account whose labels are updated.
18758// - merchantId: The ID of the managing account.
18759func (r *AccountsService) Updatelabels(merchantId uint64, accountId uint64, accountsupdatelabelsrequest *AccountsUpdateLabelsRequest) *AccountsUpdatelabelsCall {
18760	c := &AccountsUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18761	c.merchantId = merchantId
18762	c.accountId = accountId
18763	c.accountsupdatelabelsrequest = accountsupdatelabelsrequest
18764	return c
18765}
18766
18767// Fields allows partial responses to be retrieved. See
18768// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18769// for more information.
18770func (c *AccountsUpdatelabelsCall) Fields(s ...googleapi.Field) *AccountsUpdatelabelsCall {
18771	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18772	return c
18773}
18774
18775// Context sets the context to be used in this call's Do method. Any
18776// pending HTTP request will be aborted if the provided context is
18777// canceled.
18778func (c *AccountsUpdatelabelsCall) Context(ctx context.Context) *AccountsUpdatelabelsCall {
18779	c.ctx_ = ctx
18780	return c
18781}
18782
18783// Header returns an http.Header that can be modified by the caller to
18784// add HTTP headers to the request.
18785func (c *AccountsUpdatelabelsCall) Header() http.Header {
18786	if c.header_ == nil {
18787		c.header_ = make(http.Header)
18788	}
18789	return c.header_
18790}
18791
18792func (c *AccountsUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
18793	reqHeaders := make(http.Header)
18794	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18795	for k, v := range c.header_ {
18796		reqHeaders[k] = v
18797	}
18798	reqHeaders.Set("User-Agent", c.s.userAgent())
18799	var body io.Reader = nil
18800	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountsupdatelabelsrequest)
18801	if err != nil {
18802		return nil, err
18803	}
18804	reqHeaders.Set("Content-Type", "application/json")
18805	c.urlParams_.Set("alt", alt)
18806	c.urlParams_.Set("prettyPrint", "false")
18807	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/updatelabels")
18808	urls += "?" + c.urlParams_.Encode()
18809	req, err := http.NewRequest("POST", urls, body)
18810	if err != nil {
18811		return nil, err
18812	}
18813	req.Header = reqHeaders
18814	googleapi.Expand(req.URL, map[string]string{
18815		"merchantId": strconv.FormatUint(c.merchantId, 10),
18816		"accountId":  strconv.FormatUint(c.accountId, 10),
18817	})
18818	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18819}
18820
18821// Do executes the "content.accounts.updatelabels" call.
18822// Exactly one of *AccountsUpdateLabelsResponse or error will be
18823// non-nil. Any non-2xx status code is an error. Response headers are in
18824// either *AccountsUpdateLabelsResponse.ServerResponse.Header or (if a
18825// response was returned at all) in error.(*googleapi.Error).Header. Use
18826// googleapi.IsNotModified to check whether the returned error was
18827// because http.StatusNotModified was returned.
18828func (c *AccountsUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*AccountsUpdateLabelsResponse, error) {
18829	gensupport.SetOptions(c.urlParams_, opts...)
18830	res, err := c.doRequest("json")
18831	if res != nil && res.StatusCode == http.StatusNotModified {
18832		if res.Body != nil {
18833			res.Body.Close()
18834		}
18835		return nil, &googleapi.Error{
18836			Code:   res.StatusCode,
18837			Header: res.Header,
18838		}
18839	}
18840	if err != nil {
18841		return nil, err
18842	}
18843	defer googleapi.CloseBody(res)
18844	if err := googleapi.CheckResponse(res); err != nil {
18845		return nil, err
18846	}
18847	ret := &AccountsUpdateLabelsResponse{
18848		ServerResponse: googleapi.ServerResponse{
18849			Header:         res.Header,
18850			HTTPStatusCode: res.StatusCode,
18851		},
18852	}
18853	target := &ret
18854	if err := gensupport.DecodeResponse(target, res); err != nil {
18855		return nil, err
18856	}
18857	return ret, nil
18858	// {
18859	//   "description": "Updates labels that are assigned to the Merchant Center account by CSS user.",
18860	//   "flatPath": "{merchantId}/accounts/{accountId}/updatelabels",
18861	//   "httpMethod": "POST",
18862	//   "id": "content.accounts.updatelabels",
18863	//   "parameterOrder": [
18864	//     "merchantId",
18865	//     "accountId"
18866	//   ],
18867	//   "parameters": {
18868	//     "accountId": {
18869	//       "description": "The ID of the account whose labels are updated.",
18870	//       "format": "uint64",
18871	//       "location": "path",
18872	//       "required": true,
18873	//       "type": "string"
18874	//     },
18875	//     "merchantId": {
18876	//       "description": "The ID of the managing account.",
18877	//       "format": "uint64",
18878	//       "location": "path",
18879	//       "required": true,
18880	//       "type": "string"
18881	//     }
18882	//   },
18883	//   "path": "{merchantId}/accounts/{accountId}/updatelabels",
18884	//   "request": {
18885	//     "$ref": "AccountsUpdateLabelsRequest"
18886	//   },
18887	//   "response": {
18888	//     "$ref": "AccountsUpdateLabelsResponse"
18889	//   },
18890	//   "scopes": [
18891	//     "https://www.googleapis.com/auth/content"
18892	//   ]
18893	// }
18894
18895}
18896
18897// method id "content.accounts.verifyphonenumber":
18898
18899type AccountsVerifyphonenumberCall struct {
18900	s                        *APIService
18901	merchantId               int64
18902	accountId                int64
18903	verifyphonenumberrequest *VerifyPhoneNumberRequest
18904	urlParams_               gensupport.URLParams
18905	ctx_                     context.Context
18906	header_                  http.Header
18907}
18908
18909// Verifyphonenumber: Validates verification code to verify phone number
18910// for the account.
18911//
18912// - accountId: The ID of the account.
18913// - merchantId: The ID of the managing account. If this parameter is
18914//   not the same as accountId, then this account must be a multi-client
18915//   account and accountId must be the ID of a sub-account of this
18916//   account.
18917func (r *AccountsService) Verifyphonenumber(merchantId int64, accountId int64, verifyphonenumberrequest *VerifyPhoneNumberRequest) *AccountsVerifyphonenumberCall {
18918	c := &AccountsVerifyphonenumberCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18919	c.merchantId = merchantId
18920	c.accountId = accountId
18921	c.verifyphonenumberrequest = verifyphonenumberrequest
18922	return c
18923}
18924
18925// Fields allows partial responses to be retrieved. See
18926// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18927// for more information.
18928func (c *AccountsVerifyphonenumberCall) Fields(s ...googleapi.Field) *AccountsVerifyphonenumberCall {
18929	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18930	return c
18931}
18932
18933// Context sets the context to be used in this call's Do method. Any
18934// pending HTTP request will be aborted if the provided context is
18935// canceled.
18936func (c *AccountsVerifyphonenumberCall) Context(ctx context.Context) *AccountsVerifyphonenumberCall {
18937	c.ctx_ = ctx
18938	return c
18939}
18940
18941// Header returns an http.Header that can be modified by the caller to
18942// add HTTP headers to the request.
18943func (c *AccountsVerifyphonenumberCall) Header() http.Header {
18944	if c.header_ == nil {
18945		c.header_ = make(http.Header)
18946	}
18947	return c.header_
18948}
18949
18950func (c *AccountsVerifyphonenumberCall) doRequest(alt string) (*http.Response, error) {
18951	reqHeaders := make(http.Header)
18952	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
18953	for k, v := range c.header_ {
18954		reqHeaders[k] = v
18955	}
18956	reqHeaders.Set("User-Agent", c.s.userAgent())
18957	var body io.Reader = nil
18958	body, err := googleapi.WithoutDataWrapper.JSONReader(c.verifyphonenumberrequest)
18959	if err != nil {
18960		return nil, err
18961	}
18962	reqHeaders.Set("Content-Type", "application/json")
18963	c.urlParams_.Set("alt", alt)
18964	c.urlParams_.Set("prettyPrint", "false")
18965	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/verifyphonenumber")
18966	urls += "?" + c.urlParams_.Encode()
18967	req, err := http.NewRequest("POST", urls, body)
18968	if err != nil {
18969		return nil, err
18970	}
18971	req.Header = reqHeaders
18972	googleapi.Expand(req.URL, map[string]string{
18973		"merchantId": strconv.FormatInt(c.merchantId, 10),
18974		"accountId":  strconv.FormatInt(c.accountId, 10),
18975	})
18976	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18977}
18978
18979// Do executes the "content.accounts.verifyphonenumber" call.
18980// Exactly one of *VerifyPhoneNumberResponse or error will be non-nil.
18981// Any non-2xx status code is an error. Response headers are in either
18982// *VerifyPhoneNumberResponse.ServerResponse.Header or (if a response
18983// was returned at all) in error.(*googleapi.Error).Header. Use
18984// googleapi.IsNotModified to check whether the returned error was
18985// because http.StatusNotModified was returned.
18986func (c *AccountsVerifyphonenumberCall) Do(opts ...googleapi.CallOption) (*VerifyPhoneNumberResponse, error) {
18987	gensupport.SetOptions(c.urlParams_, opts...)
18988	res, err := c.doRequest("json")
18989	if res != nil && res.StatusCode == http.StatusNotModified {
18990		if res.Body != nil {
18991			res.Body.Close()
18992		}
18993		return nil, &googleapi.Error{
18994			Code:   res.StatusCode,
18995			Header: res.Header,
18996		}
18997	}
18998	if err != nil {
18999		return nil, err
19000	}
19001	defer googleapi.CloseBody(res)
19002	if err := googleapi.CheckResponse(res); err != nil {
19003		return nil, err
19004	}
19005	ret := &VerifyPhoneNumberResponse{
19006		ServerResponse: googleapi.ServerResponse{
19007			Header:         res.Header,
19008			HTTPStatusCode: res.StatusCode,
19009		},
19010	}
19011	target := &ret
19012	if err := gensupport.DecodeResponse(target, res); err != nil {
19013		return nil, err
19014	}
19015	return ret, nil
19016	// {
19017	//   "description": "Validates verification code to verify phone number for the account.",
19018	//   "flatPath": "{merchantId}/accounts/{accountId}/verifyphonenumber",
19019	//   "httpMethod": "POST",
19020	//   "id": "content.accounts.verifyphonenumber",
19021	//   "parameterOrder": [
19022	//     "merchantId",
19023	//     "accountId"
19024	//   ],
19025	//   "parameters": {
19026	//     "accountId": {
19027	//       "description": "Required. The ID of the account.",
19028	//       "format": "int64",
19029	//       "location": "path",
19030	//       "required": true,
19031	//       "type": "string"
19032	//     },
19033	//     "merchantId": {
19034	//       "description": "Required. The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.",
19035	//       "format": "int64",
19036	//       "location": "path",
19037	//       "required": true,
19038	//       "type": "string"
19039	//     }
19040	//   },
19041	//   "path": "{merchantId}/accounts/{accountId}/verifyphonenumber",
19042	//   "request": {
19043	//     "$ref": "VerifyPhoneNumberRequest"
19044	//   },
19045	//   "response": {
19046	//     "$ref": "VerifyPhoneNumberResponse"
19047	//   },
19048	//   "scopes": [
19049	//     "https://www.googleapis.com/auth/content"
19050	//   ]
19051	// }
19052
19053}
19054
19055// method id "content.accounts.credentials.create":
19056
19057type AccountsCredentialsCreateCall struct {
19058	s                  *APIService
19059	accountId          int64
19060	accountcredentials *AccountCredentials
19061	urlParams_         gensupport.URLParams
19062	ctx_               context.Context
19063	header_            http.Header
19064}
19065
19066// Create: Uploads credentials for the Merchant Center account. If
19067// credentials already exist for this Merchant Center account and
19068// purpose, this method updates them.
19069//
19070// - accountId: The merchant id of the account these credentials belong
19071//   to.
19072func (r *AccountsCredentialsService) Create(accountId int64, accountcredentials *AccountCredentials) *AccountsCredentialsCreateCall {
19073	c := &AccountsCredentialsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19074	c.accountId = accountId
19075	c.accountcredentials = accountcredentials
19076	return c
19077}
19078
19079// Fields allows partial responses to be retrieved. See
19080// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19081// for more information.
19082func (c *AccountsCredentialsCreateCall) Fields(s ...googleapi.Field) *AccountsCredentialsCreateCall {
19083	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19084	return c
19085}
19086
19087// Context sets the context to be used in this call's Do method. Any
19088// pending HTTP request will be aborted if the provided context is
19089// canceled.
19090func (c *AccountsCredentialsCreateCall) Context(ctx context.Context) *AccountsCredentialsCreateCall {
19091	c.ctx_ = ctx
19092	return c
19093}
19094
19095// Header returns an http.Header that can be modified by the caller to
19096// add HTTP headers to the request.
19097func (c *AccountsCredentialsCreateCall) Header() http.Header {
19098	if c.header_ == nil {
19099		c.header_ = make(http.Header)
19100	}
19101	return c.header_
19102}
19103
19104func (c *AccountsCredentialsCreateCall) doRequest(alt string) (*http.Response, error) {
19105	reqHeaders := make(http.Header)
19106	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19107	for k, v := range c.header_ {
19108		reqHeaders[k] = v
19109	}
19110	reqHeaders.Set("User-Agent", c.s.userAgent())
19111	var body io.Reader = nil
19112	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountcredentials)
19113	if err != nil {
19114		return nil, err
19115	}
19116	reqHeaders.Set("Content-Type", "application/json")
19117	c.urlParams_.Set("alt", alt)
19118	c.urlParams_.Set("prettyPrint", "false")
19119	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/credentials")
19120	urls += "?" + c.urlParams_.Encode()
19121	req, err := http.NewRequest("POST", urls, body)
19122	if err != nil {
19123		return nil, err
19124	}
19125	req.Header = reqHeaders
19126	googleapi.Expand(req.URL, map[string]string{
19127		"accountId": strconv.FormatInt(c.accountId, 10),
19128	})
19129	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19130}
19131
19132// Do executes the "content.accounts.credentials.create" call.
19133// Exactly one of *AccountCredentials or error will be non-nil. Any
19134// non-2xx status code is an error. Response headers are in either
19135// *AccountCredentials.ServerResponse.Header or (if a response was
19136// returned at all) in error.(*googleapi.Error).Header. Use
19137// googleapi.IsNotModified to check whether the returned error was
19138// because http.StatusNotModified was returned.
19139func (c *AccountsCredentialsCreateCall) Do(opts ...googleapi.CallOption) (*AccountCredentials, error) {
19140	gensupport.SetOptions(c.urlParams_, opts...)
19141	res, err := c.doRequest("json")
19142	if res != nil && res.StatusCode == http.StatusNotModified {
19143		if res.Body != nil {
19144			res.Body.Close()
19145		}
19146		return nil, &googleapi.Error{
19147			Code:   res.StatusCode,
19148			Header: res.Header,
19149		}
19150	}
19151	if err != nil {
19152		return nil, err
19153	}
19154	defer googleapi.CloseBody(res)
19155	if err := googleapi.CheckResponse(res); err != nil {
19156		return nil, err
19157	}
19158	ret := &AccountCredentials{
19159		ServerResponse: googleapi.ServerResponse{
19160			Header:         res.Header,
19161			HTTPStatusCode: res.StatusCode,
19162		},
19163	}
19164	target := &ret
19165	if err := gensupport.DecodeResponse(target, res); err != nil {
19166		return nil, err
19167	}
19168	return ret, nil
19169	// {
19170	//   "description": "Uploads credentials for the Merchant Center account. If credentials already exist for this Merchant Center account and purpose, this method updates them.",
19171	//   "flatPath": "accounts/{accountId}/credentials",
19172	//   "httpMethod": "POST",
19173	//   "id": "content.accounts.credentials.create",
19174	//   "parameterOrder": [
19175	//     "accountId"
19176	//   ],
19177	//   "parameters": {
19178	//     "accountId": {
19179	//       "description": "Required. The merchant id of the account these credentials belong to.",
19180	//       "format": "int64",
19181	//       "location": "path",
19182	//       "required": true,
19183	//       "type": "string"
19184	//     }
19185	//   },
19186	//   "path": "accounts/{accountId}/credentials",
19187	//   "request": {
19188	//     "$ref": "AccountCredentials"
19189	//   },
19190	//   "response": {
19191	//     "$ref": "AccountCredentials"
19192	//   },
19193	//   "scopes": [
19194	//     "https://www.googleapis.com/auth/content"
19195	//   ]
19196	// }
19197
19198}
19199
19200// method id "content.accounts.labels.create":
19201
19202type AccountsLabelsCreateCall struct {
19203	s            *APIService
19204	accountId    int64
19205	accountlabel *AccountLabel
19206	urlParams_   gensupport.URLParams
19207	ctx_         context.Context
19208	header_      http.Header
19209}
19210
19211// Create: Creates a new label, not assigned to any account.
19212//
19213// - accountId: The id of the account this label belongs to.
19214func (r *AccountsLabelsService) Create(accountId int64, accountlabel *AccountLabel) *AccountsLabelsCreateCall {
19215	c := &AccountsLabelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19216	c.accountId = accountId
19217	c.accountlabel = accountlabel
19218	return c
19219}
19220
19221// Fields allows partial responses to be retrieved. See
19222// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19223// for more information.
19224func (c *AccountsLabelsCreateCall) Fields(s ...googleapi.Field) *AccountsLabelsCreateCall {
19225	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19226	return c
19227}
19228
19229// Context sets the context to be used in this call's Do method. Any
19230// pending HTTP request will be aborted if the provided context is
19231// canceled.
19232func (c *AccountsLabelsCreateCall) Context(ctx context.Context) *AccountsLabelsCreateCall {
19233	c.ctx_ = ctx
19234	return c
19235}
19236
19237// Header returns an http.Header that can be modified by the caller to
19238// add HTTP headers to the request.
19239func (c *AccountsLabelsCreateCall) Header() http.Header {
19240	if c.header_ == nil {
19241		c.header_ = make(http.Header)
19242	}
19243	return c.header_
19244}
19245
19246func (c *AccountsLabelsCreateCall) doRequest(alt string) (*http.Response, error) {
19247	reqHeaders := make(http.Header)
19248	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19249	for k, v := range c.header_ {
19250		reqHeaders[k] = v
19251	}
19252	reqHeaders.Set("User-Agent", c.s.userAgent())
19253	var body io.Reader = nil
19254	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
19255	if err != nil {
19256		return nil, err
19257	}
19258	reqHeaders.Set("Content-Type", "application/json")
19259	c.urlParams_.Set("alt", alt)
19260	c.urlParams_.Set("prettyPrint", "false")
19261	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels")
19262	urls += "?" + c.urlParams_.Encode()
19263	req, err := http.NewRequest("POST", urls, body)
19264	if err != nil {
19265		return nil, err
19266	}
19267	req.Header = reqHeaders
19268	googleapi.Expand(req.URL, map[string]string{
19269		"accountId": strconv.FormatInt(c.accountId, 10),
19270	})
19271	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19272}
19273
19274// Do executes the "content.accounts.labels.create" call.
19275// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
19276// status code is an error. Response headers are in either
19277// *AccountLabel.ServerResponse.Header or (if a response was returned at
19278// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19279// to check whether the returned error was because
19280// http.StatusNotModified was returned.
19281func (c *AccountsLabelsCreateCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
19282	gensupport.SetOptions(c.urlParams_, opts...)
19283	res, err := c.doRequest("json")
19284	if res != nil && res.StatusCode == http.StatusNotModified {
19285		if res.Body != nil {
19286			res.Body.Close()
19287		}
19288		return nil, &googleapi.Error{
19289			Code:   res.StatusCode,
19290			Header: res.Header,
19291		}
19292	}
19293	if err != nil {
19294		return nil, err
19295	}
19296	defer googleapi.CloseBody(res)
19297	if err := googleapi.CheckResponse(res); err != nil {
19298		return nil, err
19299	}
19300	ret := &AccountLabel{
19301		ServerResponse: googleapi.ServerResponse{
19302			Header:         res.Header,
19303			HTTPStatusCode: res.StatusCode,
19304		},
19305	}
19306	target := &ret
19307	if err := gensupport.DecodeResponse(target, res); err != nil {
19308		return nil, err
19309	}
19310	return ret, nil
19311	// {
19312	//   "description": "Creates a new label, not assigned to any account.",
19313	//   "flatPath": "accounts/{accountId}/labels",
19314	//   "httpMethod": "POST",
19315	//   "id": "content.accounts.labels.create",
19316	//   "parameterOrder": [
19317	//     "accountId"
19318	//   ],
19319	//   "parameters": {
19320	//     "accountId": {
19321	//       "description": "Required. The id of the account this label belongs to.",
19322	//       "format": "int64",
19323	//       "location": "path",
19324	//       "required": true,
19325	//       "type": "string"
19326	//     }
19327	//   },
19328	//   "path": "accounts/{accountId}/labels",
19329	//   "request": {
19330	//     "$ref": "AccountLabel"
19331	//   },
19332	//   "response": {
19333	//     "$ref": "AccountLabel"
19334	//   },
19335	//   "scopes": [
19336	//     "https://www.googleapis.com/auth/content"
19337	//   ]
19338	// }
19339
19340}
19341
19342// method id "content.accounts.labels.delete":
19343
19344type AccountsLabelsDeleteCall struct {
19345	s          *APIService
19346	accountId  int64
19347	labelId    int64
19348	urlParams_ gensupport.URLParams
19349	ctx_       context.Context
19350	header_    http.Header
19351}
19352
19353// Delete: Deletes a label and removes it from all accounts to which it
19354// was assigned.
19355//
19356// - accountId: The id of the account that owns the label.
19357// - labelId: The id of the label to delete.
19358func (r *AccountsLabelsService) Delete(accountId int64, labelId int64) *AccountsLabelsDeleteCall {
19359	c := &AccountsLabelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19360	c.accountId = accountId
19361	c.labelId = labelId
19362	return c
19363}
19364
19365// Fields allows partial responses to be retrieved. See
19366// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19367// for more information.
19368func (c *AccountsLabelsDeleteCall) Fields(s ...googleapi.Field) *AccountsLabelsDeleteCall {
19369	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19370	return c
19371}
19372
19373// Context sets the context to be used in this call's Do method. Any
19374// pending HTTP request will be aborted if the provided context is
19375// canceled.
19376func (c *AccountsLabelsDeleteCall) Context(ctx context.Context) *AccountsLabelsDeleteCall {
19377	c.ctx_ = ctx
19378	return c
19379}
19380
19381// Header returns an http.Header that can be modified by the caller to
19382// add HTTP headers to the request.
19383func (c *AccountsLabelsDeleteCall) Header() http.Header {
19384	if c.header_ == nil {
19385		c.header_ = make(http.Header)
19386	}
19387	return c.header_
19388}
19389
19390func (c *AccountsLabelsDeleteCall) doRequest(alt string) (*http.Response, error) {
19391	reqHeaders := make(http.Header)
19392	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19393	for k, v := range c.header_ {
19394		reqHeaders[k] = v
19395	}
19396	reqHeaders.Set("User-Agent", c.s.userAgent())
19397	var body io.Reader = nil
19398	c.urlParams_.Set("alt", alt)
19399	c.urlParams_.Set("prettyPrint", "false")
19400	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels/{labelId}")
19401	urls += "?" + c.urlParams_.Encode()
19402	req, err := http.NewRequest("DELETE", urls, body)
19403	if err != nil {
19404		return nil, err
19405	}
19406	req.Header = reqHeaders
19407	googleapi.Expand(req.URL, map[string]string{
19408		"accountId": strconv.FormatInt(c.accountId, 10),
19409		"labelId":   strconv.FormatInt(c.labelId, 10),
19410	})
19411	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19412}
19413
19414// Do executes the "content.accounts.labels.delete" call.
19415func (c *AccountsLabelsDeleteCall) Do(opts ...googleapi.CallOption) error {
19416	gensupport.SetOptions(c.urlParams_, opts...)
19417	res, err := c.doRequest("json")
19418	if err != nil {
19419		return err
19420	}
19421	defer googleapi.CloseBody(res)
19422	if err := googleapi.CheckResponse(res); err != nil {
19423		return err
19424	}
19425	return nil
19426	// {
19427	//   "description": "Deletes a label and removes it from all accounts to which it was assigned.",
19428	//   "flatPath": "accounts/{accountId}/labels/{labelId}",
19429	//   "httpMethod": "DELETE",
19430	//   "id": "content.accounts.labels.delete",
19431	//   "parameterOrder": [
19432	//     "accountId",
19433	//     "labelId"
19434	//   ],
19435	//   "parameters": {
19436	//     "accountId": {
19437	//       "description": "Required. The id of the account that owns the label.",
19438	//       "format": "int64",
19439	//       "location": "path",
19440	//       "required": true,
19441	//       "type": "string"
19442	//     },
19443	//     "labelId": {
19444	//       "description": "Required. The id of the label to delete.",
19445	//       "format": "int64",
19446	//       "location": "path",
19447	//       "required": true,
19448	//       "type": "string"
19449	//     }
19450	//   },
19451	//   "path": "accounts/{accountId}/labels/{labelId}",
19452	//   "scopes": [
19453	//     "https://www.googleapis.com/auth/content"
19454	//   ]
19455	// }
19456
19457}
19458
19459// method id "content.accounts.labels.list":
19460
19461type AccountsLabelsListCall struct {
19462	s            *APIService
19463	accountId    int64
19464	urlParams_   gensupport.URLParams
19465	ifNoneMatch_ string
19466	ctx_         context.Context
19467	header_      http.Header
19468}
19469
19470// List: Lists the labels assigned to an account.
19471//
19472// - accountId: The account id for whose labels are to be listed.
19473func (r *AccountsLabelsService) List(accountId int64) *AccountsLabelsListCall {
19474	c := &AccountsLabelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19475	c.accountId = accountId
19476	return c
19477}
19478
19479// PageSize sets the optional parameter "pageSize": The maximum number
19480// of labels to return. The service may return fewer than this value. If
19481// unspecified, at most 50 labels will be returned. The maximum value is
19482// 1000; values above 1000 will be coerced to 1000.
19483func (c *AccountsLabelsListCall) PageSize(pageSize int64) *AccountsLabelsListCall {
19484	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
19485	return c
19486}
19487
19488// PageToken sets the optional parameter "pageToken": A page token,
19489// received from a previous `ListAccountLabels` call. Provide this to
19490// retrieve the subsequent page. When paginating, all other parameters
19491// provided to `ListAccountLabels` must match the call that provided the
19492// page token.
19493func (c *AccountsLabelsListCall) PageToken(pageToken string) *AccountsLabelsListCall {
19494	c.urlParams_.Set("pageToken", pageToken)
19495	return c
19496}
19497
19498// Fields allows partial responses to be retrieved. See
19499// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19500// for more information.
19501func (c *AccountsLabelsListCall) Fields(s ...googleapi.Field) *AccountsLabelsListCall {
19502	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19503	return c
19504}
19505
19506// IfNoneMatch sets the optional parameter which makes the operation
19507// fail if the object's ETag matches the given value. This is useful for
19508// getting updates only after the object has changed since the last
19509// request. Use googleapi.IsNotModified to check whether the response
19510// error from Do is the result of In-None-Match.
19511func (c *AccountsLabelsListCall) IfNoneMatch(entityTag string) *AccountsLabelsListCall {
19512	c.ifNoneMatch_ = entityTag
19513	return c
19514}
19515
19516// Context sets the context to be used in this call's Do method. Any
19517// pending HTTP request will be aborted if the provided context is
19518// canceled.
19519func (c *AccountsLabelsListCall) Context(ctx context.Context) *AccountsLabelsListCall {
19520	c.ctx_ = ctx
19521	return c
19522}
19523
19524// Header returns an http.Header that can be modified by the caller to
19525// add HTTP headers to the request.
19526func (c *AccountsLabelsListCall) Header() http.Header {
19527	if c.header_ == nil {
19528		c.header_ = make(http.Header)
19529	}
19530	return c.header_
19531}
19532
19533func (c *AccountsLabelsListCall) doRequest(alt string) (*http.Response, error) {
19534	reqHeaders := make(http.Header)
19535	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19536	for k, v := range c.header_ {
19537		reqHeaders[k] = v
19538	}
19539	reqHeaders.Set("User-Agent", c.s.userAgent())
19540	if c.ifNoneMatch_ != "" {
19541		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19542	}
19543	var body io.Reader = nil
19544	c.urlParams_.Set("alt", alt)
19545	c.urlParams_.Set("prettyPrint", "false")
19546	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels")
19547	urls += "?" + c.urlParams_.Encode()
19548	req, err := http.NewRequest("GET", urls, body)
19549	if err != nil {
19550		return nil, err
19551	}
19552	req.Header = reqHeaders
19553	googleapi.Expand(req.URL, map[string]string{
19554		"accountId": strconv.FormatInt(c.accountId, 10),
19555	})
19556	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19557}
19558
19559// Do executes the "content.accounts.labels.list" call.
19560// Exactly one of *ListAccountLabelsResponse or error will be non-nil.
19561// Any non-2xx status code is an error. Response headers are in either
19562// *ListAccountLabelsResponse.ServerResponse.Header or (if a response
19563// was returned at all) in error.(*googleapi.Error).Header. Use
19564// googleapi.IsNotModified to check whether the returned error was
19565// because http.StatusNotModified was returned.
19566func (c *AccountsLabelsListCall) Do(opts ...googleapi.CallOption) (*ListAccountLabelsResponse, error) {
19567	gensupport.SetOptions(c.urlParams_, opts...)
19568	res, err := c.doRequest("json")
19569	if res != nil && res.StatusCode == http.StatusNotModified {
19570		if res.Body != nil {
19571			res.Body.Close()
19572		}
19573		return nil, &googleapi.Error{
19574			Code:   res.StatusCode,
19575			Header: res.Header,
19576		}
19577	}
19578	if err != nil {
19579		return nil, err
19580	}
19581	defer googleapi.CloseBody(res)
19582	if err := googleapi.CheckResponse(res); err != nil {
19583		return nil, err
19584	}
19585	ret := &ListAccountLabelsResponse{
19586		ServerResponse: googleapi.ServerResponse{
19587			Header:         res.Header,
19588			HTTPStatusCode: res.StatusCode,
19589		},
19590	}
19591	target := &ret
19592	if err := gensupport.DecodeResponse(target, res); err != nil {
19593		return nil, err
19594	}
19595	return ret, nil
19596	// {
19597	//   "description": "Lists the labels assigned to an account.",
19598	//   "flatPath": "accounts/{accountId}/labels",
19599	//   "httpMethod": "GET",
19600	//   "id": "content.accounts.labels.list",
19601	//   "parameterOrder": [
19602	//     "accountId"
19603	//   ],
19604	//   "parameters": {
19605	//     "accountId": {
19606	//       "description": "Required. The account id for whose labels are to be listed.",
19607	//       "format": "int64",
19608	//       "location": "path",
19609	//       "required": true,
19610	//       "type": "string"
19611	//     },
19612	//     "pageSize": {
19613	//       "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.",
19614	//       "format": "int32",
19615	//       "location": "query",
19616	//       "type": "integer"
19617	//     },
19618	//     "pageToken": {
19619	//       "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.",
19620	//       "location": "query",
19621	//       "type": "string"
19622	//     }
19623	//   },
19624	//   "path": "accounts/{accountId}/labels",
19625	//   "response": {
19626	//     "$ref": "ListAccountLabelsResponse"
19627	//   },
19628	//   "scopes": [
19629	//     "https://www.googleapis.com/auth/content"
19630	//   ]
19631	// }
19632
19633}
19634
19635// Pages invokes f for each page of results.
19636// A non-nil error returned from f will halt the iteration.
19637// The provided context supersedes any context provided to the Context method.
19638func (c *AccountsLabelsListCall) Pages(ctx context.Context, f func(*ListAccountLabelsResponse) error) error {
19639	c.ctx_ = ctx
19640	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19641	for {
19642		x, err := c.Do()
19643		if err != nil {
19644			return err
19645		}
19646		if err := f(x); err != nil {
19647			return err
19648		}
19649		if x.NextPageToken == "" {
19650			return nil
19651		}
19652		c.PageToken(x.NextPageToken)
19653	}
19654}
19655
19656// method id "content.accounts.labels.patch":
19657
19658type AccountsLabelsPatchCall struct {
19659	s            *APIService
19660	accountId    int64
19661	labelId      int64
19662	accountlabel *AccountLabel
19663	urlParams_   gensupport.URLParams
19664	ctx_         context.Context
19665	header_      http.Header
19666}
19667
19668// Patch: Updates a label.
19669//
19670// - accountId: The id of the account this label belongs to.
19671// - labelId: The id of the label to update.
19672func (r *AccountsLabelsService) Patch(accountId int64, labelId int64, accountlabel *AccountLabel) *AccountsLabelsPatchCall {
19673	c := &AccountsLabelsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19674	c.accountId = accountId
19675	c.labelId = labelId
19676	c.accountlabel = accountlabel
19677	return c
19678}
19679
19680// Fields allows partial responses to be retrieved. See
19681// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19682// for more information.
19683func (c *AccountsLabelsPatchCall) Fields(s ...googleapi.Field) *AccountsLabelsPatchCall {
19684	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19685	return c
19686}
19687
19688// Context sets the context to be used in this call's Do method. Any
19689// pending HTTP request will be aborted if the provided context is
19690// canceled.
19691func (c *AccountsLabelsPatchCall) Context(ctx context.Context) *AccountsLabelsPatchCall {
19692	c.ctx_ = ctx
19693	return c
19694}
19695
19696// Header returns an http.Header that can be modified by the caller to
19697// add HTTP headers to the request.
19698func (c *AccountsLabelsPatchCall) Header() http.Header {
19699	if c.header_ == nil {
19700		c.header_ = make(http.Header)
19701	}
19702	return c.header_
19703}
19704
19705func (c *AccountsLabelsPatchCall) doRequest(alt string) (*http.Response, error) {
19706	reqHeaders := make(http.Header)
19707	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19708	for k, v := range c.header_ {
19709		reqHeaders[k] = v
19710	}
19711	reqHeaders.Set("User-Agent", c.s.userAgent())
19712	var body io.Reader = nil
19713	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
19714	if err != nil {
19715		return nil, err
19716	}
19717	reqHeaders.Set("Content-Type", "application/json")
19718	c.urlParams_.Set("alt", alt)
19719	c.urlParams_.Set("prettyPrint", "false")
19720	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels/{labelId}")
19721	urls += "?" + c.urlParams_.Encode()
19722	req, err := http.NewRequest("PATCH", urls, body)
19723	if err != nil {
19724		return nil, err
19725	}
19726	req.Header = reqHeaders
19727	googleapi.Expand(req.URL, map[string]string{
19728		"accountId": strconv.FormatInt(c.accountId, 10),
19729		"labelId":   strconv.FormatInt(c.labelId, 10),
19730	})
19731	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19732}
19733
19734// Do executes the "content.accounts.labels.patch" call.
19735// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
19736// status code is an error. Response headers are in either
19737// *AccountLabel.ServerResponse.Header or (if a response was returned at
19738// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19739// to check whether the returned error was because
19740// http.StatusNotModified was returned.
19741func (c *AccountsLabelsPatchCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
19742	gensupport.SetOptions(c.urlParams_, opts...)
19743	res, err := c.doRequest("json")
19744	if res != nil && res.StatusCode == http.StatusNotModified {
19745		if res.Body != nil {
19746			res.Body.Close()
19747		}
19748		return nil, &googleapi.Error{
19749			Code:   res.StatusCode,
19750			Header: res.Header,
19751		}
19752	}
19753	if err != nil {
19754		return nil, err
19755	}
19756	defer googleapi.CloseBody(res)
19757	if err := googleapi.CheckResponse(res); err != nil {
19758		return nil, err
19759	}
19760	ret := &AccountLabel{
19761		ServerResponse: googleapi.ServerResponse{
19762			Header:         res.Header,
19763			HTTPStatusCode: res.StatusCode,
19764		},
19765	}
19766	target := &ret
19767	if err := gensupport.DecodeResponse(target, res); err != nil {
19768		return nil, err
19769	}
19770	return ret, nil
19771	// {
19772	//   "description": "Updates a label.",
19773	//   "flatPath": "accounts/{accountId}/labels/{labelId}",
19774	//   "httpMethod": "PATCH",
19775	//   "id": "content.accounts.labels.patch",
19776	//   "parameterOrder": [
19777	//     "accountId",
19778	//     "labelId"
19779	//   ],
19780	//   "parameters": {
19781	//     "accountId": {
19782	//       "description": "Required. The id of the account this label belongs to.",
19783	//       "format": "int64",
19784	//       "location": "path",
19785	//       "required": true,
19786	//       "type": "string"
19787	//     },
19788	//     "labelId": {
19789	//       "description": "Required. The id of the label to update.",
19790	//       "format": "int64",
19791	//       "location": "path",
19792	//       "required": true,
19793	//       "type": "string"
19794	//     }
19795	//   },
19796	//   "path": "accounts/{accountId}/labels/{labelId}",
19797	//   "request": {
19798	//     "$ref": "AccountLabel"
19799	//   },
19800	//   "response": {
19801	//     "$ref": "AccountLabel"
19802	//   },
19803	//   "scopes": [
19804	//     "https://www.googleapis.com/auth/content"
19805	//   ]
19806	// }
19807
19808}
19809
19810// method id "content.accounts.returncarrier.create":
19811
19812type AccountsReturncarrierCreateCall struct {
19813	s                    *APIService
19814	accountId            int64
19815	accountreturncarrier *AccountReturnCarrier
19816	urlParams_           gensupport.URLParams
19817	ctx_                 context.Context
19818	header_              http.Header
19819}
19820
19821// Create: Links return carrier to a merchant account.
19822//
19823// - accountId: The Merchant Center Account Id under which the Return
19824//   Carrier is to be linked.
19825func (r *AccountsReturncarrierService) Create(accountId int64, accountreturncarrier *AccountReturnCarrier) *AccountsReturncarrierCreateCall {
19826	c := &AccountsReturncarrierCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19827	c.accountId = accountId
19828	c.accountreturncarrier = accountreturncarrier
19829	return c
19830}
19831
19832// Fields allows partial responses to be retrieved. See
19833// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19834// for more information.
19835func (c *AccountsReturncarrierCreateCall) Fields(s ...googleapi.Field) *AccountsReturncarrierCreateCall {
19836	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19837	return c
19838}
19839
19840// Context sets the context to be used in this call's Do method. Any
19841// pending HTTP request will be aborted if the provided context is
19842// canceled.
19843func (c *AccountsReturncarrierCreateCall) Context(ctx context.Context) *AccountsReturncarrierCreateCall {
19844	c.ctx_ = ctx
19845	return c
19846}
19847
19848// Header returns an http.Header that can be modified by the caller to
19849// add HTTP headers to the request.
19850func (c *AccountsReturncarrierCreateCall) Header() http.Header {
19851	if c.header_ == nil {
19852		c.header_ = make(http.Header)
19853	}
19854	return c.header_
19855}
19856
19857func (c *AccountsReturncarrierCreateCall) doRequest(alt string) (*http.Response, error) {
19858	reqHeaders := make(http.Header)
19859	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
19860	for k, v := range c.header_ {
19861		reqHeaders[k] = v
19862	}
19863	reqHeaders.Set("User-Agent", c.s.userAgent())
19864	var body io.Reader = nil
19865	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountreturncarrier)
19866	if err != nil {
19867		return nil, err
19868	}
19869	reqHeaders.Set("Content-Type", "application/json")
19870	c.urlParams_.Set("alt", alt)
19871	c.urlParams_.Set("prettyPrint", "false")
19872	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier")
19873	urls += "?" + c.urlParams_.Encode()
19874	req, err := http.NewRequest("POST", urls, body)
19875	if err != nil {
19876		return nil, err
19877	}
19878	req.Header = reqHeaders
19879	googleapi.Expand(req.URL, map[string]string{
19880		"accountId": strconv.FormatInt(c.accountId, 10),
19881	})
19882	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19883}
19884
19885// Do executes the "content.accounts.returncarrier.create" call.
19886// Exactly one of *AccountReturnCarrier or error will be non-nil. Any
19887// non-2xx status code is an error. Response headers are in either
19888// *AccountReturnCarrier.ServerResponse.Header or (if a response was
19889// returned at all) in error.(*googleapi.Error).Header. Use
19890// googleapi.IsNotModified to check whether the returned error was
19891// because http.StatusNotModified was returned.
19892func (c *AccountsReturncarrierCreateCall) Do(opts ...googleapi.CallOption) (*AccountReturnCarrier, error) {
19893	gensupport.SetOptions(c.urlParams_, opts...)
19894	res, err := c.doRequest("json")
19895	if res != nil && res.StatusCode == http.StatusNotModified {
19896		if res.Body != nil {
19897			res.Body.Close()
19898		}
19899		return nil, &googleapi.Error{
19900			Code:   res.StatusCode,
19901			Header: res.Header,
19902		}
19903	}
19904	if err != nil {
19905		return nil, err
19906	}
19907	defer googleapi.CloseBody(res)
19908	if err := googleapi.CheckResponse(res); err != nil {
19909		return nil, err
19910	}
19911	ret := &AccountReturnCarrier{
19912		ServerResponse: googleapi.ServerResponse{
19913			Header:         res.Header,
19914			HTTPStatusCode: res.StatusCode,
19915		},
19916	}
19917	target := &ret
19918	if err := gensupport.DecodeResponse(target, res); err != nil {
19919		return nil, err
19920	}
19921	return ret, nil
19922	// {
19923	//   "description": "Links return carrier to a merchant account.",
19924	//   "flatPath": "accounts/{accountId}/returncarrier",
19925	//   "httpMethod": "POST",
19926	//   "id": "content.accounts.returncarrier.create",
19927	//   "parameterOrder": [
19928	//     "accountId"
19929	//   ],
19930	//   "parameters": {
19931	//     "accountId": {
19932	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
19933	//       "format": "int64",
19934	//       "location": "path",
19935	//       "required": true,
19936	//       "type": "string"
19937	//     }
19938	//   },
19939	//   "path": "accounts/{accountId}/returncarrier",
19940	//   "request": {
19941	//     "$ref": "AccountReturnCarrier"
19942	//   },
19943	//   "response": {
19944	//     "$ref": "AccountReturnCarrier"
19945	//   },
19946	//   "scopes": [
19947	//     "https://www.googleapis.com/auth/content"
19948	//   ]
19949	// }
19950
19951}
19952
19953// method id "content.accounts.returncarrier.delete":
19954
19955type AccountsReturncarrierDeleteCall struct {
19956	s                *APIService
19957	accountId        int64
19958	carrierAccountId int64
19959	urlParams_       gensupport.URLParams
19960	ctx_             context.Context
19961	header_          http.Header
19962}
19963
19964// Delete: Delete a return carrier in the merchant account.
19965//
19966// - accountId: The Merchant Center Account Id under which the Return
19967//   Carrier is to be linked.
19968// - carrierAccountId: The Google-provided unique carrier ID, used to
19969//   update the resource.
19970func (r *AccountsReturncarrierService) Delete(accountId int64, carrierAccountId int64) *AccountsReturncarrierDeleteCall {
19971	c := &AccountsReturncarrierDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19972	c.accountId = accountId
19973	c.carrierAccountId = carrierAccountId
19974	return c
19975}
19976
19977// Fields allows partial responses to be retrieved. See
19978// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19979// for more information.
19980func (c *AccountsReturncarrierDeleteCall) Fields(s ...googleapi.Field) *AccountsReturncarrierDeleteCall {
19981	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19982	return c
19983}
19984
19985// Context sets the context to be used in this call's Do method. Any
19986// pending HTTP request will be aborted if the provided context is
19987// canceled.
19988func (c *AccountsReturncarrierDeleteCall) Context(ctx context.Context) *AccountsReturncarrierDeleteCall {
19989	c.ctx_ = ctx
19990	return c
19991}
19992
19993// Header returns an http.Header that can be modified by the caller to
19994// add HTTP headers to the request.
19995func (c *AccountsReturncarrierDeleteCall) Header() http.Header {
19996	if c.header_ == nil {
19997		c.header_ = make(http.Header)
19998	}
19999	return c.header_
20000}
20001
20002func (c *AccountsReturncarrierDeleteCall) doRequest(alt string) (*http.Response, error) {
20003	reqHeaders := make(http.Header)
20004	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20005	for k, v := range c.header_ {
20006		reqHeaders[k] = v
20007	}
20008	reqHeaders.Set("User-Agent", c.s.userAgent())
20009	var body io.Reader = nil
20010	c.urlParams_.Set("alt", alt)
20011	c.urlParams_.Set("prettyPrint", "false")
20012	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier/{carrierAccountId}")
20013	urls += "?" + c.urlParams_.Encode()
20014	req, err := http.NewRequest("DELETE", urls, body)
20015	if err != nil {
20016		return nil, err
20017	}
20018	req.Header = reqHeaders
20019	googleapi.Expand(req.URL, map[string]string{
20020		"accountId":        strconv.FormatInt(c.accountId, 10),
20021		"carrierAccountId": strconv.FormatInt(c.carrierAccountId, 10),
20022	})
20023	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20024}
20025
20026// Do executes the "content.accounts.returncarrier.delete" call.
20027func (c *AccountsReturncarrierDeleteCall) Do(opts ...googleapi.CallOption) error {
20028	gensupport.SetOptions(c.urlParams_, opts...)
20029	res, err := c.doRequest("json")
20030	if err != nil {
20031		return err
20032	}
20033	defer googleapi.CloseBody(res)
20034	if err := googleapi.CheckResponse(res); err != nil {
20035		return err
20036	}
20037	return nil
20038	// {
20039	//   "description": "Delete a return carrier in the merchant account.",
20040	//   "flatPath": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20041	//   "httpMethod": "DELETE",
20042	//   "id": "content.accounts.returncarrier.delete",
20043	//   "parameterOrder": [
20044	//     "accountId",
20045	//     "carrierAccountId"
20046	//   ],
20047	//   "parameters": {
20048	//     "accountId": {
20049	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20050	//       "format": "int64",
20051	//       "location": "path",
20052	//       "required": true,
20053	//       "type": "string"
20054	//     },
20055	//     "carrierAccountId": {
20056	//       "description": "Required. The Google-provided unique carrier ID, used to update the resource.",
20057	//       "format": "int64",
20058	//       "location": "path",
20059	//       "required": true,
20060	//       "type": "string"
20061	//     }
20062	//   },
20063	//   "path": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20064	//   "scopes": [
20065	//     "https://www.googleapis.com/auth/content"
20066	//   ]
20067	// }
20068
20069}
20070
20071// method id "content.accounts.returncarrier.list":
20072
20073type AccountsReturncarrierListCall struct {
20074	s            *APIService
20075	accountId    int64
20076	urlParams_   gensupport.URLParams
20077	ifNoneMatch_ string
20078	ctx_         context.Context
20079	header_      http.Header
20080}
20081
20082// List: Lists available return carriers in the merchant account.
20083//
20084// - accountId: The Merchant Center Account Id under which the Return
20085//   Carrier is to be linked.
20086func (r *AccountsReturncarrierService) List(accountId int64) *AccountsReturncarrierListCall {
20087	c := &AccountsReturncarrierListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20088	c.accountId = accountId
20089	return c
20090}
20091
20092// Fields allows partial responses to be retrieved. See
20093// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20094// for more information.
20095func (c *AccountsReturncarrierListCall) Fields(s ...googleapi.Field) *AccountsReturncarrierListCall {
20096	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20097	return c
20098}
20099
20100// IfNoneMatch sets the optional parameter which makes the operation
20101// fail if the object's ETag matches the given value. This is useful for
20102// getting updates only after the object has changed since the last
20103// request. Use googleapi.IsNotModified to check whether the response
20104// error from Do is the result of In-None-Match.
20105func (c *AccountsReturncarrierListCall) IfNoneMatch(entityTag string) *AccountsReturncarrierListCall {
20106	c.ifNoneMatch_ = entityTag
20107	return c
20108}
20109
20110// Context sets the context to be used in this call's Do method. Any
20111// pending HTTP request will be aborted if the provided context is
20112// canceled.
20113func (c *AccountsReturncarrierListCall) Context(ctx context.Context) *AccountsReturncarrierListCall {
20114	c.ctx_ = ctx
20115	return c
20116}
20117
20118// Header returns an http.Header that can be modified by the caller to
20119// add HTTP headers to the request.
20120func (c *AccountsReturncarrierListCall) Header() http.Header {
20121	if c.header_ == nil {
20122		c.header_ = make(http.Header)
20123	}
20124	return c.header_
20125}
20126
20127func (c *AccountsReturncarrierListCall) doRequest(alt string) (*http.Response, error) {
20128	reqHeaders := make(http.Header)
20129	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20130	for k, v := range c.header_ {
20131		reqHeaders[k] = v
20132	}
20133	reqHeaders.Set("User-Agent", c.s.userAgent())
20134	if c.ifNoneMatch_ != "" {
20135		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20136	}
20137	var body io.Reader = nil
20138	c.urlParams_.Set("alt", alt)
20139	c.urlParams_.Set("prettyPrint", "false")
20140	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier")
20141	urls += "?" + c.urlParams_.Encode()
20142	req, err := http.NewRequest("GET", urls, body)
20143	if err != nil {
20144		return nil, err
20145	}
20146	req.Header = reqHeaders
20147	googleapi.Expand(req.URL, map[string]string{
20148		"accountId": strconv.FormatInt(c.accountId, 10),
20149	})
20150	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20151}
20152
20153// Do executes the "content.accounts.returncarrier.list" call.
20154// Exactly one of *ListAccountReturnCarrierResponse or error will be
20155// non-nil. Any non-2xx status code is an error. Response headers are in
20156// either *ListAccountReturnCarrierResponse.ServerResponse.Header or (if
20157// a response was returned at all) in error.(*googleapi.Error).Header.
20158// Use googleapi.IsNotModified to check whether the returned error was
20159// because http.StatusNotModified was returned.
20160func (c *AccountsReturncarrierListCall) Do(opts ...googleapi.CallOption) (*ListAccountReturnCarrierResponse, error) {
20161	gensupport.SetOptions(c.urlParams_, opts...)
20162	res, err := c.doRequest("json")
20163	if res != nil && res.StatusCode == http.StatusNotModified {
20164		if res.Body != nil {
20165			res.Body.Close()
20166		}
20167		return nil, &googleapi.Error{
20168			Code:   res.StatusCode,
20169			Header: res.Header,
20170		}
20171	}
20172	if err != nil {
20173		return nil, err
20174	}
20175	defer googleapi.CloseBody(res)
20176	if err := googleapi.CheckResponse(res); err != nil {
20177		return nil, err
20178	}
20179	ret := &ListAccountReturnCarrierResponse{
20180		ServerResponse: googleapi.ServerResponse{
20181			Header:         res.Header,
20182			HTTPStatusCode: res.StatusCode,
20183		},
20184	}
20185	target := &ret
20186	if err := gensupport.DecodeResponse(target, res); err != nil {
20187		return nil, err
20188	}
20189	return ret, nil
20190	// {
20191	//   "description": "Lists available return carriers in the merchant account.",
20192	//   "flatPath": "accounts/{accountId}/returncarrier",
20193	//   "httpMethod": "GET",
20194	//   "id": "content.accounts.returncarrier.list",
20195	//   "parameterOrder": [
20196	//     "accountId"
20197	//   ],
20198	//   "parameters": {
20199	//     "accountId": {
20200	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20201	//       "format": "int64",
20202	//       "location": "path",
20203	//       "required": true,
20204	//       "type": "string"
20205	//     }
20206	//   },
20207	//   "path": "accounts/{accountId}/returncarrier",
20208	//   "response": {
20209	//     "$ref": "ListAccountReturnCarrierResponse"
20210	//   },
20211	//   "scopes": [
20212	//     "https://www.googleapis.com/auth/content"
20213	//   ]
20214	// }
20215
20216}
20217
20218// method id "content.accounts.returncarrier.patch":
20219
20220type AccountsReturncarrierPatchCall struct {
20221	s                    *APIService
20222	accountId            int64
20223	carrierAccountId     int64
20224	accountreturncarrier *AccountReturnCarrier
20225	urlParams_           gensupport.URLParams
20226	ctx_                 context.Context
20227	header_              http.Header
20228}
20229
20230// Patch: Updates a return carrier in the merchant account.
20231//
20232// - accountId: The Merchant Center Account Id under which the Return
20233//   Carrier is to be linked.
20234// - carrierAccountId: The Google-provided unique carrier ID, used to
20235//   update the resource.
20236func (r *AccountsReturncarrierService) Patch(accountId int64, carrierAccountId int64, accountreturncarrier *AccountReturnCarrier) *AccountsReturncarrierPatchCall {
20237	c := &AccountsReturncarrierPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20238	c.accountId = accountId
20239	c.carrierAccountId = carrierAccountId
20240	c.accountreturncarrier = accountreturncarrier
20241	return c
20242}
20243
20244// Fields allows partial responses to be retrieved. See
20245// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20246// for more information.
20247func (c *AccountsReturncarrierPatchCall) Fields(s ...googleapi.Field) *AccountsReturncarrierPatchCall {
20248	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20249	return c
20250}
20251
20252// Context sets the context to be used in this call's Do method. Any
20253// pending HTTP request will be aborted if the provided context is
20254// canceled.
20255func (c *AccountsReturncarrierPatchCall) Context(ctx context.Context) *AccountsReturncarrierPatchCall {
20256	c.ctx_ = ctx
20257	return c
20258}
20259
20260// Header returns an http.Header that can be modified by the caller to
20261// add HTTP headers to the request.
20262func (c *AccountsReturncarrierPatchCall) Header() http.Header {
20263	if c.header_ == nil {
20264		c.header_ = make(http.Header)
20265	}
20266	return c.header_
20267}
20268
20269func (c *AccountsReturncarrierPatchCall) doRequest(alt string) (*http.Response, error) {
20270	reqHeaders := make(http.Header)
20271	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20272	for k, v := range c.header_ {
20273		reqHeaders[k] = v
20274	}
20275	reqHeaders.Set("User-Agent", c.s.userAgent())
20276	var body io.Reader = nil
20277	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountreturncarrier)
20278	if err != nil {
20279		return nil, err
20280	}
20281	reqHeaders.Set("Content-Type", "application/json")
20282	c.urlParams_.Set("alt", alt)
20283	c.urlParams_.Set("prettyPrint", "false")
20284	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier/{carrierAccountId}")
20285	urls += "?" + c.urlParams_.Encode()
20286	req, err := http.NewRequest("PATCH", urls, body)
20287	if err != nil {
20288		return nil, err
20289	}
20290	req.Header = reqHeaders
20291	googleapi.Expand(req.URL, map[string]string{
20292		"accountId":        strconv.FormatInt(c.accountId, 10),
20293		"carrierAccountId": strconv.FormatInt(c.carrierAccountId, 10),
20294	})
20295	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20296}
20297
20298// Do executes the "content.accounts.returncarrier.patch" call.
20299// Exactly one of *AccountReturnCarrier or error will be non-nil. Any
20300// non-2xx status code is an error. Response headers are in either
20301// *AccountReturnCarrier.ServerResponse.Header or (if a response was
20302// returned at all) in error.(*googleapi.Error).Header. Use
20303// googleapi.IsNotModified to check whether the returned error was
20304// because http.StatusNotModified was returned.
20305func (c *AccountsReturncarrierPatchCall) Do(opts ...googleapi.CallOption) (*AccountReturnCarrier, error) {
20306	gensupport.SetOptions(c.urlParams_, opts...)
20307	res, err := c.doRequest("json")
20308	if res != nil && res.StatusCode == http.StatusNotModified {
20309		if res.Body != nil {
20310			res.Body.Close()
20311		}
20312		return nil, &googleapi.Error{
20313			Code:   res.StatusCode,
20314			Header: res.Header,
20315		}
20316	}
20317	if err != nil {
20318		return nil, err
20319	}
20320	defer googleapi.CloseBody(res)
20321	if err := googleapi.CheckResponse(res); err != nil {
20322		return nil, err
20323	}
20324	ret := &AccountReturnCarrier{
20325		ServerResponse: googleapi.ServerResponse{
20326			Header:         res.Header,
20327			HTTPStatusCode: res.StatusCode,
20328		},
20329	}
20330	target := &ret
20331	if err := gensupport.DecodeResponse(target, res); err != nil {
20332		return nil, err
20333	}
20334	return ret, nil
20335	// {
20336	//   "description": "Updates a return carrier in the merchant account.",
20337	//   "flatPath": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20338	//   "httpMethod": "PATCH",
20339	//   "id": "content.accounts.returncarrier.patch",
20340	//   "parameterOrder": [
20341	//     "accountId",
20342	//     "carrierAccountId"
20343	//   ],
20344	//   "parameters": {
20345	//     "accountId": {
20346	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20347	//       "format": "int64",
20348	//       "location": "path",
20349	//       "required": true,
20350	//       "type": "string"
20351	//     },
20352	//     "carrierAccountId": {
20353	//       "description": "Required. The Google-provided unique carrier ID, used to update the resource.",
20354	//       "format": "int64",
20355	//       "location": "path",
20356	//       "required": true,
20357	//       "type": "string"
20358	//     }
20359	//   },
20360	//   "path": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20361	//   "request": {
20362	//     "$ref": "AccountReturnCarrier"
20363	//   },
20364	//   "response": {
20365	//     "$ref": "AccountReturnCarrier"
20366	//   },
20367	//   "scopes": [
20368	//     "https://www.googleapis.com/auth/content"
20369	//   ]
20370	// }
20371
20372}
20373
20374// method id "content.accountstatuses.custombatch":
20375
20376type AccountstatusesCustombatchCall struct {
20377	s                                 *APIService
20378	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
20379	urlParams_                        gensupport.URLParams
20380	ctx_                              context.Context
20381	header_                           http.Header
20382}
20383
20384// Custombatch: Retrieves multiple Merchant Center account statuses in a
20385// single request.
20386func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
20387	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20388	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
20389	return c
20390}
20391
20392// Fields allows partial responses to be retrieved. See
20393// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20394// for more information.
20395func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
20396	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20397	return c
20398}
20399
20400// Context sets the context to be used in this call's Do method. Any
20401// pending HTTP request will be aborted if the provided context is
20402// canceled.
20403func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
20404	c.ctx_ = ctx
20405	return c
20406}
20407
20408// Header returns an http.Header that can be modified by the caller to
20409// add HTTP headers to the request.
20410func (c *AccountstatusesCustombatchCall) Header() http.Header {
20411	if c.header_ == nil {
20412		c.header_ = make(http.Header)
20413	}
20414	return c.header_
20415}
20416
20417func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
20418	reqHeaders := make(http.Header)
20419	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20420	for k, v := range c.header_ {
20421		reqHeaders[k] = v
20422	}
20423	reqHeaders.Set("User-Agent", c.s.userAgent())
20424	var body io.Reader = nil
20425	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
20426	if err != nil {
20427		return nil, err
20428	}
20429	reqHeaders.Set("Content-Type", "application/json")
20430	c.urlParams_.Set("alt", alt)
20431	c.urlParams_.Set("prettyPrint", "false")
20432	urls := googleapi.ResolveRelative(c.s.BasePath, "accountstatuses/batch")
20433	urls += "?" + c.urlParams_.Encode()
20434	req, err := http.NewRequest("POST", urls, body)
20435	if err != nil {
20436		return nil, err
20437	}
20438	req.Header = reqHeaders
20439	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20440}
20441
20442// Do executes the "content.accountstatuses.custombatch" call.
20443// Exactly one of *AccountstatusesCustomBatchResponse or error will be
20444// non-nil. Any non-2xx status code is an error. Response headers are in
20445// either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
20446// (if a response was returned at all) in
20447// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20448// whether the returned error was because http.StatusNotModified was
20449// returned.
20450func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
20451	gensupport.SetOptions(c.urlParams_, opts...)
20452	res, err := c.doRequest("json")
20453	if res != nil && res.StatusCode == http.StatusNotModified {
20454		if res.Body != nil {
20455			res.Body.Close()
20456		}
20457		return nil, &googleapi.Error{
20458			Code:   res.StatusCode,
20459			Header: res.Header,
20460		}
20461	}
20462	if err != nil {
20463		return nil, err
20464	}
20465	defer googleapi.CloseBody(res)
20466	if err := googleapi.CheckResponse(res); err != nil {
20467		return nil, err
20468	}
20469	ret := &AccountstatusesCustomBatchResponse{
20470		ServerResponse: googleapi.ServerResponse{
20471			Header:         res.Header,
20472			HTTPStatusCode: res.StatusCode,
20473		},
20474	}
20475	target := &ret
20476	if err := gensupport.DecodeResponse(target, res); err != nil {
20477		return nil, err
20478	}
20479	return ret, nil
20480	// {
20481	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
20482	//   "flatPath": "accountstatuses/batch",
20483	//   "httpMethod": "POST",
20484	//   "id": "content.accountstatuses.custombatch",
20485	//   "parameterOrder": [],
20486	//   "parameters": {},
20487	//   "path": "accountstatuses/batch",
20488	//   "request": {
20489	//     "$ref": "AccountstatusesCustomBatchRequest"
20490	//   },
20491	//   "response": {
20492	//     "$ref": "AccountstatusesCustomBatchResponse"
20493	//   },
20494	//   "scopes": [
20495	//     "https://www.googleapis.com/auth/content"
20496	//   ]
20497	// }
20498
20499}
20500
20501// method id "content.accountstatuses.get":
20502
20503type AccountstatusesGetCall struct {
20504	s            *APIService
20505	merchantId   uint64
20506	accountId    uint64
20507	urlParams_   gensupport.URLParams
20508	ifNoneMatch_ string
20509	ctx_         context.Context
20510	header_      http.Header
20511}
20512
20513// Get: Retrieves the status of a Merchant Center account. No
20514// itemLevelIssues are returned for multi-client accounts.
20515//
20516// - accountId: The ID of the account.
20517// - merchantId: The ID of the managing account. If this parameter is
20518//   not the same as accountId, then this account must be a multi-client
20519//   account and `accountId` must be the ID of a sub-account of this
20520//   account.
20521func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
20522	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20523	c.merchantId = merchantId
20524	c.accountId = accountId
20525	return c
20526}
20527
20528// Destinations sets the optional parameter "destinations": If set, only
20529// issues for the specified destinations are returned, otherwise only
20530// issues for the Shopping destination.
20531func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
20532	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
20533	return c
20534}
20535
20536// Fields allows partial responses to be retrieved. See
20537// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20538// for more information.
20539func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
20540	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20541	return c
20542}
20543
20544// IfNoneMatch sets the optional parameter which makes the operation
20545// fail if the object's ETag matches the given value. This is useful for
20546// getting updates only after the object has changed since the last
20547// request. Use googleapi.IsNotModified to check whether the response
20548// error from Do is the result of In-None-Match.
20549func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
20550	c.ifNoneMatch_ = entityTag
20551	return c
20552}
20553
20554// Context sets the context to be used in this call's Do method. Any
20555// pending HTTP request will be aborted if the provided context is
20556// canceled.
20557func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
20558	c.ctx_ = ctx
20559	return c
20560}
20561
20562// Header returns an http.Header that can be modified by the caller to
20563// add HTTP headers to the request.
20564func (c *AccountstatusesGetCall) Header() http.Header {
20565	if c.header_ == nil {
20566		c.header_ = make(http.Header)
20567	}
20568	return c.header_
20569}
20570
20571func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
20572	reqHeaders := make(http.Header)
20573	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20574	for k, v := range c.header_ {
20575		reqHeaders[k] = v
20576	}
20577	reqHeaders.Set("User-Agent", c.s.userAgent())
20578	if c.ifNoneMatch_ != "" {
20579		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20580	}
20581	var body io.Reader = nil
20582	c.urlParams_.Set("alt", alt)
20583	c.urlParams_.Set("prettyPrint", "false")
20584	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses/{accountId}")
20585	urls += "?" + c.urlParams_.Encode()
20586	req, err := http.NewRequest("GET", urls, body)
20587	if err != nil {
20588		return nil, err
20589	}
20590	req.Header = reqHeaders
20591	googleapi.Expand(req.URL, map[string]string{
20592		"merchantId": strconv.FormatUint(c.merchantId, 10),
20593		"accountId":  strconv.FormatUint(c.accountId, 10),
20594	})
20595	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20596}
20597
20598// Do executes the "content.accountstatuses.get" call.
20599// Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
20600// status code is an error. Response headers are in either
20601// *AccountStatus.ServerResponse.Header or (if a response was returned
20602// at all) in error.(*googleapi.Error).Header. Use
20603// googleapi.IsNotModified to check whether the returned error was
20604// because http.StatusNotModified was returned.
20605func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
20606	gensupport.SetOptions(c.urlParams_, opts...)
20607	res, err := c.doRequest("json")
20608	if res != nil && res.StatusCode == http.StatusNotModified {
20609		if res.Body != nil {
20610			res.Body.Close()
20611		}
20612		return nil, &googleapi.Error{
20613			Code:   res.StatusCode,
20614			Header: res.Header,
20615		}
20616	}
20617	if err != nil {
20618		return nil, err
20619	}
20620	defer googleapi.CloseBody(res)
20621	if err := googleapi.CheckResponse(res); err != nil {
20622		return nil, err
20623	}
20624	ret := &AccountStatus{
20625		ServerResponse: googleapi.ServerResponse{
20626			Header:         res.Header,
20627			HTTPStatusCode: res.StatusCode,
20628		},
20629	}
20630	target := &ret
20631	if err := gensupport.DecodeResponse(target, res); err != nil {
20632		return nil, err
20633	}
20634	return ret, nil
20635	// {
20636	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
20637	//   "flatPath": "{merchantId}/accountstatuses/{accountId}",
20638	//   "httpMethod": "GET",
20639	//   "id": "content.accountstatuses.get",
20640	//   "parameterOrder": [
20641	//     "merchantId",
20642	//     "accountId"
20643	//   ],
20644	//   "parameters": {
20645	//     "accountId": {
20646	//       "description": "The ID of the account.",
20647	//       "format": "uint64",
20648	//       "location": "path",
20649	//       "required": true,
20650	//       "type": "string"
20651	//     },
20652	//     "destinations": {
20653	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
20654	//       "location": "query",
20655	//       "repeated": true,
20656	//       "type": "string"
20657	//     },
20658	//     "merchantId": {
20659	//       "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.",
20660	//       "format": "uint64",
20661	//       "location": "path",
20662	//       "required": true,
20663	//       "type": "string"
20664	//     }
20665	//   },
20666	//   "path": "{merchantId}/accountstatuses/{accountId}",
20667	//   "response": {
20668	//     "$ref": "AccountStatus"
20669	//   },
20670	//   "scopes": [
20671	//     "https://www.googleapis.com/auth/content"
20672	//   ]
20673	// }
20674
20675}
20676
20677// method id "content.accountstatuses.list":
20678
20679type AccountstatusesListCall struct {
20680	s            *APIService
20681	merchantId   uint64
20682	urlParams_   gensupport.URLParams
20683	ifNoneMatch_ string
20684	ctx_         context.Context
20685	header_      http.Header
20686}
20687
20688// List: Lists the statuses of the sub-accounts in your Merchant Center
20689// account.
20690//
20691// - merchantId: The ID of the managing account. This must be a
20692//   multi-client account.
20693func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
20694	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20695	c.merchantId = merchantId
20696	return c
20697}
20698
20699// Destinations sets the optional parameter "destinations": If set, only
20700// issues for the specified destinations are returned, otherwise only
20701// issues for the Shopping destination.
20702func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
20703	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
20704	return c
20705}
20706
20707// MaxResults sets the optional parameter "maxResults": The maximum
20708// number of account statuses to return in the response, used for
20709// paging.
20710func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
20711	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
20712	return c
20713}
20714
20715// Name sets the optional parameter "name": If set, only the accounts
20716// with the given name (case sensitive) will be returned.
20717func (c *AccountstatusesListCall) Name(name string) *AccountstatusesListCall {
20718	c.urlParams_.Set("name", name)
20719	return c
20720}
20721
20722// PageToken sets the optional parameter "pageToken": The token returned
20723// by the previous request.
20724func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
20725	c.urlParams_.Set("pageToken", pageToken)
20726	return c
20727}
20728
20729// Fields allows partial responses to be retrieved. See
20730// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20731// for more information.
20732func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
20733	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20734	return c
20735}
20736
20737// IfNoneMatch sets the optional parameter which makes the operation
20738// fail if the object's ETag matches the given value. This is useful for
20739// getting updates only after the object has changed since the last
20740// request. Use googleapi.IsNotModified to check whether the response
20741// error from Do is the result of In-None-Match.
20742func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
20743	c.ifNoneMatch_ = entityTag
20744	return c
20745}
20746
20747// Context sets the context to be used in this call's Do method. Any
20748// pending HTTP request will be aborted if the provided context is
20749// canceled.
20750func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
20751	c.ctx_ = ctx
20752	return c
20753}
20754
20755// Header returns an http.Header that can be modified by the caller to
20756// add HTTP headers to the request.
20757func (c *AccountstatusesListCall) Header() http.Header {
20758	if c.header_ == nil {
20759		c.header_ = make(http.Header)
20760	}
20761	return c.header_
20762}
20763
20764func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
20765	reqHeaders := make(http.Header)
20766	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20767	for k, v := range c.header_ {
20768		reqHeaders[k] = v
20769	}
20770	reqHeaders.Set("User-Agent", c.s.userAgent())
20771	if c.ifNoneMatch_ != "" {
20772		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20773	}
20774	var body io.Reader = nil
20775	c.urlParams_.Set("alt", alt)
20776	c.urlParams_.Set("prettyPrint", "false")
20777	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses")
20778	urls += "?" + c.urlParams_.Encode()
20779	req, err := http.NewRequest("GET", urls, body)
20780	if err != nil {
20781		return nil, err
20782	}
20783	req.Header = reqHeaders
20784	googleapi.Expand(req.URL, map[string]string{
20785		"merchantId": strconv.FormatUint(c.merchantId, 10),
20786	})
20787	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20788}
20789
20790// Do executes the "content.accountstatuses.list" call.
20791// Exactly one of *AccountstatusesListResponse or error will be non-nil.
20792// Any non-2xx status code is an error. Response headers are in either
20793// *AccountstatusesListResponse.ServerResponse.Header or (if a response
20794// was returned at all) in error.(*googleapi.Error).Header. Use
20795// googleapi.IsNotModified to check whether the returned error was
20796// because http.StatusNotModified was returned.
20797func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
20798	gensupport.SetOptions(c.urlParams_, opts...)
20799	res, err := c.doRequest("json")
20800	if res != nil && res.StatusCode == http.StatusNotModified {
20801		if res.Body != nil {
20802			res.Body.Close()
20803		}
20804		return nil, &googleapi.Error{
20805			Code:   res.StatusCode,
20806			Header: res.Header,
20807		}
20808	}
20809	if err != nil {
20810		return nil, err
20811	}
20812	defer googleapi.CloseBody(res)
20813	if err := googleapi.CheckResponse(res); err != nil {
20814		return nil, err
20815	}
20816	ret := &AccountstatusesListResponse{
20817		ServerResponse: googleapi.ServerResponse{
20818			Header:         res.Header,
20819			HTTPStatusCode: res.StatusCode,
20820		},
20821	}
20822	target := &ret
20823	if err := gensupport.DecodeResponse(target, res); err != nil {
20824		return nil, err
20825	}
20826	return ret, nil
20827	// {
20828	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
20829	//   "flatPath": "{merchantId}/accountstatuses",
20830	//   "httpMethod": "GET",
20831	//   "id": "content.accountstatuses.list",
20832	//   "parameterOrder": [
20833	//     "merchantId"
20834	//   ],
20835	//   "parameters": {
20836	//     "destinations": {
20837	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
20838	//       "location": "query",
20839	//       "repeated": true,
20840	//       "type": "string"
20841	//     },
20842	//     "maxResults": {
20843	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
20844	//       "format": "uint32",
20845	//       "location": "query",
20846	//       "type": "integer"
20847	//     },
20848	//     "merchantId": {
20849	//       "description": "The ID of the managing account. This must be a multi-client account.",
20850	//       "format": "uint64",
20851	//       "location": "path",
20852	//       "required": true,
20853	//       "type": "string"
20854	//     },
20855	//     "name": {
20856	//       "description": "If set, only the accounts with the given name (case sensitive) will be returned.",
20857	//       "location": "query",
20858	//       "type": "string"
20859	//     },
20860	//     "pageToken": {
20861	//       "description": "The token returned by the previous request.",
20862	//       "location": "query",
20863	//       "type": "string"
20864	//     }
20865	//   },
20866	//   "path": "{merchantId}/accountstatuses",
20867	//   "response": {
20868	//     "$ref": "AccountstatusesListResponse"
20869	//   },
20870	//   "scopes": [
20871	//     "https://www.googleapis.com/auth/content"
20872	//   ]
20873	// }
20874
20875}
20876
20877// Pages invokes f for each page of results.
20878// A non-nil error returned from f will halt the iteration.
20879// The provided context supersedes any context provided to the Context method.
20880func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
20881	c.ctx_ = ctx
20882	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20883	for {
20884		x, err := c.Do()
20885		if err != nil {
20886			return err
20887		}
20888		if err := f(x); err != nil {
20889			return err
20890		}
20891		if x.NextPageToken == "" {
20892			return nil
20893		}
20894		c.PageToken(x.NextPageToken)
20895	}
20896}
20897
20898// method id "content.accounttax.custombatch":
20899
20900type AccounttaxCustombatchCall struct {
20901	s                            *APIService
20902	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
20903	urlParams_                   gensupport.URLParams
20904	ctx_                         context.Context
20905	header_                      http.Header
20906}
20907
20908// Custombatch: Retrieves and updates tax settings of multiple accounts
20909// in a single request.
20910func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
20911	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20912	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
20913	return c
20914}
20915
20916// Fields allows partial responses to be retrieved. See
20917// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20918// for more information.
20919func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
20920	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20921	return c
20922}
20923
20924// Context sets the context to be used in this call's Do method. Any
20925// pending HTTP request will be aborted if the provided context is
20926// canceled.
20927func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
20928	c.ctx_ = ctx
20929	return c
20930}
20931
20932// Header returns an http.Header that can be modified by the caller to
20933// add HTTP headers to the request.
20934func (c *AccounttaxCustombatchCall) Header() http.Header {
20935	if c.header_ == nil {
20936		c.header_ = make(http.Header)
20937	}
20938	return c.header_
20939}
20940
20941func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
20942	reqHeaders := make(http.Header)
20943	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
20944	for k, v := range c.header_ {
20945		reqHeaders[k] = v
20946	}
20947	reqHeaders.Set("User-Agent", c.s.userAgent())
20948	var body io.Reader = nil
20949	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
20950	if err != nil {
20951		return nil, err
20952	}
20953	reqHeaders.Set("Content-Type", "application/json")
20954	c.urlParams_.Set("alt", alt)
20955	c.urlParams_.Set("prettyPrint", "false")
20956	urls := googleapi.ResolveRelative(c.s.BasePath, "accounttax/batch")
20957	urls += "?" + c.urlParams_.Encode()
20958	req, err := http.NewRequest("POST", urls, body)
20959	if err != nil {
20960		return nil, err
20961	}
20962	req.Header = reqHeaders
20963	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20964}
20965
20966// Do executes the "content.accounttax.custombatch" call.
20967// Exactly one of *AccounttaxCustomBatchResponse or error will be
20968// non-nil. Any non-2xx status code is an error. Response headers are in
20969// either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
20970// response was returned at all) in error.(*googleapi.Error).Header. Use
20971// googleapi.IsNotModified to check whether the returned error was
20972// because http.StatusNotModified was returned.
20973func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
20974	gensupport.SetOptions(c.urlParams_, opts...)
20975	res, err := c.doRequest("json")
20976	if res != nil && res.StatusCode == http.StatusNotModified {
20977		if res.Body != nil {
20978			res.Body.Close()
20979		}
20980		return nil, &googleapi.Error{
20981			Code:   res.StatusCode,
20982			Header: res.Header,
20983		}
20984	}
20985	if err != nil {
20986		return nil, err
20987	}
20988	defer googleapi.CloseBody(res)
20989	if err := googleapi.CheckResponse(res); err != nil {
20990		return nil, err
20991	}
20992	ret := &AccounttaxCustomBatchResponse{
20993		ServerResponse: googleapi.ServerResponse{
20994			Header:         res.Header,
20995			HTTPStatusCode: res.StatusCode,
20996		},
20997	}
20998	target := &ret
20999	if err := gensupport.DecodeResponse(target, res); err != nil {
21000		return nil, err
21001	}
21002	return ret, nil
21003	// {
21004	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
21005	//   "flatPath": "accounttax/batch",
21006	//   "httpMethod": "POST",
21007	//   "id": "content.accounttax.custombatch",
21008	//   "parameterOrder": [],
21009	//   "parameters": {},
21010	//   "path": "accounttax/batch",
21011	//   "request": {
21012	//     "$ref": "AccounttaxCustomBatchRequest"
21013	//   },
21014	//   "response": {
21015	//     "$ref": "AccounttaxCustomBatchResponse"
21016	//   },
21017	//   "scopes": [
21018	//     "https://www.googleapis.com/auth/content"
21019	//   ]
21020	// }
21021
21022}
21023
21024// method id "content.accounttax.get":
21025
21026type AccounttaxGetCall struct {
21027	s            *APIService
21028	merchantId   uint64
21029	accountId    uint64
21030	urlParams_   gensupport.URLParams
21031	ifNoneMatch_ string
21032	ctx_         context.Context
21033	header_      http.Header
21034}
21035
21036// Get: Retrieves the tax settings of the account.
21037//
21038// - accountId: The ID of the account for which to get/update account
21039//   tax settings.
21040// - merchantId: The ID of the managing account. If this parameter is
21041//   not the same as accountId, then this account must be a multi-client
21042//   account and `accountId` must be the ID of a sub-account of this
21043//   account.
21044func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
21045	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21046	c.merchantId = merchantId
21047	c.accountId = accountId
21048	return c
21049}
21050
21051// Fields allows partial responses to be retrieved. See
21052// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21053// for more information.
21054func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
21055	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21056	return c
21057}
21058
21059// IfNoneMatch sets the optional parameter which makes the operation
21060// fail if the object's ETag matches the given value. This is useful for
21061// getting updates only after the object has changed since the last
21062// request. Use googleapi.IsNotModified to check whether the response
21063// error from Do is the result of In-None-Match.
21064func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
21065	c.ifNoneMatch_ = entityTag
21066	return c
21067}
21068
21069// Context sets the context to be used in this call's Do method. Any
21070// pending HTTP request will be aborted if the provided context is
21071// canceled.
21072func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
21073	c.ctx_ = ctx
21074	return c
21075}
21076
21077// Header returns an http.Header that can be modified by the caller to
21078// add HTTP headers to the request.
21079func (c *AccounttaxGetCall) Header() http.Header {
21080	if c.header_ == nil {
21081		c.header_ = make(http.Header)
21082	}
21083	return c.header_
21084}
21085
21086func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
21087	reqHeaders := make(http.Header)
21088	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21089	for k, v := range c.header_ {
21090		reqHeaders[k] = v
21091	}
21092	reqHeaders.Set("User-Agent", c.s.userAgent())
21093	if c.ifNoneMatch_ != "" {
21094		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21095	}
21096	var body io.Reader = nil
21097	c.urlParams_.Set("alt", alt)
21098	c.urlParams_.Set("prettyPrint", "false")
21099	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
21100	urls += "?" + c.urlParams_.Encode()
21101	req, err := http.NewRequest("GET", urls, body)
21102	if err != nil {
21103		return nil, err
21104	}
21105	req.Header = reqHeaders
21106	googleapi.Expand(req.URL, map[string]string{
21107		"merchantId": strconv.FormatUint(c.merchantId, 10),
21108		"accountId":  strconv.FormatUint(c.accountId, 10),
21109	})
21110	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21111}
21112
21113// Do executes the "content.accounttax.get" call.
21114// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
21115// status code is an error. Response headers are in either
21116// *AccountTax.ServerResponse.Header or (if a response was returned at
21117// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21118// to check whether the returned error was because
21119// http.StatusNotModified was returned.
21120func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
21121	gensupport.SetOptions(c.urlParams_, opts...)
21122	res, err := c.doRequest("json")
21123	if res != nil && res.StatusCode == http.StatusNotModified {
21124		if res.Body != nil {
21125			res.Body.Close()
21126		}
21127		return nil, &googleapi.Error{
21128			Code:   res.StatusCode,
21129			Header: res.Header,
21130		}
21131	}
21132	if err != nil {
21133		return nil, err
21134	}
21135	defer googleapi.CloseBody(res)
21136	if err := googleapi.CheckResponse(res); err != nil {
21137		return nil, err
21138	}
21139	ret := &AccountTax{
21140		ServerResponse: googleapi.ServerResponse{
21141			Header:         res.Header,
21142			HTTPStatusCode: res.StatusCode,
21143		},
21144	}
21145	target := &ret
21146	if err := gensupport.DecodeResponse(target, res); err != nil {
21147		return nil, err
21148	}
21149	return ret, nil
21150	// {
21151	//   "description": "Retrieves the tax settings of the account.",
21152	//   "flatPath": "{merchantId}/accounttax/{accountId}",
21153	//   "httpMethod": "GET",
21154	//   "id": "content.accounttax.get",
21155	//   "parameterOrder": [
21156	//     "merchantId",
21157	//     "accountId"
21158	//   ],
21159	//   "parameters": {
21160	//     "accountId": {
21161	//       "description": "The ID of the account for which to get/update account tax settings.",
21162	//       "format": "uint64",
21163	//       "location": "path",
21164	//       "required": true,
21165	//       "type": "string"
21166	//     },
21167	//     "merchantId": {
21168	//       "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.",
21169	//       "format": "uint64",
21170	//       "location": "path",
21171	//       "required": true,
21172	//       "type": "string"
21173	//     }
21174	//   },
21175	//   "path": "{merchantId}/accounttax/{accountId}",
21176	//   "response": {
21177	//     "$ref": "AccountTax"
21178	//   },
21179	//   "scopes": [
21180	//     "https://www.googleapis.com/auth/content"
21181	//   ]
21182	// }
21183
21184}
21185
21186// method id "content.accounttax.list":
21187
21188type AccounttaxListCall struct {
21189	s            *APIService
21190	merchantId   uint64
21191	urlParams_   gensupport.URLParams
21192	ifNoneMatch_ string
21193	ctx_         context.Context
21194	header_      http.Header
21195}
21196
21197// List: Lists the tax settings of the sub-accounts in your Merchant
21198// Center account.
21199//
21200// - merchantId: The ID of the managing account. This must be a
21201//   multi-client account.
21202func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
21203	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21204	c.merchantId = merchantId
21205	return c
21206}
21207
21208// MaxResults sets the optional parameter "maxResults": The maximum
21209// number of tax settings to return in the response, used for paging.
21210func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
21211	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21212	return c
21213}
21214
21215// PageToken sets the optional parameter "pageToken": The token returned
21216// by the previous request.
21217func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
21218	c.urlParams_.Set("pageToken", pageToken)
21219	return c
21220}
21221
21222// Fields allows partial responses to be retrieved. See
21223// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21224// for more information.
21225func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
21226	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21227	return c
21228}
21229
21230// IfNoneMatch sets the optional parameter which makes the operation
21231// fail if the object's ETag matches the given value. This is useful for
21232// getting updates only after the object has changed since the last
21233// request. Use googleapi.IsNotModified to check whether the response
21234// error from Do is the result of In-None-Match.
21235func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
21236	c.ifNoneMatch_ = entityTag
21237	return c
21238}
21239
21240// Context sets the context to be used in this call's Do method. Any
21241// pending HTTP request will be aborted if the provided context is
21242// canceled.
21243func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
21244	c.ctx_ = ctx
21245	return c
21246}
21247
21248// Header returns an http.Header that can be modified by the caller to
21249// add HTTP headers to the request.
21250func (c *AccounttaxListCall) Header() http.Header {
21251	if c.header_ == nil {
21252		c.header_ = make(http.Header)
21253	}
21254	return c.header_
21255}
21256
21257func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
21258	reqHeaders := make(http.Header)
21259	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21260	for k, v := range c.header_ {
21261		reqHeaders[k] = v
21262	}
21263	reqHeaders.Set("User-Agent", c.s.userAgent())
21264	if c.ifNoneMatch_ != "" {
21265		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21266	}
21267	var body io.Reader = nil
21268	c.urlParams_.Set("alt", alt)
21269	c.urlParams_.Set("prettyPrint", "false")
21270	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax")
21271	urls += "?" + c.urlParams_.Encode()
21272	req, err := http.NewRequest("GET", urls, body)
21273	if err != nil {
21274		return nil, err
21275	}
21276	req.Header = reqHeaders
21277	googleapi.Expand(req.URL, map[string]string{
21278		"merchantId": strconv.FormatUint(c.merchantId, 10),
21279	})
21280	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21281}
21282
21283// Do executes the "content.accounttax.list" call.
21284// Exactly one of *AccounttaxListResponse or error will be non-nil. Any
21285// non-2xx status code is an error. Response headers are in either
21286// *AccounttaxListResponse.ServerResponse.Header or (if a response was
21287// returned at all) in error.(*googleapi.Error).Header. Use
21288// googleapi.IsNotModified to check whether the returned error was
21289// because http.StatusNotModified was returned.
21290func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
21291	gensupport.SetOptions(c.urlParams_, opts...)
21292	res, err := c.doRequest("json")
21293	if res != nil && res.StatusCode == http.StatusNotModified {
21294		if res.Body != nil {
21295			res.Body.Close()
21296		}
21297		return nil, &googleapi.Error{
21298			Code:   res.StatusCode,
21299			Header: res.Header,
21300		}
21301	}
21302	if err != nil {
21303		return nil, err
21304	}
21305	defer googleapi.CloseBody(res)
21306	if err := googleapi.CheckResponse(res); err != nil {
21307		return nil, err
21308	}
21309	ret := &AccounttaxListResponse{
21310		ServerResponse: googleapi.ServerResponse{
21311			Header:         res.Header,
21312			HTTPStatusCode: res.StatusCode,
21313		},
21314	}
21315	target := &ret
21316	if err := gensupport.DecodeResponse(target, res); err != nil {
21317		return nil, err
21318	}
21319	return ret, nil
21320	// {
21321	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
21322	//   "flatPath": "{merchantId}/accounttax",
21323	//   "httpMethod": "GET",
21324	//   "id": "content.accounttax.list",
21325	//   "parameterOrder": [
21326	//     "merchantId"
21327	//   ],
21328	//   "parameters": {
21329	//     "maxResults": {
21330	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
21331	//       "format": "uint32",
21332	//       "location": "query",
21333	//       "type": "integer"
21334	//     },
21335	//     "merchantId": {
21336	//       "description": "The ID of the managing account. This must be a multi-client account.",
21337	//       "format": "uint64",
21338	//       "location": "path",
21339	//       "required": true,
21340	//       "type": "string"
21341	//     },
21342	//     "pageToken": {
21343	//       "description": "The token returned by the previous request.",
21344	//       "location": "query",
21345	//       "type": "string"
21346	//     }
21347	//   },
21348	//   "path": "{merchantId}/accounttax",
21349	//   "response": {
21350	//     "$ref": "AccounttaxListResponse"
21351	//   },
21352	//   "scopes": [
21353	//     "https://www.googleapis.com/auth/content"
21354	//   ]
21355	// }
21356
21357}
21358
21359// Pages invokes f for each page of results.
21360// A non-nil error returned from f will halt the iteration.
21361// The provided context supersedes any context provided to the Context method.
21362func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
21363	c.ctx_ = ctx
21364	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21365	for {
21366		x, err := c.Do()
21367		if err != nil {
21368			return err
21369		}
21370		if err := f(x); err != nil {
21371			return err
21372		}
21373		if x.NextPageToken == "" {
21374			return nil
21375		}
21376		c.PageToken(x.NextPageToken)
21377	}
21378}
21379
21380// method id "content.accounttax.update":
21381
21382type AccounttaxUpdateCall struct {
21383	s          *APIService
21384	merchantId uint64
21385	accountId  uint64
21386	accounttax *AccountTax
21387	urlParams_ gensupport.URLParams
21388	ctx_       context.Context
21389	header_    http.Header
21390}
21391
21392// Update: Updates the tax settings of the account. Any fields that are
21393// not provided are deleted from the resource.
21394//
21395// - accountId: The ID of the account for which to get/update account
21396//   tax settings.
21397// - merchantId: The ID of the managing account. If this parameter is
21398//   not the same as accountId, then this account must be a multi-client
21399//   account and `accountId` must be the ID of a sub-account of this
21400//   account.
21401func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
21402	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21403	c.merchantId = merchantId
21404	c.accountId = accountId
21405	c.accounttax = accounttax
21406	return c
21407}
21408
21409// Fields allows partial responses to be retrieved. See
21410// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21411// for more information.
21412func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
21413	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21414	return c
21415}
21416
21417// Context sets the context to be used in this call's Do method. Any
21418// pending HTTP request will be aborted if the provided context is
21419// canceled.
21420func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
21421	c.ctx_ = ctx
21422	return c
21423}
21424
21425// Header returns an http.Header that can be modified by the caller to
21426// add HTTP headers to the request.
21427func (c *AccounttaxUpdateCall) Header() http.Header {
21428	if c.header_ == nil {
21429		c.header_ = make(http.Header)
21430	}
21431	return c.header_
21432}
21433
21434func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
21435	reqHeaders := make(http.Header)
21436	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21437	for k, v := range c.header_ {
21438		reqHeaders[k] = v
21439	}
21440	reqHeaders.Set("User-Agent", c.s.userAgent())
21441	var body io.Reader = nil
21442	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
21443	if err != nil {
21444		return nil, err
21445	}
21446	reqHeaders.Set("Content-Type", "application/json")
21447	c.urlParams_.Set("alt", alt)
21448	c.urlParams_.Set("prettyPrint", "false")
21449	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
21450	urls += "?" + c.urlParams_.Encode()
21451	req, err := http.NewRequest("PUT", urls, body)
21452	if err != nil {
21453		return nil, err
21454	}
21455	req.Header = reqHeaders
21456	googleapi.Expand(req.URL, map[string]string{
21457		"merchantId": strconv.FormatUint(c.merchantId, 10),
21458		"accountId":  strconv.FormatUint(c.accountId, 10),
21459	})
21460	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21461}
21462
21463// Do executes the "content.accounttax.update" call.
21464// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
21465// status code is an error. Response headers are in either
21466// *AccountTax.ServerResponse.Header or (if a response was returned at
21467// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21468// to check whether the returned error was because
21469// http.StatusNotModified was returned.
21470func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
21471	gensupport.SetOptions(c.urlParams_, opts...)
21472	res, err := c.doRequest("json")
21473	if res != nil && res.StatusCode == http.StatusNotModified {
21474		if res.Body != nil {
21475			res.Body.Close()
21476		}
21477		return nil, &googleapi.Error{
21478			Code:   res.StatusCode,
21479			Header: res.Header,
21480		}
21481	}
21482	if err != nil {
21483		return nil, err
21484	}
21485	defer googleapi.CloseBody(res)
21486	if err := googleapi.CheckResponse(res); err != nil {
21487		return nil, err
21488	}
21489	ret := &AccountTax{
21490		ServerResponse: googleapi.ServerResponse{
21491			Header:         res.Header,
21492			HTTPStatusCode: res.StatusCode,
21493		},
21494	}
21495	target := &ret
21496	if err := gensupport.DecodeResponse(target, res); err != nil {
21497		return nil, err
21498	}
21499	return ret, nil
21500	// {
21501	//   "description": "Updates the tax settings of the account. Any fields that are not provided are deleted from the resource.",
21502	//   "flatPath": "{merchantId}/accounttax/{accountId}",
21503	//   "httpMethod": "PUT",
21504	//   "id": "content.accounttax.update",
21505	//   "parameterOrder": [
21506	//     "merchantId",
21507	//     "accountId"
21508	//   ],
21509	//   "parameters": {
21510	//     "accountId": {
21511	//       "description": "The ID of the account for which to get/update account tax settings.",
21512	//       "format": "uint64",
21513	//       "location": "path",
21514	//       "required": true,
21515	//       "type": "string"
21516	//     },
21517	//     "merchantId": {
21518	//       "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.",
21519	//       "format": "uint64",
21520	//       "location": "path",
21521	//       "required": true,
21522	//       "type": "string"
21523	//     }
21524	//   },
21525	//   "path": "{merchantId}/accounttax/{accountId}",
21526	//   "request": {
21527	//     "$ref": "AccountTax"
21528	//   },
21529	//   "response": {
21530	//     "$ref": "AccountTax"
21531	//   },
21532	//   "scopes": [
21533	//     "https://www.googleapis.com/auth/content"
21534	//   ]
21535	// }
21536
21537}
21538
21539// method id "content.buyongoogleprograms.activate":
21540
21541type BuyongoogleprogramsActivateCall struct {
21542	s                                 *APIService
21543	merchantId                        int64
21544	regionCode                        string
21545	activatebuyongoogleprogramrequest *ActivateBuyOnGoogleProgramRequest
21546	urlParams_                        gensupport.URLParams
21547	ctx_                              context.Context
21548	header_                           http.Header
21549}
21550
21551// Activate: Reactivates the BoG program in your Merchant Center
21552// account. Moves the program to the active state when allowed, e.g.
21553// when paused. Important: This method is only whitelisted for selected
21554// merchants.
21555//
21556// - merchantId: The ID of the account.
21557// - regionCode: The program region code ISO 3166-1 alpha-2
21558//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
21559//   US is available.
21560func (r *BuyongoogleprogramsService) Activate(merchantId int64, regionCode string, activatebuyongoogleprogramrequest *ActivateBuyOnGoogleProgramRequest) *BuyongoogleprogramsActivateCall {
21561	c := &BuyongoogleprogramsActivateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21562	c.merchantId = merchantId
21563	c.regionCode = regionCode
21564	c.activatebuyongoogleprogramrequest = activatebuyongoogleprogramrequest
21565	return c
21566}
21567
21568// Fields allows partial responses to be retrieved. See
21569// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21570// for more information.
21571func (c *BuyongoogleprogramsActivateCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsActivateCall {
21572	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21573	return c
21574}
21575
21576// Context sets the context to be used in this call's Do method. Any
21577// pending HTTP request will be aborted if the provided context is
21578// canceled.
21579func (c *BuyongoogleprogramsActivateCall) Context(ctx context.Context) *BuyongoogleprogramsActivateCall {
21580	c.ctx_ = ctx
21581	return c
21582}
21583
21584// Header returns an http.Header that can be modified by the caller to
21585// add HTTP headers to the request.
21586func (c *BuyongoogleprogramsActivateCall) Header() http.Header {
21587	if c.header_ == nil {
21588		c.header_ = make(http.Header)
21589	}
21590	return c.header_
21591}
21592
21593func (c *BuyongoogleprogramsActivateCall) doRequest(alt string) (*http.Response, error) {
21594	reqHeaders := make(http.Header)
21595	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21596	for k, v := range c.header_ {
21597		reqHeaders[k] = v
21598	}
21599	reqHeaders.Set("User-Agent", c.s.userAgent())
21600	var body io.Reader = nil
21601	body, err := googleapi.WithoutDataWrapper.JSONReader(c.activatebuyongoogleprogramrequest)
21602	if err != nil {
21603		return nil, err
21604	}
21605	reqHeaders.Set("Content-Type", "application/json")
21606	c.urlParams_.Set("alt", alt)
21607	c.urlParams_.Set("prettyPrint", "false")
21608	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/activate")
21609	urls += "?" + c.urlParams_.Encode()
21610	req, err := http.NewRequest("POST", urls, body)
21611	if err != nil {
21612		return nil, err
21613	}
21614	req.Header = reqHeaders
21615	googleapi.Expand(req.URL, map[string]string{
21616		"merchantId": strconv.FormatInt(c.merchantId, 10),
21617		"regionCode": c.regionCode,
21618	})
21619	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21620}
21621
21622// Do executes the "content.buyongoogleprograms.activate" call.
21623func (c *BuyongoogleprogramsActivateCall) Do(opts ...googleapi.CallOption) error {
21624	gensupport.SetOptions(c.urlParams_, opts...)
21625	res, err := c.doRequest("json")
21626	if err != nil {
21627		return err
21628	}
21629	defer googleapi.CloseBody(res)
21630	if err := googleapi.CheckResponse(res); err != nil {
21631		return err
21632	}
21633	return nil
21634	// {
21635	//   "description": "Reactivates the BoG program in your Merchant Center account. Moves the program to the active state when allowed, e.g. when paused. Important: This method is only whitelisted for selected merchants.",
21636	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/activate",
21637	//   "httpMethod": "POST",
21638	//   "id": "content.buyongoogleprograms.activate",
21639	//   "parameterOrder": [
21640	//     "merchantId",
21641	//     "regionCode"
21642	//   ],
21643	//   "parameters": {
21644	//     "merchantId": {
21645	//       "description": "Required. The ID of the account.",
21646	//       "format": "int64",
21647	//       "location": "path",
21648	//       "required": true,
21649	//       "type": "string"
21650	//     },
21651	//     "regionCode": {
21652	//       "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.",
21653	//       "location": "path",
21654	//       "required": true,
21655	//       "type": "string"
21656	//     }
21657	//   },
21658	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/activate",
21659	//   "request": {
21660	//     "$ref": "ActivateBuyOnGoogleProgramRequest"
21661	//   },
21662	//   "scopes": [
21663	//     "https://www.googleapis.com/auth/content"
21664	//   ]
21665	// }
21666
21667}
21668
21669// method id "content.buyongoogleprograms.get":
21670
21671type BuyongoogleprogramsGetCall struct {
21672	s            *APIService
21673	merchantId   int64
21674	regionCode   string
21675	urlParams_   gensupport.URLParams
21676	ifNoneMatch_ string
21677	ctx_         context.Context
21678	header_      http.Header
21679}
21680
21681// Get: Retrieves a status of the BoG program for your Merchant Center
21682// account.
21683//
21684// - merchantId: The ID of the account.
21685// - regionCode: The Program region code ISO 3166-1 alpha-2
21686//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
21687//   US is available.
21688func (r *BuyongoogleprogramsService) Get(merchantId int64, regionCode string) *BuyongoogleprogramsGetCall {
21689	c := &BuyongoogleprogramsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21690	c.merchantId = merchantId
21691	c.regionCode = regionCode
21692	return c
21693}
21694
21695// Fields allows partial responses to be retrieved. See
21696// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21697// for more information.
21698func (c *BuyongoogleprogramsGetCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsGetCall {
21699	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21700	return c
21701}
21702
21703// IfNoneMatch sets the optional parameter which makes the operation
21704// fail if the object's ETag matches the given value. This is useful for
21705// getting updates only after the object has changed since the last
21706// request. Use googleapi.IsNotModified to check whether the response
21707// error from Do is the result of In-None-Match.
21708func (c *BuyongoogleprogramsGetCall) IfNoneMatch(entityTag string) *BuyongoogleprogramsGetCall {
21709	c.ifNoneMatch_ = entityTag
21710	return c
21711}
21712
21713// Context sets the context to be used in this call's Do method. Any
21714// pending HTTP request will be aborted if the provided context is
21715// canceled.
21716func (c *BuyongoogleprogramsGetCall) Context(ctx context.Context) *BuyongoogleprogramsGetCall {
21717	c.ctx_ = ctx
21718	return c
21719}
21720
21721// Header returns an http.Header that can be modified by the caller to
21722// add HTTP headers to the request.
21723func (c *BuyongoogleprogramsGetCall) Header() http.Header {
21724	if c.header_ == nil {
21725		c.header_ = make(http.Header)
21726	}
21727	return c.header_
21728}
21729
21730func (c *BuyongoogleprogramsGetCall) doRequest(alt string) (*http.Response, error) {
21731	reqHeaders := make(http.Header)
21732	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21733	for k, v := range c.header_ {
21734		reqHeaders[k] = v
21735	}
21736	reqHeaders.Set("User-Agent", c.s.userAgent())
21737	if c.ifNoneMatch_ != "" {
21738		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21739	}
21740	var body io.Reader = nil
21741	c.urlParams_.Set("alt", alt)
21742	c.urlParams_.Set("prettyPrint", "false")
21743	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}")
21744	urls += "?" + c.urlParams_.Encode()
21745	req, err := http.NewRequest("GET", urls, body)
21746	if err != nil {
21747		return nil, err
21748	}
21749	req.Header = reqHeaders
21750	googleapi.Expand(req.URL, map[string]string{
21751		"merchantId": strconv.FormatInt(c.merchantId, 10),
21752		"regionCode": c.regionCode,
21753	})
21754	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21755}
21756
21757// Do executes the "content.buyongoogleprograms.get" call.
21758// Exactly one of *BuyOnGoogleProgramStatus or error will be non-nil.
21759// Any non-2xx status code is an error. Response headers are in either
21760// *BuyOnGoogleProgramStatus.ServerResponse.Header or (if a response was
21761// returned at all) in error.(*googleapi.Error).Header. Use
21762// googleapi.IsNotModified to check whether the returned error was
21763// because http.StatusNotModified was returned.
21764func (c *BuyongoogleprogramsGetCall) Do(opts ...googleapi.CallOption) (*BuyOnGoogleProgramStatus, error) {
21765	gensupport.SetOptions(c.urlParams_, opts...)
21766	res, err := c.doRequest("json")
21767	if res != nil && res.StatusCode == http.StatusNotModified {
21768		if res.Body != nil {
21769			res.Body.Close()
21770		}
21771		return nil, &googleapi.Error{
21772			Code:   res.StatusCode,
21773			Header: res.Header,
21774		}
21775	}
21776	if err != nil {
21777		return nil, err
21778	}
21779	defer googleapi.CloseBody(res)
21780	if err := googleapi.CheckResponse(res); err != nil {
21781		return nil, err
21782	}
21783	ret := &BuyOnGoogleProgramStatus{
21784		ServerResponse: googleapi.ServerResponse{
21785			Header:         res.Header,
21786			HTTPStatusCode: res.StatusCode,
21787		},
21788	}
21789	target := &ret
21790	if err := gensupport.DecodeResponse(target, res); err != nil {
21791		return nil, err
21792	}
21793	return ret, nil
21794	// {
21795	//   "description": "Retrieves a status of the BoG program for your Merchant Center account.",
21796	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}",
21797	//   "httpMethod": "GET",
21798	//   "id": "content.buyongoogleprograms.get",
21799	//   "parameterOrder": [
21800	//     "merchantId",
21801	//     "regionCode"
21802	//   ],
21803	//   "parameters": {
21804	//     "merchantId": {
21805	//       "description": "Required. The ID of the account.",
21806	//       "format": "int64",
21807	//       "location": "path",
21808	//       "required": true,
21809	//       "type": "string"
21810	//     },
21811	//     "regionCode": {
21812	//       "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.",
21813	//       "location": "path",
21814	//       "required": true,
21815	//       "type": "string"
21816	//     }
21817	//   },
21818	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}",
21819	//   "response": {
21820	//     "$ref": "BuyOnGoogleProgramStatus"
21821	//   },
21822	//   "scopes": [
21823	//     "https://www.googleapis.com/auth/content"
21824	//   ]
21825	// }
21826
21827}
21828
21829// method id "content.buyongoogleprograms.onboard":
21830
21831type BuyongoogleprogramsOnboardCall struct {
21832	s                                *APIService
21833	merchantId                       int64
21834	regionCode                       string
21835	onboardbuyongoogleprogramrequest *OnboardBuyOnGoogleProgramRequest
21836	urlParams_                       gensupport.URLParams
21837	ctx_                             context.Context
21838	header_                          http.Header
21839}
21840
21841// Onboard: Onboards the BoG program in your Merchant Center account. By
21842// using this method, you agree to the Terms of Service
21843// (https://merchants.google.com/mc/termsofservice/transactions/US/latest).
21844// Calling this method is only possible if the authenticated account is
21845// the same as the merchant id in the request. Calling this method
21846// multiple times will only accept Terms of Service if the latest
21847// version is not currently signed.
21848//
21849// - merchantId: The ID of the account.
21850// - regionCode: The program region code ISO 3166-1 alpha-2
21851//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
21852//   US is available.
21853func (r *BuyongoogleprogramsService) Onboard(merchantId int64, regionCode string, onboardbuyongoogleprogramrequest *OnboardBuyOnGoogleProgramRequest) *BuyongoogleprogramsOnboardCall {
21854	c := &BuyongoogleprogramsOnboardCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21855	c.merchantId = merchantId
21856	c.regionCode = regionCode
21857	c.onboardbuyongoogleprogramrequest = onboardbuyongoogleprogramrequest
21858	return c
21859}
21860
21861// Fields allows partial responses to be retrieved. See
21862// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21863// for more information.
21864func (c *BuyongoogleprogramsOnboardCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsOnboardCall {
21865	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21866	return c
21867}
21868
21869// Context sets the context to be used in this call's Do method. Any
21870// pending HTTP request will be aborted if the provided context is
21871// canceled.
21872func (c *BuyongoogleprogramsOnboardCall) Context(ctx context.Context) *BuyongoogleprogramsOnboardCall {
21873	c.ctx_ = ctx
21874	return c
21875}
21876
21877// Header returns an http.Header that can be modified by the caller to
21878// add HTTP headers to the request.
21879func (c *BuyongoogleprogramsOnboardCall) Header() http.Header {
21880	if c.header_ == nil {
21881		c.header_ = make(http.Header)
21882	}
21883	return c.header_
21884}
21885
21886func (c *BuyongoogleprogramsOnboardCall) doRequest(alt string) (*http.Response, error) {
21887	reqHeaders := make(http.Header)
21888	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
21889	for k, v := range c.header_ {
21890		reqHeaders[k] = v
21891	}
21892	reqHeaders.Set("User-Agent", c.s.userAgent())
21893	var body io.Reader = nil
21894	body, err := googleapi.WithoutDataWrapper.JSONReader(c.onboardbuyongoogleprogramrequest)
21895	if err != nil {
21896		return nil, err
21897	}
21898	reqHeaders.Set("Content-Type", "application/json")
21899	c.urlParams_.Set("alt", alt)
21900	c.urlParams_.Set("prettyPrint", "false")
21901	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/onboard")
21902	urls += "?" + c.urlParams_.Encode()
21903	req, err := http.NewRequest("POST", urls, body)
21904	if err != nil {
21905		return nil, err
21906	}
21907	req.Header = reqHeaders
21908	googleapi.Expand(req.URL, map[string]string{
21909		"merchantId": strconv.FormatInt(c.merchantId, 10),
21910		"regionCode": c.regionCode,
21911	})
21912	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21913}
21914
21915// Do executes the "content.buyongoogleprograms.onboard" call.
21916func (c *BuyongoogleprogramsOnboardCall) Do(opts ...googleapi.CallOption) error {
21917	gensupport.SetOptions(c.urlParams_, opts...)
21918	res, err := c.doRequest("json")
21919	if err != nil {
21920		return err
21921	}
21922	defer googleapi.CloseBody(res)
21923	if err := googleapi.CheckResponse(res); err != nil {
21924		return err
21925	}
21926	return nil
21927	// {
21928	//   "description": "Onboards the BoG program in your Merchant Center account. By using this method, you agree to the [Terms of Service](https://merchants.google.com/mc/termsofservice/transactions/US/latest). Calling this method is only possible if the authenticated account is the same as the merchant id in the request. Calling this method multiple times will only accept Terms of Service if the latest version is not currently signed.",
21929	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/onboard",
21930	//   "httpMethod": "POST",
21931	//   "id": "content.buyongoogleprograms.onboard",
21932	//   "parameterOrder": [
21933	//     "merchantId",
21934	//     "regionCode"
21935	//   ],
21936	//   "parameters": {
21937	//     "merchantId": {
21938	//       "description": "Required. The ID of the account.",
21939	//       "format": "int64",
21940	//       "location": "path",
21941	//       "required": true,
21942	//       "type": "string"
21943	//     },
21944	//     "regionCode": {
21945	//       "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.",
21946	//       "location": "path",
21947	//       "required": true,
21948	//       "type": "string"
21949	//     }
21950	//   },
21951	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/onboard",
21952	//   "request": {
21953	//     "$ref": "OnboardBuyOnGoogleProgramRequest"
21954	//   },
21955	//   "scopes": [
21956	//     "https://www.googleapis.com/auth/content"
21957	//   ]
21958	// }
21959
21960}
21961
21962// method id "content.buyongoogleprograms.pause":
21963
21964type BuyongoogleprogramsPauseCall struct {
21965	s                              *APIService
21966	merchantId                     int64
21967	regionCode                     string
21968	pausebuyongoogleprogramrequest *PauseBuyOnGoogleProgramRequest
21969	urlParams_                     gensupport.URLParams
21970	ctx_                           context.Context
21971	header_                        http.Header
21972}
21973
21974// Pause: Pauses the BoG program in your Merchant Center account.
21975// Important: This method is only whitelisted for selected merchants.
21976//
21977// - merchantId: The ID of the account.
21978// - regionCode: The program region code ISO 3166-1 alpha-2
21979//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
21980//   US is available.
21981func (r *BuyongoogleprogramsService) Pause(merchantId int64, regionCode string, pausebuyongoogleprogramrequest *PauseBuyOnGoogleProgramRequest) *BuyongoogleprogramsPauseCall {
21982	c := &BuyongoogleprogramsPauseCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21983	c.merchantId = merchantId
21984	c.regionCode = regionCode
21985	c.pausebuyongoogleprogramrequest = pausebuyongoogleprogramrequest
21986	return c
21987}
21988
21989// Fields allows partial responses to be retrieved. See
21990// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21991// for more information.
21992func (c *BuyongoogleprogramsPauseCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsPauseCall {
21993	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21994	return c
21995}
21996
21997// Context sets the context to be used in this call's Do method. Any
21998// pending HTTP request will be aborted if the provided context is
21999// canceled.
22000func (c *BuyongoogleprogramsPauseCall) Context(ctx context.Context) *BuyongoogleprogramsPauseCall {
22001	c.ctx_ = ctx
22002	return c
22003}
22004
22005// Header returns an http.Header that can be modified by the caller to
22006// add HTTP headers to the request.
22007func (c *BuyongoogleprogramsPauseCall) Header() http.Header {
22008	if c.header_ == nil {
22009		c.header_ = make(http.Header)
22010	}
22011	return c.header_
22012}
22013
22014func (c *BuyongoogleprogramsPauseCall) doRequest(alt string) (*http.Response, error) {
22015	reqHeaders := make(http.Header)
22016	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22017	for k, v := range c.header_ {
22018		reqHeaders[k] = v
22019	}
22020	reqHeaders.Set("User-Agent", c.s.userAgent())
22021	var body io.Reader = nil
22022	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pausebuyongoogleprogramrequest)
22023	if err != nil {
22024		return nil, err
22025	}
22026	reqHeaders.Set("Content-Type", "application/json")
22027	c.urlParams_.Set("alt", alt)
22028	c.urlParams_.Set("prettyPrint", "false")
22029	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/pause")
22030	urls += "?" + c.urlParams_.Encode()
22031	req, err := http.NewRequest("POST", urls, body)
22032	if err != nil {
22033		return nil, err
22034	}
22035	req.Header = reqHeaders
22036	googleapi.Expand(req.URL, map[string]string{
22037		"merchantId": strconv.FormatInt(c.merchantId, 10),
22038		"regionCode": c.regionCode,
22039	})
22040	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22041}
22042
22043// Do executes the "content.buyongoogleprograms.pause" call.
22044func (c *BuyongoogleprogramsPauseCall) Do(opts ...googleapi.CallOption) error {
22045	gensupport.SetOptions(c.urlParams_, opts...)
22046	res, err := c.doRequest("json")
22047	if err != nil {
22048		return err
22049	}
22050	defer googleapi.CloseBody(res)
22051	if err := googleapi.CheckResponse(res); err != nil {
22052		return err
22053	}
22054	return nil
22055	// {
22056	//   "description": "Pauses the BoG program in your Merchant Center account. Important: This method is only whitelisted for selected merchants.",
22057	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/pause",
22058	//   "httpMethod": "POST",
22059	//   "id": "content.buyongoogleprograms.pause",
22060	//   "parameterOrder": [
22061	//     "merchantId",
22062	//     "regionCode"
22063	//   ],
22064	//   "parameters": {
22065	//     "merchantId": {
22066	//       "description": "Required. The ID of the account.",
22067	//       "format": "int64",
22068	//       "location": "path",
22069	//       "required": true,
22070	//       "type": "string"
22071	//     },
22072	//     "regionCode": {
22073	//       "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.",
22074	//       "location": "path",
22075	//       "required": true,
22076	//       "type": "string"
22077	//     }
22078	//   },
22079	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/pause",
22080	//   "request": {
22081	//     "$ref": "PauseBuyOnGoogleProgramRequest"
22082	//   },
22083	//   "scopes": [
22084	//     "https://www.googleapis.com/auth/content"
22085	//   ]
22086	// }
22087
22088}
22089
22090// method id "content.buyongoogleprograms.requestreview":
22091
22092type BuyongoogleprogramsRequestreviewCall struct {
22093	s                                      *APIService
22094	merchantId                             int64
22095	regionCode                             string
22096	requestreviewbuyongoogleprogramrequest *RequestReviewBuyOnGoogleProgramRequest
22097	urlParams_                             gensupport.URLParams
22098	ctx_                                   context.Context
22099	header_                                http.Header
22100}
22101
22102// Requestreview: Requests review and then activates the BoG program in
22103// your Merchant Center account for the first time. Moves the program to
22104// the REVIEW_PENDING state. Important: This method is only whitelisted
22105// for selected merchants.
22106//
22107// - merchantId: The ID of the account.
22108// - regionCode: The program region code ISO 3166-1 alpha-2
22109//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22110//   US is available.
22111func (r *BuyongoogleprogramsService) Requestreview(merchantId int64, regionCode string, requestreviewbuyongoogleprogramrequest *RequestReviewBuyOnGoogleProgramRequest) *BuyongoogleprogramsRequestreviewCall {
22112	c := &BuyongoogleprogramsRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22113	c.merchantId = merchantId
22114	c.regionCode = regionCode
22115	c.requestreviewbuyongoogleprogramrequest = requestreviewbuyongoogleprogramrequest
22116	return c
22117}
22118
22119// Fields allows partial responses to be retrieved. See
22120// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22121// for more information.
22122func (c *BuyongoogleprogramsRequestreviewCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsRequestreviewCall {
22123	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22124	return c
22125}
22126
22127// Context sets the context to be used in this call's Do method. Any
22128// pending HTTP request will be aborted if the provided context is
22129// canceled.
22130func (c *BuyongoogleprogramsRequestreviewCall) Context(ctx context.Context) *BuyongoogleprogramsRequestreviewCall {
22131	c.ctx_ = ctx
22132	return c
22133}
22134
22135// Header returns an http.Header that can be modified by the caller to
22136// add HTTP headers to the request.
22137func (c *BuyongoogleprogramsRequestreviewCall) Header() http.Header {
22138	if c.header_ == nil {
22139		c.header_ = make(http.Header)
22140	}
22141	return c.header_
22142}
22143
22144func (c *BuyongoogleprogramsRequestreviewCall) doRequest(alt string) (*http.Response, error) {
22145	reqHeaders := make(http.Header)
22146	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22147	for k, v := range c.header_ {
22148		reqHeaders[k] = v
22149	}
22150	reqHeaders.Set("User-Agent", c.s.userAgent())
22151	var body io.Reader = nil
22152	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewbuyongoogleprogramrequest)
22153	if err != nil {
22154		return nil, err
22155	}
22156	reqHeaders.Set("Content-Type", "application/json")
22157	c.urlParams_.Set("alt", alt)
22158	c.urlParams_.Set("prettyPrint", "false")
22159	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/requestreview")
22160	urls += "?" + c.urlParams_.Encode()
22161	req, err := http.NewRequest("POST", urls, body)
22162	if err != nil {
22163		return nil, err
22164	}
22165	req.Header = reqHeaders
22166	googleapi.Expand(req.URL, map[string]string{
22167		"merchantId": strconv.FormatInt(c.merchantId, 10),
22168		"regionCode": c.regionCode,
22169	})
22170	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22171}
22172
22173// Do executes the "content.buyongoogleprograms.requestreview" call.
22174func (c *BuyongoogleprogramsRequestreviewCall) Do(opts ...googleapi.CallOption) error {
22175	gensupport.SetOptions(c.urlParams_, opts...)
22176	res, err := c.doRequest("json")
22177	if err != nil {
22178		return err
22179	}
22180	defer googleapi.CloseBody(res)
22181	if err := googleapi.CheckResponse(res); err != nil {
22182		return err
22183	}
22184	return nil
22185	// {
22186	//   "description": "Requests review and then activates the BoG program in your Merchant Center account for the first time. Moves the program to the REVIEW_PENDING state. Important: This method is only whitelisted for selected merchants.",
22187	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/requestreview",
22188	//   "httpMethod": "POST",
22189	//   "id": "content.buyongoogleprograms.requestreview",
22190	//   "parameterOrder": [
22191	//     "merchantId",
22192	//     "regionCode"
22193	//   ],
22194	//   "parameters": {
22195	//     "merchantId": {
22196	//       "description": "Required. The ID of the account.",
22197	//       "format": "int64",
22198	//       "location": "path",
22199	//       "required": true,
22200	//       "type": "string"
22201	//     },
22202	//     "regionCode": {
22203	//       "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.",
22204	//       "location": "path",
22205	//       "required": true,
22206	//       "type": "string"
22207	//     }
22208	//   },
22209	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/requestreview",
22210	//   "request": {
22211	//     "$ref": "RequestReviewBuyOnGoogleProgramRequest"
22212	//   },
22213	//   "scopes": [
22214	//     "https://www.googleapis.com/auth/content"
22215	//   ]
22216	// }
22217
22218}
22219
22220// method id "content.collections.create":
22221
22222type CollectionsCreateCall struct {
22223	s          *APIService
22224	merchantId int64
22225	collection *Collection
22226	urlParams_ gensupport.URLParams
22227	ctx_       context.Context
22228	header_    http.Header
22229}
22230
22231// Create: Uploads a collection to your Merchant Center account. If a
22232// collection with the same collectionId already exists, this method
22233// updates that entry. In each update, the collection is completely
22234// replaced by the fields in the body of the update request.
22235//
22236// - merchantId: The ID of the account that contains the collection.
22237//   This account cannot be a multi-client account.
22238func (r *CollectionsService) Create(merchantId int64, collection *Collection) *CollectionsCreateCall {
22239	c := &CollectionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22240	c.merchantId = merchantId
22241	c.collection = collection
22242	return c
22243}
22244
22245// Fields allows partial responses to be retrieved. See
22246// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22247// for more information.
22248func (c *CollectionsCreateCall) Fields(s ...googleapi.Field) *CollectionsCreateCall {
22249	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22250	return c
22251}
22252
22253// Context sets the context to be used in this call's Do method. Any
22254// pending HTTP request will be aborted if the provided context is
22255// canceled.
22256func (c *CollectionsCreateCall) Context(ctx context.Context) *CollectionsCreateCall {
22257	c.ctx_ = ctx
22258	return c
22259}
22260
22261// Header returns an http.Header that can be modified by the caller to
22262// add HTTP headers to the request.
22263func (c *CollectionsCreateCall) Header() http.Header {
22264	if c.header_ == nil {
22265		c.header_ = make(http.Header)
22266	}
22267	return c.header_
22268}
22269
22270func (c *CollectionsCreateCall) doRequest(alt string) (*http.Response, error) {
22271	reqHeaders := make(http.Header)
22272	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22273	for k, v := range c.header_ {
22274		reqHeaders[k] = v
22275	}
22276	reqHeaders.Set("User-Agent", c.s.userAgent())
22277	var body io.Reader = nil
22278	body, err := googleapi.WithoutDataWrapper.JSONReader(c.collection)
22279	if err != nil {
22280		return nil, err
22281	}
22282	reqHeaders.Set("Content-Type", "application/json")
22283	c.urlParams_.Set("alt", alt)
22284	c.urlParams_.Set("prettyPrint", "false")
22285	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections")
22286	urls += "?" + c.urlParams_.Encode()
22287	req, err := http.NewRequest("POST", urls, body)
22288	if err != nil {
22289		return nil, err
22290	}
22291	req.Header = reqHeaders
22292	googleapi.Expand(req.URL, map[string]string{
22293		"merchantId": strconv.FormatInt(c.merchantId, 10),
22294	})
22295	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22296}
22297
22298// Do executes the "content.collections.create" call.
22299// Exactly one of *Collection or error will be non-nil. Any non-2xx
22300// status code is an error. Response headers are in either
22301// *Collection.ServerResponse.Header or (if a response was returned at
22302// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22303// to check whether the returned error was because
22304// http.StatusNotModified was returned.
22305func (c *CollectionsCreateCall) Do(opts ...googleapi.CallOption) (*Collection, error) {
22306	gensupport.SetOptions(c.urlParams_, opts...)
22307	res, err := c.doRequest("json")
22308	if res != nil && res.StatusCode == http.StatusNotModified {
22309		if res.Body != nil {
22310			res.Body.Close()
22311		}
22312		return nil, &googleapi.Error{
22313			Code:   res.StatusCode,
22314			Header: res.Header,
22315		}
22316	}
22317	if err != nil {
22318		return nil, err
22319	}
22320	defer googleapi.CloseBody(res)
22321	if err := googleapi.CheckResponse(res); err != nil {
22322		return nil, err
22323	}
22324	ret := &Collection{
22325		ServerResponse: googleapi.ServerResponse{
22326			Header:         res.Header,
22327			HTTPStatusCode: res.StatusCode,
22328		},
22329	}
22330	target := &ret
22331	if err := gensupport.DecodeResponse(target, res); err != nil {
22332		return nil, err
22333	}
22334	return ret, nil
22335	// {
22336	//   "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.",
22337	//   "flatPath": "{merchantId}/collections",
22338	//   "httpMethod": "POST",
22339	//   "id": "content.collections.create",
22340	//   "parameterOrder": [
22341	//     "merchantId"
22342	//   ],
22343	//   "parameters": {
22344	//     "merchantId": {
22345	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
22346	//       "format": "int64",
22347	//       "location": "path",
22348	//       "required": true,
22349	//       "type": "string"
22350	//     }
22351	//   },
22352	//   "path": "{merchantId}/collections",
22353	//   "request": {
22354	//     "$ref": "Collection"
22355	//   },
22356	//   "response": {
22357	//     "$ref": "Collection"
22358	//   },
22359	//   "scopes": [
22360	//     "https://www.googleapis.com/auth/content"
22361	//   ]
22362	// }
22363
22364}
22365
22366// method id "content.collections.delete":
22367
22368type CollectionsDeleteCall struct {
22369	s            *APIService
22370	merchantId   int64
22371	collectionId string
22372	urlParams_   gensupport.URLParams
22373	ctx_         context.Context
22374	header_      http.Header
22375}
22376
22377// Delete: Deletes a collection from your Merchant Center account.
22378//
22379// - collectionId: The collectionId of the collection. CollectionId is
22380//   the same as the REST ID of the collection.
22381// - merchantId: The ID of the account that contains the collection.
22382//   This account cannot be a multi-client account.
22383func (r *CollectionsService) Delete(merchantId int64, collectionId string) *CollectionsDeleteCall {
22384	c := &CollectionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22385	c.merchantId = merchantId
22386	c.collectionId = collectionId
22387	return c
22388}
22389
22390// Fields allows partial responses to be retrieved. See
22391// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22392// for more information.
22393func (c *CollectionsDeleteCall) Fields(s ...googleapi.Field) *CollectionsDeleteCall {
22394	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22395	return c
22396}
22397
22398// Context sets the context to be used in this call's Do method. Any
22399// pending HTTP request will be aborted if the provided context is
22400// canceled.
22401func (c *CollectionsDeleteCall) Context(ctx context.Context) *CollectionsDeleteCall {
22402	c.ctx_ = ctx
22403	return c
22404}
22405
22406// Header returns an http.Header that can be modified by the caller to
22407// add HTTP headers to the request.
22408func (c *CollectionsDeleteCall) Header() http.Header {
22409	if c.header_ == nil {
22410		c.header_ = make(http.Header)
22411	}
22412	return c.header_
22413}
22414
22415func (c *CollectionsDeleteCall) doRequest(alt string) (*http.Response, error) {
22416	reqHeaders := make(http.Header)
22417	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22418	for k, v := range c.header_ {
22419		reqHeaders[k] = v
22420	}
22421	reqHeaders.Set("User-Agent", c.s.userAgent())
22422	var body io.Reader = nil
22423	c.urlParams_.Set("alt", alt)
22424	c.urlParams_.Set("prettyPrint", "false")
22425	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections/{collectionId}")
22426	urls += "?" + c.urlParams_.Encode()
22427	req, err := http.NewRequest("DELETE", urls, body)
22428	if err != nil {
22429		return nil, err
22430	}
22431	req.Header = reqHeaders
22432	googleapi.Expand(req.URL, map[string]string{
22433		"merchantId":   strconv.FormatInt(c.merchantId, 10),
22434		"collectionId": c.collectionId,
22435	})
22436	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22437}
22438
22439// Do executes the "content.collections.delete" call.
22440func (c *CollectionsDeleteCall) Do(opts ...googleapi.CallOption) error {
22441	gensupport.SetOptions(c.urlParams_, opts...)
22442	res, err := c.doRequest("json")
22443	if err != nil {
22444		return err
22445	}
22446	defer googleapi.CloseBody(res)
22447	if err := googleapi.CheckResponse(res); err != nil {
22448		return err
22449	}
22450	return nil
22451	// {
22452	//   "description": "Deletes a collection from your Merchant Center account.",
22453	//   "flatPath": "{merchantId}/collections/{collectionId}",
22454	//   "httpMethod": "DELETE",
22455	//   "id": "content.collections.delete",
22456	//   "parameterOrder": [
22457	//     "merchantId",
22458	//     "collectionId"
22459	//   ],
22460	//   "parameters": {
22461	//     "collectionId": {
22462	//       "description": "Required. The collectionId of the collection. CollectionId is the same as the REST ID of the collection.",
22463	//       "location": "path",
22464	//       "required": true,
22465	//       "type": "string"
22466	//     },
22467	//     "merchantId": {
22468	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
22469	//       "format": "int64",
22470	//       "location": "path",
22471	//       "required": true,
22472	//       "type": "string"
22473	//     }
22474	//   },
22475	//   "path": "{merchantId}/collections/{collectionId}",
22476	//   "scopes": [
22477	//     "https://www.googleapis.com/auth/content"
22478	//   ]
22479	// }
22480
22481}
22482
22483// method id "content.collections.get":
22484
22485type CollectionsGetCall struct {
22486	s            *APIService
22487	merchantId   int64
22488	collectionId string
22489	urlParams_   gensupport.URLParams
22490	ifNoneMatch_ string
22491	ctx_         context.Context
22492	header_      http.Header
22493}
22494
22495// Get: Retrieves a collection from your Merchant Center account.
22496//
22497// - collectionId: The REST ID of the collection.
22498// - merchantId: The ID of the account that contains the collection.
22499//   This account cannot be a multi-client account.
22500func (r *CollectionsService) Get(merchantId int64, collectionId string) *CollectionsGetCall {
22501	c := &CollectionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22502	c.merchantId = merchantId
22503	c.collectionId = collectionId
22504	return c
22505}
22506
22507// Fields allows partial responses to be retrieved. See
22508// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22509// for more information.
22510func (c *CollectionsGetCall) Fields(s ...googleapi.Field) *CollectionsGetCall {
22511	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22512	return c
22513}
22514
22515// IfNoneMatch sets the optional parameter which makes the operation
22516// fail if the object's ETag matches the given value. This is useful for
22517// getting updates only after the object has changed since the last
22518// request. Use googleapi.IsNotModified to check whether the response
22519// error from Do is the result of In-None-Match.
22520func (c *CollectionsGetCall) IfNoneMatch(entityTag string) *CollectionsGetCall {
22521	c.ifNoneMatch_ = entityTag
22522	return c
22523}
22524
22525// Context sets the context to be used in this call's Do method. Any
22526// pending HTTP request will be aborted if the provided context is
22527// canceled.
22528func (c *CollectionsGetCall) Context(ctx context.Context) *CollectionsGetCall {
22529	c.ctx_ = ctx
22530	return c
22531}
22532
22533// Header returns an http.Header that can be modified by the caller to
22534// add HTTP headers to the request.
22535func (c *CollectionsGetCall) Header() http.Header {
22536	if c.header_ == nil {
22537		c.header_ = make(http.Header)
22538	}
22539	return c.header_
22540}
22541
22542func (c *CollectionsGetCall) doRequest(alt string) (*http.Response, error) {
22543	reqHeaders := make(http.Header)
22544	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22545	for k, v := range c.header_ {
22546		reqHeaders[k] = v
22547	}
22548	reqHeaders.Set("User-Agent", c.s.userAgent())
22549	if c.ifNoneMatch_ != "" {
22550		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22551	}
22552	var body io.Reader = nil
22553	c.urlParams_.Set("alt", alt)
22554	c.urlParams_.Set("prettyPrint", "false")
22555	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections/{collectionId}")
22556	urls += "?" + c.urlParams_.Encode()
22557	req, err := http.NewRequest("GET", urls, body)
22558	if err != nil {
22559		return nil, err
22560	}
22561	req.Header = reqHeaders
22562	googleapi.Expand(req.URL, map[string]string{
22563		"merchantId":   strconv.FormatInt(c.merchantId, 10),
22564		"collectionId": c.collectionId,
22565	})
22566	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22567}
22568
22569// Do executes the "content.collections.get" call.
22570// Exactly one of *Collection or error will be non-nil. Any non-2xx
22571// status code is an error. Response headers are in either
22572// *Collection.ServerResponse.Header or (if a response was returned at
22573// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22574// to check whether the returned error was because
22575// http.StatusNotModified was returned.
22576func (c *CollectionsGetCall) Do(opts ...googleapi.CallOption) (*Collection, error) {
22577	gensupport.SetOptions(c.urlParams_, opts...)
22578	res, err := c.doRequest("json")
22579	if res != nil && res.StatusCode == http.StatusNotModified {
22580		if res.Body != nil {
22581			res.Body.Close()
22582		}
22583		return nil, &googleapi.Error{
22584			Code:   res.StatusCode,
22585			Header: res.Header,
22586		}
22587	}
22588	if err != nil {
22589		return nil, err
22590	}
22591	defer googleapi.CloseBody(res)
22592	if err := googleapi.CheckResponse(res); err != nil {
22593		return nil, err
22594	}
22595	ret := &Collection{
22596		ServerResponse: googleapi.ServerResponse{
22597			Header:         res.Header,
22598			HTTPStatusCode: res.StatusCode,
22599		},
22600	}
22601	target := &ret
22602	if err := gensupport.DecodeResponse(target, res); err != nil {
22603		return nil, err
22604	}
22605	return ret, nil
22606	// {
22607	//   "description": "Retrieves a collection from your Merchant Center account.",
22608	//   "flatPath": "{merchantId}/collections/{collectionId}",
22609	//   "httpMethod": "GET",
22610	//   "id": "content.collections.get",
22611	//   "parameterOrder": [
22612	//     "merchantId",
22613	//     "collectionId"
22614	//   ],
22615	//   "parameters": {
22616	//     "collectionId": {
22617	//       "description": "Required. The REST ID of the collection.",
22618	//       "location": "path",
22619	//       "required": true,
22620	//       "type": "string"
22621	//     },
22622	//     "merchantId": {
22623	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
22624	//       "format": "int64",
22625	//       "location": "path",
22626	//       "required": true,
22627	//       "type": "string"
22628	//     }
22629	//   },
22630	//   "path": "{merchantId}/collections/{collectionId}",
22631	//   "response": {
22632	//     "$ref": "Collection"
22633	//   },
22634	//   "scopes": [
22635	//     "https://www.googleapis.com/auth/content"
22636	//   ]
22637	// }
22638
22639}
22640
22641// method id "content.collections.list":
22642
22643type CollectionsListCall struct {
22644	s            *APIService
22645	merchantId   int64
22646	urlParams_   gensupport.URLParams
22647	ifNoneMatch_ string
22648	ctx_         context.Context
22649	header_      http.Header
22650}
22651
22652// List: Lists the collections in your Merchant Center account. The
22653// response might contain fewer items than specified by page_size. Rely
22654// on next_page_token to determine if there are more items to be
22655// requested.
22656//
22657// - merchantId: The ID of the account that contains the collection.
22658//   This account cannot be a multi-client account.
22659func (r *CollectionsService) List(merchantId int64) *CollectionsListCall {
22660	c := &CollectionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22661	c.merchantId = merchantId
22662	return c
22663}
22664
22665// PageSize sets the optional parameter "pageSize": The maximum number
22666// of collections to return in the response, used for paging. Defaults
22667// to 50; values above 1000 will be coerced to 1000.
22668func (c *CollectionsListCall) PageSize(pageSize int64) *CollectionsListCall {
22669	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
22670	return c
22671}
22672
22673// PageToken sets the optional parameter "pageToken": Token (if
22674// provided) to retrieve the subsequent page. All other parameters must
22675// match the original call that provided the page token.
22676func (c *CollectionsListCall) PageToken(pageToken string) *CollectionsListCall {
22677	c.urlParams_.Set("pageToken", pageToken)
22678	return c
22679}
22680
22681// Fields allows partial responses to be retrieved. See
22682// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22683// for more information.
22684func (c *CollectionsListCall) Fields(s ...googleapi.Field) *CollectionsListCall {
22685	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22686	return c
22687}
22688
22689// IfNoneMatch sets the optional parameter which makes the operation
22690// fail if the object's ETag matches the given value. This is useful for
22691// getting updates only after the object has changed since the last
22692// request. Use googleapi.IsNotModified to check whether the response
22693// error from Do is the result of In-None-Match.
22694func (c *CollectionsListCall) IfNoneMatch(entityTag string) *CollectionsListCall {
22695	c.ifNoneMatch_ = entityTag
22696	return c
22697}
22698
22699// Context sets the context to be used in this call's Do method. Any
22700// pending HTTP request will be aborted if the provided context is
22701// canceled.
22702func (c *CollectionsListCall) Context(ctx context.Context) *CollectionsListCall {
22703	c.ctx_ = ctx
22704	return c
22705}
22706
22707// Header returns an http.Header that can be modified by the caller to
22708// add HTTP headers to the request.
22709func (c *CollectionsListCall) Header() http.Header {
22710	if c.header_ == nil {
22711		c.header_ = make(http.Header)
22712	}
22713	return c.header_
22714}
22715
22716func (c *CollectionsListCall) doRequest(alt string) (*http.Response, error) {
22717	reqHeaders := make(http.Header)
22718	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22719	for k, v := range c.header_ {
22720		reqHeaders[k] = v
22721	}
22722	reqHeaders.Set("User-Agent", c.s.userAgent())
22723	if c.ifNoneMatch_ != "" {
22724		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22725	}
22726	var body io.Reader = nil
22727	c.urlParams_.Set("alt", alt)
22728	c.urlParams_.Set("prettyPrint", "false")
22729	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections")
22730	urls += "?" + c.urlParams_.Encode()
22731	req, err := http.NewRequest("GET", urls, body)
22732	if err != nil {
22733		return nil, err
22734	}
22735	req.Header = reqHeaders
22736	googleapi.Expand(req.URL, map[string]string{
22737		"merchantId": strconv.FormatInt(c.merchantId, 10),
22738	})
22739	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22740}
22741
22742// Do executes the "content.collections.list" call.
22743// Exactly one of *ListCollectionsResponse or error will be non-nil. Any
22744// non-2xx status code is an error. Response headers are in either
22745// *ListCollectionsResponse.ServerResponse.Header or (if a response was
22746// returned at all) in error.(*googleapi.Error).Header. Use
22747// googleapi.IsNotModified to check whether the returned error was
22748// because http.StatusNotModified was returned.
22749func (c *CollectionsListCall) Do(opts ...googleapi.CallOption) (*ListCollectionsResponse, error) {
22750	gensupport.SetOptions(c.urlParams_, opts...)
22751	res, err := c.doRequest("json")
22752	if res != nil && res.StatusCode == http.StatusNotModified {
22753		if res.Body != nil {
22754			res.Body.Close()
22755		}
22756		return nil, &googleapi.Error{
22757			Code:   res.StatusCode,
22758			Header: res.Header,
22759		}
22760	}
22761	if err != nil {
22762		return nil, err
22763	}
22764	defer googleapi.CloseBody(res)
22765	if err := googleapi.CheckResponse(res); err != nil {
22766		return nil, err
22767	}
22768	ret := &ListCollectionsResponse{
22769		ServerResponse: googleapi.ServerResponse{
22770			Header:         res.Header,
22771			HTTPStatusCode: res.StatusCode,
22772		},
22773	}
22774	target := &ret
22775	if err := gensupport.DecodeResponse(target, res); err != nil {
22776		return nil, err
22777	}
22778	return ret, nil
22779	// {
22780	//   "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.",
22781	//   "flatPath": "{merchantId}/collections",
22782	//   "httpMethod": "GET",
22783	//   "id": "content.collections.list",
22784	//   "parameterOrder": [
22785	//     "merchantId"
22786	//   ],
22787	//   "parameters": {
22788	//     "merchantId": {
22789	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
22790	//       "format": "int64",
22791	//       "location": "path",
22792	//       "required": true,
22793	//       "type": "string"
22794	//     },
22795	//     "pageSize": {
22796	//       "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.",
22797	//       "format": "int32",
22798	//       "location": "query",
22799	//       "type": "integer"
22800	//     },
22801	//     "pageToken": {
22802	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
22803	//       "location": "query",
22804	//       "type": "string"
22805	//     }
22806	//   },
22807	//   "path": "{merchantId}/collections",
22808	//   "response": {
22809	//     "$ref": "ListCollectionsResponse"
22810	//   },
22811	//   "scopes": [
22812	//     "https://www.googleapis.com/auth/content"
22813	//   ]
22814	// }
22815
22816}
22817
22818// Pages invokes f for each page of results.
22819// A non-nil error returned from f will halt the iteration.
22820// The provided context supersedes any context provided to the Context method.
22821func (c *CollectionsListCall) Pages(ctx context.Context, f func(*ListCollectionsResponse) error) error {
22822	c.ctx_ = ctx
22823	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22824	for {
22825		x, err := c.Do()
22826		if err != nil {
22827			return err
22828		}
22829		if err := f(x); err != nil {
22830			return err
22831		}
22832		if x.NextPageToken == "" {
22833			return nil
22834		}
22835		c.PageToken(x.NextPageToken)
22836	}
22837}
22838
22839// method id "content.collectionstatuses.get":
22840
22841type CollectionstatusesGetCall struct {
22842	s            *APIService
22843	merchantId   int64
22844	collectionId string
22845	urlParams_   gensupport.URLParams
22846	ifNoneMatch_ string
22847	ctx_         context.Context
22848	header_      http.Header
22849}
22850
22851// Get: Gets the status of a collection from your Merchant Center
22852// account.
22853//
22854// - collectionId: The collectionId of the collection. CollectionId is
22855//   the same as the REST ID of the collection.
22856// - merchantId: The ID of the account that contains the collection.
22857//   This account cannot be a multi-client account.
22858func (r *CollectionstatusesService) Get(merchantId int64, collectionId string) *CollectionstatusesGetCall {
22859	c := &CollectionstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22860	c.merchantId = merchantId
22861	c.collectionId = collectionId
22862	return c
22863}
22864
22865// Fields allows partial responses to be retrieved. See
22866// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22867// for more information.
22868func (c *CollectionstatusesGetCall) Fields(s ...googleapi.Field) *CollectionstatusesGetCall {
22869	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22870	return c
22871}
22872
22873// IfNoneMatch sets the optional parameter which makes the operation
22874// fail if the object's ETag matches the given value. This is useful for
22875// getting updates only after the object has changed since the last
22876// request. Use googleapi.IsNotModified to check whether the response
22877// error from Do is the result of In-None-Match.
22878func (c *CollectionstatusesGetCall) IfNoneMatch(entityTag string) *CollectionstatusesGetCall {
22879	c.ifNoneMatch_ = entityTag
22880	return c
22881}
22882
22883// Context sets the context to be used in this call's Do method. Any
22884// pending HTTP request will be aborted if the provided context is
22885// canceled.
22886func (c *CollectionstatusesGetCall) Context(ctx context.Context) *CollectionstatusesGetCall {
22887	c.ctx_ = ctx
22888	return c
22889}
22890
22891// Header returns an http.Header that can be modified by the caller to
22892// add HTTP headers to the request.
22893func (c *CollectionstatusesGetCall) Header() http.Header {
22894	if c.header_ == nil {
22895		c.header_ = make(http.Header)
22896	}
22897	return c.header_
22898}
22899
22900func (c *CollectionstatusesGetCall) doRequest(alt string) (*http.Response, error) {
22901	reqHeaders := make(http.Header)
22902	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
22903	for k, v := range c.header_ {
22904		reqHeaders[k] = v
22905	}
22906	reqHeaders.Set("User-Agent", c.s.userAgent())
22907	if c.ifNoneMatch_ != "" {
22908		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22909	}
22910	var body io.Reader = nil
22911	c.urlParams_.Set("alt", alt)
22912	c.urlParams_.Set("prettyPrint", "false")
22913	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collectionstatuses/{collectionId}")
22914	urls += "?" + c.urlParams_.Encode()
22915	req, err := http.NewRequest("GET", urls, body)
22916	if err != nil {
22917		return nil, err
22918	}
22919	req.Header = reqHeaders
22920	googleapi.Expand(req.URL, map[string]string{
22921		"merchantId":   strconv.FormatInt(c.merchantId, 10),
22922		"collectionId": c.collectionId,
22923	})
22924	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22925}
22926
22927// Do executes the "content.collectionstatuses.get" call.
22928// Exactly one of *CollectionStatus or error will be non-nil. Any
22929// non-2xx status code is an error. Response headers are in either
22930// *CollectionStatus.ServerResponse.Header or (if a response was
22931// returned at all) in error.(*googleapi.Error).Header. Use
22932// googleapi.IsNotModified to check whether the returned error was
22933// because http.StatusNotModified was returned.
22934func (c *CollectionstatusesGetCall) Do(opts ...googleapi.CallOption) (*CollectionStatus, error) {
22935	gensupport.SetOptions(c.urlParams_, opts...)
22936	res, err := c.doRequest("json")
22937	if res != nil && res.StatusCode == http.StatusNotModified {
22938		if res.Body != nil {
22939			res.Body.Close()
22940		}
22941		return nil, &googleapi.Error{
22942			Code:   res.StatusCode,
22943			Header: res.Header,
22944		}
22945	}
22946	if err != nil {
22947		return nil, err
22948	}
22949	defer googleapi.CloseBody(res)
22950	if err := googleapi.CheckResponse(res); err != nil {
22951		return nil, err
22952	}
22953	ret := &CollectionStatus{
22954		ServerResponse: googleapi.ServerResponse{
22955			Header:         res.Header,
22956			HTTPStatusCode: res.StatusCode,
22957		},
22958	}
22959	target := &ret
22960	if err := gensupport.DecodeResponse(target, res); err != nil {
22961		return nil, err
22962	}
22963	return ret, nil
22964	// {
22965	//   "description": "Gets the status of a collection from your Merchant Center account.",
22966	//   "flatPath": "{merchantId}/collectionstatuses/{collectionId}",
22967	//   "httpMethod": "GET",
22968	//   "id": "content.collectionstatuses.get",
22969	//   "parameterOrder": [
22970	//     "merchantId",
22971	//     "collectionId"
22972	//   ],
22973	//   "parameters": {
22974	//     "collectionId": {
22975	//       "description": "Required. The collectionId of the collection. CollectionId is the same as the REST ID of the collection.",
22976	//       "location": "path",
22977	//       "required": true,
22978	//       "type": "string"
22979	//     },
22980	//     "merchantId": {
22981	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
22982	//       "format": "int64",
22983	//       "location": "path",
22984	//       "required": true,
22985	//       "type": "string"
22986	//     }
22987	//   },
22988	//   "path": "{merchantId}/collectionstatuses/{collectionId}",
22989	//   "response": {
22990	//     "$ref": "CollectionStatus"
22991	//   },
22992	//   "scopes": [
22993	//     "https://www.googleapis.com/auth/content"
22994	//   ]
22995	// }
22996
22997}
22998
22999// method id "content.collectionstatuses.list":
23000
23001type CollectionstatusesListCall struct {
23002	s            *APIService
23003	merchantId   int64
23004	urlParams_   gensupport.URLParams
23005	ifNoneMatch_ string
23006	ctx_         context.Context
23007	header_      http.Header
23008}
23009
23010// List: Lists the statuses of the collections in your Merchant Center
23011// account.
23012//
23013// - merchantId: The ID of the account that contains the collection.
23014//   This account cannot be a multi-client account.
23015func (r *CollectionstatusesService) List(merchantId int64) *CollectionstatusesListCall {
23016	c := &CollectionstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23017	c.merchantId = merchantId
23018	return c
23019}
23020
23021// PageSize sets the optional parameter "pageSize": The maximum number
23022// of collection statuses to return in the response, used for paging.
23023// Defaults to 50; values above 1000 will be coerced to 1000.
23024func (c *CollectionstatusesListCall) PageSize(pageSize int64) *CollectionstatusesListCall {
23025	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23026	return c
23027}
23028
23029// PageToken sets the optional parameter "pageToken": Token (if
23030// provided) to retrieve the subsequent page. All other parameters must
23031// match the original call that provided the page token.
23032func (c *CollectionstatusesListCall) PageToken(pageToken string) *CollectionstatusesListCall {
23033	c.urlParams_.Set("pageToken", pageToken)
23034	return c
23035}
23036
23037// Fields allows partial responses to be retrieved. See
23038// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23039// for more information.
23040func (c *CollectionstatusesListCall) Fields(s ...googleapi.Field) *CollectionstatusesListCall {
23041	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23042	return c
23043}
23044
23045// IfNoneMatch sets the optional parameter which makes the operation
23046// fail if the object's ETag matches the given value. This is useful for
23047// getting updates only after the object has changed since the last
23048// request. Use googleapi.IsNotModified to check whether the response
23049// error from Do is the result of In-None-Match.
23050func (c *CollectionstatusesListCall) IfNoneMatch(entityTag string) *CollectionstatusesListCall {
23051	c.ifNoneMatch_ = entityTag
23052	return c
23053}
23054
23055// Context sets the context to be used in this call's Do method. Any
23056// pending HTTP request will be aborted if the provided context is
23057// canceled.
23058func (c *CollectionstatusesListCall) Context(ctx context.Context) *CollectionstatusesListCall {
23059	c.ctx_ = ctx
23060	return c
23061}
23062
23063// Header returns an http.Header that can be modified by the caller to
23064// add HTTP headers to the request.
23065func (c *CollectionstatusesListCall) Header() http.Header {
23066	if c.header_ == nil {
23067		c.header_ = make(http.Header)
23068	}
23069	return c.header_
23070}
23071
23072func (c *CollectionstatusesListCall) doRequest(alt string) (*http.Response, error) {
23073	reqHeaders := make(http.Header)
23074	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23075	for k, v := range c.header_ {
23076		reqHeaders[k] = v
23077	}
23078	reqHeaders.Set("User-Agent", c.s.userAgent())
23079	if c.ifNoneMatch_ != "" {
23080		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23081	}
23082	var body io.Reader = nil
23083	c.urlParams_.Set("alt", alt)
23084	c.urlParams_.Set("prettyPrint", "false")
23085	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collectionstatuses")
23086	urls += "?" + c.urlParams_.Encode()
23087	req, err := http.NewRequest("GET", urls, body)
23088	if err != nil {
23089		return nil, err
23090	}
23091	req.Header = reqHeaders
23092	googleapi.Expand(req.URL, map[string]string{
23093		"merchantId": strconv.FormatInt(c.merchantId, 10),
23094	})
23095	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23096}
23097
23098// Do executes the "content.collectionstatuses.list" call.
23099// Exactly one of *ListCollectionStatusesResponse or error will be
23100// non-nil. Any non-2xx status code is an error. Response headers are in
23101// either *ListCollectionStatusesResponse.ServerResponse.Header or (if a
23102// response was returned at all) in error.(*googleapi.Error).Header. Use
23103// googleapi.IsNotModified to check whether the returned error was
23104// because http.StatusNotModified was returned.
23105func (c *CollectionstatusesListCall) Do(opts ...googleapi.CallOption) (*ListCollectionStatusesResponse, error) {
23106	gensupport.SetOptions(c.urlParams_, opts...)
23107	res, err := c.doRequest("json")
23108	if res != nil && res.StatusCode == http.StatusNotModified {
23109		if res.Body != nil {
23110			res.Body.Close()
23111		}
23112		return nil, &googleapi.Error{
23113			Code:   res.StatusCode,
23114			Header: res.Header,
23115		}
23116	}
23117	if err != nil {
23118		return nil, err
23119	}
23120	defer googleapi.CloseBody(res)
23121	if err := googleapi.CheckResponse(res); err != nil {
23122		return nil, err
23123	}
23124	ret := &ListCollectionStatusesResponse{
23125		ServerResponse: googleapi.ServerResponse{
23126			Header:         res.Header,
23127			HTTPStatusCode: res.StatusCode,
23128		},
23129	}
23130	target := &ret
23131	if err := gensupport.DecodeResponse(target, res); err != nil {
23132		return nil, err
23133	}
23134	return ret, nil
23135	// {
23136	//   "description": "Lists the statuses of the collections in your Merchant Center account.",
23137	//   "flatPath": "{merchantId}/collectionstatuses",
23138	//   "httpMethod": "GET",
23139	//   "id": "content.collectionstatuses.list",
23140	//   "parameterOrder": [
23141	//     "merchantId"
23142	//   ],
23143	//   "parameters": {
23144	//     "merchantId": {
23145	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23146	//       "format": "int64",
23147	//       "location": "path",
23148	//       "required": true,
23149	//       "type": "string"
23150	//     },
23151	//     "pageSize": {
23152	//       "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.",
23153	//       "format": "int32",
23154	//       "location": "query",
23155	//       "type": "integer"
23156	//     },
23157	//     "pageToken": {
23158	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
23159	//       "location": "query",
23160	//       "type": "string"
23161	//     }
23162	//   },
23163	//   "path": "{merchantId}/collectionstatuses",
23164	//   "response": {
23165	//     "$ref": "ListCollectionStatusesResponse"
23166	//   },
23167	//   "scopes": [
23168	//     "https://www.googleapis.com/auth/content"
23169	//   ]
23170	// }
23171
23172}
23173
23174// Pages invokes f for each page of results.
23175// A non-nil error returned from f will halt the iteration.
23176// The provided context supersedes any context provided to the Context method.
23177func (c *CollectionstatusesListCall) Pages(ctx context.Context, f func(*ListCollectionStatusesResponse) error) error {
23178	c.ctx_ = ctx
23179	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23180	for {
23181		x, err := c.Do()
23182		if err != nil {
23183			return err
23184		}
23185		if err := f(x); err != nil {
23186			return err
23187		}
23188		if x.NextPageToken == "" {
23189			return nil
23190		}
23191		c.PageToken(x.NextPageToken)
23192	}
23193}
23194
23195// method id "content.csses.get":
23196
23197type CssesGetCall struct {
23198	s            *APIService
23199	cssGroupId   int64
23200	cssDomainId  int64
23201	urlParams_   gensupport.URLParams
23202	ifNoneMatch_ string
23203	ctx_         context.Context
23204	header_      http.Header
23205}
23206
23207// Get: Retrieves a single CSS domain by ID.
23208//
23209// - cssDomainId: The ID of the CSS domain to return.
23210// - cssGroupId: The ID of the managing account. If this parameter is
23211//   not the same as cssDomainId (#cssDomainId), then this ID must be a
23212//   CSS group ID and `cssDomainId` must be the ID of a CSS domain
23213//   affiliated with this group.
23214func (r *CssesService) Get(cssGroupId int64, cssDomainId int64) *CssesGetCall {
23215	c := &CssesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23216	c.cssGroupId = cssGroupId
23217	c.cssDomainId = cssDomainId
23218	return c
23219}
23220
23221// Fields allows partial responses to be retrieved. See
23222// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23223// for more information.
23224func (c *CssesGetCall) Fields(s ...googleapi.Field) *CssesGetCall {
23225	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23226	return c
23227}
23228
23229// IfNoneMatch sets the optional parameter which makes the operation
23230// fail if the object's ETag matches the given value. This is useful for
23231// getting updates only after the object has changed since the last
23232// request. Use googleapi.IsNotModified to check whether the response
23233// error from Do is the result of In-None-Match.
23234func (c *CssesGetCall) IfNoneMatch(entityTag string) *CssesGetCall {
23235	c.ifNoneMatch_ = entityTag
23236	return c
23237}
23238
23239// Context sets the context to be used in this call's Do method. Any
23240// pending HTTP request will be aborted if the provided context is
23241// canceled.
23242func (c *CssesGetCall) Context(ctx context.Context) *CssesGetCall {
23243	c.ctx_ = ctx
23244	return c
23245}
23246
23247// Header returns an http.Header that can be modified by the caller to
23248// add HTTP headers to the request.
23249func (c *CssesGetCall) Header() http.Header {
23250	if c.header_ == nil {
23251		c.header_ = make(http.Header)
23252	}
23253	return c.header_
23254}
23255
23256func (c *CssesGetCall) doRequest(alt string) (*http.Response, error) {
23257	reqHeaders := make(http.Header)
23258	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23259	for k, v := range c.header_ {
23260		reqHeaders[k] = v
23261	}
23262	reqHeaders.Set("User-Agent", c.s.userAgent())
23263	if c.ifNoneMatch_ != "" {
23264		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23265	}
23266	var body io.Reader = nil
23267	c.urlParams_.Set("alt", alt)
23268	c.urlParams_.Set("prettyPrint", "false")
23269	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses/{cssDomainId}")
23270	urls += "?" + c.urlParams_.Encode()
23271	req, err := http.NewRequest("GET", urls, body)
23272	if err != nil {
23273		return nil, err
23274	}
23275	req.Header = reqHeaders
23276	googleapi.Expand(req.URL, map[string]string{
23277		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
23278		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
23279	})
23280	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23281}
23282
23283// Do executes the "content.csses.get" call.
23284// Exactly one of *Css or error will be non-nil. Any non-2xx status code
23285// is an error. Response headers are in either
23286// *Css.ServerResponse.Header or (if a response was returned at all) in
23287// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23288// whether the returned error was because http.StatusNotModified was
23289// returned.
23290func (c *CssesGetCall) Do(opts ...googleapi.CallOption) (*Css, error) {
23291	gensupport.SetOptions(c.urlParams_, opts...)
23292	res, err := c.doRequest("json")
23293	if res != nil && res.StatusCode == http.StatusNotModified {
23294		if res.Body != nil {
23295			res.Body.Close()
23296		}
23297		return nil, &googleapi.Error{
23298			Code:   res.StatusCode,
23299			Header: res.Header,
23300		}
23301	}
23302	if err != nil {
23303		return nil, err
23304	}
23305	defer googleapi.CloseBody(res)
23306	if err := googleapi.CheckResponse(res); err != nil {
23307		return nil, err
23308	}
23309	ret := &Css{
23310		ServerResponse: googleapi.ServerResponse{
23311			Header:         res.Header,
23312			HTTPStatusCode: res.StatusCode,
23313		},
23314	}
23315	target := &ret
23316	if err := gensupport.DecodeResponse(target, res); err != nil {
23317		return nil, err
23318	}
23319	return ret, nil
23320	// {
23321	//   "description": "Retrieves a single CSS domain by ID.",
23322	//   "flatPath": "{cssGroupId}/csses/{cssDomainId}",
23323	//   "httpMethod": "GET",
23324	//   "id": "content.csses.get",
23325	//   "parameterOrder": [
23326	//     "cssGroupId",
23327	//     "cssDomainId"
23328	//   ],
23329	//   "parameters": {
23330	//     "cssDomainId": {
23331	//       "description": "Required. The ID of the CSS domain to return.",
23332	//       "format": "int64",
23333	//       "location": "path",
23334	//       "required": true,
23335	//       "type": "string"
23336	//     },
23337	//     "cssGroupId": {
23338	//       "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.",
23339	//       "format": "int64",
23340	//       "location": "path",
23341	//       "required": true,
23342	//       "type": "string"
23343	//     }
23344	//   },
23345	//   "path": "{cssGroupId}/csses/{cssDomainId}",
23346	//   "response": {
23347	//     "$ref": "Css"
23348	//   },
23349	//   "scopes": [
23350	//     "https://www.googleapis.com/auth/content"
23351	//   ]
23352	// }
23353
23354}
23355
23356// method id "content.csses.list":
23357
23358type CssesListCall struct {
23359	s            *APIService
23360	cssGroupId   int64
23361	urlParams_   gensupport.URLParams
23362	ifNoneMatch_ string
23363	ctx_         context.Context
23364	header_      http.Header
23365}
23366
23367// List: Lists CSS domains affiliated with a CSS group.
23368//
23369// - cssGroupId: The CSS group ID of CSS domains to be listed.
23370func (r *CssesService) List(cssGroupId int64) *CssesListCall {
23371	c := &CssesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23372	c.cssGroupId = cssGroupId
23373	return c
23374}
23375
23376// PageSize sets the optional parameter "pageSize": The maximum number
23377// of CSS domains to return. The service may return fewer than this
23378// value. If unspecified, at most 50 CSS domains will be returned. The
23379// maximum value is 1000; values above 1000 will be coerced to 1000.
23380func (c *CssesListCall) PageSize(pageSize int64) *CssesListCall {
23381	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23382	return c
23383}
23384
23385// PageToken sets the optional parameter "pageToken": A page token,
23386// received from a previous `ListCsses` call. Provide this to retrieve
23387// the subsequent page. When paginating, all other parameters provided
23388// to `ListCsses` must match the call that provided the page token.
23389func (c *CssesListCall) PageToken(pageToken string) *CssesListCall {
23390	c.urlParams_.Set("pageToken", pageToken)
23391	return c
23392}
23393
23394// Fields allows partial responses to be retrieved. See
23395// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23396// for more information.
23397func (c *CssesListCall) Fields(s ...googleapi.Field) *CssesListCall {
23398	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23399	return c
23400}
23401
23402// IfNoneMatch sets the optional parameter which makes the operation
23403// fail if the object's ETag matches the given value. This is useful for
23404// getting updates only after the object has changed since the last
23405// request. Use googleapi.IsNotModified to check whether the response
23406// error from Do is the result of In-None-Match.
23407func (c *CssesListCall) IfNoneMatch(entityTag string) *CssesListCall {
23408	c.ifNoneMatch_ = entityTag
23409	return c
23410}
23411
23412// Context sets the context to be used in this call's Do method. Any
23413// pending HTTP request will be aborted if the provided context is
23414// canceled.
23415func (c *CssesListCall) Context(ctx context.Context) *CssesListCall {
23416	c.ctx_ = ctx
23417	return c
23418}
23419
23420// Header returns an http.Header that can be modified by the caller to
23421// add HTTP headers to the request.
23422func (c *CssesListCall) Header() http.Header {
23423	if c.header_ == nil {
23424		c.header_ = make(http.Header)
23425	}
23426	return c.header_
23427}
23428
23429func (c *CssesListCall) doRequest(alt string) (*http.Response, error) {
23430	reqHeaders := make(http.Header)
23431	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23432	for k, v := range c.header_ {
23433		reqHeaders[k] = v
23434	}
23435	reqHeaders.Set("User-Agent", c.s.userAgent())
23436	if c.ifNoneMatch_ != "" {
23437		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23438	}
23439	var body io.Reader = nil
23440	c.urlParams_.Set("alt", alt)
23441	c.urlParams_.Set("prettyPrint", "false")
23442	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses")
23443	urls += "?" + c.urlParams_.Encode()
23444	req, err := http.NewRequest("GET", urls, body)
23445	if err != nil {
23446		return nil, err
23447	}
23448	req.Header = reqHeaders
23449	googleapi.Expand(req.URL, map[string]string{
23450		"cssGroupId": strconv.FormatInt(c.cssGroupId, 10),
23451	})
23452	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23453}
23454
23455// Do executes the "content.csses.list" call.
23456// Exactly one of *ListCssesResponse or error will be non-nil. Any
23457// non-2xx status code is an error. Response headers are in either
23458// *ListCssesResponse.ServerResponse.Header or (if a response was
23459// returned at all) in error.(*googleapi.Error).Header. Use
23460// googleapi.IsNotModified to check whether the returned error was
23461// because http.StatusNotModified was returned.
23462func (c *CssesListCall) Do(opts ...googleapi.CallOption) (*ListCssesResponse, error) {
23463	gensupport.SetOptions(c.urlParams_, opts...)
23464	res, err := c.doRequest("json")
23465	if res != nil && res.StatusCode == http.StatusNotModified {
23466		if res.Body != nil {
23467			res.Body.Close()
23468		}
23469		return nil, &googleapi.Error{
23470			Code:   res.StatusCode,
23471			Header: res.Header,
23472		}
23473	}
23474	if err != nil {
23475		return nil, err
23476	}
23477	defer googleapi.CloseBody(res)
23478	if err := googleapi.CheckResponse(res); err != nil {
23479		return nil, err
23480	}
23481	ret := &ListCssesResponse{
23482		ServerResponse: googleapi.ServerResponse{
23483			Header:         res.Header,
23484			HTTPStatusCode: res.StatusCode,
23485		},
23486	}
23487	target := &ret
23488	if err := gensupport.DecodeResponse(target, res); err != nil {
23489		return nil, err
23490	}
23491	return ret, nil
23492	// {
23493	//   "description": "Lists CSS domains affiliated with a CSS group.",
23494	//   "flatPath": "{cssGroupId}/csses",
23495	//   "httpMethod": "GET",
23496	//   "id": "content.csses.list",
23497	//   "parameterOrder": [
23498	//     "cssGroupId"
23499	//   ],
23500	//   "parameters": {
23501	//     "cssGroupId": {
23502	//       "description": "Required. The CSS group ID of CSS domains to be listed.",
23503	//       "format": "int64",
23504	//       "location": "path",
23505	//       "required": true,
23506	//       "type": "string"
23507	//     },
23508	//     "pageSize": {
23509	//       "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.",
23510	//       "format": "int32",
23511	//       "location": "query",
23512	//       "type": "integer"
23513	//     },
23514	//     "pageToken": {
23515	//       "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.",
23516	//       "location": "query",
23517	//       "type": "string"
23518	//     }
23519	//   },
23520	//   "path": "{cssGroupId}/csses",
23521	//   "response": {
23522	//     "$ref": "ListCssesResponse"
23523	//   },
23524	//   "scopes": [
23525	//     "https://www.googleapis.com/auth/content"
23526	//   ]
23527	// }
23528
23529}
23530
23531// Pages invokes f for each page of results.
23532// A non-nil error returned from f will halt the iteration.
23533// The provided context supersedes any context provided to the Context method.
23534func (c *CssesListCall) Pages(ctx context.Context, f func(*ListCssesResponse) error) error {
23535	c.ctx_ = ctx
23536	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23537	for {
23538		x, err := c.Do()
23539		if err != nil {
23540			return err
23541		}
23542		if err := f(x); err != nil {
23543			return err
23544		}
23545		if x.NextPageToken == "" {
23546			return nil
23547		}
23548		c.PageToken(x.NextPageToken)
23549	}
23550}
23551
23552// method id "content.csses.updatelabels":
23553
23554type CssesUpdatelabelsCall struct {
23555	s           *APIService
23556	cssGroupId  int64
23557	cssDomainId int64
23558	labelids    *LabelIds
23559	urlParams_  gensupport.URLParams
23560	ctx_        context.Context
23561	header_     http.Header
23562}
23563
23564// Updatelabels: Updates labels that are assigned to a CSS domain by its
23565// CSS group.
23566//
23567// - cssDomainId: The ID of the updated CSS domain.
23568// - cssGroupId: The CSS group ID of the updated CSS domain.
23569func (r *CssesService) Updatelabels(cssGroupId int64, cssDomainId int64, labelids *LabelIds) *CssesUpdatelabelsCall {
23570	c := &CssesUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23571	c.cssGroupId = cssGroupId
23572	c.cssDomainId = cssDomainId
23573	c.labelids = labelids
23574	return c
23575}
23576
23577// Fields allows partial responses to be retrieved. See
23578// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23579// for more information.
23580func (c *CssesUpdatelabelsCall) Fields(s ...googleapi.Field) *CssesUpdatelabelsCall {
23581	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23582	return c
23583}
23584
23585// Context sets the context to be used in this call's Do method. Any
23586// pending HTTP request will be aborted if the provided context is
23587// canceled.
23588func (c *CssesUpdatelabelsCall) Context(ctx context.Context) *CssesUpdatelabelsCall {
23589	c.ctx_ = ctx
23590	return c
23591}
23592
23593// Header returns an http.Header that can be modified by the caller to
23594// add HTTP headers to the request.
23595func (c *CssesUpdatelabelsCall) Header() http.Header {
23596	if c.header_ == nil {
23597		c.header_ = make(http.Header)
23598	}
23599	return c.header_
23600}
23601
23602func (c *CssesUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
23603	reqHeaders := make(http.Header)
23604	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23605	for k, v := range c.header_ {
23606		reqHeaders[k] = v
23607	}
23608	reqHeaders.Set("User-Agent", c.s.userAgent())
23609	var body io.Reader = nil
23610	body, err := googleapi.WithoutDataWrapper.JSONReader(c.labelids)
23611	if err != nil {
23612		return nil, err
23613	}
23614	reqHeaders.Set("Content-Type", "application/json")
23615	c.urlParams_.Set("alt", alt)
23616	c.urlParams_.Set("prettyPrint", "false")
23617	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses/{cssDomainId}/updatelabels")
23618	urls += "?" + c.urlParams_.Encode()
23619	req, err := http.NewRequest("POST", urls, body)
23620	if err != nil {
23621		return nil, err
23622	}
23623	req.Header = reqHeaders
23624	googleapi.Expand(req.URL, map[string]string{
23625		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
23626		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
23627	})
23628	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23629}
23630
23631// Do executes the "content.csses.updatelabels" call.
23632// Exactly one of *Css or error will be non-nil. Any non-2xx status code
23633// is an error. Response headers are in either
23634// *Css.ServerResponse.Header or (if a response was returned at all) in
23635// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23636// whether the returned error was because http.StatusNotModified was
23637// returned.
23638func (c *CssesUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*Css, error) {
23639	gensupport.SetOptions(c.urlParams_, opts...)
23640	res, err := c.doRequest("json")
23641	if res != nil && res.StatusCode == http.StatusNotModified {
23642		if res.Body != nil {
23643			res.Body.Close()
23644		}
23645		return nil, &googleapi.Error{
23646			Code:   res.StatusCode,
23647			Header: res.Header,
23648		}
23649	}
23650	if err != nil {
23651		return nil, err
23652	}
23653	defer googleapi.CloseBody(res)
23654	if err := googleapi.CheckResponse(res); err != nil {
23655		return nil, err
23656	}
23657	ret := &Css{
23658		ServerResponse: googleapi.ServerResponse{
23659			Header:         res.Header,
23660			HTTPStatusCode: res.StatusCode,
23661		},
23662	}
23663	target := &ret
23664	if err := gensupport.DecodeResponse(target, res); err != nil {
23665		return nil, err
23666	}
23667	return ret, nil
23668	// {
23669	//   "description": "Updates labels that are assigned to a CSS domain by its CSS group.",
23670	//   "flatPath": "{cssGroupId}/csses/{cssDomainId}/updatelabels",
23671	//   "httpMethod": "POST",
23672	//   "id": "content.csses.updatelabels",
23673	//   "parameterOrder": [
23674	//     "cssGroupId",
23675	//     "cssDomainId"
23676	//   ],
23677	//   "parameters": {
23678	//     "cssDomainId": {
23679	//       "description": "Required. The ID of the updated CSS domain.",
23680	//       "format": "int64",
23681	//       "location": "path",
23682	//       "required": true,
23683	//       "type": "string"
23684	//     },
23685	//     "cssGroupId": {
23686	//       "description": "Required. The CSS group ID of the updated CSS domain.",
23687	//       "format": "int64",
23688	//       "location": "path",
23689	//       "required": true,
23690	//       "type": "string"
23691	//     }
23692	//   },
23693	//   "path": "{cssGroupId}/csses/{cssDomainId}/updatelabels",
23694	//   "request": {
23695	//     "$ref": "LabelIds"
23696	//   },
23697	//   "response": {
23698	//     "$ref": "Css"
23699	//   },
23700	//   "scopes": [
23701	//     "https://www.googleapis.com/auth/content"
23702	//   ]
23703	// }
23704
23705}
23706
23707// method id "content.datafeeds.custombatch":
23708
23709type DatafeedsCustombatchCall struct {
23710	s                           *APIService
23711	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
23712	urlParams_                  gensupport.URLParams
23713	ctx_                        context.Context
23714	header_                     http.Header
23715}
23716
23717// Custombatch: Deletes, fetches, gets, inserts and updates multiple
23718// datafeeds in a single request.
23719func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
23720	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23721	c.datafeedscustombatchrequest = datafeedscustombatchrequest
23722	return c
23723}
23724
23725// Fields allows partial responses to be retrieved. See
23726// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23727// for more information.
23728func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
23729	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23730	return c
23731}
23732
23733// Context sets the context to be used in this call's Do method. Any
23734// pending HTTP request will be aborted if the provided context is
23735// canceled.
23736func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
23737	c.ctx_ = ctx
23738	return c
23739}
23740
23741// Header returns an http.Header that can be modified by the caller to
23742// add HTTP headers to the request.
23743func (c *DatafeedsCustombatchCall) Header() http.Header {
23744	if c.header_ == nil {
23745		c.header_ = make(http.Header)
23746	}
23747	return c.header_
23748}
23749
23750func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
23751	reqHeaders := make(http.Header)
23752	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23753	for k, v := range c.header_ {
23754		reqHeaders[k] = v
23755	}
23756	reqHeaders.Set("User-Agent", c.s.userAgent())
23757	var body io.Reader = nil
23758	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
23759	if err != nil {
23760		return nil, err
23761	}
23762	reqHeaders.Set("Content-Type", "application/json")
23763	c.urlParams_.Set("alt", alt)
23764	c.urlParams_.Set("prettyPrint", "false")
23765	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeeds/batch")
23766	urls += "?" + c.urlParams_.Encode()
23767	req, err := http.NewRequest("POST", urls, body)
23768	if err != nil {
23769		return nil, err
23770	}
23771	req.Header = reqHeaders
23772	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23773}
23774
23775// Do executes the "content.datafeeds.custombatch" call.
23776// Exactly one of *DatafeedsCustomBatchResponse or error will be
23777// non-nil. Any non-2xx status code is an error. Response headers are in
23778// either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
23779// response was returned at all) in error.(*googleapi.Error).Header. Use
23780// googleapi.IsNotModified to check whether the returned error was
23781// because http.StatusNotModified was returned.
23782func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
23783	gensupport.SetOptions(c.urlParams_, opts...)
23784	res, err := c.doRequest("json")
23785	if res != nil && res.StatusCode == http.StatusNotModified {
23786		if res.Body != nil {
23787			res.Body.Close()
23788		}
23789		return nil, &googleapi.Error{
23790			Code:   res.StatusCode,
23791			Header: res.Header,
23792		}
23793	}
23794	if err != nil {
23795		return nil, err
23796	}
23797	defer googleapi.CloseBody(res)
23798	if err := googleapi.CheckResponse(res); err != nil {
23799		return nil, err
23800	}
23801	ret := &DatafeedsCustomBatchResponse{
23802		ServerResponse: googleapi.ServerResponse{
23803			Header:         res.Header,
23804			HTTPStatusCode: res.StatusCode,
23805		},
23806	}
23807	target := &ret
23808	if err := gensupport.DecodeResponse(target, res); err != nil {
23809		return nil, err
23810	}
23811	return ret, nil
23812	// {
23813	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
23814	//   "flatPath": "datafeeds/batch",
23815	//   "httpMethod": "POST",
23816	//   "id": "content.datafeeds.custombatch",
23817	//   "parameterOrder": [],
23818	//   "parameters": {},
23819	//   "path": "datafeeds/batch",
23820	//   "request": {
23821	//     "$ref": "DatafeedsCustomBatchRequest"
23822	//   },
23823	//   "response": {
23824	//     "$ref": "DatafeedsCustomBatchResponse"
23825	//   },
23826	//   "scopes": [
23827	//     "https://www.googleapis.com/auth/content"
23828	//   ]
23829	// }
23830
23831}
23832
23833// method id "content.datafeeds.delete":
23834
23835type DatafeedsDeleteCall struct {
23836	s          *APIService
23837	merchantId uint64
23838	datafeedId uint64
23839	urlParams_ gensupport.URLParams
23840	ctx_       context.Context
23841	header_    http.Header
23842}
23843
23844// Delete: Deletes a datafeed configuration from your Merchant Center
23845// account.
23846//
23847// - datafeedId: The ID of the datafeed.
23848// - merchantId: The ID of the account that manages the datafeed. This
23849//   account cannot be a multi-client account.
23850func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
23851	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23852	c.merchantId = merchantId
23853	c.datafeedId = datafeedId
23854	return c
23855}
23856
23857// Fields allows partial responses to be retrieved. See
23858// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23859// for more information.
23860func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
23861	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23862	return c
23863}
23864
23865// Context sets the context to be used in this call's Do method. Any
23866// pending HTTP request will be aborted if the provided context is
23867// canceled.
23868func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
23869	c.ctx_ = ctx
23870	return c
23871}
23872
23873// Header returns an http.Header that can be modified by the caller to
23874// add HTTP headers to the request.
23875func (c *DatafeedsDeleteCall) Header() http.Header {
23876	if c.header_ == nil {
23877		c.header_ = make(http.Header)
23878	}
23879	return c.header_
23880}
23881
23882func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
23883	reqHeaders := make(http.Header)
23884	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
23885	for k, v := range c.header_ {
23886		reqHeaders[k] = v
23887	}
23888	reqHeaders.Set("User-Agent", c.s.userAgent())
23889	var body io.Reader = nil
23890	c.urlParams_.Set("alt", alt)
23891	c.urlParams_.Set("prettyPrint", "false")
23892	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
23893	urls += "?" + c.urlParams_.Encode()
23894	req, err := http.NewRequest("DELETE", urls, body)
23895	if err != nil {
23896		return nil, err
23897	}
23898	req.Header = reqHeaders
23899	googleapi.Expand(req.URL, map[string]string{
23900		"merchantId": strconv.FormatUint(c.merchantId, 10),
23901		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
23902	})
23903	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23904}
23905
23906// Do executes the "content.datafeeds.delete" call.
23907func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
23908	gensupport.SetOptions(c.urlParams_, opts...)
23909	res, err := c.doRequest("json")
23910	if err != nil {
23911		return err
23912	}
23913	defer googleapi.CloseBody(res)
23914	if err := googleapi.CheckResponse(res); err != nil {
23915		return err
23916	}
23917	return nil
23918	// {
23919	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
23920	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
23921	//   "httpMethod": "DELETE",
23922	//   "id": "content.datafeeds.delete",
23923	//   "parameterOrder": [
23924	//     "merchantId",
23925	//     "datafeedId"
23926	//   ],
23927	//   "parameters": {
23928	//     "datafeedId": {
23929	//       "description": "The ID of the datafeed.",
23930	//       "format": "uint64",
23931	//       "location": "path",
23932	//       "required": true,
23933	//       "type": "string"
23934	//     },
23935	//     "merchantId": {
23936	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
23937	//       "format": "uint64",
23938	//       "location": "path",
23939	//       "required": true,
23940	//       "type": "string"
23941	//     }
23942	//   },
23943	//   "path": "{merchantId}/datafeeds/{datafeedId}",
23944	//   "scopes": [
23945	//     "https://www.googleapis.com/auth/content"
23946	//   ]
23947	// }
23948
23949}
23950
23951// method id "content.datafeeds.fetchnow":
23952
23953type DatafeedsFetchnowCall struct {
23954	s          *APIService
23955	merchantId uint64
23956	datafeedId uint64
23957	urlParams_ gensupport.URLParams
23958	ctx_       context.Context
23959	header_    http.Header
23960}
23961
23962// Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
23963// account. If you need to call this method more than once per day, we
23964// recommend you use the Products service to update your product data.
23965//
23966// - datafeedId: The ID of the datafeed to be fetched.
23967// - merchantId: The ID of the account that manages the datafeed. This
23968//   account cannot be a multi-client account.
23969func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
23970	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23971	c.merchantId = merchantId
23972	c.datafeedId = datafeedId
23973	return c
23974}
23975
23976// Fields allows partial responses to be retrieved. See
23977// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23978// for more information.
23979func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
23980	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23981	return c
23982}
23983
23984// Context sets the context to be used in this call's Do method. Any
23985// pending HTTP request will be aborted if the provided context is
23986// canceled.
23987func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
23988	c.ctx_ = ctx
23989	return c
23990}
23991
23992// Header returns an http.Header that can be modified by the caller to
23993// add HTTP headers to the request.
23994func (c *DatafeedsFetchnowCall) Header() http.Header {
23995	if c.header_ == nil {
23996		c.header_ = make(http.Header)
23997	}
23998	return c.header_
23999}
24000
24001func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
24002	reqHeaders := make(http.Header)
24003	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24004	for k, v := range c.header_ {
24005		reqHeaders[k] = v
24006	}
24007	reqHeaders.Set("User-Agent", c.s.userAgent())
24008	var body io.Reader = nil
24009	c.urlParams_.Set("alt", alt)
24010	c.urlParams_.Set("prettyPrint", "false")
24011	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}/fetchNow")
24012	urls += "?" + c.urlParams_.Encode()
24013	req, err := http.NewRequest("POST", urls, body)
24014	if err != nil {
24015		return nil, err
24016	}
24017	req.Header = reqHeaders
24018	googleapi.Expand(req.URL, map[string]string{
24019		"merchantId": strconv.FormatUint(c.merchantId, 10),
24020		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24021	})
24022	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24023}
24024
24025// Do executes the "content.datafeeds.fetchnow" call.
24026// Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
24027// Any non-2xx status code is an error. Response headers are in either
24028// *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
24029// was returned at all) in error.(*googleapi.Error).Header. Use
24030// googleapi.IsNotModified to check whether the returned error was
24031// because http.StatusNotModified was returned.
24032func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
24033	gensupport.SetOptions(c.urlParams_, opts...)
24034	res, err := c.doRequest("json")
24035	if res != nil && res.StatusCode == http.StatusNotModified {
24036		if res.Body != nil {
24037			res.Body.Close()
24038		}
24039		return nil, &googleapi.Error{
24040			Code:   res.StatusCode,
24041			Header: res.Header,
24042		}
24043	}
24044	if err != nil {
24045		return nil, err
24046	}
24047	defer googleapi.CloseBody(res)
24048	if err := googleapi.CheckResponse(res); err != nil {
24049		return nil, err
24050	}
24051	ret := &DatafeedsFetchNowResponse{
24052		ServerResponse: googleapi.ServerResponse{
24053			Header:         res.Header,
24054			HTTPStatusCode: res.StatusCode,
24055		},
24056	}
24057	target := &ret
24058	if err := gensupport.DecodeResponse(target, res); err != nil {
24059		return nil, err
24060	}
24061	return ret, nil
24062	// {
24063	//   "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.",
24064	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
24065	//   "httpMethod": "POST",
24066	//   "id": "content.datafeeds.fetchnow",
24067	//   "parameterOrder": [
24068	//     "merchantId",
24069	//     "datafeedId"
24070	//   ],
24071	//   "parameters": {
24072	//     "datafeedId": {
24073	//       "description": "The ID of the datafeed to be fetched.",
24074	//       "format": "uint64",
24075	//       "location": "path",
24076	//       "required": true,
24077	//       "type": "string"
24078	//     },
24079	//     "merchantId": {
24080	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24081	//       "format": "uint64",
24082	//       "location": "path",
24083	//       "required": true,
24084	//       "type": "string"
24085	//     }
24086	//   },
24087	//   "path": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
24088	//   "response": {
24089	//     "$ref": "DatafeedsFetchNowResponse"
24090	//   },
24091	//   "scopes": [
24092	//     "https://www.googleapis.com/auth/content"
24093	//   ]
24094	// }
24095
24096}
24097
24098// method id "content.datafeeds.get":
24099
24100type DatafeedsGetCall struct {
24101	s            *APIService
24102	merchantId   uint64
24103	datafeedId   uint64
24104	urlParams_   gensupport.URLParams
24105	ifNoneMatch_ string
24106	ctx_         context.Context
24107	header_      http.Header
24108}
24109
24110// Get: Retrieves a datafeed configuration from your Merchant Center
24111// account.
24112//
24113// - datafeedId: The ID of the datafeed.
24114// - merchantId: The ID of the account that manages the datafeed. This
24115//   account cannot be a multi-client account.
24116func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
24117	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24118	c.merchantId = merchantId
24119	c.datafeedId = datafeedId
24120	return c
24121}
24122
24123// Fields allows partial responses to be retrieved. See
24124// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24125// for more information.
24126func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
24127	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24128	return c
24129}
24130
24131// IfNoneMatch sets the optional parameter which makes the operation
24132// fail if the object's ETag matches the given value. This is useful for
24133// getting updates only after the object has changed since the last
24134// request. Use googleapi.IsNotModified to check whether the response
24135// error from Do is the result of In-None-Match.
24136func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
24137	c.ifNoneMatch_ = entityTag
24138	return c
24139}
24140
24141// Context sets the context to be used in this call's Do method. Any
24142// pending HTTP request will be aborted if the provided context is
24143// canceled.
24144func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
24145	c.ctx_ = ctx
24146	return c
24147}
24148
24149// Header returns an http.Header that can be modified by the caller to
24150// add HTTP headers to the request.
24151func (c *DatafeedsGetCall) Header() http.Header {
24152	if c.header_ == nil {
24153		c.header_ = make(http.Header)
24154	}
24155	return c.header_
24156}
24157
24158func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
24159	reqHeaders := make(http.Header)
24160	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24161	for k, v := range c.header_ {
24162		reqHeaders[k] = v
24163	}
24164	reqHeaders.Set("User-Agent", c.s.userAgent())
24165	if c.ifNoneMatch_ != "" {
24166		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24167	}
24168	var body io.Reader = nil
24169	c.urlParams_.Set("alt", alt)
24170	c.urlParams_.Set("prettyPrint", "false")
24171	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
24172	urls += "?" + c.urlParams_.Encode()
24173	req, err := http.NewRequest("GET", urls, body)
24174	if err != nil {
24175		return nil, err
24176	}
24177	req.Header = reqHeaders
24178	googleapi.Expand(req.URL, map[string]string{
24179		"merchantId": strconv.FormatUint(c.merchantId, 10),
24180		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24181	})
24182	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24183}
24184
24185// Do executes the "content.datafeeds.get" call.
24186// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
24187// code is an error. Response headers are in either
24188// *Datafeed.ServerResponse.Header or (if a response was returned at
24189// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
24190// to check whether the returned error was because
24191// http.StatusNotModified was returned.
24192func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
24193	gensupport.SetOptions(c.urlParams_, opts...)
24194	res, err := c.doRequest("json")
24195	if res != nil && res.StatusCode == http.StatusNotModified {
24196		if res.Body != nil {
24197			res.Body.Close()
24198		}
24199		return nil, &googleapi.Error{
24200			Code:   res.StatusCode,
24201			Header: res.Header,
24202		}
24203	}
24204	if err != nil {
24205		return nil, err
24206	}
24207	defer googleapi.CloseBody(res)
24208	if err := googleapi.CheckResponse(res); err != nil {
24209		return nil, err
24210	}
24211	ret := &Datafeed{
24212		ServerResponse: googleapi.ServerResponse{
24213			Header:         res.Header,
24214			HTTPStatusCode: res.StatusCode,
24215		},
24216	}
24217	target := &ret
24218	if err := gensupport.DecodeResponse(target, res); err != nil {
24219		return nil, err
24220	}
24221	return ret, nil
24222	// {
24223	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
24224	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
24225	//   "httpMethod": "GET",
24226	//   "id": "content.datafeeds.get",
24227	//   "parameterOrder": [
24228	//     "merchantId",
24229	//     "datafeedId"
24230	//   ],
24231	//   "parameters": {
24232	//     "datafeedId": {
24233	//       "description": "The ID of the datafeed.",
24234	//       "format": "uint64",
24235	//       "location": "path",
24236	//       "required": true,
24237	//       "type": "string"
24238	//     },
24239	//     "merchantId": {
24240	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24241	//       "format": "uint64",
24242	//       "location": "path",
24243	//       "required": true,
24244	//       "type": "string"
24245	//     }
24246	//   },
24247	//   "path": "{merchantId}/datafeeds/{datafeedId}",
24248	//   "response": {
24249	//     "$ref": "Datafeed"
24250	//   },
24251	//   "scopes": [
24252	//     "https://www.googleapis.com/auth/content"
24253	//   ]
24254	// }
24255
24256}
24257
24258// method id "content.datafeeds.insert":
24259
24260type DatafeedsInsertCall struct {
24261	s          *APIService
24262	merchantId uint64
24263	datafeed   *Datafeed
24264	urlParams_ gensupport.URLParams
24265	ctx_       context.Context
24266	header_    http.Header
24267}
24268
24269// Insert: Registers a datafeed configuration with your Merchant Center
24270// account.
24271//
24272// - merchantId: The ID of the account that manages the datafeed. This
24273//   account cannot be a multi-client account.
24274func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
24275	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24276	c.merchantId = merchantId
24277	c.datafeed = datafeed
24278	return c
24279}
24280
24281// Fields allows partial responses to be retrieved. See
24282// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24283// for more information.
24284func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
24285	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24286	return c
24287}
24288
24289// Context sets the context to be used in this call's Do method. Any
24290// pending HTTP request will be aborted if the provided context is
24291// canceled.
24292func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
24293	c.ctx_ = ctx
24294	return c
24295}
24296
24297// Header returns an http.Header that can be modified by the caller to
24298// add HTTP headers to the request.
24299func (c *DatafeedsInsertCall) Header() http.Header {
24300	if c.header_ == nil {
24301		c.header_ = make(http.Header)
24302	}
24303	return c.header_
24304}
24305
24306func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
24307	reqHeaders := make(http.Header)
24308	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24309	for k, v := range c.header_ {
24310		reqHeaders[k] = v
24311	}
24312	reqHeaders.Set("User-Agent", c.s.userAgent())
24313	var body io.Reader = nil
24314	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
24315	if err != nil {
24316		return nil, err
24317	}
24318	reqHeaders.Set("Content-Type", "application/json")
24319	c.urlParams_.Set("alt", alt)
24320	c.urlParams_.Set("prettyPrint", "false")
24321	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
24322	urls += "?" + c.urlParams_.Encode()
24323	req, err := http.NewRequest("POST", urls, body)
24324	if err != nil {
24325		return nil, err
24326	}
24327	req.Header = reqHeaders
24328	googleapi.Expand(req.URL, map[string]string{
24329		"merchantId": strconv.FormatUint(c.merchantId, 10),
24330	})
24331	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24332}
24333
24334// Do executes the "content.datafeeds.insert" call.
24335// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
24336// code is an error. Response headers are in either
24337// *Datafeed.ServerResponse.Header or (if a response was returned at
24338// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
24339// to check whether the returned error was because
24340// http.StatusNotModified was returned.
24341func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
24342	gensupport.SetOptions(c.urlParams_, opts...)
24343	res, err := c.doRequest("json")
24344	if res != nil && res.StatusCode == http.StatusNotModified {
24345		if res.Body != nil {
24346			res.Body.Close()
24347		}
24348		return nil, &googleapi.Error{
24349			Code:   res.StatusCode,
24350			Header: res.Header,
24351		}
24352	}
24353	if err != nil {
24354		return nil, err
24355	}
24356	defer googleapi.CloseBody(res)
24357	if err := googleapi.CheckResponse(res); err != nil {
24358		return nil, err
24359	}
24360	ret := &Datafeed{
24361		ServerResponse: googleapi.ServerResponse{
24362			Header:         res.Header,
24363			HTTPStatusCode: res.StatusCode,
24364		},
24365	}
24366	target := &ret
24367	if err := gensupport.DecodeResponse(target, res); err != nil {
24368		return nil, err
24369	}
24370	return ret, nil
24371	// {
24372	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
24373	//   "flatPath": "{merchantId}/datafeeds",
24374	//   "httpMethod": "POST",
24375	//   "id": "content.datafeeds.insert",
24376	//   "parameterOrder": [
24377	//     "merchantId"
24378	//   ],
24379	//   "parameters": {
24380	//     "merchantId": {
24381	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24382	//       "format": "uint64",
24383	//       "location": "path",
24384	//       "required": true,
24385	//       "type": "string"
24386	//     }
24387	//   },
24388	//   "path": "{merchantId}/datafeeds",
24389	//   "request": {
24390	//     "$ref": "Datafeed"
24391	//   },
24392	//   "response": {
24393	//     "$ref": "Datafeed"
24394	//   },
24395	//   "scopes": [
24396	//     "https://www.googleapis.com/auth/content"
24397	//   ]
24398	// }
24399
24400}
24401
24402// method id "content.datafeeds.list":
24403
24404type DatafeedsListCall struct {
24405	s            *APIService
24406	merchantId   uint64
24407	urlParams_   gensupport.URLParams
24408	ifNoneMatch_ string
24409	ctx_         context.Context
24410	header_      http.Header
24411}
24412
24413// List: Lists the configurations for datafeeds in your Merchant Center
24414// account.
24415//
24416// - merchantId: The ID of the account that manages the datafeeds. This
24417//   account cannot be a multi-client account.
24418func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
24419	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24420	c.merchantId = merchantId
24421	return c
24422}
24423
24424// MaxResults sets the optional parameter "maxResults": The maximum
24425// number of products to return in the response, used for paging.
24426func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
24427	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
24428	return c
24429}
24430
24431// PageToken sets the optional parameter "pageToken": The token returned
24432// by the previous request.
24433func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
24434	c.urlParams_.Set("pageToken", pageToken)
24435	return c
24436}
24437
24438// Fields allows partial responses to be retrieved. See
24439// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24440// for more information.
24441func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
24442	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24443	return c
24444}
24445
24446// IfNoneMatch sets the optional parameter which makes the operation
24447// fail if the object's ETag matches the given value. This is useful for
24448// getting updates only after the object has changed since the last
24449// request. Use googleapi.IsNotModified to check whether the response
24450// error from Do is the result of In-None-Match.
24451func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
24452	c.ifNoneMatch_ = entityTag
24453	return c
24454}
24455
24456// Context sets the context to be used in this call's Do method. Any
24457// pending HTTP request will be aborted if the provided context is
24458// canceled.
24459func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
24460	c.ctx_ = ctx
24461	return c
24462}
24463
24464// Header returns an http.Header that can be modified by the caller to
24465// add HTTP headers to the request.
24466func (c *DatafeedsListCall) Header() http.Header {
24467	if c.header_ == nil {
24468		c.header_ = make(http.Header)
24469	}
24470	return c.header_
24471}
24472
24473func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
24474	reqHeaders := make(http.Header)
24475	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24476	for k, v := range c.header_ {
24477		reqHeaders[k] = v
24478	}
24479	reqHeaders.Set("User-Agent", c.s.userAgent())
24480	if c.ifNoneMatch_ != "" {
24481		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24482	}
24483	var body io.Reader = nil
24484	c.urlParams_.Set("alt", alt)
24485	c.urlParams_.Set("prettyPrint", "false")
24486	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
24487	urls += "?" + c.urlParams_.Encode()
24488	req, err := http.NewRequest("GET", urls, body)
24489	if err != nil {
24490		return nil, err
24491	}
24492	req.Header = reqHeaders
24493	googleapi.Expand(req.URL, map[string]string{
24494		"merchantId": strconv.FormatUint(c.merchantId, 10),
24495	})
24496	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24497}
24498
24499// Do executes the "content.datafeeds.list" call.
24500// Exactly one of *DatafeedsListResponse or error will be non-nil. Any
24501// non-2xx status code is an error. Response headers are in either
24502// *DatafeedsListResponse.ServerResponse.Header or (if a response was
24503// returned at all) in error.(*googleapi.Error).Header. Use
24504// googleapi.IsNotModified to check whether the returned error was
24505// because http.StatusNotModified was returned.
24506func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
24507	gensupport.SetOptions(c.urlParams_, opts...)
24508	res, err := c.doRequest("json")
24509	if res != nil && res.StatusCode == http.StatusNotModified {
24510		if res.Body != nil {
24511			res.Body.Close()
24512		}
24513		return nil, &googleapi.Error{
24514			Code:   res.StatusCode,
24515			Header: res.Header,
24516		}
24517	}
24518	if err != nil {
24519		return nil, err
24520	}
24521	defer googleapi.CloseBody(res)
24522	if err := googleapi.CheckResponse(res); err != nil {
24523		return nil, err
24524	}
24525	ret := &DatafeedsListResponse{
24526		ServerResponse: googleapi.ServerResponse{
24527			Header:         res.Header,
24528			HTTPStatusCode: res.StatusCode,
24529		},
24530	}
24531	target := &ret
24532	if err := gensupport.DecodeResponse(target, res); err != nil {
24533		return nil, err
24534	}
24535	return ret, nil
24536	// {
24537	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
24538	//   "flatPath": "{merchantId}/datafeeds",
24539	//   "httpMethod": "GET",
24540	//   "id": "content.datafeeds.list",
24541	//   "parameterOrder": [
24542	//     "merchantId"
24543	//   ],
24544	//   "parameters": {
24545	//     "maxResults": {
24546	//       "description": "The maximum number of products to return in the response, used for paging.",
24547	//       "format": "uint32",
24548	//       "location": "query",
24549	//       "type": "integer"
24550	//     },
24551	//     "merchantId": {
24552	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
24553	//       "format": "uint64",
24554	//       "location": "path",
24555	//       "required": true,
24556	//       "type": "string"
24557	//     },
24558	//     "pageToken": {
24559	//       "description": "The token returned by the previous request.",
24560	//       "location": "query",
24561	//       "type": "string"
24562	//     }
24563	//   },
24564	//   "path": "{merchantId}/datafeeds",
24565	//   "response": {
24566	//     "$ref": "DatafeedsListResponse"
24567	//   },
24568	//   "scopes": [
24569	//     "https://www.googleapis.com/auth/content"
24570	//   ]
24571	// }
24572
24573}
24574
24575// Pages invokes f for each page of results.
24576// A non-nil error returned from f will halt the iteration.
24577// The provided context supersedes any context provided to the Context method.
24578func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
24579	c.ctx_ = ctx
24580	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24581	for {
24582		x, err := c.Do()
24583		if err != nil {
24584			return err
24585		}
24586		if err := f(x); err != nil {
24587			return err
24588		}
24589		if x.NextPageToken == "" {
24590			return nil
24591		}
24592		c.PageToken(x.NextPageToken)
24593	}
24594}
24595
24596// method id "content.datafeeds.update":
24597
24598type DatafeedsUpdateCall struct {
24599	s          *APIService
24600	merchantId uint64
24601	datafeedId uint64
24602	datafeed   *Datafeed
24603	urlParams_ gensupport.URLParams
24604	ctx_       context.Context
24605	header_    http.Header
24606}
24607
24608// Update: Updates a datafeed configuration of your Merchant Center
24609// account. Any fields that are not provided are deleted from the
24610// resource.
24611//
24612// - datafeedId: The ID of the datafeed.
24613// - merchantId: The ID of the account that manages the datafeed. This
24614//   account cannot be a multi-client account.
24615func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
24616	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24617	c.merchantId = merchantId
24618	c.datafeedId = datafeedId
24619	c.datafeed = datafeed
24620	return c
24621}
24622
24623// Fields allows partial responses to be retrieved. See
24624// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24625// for more information.
24626func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
24627	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24628	return c
24629}
24630
24631// Context sets the context to be used in this call's Do method. Any
24632// pending HTTP request will be aborted if the provided context is
24633// canceled.
24634func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
24635	c.ctx_ = ctx
24636	return c
24637}
24638
24639// Header returns an http.Header that can be modified by the caller to
24640// add HTTP headers to the request.
24641func (c *DatafeedsUpdateCall) Header() http.Header {
24642	if c.header_ == nil {
24643		c.header_ = make(http.Header)
24644	}
24645	return c.header_
24646}
24647
24648func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
24649	reqHeaders := make(http.Header)
24650	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24651	for k, v := range c.header_ {
24652		reqHeaders[k] = v
24653	}
24654	reqHeaders.Set("User-Agent", c.s.userAgent())
24655	var body io.Reader = nil
24656	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
24657	if err != nil {
24658		return nil, err
24659	}
24660	reqHeaders.Set("Content-Type", "application/json")
24661	c.urlParams_.Set("alt", alt)
24662	c.urlParams_.Set("prettyPrint", "false")
24663	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
24664	urls += "?" + c.urlParams_.Encode()
24665	req, err := http.NewRequest("PUT", urls, body)
24666	if err != nil {
24667		return nil, err
24668	}
24669	req.Header = reqHeaders
24670	googleapi.Expand(req.URL, map[string]string{
24671		"merchantId": strconv.FormatUint(c.merchantId, 10),
24672		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24673	})
24674	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24675}
24676
24677// Do executes the "content.datafeeds.update" call.
24678// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
24679// code is an error. Response headers are in either
24680// *Datafeed.ServerResponse.Header or (if a response was returned at
24681// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
24682// to check whether the returned error was because
24683// http.StatusNotModified was returned.
24684func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
24685	gensupport.SetOptions(c.urlParams_, opts...)
24686	res, err := c.doRequest("json")
24687	if res != nil && res.StatusCode == http.StatusNotModified {
24688		if res.Body != nil {
24689			res.Body.Close()
24690		}
24691		return nil, &googleapi.Error{
24692			Code:   res.StatusCode,
24693			Header: res.Header,
24694		}
24695	}
24696	if err != nil {
24697		return nil, err
24698	}
24699	defer googleapi.CloseBody(res)
24700	if err := googleapi.CheckResponse(res); err != nil {
24701		return nil, err
24702	}
24703	ret := &Datafeed{
24704		ServerResponse: googleapi.ServerResponse{
24705			Header:         res.Header,
24706			HTTPStatusCode: res.StatusCode,
24707		},
24708	}
24709	target := &ret
24710	if err := gensupport.DecodeResponse(target, res); err != nil {
24711		return nil, err
24712	}
24713	return ret, nil
24714	// {
24715	//   "description": "Updates a datafeed configuration of your Merchant Center account. Any fields that are not provided are deleted from the resource.",
24716	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
24717	//   "httpMethod": "PUT",
24718	//   "id": "content.datafeeds.update",
24719	//   "parameterOrder": [
24720	//     "merchantId",
24721	//     "datafeedId"
24722	//   ],
24723	//   "parameters": {
24724	//     "datafeedId": {
24725	//       "description": "The ID of the datafeed.",
24726	//       "format": "uint64",
24727	//       "location": "path",
24728	//       "required": true,
24729	//       "type": "string"
24730	//     },
24731	//     "merchantId": {
24732	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24733	//       "format": "uint64",
24734	//       "location": "path",
24735	//       "required": true,
24736	//       "type": "string"
24737	//     }
24738	//   },
24739	//   "path": "{merchantId}/datafeeds/{datafeedId}",
24740	//   "request": {
24741	//     "$ref": "Datafeed"
24742	//   },
24743	//   "response": {
24744	//     "$ref": "Datafeed"
24745	//   },
24746	//   "scopes": [
24747	//     "https://www.googleapis.com/auth/content"
24748	//   ]
24749	// }
24750
24751}
24752
24753// method id "content.datafeedstatuses.custombatch":
24754
24755type DatafeedstatusesCustombatchCall struct {
24756	s                                  *APIService
24757	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
24758	urlParams_                         gensupport.URLParams
24759	ctx_                               context.Context
24760	header_                            http.Header
24761}
24762
24763// Custombatch: Gets multiple Merchant Center datafeed statuses in a
24764// single request.
24765func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
24766	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24767	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
24768	return c
24769}
24770
24771// Fields allows partial responses to be retrieved. See
24772// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24773// for more information.
24774func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
24775	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24776	return c
24777}
24778
24779// Context sets the context to be used in this call's Do method. Any
24780// pending HTTP request will be aborted if the provided context is
24781// canceled.
24782func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
24783	c.ctx_ = ctx
24784	return c
24785}
24786
24787// Header returns an http.Header that can be modified by the caller to
24788// add HTTP headers to the request.
24789func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
24790	if c.header_ == nil {
24791		c.header_ = make(http.Header)
24792	}
24793	return c.header_
24794}
24795
24796func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
24797	reqHeaders := make(http.Header)
24798	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24799	for k, v := range c.header_ {
24800		reqHeaders[k] = v
24801	}
24802	reqHeaders.Set("User-Agent", c.s.userAgent())
24803	var body io.Reader = nil
24804	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
24805	if err != nil {
24806		return nil, err
24807	}
24808	reqHeaders.Set("Content-Type", "application/json")
24809	c.urlParams_.Set("alt", alt)
24810	c.urlParams_.Set("prettyPrint", "false")
24811	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeedstatuses/batch")
24812	urls += "?" + c.urlParams_.Encode()
24813	req, err := http.NewRequest("POST", urls, body)
24814	if err != nil {
24815		return nil, err
24816	}
24817	req.Header = reqHeaders
24818	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24819}
24820
24821// Do executes the "content.datafeedstatuses.custombatch" call.
24822// Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
24823// non-nil. Any non-2xx status code is an error. Response headers are in
24824// either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
24825// (if a response was returned at all) in
24826// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24827// whether the returned error was because http.StatusNotModified was
24828// returned.
24829func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
24830	gensupport.SetOptions(c.urlParams_, opts...)
24831	res, err := c.doRequest("json")
24832	if res != nil && res.StatusCode == http.StatusNotModified {
24833		if res.Body != nil {
24834			res.Body.Close()
24835		}
24836		return nil, &googleapi.Error{
24837			Code:   res.StatusCode,
24838			Header: res.Header,
24839		}
24840	}
24841	if err != nil {
24842		return nil, err
24843	}
24844	defer googleapi.CloseBody(res)
24845	if err := googleapi.CheckResponse(res); err != nil {
24846		return nil, err
24847	}
24848	ret := &DatafeedstatusesCustomBatchResponse{
24849		ServerResponse: googleapi.ServerResponse{
24850			Header:         res.Header,
24851			HTTPStatusCode: res.StatusCode,
24852		},
24853	}
24854	target := &ret
24855	if err := gensupport.DecodeResponse(target, res); err != nil {
24856		return nil, err
24857	}
24858	return ret, nil
24859	// {
24860	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
24861	//   "flatPath": "datafeedstatuses/batch",
24862	//   "httpMethod": "POST",
24863	//   "id": "content.datafeedstatuses.custombatch",
24864	//   "parameterOrder": [],
24865	//   "parameters": {},
24866	//   "path": "datafeedstatuses/batch",
24867	//   "request": {
24868	//     "$ref": "DatafeedstatusesCustomBatchRequest"
24869	//   },
24870	//   "response": {
24871	//     "$ref": "DatafeedstatusesCustomBatchResponse"
24872	//   },
24873	//   "scopes": [
24874	//     "https://www.googleapis.com/auth/content"
24875	//   ]
24876	// }
24877
24878}
24879
24880// method id "content.datafeedstatuses.get":
24881
24882type DatafeedstatusesGetCall struct {
24883	s            *APIService
24884	merchantId   uint64
24885	datafeedId   uint64
24886	urlParams_   gensupport.URLParams
24887	ifNoneMatch_ string
24888	ctx_         context.Context
24889	header_      http.Header
24890}
24891
24892// Get: Retrieves the status of a datafeed from your Merchant Center
24893// account.
24894//
24895// - datafeedId: The ID of the datafeed.
24896// - merchantId: The ID of the account that manages the datafeed. This
24897//   account cannot be a multi-client account.
24898func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
24899	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24900	c.merchantId = merchantId
24901	c.datafeedId = datafeedId
24902	return c
24903}
24904
24905// Country sets the optional parameter "country": The country for which
24906// to get the datafeed status. If this parameter is provided then
24907// language must also be provided. Note that this parameter is required
24908// for feeds targeting multiple countries and languages, since a feed
24909// may have a different status for each target.
24910func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
24911	c.urlParams_.Set("country", country)
24912	return c
24913}
24914
24915// Language sets the optional parameter "language": The language for
24916// which to get the datafeed status. If this parameter is provided then
24917// country must also be provided. Note that this parameter is required
24918// for feeds targeting multiple countries and languages, since a feed
24919// may have a different status for each target.
24920func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
24921	c.urlParams_.Set("language", language)
24922	return c
24923}
24924
24925// Fields allows partial responses to be retrieved. See
24926// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24927// for more information.
24928func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
24929	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24930	return c
24931}
24932
24933// IfNoneMatch sets the optional parameter which makes the operation
24934// fail if the object's ETag matches the given value. This is useful for
24935// getting updates only after the object has changed since the last
24936// request. Use googleapi.IsNotModified to check whether the response
24937// error from Do is the result of In-None-Match.
24938func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
24939	c.ifNoneMatch_ = entityTag
24940	return c
24941}
24942
24943// Context sets the context to be used in this call's Do method. Any
24944// pending HTTP request will be aborted if the provided context is
24945// canceled.
24946func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
24947	c.ctx_ = ctx
24948	return c
24949}
24950
24951// Header returns an http.Header that can be modified by the caller to
24952// add HTTP headers to the request.
24953func (c *DatafeedstatusesGetCall) Header() http.Header {
24954	if c.header_ == nil {
24955		c.header_ = make(http.Header)
24956	}
24957	return c.header_
24958}
24959
24960func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
24961	reqHeaders := make(http.Header)
24962	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
24963	for k, v := range c.header_ {
24964		reqHeaders[k] = v
24965	}
24966	reqHeaders.Set("User-Agent", c.s.userAgent())
24967	if c.ifNoneMatch_ != "" {
24968		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24969	}
24970	var body io.Reader = nil
24971	c.urlParams_.Set("alt", alt)
24972	c.urlParams_.Set("prettyPrint", "false")
24973	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses/{datafeedId}")
24974	urls += "?" + c.urlParams_.Encode()
24975	req, err := http.NewRequest("GET", urls, body)
24976	if err != nil {
24977		return nil, err
24978	}
24979	req.Header = reqHeaders
24980	googleapi.Expand(req.URL, map[string]string{
24981		"merchantId": strconv.FormatUint(c.merchantId, 10),
24982		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24983	})
24984	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24985}
24986
24987// Do executes the "content.datafeedstatuses.get" call.
24988// Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
24989// status code is an error. Response headers are in either
24990// *DatafeedStatus.ServerResponse.Header or (if a response was returned
24991// at all) in error.(*googleapi.Error).Header. Use
24992// googleapi.IsNotModified to check whether the returned error was
24993// because http.StatusNotModified was returned.
24994func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
24995	gensupport.SetOptions(c.urlParams_, opts...)
24996	res, err := c.doRequest("json")
24997	if res != nil && res.StatusCode == http.StatusNotModified {
24998		if res.Body != nil {
24999			res.Body.Close()
25000		}
25001		return nil, &googleapi.Error{
25002			Code:   res.StatusCode,
25003			Header: res.Header,
25004		}
25005	}
25006	if err != nil {
25007		return nil, err
25008	}
25009	defer googleapi.CloseBody(res)
25010	if err := googleapi.CheckResponse(res); err != nil {
25011		return nil, err
25012	}
25013	ret := &DatafeedStatus{
25014		ServerResponse: googleapi.ServerResponse{
25015			Header:         res.Header,
25016			HTTPStatusCode: res.StatusCode,
25017		},
25018	}
25019	target := &ret
25020	if err := gensupport.DecodeResponse(target, res); err != nil {
25021		return nil, err
25022	}
25023	return ret, nil
25024	// {
25025	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
25026	//   "flatPath": "{merchantId}/datafeedstatuses/{datafeedId}",
25027	//   "httpMethod": "GET",
25028	//   "id": "content.datafeedstatuses.get",
25029	//   "parameterOrder": [
25030	//     "merchantId",
25031	//     "datafeedId"
25032	//   ],
25033	//   "parameters": {
25034	//     "country": {
25035	//       "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.",
25036	//       "location": "query",
25037	//       "type": "string"
25038	//     },
25039	//     "datafeedId": {
25040	//       "description": "The ID of the datafeed.",
25041	//       "format": "uint64",
25042	//       "location": "path",
25043	//       "required": true,
25044	//       "type": "string"
25045	//     },
25046	//     "language": {
25047	//       "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.",
25048	//       "location": "query",
25049	//       "type": "string"
25050	//     },
25051	//     "merchantId": {
25052	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
25053	//       "format": "uint64",
25054	//       "location": "path",
25055	//       "required": true,
25056	//       "type": "string"
25057	//     }
25058	//   },
25059	//   "path": "{merchantId}/datafeedstatuses/{datafeedId}",
25060	//   "response": {
25061	//     "$ref": "DatafeedStatus"
25062	//   },
25063	//   "scopes": [
25064	//     "https://www.googleapis.com/auth/content"
25065	//   ]
25066	// }
25067
25068}
25069
25070// method id "content.datafeedstatuses.list":
25071
25072type DatafeedstatusesListCall struct {
25073	s            *APIService
25074	merchantId   uint64
25075	urlParams_   gensupport.URLParams
25076	ifNoneMatch_ string
25077	ctx_         context.Context
25078	header_      http.Header
25079}
25080
25081// List: Lists the statuses of the datafeeds in your Merchant Center
25082// account.
25083//
25084// - merchantId: The ID of the account that manages the datafeeds. This
25085//   account cannot be a multi-client account.
25086func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
25087	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25088	c.merchantId = merchantId
25089	return c
25090}
25091
25092// MaxResults sets the optional parameter "maxResults": The maximum
25093// number of products to return in the response, used for paging.
25094func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
25095	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25096	return c
25097}
25098
25099// PageToken sets the optional parameter "pageToken": The token returned
25100// by the previous request.
25101func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
25102	c.urlParams_.Set("pageToken", pageToken)
25103	return c
25104}
25105
25106// Fields allows partial responses to be retrieved. See
25107// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25108// for more information.
25109func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
25110	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25111	return c
25112}
25113
25114// IfNoneMatch sets the optional parameter which makes the operation
25115// fail if the object's ETag matches the given value. This is useful for
25116// getting updates only after the object has changed since the last
25117// request. Use googleapi.IsNotModified to check whether the response
25118// error from Do is the result of In-None-Match.
25119func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
25120	c.ifNoneMatch_ = entityTag
25121	return c
25122}
25123
25124// Context sets the context to be used in this call's Do method. Any
25125// pending HTTP request will be aborted if the provided context is
25126// canceled.
25127func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
25128	c.ctx_ = ctx
25129	return c
25130}
25131
25132// Header returns an http.Header that can be modified by the caller to
25133// add HTTP headers to the request.
25134func (c *DatafeedstatusesListCall) Header() http.Header {
25135	if c.header_ == nil {
25136		c.header_ = make(http.Header)
25137	}
25138	return c.header_
25139}
25140
25141func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
25142	reqHeaders := make(http.Header)
25143	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25144	for k, v := range c.header_ {
25145		reqHeaders[k] = v
25146	}
25147	reqHeaders.Set("User-Agent", c.s.userAgent())
25148	if c.ifNoneMatch_ != "" {
25149		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25150	}
25151	var body io.Reader = nil
25152	c.urlParams_.Set("alt", alt)
25153	c.urlParams_.Set("prettyPrint", "false")
25154	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses")
25155	urls += "?" + c.urlParams_.Encode()
25156	req, err := http.NewRequest("GET", urls, body)
25157	if err != nil {
25158		return nil, err
25159	}
25160	req.Header = reqHeaders
25161	googleapi.Expand(req.URL, map[string]string{
25162		"merchantId": strconv.FormatUint(c.merchantId, 10),
25163	})
25164	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25165}
25166
25167// Do executes the "content.datafeedstatuses.list" call.
25168// Exactly one of *DatafeedstatusesListResponse or error will be
25169// non-nil. Any non-2xx status code is an error. Response headers are in
25170// either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
25171// response was returned at all) in error.(*googleapi.Error).Header. Use
25172// googleapi.IsNotModified to check whether the returned error was
25173// because http.StatusNotModified was returned.
25174func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
25175	gensupport.SetOptions(c.urlParams_, opts...)
25176	res, err := c.doRequest("json")
25177	if res != nil && res.StatusCode == http.StatusNotModified {
25178		if res.Body != nil {
25179			res.Body.Close()
25180		}
25181		return nil, &googleapi.Error{
25182			Code:   res.StatusCode,
25183			Header: res.Header,
25184		}
25185	}
25186	if err != nil {
25187		return nil, err
25188	}
25189	defer googleapi.CloseBody(res)
25190	if err := googleapi.CheckResponse(res); err != nil {
25191		return nil, err
25192	}
25193	ret := &DatafeedstatusesListResponse{
25194		ServerResponse: googleapi.ServerResponse{
25195			Header:         res.Header,
25196			HTTPStatusCode: res.StatusCode,
25197		},
25198	}
25199	target := &ret
25200	if err := gensupport.DecodeResponse(target, res); err != nil {
25201		return nil, err
25202	}
25203	return ret, nil
25204	// {
25205	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
25206	//   "flatPath": "{merchantId}/datafeedstatuses",
25207	//   "httpMethod": "GET",
25208	//   "id": "content.datafeedstatuses.list",
25209	//   "parameterOrder": [
25210	//     "merchantId"
25211	//   ],
25212	//   "parameters": {
25213	//     "maxResults": {
25214	//       "description": "The maximum number of products to return in the response, used for paging.",
25215	//       "format": "uint32",
25216	//       "location": "query",
25217	//       "type": "integer"
25218	//     },
25219	//     "merchantId": {
25220	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
25221	//       "format": "uint64",
25222	//       "location": "path",
25223	//       "required": true,
25224	//       "type": "string"
25225	//     },
25226	//     "pageToken": {
25227	//       "description": "The token returned by the previous request.",
25228	//       "location": "query",
25229	//       "type": "string"
25230	//     }
25231	//   },
25232	//   "path": "{merchantId}/datafeedstatuses",
25233	//   "response": {
25234	//     "$ref": "DatafeedstatusesListResponse"
25235	//   },
25236	//   "scopes": [
25237	//     "https://www.googleapis.com/auth/content"
25238	//   ]
25239	// }
25240
25241}
25242
25243// Pages invokes f for each page of results.
25244// A non-nil error returned from f will halt the iteration.
25245// The provided context supersedes any context provided to the Context method.
25246func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
25247	c.ctx_ = ctx
25248	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25249	for {
25250		x, err := c.Do()
25251		if err != nil {
25252			return err
25253		}
25254		if err := f(x); err != nil {
25255			return err
25256		}
25257		if x.NextPageToken == "" {
25258			return nil
25259		}
25260		c.PageToken(x.NextPageToken)
25261	}
25262}
25263
25264// method id "content.freelistingsprogram.get":
25265
25266type FreelistingsprogramGetCall struct {
25267	s            *APIService
25268	merchantId   int64
25269	urlParams_   gensupport.URLParams
25270	ifNoneMatch_ string
25271	ctx_         context.Context
25272	header_      http.Header
25273}
25274
25275// Get: Retrieves the status and review eligibility for the free listing
25276// program.
25277//
25278// - merchantId: The ID of the account.
25279func (r *FreelistingsprogramService) Get(merchantId int64) *FreelistingsprogramGetCall {
25280	c := &FreelistingsprogramGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25281	c.merchantId = merchantId
25282	return c
25283}
25284
25285// Fields allows partial responses to be retrieved. See
25286// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25287// for more information.
25288func (c *FreelistingsprogramGetCall) Fields(s ...googleapi.Field) *FreelistingsprogramGetCall {
25289	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25290	return c
25291}
25292
25293// IfNoneMatch sets the optional parameter which makes the operation
25294// fail if the object's ETag matches the given value. This is useful for
25295// getting updates only after the object has changed since the last
25296// request. Use googleapi.IsNotModified to check whether the response
25297// error from Do is the result of In-None-Match.
25298func (c *FreelistingsprogramGetCall) IfNoneMatch(entityTag string) *FreelistingsprogramGetCall {
25299	c.ifNoneMatch_ = entityTag
25300	return c
25301}
25302
25303// Context sets the context to be used in this call's Do method. Any
25304// pending HTTP request will be aborted if the provided context is
25305// canceled.
25306func (c *FreelistingsprogramGetCall) Context(ctx context.Context) *FreelistingsprogramGetCall {
25307	c.ctx_ = ctx
25308	return c
25309}
25310
25311// Header returns an http.Header that can be modified by the caller to
25312// add HTTP headers to the request.
25313func (c *FreelistingsprogramGetCall) Header() http.Header {
25314	if c.header_ == nil {
25315		c.header_ = make(http.Header)
25316	}
25317	return c.header_
25318}
25319
25320func (c *FreelistingsprogramGetCall) doRequest(alt string) (*http.Response, error) {
25321	reqHeaders := make(http.Header)
25322	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25323	for k, v := range c.header_ {
25324		reqHeaders[k] = v
25325	}
25326	reqHeaders.Set("User-Agent", c.s.userAgent())
25327	if c.ifNoneMatch_ != "" {
25328		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25329	}
25330	var body io.Reader = nil
25331	c.urlParams_.Set("alt", alt)
25332	c.urlParams_.Set("prettyPrint", "false")
25333	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/freelistingsprogram")
25334	urls += "?" + c.urlParams_.Encode()
25335	req, err := http.NewRequest("GET", urls, body)
25336	if err != nil {
25337		return nil, err
25338	}
25339	req.Header = reqHeaders
25340	googleapi.Expand(req.URL, map[string]string{
25341		"merchantId": strconv.FormatInt(c.merchantId, 10),
25342	})
25343	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25344}
25345
25346// Do executes the "content.freelistingsprogram.get" call.
25347// Exactly one of *FreeListingsProgramStatus or error will be non-nil.
25348// Any non-2xx status code is an error. Response headers are in either
25349// *FreeListingsProgramStatus.ServerResponse.Header or (if a response
25350// was returned at all) in error.(*googleapi.Error).Header. Use
25351// googleapi.IsNotModified to check whether the returned error was
25352// because http.StatusNotModified was returned.
25353func (c *FreelistingsprogramGetCall) Do(opts ...googleapi.CallOption) (*FreeListingsProgramStatus, error) {
25354	gensupport.SetOptions(c.urlParams_, opts...)
25355	res, err := c.doRequest("json")
25356	if res != nil && res.StatusCode == http.StatusNotModified {
25357		if res.Body != nil {
25358			res.Body.Close()
25359		}
25360		return nil, &googleapi.Error{
25361			Code:   res.StatusCode,
25362			Header: res.Header,
25363		}
25364	}
25365	if err != nil {
25366		return nil, err
25367	}
25368	defer googleapi.CloseBody(res)
25369	if err := googleapi.CheckResponse(res); err != nil {
25370		return nil, err
25371	}
25372	ret := &FreeListingsProgramStatus{
25373		ServerResponse: googleapi.ServerResponse{
25374			Header:         res.Header,
25375			HTTPStatusCode: res.StatusCode,
25376		},
25377	}
25378	target := &ret
25379	if err := gensupport.DecodeResponse(target, res); err != nil {
25380		return nil, err
25381	}
25382	return ret, nil
25383	// {
25384	//   "description": "Retrieves the status and review eligibility for the free listing program.",
25385	//   "flatPath": "{merchantId}/freelistingsprogram",
25386	//   "httpMethod": "GET",
25387	//   "id": "content.freelistingsprogram.get",
25388	//   "parameterOrder": [
25389	//     "merchantId"
25390	//   ],
25391	//   "parameters": {
25392	//     "merchantId": {
25393	//       "description": "Required. The ID of the account.",
25394	//       "format": "int64",
25395	//       "location": "path",
25396	//       "required": true,
25397	//       "type": "string"
25398	//     }
25399	//   },
25400	//   "path": "{merchantId}/freelistingsprogram",
25401	//   "response": {
25402	//     "$ref": "FreeListingsProgramStatus"
25403	//   },
25404	//   "scopes": [
25405	//     "https://www.googleapis.com/auth/content"
25406	//   ]
25407	// }
25408
25409}
25410
25411// method id "content.freelistingsprogram.requestreview":
25412
25413type FreelistingsprogramRequestreviewCall struct {
25414	s                                *APIService
25415	merchantId                       int64
25416	requestreviewfreelistingsrequest *RequestReviewFreeListingsRequest
25417	urlParams_                       gensupport.URLParams
25418	ctx_                             context.Context
25419	header_                          http.Header
25420}
25421
25422// Requestreview: Requests a review for Free Listings program in the
25423// provided region. Important: This method is only whitelisted for
25424// selected merchants.
25425//
25426// - merchantId: The ID of the account.
25427func (r *FreelistingsprogramService) Requestreview(merchantId int64, requestreviewfreelistingsrequest *RequestReviewFreeListingsRequest) *FreelistingsprogramRequestreviewCall {
25428	c := &FreelistingsprogramRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25429	c.merchantId = merchantId
25430	c.requestreviewfreelistingsrequest = requestreviewfreelistingsrequest
25431	return c
25432}
25433
25434// Fields allows partial responses to be retrieved. See
25435// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25436// for more information.
25437func (c *FreelistingsprogramRequestreviewCall) Fields(s ...googleapi.Field) *FreelistingsprogramRequestreviewCall {
25438	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25439	return c
25440}
25441
25442// Context sets the context to be used in this call's Do method. Any
25443// pending HTTP request will be aborted if the provided context is
25444// canceled.
25445func (c *FreelistingsprogramRequestreviewCall) Context(ctx context.Context) *FreelistingsprogramRequestreviewCall {
25446	c.ctx_ = ctx
25447	return c
25448}
25449
25450// Header returns an http.Header that can be modified by the caller to
25451// add HTTP headers to the request.
25452func (c *FreelistingsprogramRequestreviewCall) Header() http.Header {
25453	if c.header_ == nil {
25454		c.header_ = make(http.Header)
25455	}
25456	return c.header_
25457}
25458
25459func (c *FreelistingsprogramRequestreviewCall) doRequest(alt string) (*http.Response, error) {
25460	reqHeaders := make(http.Header)
25461	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25462	for k, v := range c.header_ {
25463		reqHeaders[k] = v
25464	}
25465	reqHeaders.Set("User-Agent", c.s.userAgent())
25466	var body io.Reader = nil
25467	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewfreelistingsrequest)
25468	if err != nil {
25469		return nil, err
25470	}
25471	reqHeaders.Set("Content-Type", "application/json")
25472	c.urlParams_.Set("alt", alt)
25473	c.urlParams_.Set("prettyPrint", "false")
25474	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/freelistingsprogram/requestreview")
25475	urls += "?" + c.urlParams_.Encode()
25476	req, err := http.NewRequest("POST", urls, body)
25477	if err != nil {
25478		return nil, err
25479	}
25480	req.Header = reqHeaders
25481	googleapi.Expand(req.URL, map[string]string{
25482		"merchantId": strconv.FormatInt(c.merchantId, 10),
25483	})
25484	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25485}
25486
25487// Do executes the "content.freelistingsprogram.requestreview" call.
25488func (c *FreelistingsprogramRequestreviewCall) Do(opts ...googleapi.CallOption) error {
25489	gensupport.SetOptions(c.urlParams_, opts...)
25490	res, err := c.doRequest("json")
25491	if err != nil {
25492		return err
25493	}
25494	defer googleapi.CloseBody(res)
25495	if err := googleapi.CheckResponse(res); err != nil {
25496		return err
25497	}
25498	return nil
25499	// {
25500	//   "description": "Requests a review for Free Listings program in the provided region. Important: This method is only whitelisted for selected merchants.",
25501	//   "flatPath": "{merchantId}/freelistingsprogram/requestreview",
25502	//   "httpMethod": "POST",
25503	//   "id": "content.freelistingsprogram.requestreview",
25504	//   "parameterOrder": [
25505	//     "merchantId"
25506	//   ],
25507	//   "parameters": {
25508	//     "merchantId": {
25509	//       "description": "Required. The ID of the account.",
25510	//       "format": "int64",
25511	//       "location": "path",
25512	//       "required": true,
25513	//       "type": "string"
25514	//     }
25515	//   },
25516	//   "path": "{merchantId}/freelistingsprogram/requestreview",
25517	//   "request": {
25518	//     "$ref": "RequestReviewFreeListingsRequest"
25519	//   },
25520	//   "scopes": [
25521	//     "https://www.googleapis.com/auth/content"
25522	//   ]
25523	// }
25524
25525}
25526
25527// method id "content.liasettings.custombatch":
25528
25529type LiasettingsCustombatchCall struct {
25530	s                             *APIService
25531	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
25532	urlParams_                    gensupport.URLParams
25533	ctx_                          context.Context
25534	header_                       http.Header
25535}
25536
25537// Custombatch: Retrieves and/or updates the LIA settings of multiple
25538// accounts in a single request.
25539func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
25540	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25541	c.liasettingscustombatchrequest = liasettingscustombatchrequest
25542	return c
25543}
25544
25545// Fields allows partial responses to be retrieved. See
25546// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25547// for more information.
25548func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
25549	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25550	return c
25551}
25552
25553// Context sets the context to be used in this call's Do method. Any
25554// pending HTTP request will be aborted if the provided context is
25555// canceled.
25556func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
25557	c.ctx_ = ctx
25558	return c
25559}
25560
25561// Header returns an http.Header that can be modified by the caller to
25562// add HTTP headers to the request.
25563func (c *LiasettingsCustombatchCall) Header() http.Header {
25564	if c.header_ == nil {
25565		c.header_ = make(http.Header)
25566	}
25567	return c.header_
25568}
25569
25570func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
25571	reqHeaders := make(http.Header)
25572	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25573	for k, v := range c.header_ {
25574		reqHeaders[k] = v
25575	}
25576	reqHeaders.Set("User-Agent", c.s.userAgent())
25577	var body io.Reader = nil
25578	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
25579	if err != nil {
25580		return nil, err
25581	}
25582	reqHeaders.Set("Content-Type", "application/json")
25583	c.urlParams_.Set("alt", alt)
25584	c.urlParams_.Set("prettyPrint", "false")
25585	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch")
25586	urls += "?" + c.urlParams_.Encode()
25587	req, err := http.NewRequest("POST", urls, body)
25588	if err != nil {
25589		return nil, err
25590	}
25591	req.Header = reqHeaders
25592	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25593}
25594
25595// Do executes the "content.liasettings.custombatch" call.
25596// Exactly one of *LiasettingsCustomBatchResponse or error will be
25597// non-nil. Any non-2xx status code is an error. Response headers are in
25598// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
25599// response was returned at all) in error.(*googleapi.Error).Header. Use
25600// googleapi.IsNotModified to check whether the returned error was
25601// because http.StatusNotModified was returned.
25602func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
25603	gensupport.SetOptions(c.urlParams_, opts...)
25604	res, err := c.doRequest("json")
25605	if res != nil && res.StatusCode == http.StatusNotModified {
25606		if res.Body != nil {
25607			res.Body.Close()
25608		}
25609		return nil, &googleapi.Error{
25610			Code:   res.StatusCode,
25611			Header: res.Header,
25612		}
25613	}
25614	if err != nil {
25615		return nil, err
25616	}
25617	defer googleapi.CloseBody(res)
25618	if err := googleapi.CheckResponse(res); err != nil {
25619		return nil, err
25620	}
25621	ret := &LiasettingsCustomBatchResponse{
25622		ServerResponse: googleapi.ServerResponse{
25623			Header:         res.Header,
25624			HTTPStatusCode: res.StatusCode,
25625		},
25626	}
25627	target := &ret
25628	if err := gensupport.DecodeResponse(target, res); err != nil {
25629		return nil, err
25630	}
25631	return ret, nil
25632	// {
25633	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
25634	//   "flatPath": "liasettings/batch",
25635	//   "httpMethod": "POST",
25636	//   "id": "content.liasettings.custombatch",
25637	//   "parameterOrder": [],
25638	//   "parameters": {},
25639	//   "path": "liasettings/batch",
25640	//   "request": {
25641	//     "$ref": "LiasettingsCustomBatchRequest"
25642	//   },
25643	//   "response": {
25644	//     "$ref": "LiasettingsCustomBatchResponse"
25645	//   },
25646	//   "scopes": [
25647	//     "https://www.googleapis.com/auth/content"
25648	//   ]
25649	// }
25650
25651}
25652
25653// method id "content.liasettings.get":
25654
25655type LiasettingsGetCall struct {
25656	s            *APIService
25657	merchantId   uint64
25658	accountId    uint64
25659	urlParams_   gensupport.URLParams
25660	ifNoneMatch_ string
25661	ctx_         context.Context
25662	header_      http.Header
25663}
25664
25665// Get: Retrieves the LIA settings of the account.
25666//
25667// - accountId: The ID of the account for which to get or update LIA
25668//   settings.
25669// - merchantId: The ID of the managing account. If this parameter is
25670//   not the same as accountId, then this account must be a multi-client
25671//   account and `accountId` must be the ID of a sub-account of this
25672//   account.
25673func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
25674	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25675	c.merchantId = merchantId
25676	c.accountId = accountId
25677	return c
25678}
25679
25680// Fields allows partial responses to be retrieved. See
25681// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25682// for more information.
25683func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
25684	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25685	return c
25686}
25687
25688// IfNoneMatch sets the optional parameter which makes the operation
25689// fail if the object's ETag matches the given value. This is useful for
25690// getting updates only after the object has changed since the last
25691// request. Use googleapi.IsNotModified to check whether the response
25692// error from Do is the result of In-None-Match.
25693func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
25694	c.ifNoneMatch_ = entityTag
25695	return c
25696}
25697
25698// Context sets the context to be used in this call's Do method. Any
25699// pending HTTP request will be aborted if the provided context is
25700// canceled.
25701func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
25702	c.ctx_ = ctx
25703	return c
25704}
25705
25706// Header returns an http.Header that can be modified by the caller to
25707// add HTTP headers to the request.
25708func (c *LiasettingsGetCall) Header() http.Header {
25709	if c.header_ == nil {
25710		c.header_ = make(http.Header)
25711	}
25712	return c.header_
25713}
25714
25715func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
25716	reqHeaders := make(http.Header)
25717	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25718	for k, v := range c.header_ {
25719		reqHeaders[k] = v
25720	}
25721	reqHeaders.Set("User-Agent", c.s.userAgent())
25722	if c.ifNoneMatch_ != "" {
25723		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25724	}
25725	var body io.Reader = nil
25726	c.urlParams_.Set("alt", alt)
25727	c.urlParams_.Set("prettyPrint", "false")
25728	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
25729	urls += "?" + c.urlParams_.Encode()
25730	req, err := http.NewRequest("GET", urls, body)
25731	if err != nil {
25732		return nil, err
25733	}
25734	req.Header = reqHeaders
25735	googleapi.Expand(req.URL, map[string]string{
25736		"merchantId": strconv.FormatUint(c.merchantId, 10),
25737		"accountId":  strconv.FormatUint(c.accountId, 10),
25738	})
25739	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25740}
25741
25742// Do executes the "content.liasettings.get" call.
25743// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
25744// status code is an error. Response headers are in either
25745// *LiaSettings.ServerResponse.Header or (if a response was returned at
25746// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
25747// to check whether the returned error was because
25748// http.StatusNotModified was returned.
25749func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
25750	gensupport.SetOptions(c.urlParams_, opts...)
25751	res, err := c.doRequest("json")
25752	if res != nil && res.StatusCode == http.StatusNotModified {
25753		if res.Body != nil {
25754			res.Body.Close()
25755		}
25756		return nil, &googleapi.Error{
25757			Code:   res.StatusCode,
25758			Header: res.Header,
25759		}
25760	}
25761	if err != nil {
25762		return nil, err
25763	}
25764	defer googleapi.CloseBody(res)
25765	if err := googleapi.CheckResponse(res); err != nil {
25766		return nil, err
25767	}
25768	ret := &LiaSettings{
25769		ServerResponse: googleapi.ServerResponse{
25770			Header:         res.Header,
25771			HTTPStatusCode: res.StatusCode,
25772		},
25773	}
25774	target := &ret
25775	if err := gensupport.DecodeResponse(target, res); err != nil {
25776		return nil, err
25777	}
25778	return ret, nil
25779	// {
25780	//   "description": "Retrieves the LIA settings of the account.",
25781	//   "flatPath": "{merchantId}/liasettings/{accountId}",
25782	//   "httpMethod": "GET",
25783	//   "id": "content.liasettings.get",
25784	//   "parameterOrder": [
25785	//     "merchantId",
25786	//     "accountId"
25787	//   ],
25788	//   "parameters": {
25789	//     "accountId": {
25790	//       "description": "The ID of the account for which to get or update LIA settings.",
25791	//       "format": "uint64",
25792	//       "location": "path",
25793	//       "required": true,
25794	//       "type": "string"
25795	//     },
25796	//     "merchantId": {
25797	//       "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.",
25798	//       "format": "uint64",
25799	//       "location": "path",
25800	//       "required": true,
25801	//       "type": "string"
25802	//     }
25803	//   },
25804	//   "path": "{merchantId}/liasettings/{accountId}",
25805	//   "response": {
25806	//     "$ref": "LiaSettings"
25807	//   },
25808	//   "scopes": [
25809	//     "https://www.googleapis.com/auth/content"
25810	//   ]
25811	// }
25812
25813}
25814
25815// method id "content.liasettings.getaccessiblegmbaccounts":
25816
25817type LiasettingsGetaccessiblegmbaccountsCall struct {
25818	s            *APIService
25819	merchantId   uint64
25820	accountId    uint64
25821	urlParams_   gensupport.URLParams
25822	ifNoneMatch_ string
25823	ctx_         context.Context
25824	header_      http.Header
25825}
25826
25827// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
25828// Business accounts.
25829//
25830// - accountId: The ID of the account for which to retrieve accessible
25831//   Google My Business accounts.
25832// - merchantId: The ID of the managing account. If this parameter is
25833//   not the same as accountId, then this account must be a multi-client
25834//   account and `accountId` must be the ID of a sub-account of this
25835//   account.
25836func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
25837	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25838	c.merchantId = merchantId
25839	c.accountId = accountId
25840	return c
25841}
25842
25843// Fields allows partial responses to be retrieved. See
25844// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25845// for more information.
25846func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
25847	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25848	return c
25849}
25850
25851// IfNoneMatch sets the optional parameter which makes the operation
25852// fail if the object's ETag matches the given value. This is useful for
25853// getting updates only after the object has changed since the last
25854// request. Use googleapi.IsNotModified to check whether the response
25855// error from Do is the result of In-None-Match.
25856func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
25857	c.ifNoneMatch_ = entityTag
25858	return c
25859}
25860
25861// Context sets the context to be used in this call's Do method. Any
25862// pending HTTP request will be aborted if the provided context is
25863// canceled.
25864func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
25865	c.ctx_ = ctx
25866	return c
25867}
25868
25869// Header returns an http.Header that can be modified by the caller to
25870// add HTTP headers to the request.
25871func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
25872	if c.header_ == nil {
25873		c.header_ = make(http.Header)
25874	}
25875	return c.header_
25876}
25877
25878func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
25879	reqHeaders := make(http.Header)
25880	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
25881	for k, v := range c.header_ {
25882		reqHeaders[k] = v
25883	}
25884	reqHeaders.Set("User-Agent", c.s.userAgent())
25885	if c.ifNoneMatch_ != "" {
25886		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25887	}
25888	var body io.Reader = nil
25889	c.urlParams_.Set("alt", alt)
25890	c.urlParams_.Set("prettyPrint", "false")
25891	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
25892	urls += "?" + c.urlParams_.Encode()
25893	req, err := http.NewRequest("GET", urls, body)
25894	if err != nil {
25895		return nil, err
25896	}
25897	req.Header = reqHeaders
25898	googleapi.Expand(req.URL, map[string]string{
25899		"merchantId": strconv.FormatUint(c.merchantId, 10),
25900		"accountId":  strconv.FormatUint(c.accountId, 10),
25901	})
25902	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25903}
25904
25905// Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
25906// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
25907// will be non-nil. Any non-2xx status code is an error. Response
25908// headers are in either
25909// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
25910// (if a response was returned at all) in
25911// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25912// whether the returned error was because http.StatusNotModified was
25913// returned.
25914func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
25915	gensupport.SetOptions(c.urlParams_, opts...)
25916	res, err := c.doRequest("json")
25917	if res != nil && res.StatusCode == http.StatusNotModified {
25918		if res.Body != nil {
25919			res.Body.Close()
25920		}
25921		return nil, &googleapi.Error{
25922			Code:   res.StatusCode,
25923			Header: res.Header,
25924		}
25925	}
25926	if err != nil {
25927		return nil, err
25928	}
25929	defer googleapi.CloseBody(res)
25930	if err := googleapi.CheckResponse(res); err != nil {
25931		return nil, err
25932	}
25933	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
25934		ServerResponse: googleapi.ServerResponse{
25935			Header:         res.Header,
25936			HTTPStatusCode: res.StatusCode,
25937		},
25938	}
25939	target := &ret
25940	if err := gensupport.DecodeResponse(target, res); err != nil {
25941		return nil, err
25942	}
25943	return ret, nil
25944	// {
25945	//   "description": "Retrieves the list of accessible Google My Business accounts.",
25946	//   "flatPath": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
25947	//   "httpMethod": "GET",
25948	//   "id": "content.liasettings.getaccessiblegmbaccounts",
25949	//   "parameterOrder": [
25950	//     "merchantId",
25951	//     "accountId"
25952	//   ],
25953	//   "parameters": {
25954	//     "accountId": {
25955	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
25956	//       "format": "uint64",
25957	//       "location": "path",
25958	//       "required": true,
25959	//       "type": "string"
25960	//     },
25961	//     "merchantId": {
25962	//       "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.",
25963	//       "format": "uint64",
25964	//       "location": "path",
25965	//       "required": true,
25966	//       "type": "string"
25967	//     }
25968	//   },
25969	//   "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
25970	//   "response": {
25971	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
25972	//   },
25973	//   "scopes": [
25974	//     "https://www.googleapis.com/auth/content"
25975	//   ]
25976	// }
25977
25978}
25979
25980// method id "content.liasettings.list":
25981
25982type LiasettingsListCall struct {
25983	s            *APIService
25984	merchantId   uint64
25985	urlParams_   gensupport.URLParams
25986	ifNoneMatch_ string
25987	ctx_         context.Context
25988	header_      http.Header
25989}
25990
25991// List: Lists the LIA settings of the sub-accounts in your Merchant
25992// Center account.
25993//
25994// - merchantId: The ID of the managing account. This must be a
25995//   multi-client account.
25996func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
25997	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25998	c.merchantId = merchantId
25999	return c
26000}
26001
26002// MaxResults sets the optional parameter "maxResults": The maximum
26003// number of LIA settings to return in the response, used for paging.
26004func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
26005	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
26006	return c
26007}
26008
26009// PageToken sets the optional parameter "pageToken": The token returned
26010// by the previous request.
26011func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
26012	c.urlParams_.Set("pageToken", pageToken)
26013	return c
26014}
26015
26016// Fields allows partial responses to be retrieved. See
26017// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26018// for more information.
26019func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
26020	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26021	return c
26022}
26023
26024// IfNoneMatch sets the optional parameter which makes the operation
26025// fail if the object's ETag matches the given value. This is useful for
26026// getting updates only after the object has changed since the last
26027// request. Use googleapi.IsNotModified to check whether the response
26028// error from Do is the result of In-None-Match.
26029func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
26030	c.ifNoneMatch_ = entityTag
26031	return c
26032}
26033
26034// Context sets the context to be used in this call's Do method. Any
26035// pending HTTP request will be aborted if the provided context is
26036// canceled.
26037func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
26038	c.ctx_ = ctx
26039	return c
26040}
26041
26042// Header returns an http.Header that can be modified by the caller to
26043// add HTTP headers to the request.
26044func (c *LiasettingsListCall) Header() http.Header {
26045	if c.header_ == nil {
26046		c.header_ = make(http.Header)
26047	}
26048	return c.header_
26049}
26050
26051func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
26052	reqHeaders := make(http.Header)
26053	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26054	for k, v := range c.header_ {
26055		reqHeaders[k] = v
26056	}
26057	reqHeaders.Set("User-Agent", c.s.userAgent())
26058	if c.ifNoneMatch_ != "" {
26059		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26060	}
26061	var body io.Reader = nil
26062	c.urlParams_.Set("alt", alt)
26063	c.urlParams_.Set("prettyPrint", "false")
26064	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings")
26065	urls += "?" + c.urlParams_.Encode()
26066	req, err := http.NewRequest("GET", urls, body)
26067	if err != nil {
26068		return nil, err
26069	}
26070	req.Header = reqHeaders
26071	googleapi.Expand(req.URL, map[string]string{
26072		"merchantId": strconv.FormatUint(c.merchantId, 10),
26073	})
26074	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26075}
26076
26077// Do executes the "content.liasettings.list" call.
26078// Exactly one of *LiasettingsListResponse or error will be non-nil. Any
26079// non-2xx status code is an error. Response headers are in either
26080// *LiasettingsListResponse.ServerResponse.Header or (if a response was
26081// returned at all) in error.(*googleapi.Error).Header. Use
26082// googleapi.IsNotModified to check whether the returned error was
26083// because http.StatusNotModified was returned.
26084func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
26085	gensupport.SetOptions(c.urlParams_, opts...)
26086	res, err := c.doRequest("json")
26087	if res != nil && res.StatusCode == http.StatusNotModified {
26088		if res.Body != nil {
26089			res.Body.Close()
26090		}
26091		return nil, &googleapi.Error{
26092			Code:   res.StatusCode,
26093			Header: res.Header,
26094		}
26095	}
26096	if err != nil {
26097		return nil, err
26098	}
26099	defer googleapi.CloseBody(res)
26100	if err := googleapi.CheckResponse(res); err != nil {
26101		return nil, err
26102	}
26103	ret := &LiasettingsListResponse{
26104		ServerResponse: googleapi.ServerResponse{
26105			Header:         res.Header,
26106			HTTPStatusCode: res.StatusCode,
26107		},
26108	}
26109	target := &ret
26110	if err := gensupport.DecodeResponse(target, res); err != nil {
26111		return nil, err
26112	}
26113	return ret, nil
26114	// {
26115	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
26116	//   "flatPath": "{merchantId}/liasettings",
26117	//   "httpMethod": "GET",
26118	//   "id": "content.liasettings.list",
26119	//   "parameterOrder": [
26120	//     "merchantId"
26121	//   ],
26122	//   "parameters": {
26123	//     "maxResults": {
26124	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
26125	//       "format": "uint32",
26126	//       "location": "query",
26127	//       "type": "integer"
26128	//     },
26129	//     "merchantId": {
26130	//       "description": "The ID of the managing account. This must be a multi-client account.",
26131	//       "format": "uint64",
26132	//       "location": "path",
26133	//       "required": true,
26134	//       "type": "string"
26135	//     },
26136	//     "pageToken": {
26137	//       "description": "The token returned by the previous request.",
26138	//       "location": "query",
26139	//       "type": "string"
26140	//     }
26141	//   },
26142	//   "path": "{merchantId}/liasettings",
26143	//   "response": {
26144	//     "$ref": "LiasettingsListResponse"
26145	//   },
26146	//   "scopes": [
26147	//     "https://www.googleapis.com/auth/content"
26148	//   ]
26149	// }
26150
26151}
26152
26153// Pages invokes f for each page of results.
26154// A non-nil error returned from f will halt the iteration.
26155// The provided context supersedes any context provided to the Context method.
26156func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
26157	c.ctx_ = ctx
26158	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26159	for {
26160		x, err := c.Do()
26161		if err != nil {
26162			return err
26163		}
26164		if err := f(x); err != nil {
26165			return err
26166		}
26167		if x.NextPageToken == "" {
26168			return nil
26169		}
26170		c.PageToken(x.NextPageToken)
26171	}
26172}
26173
26174// method id "content.liasettings.listposdataproviders":
26175
26176type LiasettingsListposdataprovidersCall struct {
26177	s            *APIService
26178	urlParams_   gensupport.URLParams
26179	ifNoneMatch_ string
26180	ctx_         context.Context
26181	header_      http.Header
26182}
26183
26184// Listposdataproviders: Retrieves the list of POS data providers that
26185// have active settings for the all eiligible countries.
26186func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
26187	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26188	return c
26189}
26190
26191// Fields allows partial responses to be retrieved. See
26192// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26193// for more information.
26194func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
26195	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26196	return c
26197}
26198
26199// IfNoneMatch sets the optional parameter which makes the operation
26200// fail if the object's ETag matches the given value. This is useful for
26201// getting updates only after the object has changed since the last
26202// request. Use googleapi.IsNotModified to check whether the response
26203// error from Do is the result of In-None-Match.
26204func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
26205	c.ifNoneMatch_ = entityTag
26206	return c
26207}
26208
26209// Context sets the context to be used in this call's Do method. Any
26210// pending HTTP request will be aborted if the provided context is
26211// canceled.
26212func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
26213	c.ctx_ = ctx
26214	return c
26215}
26216
26217// Header returns an http.Header that can be modified by the caller to
26218// add HTTP headers to the request.
26219func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
26220	if c.header_ == nil {
26221		c.header_ = make(http.Header)
26222	}
26223	return c.header_
26224}
26225
26226func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
26227	reqHeaders := make(http.Header)
26228	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26229	for k, v := range c.header_ {
26230		reqHeaders[k] = v
26231	}
26232	reqHeaders.Set("User-Agent", c.s.userAgent())
26233	if c.ifNoneMatch_ != "" {
26234		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26235	}
26236	var body io.Reader = nil
26237	c.urlParams_.Set("alt", alt)
26238	c.urlParams_.Set("prettyPrint", "false")
26239	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/posdataproviders")
26240	urls += "?" + c.urlParams_.Encode()
26241	req, err := http.NewRequest("GET", urls, body)
26242	if err != nil {
26243		return nil, err
26244	}
26245	req.Header = reqHeaders
26246	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26247}
26248
26249// Do executes the "content.liasettings.listposdataproviders" call.
26250// Exactly one of *LiasettingsListPosDataProvidersResponse or error will
26251// be non-nil. Any non-2xx status code is an error. Response headers are
26252// in either
26253// *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
26254// a response was returned at all) in error.(*googleapi.Error).Header.
26255// Use googleapi.IsNotModified to check whether the returned error was
26256// because http.StatusNotModified was returned.
26257func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
26258	gensupport.SetOptions(c.urlParams_, opts...)
26259	res, err := c.doRequest("json")
26260	if res != nil && res.StatusCode == http.StatusNotModified {
26261		if res.Body != nil {
26262			res.Body.Close()
26263		}
26264		return nil, &googleapi.Error{
26265			Code:   res.StatusCode,
26266			Header: res.Header,
26267		}
26268	}
26269	if err != nil {
26270		return nil, err
26271	}
26272	defer googleapi.CloseBody(res)
26273	if err := googleapi.CheckResponse(res); err != nil {
26274		return nil, err
26275	}
26276	ret := &LiasettingsListPosDataProvidersResponse{
26277		ServerResponse: googleapi.ServerResponse{
26278			Header:         res.Header,
26279			HTTPStatusCode: res.StatusCode,
26280		},
26281	}
26282	target := &ret
26283	if err := gensupport.DecodeResponse(target, res); err != nil {
26284		return nil, err
26285	}
26286	return ret, nil
26287	// {
26288	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
26289	//   "flatPath": "liasettings/posdataproviders",
26290	//   "httpMethod": "GET",
26291	//   "id": "content.liasettings.listposdataproviders",
26292	//   "parameterOrder": [],
26293	//   "parameters": {},
26294	//   "path": "liasettings/posdataproviders",
26295	//   "response": {
26296	//     "$ref": "LiasettingsListPosDataProvidersResponse"
26297	//   },
26298	//   "scopes": [
26299	//     "https://www.googleapis.com/auth/content"
26300	//   ]
26301	// }
26302
26303}
26304
26305// method id "content.liasettings.requestgmbaccess":
26306
26307type LiasettingsRequestgmbaccessCall struct {
26308	s          *APIService
26309	merchantId uint64
26310	accountId  uint64
26311	urlParams_ gensupport.URLParams
26312	ctx_       context.Context
26313	header_    http.Header
26314}
26315
26316// Requestgmbaccess: Requests access to a specified Google My Business
26317// account.
26318//
26319// - accountId: The ID of the account for which GMB access is requested.
26320// - gmbEmail: The email of the Google My Business account.
26321// - merchantId: The ID of the managing account. If this parameter is
26322//   not the same as accountId, then this account must be a multi-client
26323//   account and `accountId` must be the ID of a sub-account of this
26324//   account.
26325func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
26326	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26327	c.merchantId = merchantId
26328	c.accountId = accountId
26329	c.urlParams_.Set("gmbEmail", gmbEmail)
26330	return c
26331}
26332
26333// Fields allows partial responses to be retrieved. See
26334// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26335// for more information.
26336func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
26337	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26338	return c
26339}
26340
26341// Context sets the context to be used in this call's Do method. Any
26342// pending HTTP request will be aborted if the provided context is
26343// canceled.
26344func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
26345	c.ctx_ = ctx
26346	return c
26347}
26348
26349// Header returns an http.Header that can be modified by the caller to
26350// add HTTP headers to the request.
26351func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
26352	if c.header_ == nil {
26353		c.header_ = make(http.Header)
26354	}
26355	return c.header_
26356}
26357
26358func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
26359	reqHeaders := make(http.Header)
26360	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26361	for k, v := range c.header_ {
26362		reqHeaders[k] = v
26363	}
26364	reqHeaders.Set("User-Agent", c.s.userAgent())
26365	var body io.Reader = nil
26366	c.urlParams_.Set("alt", alt)
26367	c.urlParams_.Set("prettyPrint", "false")
26368	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess")
26369	urls += "?" + c.urlParams_.Encode()
26370	req, err := http.NewRequest("POST", urls, body)
26371	if err != nil {
26372		return nil, err
26373	}
26374	req.Header = reqHeaders
26375	googleapi.Expand(req.URL, map[string]string{
26376		"merchantId": strconv.FormatUint(c.merchantId, 10),
26377		"accountId":  strconv.FormatUint(c.accountId, 10),
26378	})
26379	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26380}
26381
26382// Do executes the "content.liasettings.requestgmbaccess" call.
26383// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
26384// non-nil. Any non-2xx status code is an error. Response headers are in
26385// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
26386// (if a response was returned at all) in
26387// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26388// whether the returned error was because http.StatusNotModified was
26389// returned.
26390func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
26391	gensupport.SetOptions(c.urlParams_, opts...)
26392	res, err := c.doRequest("json")
26393	if res != nil && res.StatusCode == http.StatusNotModified {
26394		if res.Body != nil {
26395			res.Body.Close()
26396		}
26397		return nil, &googleapi.Error{
26398			Code:   res.StatusCode,
26399			Header: res.Header,
26400		}
26401	}
26402	if err != nil {
26403		return nil, err
26404	}
26405	defer googleapi.CloseBody(res)
26406	if err := googleapi.CheckResponse(res); err != nil {
26407		return nil, err
26408	}
26409	ret := &LiasettingsRequestGmbAccessResponse{
26410		ServerResponse: googleapi.ServerResponse{
26411			Header:         res.Header,
26412			HTTPStatusCode: res.StatusCode,
26413		},
26414	}
26415	target := &ret
26416	if err := gensupport.DecodeResponse(target, res); err != nil {
26417		return nil, err
26418	}
26419	return ret, nil
26420	// {
26421	//   "description": "Requests access to a specified Google My Business account.",
26422	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
26423	//   "httpMethod": "POST",
26424	//   "id": "content.liasettings.requestgmbaccess",
26425	//   "parameterOrder": [
26426	//     "merchantId",
26427	//     "accountId",
26428	//     "gmbEmail"
26429	//   ],
26430	//   "parameters": {
26431	//     "accountId": {
26432	//       "description": "The ID of the account for which GMB access is requested.",
26433	//       "format": "uint64",
26434	//       "location": "path",
26435	//       "required": true,
26436	//       "type": "string"
26437	//     },
26438	//     "gmbEmail": {
26439	//       "description": "The email of the Google My Business account.",
26440	//       "location": "query",
26441	//       "required": true,
26442	//       "type": "string"
26443	//     },
26444	//     "merchantId": {
26445	//       "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.",
26446	//       "format": "uint64",
26447	//       "location": "path",
26448	//       "required": true,
26449	//       "type": "string"
26450	//     }
26451	//   },
26452	//   "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
26453	//   "response": {
26454	//     "$ref": "LiasettingsRequestGmbAccessResponse"
26455	//   },
26456	//   "scopes": [
26457	//     "https://www.googleapis.com/auth/content"
26458	//   ]
26459	// }
26460
26461}
26462
26463// method id "content.liasettings.requestinventoryverification":
26464
26465type LiasettingsRequestinventoryverificationCall struct {
26466	s          *APIService
26467	merchantId uint64
26468	accountId  uint64
26469	country    string
26470	urlParams_ gensupport.URLParams
26471	ctx_       context.Context
26472	header_    http.Header
26473}
26474
26475// Requestinventoryverification: Requests inventory validation for the
26476// specified country.
26477//
26478// - accountId: The ID of the account that manages the order. This
26479//   cannot be a multi-client account.
26480// - country: The country for which inventory validation is requested.
26481// - merchantId: The ID of the managing account. If this parameter is
26482//   not the same as accountId, then this account must be a multi-client
26483//   account and `accountId` must be the ID of a sub-account of this
26484//   account.
26485func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
26486	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26487	c.merchantId = merchantId
26488	c.accountId = accountId
26489	c.country = country
26490	return c
26491}
26492
26493// Fields allows partial responses to be retrieved. See
26494// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26495// for more information.
26496func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
26497	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26498	return c
26499}
26500
26501// Context sets the context to be used in this call's Do method. Any
26502// pending HTTP request will be aborted if the provided context is
26503// canceled.
26504func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
26505	c.ctx_ = ctx
26506	return c
26507}
26508
26509// Header returns an http.Header that can be modified by the caller to
26510// add HTTP headers to the request.
26511func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
26512	if c.header_ == nil {
26513		c.header_ = make(http.Header)
26514	}
26515	return c.header_
26516}
26517
26518func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
26519	reqHeaders := make(http.Header)
26520	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26521	for k, v := range c.header_ {
26522		reqHeaders[k] = v
26523	}
26524	reqHeaders.Set("User-Agent", c.s.userAgent())
26525	var body io.Reader = nil
26526	c.urlParams_.Set("alt", alt)
26527	c.urlParams_.Set("prettyPrint", "false")
26528	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
26529	urls += "?" + c.urlParams_.Encode()
26530	req, err := http.NewRequest("POST", urls, body)
26531	if err != nil {
26532		return nil, err
26533	}
26534	req.Header = reqHeaders
26535	googleapi.Expand(req.URL, map[string]string{
26536		"merchantId": strconv.FormatUint(c.merchantId, 10),
26537		"accountId":  strconv.FormatUint(c.accountId, 10),
26538		"country":    c.country,
26539	})
26540	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26541}
26542
26543// Do executes the "content.liasettings.requestinventoryverification" call.
26544// Exactly one of *LiasettingsRequestInventoryVerificationResponse or
26545// error will be non-nil. Any non-2xx status code is an error. Response
26546// headers are in either
26547// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
26548//  or (if a response was returned at all) in
26549// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26550// whether the returned error was because http.StatusNotModified was
26551// returned.
26552func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
26553	gensupport.SetOptions(c.urlParams_, opts...)
26554	res, err := c.doRequest("json")
26555	if res != nil && res.StatusCode == http.StatusNotModified {
26556		if res.Body != nil {
26557			res.Body.Close()
26558		}
26559		return nil, &googleapi.Error{
26560			Code:   res.StatusCode,
26561			Header: res.Header,
26562		}
26563	}
26564	if err != nil {
26565		return nil, err
26566	}
26567	defer googleapi.CloseBody(res)
26568	if err := googleapi.CheckResponse(res); err != nil {
26569		return nil, err
26570	}
26571	ret := &LiasettingsRequestInventoryVerificationResponse{
26572		ServerResponse: googleapi.ServerResponse{
26573			Header:         res.Header,
26574			HTTPStatusCode: res.StatusCode,
26575		},
26576	}
26577	target := &ret
26578	if err := gensupport.DecodeResponse(target, res); err != nil {
26579		return nil, err
26580	}
26581	return ret, nil
26582	// {
26583	//   "description": "Requests inventory validation for the specified country.",
26584	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
26585	//   "httpMethod": "POST",
26586	//   "id": "content.liasettings.requestinventoryverification",
26587	//   "parameterOrder": [
26588	//     "merchantId",
26589	//     "accountId",
26590	//     "country"
26591	//   ],
26592	//   "parameters": {
26593	//     "accountId": {
26594	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26595	//       "format": "uint64",
26596	//       "location": "path",
26597	//       "required": true,
26598	//       "type": "string"
26599	//     },
26600	//     "country": {
26601	//       "description": "The country for which inventory validation is requested.",
26602	//       "location": "path",
26603	//       "required": true,
26604	//       "type": "string"
26605	//     },
26606	//     "merchantId": {
26607	//       "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.",
26608	//       "format": "uint64",
26609	//       "location": "path",
26610	//       "required": true,
26611	//       "type": "string"
26612	//     }
26613	//   },
26614	//   "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
26615	//   "response": {
26616	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
26617	//   },
26618	//   "scopes": [
26619	//     "https://www.googleapis.com/auth/content"
26620	//   ]
26621	// }
26622
26623}
26624
26625// method id "content.liasettings.setinventoryverificationcontact":
26626
26627type LiasettingsSetinventoryverificationcontactCall struct {
26628	s          *APIService
26629	merchantId uint64
26630	accountId  uint64
26631	urlParams_ gensupport.URLParams
26632	ctx_       context.Context
26633	header_    http.Header
26634}
26635
26636// Setinventoryverificationcontact: Sets the inventory verification
26637// contract for the specified country.
26638//
26639// - accountId: The ID of the account that manages the order. This
26640//   cannot be a multi-client account.
26641// - contactEmail: The email of the inventory verification contact.
26642// - contactName: The name of the inventory verification contact.
26643// - country: The country for which inventory verification is requested.
26644// - language: The language for which inventory verification is
26645//   requested.
26646// - merchantId: The ID of the managing account. If this parameter is
26647//   not the same as accountId, then this account must be a multi-client
26648//   account and `accountId` must be the ID of a sub-account of this
26649//   account.
26650func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, country string, language string, contactName string, contactEmail string) *LiasettingsSetinventoryverificationcontactCall {
26651	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26652	c.merchantId = merchantId
26653	c.accountId = accountId
26654	c.urlParams_.Set("country", country)
26655	c.urlParams_.Set("language", language)
26656	c.urlParams_.Set("contactName", contactName)
26657	c.urlParams_.Set("contactEmail", contactEmail)
26658	return c
26659}
26660
26661// Fields allows partial responses to be retrieved. See
26662// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26663// for more information.
26664func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
26665	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26666	return c
26667}
26668
26669// Context sets the context to be used in this call's Do method. Any
26670// pending HTTP request will be aborted if the provided context is
26671// canceled.
26672func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
26673	c.ctx_ = ctx
26674	return c
26675}
26676
26677// Header returns an http.Header that can be modified by the caller to
26678// add HTTP headers to the request.
26679func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
26680	if c.header_ == nil {
26681		c.header_ = make(http.Header)
26682	}
26683	return c.header_
26684}
26685
26686func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
26687	reqHeaders := make(http.Header)
26688	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26689	for k, v := range c.header_ {
26690		reqHeaders[k] = v
26691	}
26692	reqHeaders.Set("User-Agent", c.s.userAgent())
26693	var body io.Reader = nil
26694	c.urlParams_.Set("alt", alt)
26695	c.urlParams_.Set("prettyPrint", "false")
26696	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
26697	urls += "?" + c.urlParams_.Encode()
26698	req, err := http.NewRequest("POST", urls, body)
26699	if err != nil {
26700		return nil, err
26701	}
26702	req.Header = reqHeaders
26703	googleapi.Expand(req.URL, map[string]string{
26704		"merchantId": strconv.FormatUint(c.merchantId, 10),
26705		"accountId":  strconv.FormatUint(c.accountId, 10),
26706	})
26707	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26708}
26709
26710// Do executes the "content.liasettings.setinventoryverificationcontact" call.
26711// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
26712// error will be non-nil. Any non-2xx status code is an error. Response
26713// headers are in either
26714// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
26715// der or (if a response was returned at all) in
26716// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26717// whether the returned error was because http.StatusNotModified was
26718// returned.
26719func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
26720	gensupport.SetOptions(c.urlParams_, opts...)
26721	res, err := c.doRequest("json")
26722	if res != nil && res.StatusCode == http.StatusNotModified {
26723		if res.Body != nil {
26724			res.Body.Close()
26725		}
26726		return nil, &googleapi.Error{
26727			Code:   res.StatusCode,
26728			Header: res.Header,
26729		}
26730	}
26731	if err != nil {
26732		return nil, err
26733	}
26734	defer googleapi.CloseBody(res)
26735	if err := googleapi.CheckResponse(res); err != nil {
26736		return nil, err
26737	}
26738	ret := &LiasettingsSetInventoryVerificationContactResponse{
26739		ServerResponse: googleapi.ServerResponse{
26740			Header:         res.Header,
26741			HTTPStatusCode: res.StatusCode,
26742		},
26743	}
26744	target := &ret
26745	if err := gensupport.DecodeResponse(target, res); err != nil {
26746		return nil, err
26747	}
26748	return ret, nil
26749	// {
26750	//   "description": "Sets the inventory verification contract for the specified country.",
26751	//   "flatPath": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
26752	//   "httpMethod": "POST",
26753	//   "id": "content.liasettings.setinventoryverificationcontact",
26754	//   "parameterOrder": [
26755	//     "merchantId",
26756	//     "accountId",
26757	//     "country",
26758	//     "language",
26759	//     "contactName",
26760	//     "contactEmail"
26761	//   ],
26762	//   "parameters": {
26763	//     "accountId": {
26764	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26765	//       "format": "uint64",
26766	//       "location": "path",
26767	//       "required": true,
26768	//       "type": "string"
26769	//     },
26770	//     "contactEmail": {
26771	//       "description": "The email of the inventory verification contact.",
26772	//       "location": "query",
26773	//       "required": true,
26774	//       "type": "string"
26775	//     },
26776	//     "contactName": {
26777	//       "description": "The name of the inventory verification contact.",
26778	//       "location": "query",
26779	//       "required": true,
26780	//       "type": "string"
26781	//     },
26782	//     "country": {
26783	//       "description": "The country for which inventory verification is requested.",
26784	//       "location": "query",
26785	//       "required": true,
26786	//       "type": "string"
26787	//     },
26788	//     "language": {
26789	//       "description": "The language for which inventory verification is requested.",
26790	//       "location": "query",
26791	//       "required": true,
26792	//       "type": "string"
26793	//     },
26794	//     "merchantId": {
26795	//       "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.",
26796	//       "format": "uint64",
26797	//       "location": "path",
26798	//       "required": true,
26799	//       "type": "string"
26800	//     }
26801	//   },
26802	//   "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
26803	//   "response": {
26804	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
26805	//   },
26806	//   "scopes": [
26807	//     "https://www.googleapis.com/auth/content"
26808	//   ]
26809	// }
26810
26811}
26812
26813// method id "content.liasettings.setposdataprovider":
26814
26815type LiasettingsSetposdataproviderCall struct {
26816	s          *APIService
26817	merchantId uint64
26818	accountId  uint64
26819	urlParams_ gensupport.URLParams
26820	ctx_       context.Context
26821	header_    http.Header
26822}
26823
26824// Setposdataprovider: Sets the POS data provider for the specified
26825// country.
26826//
26827// - accountId: The ID of the account for which to retrieve accessible
26828//   Google My Business accounts.
26829// - country: The country for which the POS data provider is selected.
26830// - merchantId: The ID of the managing account. If this parameter is
26831//   not the same as accountId, then this account must be a multi-client
26832//   account and `accountId` must be the ID of a sub-account of this
26833//   account.
26834func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
26835	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26836	c.merchantId = merchantId
26837	c.accountId = accountId
26838	c.urlParams_.Set("country", country)
26839	return c
26840}
26841
26842// PosDataProviderId sets the optional parameter "posDataProviderId":
26843// The ID of POS data provider.
26844func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
26845	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
26846	return c
26847}
26848
26849// PosExternalAccountId sets the optional parameter
26850// "posExternalAccountId": The account ID by which this merchant is
26851// known to the POS data provider.
26852func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
26853	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
26854	return c
26855}
26856
26857// Fields allows partial responses to be retrieved. See
26858// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26859// for more information.
26860func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
26861	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26862	return c
26863}
26864
26865// Context sets the context to be used in this call's Do method. Any
26866// pending HTTP request will be aborted if the provided context is
26867// canceled.
26868func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
26869	c.ctx_ = ctx
26870	return c
26871}
26872
26873// Header returns an http.Header that can be modified by the caller to
26874// add HTTP headers to the request.
26875func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
26876	if c.header_ == nil {
26877		c.header_ = make(http.Header)
26878	}
26879	return c.header_
26880}
26881
26882func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
26883	reqHeaders := make(http.Header)
26884	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
26885	for k, v := range c.header_ {
26886		reqHeaders[k] = v
26887	}
26888	reqHeaders.Set("User-Agent", c.s.userAgent())
26889	var body io.Reader = nil
26890	c.urlParams_.Set("alt", alt)
26891	c.urlParams_.Set("prettyPrint", "false")
26892	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setposdataprovider")
26893	urls += "?" + c.urlParams_.Encode()
26894	req, err := http.NewRequest("POST", urls, body)
26895	if err != nil {
26896		return nil, err
26897	}
26898	req.Header = reqHeaders
26899	googleapi.Expand(req.URL, map[string]string{
26900		"merchantId": strconv.FormatUint(c.merchantId, 10),
26901		"accountId":  strconv.FormatUint(c.accountId, 10),
26902	})
26903	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26904}
26905
26906// Do executes the "content.liasettings.setposdataprovider" call.
26907// Exactly one of *LiasettingsSetPosDataProviderResponse or error will
26908// be non-nil. Any non-2xx status code is an error. Response headers are
26909// in either
26910// *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
26911// response was returned at all) in error.(*googleapi.Error).Header. Use
26912// googleapi.IsNotModified to check whether the returned error was
26913// because http.StatusNotModified was returned.
26914func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
26915	gensupport.SetOptions(c.urlParams_, opts...)
26916	res, err := c.doRequest("json")
26917	if res != nil && res.StatusCode == http.StatusNotModified {
26918		if res.Body != nil {
26919			res.Body.Close()
26920		}
26921		return nil, &googleapi.Error{
26922			Code:   res.StatusCode,
26923			Header: res.Header,
26924		}
26925	}
26926	if err != nil {
26927		return nil, err
26928	}
26929	defer googleapi.CloseBody(res)
26930	if err := googleapi.CheckResponse(res); err != nil {
26931		return nil, err
26932	}
26933	ret := &LiasettingsSetPosDataProviderResponse{
26934		ServerResponse: googleapi.ServerResponse{
26935			Header:         res.Header,
26936			HTTPStatusCode: res.StatusCode,
26937		},
26938	}
26939	target := &ret
26940	if err := gensupport.DecodeResponse(target, res); err != nil {
26941		return nil, err
26942	}
26943	return ret, nil
26944	// {
26945	//   "description": "Sets the POS data provider for the specified country.",
26946	//   "flatPath": "{merchantId}/liasettings/{accountId}/setposdataprovider",
26947	//   "httpMethod": "POST",
26948	//   "id": "content.liasettings.setposdataprovider",
26949	//   "parameterOrder": [
26950	//     "merchantId",
26951	//     "accountId",
26952	//     "country"
26953	//   ],
26954	//   "parameters": {
26955	//     "accountId": {
26956	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
26957	//       "format": "uint64",
26958	//       "location": "path",
26959	//       "required": true,
26960	//       "type": "string"
26961	//     },
26962	//     "country": {
26963	//       "description": "The country for which the POS data provider is selected.",
26964	//       "location": "query",
26965	//       "required": true,
26966	//       "type": "string"
26967	//     },
26968	//     "merchantId": {
26969	//       "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.",
26970	//       "format": "uint64",
26971	//       "location": "path",
26972	//       "required": true,
26973	//       "type": "string"
26974	//     },
26975	//     "posDataProviderId": {
26976	//       "description": "The ID of POS data provider.",
26977	//       "format": "uint64",
26978	//       "location": "query",
26979	//       "type": "string"
26980	//     },
26981	//     "posExternalAccountId": {
26982	//       "description": "The account ID by which this merchant is known to the POS data provider.",
26983	//       "location": "query",
26984	//       "type": "string"
26985	//     }
26986	//   },
26987	//   "path": "{merchantId}/liasettings/{accountId}/setposdataprovider",
26988	//   "response": {
26989	//     "$ref": "LiasettingsSetPosDataProviderResponse"
26990	//   },
26991	//   "scopes": [
26992	//     "https://www.googleapis.com/auth/content"
26993	//   ]
26994	// }
26995
26996}
26997
26998// method id "content.liasettings.update":
26999
27000type LiasettingsUpdateCall struct {
27001	s           *APIService
27002	merchantId  uint64
27003	accountId   uint64
27004	liasettings *LiaSettings
27005	urlParams_  gensupport.URLParams
27006	ctx_        context.Context
27007	header_     http.Header
27008}
27009
27010// Update: Updates the LIA settings of the account. Any fields that are
27011// not provided are deleted from the resource.
27012//
27013// - accountId: The ID of the account for which to get or update LIA
27014//   settings.
27015// - merchantId: The ID of the managing account. If this parameter is
27016//   not the same as accountId, then this account must be a multi-client
27017//   account and `accountId` must be the ID of a sub-account of this
27018//   account.
27019func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
27020	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27021	c.merchantId = merchantId
27022	c.accountId = accountId
27023	c.liasettings = liasettings
27024	return c
27025}
27026
27027// Fields allows partial responses to be retrieved. See
27028// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27029// for more information.
27030func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
27031	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27032	return c
27033}
27034
27035// Context sets the context to be used in this call's Do method. Any
27036// pending HTTP request will be aborted if the provided context is
27037// canceled.
27038func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
27039	c.ctx_ = ctx
27040	return c
27041}
27042
27043// Header returns an http.Header that can be modified by the caller to
27044// add HTTP headers to the request.
27045func (c *LiasettingsUpdateCall) Header() http.Header {
27046	if c.header_ == nil {
27047		c.header_ = make(http.Header)
27048	}
27049	return c.header_
27050}
27051
27052func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
27053	reqHeaders := make(http.Header)
27054	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27055	for k, v := range c.header_ {
27056		reqHeaders[k] = v
27057	}
27058	reqHeaders.Set("User-Agent", c.s.userAgent())
27059	var body io.Reader = nil
27060	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
27061	if err != nil {
27062		return nil, err
27063	}
27064	reqHeaders.Set("Content-Type", "application/json")
27065	c.urlParams_.Set("alt", alt)
27066	c.urlParams_.Set("prettyPrint", "false")
27067	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
27068	urls += "?" + c.urlParams_.Encode()
27069	req, err := http.NewRequest("PUT", urls, body)
27070	if err != nil {
27071		return nil, err
27072	}
27073	req.Header = reqHeaders
27074	googleapi.Expand(req.URL, map[string]string{
27075		"merchantId": strconv.FormatUint(c.merchantId, 10),
27076		"accountId":  strconv.FormatUint(c.accountId, 10),
27077	})
27078	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27079}
27080
27081// Do executes the "content.liasettings.update" call.
27082// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
27083// status code is an error. Response headers are in either
27084// *LiaSettings.ServerResponse.Header or (if a response was returned at
27085// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
27086// to check whether the returned error was because
27087// http.StatusNotModified was returned.
27088func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
27089	gensupport.SetOptions(c.urlParams_, opts...)
27090	res, err := c.doRequest("json")
27091	if res != nil && res.StatusCode == http.StatusNotModified {
27092		if res.Body != nil {
27093			res.Body.Close()
27094		}
27095		return nil, &googleapi.Error{
27096			Code:   res.StatusCode,
27097			Header: res.Header,
27098		}
27099	}
27100	if err != nil {
27101		return nil, err
27102	}
27103	defer googleapi.CloseBody(res)
27104	if err := googleapi.CheckResponse(res); err != nil {
27105		return nil, err
27106	}
27107	ret := &LiaSettings{
27108		ServerResponse: googleapi.ServerResponse{
27109			Header:         res.Header,
27110			HTTPStatusCode: res.StatusCode,
27111		},
27112	}
27113	target := &ret
27114	if err := gensupport.DecodeResponse(target, res); err != nil {
27115		return nil, err
27116	}
27117	return ret, nil
27118	// {
27119	//   "description": "Updates the LIA settings of the account. Any fields that are not provided are deleted from the resource.",
27120	//   "flatPath": "{merchantId}/liasettings/{accountId}",
27121	//   "httpMethod": "PUT",
27122	//   "id": "content.liasettings.update",
27123	//   "parameterOrder": [
27124	//     "merchantId",
27125	//     "accountId"
27126	//   ],
27127	//   "parameters": {
27128	//     "accountId": {
27129	//       "description": "The ID of the account for which to get or update LIA settings.",
27130	//       "format": "uint64",
27131	//       "location": "path",
27132	//       "required": true,
27133	//       "type": "string"
27134	//     },
27135	//     "merchantId": {
27136	//       "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.",
27137	//       "format": "uint64",
27138	//       "location": "path",
27139	//       "required": true,
27140	//       "type": "string"
27141	//     }
27142	//   },
27143	//   "path": "{merchantId}/liasettings/{accountId}",
27144	//   "request": {
27145	//     "$ref": "LiaSettings"
27146	//   },
27147	//   "response": {
27148	//     "$ref": "LiaSettings"
27149	//   },
27150	//   "scopes": [
27151	//     "https://www.googleapis.com/auth/content"
27152	//   ]
27153	// }
27154
27155}
27156
27157// method id "content.localinventory.custombatch":
27158
27159type LocalinventoryCustombatchCall struct {
27160	s                                *APIService
27161	localinventorycustombatchrequest *LocalinventoryCustomBatchRequest
27162	urlParams_                       gensupport.URLParams
27163	ctx_                             context.Context
27164	header_                          http.Header
27165}
27166
27167// Custombatch: Updates local inventory for multiple products or stores
27168// in a single request.
27169func (r *LocalinventoryService) Custombatch(localinventorycustombatchrequest *LocalinventoryCustomBatchRequest) *LocalinventoryCustombatchCall {
27170	c := &LocalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27171	c.localinventorycustombatchrequest = localinventorycustombatchrequest
27172	return c
27173}
27174
27175// Fields allows partial responses to be retrieved. See
27176// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27177// for more information.
27178func (c *LocalinventoryCustombatchCall) Fields(s ...googleapi.Field) *LocalinventoryCustombatchCall {
27179	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27180	return c
27181}
27182
27183// Context sets the context to be used in this call's Do method. Any
27184// pending HTTP request will be aborted if the provided context is
27185// canceled.
27186func (c *LocalinventoryCustombatchCall) Context(ctx context.Context) *LocalinventoryCustombatchCall {
27187	c.ctx_ = ctx
27188	return c
27189}
27190
27191// Header returns an http.Header that can be modified by the caller to
27192// add HTTP headers to the request.
27193func (c *LocalinventoryCustombatchCall) Header() http.Header {
27194	if c.header_ == nil {
27195		c.header_ = make(http.Header)
27196	}
27197	return c.header_
27198}
27199
27200func (c *LocalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
27201	reqHeaders := make(http.Header)
27202	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27203	for k, v := range c.header_ {
27204		reqHeaders[k] = v
27205	}
27206	reqHeaders.Set("User-Agent", c.s.userAgent())
27207	var body io.Reader = nil
27208	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventorycustombatchrequest)
27209	if err != nil {
27210		return nil, err
27211	}
27212	reqHeaders.Set("Content-Type", "application/json")
27213	c.urlParams_.Set("alt", alt)
27214	c.urlParams_.Set("prettyPrint", "false")
27215	urls := googleapi.ResolveRelative(c.s.BasePath, "localinventory/batch")
27216	urls += "?" + c.urlParams_.Encode()
27217	req, err := http.NewRequest("POST", urls, body)
27218	if err != nil {
27219		return nil, err
27220	}
27221	req.Header = reqHeaders
27222	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27223}
27224
27225// Do executes the "content.localinventory.custombatch" call.
27226// Exactly one of *LocalinventoryCustomBatchResponse or error will be
27227// non-nil. Any non-2xx status code is an error. Response headers are in
27228// either *LocalinventoryCustomBatchResponse.ServerResponse.Header or
27229// (if a response was returned at all) in
27230// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27231// whether the returned error was because http.StatusNotModified was
27232// returned.
27233func (c *LocalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*LocalinventoryCustomBatchResponse, error) {
27234	gensupport.SetOptions(c.urlParams_, opts...)
27235	res, err := c.doRequest("json")
27236	if res != nil && res.StatusCode == http.StatusNotModified {
27237		if res.Body != nil {
27238			res.Body.Close()
27239		}
27240		return nil, &googleapi.Error{
27241			Code:   res.StatusCode,
27242			Header: res.Header,
27243		}
27244	}
27245	if err != nil {
27246		return nil, err
27247	}
27248	defer googleapi.CloseBody(res)
27249	if err := googleapi.CheckResponse(res); err != nil {
27250		return nil, err
27251	}
27252	ret := &LocalinventoryCustomBatchResponse{
27253		ServerResponse: googleapi.ServerResponse{
27254			Header:         res.Header,
27255			HTTPStatusCode: res.StatusCode,
27256		},
27257	}
27258	target := &ret
27259	if err := gensupport.DecodeResponse(target, res); err != nil {
27260		return nil, err
27261	}
27262	return ret, nil
27263	// {
27264	//   "description": "Updates local inventory for multiple products or stores in a single request.",
27265	//   "flatPath": "localinventory/batch",
27266	//   "httpMethod": "POST",
27267	//   "id": "content.localinventory.custombatch",
27268	//   "parameterOrder": [],
27269	//   "parameters": {},
27270	//   "path": "localinventory/batch",
27271	//   "request": {
27272	//     "$ref": "LocalinventoryCustomBatchRequest"
27273	//   },
27274	//   "response": {
27275	//     "$ref": "LocalinventoryCustomBatchResponse"
27276	//   },
27277	//   "scopes": [
27278	//     "https://www.googleapis.com/auth/content"
27279	//   ]
27280	// }
27281
27282}
27283
27284// method id "content.localinventory.insert":
27285
27286type LocalinventoryInsertCall struct {
27287	s              *APIService
27288	merchantId     uint64
27289	productId      string
27290	localinventory *LocalInventory
27291	urlParams_     gensupport.URLParams
27292	ctx_           context.Context
27293	header_        http.Header
27294}
27295
27296// Insert: Updates the local inventory of a product in your Merchant
27297// Center account.
27298//
27299// - merchantId: The ID of the account that contains the product. This
27300//   account cannot be a multi-client account.
27301// - productId: The REST ID of the product for which to update local
27302//   inventory.
27303func (r *LocalinventoryService) Insert(merchantId uint64, productId string, localinventory *LocalInventory) *LocalinventoryInsertCall {
27304	c := &LocalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27305	c.merchantId = merchantId
27306	c.productId = productId
27307	c.localinventory = localinventory
27308	return c
27309}
27310
27311// Fields allows partial responses to be retrieved. See
27312// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27313// for more information.
27314func (c *LocalinventoryInsertCall) Fields(s ...googleapi.Field) *LocalinventoryInsertCall {
27315	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27316	return c
27317}
27318
27319// Context sets the context to be used in this call's Do method. Any
27320// pending HTTP request will be aborted if the provided context is
27321// canceled.
27322func (c *LocalinventoryInsertCall) Context(ctx context.Context) *LocalinventoryInsertCall {
27323	c.ctx_ = ctx
27324	return c
27325}
27326
27327// Header returns an http.Header that can be modified by the caller to
27328// add HTTP headers to the request.
27329func (c *LocalinventoryInsertCall) Header() http.Header {
27330	if c.header_ == nil {
27331		c.header_ = make(http.Header)
27332	}
27333	return c.header_
27334}
27335
27336func (c *LocalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
27337	reqHeaders := make(http.Header)
27338	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27339	for k, v := range c.header_ {
27340		reqHeaders[k] = v
27341	}
27342	reqHeaders.Set("User-Agent", c.s.userAgent())
27343	var body io.Reader = nil
27344	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventory)
27345	if err != nil {
27346		return nil, err
27347	}
27348	reqHeaders.Set("Content-Type", "application/json")
27349	c.urlParams_.Set("alt", alt)
27350	c.urlParams_.Set("prettyPrint", "false")
27351	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/localinventory")
27352	urls += "?" + c.urlParams_.Encode()
27353	req, err := http.NewRequest("POST", urls, body)
27354	if err != nil {
27355		return nil, err
27356	}
27357	req.Header = reqHeaders
27358	googleapi.Expand(req.URL, map[string]string{
27359		"merchantId": strconv.FormatUint(c.merchantId, 10),
27360		"productId":  c.productId,
27361	})
27362	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27363}
27364
27365// Do executes the "content.localinventory.insert" call.
27366// Exactly one of *LocalInventory or error will be non-nil. Any non-2xx
27367// status code is an error. Response headers are in either
27368// *LocalInventory.ServerResponse.Header or (if a response was returned
27369// at all) in error.(*googleapi.Error).Header. Use
27370// googleapi.IsNotModified to check whether the returned error was
27371// because http.StatusNotModified was returned.
27372func (c *LocalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*LocalInventory, error) {
27373	gensupport.SetOptions(c.urlParams_, opts...)
27374	res, err := c.doRequest("json")
27375	if res != nil && res.StatusCode == http.StatusNotModified {
27376		if res.Body != nil {
27377			res.Body.Close()
27378		}
27379		return nil, &googleapi.Error{
27380			Code:   res.StatusCode,
27381			Header: res.Header,
27382		}
27383	}
27384	if err != nil {
27385		return nil, err
27386	}
27387	defer googleapi.CloseBody(res)
27388	if err := googleapi.CheckResponse(res); err != nil {
27389		return nil, err
27390	}
27391	ret := &LocalInventory{
27392		ServerResponse: googleapi.ServerResponse{
27393			Header:         res.Header,
27394			HTTPStatusCode: res.StatusCode,
27395		},
27396	}
27397	target := &ret
27398	if err := gensupport.DecodeResponse(target, res); err != nil {
27399		return nil, err
27400	}
27401	return ret, nil
27402	// {
27403	//   "description": "Updates the local inventory of a product in your Merchant Center account.",
27404	//   "flatPath": "{merchantId}/products/{productId}/localinventory",
27405	//   "httpMethod": "POST",
27406	//   "id": "content.localinventory.insert",
27407	//   "parameterOrder": [
27408	//     "merchantId",
27409	//     "productId"
27410	//   ],
27411	//   "parameters": {
27412	//     "merchantId": {
27413	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
27414	//       "format": "uint64",
27415	//       "location": "path",
27416	//       "required": true,
27417	//       "type": "string"
27418	//     },
27419	//     "productId": {
27420	//       "description": "The REST ID of the product for which to update local inventory.",
27421	//       "location": "path",
27422	//       "required": true,
27423	//       "type": "string"
27424	//     }
27425	//   },
27426	//   "path": "{merchantId}/products/{productId}/localinventory",
27427	//   "request": {
27428	//     "$ref": "LocalInventory"
27429	//   },
27430	//   "response": {
27431	//     "$ref": "LocalInventory"
27432	//   },
27433	//   "scopes": [
27434	//     "https://www.googleapis.com/auth/content"
27435	//   ]
27436	// }
27437
27438}
27439
27440// method id "content.orderinvoices.createchargeinvoice":
27441
27442type OrderinvoicesCreatechargeinvoiceCall struct {
27443	s                                       *APIService
27444	merchantId                              uint64
27445	orderId                                 string
27446	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
27447	urlParams_                              gensupport.URLParams
27448	ctx_                                    context.Context
27449	header_                                 http.Header
27450}
27451
27452// Createchargeinvoice: Creates a charge invoice for a shipment group,
27453// and triggers a charge capture for orderinvoice enabled orders.
27454//
27455// - merchantId: The ID of the account that manages the order. This
27456//   cannot be a multi-client account.
27457// - orderId: The ID of the order.
27458func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
27459	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27460	c.merchantId = merchantId
27461	c.orderId = orderId
27462	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
27463	return c
27464}
27465
27466// Fields allows partial responses to be retrieved. See
27467// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27468// for more information.
27469func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
27470	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27471	return c
27472}
27473
27474// Context sets the context to be used in this call's Do method. Any
27475// pending HTTP request will be aborted if the provided context is
27476// canceled.
27477func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
27478	c.ctx_ = ctx
27479	return c
27480}
27481
27482// Header returns an http.Header that can be modified by the caller to
27483// add HTTP headers to the request.
27484func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
27485	if c.header_ == nil {
27486		c.header_ = make(http.Header)
27487	}
27488	return c.header_
27489}
27490
27491func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
27492	reqHeaders := make(http.Header)
27493	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27494	for k, v := range c.header_ {
27495		reqHeaders[k] = v
27496	}
27497	reqHeaders.Set("User-Agent", c.s.userAgent())
27498	var body io.Reader = nil
27499	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
27500	if err != nil {
27501		return nil, err
27502	}
27503	reqHeaders.Set("Content-Type", "application/json")
27504	c.urlParams_.Set("alt", alt)
27505	c.urlParams_.Set("prettyPrint", "false")
27506	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
27507	urls += "?" + c.urlParams_.Encode()
27508	req, err := http.NewRequest("POST", urls, body)
27509	if err != nil {
27510		return nil, err
27511	}
27512	req.Header = reqHeaders
27513	googleapi.Expand(req.URL, map[string]string{
27514		"merchantId": strconv.FormatUint(c.merchantId, 10),
27515		"orderId":    c.orderId,
27516	})
27517	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27518}
27519
27520// Do executes the "content.orderinvoices.createchargeinvoice" call.
27521// Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
27522// will be non-nil. Any non-2xx status code is an error. Response
27523// headers are in either
27524// *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
27525// (if a response was returned at all) in
27526// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27527// whether the returned error was because http.StatusNotModified was
27528// returned.
27529func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
27530	gensupport.SetOptions(c.urlParams_, opts...)
27531	res, err := c.doRequest("json")
27532	if res != nil && res.StatusCode == http.StatusNotModified {
27533		if res.Body != nil {
27534			res.Body.Close()
27535		}
27536		return nil, &googleapi.Error{
27537			Code:   res.StatusCode,
27538			Header: res.Header,
27539		}
27540	}
27541	if err != nil {
27542		return nil, err
27543	}
27544	defer googleapi.CloseBody(res)
27545	if err := googleapi.CheckResponse(res); err != nil {
27546		return nil, err
27547	}
27548	ret := &OrderinvoicesCreateChargeInvoiceResponse{
27549		ServerResponse: googleapi.ServerResponse{
27550			Header:         res.Header,
27551			HTTPStatusCode: res.StatusCode,
27552		},
27553	}
27554	target := &ret
27555	if err := gensupport.DecodeResponse(target, res); err != nil {
27556		return nil, err
27557	}
27558	return ret, nil
27559	// {
27560	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
27561	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
27562	//   "httpMethod": "POST",
27563	//   "id": "content.orderinvoices.createchargeinvoice",
27564	//   "parameterOrder": [
27565	//     "merchantId",
27566	//     "orderId"
27567	//   ],
27568	//   "parameters": {
27569	//     "merchantId": {
27570	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27571	//       "format": "uint64",
27572	//       "location": "path",
27573	//       "required": true,
27574	//       "type": "string"
27575	//     },
27576	//     "orderId": {
27577	//       "description": "The ID of the order.",
27578	//       "location": "path",
27579	//       "required": true,
27580	//       "type": "string"
27581	//     }
27582	//   },
27583	//   "path": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
27584	//   "request": {
27585	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
27586	//   },
27587	//   "response": {
27588	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
27589	//   },
27590	//   "scopes": [
27591	//     "https://www.googleapis.com/auth/content"
27592	//   ]
27593	// }
27594
27595}
27596
27597// method id "content.orderinvoices.createrefundinvoice":
27598
27599type OrderinvoicesCreaterefundinvoiceCall struct {
27600	s                                       *APIService
27601	merchantId                              uint64
27602	orderId                                 string
27603	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
27604	urlParams_                              gensupport.URLParams
27605	ctx_                                    context.Context
27606	header_                                 http.Header
27607}
27608
27609// Createrefundinvoice: Creates a refund invoice for one or more
27610// shipment groups, and triggers a refund for orderinvoice enabled
27611// orders. This can only be used for line items that have previously
27612// been charged using `createChargeInvoice`. All amounts (except for the
27613// summary) are incremental with respect to the previous invoice.
27614//
27615// - merchantId: The ID of the account that manages the order. This
27616//   cannot be a multi-client account.
27617// - orderId: The ID of the order.
27618func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
27619	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27620	c.merchantId = merchantId
27621	c.orderId = orderId
27622	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
27623	return c
27624}
27625
27626// Fields allows partial responses to be retrieved. See
27627// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27628// for more information.
27629func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
27630	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27631	return c
27632}
27633
27634// Context sets the context to be used in this call's Do method. Any
27635// pending HTTP request will be aborted if the provided context is
27636// canceled.
27637func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
27638	c.ctx_ = ctx
27639	return c
27640}
27641
27642// Header returns an http.Header that can be modified by the caller to
27643// add HTTP headers to the request.
27644func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
27645	if c.header_ == nil {
27646		c.header_ = make(http.Header)
27647	}
27648	return c.header_
27649}
27650
27651func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
27652	reqHeaders := make(http.Header)
27653	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27654	for k, v := range c.header_ {
27655		reqHeaders[k] = v
27656	}
27657	reqHeaders.Set("User-Agent", c.s.userAgent())
27658	var body io.Reader = nil
27659	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
27660	if err != nil {
27661		return nil, err
27662	}
27663	reqHeaders.Set("Content-Type", "application/json")
27664	c.urlParams_.Set("alt", alt)
27665	c.urlParams_.Set("prettyPrint", "false")
27666	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
27667	urls += "?" + c.urlParams_.Encode()
27668	req, err := http.NewRequest("POST", urls, body)
27669	if err != nil {
27670		return nil, err
27671	}
27672	req.Header = reqHeaders
27673	googleapi.Expand(req.URL, map[string]string{
27674		"merchantId": strconv.FormatUint(c.merchantId, 10),
27675		"orderId":    c.orderId,
27676	})
27677	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27678}
27679
27680// Do executes the "content.orderinvoices.createrefundinvoice" call.
27681// Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
27682// will be non-nil. Any non-2xx status code is an error. Response
27683// headers are in either
27684// *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
27685// (if a response was returned at all) in
27686// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27687// whether the returned error was because http.StatusNotModified was
27688// returned.
27689func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
27690	gensupport.SetOptions(c.urlParams_, opts...)
27691	res, err := c.doRequest("json")
27692	if res != nil && res.StatusCode == http.StatusNotModified {
27693		if res.Body != nil {
27694			res.Body.Close()
27695		}
27696		return nil, &googleapi.Error{
27697			Code:   res.StatusCode,
27698			Header: res.Header,
27699		}
27700	}
27701	if err != nil {
27702		return nil, err
27703	}
27704	defer googleapi.CloseBody(res)
27705	if err := googleapi.CheckResponse(res); err != nil {
27706		return nil, err
27707	}
27708	ret := &OrderinvoicesCreateRefundInvoiceResponse{
27709		ServerResponse: googleapi.ServerResponse{
27710			Header:         res.Header,
27711			HTTPStatusCode: res.StatusCode,
27712		},
27713	}
27714	target := &ret
27715	if err := gensupport.DecodeResponse(target, res); err != nil {
27716		return nil, err
27717	}
27718	return ret, nil
27719	// {
27720	//   "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.",
27721	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
27722	//   "httpMethod": "POST",
27723	//   "id": "content.orderinvoices.createrefundinvoice",
27724	//   "parameterOrder": [
27725	//     "merchantId",
27726	//     "orderId"
27727	//   ],
27728	//   "parameters": {
27729	//     "merchantId": {
27730	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27731	//       "format": "uint64",
27732	//       "location": "path",
27733	//       "required": true,
27734	//       "type": "string"
27735	//     },
27736	//     "orderId": {
27737	//       "description": "The ID of the order.",
27738	//       "location": "path",
27739	//       "required": true,
27740	//       "type": "string"
27741	//     }
27742	//   },
27743	//   "path": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
27744	//   "request": {
27745	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
27746	//   },
27747	//   "response": {
27748	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
27749	//   },
27750	//   "scopes": [
27751	//     "https://www.googleapis.com/auth/content"
27752	//   ]
27753	// }
27754
27755}
27756
27757// method id "content.orderreports.listdisbursements":
27758
27759type OrderreportsListdisbursementsCall struct {
27760	s            *APIService
27761	merchantId   uint64
27762	urlParams_   gensupport.URLParams
27763	ifNoneMatch_ string
27764	ctx_         context.Context
27765	header_      http.Header
27766}
27767
27768// Listdisbursements: Retrieves a report for disbursements from your
27769// Merchant Center account.
27770//
27771// - merchantId: The ID of the account that manages the order. This
27772//   cannot be a multi-client account.
27773func (r *OrderreportsService) Listdisbursements(merchantId uint64) *OrderreportsListdisbursementsCall {
27774	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27775	c.merchantId = merchantId
27776	return c
27777}
27778
27779// DisbursementEndDate sets the optional parameter
27780// "disbursementEndDate": The last date which disbursements occurred. In
27781// ISO 8601 format. Default: current date.
27782func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
27783	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
27784	return c
27785}
27786
27787// DisbursementStartDate sets the optional parameter
27788// "disbursementStartDate": The first date which disbursements occurred.
27789// In ISO 8601 format.
27790func (c *OrderreportsListdisbursementsCall) DisbursementStartDate(disbursementStartDate string) *OrderreportsListdisbursementsCall {
27791	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
27792	return c
27793}
27794
27795// MaxResults sets the optional parameter "maxResults": The maximum
27796// number of disbursements to return in the response, used for paging.
27797func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
27798	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
27799	return c
27800}
27801
27802// PageToken sets the optional parameter "pageToken": The token returned
27803// by the previous request.
27804func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
27805	c.urlParams_.Set("pageToken", pageToken)
27806	return c
27807}
27808
27809// Fields allows partial responses to be retrieved. See
27810// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27811// for more information.
27812func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
27813	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27814	return c
27815}
27816
27817// IfNoneMatch sets the optional parameter which makes the operation
27818// fail if the object's ETag matches the given value. This is useful for
27819// getting updates only after the object has changed since the last
27820// request. Use googleapi.IsNotModified to check whether the response
27821// error from Do is the result of In-None-Match.
27822func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
27823	c.ifNoneMatch_ = entityTag
27824	return c
27825}
27826
27827// Context sets the context to be used in this call's Do method. Any
27828// pending HTTP request will be aborted if the provided context is
27829// canceled.
27830func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
27831	c.ctx_ = ctx
27832	return c
27833}
27834
27835// Header returns an http.Header that can be modified by the caller to
27836// add HTTP headers to the request.
27837func (c *OrderreportsListdisbursementsCall) Header() http.Header {
27838	if c.header_ == nil {
27839		c.header_ = make(http.Header)
27840	}
27841	return c.header_
27842}
27843
27844func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
27845	reqHeaders := make(http.Header)
27846	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
27847	for k, v := range c.header_ {
27848		reqHeaders[k] = v
27849	}
27850	reqHeaders.Set("User-Agent", c.s.userAgent())
27851	if c.ifNoneMatch_ != "" {
27852		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27853	}
27854	var body io.Reader = nil
27855	c.urlParams_.Set("alt", alt)
27856	c.urlParams_.Set("prettyPrint", "false")
27857	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements")
27858	urls += "?" + c.urlParams_.Encode()
27859	req, err := http.NewRequest("GET", urls, body)
27860	if err != nil {
27861		return nil, err
27862	}
27863	req.Header = reqHeaders
27864	googleapi.Expand(req.URL, map[string]string{
27865		"merchantId": strconv.FormatUint(c.merchantId, 10),
27866	})
27867	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27868}
27869
27870// Do executes the "content.orderreports.listdisbursements" call.
27871// Exactly one of *OrderreportsListDisbursementsResponse or error will
27872// be non-nil. Any non-2xx status code is an error. Response headers are
27873// in either
27874// *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
27875// response was returned at all) in error.(*googleapi.Error).Header. Use
27876// googleapi.IsNotModified to check whether the returned error was
27877// because http.StatusNotModified was returned.
27878func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
27879	gensupport.SetOptions(c.urlParams_, opts...)
27880	res, err := c.doRequest("json")
27881	if res != nil && res.StatusCode == http.StatusNotModified {
27882		if res.Body != nil {
27883			res.Body.Close()
27884		}
27885		return nil, &googleapi.Error{
27886			Code:   res.StatusCode,
27887			Header: res.Header,
27888		}
27889	}
27890	if err != nil {
27891		return nil, err
27892	}
27893	defer googleapi.CloseBody(res)
27894	if err := googleapi.CheckResponse(res); err != nil {
27895		return nil, err
27896	}
27897	ret := &OrderreportsListDisbursementsResponse{
27898		ServerResponse: googleapi.ServerResponse{
27899			Header:         res.Header,
27900			HTTPStatusCode: res.StatusCode,
27901		},
27902	}
27903	target := &ret
27904	if err := gensupport.DecodeResponse(target, res); err != nil {
27905		return nil, err
27906	}
27907	return ret, nil
27908	// {
27909	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
27910	//   "flatPath": "{merchantId}/orderreports/disbursements",
27911	//   "httpMethod": "GET",
27912	//   "id": "content.orderreports.listdisbursements",
27913	//   "parameterOrder": [
27914	//     "merchantId"
27915	//   ],
27916	//   "parameters": {
27917	//     "disbursementEndDate": {
27918	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
27919	//       "location": "query",
27920	//       "type": "string"
27921	//     },
27922	//     "disbursementStartDate": {
27923	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
27924	//       "location": "query",
27925	//       "type": "string"
27926	//     },
27927	//     "maxResults": {
27928	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
27929	//       "format": "uint32",
27930	//       "location": "query",
27931	//       "type": "integer"
27932	//     },
27933	//     "merchantId": {
27934	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27935	//       "format": "uint64",
27936	//       "location": "path",
27937	//       "required": true,
27938	//       "type": "string"
27939	//     },
27940	//     "pageToken": {
27941	//       "description": "The token returned by the previous request.",
27942	//       "location": "query",
27943	//       "type": "string"
27944	//     }
27945	//   },
27946	//   "path": "{merchantId}/orderreports/disbursements",
27947	//   "response": {
27948	//     "$ref": "OrderreportsListDisbursementsResponse"
27949	//   },
27950	//   "scopes": [
27951	//     "https://www.googleapis.com/auth/content"
27952	//   ]
27953	// }
27954
27955}
27956
27957// Pages invokes f for each page of results.
27958// A non-nil error returned from f will halt the iteration.
27959// The provided context supersedes any context provided to the Context method.
27960func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
27961	c.ctx_ = ctx
27962	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
27963	for {
27964		x, err := c.Do()
27965		if err != nil {
27966			return err
27967		}
27968		if err := f(x); err != nil {
27969			return err
27970		}
27971		if x.NextPageToken == "" {
27972			return nil
27973		}
27974		c.PageToken(x.NextPageToken)
27975	}
27976}
27977
27978// method id "content.orderreports.listtransactions":
27979
27980type OrderreportsListtransactionsCall struct {
27981	s              *APIService
27982	merchantId     uint64
27983	disbursementId string
27984	urlParams_     gensupport.URLParams
27985	ifNoneMatch_   string
27986	ctx_           context.Context
27987	header_        http.Header
27988}
27989
27990// Listtransactions: Retrieves a list of transactions for a disbursement
27991// from your Merchant Center account.
27992//
27993// - disbursementId: The Google-provided ID of the disbursement (found
27994//   in Wallet).
27995// - merchantId: The ID of the account that manages the order. This
27996//   cannot be a multi-client account.
27997func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string) *OrderreportsListtransactionsCall {
27998	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27999	c.merchantId = merchantId
28000	c.disbursementId = disbursementId
28001	return c
28002}
28003
28004// MaxResults sets the optional parameter "maxResults": The maximum
28005// number of disbursements to return in the response, used for paging.
28006func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
28007	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28008	return c
28009}
28010
28011// PageToken sets the optional parameter "pageToken": The token returned
28012// by the previous request.
28013func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
28014	c.urlParams_.Set("pageToken", pageToken)
28015	return c
28016}
28017
28018// TransactionEndDate sets the optional parameter "transactionEndDate":
28019// The last date in which transaction occurred. In ISO 8601 format.
28020// Default: current date.
28021func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
28022	c.urlParams_.Set("transactionEndDate", transactionEndDate)
28023	return c
28024}
28025
28026// TransactionStartDate sets the optional parameter
28027// "transactionStartDate": The first date in which transaction occurred.
28028// In ISO 8601 format.
28029func (c *OrderreportsListtransactionsCall) TransactionStartDate(transactionStartDate string) *OrderreportsListtransactionsCall {
28030	c.urlParams_.Set("transactionStartDate", transactionStartDate)
28031	return c
28032}
28033
28034// Fields allows partial responses to be retrieved. See
28035// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28036// for more information.
28037func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
28038	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28039	return c
28040}
28041
28042// IfNoneMatch sets the optional parameter which makes the operation
28043// fail if the object's ETag matches the given value. This is useful for
28044// getting updates only after the object has changed since the last
28045// request. Use googleapi.IsNotModified to check whether the response
28046// error from Do is the result of In-None-Match.
28047func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
28048	c.ifNoneMatch_ = entityTag
28049	return c
28050}
28051
28052// Context sets the context to be used in this call's Do method. Any
28053// pending HTTP request will be aborted if the provided context is
28054// canceled.
28055func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
28056	c.ctx_ = ctx
28057	return c
28058}
28059
28060// Header returns an http.Header that can be modified by the caller to
28061// add HTTP headers to the request.
28062func (c *OrderreportsListtransactionsCall) Header() http.Header {
28063	if c.header_ == nil {
28064		c.header_ = make(http.Header)
28065	}
28066	return c.header_
28067}
28068
28069func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
28070	reqHeaders := make(http.Header)
28071	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28072	for k, v := range c.header_ {
28073		reqHeaders[k] = v
28074	}
28075	reqHeaders.Set("User-Agent", c.s.userAgent())
28076	if c.ifNoneMatch_ != "" {
28077		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28078	}
28079	var body io.Reader = nil
28080	c.urlParams_.Set("alt", alt)
28081	c.urlParams_.Set("prettyPrint", "false")
28082	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
28083	urls += "?" + c.urlParams_.Encode()
28084	req, err := http.NewRequest("GET", urls, body)
28085	if err != nil {
28086		return nil, err
28087	}
28088	req.Header = reqHeaders
28089	googleapi.Expand(req.URL, map[string]string{
28090		"merchantId":     strconv.FormatUint(c.merchantId, 10),
28091		"disbursementId": c.disbursementId,
28092	})
28093	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28094}
28095
28096// Do executes the "content.orderreports.listtransactions" call.
28097// Exactly one of *OrderreportsListTransactionsResponse or error will be
28098// non-nil. Any non-2xx status code is an error. Response headers are in
28099// either *OrderreportsListTransactionsResponse.ServerResponse.Header or
28100// (if a response was returned at all) in
28101// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28102// whether the returned error was because http.StatusNotModified was
28103// returned.
28104func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
28105	gensupport.SetOptions(c.urlParams_, opts...)
28106	res, err := c.doRequest("json")
28107	if res != nil && res.StatusCode == http.StatusNotModified {
28108		if res.Body != nil {
28109			res.Body.Close()
28110		}
28111		return nil, &googleapi.Error{
28112			Code:   res.StatusCode,
28113			Header: res.Header,
28114		}
28115	}
28116	if err != nil {
28117		return nil, err
28118	}
28119	defer googleapi.CloseBody(res)
28120	if err := googleapi.CheckResponse(res); err != nil {
28121		return nil, err
28122	}
28123	ret := &OrderreportsListTransactionsResponse{
28124		ServerResponse: googleapi.ServerResponse{
28125			Header:         res.Header,
28126			HTTPStatusCode: res.StatusCode,
28127		},
28128	}
28129	target := &ret
28130	if err := gensupport.DecodeResponse(target, res); err != nil {
28131		return nil, err
28132	}
28133	return ret, nil
28134	// {
28135	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
28136	//   "flatPath": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
28137	//   "httpMethod": "GET",
28138	//   "id": "content.orderreports.listtransactions",
28139	//   "parameterOrder": [
28140	//     "merchantId",
28141	//     "disbursementId"
28142	//   ],
28143	//   "parameters": {
28144	//     "disbursementId": {
28145	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
28146	//       "location": "path",
28147	//       "required": true,
28148	//       "type": "string"
28149	//     },
28150	//     "maxResults": {
28151	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
28152	//       "format": "uint32",
28153	//       "location": "query",
28154	//       "type": "integer"
28155	//     },
28156	//     "merchantId": {
28157	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28158	//       "format": "uint64",
28159	//       "location": "path",
28160	//       "required": true,
28161	//       "type": "string"
28162	//     },
28163	//     "pageToken": {
28164	//       "description": "The token returned by the previous request.",
28165	//       "location": "query",
28166	//       "type": "string"
28167	//     },
28168	//     "transactionEndDate": {
28169	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
28170	//       "location": "query",
28171	//       "type": "string"
28172	//     },
28173	//     "transactionStartDate": {
28174	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
28175	//       "location": "query",
28176	//       "type": "string"
28177	//     }
28178	//   },
28179	//   "path": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
28180	//   "response": {
28181	//     "$ref": "OrderreportsListTransactionsResponse"
28182	//   },
28183	//   "scopes": [
28184	//     "https://www.googleapis.com/auth/content"
28185	//   ]
28186	// }
28187
28188}
28189
28190// Pages invokes f for each page of results.
28191// A non-nil error returned from f will halt the iteration.
28192// The provided context supersedes any context provided to the Context method.
28193func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
28194	c.ctx_ = ctx
28195	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
28196	for {
28197		x, err := c.Do()
28198		if err != nil {
28199			return err
28200		}
28201		if err := f(x); err != nil {
28202			return err
28203		}
28204		if x.NextPageToken == "" {
28205			return nil
28206		}
28207		c.PageToken(x.NextPageToken)
28208	}
28209}
28210
28211// method id "content.orderreturns.acknowledge":
28212
28213type OrderreturnsAcknowledgeCall struct {
28214	s                              *APIService
28215	merchantId                     uint64
28216	returnId                       string
28217	orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest
28218	urlParams_                     gensupport.URLParams
28219	ctx_                           context.Context
28220	header_                        http.Header
28221}
28222
28223// Acknowledge: Acks an order return in your Merchant Center account.
28224//
28225// - merchantId: The ID of the account that manages the order. This
28226//   cannot be a multi-client account.
28227// - returnId: The ID of the return.
28228func (r *OrderreturnsService) Acknowledge(merchantId uint64, returnId string, orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest) *OrderreturnsAcknowledgeCall {
28229	c := &OrderreturnsAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28230	c.merchantId = merchantId
28231	c.returnId = returnId
28232	c.orderreturnsacknowledgerequest = orderreturnsacknowledgerequest
28233	return c
28234}
28235
28236// Fields allows partial responses to be retrieved. See
28237// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28238// for more information.
28239func (c *OrderreturnsAcknowledgeCall) Fields(s ...googleapi.Field) *OrderreturnsAcknowledgeCall {
28240	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28241	return c
28242}
28243
28244// Context sets the context to be used in this call's Do method. Any
28245// pending HTTP request will be aborted if the provided context is
28246// canceled.
28247func (c *OrderreturnsAcknowledgeCall) Context(ctx context.Context) *OrderreturnsAcknowledgeCall {
28248	c.ctx_ = ctx
28249	return c
28250}
28251
28252// Header returns an http.Header that can be modified by the caller to
28253// add HTTP headers to the request.
28254func (c *OrderreturnsAcknowledgeCall) Header() http.Header {
28255	if c.header_ == nil {
28256		c.header_ = make(http.Header)
28257	}
28258	return c.header_
28259}
28260
28261func (c *OrderreturnsAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
28262	reqHeaders := make(http.Header)
28263	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28264	for k, v := range c.header_ {
28265		reqHeaders[k] = v
28266	}
28267	reqHeaders.Set("User-Agent", c.s.userAgent())
28268	var body io.Reader = nil
28269	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsacknowledgerequest)
28270	if err != nil {
28271		return nil, err
28272	}
28273	reqHeaders.Set("Content-Type", "application/json")
28274	c.urlParams_.Set("alt", alt)
28275	c.urlParams_.Set("prettyPrint", "false")
28276	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/acknowledge")
28277	urls += "?" + c.urlParams_.Encode()
28278	req, err := http.NewRequest("POST", urls, body)
28279	if err != nil {
28280		return nil, err
28281	}
28282	req.Header = reqHeaders
28283	googleapi.Expand(req.URL, map[string]string{
28284		"merchantId": strconv.FormatUint(c.merchantId, 10),
28285		"returnId":   c.returnId,
28286	})
28287	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28288}
28289
28290// Do executes the "content.orderreturns.acknowledge" call.
28291// Exactly one of *OrderreturnsAcknowledgeResponse or error will be
28292// non-nil. Any non-2xx status code is an error. Response headers are in
28293// either *OrderreturnsAcknowledgeResponse.ServerResponse.Header or (if
28294// a response was returned at all) in error.(*googleapi.Error).Header.
28295// Use googleapi.IsNotModified to check whether the returned error was
28296// because http.StatusNotModified was returned.
28297func (c *OrderreturnsAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrderreturnsAcknowledgeResponse, error) {
28298	gensupport.SetOptions(c.urlParams_, opts...)
28299	res, err := c.doRequest("json")
28300	if res != nil && res.StatusCode == http.StatusNotModified {
28301		if res.Body != nil {
28302			res.Body.Close()
28303		}
28304		return nil, &googleapi.Error{
28305			Code:   res.StatusCode,
28306			Header: res.Header,
28307		}
28308	}
28309	if err != nil {
28310		return nil, err
28311	}
28312	defer googleapi.CloseBody(res)
28313	if err := googleapi.CheckResponse(res); err != nil {
28314		return nil, err
28315	}
28316	ret := &OrderreturnsAcknowledgeResponse{
28317		ServerResponse: googleapi.ServerResponse{
28318			Header:         res.Header,
28319			HTTPStatusCode: res.StatusCode,
28320		},
28321	}
28322	target := &ret
28323	if err := gensupport.DecodeResponse(target, res); err != nil {
28324		return nil, err
28325	}
28326	return ret, nil
28327	// {
28328	//   "description": "Acks an order return in your Merchant Center account.",
28329	//   "flatPath": "{merchantId}/orderreturns/{returnId}/acknowledge",
28330	//   "httpMethod": "POST",
28331	//   "id": "content.orderreturns.acknowledge",
28332	//   "parameterOrder": [
28333	//     "merchantId",
28334	//     "returnId"
28335	//   ],
28336	//   "parameters": {
28337	//     "merchantId": {
28338	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28339	//       "format": "uint64",
28340	//       "location": "path",
28341	//       "required": true,
28342	//       "type": "string"
28343	//     },
28344	//     "returnId": {
28345	//       "description": "The ID of the return.",
28346	//       "location": "path",
28347	//       "required": true,
28348	//       "type": "string"
28349	//     }
28350	//   },
28351	//   "path": "{merchantId}/orderreturns/{returnId}/acknowledge",
28352	//   "request": {
28353	//     "$ref": "OrderreturnsAcknowledgeRequest"
28354	//   },
28355	//   "response": {
28356	//     "$ref": "OrderreturnsAcknowledgeResponse"
28357	//   },
28358	//   "scopes": [
28359	//     "https://www.googleapis.com/auth/content"
28360	//   ]
28361	// }
28362
28363}
28364
28365// method id "content.orderreturns.createorderreturn":
28366
28367type OrderreturnsCreateorderreturnCall struct {
28368	s                                    *APIService
28369	merchantId                           uint64
28370	orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest
28371	urlParams_                           gensupport.URLParams
28372	ctx_                                 context.Context
28373	header_                              http.Header
28374}
28375
28376// Createorderreturn: Create return in your Merchant Center account.
28377//
28378// - merchantId: The ID of the account that manages the order. This
28379//   cannot be a multi-client account.
28380func (r *OrderreturnsService) Createorderreturn(merchantId uint64, orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest) *OrderreturnsCreateorderreturnCall {
28381	c := &OrderreturnsCreateorderreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28382	c.merchantId = merchantId
28383	c.orderreturnscreateorderreturnrequest = orderreturnscreateorderreturnrequest
28384	return c
28385}
28386
28387// Fields allows partial responses to be retrieved. See
28388// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28389// for more information.
28390func (c *OrderreturnsCreateorderreturnCall) Fields(s ...googleapi.Field) *OrderreturnsCreateorderreturnCall {
28391	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28392	return c
28393}
28394
28395// Context sets the context to be used in this call's Do method. Any
28396// pending HTTP request will be aborted if the provided context is
28397// canceled.
28398func (c *OrderreturnsCreateorderreturnCall) Context(ctx context.Context) *OrderreturnsCreateorderreturnCall {
28399	c.ctx_ = ctx
28400	return c
28401}
28402
28403// Header returns an http.Header that can be modified by the caller to
28404// add HTTP headers to the request.
28405func (c *OrderreturnsCreateorderreturnCall) Header() http.Header {
28406	if c.header_ == nil {
28407		c.header_ = make(http.Header)
28408	}
28409	return c.header_
28410}
28411
28412func (c *OrderreturnsCreateorderreturnCall) doRequest(alt string) (*http.Response, error) {
28413	reqHeaders := make(http.Header)
28414	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28415	for k, v := range c.header_ {
28416		reqHeaders[k] = v
28417	}
28418	reqHeaders.Set("User-Agent", c.s.userAgent())
28419	var body io.Reader = nil
28420	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnscreateorderreturnrequest)
28421	if err != nil {
28422		return nil, err
28423	}
28424	reqHeaders.Set("Content-Type", "application/json")
28425	c.urlParams_.Set("alt", alt)
28426	c.urlParams_.Set("prettyPrint", "false")
28427	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/createOrderReturn")
28428	urls += "?" + c.urlParams_.Encode()
28429	req, err := http.NewRequest("POST", urls, body)
28430	if err != nil {
28431		return nil, err
28432	}
28433	req.Header = reqHeaders
28434	googleapi.Expand(req.URL, map[string]string{
28435		"merchantId": strconv.FormatUint(c.merchantId, 10),
28436	})
28437	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28438}
28439
28440// Do executes the "content.orderreturns.createorderreturn" call.
28441// Exactly one of *OrderreturnsCreateOrderReturnResponse or error will
28442// be non-nil. Any non-2xx status code is an error. Response headers are
28443// in either
28444// *OrderreturnsCreateOrderReturnResponse.ServerResponse.Header or (if a
28445// response was returned at all) in error.(*googleapi.Error).Header. Use
28446// googleapi.IsNotModified to check whether the returned error was
28447// because http.StatusNotModified was returned.
28448func (c *OrderreturnsCreateorderreturnCall) Do(opts ...googleapi.CallOption) (*OrderreturnsCreateOrderReturnResponse, error) {
28449	gensupport.SetOptions(c.urlParams_, opts...)
28450	res, err := c.doRequest("json")
28451	if res != nil && res.StatusCode == http.StatusNotModified {
28452		if res.Body != nil {
28453			res.Body.Close()
28454		}
28455		return nil, &googleapi.Error{
28456			Code:   res.StatusCode,
28457			Header: res.Header,
28458		}
28459	}
28460	if err != nil {
28461		return nil, err
28462	}
28463	defer googleapi.CloseBody(res)
28464	if err := googleapi.CheckResponse(res); err != nil {
28465		return nil, err
28466	}
28467	ret := &OrderreturnsCreateOrderReturnResponse{
28468		ServerResponse: googleapi.ServerResponse{
28469			Header:         res.Header,
28470			HTTPStatusCode: res.StatusCode,
28471		},
28472	}
28473	target := &ret
28474	if err := gensupport.DecodeResponse(target, res); err != nil {
28475		return nil, err
28476	}
28477	return ret, nil
28478	// {
28479	//   "description": "Create return in your Merchant Center account.",
28480	//   "flatPath": "{merchantId}/orderreturns/createOrderReturn",
28481	//   "httpMethod": "POST",
28482	//   "id": "content.orderreturns.createorderreturn",
28483	//   "parameterOrder": [
28484	//     "merchantId"
28485	//   ],
28486	//   "parameters": {
28487	//     "merchantId": {
28488	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28489	//       "format": "uint64",
28490	//       "location": "path",
28491	//       "required": true,
28492	//       "type": "string"
28493	//     }
28494	//   },
28495	//   "path": "{merchantId}/orderreturns/createOrderReturn",
28496	//   "request": {
28497	//     "$ref": "OrderreturnsCreateOrderReturnRequest"
28498	//   },
28499	//   "response": {
28500	//     "$ref": "OrderreturnsCreateOrderReturnResponse"
28501	//   },
28502	//   "scopes": [
28503	//     "https://www.googleapis.com/auth/content"
28504	//   ]
28505	// }
28506
28507}
28508
28509// method id "content.orderreturns.get":
28510
28511type OrderreturnsGetCall struct {
28512	s            *APIService
28513	merchantId   uint64
28514	returnId     string
28515	urlParams_   gensupport.URLParams
28516	ifNoneMatch_ string
28517	ctx_         context.Context
28518	header_      http.Header
28519}
28520
28521// Get: Retrieves an order return from your Merchant Center account.
28522//
28523// - merchantId: The ID of the account that manages the order. This
28524//   cannot be a multi-client account.
28525// - returnId: Merchant order return ID generated by Google.
28526func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
28527	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28528	c.merchantId = merchantId
28529	c.returnId = returnId
28530	return c
28531}
28532
28533// Fields allows partial responses to be retrieved. See
28534// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28535// for more information.
28536func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
28537	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28538	return c
28539}
28540
28541// IfNoneMatch sets the optional parameter which makes the operation
28542// fail if the object's ETag matches the given value. This is useful for
28543// getting updates only after the object has changed since the last
28544// request. Use googleapi.IsNotModified to check whether the response
28545// error from Do is the result of In-None-Match.
28546func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
28547	c.ifNoneMatch_ = entityTag
28548	return c
28549}
28550
28551// Context sets the context to be used in this call's Do method. Any
28552// pending HTTP request will be aborted if the provided context is
28553// canceled.
28554func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
28555	c.ctx_ = ctx
28556	return c
28557}
28558
28559// Header returns an http.Header that can be modified by the caller to
28560// add HTTP headers to the request.
28561func (c *OrderreturnsGetCall) Header() http.Header {
28562	if c.header_ == nil {
28563		c.header_ = make(http.Header)
28564	}
28565	return c.header_
28566}
28567
28568func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
28569	reqHeaders := make(http.Header)
28570	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28571	for k, v := range c.header_ {
28572		reqHeaders[k] = v
28573	}
28574	reqHeaders.Set("User-Agent", c.s.userAgent())
28575	if c.ifNoneMatch_ != "" {
28576		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28577	}
28578	var body io.Reader = nil
28579	c.urlParams_.Set("alt", alt)
28580	c.urlParams_.Set("prettyPrint", "false")
28581	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}")
28582	urls += "?" + c.urlParams_.Encode()
28583	req, err := http.NewRequest("GET", urls, body)
28584	if err != nil {
28585		return nil, err
28586	}
28587	req.Header = reqHeaders
28588	googleapi.Expand(req.URL, map[string]string{
28589		"merchantId": strconv.FormatUint(c.merchantId, 10),
28590		"returnId":   c.returnId,
28591	})
28592	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28593}
28594
28595// Do executes the "content.orderreturns.get" call.
28596// Exactly one of *MerchantOrderReturn or error will be non-nil. Any
28597// non-2xx status code is an error. Response headers are in either
28598// *MerchantOrderReturn.ServerResponse.Header or (if a response was
28599// returned at all) in error.(*googleapi.Error).Header. Use
28600// googleapi.IsNotModified to check whether the returned error was
28601// because http.StatusNotModified was returned.
28602func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
28603	gensupport.SetOptions(c.urlParams_, opts...)
28604	res, err := c.doRequest("json")
28605	if res != nil && res.StatusCode == http.StatusNotModified {
28606		if res.Body != nil {
28607			res.Body.Close()
28608		}
28609		return nil, &googleapi.Error{
28610			Code:   res.StatusCode,
28611			Header: res.Header,
28612		}
28613	}
28614	if err != nil {
28615		return nil, err
28616	}
28617	defer googleapi.CloseBody(res)
28618	if err := googleapi.CheckResponse(res); err != nil {
28619		return nil, err
28620	}
28621	ret := &MerchantOrderReturn{
28622		ServerResponse: googleapi.ServerResponse{
28623			Header:         res.Header,
28624			HTTPStatusCode: res.StatusCode,
28625		},
28626	}
28627	target := &ret
28628	if err := gensupport.DecodeResponse(target, res); err != nil {
28629		return nil, err
28630	}
28631	return ret, nil
28632	// {
28633	//   "description": "Retrieves an order return from your Merchant Center account.",
28634	//   "flatPath": "{merchantId}/orderreturns/{returnId}",
28635	//   "httpMethod": "GET",
28636	//   "id": "content.orderreturns.get",
28637	//   "parameterOrder": [
28638	//     "merchantId",
28639	//     "returnId"
28640	//   ],
28641	//   "parameters": {
28642	//     "merchantId": {
28643	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28644	//       "format": "uint64",
28645	//       "location": "path",
28646	//       "required": true,
28647	//       "type": "string"
28648	//     },
28649	//     "returnId": {
28650	//       "description": "Merchant order return ID generated by Google.",
28651	//       "location": "path",
28652	//       "required": true,
28653	//       "type": "string"
28654	//     }
28655	//   },
28656	//   "path": "{merchantId}/orderreturns/{returnId}",
28657	//   "response": {
28658	//     "$ref": "MerchantOrderReturn"
28659	//   },
28660	//   "scopes": [
28661	//     "https://www.googleapis.com/auth/content"
28662	//   ]
28663	// }
28664
28665}
28666
28667// method id "content.orderreturns.list":
28668
28669type OrderreturnsListCall struct {
28670	s            *APIService
28671	merchantId   uint64
28672	urlParams_   gensupport.URLParams
28673	ifNoneMatch_ string
28674	ctx_         context.Context
28675	header_      http.Header
28676}
28677
28678// List: Lists order returns in your Merchant Center account.
28679//
28680// - merchantId: The ID of the account that manages the order. This
28681//   cannot be a multi-client account.
28682func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
28683	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28684	c.merchantId = merchantId
28685	return c
28686}
28687
28688// Acknowledged sets the optional parameter "acknowledged": Obtains
28689// order returns that match the acknowledgement status. When set to
28690// true, obtains order returns that have been acknowledged. When false,
28691// obtains order returns that have not been acknowledged. When not
28692// provided, obtains order returns regardless of their acknowledgement
28693// status. We recommend using this filter set to `false`, in conjunction
28694// with the `acknowledge` call, such that only un-acknowledged order
28695// returns are returned.
28696func (c *OrderreturnsListCall) Acknowledged(acknowledged bool) *OrderreturnsListCall {
28697	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
28698	return c
28699}
28700
28701// CreatedEndDate sets the optional parameter "createdEndDate": Obtains
28702// order returns created before this date (inclusively), in ISO 8601
28703// format.
28704func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
28705	c.urlParams_.Set("createdEndDate", createdEndDate)
28706	return c
28707}
28708
28709// CreatedStartDate sets the optional parameter "createdStartDate":
28710// Obtains order returns created after this date (inclusively), in ISO
28711// 8601 format.
28712func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
28713	c.urlParams_.Set("createdStartDate", createdStartDate)
28714	return c
28715}
28716
28717// GoogleOrderIds sets the optional parameter "googleOrderIds": Obtains
28718// order returns with the specified order ids. If this parameter is
28719// provided, createdStartDate, createdEndDate, shipmentType,
28720// shipmentStatus, shipmentState and acknowledged parameters must be not
28721// set. Note: if googleOrderId and shipmentTrackingNumber parameters are
28722// provided, the obtained results will include all order returns that
28723// either match the specified order id or the specified tracking number.
28724func (c *OrderreturnsListCall) GoogleOrderIds(googleOrderIds ...string) *OrderreturnsListCall {
28725	c.urlParams_.SetMulti("googleOrderIds", append([]string{}, googleOrderIds...))
28726	return c
28727}
28728
28729// MaxResults sets the optional parameter "maxResults": The maximum
28730// number of order returns to return in the response, used for paging.
28731// The default value is 25 returns per page, and the maximum allowed
28732// value is 250 returns per page.
28733func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
28734	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28735	return c
28736}
28737
28738// OrderBy sets the optional parameter "orderBy": Return the results in
28739// the specified order.
28740//
28741// Possible values:
28742//   "RETURN_CREATION_TIME_DESC" - Return results in descending order.
28743//   "RETURN_CREATION_TIME_ASC" - Return results in ascending order.
28744func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
28745	c.urlParams_.Set("orderBy", orderBy)
28746	return c
28747}
28748
28749// PageToken sets the optional parameter "pageToken": The token returned
28750// by the previous request.
28751func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
28752	c.urlParams_.Set("pageToken", pageToken)
28753	return c
28754}
28755
28756// ShipmentStates sets the optional parameter "shipmentStates": Obtains
28757// order returns that match any shipment state provided in this
28758// parameter. When this parameter is not provided, order returns are
28759// obtained regardless of their shipment states.
28760//
28761// Possible values:
28762//   "NEW" - Return shipments with `new` state only.
28763//   "SHIPPED" - Return shipments with `shipped` state only.
28764//   "COMPLETED" - Return shipments with `completed` state only.
28765//   "UNDELIVERABLE" - Return shipments with `undeliverable` state only.
28766//   "PENDING" - Return shipments with `pending` state only.
28767func (c *OrderreturnsListCall) ShipmentStates(shipmentStates ...string) *OrderreturnsListCall {
28768	c.urlParams_.SetMulti("shipmentStates", append([]string{}, shipmentStates...))
28769	return c
28770}
28771
28772// ShipmentStatus sets the optional parameter "shipmentStatus": Obtains
28773// order returns that match any shipment status provided in this
28774// parameter. When this parameter is not provided, order returns are
28775// obtained regardless of their shipment statuses.
28776//
28777// Possible values:
28778//   "NEW" - Return shipments with `new` status only.
28779//   "IN_PROGRESS" - Return shipments with `inProgress` status only.
28780//   "PROCESSED" - Return shipments with `processed` status only.
28781func (c *OrderreturnsListCall) ShipmentStatus(shipmentStatus ...string) *OrderreturnsListCall {
28782	c.urlParams_.SetMulti("shipmentStatus", append([]string{}, shipmentStatus...))
28783	return c
28784}
28785
28786// ShipmentTrackingNumbers sets the optional parameter
28787// "shipmentTrackingNumbers": Obtains order returns with the specified
28788// tracking numbers. If this parameter is provided, createdStartDate,
28789// createdEndDate, shipmentType, shipmentStatus, shipmentState and
28790// acknowledged parameters must be not set. Note: if googleOrderId and
28791// shipmentTrackingNumber parameters are provided, the obtained results
28792// will include all order returns that either match the specified order
28793// id or the specified tracking number.
28794func (c *OrderreturnsListCall) ShipmentTrackingNumbers(shipmentTrackingNumbers ...string) *OrderreturnsListCall {
28795	c.urlParams_.SetMulti("shipmentTrackingNumbers", append([]string{}, shipmentTrackingNumbers...))
28796	return c
28797}
28798
28799// ShipmentTypes sets the optional parameter "shipmentTypes": Obtains
28800// order returns that match any shipment type provided in this
28801// parameter. When this parameter is not provided, order returns are
28802// obtained regardless of their shipment types.
28803//
28804// Possible values:
28805//   "BY_MAIL" - Return shipments with type `byMail` only.
28806//   "RETURNLESS" - Return shipments with type `returnless` only.
28807//   "CONTACT_CUSTOMER_SUPPORT" - Return shipments with type
28808// `contactCustomerSupport` only.
28809func (c *OrderreturnsListCall) ShipmentTypes(shipmentTypes ...string) *OrderreturnsListCall {
28810	c.urlParams_.SetMulti("shipmentTypes", append([]string{}, shipmentTypes...))
28811	return c
28812}
28813
28814// Fields allows partial responses to be retrieved. See
28815// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28816// for more information.
28817func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
28818	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28819	return c
28820}
28821
28822// IfNoneMatch sets the optional parameter which makes the operation
28823// fail if the object's ETag matches the given value. This is useful for
28824// getting updates only after the object has changed since the last
28825// request. Use googleapi.IsNotModified to check whether the response
28826// error from Do is the result of In-None-Match.
28827func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
28828	c.ifNoneMatch_ = entityTag
28829	return c
28830}
28831
28832// Context sets the context to be used in this call's Do method. Any
28833// pending HTTP request will be aborted if the provided context is
28834// canceled.
28835func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
28836	c.ctx_ = ctx
28837	return c
28838}
28839
28840// Header returns an http.Header that can be modified by the caller to
28841// add HTTP headers to the request.
28842func (c *OrderreturnsListCall) Header() http.Header {
28843	if c.header_ == nil {
28844		c.header_ = make(http.Header)
28845	}
28846	return c.header_
28847}
28848
28849func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
28850	reqHeaders := make(http.Header)
28851	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
28852	for k, v := range c.header_ {
28853		reqHeaders[k] = v
28854	}
28855	reqHeaders.Set("User-Agent", c.s.userAgent())
28856	if c.ifNoneMatch_ != "" {
28857		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28858	}
28859	var body io.Reader = nil
28860	c.urlParams_.Set("alt", alt)
28861	c.urlParams_.Set("prettyPrint", "false")
28862	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns")
28863	urls += "?" + c.urlParams_.Encode()
28864	req, err := http.NewRequest("GET", urls, body)
28865	if err != nil {
28866		return nil, err
28867	}
28868	req.Header = reqHeaders
28869	googleapi.Expand(req.URL, map[string]string{
28870		"merchantId": strconv.FormatUint(c.merchantId, 10),
28871	})
28872	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28873}
28874
28875// Do executes the "content.orderreturns.list" call.
28876// Exactly one of *OrderreturnsListResponse or error will be non-nil.
28877// Any non-2xx status code is an error. Response headers are in either
28878// *OrderreturnsListResponse.ServerResponse.Header or (if a response was
28879// returned at all) in error.(*googleapi.Error).Header. Use
28880// googleapi.IsNotModified to check whether the returned error was
28881// because http.StatusNotModified was returned.
28882func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
28883	gensupport.SetOptions(c.urlParams_, opts...)
28884	res, err := c.doRequest("json")
28885	if res != nil && res.StatusCode == http.StatusNotModified {
28886		if res.Body != nil {
28887			res.Body.Close()
28888		}
28889		return nil, &googleapi.Error{
28890			Code:   res.StatusCode,
28891			Header: res.Header,
28892		}
28893	}
28894	if err != nil {
28895		return nil, err
28896	}
28897	defer googleapi.CloseBody(res)
28898	if err := googleapi.CheckResponse(res); err != nil {
28899		return nil, err
28900	}
28901	ret := &OrderreturnsListResponse{
28902		ServerResponse: googleapi.ServerResponse{
28903			Header:         res.Header,
28904			HTTPStatusCode: res.StatusCode,
28905		},
28906	}
28907	target := &ret
28908	if err := gensupport.DecodeResponse(target, res); err != nil {
28909		return nil, err
28910	}
28911	return ret, nil
28912	// {
28913	//   "description": "Lists order returns in your Merchant Center account.",
28914	//   "flatPath": "{merchantId}/orderreturns",
28915	//   "httpMethod": "GET",
28916	//   "id": "content.orderreturns.list",
28917	//   "parameterOrder": [
28918	//     "merchantId"
28919	//   ],
28920	//   "parameters": {
28921	//     "acknowledged": {
28922	//       "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. ",
28923	//       "location": "query",
28924	//       "type": "boolean"
28925	//     },
28926	//     "createdEndDate": {
28927	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
28928	//       "location": "query",
28929	//       "type": "string"
28930	//     },
28931	//     "createdStartDate": {
28932	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
28933	//       "location": "query",
28934	//       "type": "string"
28935	//     },
28936	//     "googleOrderIds": {
28937	//       "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.",
28938	//       "location": "query",
28939	//       "repeated": true,
28940	//       "type": "string"
28941	//     },
28942	//     "maxResults": {
28943	//       "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.",
28944	//       "format": "uint32",
28945	//       "location": "query",
28946	//       "type": "integer"
28947	//     },
28948	//     "merchantId": {
28949	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28950	//       "format": "uint64",
28951	//       "location": "path",
28952	//       "required": true,
28953	//       "type": "string"
28954	//     },
28955	//     "orderBy": {
28956	//       "description": "Return the results in the specified order.",
28957	//       "enum": [
28958	//         "RETURN_CREATION_TIME_DESC",
28959	//         "RETURN_CREATION_TIME_ASC"
28960	//       ],
28961	//       "enumDescriptions": [
28962	//         "Return results in descending order.",
28963	//         "Return results in ascending order."
28964	//       ],
28965	//       "location": "query",
28966	//       "type": "string"
28967	//     },
28968	//     "pageToken": {
28969	//       "description": "The token returned by the previous request.",
28970	//       "location": "query",
28971	//       "type": "string"
28972	//     },
28973	//     "shipmentStates": {
28974	//       "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.",
28975	//       "enum": [
28976	//         "NEW",
28977	//         "SHIPPED",
28978	//         "COMPLETED",
28979	//         "UNDELIVERABLE",
28980	//         "PENDING"
28981	//       ],
28982	//       "enumDescriptions": [
28983	//         "Return shipments with `new` state only.",
28984	//         "Return shipments with `shipped` state only.",
28985	//         "Return shipments with `completed` state only.",
28986	//         "Return shipments with `undeliverable` state only.",
28987	//         "Return shipments with `pending` state only."
28988	//       ],
28989	//       "location": "query",
28990	//       "repeated": true,
28991	//       "type": "string"
28992	//     },
28993	//     "shipmentStatus": {
28994	//       "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.",
28995	//       "enum": [
28996	//         "NEW",
28997	//         "IN_PROGRESS",
28998	//         "PROCESSED"
28999	//       ],
29000	//       "enumDescriptions": [
29001	//         "Return shipments with `new` status only.",
29002	//         "Return shipments with `inProgress` status only.",
29003	//         "Return shipments with `processed` status only."
29004	//       ],
29005	//       "location": "query",
29006	//       "repeated": true,
29007	//       "type": "string"
29008	//     },
29009	//     "shipmentTrackingNumbers": {
29010	//       "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.",
29011	//       "location": "query",
29012	//       "repeated": true,
29013	//       "type": "string"
29014	//     },
29015	//     "shipmentTypes": {
29016	//       "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.",
29017	//       "enum": [
29018	//         "BY_MAIL",
29019	//         "RETURNLESS",
29020	//         "CONTACT_CUSTOMER_SUPPORT"
29021	//       ],
29022	//       "enumDescriptions": [
29023	//         "Return shipments with type `byMail` only.",
29024	//         "Return shipments with type `returnless` only.",
29025	//         "Return shipments with type `contactCustomerSupport` only."
29026	//       ],
29027	//       "location": "query",
29028	//       "repeated": true,
29029	//       "type": "string"
29030	//     }
29031	//   },
29032	//   "path": "{merchantId}/orderreturns",
29033	//   "response": {
29034	//     "$ref": "OrderreturnsListResponse"
29035	//   },
29036	//   "scopes": [
29037	//     "https://www.googleapis.com/auth/content"
29038	//   ]
29039	// }
29040
29041}
29042
29043// Pages invokes f for each page of results.
29044// A non-nil error returned from f will halt the iteration.
29045// The provided context supersedes any context provided to the Context method.
29046func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
29047	c.ctx_ = ctx
29048	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29049	for {
29050		x, err := c.Do()
29051		if err != nil {
29052			return err
29053		}
29054		if err := f(x); err != nil {
29055			return err
29056		}
29057		if x.NextPageToken == "" {
29058			return nil
29059		}
29060		c.PageToken(x.NextPageToken)
29061	}
29062}
29063
29064// method id "content.orderreturns.process":
29065
29066type OrderreturnsProcessCall struct {
29067	s                          *APIService
29068	merchantId                 uint64
29069	returnId                   string
29070	orderreturnsprocessrequest *OrderreturnsProcessRequest
29071	urlParams_                 gensupport.URLParams
29072	ctx_                       context.Context
29073	header_                    http.Header
29074}
29075
29076// Process: Processes return in your Merchant Center account.
29077//
29078// - merchantId: The ID of the account that manages the order. This
29079//   cannot be a multi-client account.
29080// - returnId: The ID of the return.
29081func (r *OrderreturnsService) Process(merchantId uint64, returnId string, orderreturnsprocessrequest *OrderreturnsProcessRequest) *OrderreturnsProcessCall {
29082	c := &OrderreturnsProcessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29083	c.merchantId = merchantId
29084	c.returnId = returnId
29085	c.orderreturnsprocessrequest = orderreturnsprocessrequest
29086	return c
29087}
29088
29089// Fields allows partial responses to be retrieved. See
29090// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29091// for more information.
29092func (c *OrderreturnsProcessCall) Fields(s ...googleapi.Field) *OrderreturnsProcessCall {
29093	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29094	return c
29095}
29096
29097// Context sets the context to be used in this call's Do method. Any
29098// pending HTTP request will be aborted if the provided context is
29099// canceled.
29100func (c *OrderreturnsProcessCall) Context(ctx context.Context) *OrderreturnsProcessCall {
29101	c.ctx_ = ctx
29102	return c
29103}
29104
29105// Header returns an http.Header that can be modified by the caller to
29106// add HTTP headers to the request.
29107func (c *OrderreturnsProcessCall) Header() http.Header {
29108	if c.header_ == nil {
29109		c.header_ = make(http.Header)
29110	}
29111	return c.header_
29112}
29113
29114func (c *OrderreturnsProcessCall) doRequest(alt string) (*http.Response, error) {
29115	reqHeaders := make(http.Header)
29116	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29117	for k, v := range c.header_ {
29118		reqHeaders[k] = v
29119	}
29120	reqHeaders.Set("User-Agent", c.s.userAgent())
29121	var body io.Reader = nil
29122	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsprocessrequest)
29123	if err != nil {
29124		return nil, err
29125	}
29126	reqHeaders.Set("Content-Type", "application/json")
29127	c.urlParams_.Set("alt", alt)
29128	c.urlParams_.Set("prettyPrint", "false")
29129	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/process")
29130	urls += "?" + c.urlParams_.Encode()
29131	req, err := http.NewRequest("POST", urls, body)
29132	if err != nil {
29133		return nil, err
29134	}
29135	req.Header = reqHeaders
29136	googleapi.Expand(req.URL, map[string]string{
29137		"merchantId": strconv.FormatUint(c.merchantId, 10),
29138		"returnId":   c.returnId,
29139	})
29140	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29141}
29142
29143// Do executes the "content.orderreturns.process" call.
29144// Exactly one of *OrderreturnsProcessResponse or error will be non-nil.
29145// Any non-2xx status code is an error. Response headers are in either
29146// *OrderreturnsProcessResponse.ServerResponse.Header or (if a response
29147// was returned at all) in error.(*googleapi.Error).Header. Use
29148// googleapi.IsNotModified to check whether the returned error was
29149// because http.StatusNotModified was returned.
29150func (c *OrderreturnsProcessCall) Do(opts ...googleapi.CallOption) (*OrderreturnsProcessResponse, error) {
29151	gensupport.SetOptions(c.urlParams_, opts...)
29152	res, err := c.doRequest("json")
29153	if res != nil && res.StatusCode == http.StatusNotModified {
29154		if res.Body != nil {
29155			res.Body.Close()
29156		}
29157		return nil, &googleapi.Error{
29158			Code:   res.StatusCode,
29159			Header: res.Header,
29160		}
29161	}
29162	if err != nil {
29163		return nil, err
29164	}
29165	defer googleapi.CloseBody(res)
29166	if err := googleapi.CheckResponse(res); err != nil {
29167		return nil, err
29168	}
29169	ret := &OrderreturnsProcessResponse{
29170		ServerResponse: googleapi.ServerResponse{
29171			Header:         res.Header,
29172			HTTPStatusCode: res.StatusCode,
29173		},
29174	}
29175	target := &ret
29176	if err := gensupport.DecodeResponse(target, res); err != nil {
29177		return nil, err
29178	}
29179	return ret, nil
29180	// {
29181	//   "description": "Processes return in your Merchant Center account.",
29182	//   "flatPath": "{merchantId}/orderreturns/{returnId}/process",
29183	//   "httpMethod": "POST",
29184	//   "id": "content.orderreturns.process",
29185	//   "parameterOrder": [
29186	//     "merchantId",
29187	//     "returnId"
29188	//   ],
29189	//   "parameters": {
29190	//     "merchantId": {
29191	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29192	//       "format": "uint64",
29193	//       "location": "path",
29194	//       "required": true,
29195	//       "type": "string"
29196	//     },
29197	//     "returnId": {
29198	//       "description": "The ID of the return.",
29199	//       "location": "path",
29200	//       "required": true,
29201	//       "type": "string"
29202	//     }
29203	//   },
29204	//   "path": "{merchantId}/orderreturns/{returnId}/process",
29205	//   "request": {
29206	//     "$ref": "OrderreturnsProcessRequest"
29207	//   },
29208	//   "response": {
29209	//     "$ref": "OrderreturnsProcessResponse"
29210	//   },
29211	//   "scopes": [
29212	//     "https://www.googleapis.com/auth/content"
29213	//   ]
29214	// }
29215
29216}
29217
29218// method id "content.orderreturns.labels.create":
29219
29220type OrderreturnsLabelsCreateCall struct {
29221	s                   *APIService
29222	merchantId          int64
29223	returnId            string
29224	returnshippinglabel *ReturnShippingLabel
29225	urlParams_          gensupport.URLParams
29226	ctx_                context.Context
29227	header_             http.Header
29228}
29229
29230// Create: Links a return shipping label to a return id. You can only
29231// create one return label per return id. Since the label is sent to the
29232// buyer, the linked return label cannot be updated or deleted. If you
29233// try to create multiple return shipping labels for a single return id,
29234// every create request except the first will fail.
29235//
29236// - merchantId: The merchant the Return Shipping Label belongs to.
29237// - returnId: Provide the Google-generated merchant order return ID.
29238func (r *OrderreturnsLabelsService) Create(merchantId int64, returnId string, returnshippinglabel *ReturnShippingLabel) *OrderreturnsLabelsCreateCall {
29239	c := &OrderreturnsLabelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29240	c.merchantId = merchantId
29241	c.returnId = returnId
29242	c.returnshippinglabel = returnshippinglabel
29243	return c
29244}
29245
29246// Fields allows partial responses to be retrieved. See
29247// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29248// for more information.
29249func (c *OrderreturnsLabelsCreateCall) Fields(s ...googleapi.Field) *OrderreturnsLabelsCreateCall {
29250	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29251	return c
29252}
29253
29254// Context sets the context to be used in this call's Do method. Any
29255// pending HTTP request will be aborted if the provided context is
29256// canceled.
29257func (c *OrderreturnsLabelsCreateCall) Context(ctx context.Context) *OrderreturnsLabelsCreateCall {
29258	c.ctx_ = ctx
29259	return c
29260}
29261
29262// Header returns an http.Header that can be modified by the caller to
29263// add HTTP headers to the request.
29264func (c *OrderreturnsLabelsCreateCall) Header() http.Header {
29265	if c.header_ == nil {
29266		c.header_ = make(http.Header)
29267	}
29268	return c.header_
29269}
29270
29271func (c *OrderreturnsLabelsCreateCall) doRequest(alt string) (*http.Response, error) {
29272	reqHeaders := make(http.Header)
29273	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29274	for k, v := range c.header_ {
29275		reqHeaders[k] = v
29276	}
29277	reqHeaders.Set("User-Agent", c.s.userAgent())
29278	var body io.Reader = nil
29279	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnshippinglabel)
29280	if err != nil {
29281		return nil, err
29282	}
29283	reqHeaders.Set("Content-Type", "application/json")
29284	c.urlParams_.Set("alt", alt)
29285	c.urlParams_.Set("prettyPrint", "false")
29286	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/labels")
29287	urls += "?" + c.urlParams_.Encode()
29288	req, err := http.NewRequest("POST", urls, body)
29289	if err != nil {
29290		return nil, err
29291	}
29292	req.Header = reqHeaders
29293	googleapi.Expand(req.URL, map[string]string{
29294		"merchantId": strconv.FormatInt(c.merchantId, 10),
29295		"returnId":   c.returnId,
29296	})
29297	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29298}
29299
29300// Do executes the "content.orderreturns.labels.create" call.
29301// Exactly one of *ReturnShippingLabel or error will be non-nil. Any
29302// non-2xx status code is an error. Response headers are in either
29303// *ReturnShippingLabel.ServerResponse.Header or (if a response was
29304// returned at all) in error.(*googleapi.Error).Header. Use
29305// googleapi.IsNotModified to check whether the returned error was
29306// because http.StatusNotModified was returned.
29307func (c *OrderreturnsLabelsCreateCall) Do(opts ...googleapi.CallOption) (*ReturnShippingLabel, error) {
29308	gensupport.SetOptions(c.urlParams_, opts...)
29309	res, err := c.doRequest("json")
29310	if res != nil && res.StatusCode == http.StatusNotModified {
29311		if res.Body != nil {
29312			res.Body.Close()
29313		}
29314		return nil, &googleapi.Error{
29315			Code:   res.StatusCode,
29316			Header: res.Header,
29317		}
29318	}
29319	if err != nil {
29320		return nil, err
29321	}
29322	defer googleapi.CloseBody(res)
29323	if err := googleapi.CheckResponse(res); err != nil {
29324		return nil, err
29325	}
29326	ret := &ReturnShippingLabel{
29327		ServerResponse: googleapi.ServerResponse{
29328			Header:         res.Header,
29329			HTTPStatusCode: res.StatusCode,
29330		},
29331	}
29332	target := &ret
29333	if err := gensupport.DecodeResponse(target, res); err != nil {
29334		return nil, err
29335	}
29336	return ret, nil
29337	// {
29338	//   "description": "Links a return shipping label to a return id. You can only create one return label per return id. Since the label is sent to the buyer, the linked return label cannot be updated or deleted. If you try to create multiple return shipping labels for a single return id, every create request except the first will fail.",
29339	//   "flatPath": "{merchantId}/orderreturns/{returnId}/labels",
29340	//   "httpMethod": "POST",
29341	//   "id": "content.orderreturns.labels.create",
29342	//   "parameterOrder": [
29343	//     "merchantId",
29344	//     "returnId"
29345	//   ],
29346	//   "parameters": {
29347	//     "merchantId": {
29348	//       "description": "Required. The merchant the Return Shipping Label belongs to.",
29349	//       "format": "int64",
29350	//       "location": "path",
29351	//       "required": true,
29352	//       "type": "string"
29353	//     },
29354	//     "returnId": {
29355	//       "description": "Required. Provide the Google-generated merchant order return ID.",
29356	//       "location": "path",
29357	//       "required": true,
29358	//       "type": "string"
29359	//     }
29360	//   },
29361	//   "path": "{merchantId}/orderreturns/{returnId}/labels",
29362	//   "request": {
29363	//     "$ref": "ReturnShippingLabel"
29364	//   },
29365	//   "response": {
29366	//     "$ref": "ReturnShippingLabel"
29367	//   },
29368	//   "scopes": [
29369	//     "https://www.googleapis.com/auth/content"
29370	//   ]
29371	// }
29372
29373}
29374
29375// method id "content.orders.acknowledge":
29376
29377type OrdersAcknowledgeCall struct {
29378	s                        *APIService
29379	merchantId               uint64
29380	orderId                  string
29381	ordersacknowledgerequest *OrdersAcknowledgeRequest
29382	urlParams_               gensupport.URLParams
29383	ctx_                     context.Context
29384	header_                  http.Header
29385}
29386
29387// Acknowledge: Marks an order as acknowledged.
29388//
29389// - merchantId: The ID of the account that manages the order. This
29390//   cannot be a multi-client account.
29391// - orderId: The ID of the order.
29392func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
29393	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29394	c.merchantId = merchantId
29395	c.orderId = orderId
29396	c.ordersacknowledgerequest = ordersacknowledgerequest
29397	return c
29398}
29399
29400// Fields allows partial responses to be retrieved. See
29401// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29402// for more information.
29403func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
29404	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29405	return c
29406}
29407
29408// Context sets the context to be used in this call's Do method. Any
29409// pending HTTP request will be aborted if the provided context is
29410// canceled.
29411func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
29412	c.ctx_ = ctx
29413	return c
29414}
29415
29416// Header returns an http.Header that can be modified by the caller to
29417// add HTTP headers to the request.
29418func (c *OrdersAcknowledgeCall) Header() http.Header {
29419	if c.header_ == nil {
29420		c.header_ = make(http.Header)
29421	}
29422	return c.header_
29423}
29424
29425func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
29426	reqHeaders := make(http.Header)
29427	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29428	for k, v := range c.header_ {
29429		reqHeaders[k] = v
29430	}
29431	reqHeaders.Set("User-Agent", c.s.userAgent())
29432	var body io.Reader = nil
29433	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
29434	if err != nil {
29435		return nil, err
29436	}
29437	reqHeaders.Set("Content-Type", "application/json")
29438	c.urlParams_.Set("alt", alt)
29439	c.urlParams_.Set("prettyPrint", "false")
29440	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/acknowledge")
29441	urls += "?" + c.urlParams_.Encode()
29442	req, err := http.NewRequest("POST", urls, body)
29443	if err != nil {
29444		return nil, err
29445	}
29446	req.Header = reqHeaders
29447	googleapi.Expand(req.URL, map[string]string{
29448		"merchantId": strconv.FormatUint(c.merchantId, 10),
29449		"orderId":    c.orderId,
29450	})
29451	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29452}
29453
29454// Do executes the "content.orders.acknowledge" call.
29455// Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
29456// Any non-2xx status code is an error. Response headers are in either
29457// *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
29458// was returned at all) in error.(*googleapi.Error).Header. Use
29459// googleapi.IsNotModified to check whether the returned error was
29460// because http.StatusNotModified was returned.
29461func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
29462	gensupport.SetOptions(c.urlParams_, opts...)
29463	res, err := c.doRequest("json")
29464	if res != nil && res.StatusCode == http.StatusNotModified {
29465		if res.Body != nil {
29466			res.Body.Close()
29467		}
29468		return nil, &googleapi.Error{
29469			Code:   res.StatusCode,
29470			Header: res.Header,
29471		}
29472	}
29473	if err != nil {
29474		return nil, err
29475	}
29476	defer googleapi.CloseBody(res)
29477	if err := googleapi.CheckResponse(res); err != nil {
29478		return nil, err
29479	}
29480	ret := &OrdersAcknowledgeResponse{
29481		ServerResponse: googleapi.ServerResponse{
29482			Header:         res.Header,
29483			HTTPStatusCode: res.StatusCode,
29484		},
29485	}
29486	target := &ret
29487	if err := gensupport.DecodeResponse(target, res); err != nil {
29488		return nil, err
29489	}
29490	return ret, nil
29491	// {
29492	//   "description": "Marks an order as acknowledged.",
29493	//   "flatPath": "{merchantId}/orders/{orderId}/acknowledge",
29494	//   "httpMethod": "POST",
29495	//   "id": "content.orders.acknowledge",
29496	//   "parameterOrder": [
29497	//     "merchantId",
29498	//     "orderId"
29499	//   ],
29500	//   "parameters": {
29501	//     "merchantId": {
29502	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29503	//       "format": "uint64",
29504	//       "location": "path",
29505	//       "required": true,
29506	//       "type": "string"
29507	//     },
29508	//     "orderId": {
29509	//       "description": "The ID of the order.",
29510	//       "location": "path",
29511	//       "required": true,
29512	//       "type": "string"
29513	//     }
29514	//   },
29515	//   "path": "{merchantId}/orders/{orderId}/acknowledge",
29516	//   "request": {
29517	//     "$ref": "OrdersAcknowledgeRequest"
29518	//   },
29519	//   "response": {
29520	//     "$ref": "OrdersAcknowledgeResponse"
29521	//   },
29522	//   "scopes": [
29523	//     "https://www.googleapis.com/auth/content"
29524	//   ]
29525	// }
29526
29527}
29528
29529// method id "content.orders.advancetestorder":
29530
29531type OrdersAdvancetestorderCall struct {
29532	s          *APIService
29533	merchantId uint64
29534	orderId    string
29535	urlParams_ gensupport.URLParams
29536	ctx_       context.Context
29537	header_    http.Header
29538}
29539
29540// Advancetestorder: Sandbox only. Moves a test order from state
29541// "inProgress" to state "pendingShipment".
29542//
29543// - merchantId: The ID of the account that manages the order. This
29544//   cannot be a multi-client account.
29545// - orderId: The ID of the test order to modify.
29546func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
29547	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29548	c.merchantId = merchantId
29549	c.orderId = orderId
29550	return c
29551}
29552
29553// Fields allows partial responses to be retrieved. See
29554// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29555// for more information.
29556func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
29557	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29558	return c
29559}
29560
29561// Context sets the context to be used in this call's Do method. Any
29562// pending HTTP request will be aborted if the provided context is
29563// canceled.
29564func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
29565	c.ctx_ = ctx
29566	return c
29567}
29568
29569// Header returns an http.Header that can be modified by the caller to
29570// add HTTP headers to the request.
29571func (c *OrdersAdvancetestorderCall) Header() http.Header {
29572	if c.header_ == nil {
29573		c.header_ = make(http.Header)
29574	}
29575	return c.header_
29576}
29577
29578func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
29579	reqHeaders := make(http.Header)
29580	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29581	for k, v := range c.header_ {
29582		reqHeaders[k] = v
29583	}
29584	reqHeaders.Set("User-Agent", c.s.userAgent())
29585	var body io.Reader = nil
29586	c.urlParams_.Set("alt", alt)
29587	c.urlParams_.Set("prettyPrint", "false")
29588	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/advance")
29589	urls += "?" + c.urlParams_.Encode()
29590	req, err := http.NewRequest("POST", urls, body)
29591	if err != nil {
29592		return nil, err
29593	}
29594	req.Header = reqHeaders
29595	googleapi.Expand(req.URL, map[string]string{
29596		"merchantId": strconv.FormatUint(c.merchantId, 10),
29597		"orderId":    c.orderId,
29598	})
29599	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29600}
29601
29602// Do executes the "content.orders.advancetestorder" call.
29603// Exactly one of *OrdersAdvanceTestOrderResponse or error will be
29604// non-nil. Any non-2xx status code is an error. Response headers are in
29605// either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
29606// response was returned at all) in error.(*googleapi.Error).Header. Use
29607// googleapi.IsNotModified to check whether the returned error was
29608// because http.StatusNotModified was returned.
29609func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
29610	gensupport.SetOptions(c.urlParams_, opts...)
29611	res, err := c.doRequest("json")
29612	if res != nil && res.StatusCode == http.StatusNotModified {
29613		if res.Body != nil {
29614			res.Body.Close()
29615		}
29616		return nil, &googleapi.Error{
29617			Code:   res.StatusCode,
29618			Header: res.Header,
29619		}
29620	}
29621	if err != nil {
29622		return nil, err
29623	}
29624	defer googleapi.CloseBody(res)
29625	if err := googleapi.CheckResponse(res); err != nil {
29626		return nil, err
29627	}
29628	ret := &OrdersAdvanceTestOrderResponse{
29629		ServerResponse: googleapi.ServerResponse{
29630			Header:         res.Header,
29631			HTTPStatusCode: res.StatusCode,
29632		},
29633	}
29634	target := &ret
29635	if err := gensupport.DecodeResponse(target, res); err != nil {
29636		return nil, err
29637	}
29638	return ret, nil
29639	// {
29640	//   "description": "Sandbox only. Moves a test order from state \"`inProgress`\" to state \"`pendingShipment`\".",
29641	//   "flatPath": "{merchantId}/testorders/{orderId}/advance",
29642	//   "httpMethod": "POST",
29643	//   "id": "content.orders.advancetestorder",
29644	//   "parameterOrder": [
29645	//     "merchantId",
29646	//     "orderId"
29647	//   ],
29648	//   "parameters": {
29649	//     "merchantId": {
29650	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29651	//       "format": "uint64",
29652	//       "location": "path",
29653	//       "required": true,
29654	//       "type": "string"
29655	//     },
29656	//     "orderId": {
29657	//       "description": "The ID of the test order to modify.",
29658	//       "location": "path",
29659	//       "required": true,
29660	//       "type": "string"
29661	//     }
29662	//   },
29663	//   "path": "{merchantId}/testorders/{orderId}/advance",
29664	//   "response": {
29665	//     "$ref": "OrdersAdvanceTestOrderResponse"
29666	//   },
29667	//   "scopes": [
29668	//     "https://www.googleapis.com/auth/content"
29669	//   ]
29670	// }
29671
29672}
29673
29674// method id "content.orders.cancel":
29675
29676type OrdersCancelCall struct {
29677	s                   *APIService
29678	merchantId          uint64
29679	orderId             string
29680	orderscancelrequest *OrdersCancelRequest
29681	urlParams_          gensupport.URLParams
29682	ctx_                context.Context
29683	header_             http.Header
29684}
29685
29686// Cancel: Cancels all line items in an order, making a full refund.
29687//
29688// - merchantId: The ID of the account that manages the order. This
29689//   cannot be a multi-client account.
29690// - orderId: The ID of the order to cancel.
29691func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
29692	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29693	c.merchantId = merchantId
29694	c.orderId = orderId
29695	c.orderscancelrequest = orderscancelrequest
29696	return c
29697}
29698
29699// Fields allows partial responses to be retrieved. See
29700// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29701// for more information.
29702func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
29703	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29704	return c
29705}
29706
29707// Context sets the context to be used in this call's Do method. Any
29708// pending HTTP request will be aborted if the provided context is
29709// canceled.
29710func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
29711	c.ctx_ = ctx
29712	return c
29713}
29714
29715// Header returns an http.Header that can be modified by the caller to
29716// add HTTP headers to the request.
29717func (c *OrdersCancelCall) Header() http.Header {
29718	if c.header_ == nil {
29719		c.header_ = make(http.Header)
29720	}
29721	return c.header_
29722}
29723
29724func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
29725	reqHeaders := make(http.Header)
29726	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29727	for k, v := range c.header_ {
29728		reqHeaders[k] = v
29729	}
29730	reqHeaders.Set("User-Agent", c.s.userAgent())
29731	var body io.Reader = nil
29732	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
29733	if err != nil {
29734		return nil, err
29735	}
29736	reqHeaders.Set("Content-Type", "application/json")
29737	c.urlParams_.Set("alt", alt)
29738	c.urlParams_.Set("prettyPrint", "false")
29739	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancel")
29740	urls += "?" + c.urlParams_.Encode()
29741	req, err := http.NewRequest("POST", urls, body)
29742	if err != nil {
29743		return nil, err
29744	}
29745	req.Header = reqHeaders
29746	googleapi.Expand(req.URL, map[string]string{
29747		"merchantId": strconv.FormatUint(c.merchantId, 10),
29748		"orderId":    c.orderId,
29749	})
29750	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29751}
29752
29753// Do executes the "content.orders.cancel" call.
29754// Exactly one of *OrdersCancelResponse or error will be non-nil. Any
29755// non-2xx status code is an error. Response headers are in either
29756// *OrdersCancelResponse.ServerResponse.Header or (if a response was
29757// returned at all) in error.(*googleapi.Error).Header. Use
29758// googleapi.IsNotModified to check whether the returned error was
29759// because http.StatusNotModified was returned.
29760func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
29761	gensupport.SetOptions(c.urlParams_, opts...)
29762	res, err := c.doRequest("json")
29763	if res != nil && res.StatusCode == http.StatusNotModified {
29764		if res.Body != nil {
29765			res.Body.Close()
29766		}
29767		return nil, &googleapi.Error{
29768			Code:   res.StatusCode,
29769			Header: res.Header,
29770		}
29771	}
29772	if err != nil {
29773		return nil, err
29774	}
29775	defer googleapi.CloseBody(res)
29776	if err := googleapi.CheckResponse(res); err != nil {
29777		return nil, err
29778	}
29779	ret := &OrdersCancelResponse{
29780		ServerResponse: googleapi.ServerResponse{
29781			Header:         res.Header,
29782			HTTPStatusCode: res.StatusCode,
29783		},
29784	}
29785	target := &ret
29786	if err := gensupport.DecodeResponse(target, res); err != nil {
29787		return nil, err
29788	}
29789	return ret, nil
29790	// {
29791	//   "description": "Cancels all line items in an order, making a full refund.",
29792	//   "flatPath": "{merchantId}/orders/{orderId}/cancel",
29793	//   "httpMethod": "POST",
29794	//   "id": "content.orders.cancel",
29795	//   "parameterOrder": [
29796	//     "merchantId",
29797	//     "orderId"
29798	//   ],
29799	//   "parameters": {
29800	//     "merchantId": {
29801	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29802	//       "format": "uint64",
29803	//       "location": "path",
29804	//       "required": true,
29805	//       "type": "string"
29806	//     },
29807	//     "orderId": {
29808	//       "description": "The ID of the order to cancel.",
29809	//       "location": "path",
29810	//       "required": true,
29811	//       "type": "string"
29812	//     }
29813	//   },
29814	//   "path": "{merchantId}/orders/{orderId}/cancel",
29815	//   "request": {
29816	//     "$ref": "OrdersCancelRequest"
29817	//   },
29818	//   "response": {
29819	//     "$ref": "OrdersCancelResponse"
29820	//   },
29821	//   "scopes": [
29822	//     "https://www.googleapis.com/auth/content"
29823	//   ]
29824	// }
29825
29826}
29827
29828// method id "content.orders.cancellineitem":
29829
29830type OrdersCancellineitemCall struct {
29831	s                           *APIService
29832	merchantId                  uint64
29833	orderId                     string
29834	orderscancellineitemrequest *OrdersCancelLineItemRequest
29835	urlParams_                  gensupport.URLParams
29836	ctx_                        context.Context
29837	header_                     http.Header
29838}
29839
29840// Cancellineitem: Cancels a line item, making a full refund.
29841//
29842// - merchantId: The ID of the account that manages the order. This
29843//   cannot be a multi-client account.
29844// - orderId: The ID of the order.
29845func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
29846	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29847	c.merchantId = merchantId
29848	c.orderId = orderId
29849	c.orderscancellineitemrequest = orderscancellineitemrequest
29850	return c
29851}
29852
29853// Fields allows partial responses to be retrieved. See
29854// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29855// for more information.
29856func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
29857	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29858	return c
29859}
29860
29861// Context sets the context to be used in this call's Do method. Any
29862// pending HTTP request will be aborted if the provided context is
29863// canceled.
29864func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
29865	c.ctx_ = ctx
29866	return c
29867}
29868
29869// Header returns an http.Header that can be modified by the caller to
29870// add HTTP headers to the request.
29871func (c *OrdersCancellineitemCall) Header() http.Header {
29872	if c.header_ == nil {
29873		c.header_ = make(http.Header)
29874	}
29875	return c.header_
29876}
29877
29878func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
29879	reqHeaders := make(http.Header)
29880	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
29881	for k, v := range c.header_ {
29882		reqHeaders[k] = v
29883	}
29884	reqHeaders.Set("User-Agent", c.s.userAgent())
29885	var body io.Reader = nil
29886	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
29887	if err != nil {
29888		return nil, err
29889	}
29890	reqHeaders.Set("Content-Type", "application/json")
29891	c.urlParams_.Set("alt", alt)
29892	c.urlParams_.Set("prettyPrint", "false")
29893	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancelLineItem")
29894	urls += "?" + c.urlParams_.Encode()
29895	req, err := http.NewRequest("POST", urls, body)
29896	if err != nil {
29897		return nil, err
29898	}
29899	req.Header = reqHeaders
29900	googleapi.Expand(req.URL, map[string]string{
29901		"merchantId": strconv.FormatUint(c.merchantId, 10),
29902		"orderId":    c.orderId,
29903	})
29904	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29905}
29906
29907// Do executes the "content.orders.cancellineitem" call.
29908// Exactly one of *OrdersCancelLineItemResponse or error will be
29909// non-nil. Any non-2xx status code is an error. Response headers are in
29910// either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
29911// response was returned at all) in error.(*googleapi.Error).Header. Use
29912// googleapi.IsNotModified to check whether the returned error was
29913// because http.StatusNotModified was returned.
29914func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
29915	gensupport.SetOptions(c.urlParams_, opts...)
29916	res, err := c.doRequest("json")
29917	if res != nil && res.StatusCode == http.StatusNotModified {
29918		if res.Body != nil {
29919			res.Body.Close()
29920		}
29921		return nil, &googleapi.Error{
29922			Code:   res.StatusCode,
29923			Header: res.Header,
29924		}
29925	}
29926	if err != nil {
29927		return nil, err
29928	}
29929	defer googleapi.CloseBody(res)
29930	if err := googleapi.CheckResponse(res); err != nil {
29931		return nil, err
29932	}
29933	ret := &OrdersCancelLineItemResponse{
29934		ServerResponse: googleapi.ServerResponse{
29935			Header:         res.Header,
29936			HTTPStatusCode: res.StatusCode,
29937		},
29938	}
29939	target := &ret
29940	if err := gensupport.DecodeResponse(target, res); err != nil {
29941		return nil, err
29942	}
29943	return ret, nil
29944	// {
29945	//   "description": "Cancels a line item, making a full refund.",
29946	//   "flatPath": "{merchantId}/orders/{orderId}/cancelLineItem",
29947	//   "httpMethod": "POST",
29948	//   "id": "content.orders.cancellineitem",
29949	//   "parameterOrder": [
29950	//     "merchantId",
29951	//     "orderId"
29952	//   ],
29953	//   "parameters": {
29954	//     "merchantId": {
29955	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29956	//       "format": "uint64",
29957	//       "location": "path",
29958	//       "required": true,
29959	//       "type": "string"
29960	//     },
29961	//     "orderId": {
29962	//       "description": "The ID of the order.",
29963	//       "location": "path",
29964	//       "required": true,
29965	//       "type": "string"
29966	//     }
29967	//   },
29968	//   "path": "{merchantId}/orders/{orderId}/cancelLineItem",
29969	//   "request": {
29970	//     "$ref": "OrdersCancelLineItemRequest"
29971	//   },
29972	//   "response": {
29973	//     "$ref": "OrdersCancelLineItemResponse"
29974	//   },
29975	//   "scopes": [
29976	//     "https://www.googleapis.com/auth/content"
29977	//   ]
29978	// }
29979
29980}
29981
29982// method id "content.orders.canceltestorderbycustomer":
29983
29984type OrdersCanceltestorderbycustomerCall struct {
29985	s                                      *APIService
29986	merchantId                             uint64
29987	orderId                                string
29988	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
29989	urlParams_                             gensupport.URLParams
29990	ctx_                                   context.Context
29991	header_                                http.Header
29992}
29993
29994// Canceltestorderbycustomer: Sandbox only. Cancels a test order for
29995// customer-initiated cancellation.
29996//
29997// - merchantId: The ID of the account that manages the order. This
29998//   cannot be a multi-client account.
29999// - orderId: The ID of the test order to cancel.
30000func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
30001	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30002	c.merchantId = merchantId
30003	c.orderId = orderId
30004	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
30005	return c
30006}
30007
30008// Fields allows partial responses to be retrieved. See
30009// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30010// for more information.
30011func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
30012	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30013	return c
30014}
30015
30016// Context sets the context to be used in this call's Do method. Any
30017// pending HTTP request will be aborted if the provided context is
30018// canceled.
30019func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
30020	c.ctx_ = ctx
30021	return c
30022}
30023
30024// Header returns an http.Header that can be modified by the caller to
30025// add HTTP headers to the request.
30026func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
30027	if c.header_ == nil {
30028		c.header_ = make(http.Header)
30029	}
30030	return c.header_
30031}
30032
30033func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
30034	reqHeaders := make(http.Header)
30035	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30036	for k, v := range c.header_ {
30037		reqHeaders[k] = v
30038	}
30039	reqHeaders.Set("User-Agent", c.s.userAgent())
30040	var body io.Reader = nil
30041	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
30042	if err != nil {
30043		return nil, err
30044	}
30045	reqHeaders.Set("Content-Type", "application/json")
30046	c.urlParams_.Set("alt", alt)
30047	c.urlParams_.Set("prettyPrint", "false")
30048	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/cancelByCustomer")
30049	urls += "?" + c.urlParams_.Encode()
30050	req, err := http.NewRequest("POST", urls, body)
30051	if err != nil {
30052		return nil, err
30053	}
30054	req.Header = reqHeaders
30055	googleapi.Expand(req.URL, map[string]string{
30056		"merchantId": strconv.FormatUint(c.merchantId, 10),
30057		"orderId":    c.orderId,
30058	})
30059	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30060}
30061
30062// Do executes the "content.orders.canceltestorderbycustomer" call.
30063// Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
30064// be non-nil. Any non-2xx status code is an error. Response headers are
30065// in either
30066// *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
30067// a response was returned at all) in error.(*googleapi.Error).Header.
30068// Use googleapi.IsNotModified to check whether the returned error was
30069// because http.StatusNotModified was returned.
30070func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
30071	gensupport.SetOptions(c.urlParams_, opts...)
30072	res, err := c.doRequest("json")
30073	if res != nil && res.StatusCode == http.StatusNotModified {
30074		if res.Body != nil {
30075			res.Body.Close()
30076		}
30077		return nil, &googleapi.Error{
30078			Code:   res.StatusCode,
30079			Header: res.Header,
30080		}
30081	}
30082	if err != nil {
30083		return nil, err
30084	}
30085	defer googleapi.CloseBody(res)
30086	if err := googleapi.CheckResponse(res); err != nil {
30087		return nil, err
30088	}
30089	ret := &OrdersCancelTestOrderByCustomerResponse{
30090		ServerResponse: googleapi.ServerResponse{
30091			Header:         res.Header,
30092			HTTPStatusCode: res.StatusCode,
30093		},
30094	}
30095	target := &ret
30096	if err := gensupport.DecodeResponse(target, res); err != nil {
30097		return nil, err
30098	}
30099	return ret, nil
30100	// {
30101	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
30102	//   "flatPath": "{merchantId}/testorders/{orderId}/cancelByCustomer",
30103	//   "httpMethod": "POST",
30104	//   "id": "content.orders.canceltestorderbycustomer",
30105	//   "parameterOrder": [
30106	//     "merchantId",
30107	//     "orderId"
30108	//   ],
30109	//   "parameters": {
30110	//     "merchantId": {
30111	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30112	//       "format": "uint64",
30113	//       "location": "path",
30114	//       "required": true,
30115	//       "type": "string"
30116	//     },
30117	//     "orderId": {
30118	//       "description": "The ID of the test order to cancel.",
30119	//       "location": "path",
30120	//       "required": true,
30121	//       "type": "string"
30122	//     }
30123	//   },
30124	//   "path": "{merchantId}/testorders/{orderId}/cancelByCustomer",
30125	//   "request": {
30126	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
30127	//   },
30128	//   "response": {
30129	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
30130	//   },
30131	//   "scopes": [
30132	//     "https://www.googleapis.com/auth/content"
30133	//   ]
30134	// }
30135
30136}
30137
30138// method id "content.orders.createtestorder":
30139
30140type OrdersCreatetestorderCall struct {
30141	s                            *APIService
30142	merchantId                   uint64
30143	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
30144	urlParams_                   gensupport.URLParams
30145	ctx_                         context.Context
30146	header_                      http.Header
30147}
30148
30149// Createtestorder: Sandbox only. Creates a test order.
30150//
30151// - merchantId: The ID of the account that should manage the order.
30152//   This cannot be a multi-client account.
30153func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
30154	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30155	c.merchantId = merchantId
30156	c.orderscreatetestorderrequest = orderscreatetestorderrequest
30157	return c
30158}
30159
30160// Fields allows partial responses to be retrieved. See
30161// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30162// for more information.
30163func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
30164	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30165	return c
30166}
30167
30168// Context sets the context to be used in this call's Do method. Any
30169// pending HTTP request will be aborted if the provided context is
30170// canceled.
30171func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
30172	c.ctx_ = ctx
30173	return c
30174}
30175
30176// Header returns an http.Header that can be modified by the caller to
30177// add HTTP headers to the request.
30178func (c *OrdersCreatetestorderCall) Header() http.Header {
30179	if c.header_ == nil {
30180		c.header_ = make(http.Header)
30181	}
30182	return c.header_
30183}
30184
30185func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
30186	reqHeaders := make(http.Header)
30187	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30188	for k, v := range c.header_ {
30189		reqHeaders[k] = v
30190	}
30191	reqHeaders.Set("User-Agent", c.s.userAgent())
30192	var body io.Reader = nil
30193	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
30194	if err != nil {
30195		return nil, err
30196	}
30197	reqHeaders.Set("Content-Type", "application/json")
30198	c.urlParams_.Set("alt", alt)
30199	c.urlParams_.Set("prettyPrint", "false")
30200	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders")
30201	urls += "?" + c.urlParams_.Encode()
30202	req, err := http.NewRequest("POST", urls, body)
30203	if err != nil {
30204		return nil, err
30205	}
30206	req.Header = reqHeaders
30207	googleapi.Expand(req.URL, map[string]string{
30208		"merchantId": strconv.FormatUint(c.merchantId, 10),
30209	})
30210	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30211}
30212
30213// Do executes the "content.orders.createtestorder" call.
30214// Exactly one of *OrdersCreateTestOrderResponse or error will be
30215// non-nil. Any non-2xx status code is an error. Response headers are in
30216// either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
30217// response was returned at all) in error.(*googleapi.Error).Header. Use
30218// googleapi.IsNotModified to check whether the returned error was
30219// because http.StatusNotModified was returned.
30220func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
30221	gensupport.SetOptions(c.urlParams_, opts...)
30222	res, err := c.doRequest("json")
30223	if res != nil && res.StatusCode == http.StatusNotModified {
30224		if res.Body != nil {
30225			res.Body.Close()
30226		}
30227		return nil, &googleapi.Error{
30228			Code:   res.StatusCode,
30229			Header: res.Header,
30230		}
30231	}
30232	if err != nil {
30233		return nil, err
30234	}
30235	defer googleapi.CloseBody(res)
30236	if err := googleapi.CheckResponse(res); err != nil {
30237		return nil, err
30238	}
30239	ret := &OrdersCreateTestOrderResponse{
30240		ServerResponse: googleapi.ServerResponse{
30241			Header:         res.Header,
30242			HTTPStatusCode: res.StatusCode,
30243		},
30244	}
30245	target := &ret
30246	if err := gensupport.DecodeResponse(target, res); err != nil {
30247		return nil, err
30248	}
30249	return ret, nil
30250	// {
30251	//   "description": "Sandbox only. Creates a test order.",
30252	//   "flatPath": "{merchantId}/testorders",
30253	//   "httpMethod": "POST",
30254	//   "id": "content.orders.createtestorder",
30255	//   "parameterOrder": [
30256	//     "merchantId"
30257	//   ],
30258	//   "parameters": {
30259	//     "merchantId": {
30260	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
30261	//       "format": "uint64",
30262	//       "location": "path",
30263	//       "required": true,
30264	//       "type": "string"
30265	//     }
30266	//   },
30267	//   "path": "{merchantId}/testorders",
30268	//   "request": {
30269	//     "$ref": "OrdersCreateTestOrderRequest"
30270	//   },
30271	//   "response": {
30272	//     "$ref": "OrdersCreateTestOrderResponse"
30273	//   },
30274	//   "scopes": [
30275	//     "https://www.googleapis.com/auth/content"
30276	//   ]
30277	// }
30278
30279}
30280
30281// method id "content.orders.createtestreturn":
30282
30283type OrdersCreatetestreturnCall struct {
30284	s                             *APIService
30285	merchantId                    uint64
30286	orderId                       string
30287	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
30288	urlParams_                    gensupport.URLParams
30289	ctx_                          context.Context
30290	header_                       http.Header
30291}
30292
30293// Createtestreturn: Sandbox only. Creates a test return.
30294//
30295// - merchantId: The ID of the account that manages the order. This
30296//   cannot be a multi-client account.
30297// - orderId: The ID of the order.
30298func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
30299	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30300	c.merchantId = merchantId
30301	c.orderId = orderId
30302	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
30303	return c
30304}
30305
30306// Fields allows partial responses to be retrieved. See
30307// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30308// for more information.
30309func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
30310	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30311	return c
30312}
30313
30314// Context sets the context to be used in this call's Do method. Any
30315// pending HTTP request will be aborted if the provided context is
30316// canceled.
30317func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
30318	c.ctx_ = ctx
30319	return c
30320}
30321
30322// Header returns an http.Header that can be modified by the caller to
30323// add HTTP headers to the request.
30324func (c *OrdersCreatetestreturnCall) Header() http.Header {
30325	if c.header_ == nil {
30326		c.header_ = make(http.Header)
30327	}
30328	return c.header_
30329}
30330
30331func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
30332	reqHeaders := make(http.Header)
30333	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30334	for k, v := range c.header_ {
30335		reqHeaders[k] = v
30336	}
30337	reqHeaders.Set("User-Agent", c.s.userAgent())
30338	var body io.Reader = nil
30339	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
30340	if err != nil {
30341		return nil, err
30342	}
30343	reqHeaders.Set("Content-Type", "application/json")
30344	c.urlParams_.Set("alt", alt)
30345	c.urlParams_.Set("prettyPrint", "false")
30346	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/testreturn")
30347	urls += "?" + c.urlParams_.Encode()
30348	req, err := http.NewRequest("POST", urls, body)
30349	if err != nil {
30350		return nil, err
30351	}
30352	req.Header = reqHeaders
30353	googleapi.Expand(req.URL, map[string]string{
30354		"merchantId": strconv.FormatUint(c.merchantId, 10),
30355		"orderId":    c.orderId,
30356	})
30357	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30358}
30359
30360// Do executes the "content.orders.createtestreturn" call.
30361// Exactly one of *OrdersCreateTestReturnResponse or error will be
30362// non-nil. Any non-2xx status code is an error. Response headers are in
30363// either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
30364// response was returned at all) in error.(*googleapi.Error).Header. Use
30365// googleapi.IsNotModified to check whether the returned error was
30366// because http.StatusNotModified was returned.
30367func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
30368	gensupport.SetOptions(c.urlParams_, opts...)
30369	res, err := c.doRequest("json")
30370	if res != nil && res.StatusCode == http.StatusNotModified {
30371		if res.Body != nil {
30372			res.Body.Close()
30373		}
30374		return nil, &googleapi.Error{
30375			Code:   res.StatusCode,
30376			Header: res.Header,
30377		}
30378	}
30379	if err != nil {
30380		return nil, err
30381	}
30382	defer googleapi.CloseBody(res)
30383	if err := googleapi.CheckResponse(res); err != nil {
30384		return nil, err
30385	}
30386	ret := &OrdersCreateTestReturnResponse{
30387		ServerResponse: googleapi.ServerResponse{
30388			Header:         res.Header,
30389			HTTPStatusCode: res.StatusCode,
30390		},
30391	}
30392	target := &ret
30393	if err := gensupport.DecodeResponse(target, res); err != nil {
30394		return nil, err
30395	}
30396	return ret, nil
30397	// {
30398	//   "description": "Sandbox only. Creates a test return.",
30399	//   "flatPath": "{merchantId}/orders/{orderId}/testreturn",
30400	//   "httpMethod": "POST",
30401	//   "id": "content.orders.createtestreturn",
30402	//   "parameterOrder": [
30403	//     "merchantId",
30404	//     "orderId"
30405	//   ],
30406	//   "parameters": {
30407	//     "merchantId": {
30408	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30409	//       "format": "uint64",
30410	//       "location": "path",
30411	//       "required": true,
30412	//       "type": "string"
30413	//     },
30414	//     "orderId": {
30415	//       "description": "The ID of the order.",
30416	//       "location": "path",
30417	//       "required": true,
30418	//       "type": "string"
30419	//     }
30420	//   },
30421	//   "path": "{merchantId}/orders/{orderId}/testreturn",
30422	//   "request": {
30423	//     "$ref": "OrdersCreateTestReturnRequest"
30424	//   },
30425	//   "response": {
30426	//     "$ref": "OrdersCreateTestReturnResponse"
30427	//   },
30428	//   "scopes": [
30429	//     "https://www.googleapis.com/auth/content"
30430	//   ]
30431	// }
30432
30433}
30434
30435// method id "content.orders.get":
30436
30437type OrdersGetCall struct {
30438	s            *APIService
30439	merchantId   uint64
30440	orderId      string
30441	urlParams_   gensupport.URLParams
30442	ifNoneMatch_ string
30443	ctx_         context.Context
30444	header_      http.Header
30445}
30446
30447// Get: Retrieves an order from your Merchant Center account.
30448//
30449// - merchantId: The ID of the account that manages the order. This
30450//   cannot be a multi-client account.
30451// - orderId: The ID of the order.
30452func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
30453	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30454	c.merchantId = merchantId
30455	c.orderId = orderId
30456	return c
30457}
30458
30459// Fields allows partial responses to be retrieved. See
30460// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30461// for more information.
30462func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
30463	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30464	return c
30465}
30466
30467// IfNoneMatch sets the optional parameter which makes the operation
30468// fail if the object's ETag matches the given value. This is useful for
30469// getting updates only after the object has changed since the last
30470// request. Use googleapi.IsNotModified to check whether the response
30471// error from Do is the result of In-None-Match.
30472func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
30473	c.ifNoneMatch_ = entityTag
30474	return c
30475}
30476
30477// Context sets the context to be used in this call's Do method. Any
30478// pending HTTP request will be aborted if the provided context is
30479// canceled.
30480func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
30481	c.ctx_ = ctx
30482	return c
30483}
30484
30485// Header returns an http.Header that can be modified by the caller to
30486// add HTTP headers to the request.
30487func (c *OrdersGetCall) Header() http.Header {
30488	if c.header_ == nil {
30489		c.header_ = make(http.Header)
30490	}
30491	return c.header_
30492}
30493
30494func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
30495	reqHeaders := make(http.Header)
30496	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30497	for k, v := range c.header_ {
30498		reqHeaders[k] = v
30499	}
30500	reqHeaders.Set("User-Agent", c.s.userAgent())
30501	if c.ifNoneMatch_ != "" {
30502		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30503	}
30504	var body io.Reader = nil
30505	c.urlParams_.Set("alt", alt)
30506	c.urlParams_.Set("prettyPrint", "false")
30507	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}")
30508	urls += "?" + c.urlParams_.Encode()
30509	req, err := http.NewRequest("GET", urls, body)
30510	if err != nil {
30511		return nil, err
30512	}
30513	req.Header = reqHeaders
30514	googleapi.Expand(req.URL, map[string]string{
30515		"merchantId": strconv.FormatUint(c.merchantId, 10),
30516		"orderId":    c.orderId,
30517	})
30518	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30519}
30520
30521// Do executes the "content.orders.get" call.
30522// Exactly one of *Order or error will be non-nil. Any non-2xx status
30523// code is an error. Response headers are in either
30524// *Order.ServerResponse.Header or (if a response was returned at all)
30525// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
30526// check whether the returned error was because http.StatusNotModified
30527// was returned.
30528func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
30529	gensupport.SetOptions(c.urlParams_, opts...)
30530	res, err := c.doRequest("json")
30531	if res != nil && res.StatusCode == http.StatusNotModified {
30532		if res.Body != nil {
30533			res.Body.Close()
30534		}
30535		return nil, &googleapi.Error{
30536			Code:   res.StatusCode,
30537			Header: res.Header,
30538		}
30539	}
30540	if err != nil {
30541		return nil, err
30542	}
30543	defer googleapi.CloseBody(res)
30544	if err := googleapi.CheckResponse(res); err != nil {
30545		return nil, err
30546	}
30547	ret := &Order{
30548		ServerResponse: googleapi.ServerResponse{
30549			Header:         res.Header,
30550			HTTPStatusCode: res.StatusCode,
30551		},
30552	}
30553	target := &ret
30554	if err := gensupport.DecodeResponse(target, res); err != nil {
30555		return nil, err
30556	}
30557	return ret, nil
30558	// {
30559	//   "description": "Retrieves an order from your Merchant Center account.",
30560	//   "flatPath": "{merchantId}/orders/{orderId}",
30561	//   "httpMethod": "GET",
30562	//   "id": "content.orders.get",
30563	//   "parameterOrder": [
30564	//     "merchantId",
30565	//     "orderId"
30566	//   ],
30567	//   "parameters": {
30568	//     "merchantId": {
30569	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30570	//       "format": "uint64",
30571	//       "location": "path",
30572	//       "required": true,
30573	//       "type": "string"
30574	//     },
30575	//     "orderId": {
30576	//       "description": "The ID of the order.",
30577	//       "location": "path",
30578	//       "required": true,
30579	//       "type": "string"
30580	//     }
30581	//   },
30582	//   "path": "{merchantId}/orders/{orderId}",
30583	//   "response": {
30584	//     "$ref": "Order"
30585	//   },
30586	//   "scopes": [
30587	//     "https://www.googleapis.com/auth/content"
30588	//   ]
30589	// }
30590
30591}
30592
30593// method id "content.orders.getbymerchantorderid":
30594
30595type OrdersGetbymerchantorderidCall struct {
30596	s               *APIService
30597	merchantId      uint64
30598	merchantOrderId string
30599	urlParams_      gensupport.URLParams
30600	ifNoneMatch_    string
30601	ctx_            context.Context
30602	header_         http.Header
30603}
30604
30605// Getbymerchantorderid: Retrieves an order using merchant order ID.
30606//
30607// - merchantId: The ID of the account that manages the order. This
30608//   cannot be a multi-client account.
30609// - merchantOrderId: The merchant order ID to be looked for.
30610func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
30611	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30612	c.merchantId = merchantId
30613	c.merchantOrderId = merchantOrderId
30614	return c
30615}
30616
30617// Fields allows partial responses to be retrieved. See
30618// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30619// for more information.
30620func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
30621	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30622	return c
30623}
30624
30625// IfNoneMatch sets the optional parameter which makes the operation
30626// fail if the object's ETag matches the given value. This is useful for
30627// getting updates only after the object has changed since the last
30628// request. Use googleapi.IsNotModified to check whether the response
30629// error from Do is the result of In-None-Match.
30630func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
30631	c.ifNoneMatch_ = entityTag
30632	return c
30633}
30634
30635// Context sets the context to be used in this call's Do method. Any
30636// pending HTTP request will be aborted if the provided context is
30637// canceled.
30638func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
30639	c.ctx_ = ctx
30640	return c
30641}
30642
30643// Header returns an http.Header that can be modified by the caller to
30644// add HTTP headers to the request.
30645func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
30646	if c.header_ == nil {
30647		c.header_ = make(http.Header)
30648	}
30649	return c.header_
30650}
30651
30652func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
30653	reqHeaders := make(http.Header)
30654	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30655	for k, v := range c.header_ {
30656		reqHeaders[k] = v
30657	}
30658	reqHeaders.Set("User-Agent", c.s.userAgent())
30659	if c.ifNoneMatch_ != "" {
30660		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30661	}
30662	var body io.Reader = nil
30663	c.urlParams_.Set("alt", alt)
30664	c.urlParams_.Set("prettyPrint", "false")
30665	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordersbymerchantid/{merchantOrderId}")
30666	urls += "?" + c.urlParams_.Encode()
30667	req, err := http.NewRequest("GET", urls, body)
30668	if err != nil {
30669		return nil, err
30670	}
30671	req.Header = reqHeaders
30672	googleapi.Expand(req.URL, map[string]string{
30673		"merchantId":      strconv.FormatUint(c.merchantId, 10),
30674		"merchantOrderId": c.merchantOrderId,
30675	})
30676	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30677}
30678
30679// Do executes the "content.orders.getbymerchantorderid" call.
30680// Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
30681// non-nil. Any non-2xx status code is an error. Response headers are in
30682// either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
30683// (if a response was returned at all) in
30684// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30685// whether the returned error was because http.StatusNotModified was
30686// returned.
30687func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
30688	gensupport.SetOptions(c.urlParams_, opts...)
30689	res, err := c.doRequest("json")
30690	if res != nil && res.StatusCode == http.StatusNotModified {
30691		if res.Body != nil {
30692			res.Body.Close()
30693		}
30694		return nil, &googleapi.Error{
30695			Code:   res.StatusCode,
30696			Header: res.Header,
30697		}
30698	}
30699	if err != nil {
30700		return nil, err
30701	}
30702	defer googleapi.CloseBody(res)
30703	if err := googleapi.CheckResponse(res); err != nil {
30704		return nil, err
30705	}
30706	ret := &OrdersGetByMerchantOrderIdResponse{
30707		ServerResponse: googleapi.ServerResponse{
30708			Header:         res.Header,
30709			HTTPStatusCode: res.StatusCode,
30710		},
30711	}
30712	target := &ret
30713	if err := gensupport.DecodeResponse(target, res); err != nil {
30714		return nil, err
30715	}
30716	return ret, nil
30717	// {
30718	//   "description": "Retrieves an order using merchant order ID.",
30719	//   "flatPath": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
30720	//   "httpMethod": "GET",
30721	//   "id": "content.orders.getbymerchantorderid",
30722	//   "parameterOrder": [
30723	//     "merchantId",
30724	//     "merchantOrderId"
30725	//   ],
30726	//   "parameters": {
30727	//     "merchantId": {
30728	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30729	//       "format": "uint64",
30730	//       "location": "path",
30731	//       "required": true,
30732	//       "type": "string"
30733	//     },
30734	//     "merchantOrderId": {
30735	//       "description": "The merchant order ID to be looked for.",
30736	//       "location": "path",
30737	//       "required": true,
30738	//       "type": "string"
30739	//     }
30740	//   },
30741	//   "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
30742	//   "response": {
30743	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
30744	//   },
30745	//   "scopes": [
30746	//     "https://www.googleapis.com/auth/content"
30747	//   ]
30748	// }
30749
30750}
30751
30752// method id "content.orders.gettestordertemplate":
30753
30754type OrdersGettestordertemplateCall struct {
30755	s            *APIService
30756	merchantId   uint64
30757	templateName string
30758	urlParams_   gensupport.URLParams
30759	ifNoneMatch_ string
30760	ctx_         context.Context
30761	header_      http.Header
30762}
30763
30764// Gettestordertemplate: Sandbox only. Retrieves an order template that
30765// can be used to quickly create a new order in sandbox.
30766//
30767// - merchantId: The ID of the account that should manage the order.
30768//   This cannot be a multi-client account.
30769// - templateName: The name of the template to retrieve.
30770func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
30771	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30772	c.merchantId = merchantId
30773	c.templateName = templateName
30774	return c
30775}
30776
30777// Country sets the optional parameter "country": The country of the
30778// template to retrieve. Defaults to `US`.
30779func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
30780	c.urlParams_.Set("country", country)
30781	return c
30782}
30783
30784// Fields allows partial responses to be retrieved. See
30785// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30786// for more information.
30787func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
30788	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30789	return c
30790}
30791
30792// IfNoneMatch sets the optional parameter which makes the operation
30793// fail if the object's ETag matches the given value. This is useful for
30794// getting updates only after the object has changed since the last
30795// request. Use googleapi.IsNotModified to check whether the response
30796// error from Do is the result of In-None-Match.
30797func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
30798	c.ifNoneMatch_ = entityTag
30799	return c
30800}
30801
30802// Context sets the context to be used in this call's Do method. Any
30803// pending HTTP request will be aborted if the provided context is
30804// canceled.
30805func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
30806	c.ctx_ = ctx
30807	return c
30808}
30809
30810// Header returns an http.Header that can be modified by the caller to
30811// add HTTP headers to the request.
30812func (c *OrdersGettestordertemplateCall) Header() http.Header {
30813	if c.header_ == nil {
30814		c.header_ = make(http.Header)
30815	}
30816	return c.header_
30817}
30818
30819func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
30820	reqHeaders := make(http.Header)
30821	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
30822	for k, v := range c.header_ {
30823		reqHeaders[k] = v
30824	}
30825	reqHeaders.Set("User-Agent", c.s.userAgent())
30826	if c.ifNoneMatch_ != "" {
30827		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30828	}
30829	var body io.Reader = nil
30830	c.urlParams_.Set("alt", alt)
30831	c.urlParams_.Set("prettyPrint", "false")
30832	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testordertemplates/{templateName}")
30833	urls += "?" + c.urlParams_.Encode()
30834	req, err := http.NewRequest("GET", urls, body)
30835	if err != nil {
30836		return nil, err
30837	}
30838	req.Header = reqHeaders
30839	googleapi.Expand(req.URL, map[string]string{
30840		"merchantId":   strconv.FormatUint(c.merchantId, 10),
30841		"templateName": c.templateName,
30842	})
30843	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30844}
30845
30846// Do executes the "content.orders.gettestordertemplate" call.
30847// Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
30848// non-nil. Any non-2xx status code is an error. Response headers are in
30849// either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
30850// (if a response was returned at all) in
30851// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30852// whether the returned error was because http.StatusNotModified was
30853// returned.
30854func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
30855	gensupport.SetOptions(c.urlParams_, opts...)
30856	res, err := c.doRequest("json")
30857	if res != nil && res.StatusCode == http.StatusNotModified {
30858		if res.Body != nil {
30859			res.Body.Close()
30860		}
30861		return nil, &googleapi.Error{
30862			Code:   res.StatusCode,
30863			Header: res.Header,
30864		}
30865	}
30866	if err != nil {
30867		return nil, err
30868	}
30869	defer googleapi.CloseBody(res)
30870	if err := googleapi.CheckResponse(res); err != nil {
30871		return nil, err
30872	}
30873	ret := &OrdersGetTestOrderTemplateResponse{
30874		ServerResponse: googleapi.ServerResponse{
30875			Header:         res.Header,
30876			HTTPStatusCode: res.StatusCode,
30877		},
30878	}
30879	target := &ret
30880	if err := gensupport.DecodeResponse(target, res); err != nil {
30881		return nil, err
30882	}
30883	return ret, nil
30884	// {
30885	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
30886	//   "flatPath": "{merchantId}/testordertemplates/{templateName}",
30887	//   "httpMethod": "GET",
30888	//   "id": "content.orders.gettestordertemplate",
30889	//   "parameterOrder": [
30890	//     "merchantId",
30891	//     "templateName"
30892	//   ],
30893	//   "parameters": {
30894	//     "country": {
30895	//       "description": "The country of the template to retrieve. Defaults to `US`.",
30896	//       "location": "query",
30897	//       "type": "string"
30898	//     },
30899	//     "merchantId": {
30900	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
30901	//       "format": "uint64",
30902	//       "location": "path",
30903	//       "required": true,
30904	//       "type": "string"
30905	//     },
30906	//     "templateName": {
30907	//       "description": "The name of the template to retrieve.",
30908	//       "enum": [
30909	//         "TEMPLATE1",
30910	//         "TEMPLATE2",
30911	//         "TEMPLATE1A",
30912	//         "TEMPLATE1B",
30913	//         "TEMPLATE3",
30914	//         "TEMPLATE4"
30915	//       ],
30916	//       "enumDescriptions": [
30917	//         "Get `template1`.",
30918	//         "Get `template2`.",
30919	//         "Get `template1A`.",
30920	//         "Get `template1B`.",
30921	//         "Get `template3`.",
30922	//         "Get `template4`."
30923	//       ],
30924	//       "location": "path",
30925	//       "required": true,
30926	//       "type": "string"
30927	//     }
30928	//   },
30929	//   "path": "{merchantId}/testordertemplates/{templateName}",
30930	//   "response": {
30931	//     "$ref": "OrdersGetTestOrderTemplateResponse"
30932	//   },
30933	//   "scopes": [
30934	//     "https://www.googleapis.com/auth/content"
30935	//   ]
30936	// }
30937
30938}
30939
30940// method id "content.orders.instorerefundlineitem":
30941
30942type OrdersInstorerefundlineitemCall struct {
30943	s                                  *APIService
30944	merchantId                         uint64
30945	orderId                            string
30946	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
30947	urlParams_                         gensupport.URLParams
30948	ctx_                               context.Context
30949	header_                            http.Header
30950}
30951
30952// Instorerefundlineitem: Deprecated. Notifies that item return and
30953// refund was handled directly by merchant outside of Google payments
30954// processing (e.g. cash refund done in store). Note: We recommend
30955// calling the returnrefundlineitem method to refund in-store returns.
30956// We will issue the refund directly to the customer. This helps to
30957// prevent possible differences arising between merchant and Google
30958// transaction records. We also recommend having the point of sale
30959// system communicate with Google to ensure that customers do not
30960// receive a double refund by first refunding via Google then via an
30961// in-store return.
30962//
30963// - merchantId: The ID of the account that manages the order. This
30964//   cannot be a multi-client account.
30965// - orderId: The ID of the order.
30966func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
30967	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30968	c.merchantId = merchantId
30969	c.orderId = orderId
30970	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
30971	return c
30972}
30973
30974// Fields allows partial responses to be retrieved. See
30975// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30976// for more information.
30977func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
30978	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30979	return c
30980}
30981
30982// Context sets the context to be used in this call's Do method. Any
30983// pending HTTP request will be aborted if the provided context is
30984// canceled.
30985func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
30986	c.ctx_ = ctx
30987	return c
30988}
30989
30990// Header returns an http.Header that can be modified by the caller to
30991// add HTTP headers to the request.
30992func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
30993	if c.header_ == nil {
30994		c.header_ = make(http.Header)
30995	}
30996	return c.header_
30997}
30998
30999func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
31000	reqHeaders := make(http.Header)
31001	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31002	for k, v := range c.header_ {
31003		reqHeaders[k] = v
31004	}
31005	reqHeaders.Set("User-Agent", c.s.userAgent())
31006	var body io.Reader = nil
31007	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
31008	if err != nil {
31009		return nil, err
31010	}
31011	reqHeaders.Set("Content-Type", "application/json")
31012	c.urlParams_.Set("alt", alt)
31013	c.urlParams_.Set("prettyPrint", "false")
31014	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/inStoreRefundLineItem")
31015	urls += "?" + c.urlParams_.Encode()
31016	req, err := http.NewRequest("POST", urls, body)
31017	if err != nil {
31018		return nil, err
31019	}
31020	req.Header = reqHeaders
31021	googleapi.Expand(req.URL, map[string]string{
31022		"merchantId": strconv.FormatUint(c.merchantId, 10),
31023		"orderId":    c.orderId,
31024	})
31025	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31026}
31027
31028// Do executes the "content.orders.instorerefundlineitem" call.
31029// Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
31030// non-nil. Any non-2xx status code is an error. Response headers are in
31031// either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
31032// (if a response was returned at all) in
31033// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31034// whether the returned error was because http.StatusNotModified was
31035// returned.
31036func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, error) {
31037	gensupport.SetOptions(c.urlParams_, opts...)
31038	res, err := c.doRequest("json")
31039	if res != nil && res.StatusCode == http.StatusNotModified {
31040		if res.Body != nil {
31041			res.Body.Close()
31042		}
31043		return nil, &googleapi.Error{
31044			Code:   res.StatusCode,
31045			Header: res.Header,
31046		}
31047	}
31048	if err != nil {
31049		return nil, err
31050	}
31051	defer googleapi.CloseBody(res)
31052	if err := googleapi.CheckResponse(res); err != nil {
31053		return nil, err
31054	}
31055	ret := &OrdersInStoreRefundLineItemResponse{
31056		ServerResponse: googleapi.ServerResponse{
31057			Header:         res.Header,
31058			HTTPStatusCode: res.StatusCode,
31059		},
31060	}
31061	target := &ret
31062	if err := gensupport.DecodeResponse(target, res); err != nil {
31063		return nil, err
31064	}
31065	return ret, nil
31066	// {
31067	//   "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.",
31068	//   "flatPath": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
31069	//   "httpMethod": "POST",
31070	//   "id": "content.orders.instorerefundlineitem",
31071	//   "parameterOrder": [
31072	//     "merchantId",
31073	//     "orderId"
31074	//   ],
31075	//   "parameters": {
31076	//     "merchantId": {
31077	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31078	//       "format": "uint64",
31079	//       "location": "path",
31080	//       "required": true,
31081	//       "type": "string"
31082	//     },
31083	//     "orderId": {
31084	//       "description": "The ID of the order.",
31085	//       "location": "path",
31086	//       "required": true,
31087	//       "type": "string"
31088	//     }
31089	//   },
31090	//   "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
31091	//   "request": {
31092	//     "$ref": "OrdersInStoreRefundLineItemRequest"
31093	//   },
31094	//   "response": {
31095	//     "$ref": "OrdersInStoreRefundLineItemResponse"
31096	//   },
31097	//   "scopes": [
31098	//     "https://www.googleapis.com/auth/content"
31099	//   ]
31100	// }
31101
31102}
31103
31104// method id "content.orders.list":
31105
31106type OrdersListCall struct {
31107	s            *APIService
31108	merchantId   uint64
31109	urlParams_   gensupport.URLParams
31110	ifNoneMatch_ string
31111	ctx_         context.Context
31112	header_      http.Header
31113}
31114
31115// List: Lists the orders in your Merchant Center account.
31116//
31117// - merchantId: The ID of the account that manages the order. This
31118//   cannot be a multi-client account.
31119func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
31120	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31121	c.merchantId = merchantId
31122	return c
31123}
31124
31125// Acknowledged sets the optional parameter "acknowledged": Obtains
31126// orders that match the acknowledgement status. When set to true,
31127// obtains orders that have been acknowledged. When false, obtains
31128// orders that have not been acknowledged. We recommend using this
31129// filter set to `false`, in conjunction with the `acknowledge` call,
31130// such that only un-acknowledged orders are returned.
31131func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
31132	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
31133	return c
31134}
31135
31136// MaxResults sets the optional parameter "maxResults": The maximum
31137// number of orders to return in the response, used for paging. The
31138// default value is 25 orders per page, and the maximum allowed value is
31139// 250 orders per page.
31140func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
31141	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
31142	return c
31143}
31144
31145// OrderBy sets the optional parameter "orderBy": Order results by
31146// placement date in descending or ascending order. Acceptable values
31147// are: - placedDateAsc - placedDateDesc
31148func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
31149	c.urlParams_.Set("orderBy", orderBy)
31150	return c
31151}
31152
31153// PageToken sets the optional parameter "pageToken": The token returned
31154// by the previous request.
31155func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
31156	c.urlParams_.Set("pageToken", pageToken)
31157	return c
31158}
31159
31160// PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
31161// orders placed before this date (exclusively), in ISO 8601 format.
31162func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
31163	c.urlParams_.Set("placedDateEnd", placedDateEnd)
31164	return c
31165}
31166
31167// PlacedDateStart sets the optional parameter "placedDateStart":
31168// Obtains orders placed after this date (inclusively), in ISO 8601
31169// format.
31170func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
31171	c.urlParams_.Set("placedDateStart", placedDateStart)
31172	return c
31173}
31174
31175// Statuses sets the optional parameter "statuses": Obtains orders that
31176// match any of the specified statuses. Please note that `active` is a
31177// shortcut for `pendingShipment` and `partiallyShipped`, and
31178// `completed` is a shortcut for `shipped`, `partiallyDelivered`,
31179// `delivered`, `partiallyReturned`, `returned`, and `canceled`.
31180//
31181// Possible values:
31182//   "ACTIVE" - Return orders with status `active`. The `active` status
31183// includes `pendingShipment` and `partiallyShipped` orders.
31184//   "COMPLETED" - Return orders with status `completed`. The
31185// `completed` status includes `shipped`, `partiallyDelivered`,
31186// `delivered`, `partiallyReturned`, `returned`, and `canceled` orders.
31187//   "CANCELED" - Return orders with status `canceled`.
31188//   "IN_PROGRESS" - Return orders with status `inProgress`.
31189//   "PENDING_SHIPMENT" - Return orders with status `pendingShipment`.
31190//   "PARTIALLY_SHIPPED" - Return orders with status `partiallyShipped`.
31191//   "SHIPPED" - Return orders with status `shipped`.
31192//   "PARTIALLY_DELIVERED" - Return orders with status
31193// `partiallyDelivered`.
31194//   "DELIVERED" - Return orders with status `delivered`.
31195//   "PARTIALLY_RETURNED" - Return orders with status
31196// `partiallyReturned`.
31197//   "RETURNED" - Return orders with status `returned`.
31198func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
31199	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
31200	return c
31201}
31202
31203// Fields allows partial responses to be retrieved. See
31204// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31205// for more information.
31206func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
31207	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31208	return c
31209}
31210
31211// IfNoneMatch sets the optional parameter which makes the operation
31212// fail if the object's ETag matches the given value. This is useful for
31213// getting updates only after the object has changed since the last
31214// request. Use googleapi.IsNotModified to check whether the response
31215// error from Do is the result of In-None-Match.
31216func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
31217	c.ifNoneMatch_ = entityTag
31218	return c
31219}
31220
31221// Context sets the context to be used in this call's Do method. Any
31222// pending HTTP request will be aborted if the provided context is
31223// canceled.
31224func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
31225	c.ctx_ = ctx
31226	return c
31227}
31228
31229// Header returns an http.Header that can be modified by the caller to
31230// add HTTP headers to the request.
31231func (c *OrdersListCall) Header() http.Header {
31232	if c.header_ == nil {
31233		c.header_ = make(http.Header)
31234	}
31235	return c.header_
31236}
31237
31238func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
31239	reqHeaders := make(http.Header)
31240	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31241	for k, v := range c.header_ {
31242		reqHeaders[k] = v
31243	}
31244	reqHeaders.Set("User-Agent", c.s.userAgent())
31245	if c.ifNoneMatch_ != "" {
31246		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31247	}
31248	var body io.Reader = nil
31249	c.urlParams_.Set("alt", alt)
31250	c.urlParams_.Set("prettyPrint", "false")
31251	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders")
31252	urls += "?" + c.urlParams_.Encode()
31253	req, err := http.NewRequest("GET", urls, body)
31254	if err != nil {
31255		return nil, err
31256	}
31257	req.Header = reqHeaders
31258	googleapi.Expand(req.URL, map[string]string{
31259		"merchantId": strconv.FormatUint(c.merchantId, 10),
31260	})
31261	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31262}
31263
31264// Do executes the "content.orders.list" call.
31265// Exactly one of *OrdersListResponse or error will be non-nil. Any
31266// non-2xx status code is an error. Response headers are in either
31267// *OrdersListResponse.ServerResponse.Header or (if a response was
31268// returned at all) in error.(*googleapi.Error).Header. Use
31269// googleapi.IsNotModified to check whether the returned error was
31270// because http.StatusNotModified was returned.
31271func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
31272	gensupport.SetOptions(c.urlParams_, opts...)
31273	res, err := c.doRequest("json")
31274	if res != nil && res.StatusCode == http.StatusNotModified {
31275		if res.Body != nil {
31276			res.Body.Close()
31277		}
31278		return nil, &googleapi.Error{
31279			Code:   res.StatusCode,
31280			Header: res.Header,
31281		}
31282	}
31283	if err != nil {
31284		return nil, err
31285	}
31286	defer googleapi.CloseBody(res)
31287	if err := googleapi.CheckResponse(res); err != nil {
31288		return nil, err
31289	}
31290	ret := &OrdersListResponse{
31291		ServerResponse: googleapi.ServerResponse{
31292			Header:         res.Header,
31293			HTTPStatusCode: res.StatusCode,
31294		},
31295	}
31296	target := &ret
31297	if err := gensupport.DecodeResponse(target, res); err != nil {
31298		return nil, err
31299	}
31300	return ret, nil
31301	// {
31302	//   "description": "Lists the orders in your Merchant Center account.",
31303	//   "flatPath": "{merchantId}/orders",
31304	//   "httpMethod": "GET",
31305	//   "id": "content.orders.list",
31306	//   "parameterOrder": [
31307	//     "merchantId"
31308	//   ],
31309	//   "parameters": {
31310	//     "acknowledged": {
31311	//       "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. ",
31312	//       "location": "query",
31313	//       "type": "boolean"
31314	//     },
31315	//     "maxResults": {
31316	//       "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.",
31317	//       "format": "uint32",
31318	//       "location": "query",
31319	//       "type": "integer"
31320	//     },
31321	//     "merchantId": {
31322	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31323	//       "format": "uint64",
31324	//       "location": "path",
31325	//       "required": true,
31326	//       "type": "string"
31327	//     },
31328	//     "orderBy": {
31329	//       "description": "Order results by placement date in descending or ascending order. Acceptable values are: - placedDateAsc - placedDateDesc ",
31330	//       "location": "query",
31331	//       "type": "string"
31332	//     },
31333	//     "pageToken": {
31334	//       "description": "The token returned by the previous request.",
31335	//       "location": "query",
31336	//       "type": "string"
31337	//     },
31338	//     "placedDateEnd": {
31339	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
31340	//       "location": "query",
31341	//       "type": "string"
31342	//     },
31343	//     "placedDateStart": {
31344	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
31345	//       "location": "query",
31346	//       "type": "string"
31347	//     },
31348	//     "statuses": {
31349	//       "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`.",
31350	//       "enum": [
31351	//         "ACTIVE",
31352	//         "COMPLETED",
31353	//         "CANCELED",
31354	//         "IN_PROGRESS",
31355	//         "PENDING_SHIPMENT",
31356	//         "PARTIALLY_SHIPPED",
31357	//         "SHIPPED",
31358	//         "PARTIALLY_DELIVERED",
31359	//         "DELIVERED",
31360	//         "PARTIALLY_RETURNED",
31361	//         "RETURNED"
31362	//       ],
31363	//       "enumDescriptions": [
31364	//         "Return orders with status `active`. The `active` status includes `pendingShipment` and `partiallyShipped` orders.",
31365	//         "Return orders with status `completed`. The `completed` status includes `shipped`, `partiallyDelivered`, `delivered`, `partiallyReturned`, `returned`, and `canceled` orders.",
31366	//         "Return orders with status `canceled`.",
31367	//         "Return orders with status `inProgress`.",
31368	//         "Return orders with status `pendingShipment`.",
31369	//         "Return orders with status `partiallyShipped`.",
31370	//         "Return orders with status `shipped`.",
31371	//         "Return orders with status `partiallyDelivered`.",
31372	//         "Return orders with status `delivered`.",
31373	//         "Return orders with status `partiallyReturned`.",
31374	//         "Return orders with status `returned`."
31375	//       ],
31376	//       "location": "query",
31377	//       "repeated": true,
31378	//       "type": "string"
31379	//     }
31380	//   },
31381	//   "path": "{merchantId}/orders",
31382	//   "response": {
31383	//     "$ref": "OrdersListResponse"
31384	//   },
31385	//   "scopes": [
31386	//     "https://www.googleapis.com/auth/content"
31387	//   ]
31388	// }
31389
31390}
31391
31392// Pages invokes f for each page of results.
31393// A non-nil error returned from f will halt the iteration.
31394// The provided context supersedes any context provided to the Context method.
31395func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
31396	c.ctx_ = ctx
31397	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
31398	for {
31399		x, err := c.Do()
31400		if err != nil {
31401			return err
31402		}
31403		if err := f(x); err != nil {
31404			return err
31405		}
31406		if x.NextPageToken == "" {
31407			return nil
31408		}
31409		c.PageToken(x.NextPageToken)
31410	}
31411}
31412
31413// method id "content.orders.refunditem":
31414
31415type OrdersRefunditemCall struct {
31416	s                       *APIService
31417	merchantId              uint64
31418	orderId                 string
31419	ordersrefunditemrequest *OrdersRefundItemRequest
31420	urlParams_              gensupport.URLParams
31421	ctx_                    context.Context
31422	header_                 http.Header
31423}
31424
31425// Refunditem: Issues a partial or total refund for items and shipment.
31426//
31427// - merchantId: The ID of the account that manages the order. This
31428//   cannot be a multi-client account.
31429// - orderId: The ID of the order to refund.
31430func (r *OrdersService) Refunditem(merchantId uint64, orderId string, ordersrefunditemrequest *OrdersRefundItemRequest) *OrdersRefunditemCall {
31431	c := &OrdersRefunditemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31432	c.merchantId = merchantId
31433	c.orderId = orderId
31434	c.ordersrefunditemrequest = ordersrefunditemrequest
31435	return c
31436}
31437
31438// Fields allows partial responses to be retrieved. See
31439// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31440// for more information.
31441func (c *OrdersRefunditemCall) Fields(s ...googleapi.Field) *OrdersRefunditemCall {
31442	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31443	return c
31444}
31445
31446// Context sets the context to be used in this call's Do method. Any
31447// pending HTTP request will be aborted if the provided context is
31448// canceled.
31449func (c *OrdersRefunditemCall) Context(ctx context.Context) *OrdersRefunditemCall {
31450	c.ctx_ = ctx
31451	return c
31452}
31453
31454// Header returns an http.Header that can be modified by the caller to
31455// add HTTP headers to the request.
31456func (c *OrdersRefunditemCall) Header() http.Header {
31457	if c.header_ == nil {
31458		c.header_ = make(http.Header)
31459	}
31460	return c.header_
31461}
31462
31463func (c *OrdersRefunditemCall) doRequest(alt string) (*http.Response, error) {
31464	reqHeaders := make(http.Header)
31465	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31466	for k, v := range c.header_ {
31467		reqHeaders[k] = v
31468	}
31469	reqHeaders.Set("User-Agent", c.s.userAgent())
31470	var body io.Reader = nil
31471	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefunditemrequest)
31472	if err != nil {
31473		return nil, err
31474	}
31475	reqHeaders.Set("Content-Type", "application/json")
31476	c.urlParams_.Set("alt", alt)
31477	c.urlParams_.Set("prettyPrint", "false")
31478	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refunditem")
31479	urls += "?" + c.urlParams_.Encode()
31480	req, err := http.NewRequest("POST", urls, body)
31481	if err != nil {
31482		return nil, err
31483	}
31484	req.Header = reqHeaders
31485	googleapi.Expand(req.URL, map[string]string{
31486		"merchantId": strconv.FormatUint(c.merchantId, 10),
31487		"orderId":    c.orderId,
31488	})
31489	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31490}
31491
31492// Do executes the "content.orders.refunditem" call.
31493// Exactly one of *OrdersRefundItemResponse or error will be non-nil.
31494// Any non-2xx status code is an error. Response headers are in either
31495// *OrdersRefundItemResponse.ServerResponse.Header or (if a response was
31496// returned at all) in error.(*googleapi.Error).Header. Use
31497// googleapi.IsNotModified to check whether the returned error was
31498// because http.StatusNotModified was returned.
31499func (c *OrdersRefunditemCall) Do(opts ...googleapi.CallOption) (*OrdersRefundItemResponse, error) {
31500	gensupport.SetOptions(c.urlParams_, opts...)
31501	res, err := c.doRequest("json")
31502	if res != nil && res.StatusCode == http.StatusNotModified {
31503		if res.Body != nil {
31504			res.Body.Close()
31505		}
31506		return nil, &googleapi.Error{
31507			Code:   res.StatusCode,
31508			Header: res.Header,
31509		}
31510	}
31511	if err != nil {
31512		return nil, err
31513	}
31514	defer googleapi.CloseBody(res)
31515	if err := googleapi.CheckResponse(res); err != nil {
31516		return nil, err
31517	}
31518	ret := &OrdersRefundItemResponse{
31519		ServerResponse: googleapi.ServerResponse{
31520			Header:         res.Header,
31521			HTTPStatusCode: res.StatusCode,
31522		},
31523	}
31524	target := &ret
31525	if err := gensupport.DecodeResponse(target, res); err != nil {
31526		return nil, err
31527	}
31528	return ret, nil
31529	// {
31530	//   "description": "Issues a partial or total refund for items and shipment.",
31531	//   "flatPath": "{merchantId}/orders/{orderId}/refunditem",
31532	//   "httpMethod": "POST",
31533	//   "id": "content.orders.refunditem",
31534	//   "parameterOrder": [
31535	//     "merchantId",
31536	//     "orderId"
31537	//   ],
31538	//   "parameters": {
31539	//     "merchantId": {
31540	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31541	//       "format": "uint64",
31542	//       "location": "path",
31543	//       "required": true,
31544	//       "type": "string"
31545	//     },
31546	//     "orderId": {
31547	//       "description": "The ID of the order to refund.",
31548	//       "location": "path",
31549	//       "required": true,
31550	//       "type": "string"
31551	//     }
31552	//   },
31553	//   "path": "{merchantId}/orders/{orderId}/refunditem",
31554	//   "request": {
31555	//     "$ref": "OrdersRefundItemRequest"
31556	//   },
31557	//   "response": {
31558	//     "$ref": "OrdersRefundItemResponse"
31559	//   },
31560	//   "scopes": [
31561	//     "https://www.googleapis.com/auth/content"
31562	//   ]
31563	// }
31564
31565}
31566
31567// method id "content.orders.refundorder":
31568
31569type OrdersRefundorderCall struct {
31570	s                        *APIService
31571	merchantId               uint64
31572	orderId                  string
31573	ordersrefundorderrequest *OrdersRefundOrderRequest
31574	urlParams_               gensupport.URLParams
31575	ctx_                     context.Context
31576	header_                  http.Header
31577}
31578
31579// Refundorder: Issues a partial or total refund for an order.
31580//
31581// - merchantId: The ID of the account that manages the order. This
31582//   cannot be a multi-client account.
31583// - orderId: The ID of the order to refund.
31584func (r *OrdersService) Refundorder(merchantId uint64, orderId string, ordersrefundorderrequest *OrdersRefundOrderRequest) *OrdersRefundorderCall {
31585	c := &OrdersRefundorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31586	c.merchantId = merchantId
31587	c.orderId = orderId
31588	c.ordersrefundorderrequest = ordersrefundorderrequest
31589	return c
31590}
31591
31592// Fields allows partial responses to be retrieved. See
31593// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31594// for more information.
31595func (c *OrdersRefundorderCall) Fields(s ...googleapi.Field) *OrdersRefundorderCall {
31596	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31597	return c
31598}
31599
31600// Context sets the context to be used in this call's Do method. Any
31601// pending HTTP request will be aborted if the provided context is
31602// canceled.
31603func (c *OrdersRefundorderCall) Context(ctx context.Context) *OrdersRefundorderCall {
31604	c.ctx_ = ctx
31605	return c
31606}
31607
31608// Header returns an http.Header that can be modified by the caller to
31609// add HTTP headers to the request.
31610func (c *OrdersRefundorderCall) Header() http.Header {
31611	if c.header_ == nil {
31612		c.header_ = make(http.Header)
31613	}
31614	return c.header_
31615}
31616
31617func (c *OrdersRefundorderCall) doRequest(alt string) (*http.Response, error) {
31618	reqHeaders := make(http.Header)
31619	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31620	for k, v := range c.header_ {
31621		reqHeaders[k] = v
31622	}
31623	reqHeaders.Set("User-Agent", c.s.userAgent())
31624	var body io.Reader = nil
31625	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefundorderrequest)
31626	if err != nil {
31627		return nil, err
31628	}
31629	reqHeaders.Set("Content-Type", "application/json")
31630	c.urlParams_.Set("alt", alt)
31631	c.urlParams_.Set("prettyPrint", "false")
31632	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refundorder")
31633	urls += "?" + c.urlParams_.Encode()
31634	req, err := http.NewRequest("POST", urls, body)
31635	if err != nil {
31636		return nil, err
31637	}
31638	req.Header = reqHeaders
31639	googleapi.Expand(req.URL, map[string]string{
31640		"merchantId": strconv.FormatUint(c.merchantId, 10),
31641		"orderId":    c.orderId,
31642	})
31643	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31644}
31645
31646// Do executes the "content.orders.refundorder" call.
31647// Exactly one of *OrdersRefundOrderResponse or error will be non-nil.
31648// Any non-2xx status code is an error. Response headers are in either
31649// *OrdersRefundOrderResponse.ServerResponse.Header or (if a response
31650// was returned at all) in error.(*googleapi.Error).Header. Use
31651// googleapi.IsNotModified to check whether the returned error was
31652// because http.StatusNotModified was returned.
31653func (c *OrdersRefundorderCall) Do(opts ...googleapi.CallOption) (*OrdersRefundOrderResponse, error) {
31654	gensupport.SetOptions(c.urlParams_, opts...)
31655	res, err := c.doRequest("json")
31656	if res != nil && res.StatusCode == http.StatusNotModified {
31657		if res.Body != nil {
31658			res.Body.Close()
31659		}
31660		return nil, &googleapi.Error{
31661			Code:   res.StatusCode,
31662			Header: res.Header,
31663		}
31664	}
31665	if err != nil {
31666		return nil, err
31667	}
31668	defer googleapi.CloseBody(res)
31669	if err := googleapi.CheckResponse(res); err != nil {
31670		return nil, err
31671	}
31672	ret := &OrdersRefundOrderResponse{
31673		ServerResponse: googleapi.ServerResponse{
31674			Header:         res.Header,
31675			HTTPStatusCode: res.StatusCode,
31676		},
31677	}
31678	target := &ret
31679	if err := gensupport.DecodeResponse(target, res); err != nil {
31680		return nil, err
31681	}
31682	return ret, nil
31683	// {
31684	//   "description": "Issues a partial or total refund for an order.",
31685	//   "flatPath": "{merchantId}/orders/{orderId}/refundorder",
31686	//   "httpMethod": "POST",
31687	//   "id": "content.orders.refundorder",
31688	//   "parameterOrder": [
31689	//     "merchantId",
31690	//     "orderId"
31691	//   ],
31692	//   "parameters": {
31693	//     "merchantId": {
31694	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31695	//       "format": "uint64",
31696	//       "location": "path",
31697	//       "required": true,
31698	//       "type": "string"
31699	//     },
31700	//     "orderId": {
31701	//       "description": "The ID of the order to refund.",
31702	//       "location": "path",
31703	//       "required": true,
31704	//       "type": "string"
31705	//     }
31706	//   },
31707	//   "path": "{merchantId}/orders/{orderId}/refundorder",
31708	//   "request": {
31709	//     "$ref": "OrdersRefundOrderRequest"
31710	//   },
31711	//   "response": {
31712	//     "$ref": "OrdersRefundOrderResponse"
31713	//   },
31714	//   "scopes": [
31715	//     "https://www.googleapis.com/auth/content"
31716	//   ]
31717	// }
31718
31719}
31720
31721// method id "content.orders.rejectreturnlineitem":
31722
31723type OrdersRejectreturnlineitemCall struct {
31724	s                                 *APIService
31725	merchantId                        uint64
31726	orderId                           string
31727	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
31728	urlParams_                        gensupport.URLParams
31729	ctx_                              context.Context
31730	header_                           http.Header
31731}
31732
31733// Rejectreturnlineitem: Rejects return on an line item.
31734//
31735// - merchantId: The ID of the account that manages the order. This
31736//   cannot be a multi-client account.
31737// - orderId: The ID of the order.
31738func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
31739	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31740	c.merchantId = merchantId
31741	c.orderId = orderId
31742	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
31743	return c
31744}
31745
31746// Fields allows partial responses to be retrieved. See
31747// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31748// for more information.
31749func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
31750	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31751	return c
31752}
31753
31754// Context sets the context to be used in this call's Do method. Any
31755// pending HTTP request will be aborted if the provided context is
31756// canceled.
31757func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
31758	c.ctx_ = ctx
31759	return c
31760}
31761
31762// Header returns an http.Header that can be modified by the caller to
31763// add HTTP headers to the request.
31764func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
31765	if c.header_ == nil {
31766		c.header_ = make(http.Header)
31767	}
31768	return c.header_
31769}
31770
31771func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
31772	reqHeaders := make(http.Header)
31773	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31774	for k, v := range c.header_ {
31775		reqHeaders[k] = v
31776	}
31777	reqHeaders.Set("User-Agent", c.s.userAgent())
31778	var body io.Reader = nil
31779	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
31780	if err != nil {
31781		return nil, err
31782	}
31783	reqHeaders.Set("Content-Type", "application/json")
31784	c.urlParams_.Set("alt", alt)
31785	c.urlParams_.Set("prettyPrint", "false")
31786	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/rejectReturnLineItem")
31787	urls += "?" + c.urlParams_.Encode()
31788	req, err := http.NewRequest("POST", urls, body)
31789	if err != nil {
31790		return nil, err
31791	}
31792	req.Header = reqHeaders
31793	googleapi.Expand(req.URL, map[string]string{
31794		"merchantId": strconv.FormatUint(c.merchantId, 10),
31795		"orderId":    c.orderId,
31796	})
31797	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31798}
31799
31800// Do executes the "content.orders.rejectreturnlineitem" call.
31801// Exactly one of *OrdersRejectReturnLineItemResponse or error will be
31802// non-nil. Any non-2xx status code is an error. Response headers are in
31803// either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
31804// (if a response was returned at all) in
31805// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31806// whether the returned error was because http.StatusNotModified was
31807// returned.
31808func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
31809	gensupport.SetOptions(c.urlParams_, opts...)
31810	res, err := c.doRequest("json")
31811	if res != nil && res.StatusCode == http.StatusNotModified {
31812		if res.Body != nil {
31813			res.Body.Close()
31814		}
31815		return nil, &googleapi.Error{
31816			Code:   res.StatusCode,
31817			Header: res.Header,
31818		}
31819	}
31820	if err != nil {
31821		return nil, err
31822	}
31823	defer googleapi.CloseBody(res)
31824	if err := googleapi.CheckResponse(res); err != nil {
31825		return nil, err
31826	}
31827	ret := &OrdersRejectReturnLineItemResponse{
31828		ServerResponse: googleapi.ServerResponse{
31829			Header:         res.Header,
31830			HTTPStatusCode: res.StatusCode,
31831		},
31832	}
31833	target := &ret
31834	if err := gensupport.DecodeResponse(target, res); err != nil {
31835		return nil, err
31836	}
31837	return ret, nil
31838	// {
31839	//   "description": "Rejects return on an line item.",
31840	//   "flatPath": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
31841	//   "httpMethod": "POST",
31842	//   "id": "content.orders.rejectreturnlineitem",
31843	//   "parameterOrder": [
31844	//     "merchantId",
31845	//     "orderId"
31846	//   ],
31847	//   "parameters": {
31848	//     "merchantId": {
31849	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31850	//       "format": "uint64",
31851	//       "location": "path",
31852	//       "required": true,
31853	//       "type": "string"
31854	//     },
31855	//     "orderId": {
31856	//       "description": "The ID of the order.",
31857	//       "location": "path",
31858	//       "required": true,
31859	//       "type": "string"
31860	//     }
31861	//   },
31862	//   "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
31863	//   "request": {
31864	//     "$ref": "OrdersRejectReturnLineItemRequest"
31865	//   },
31866	//   "response": {
31867	//     "$ref": "OrdersRejectReturnLineItemResponse"
31868	//   },
31869	//   "scopes": [
31870	//     "https://www.googleapis.com/auth/content"
31871	//   ]
31872	// }
31873
31874}
31875
31876// method id "content.orders.returnrefundlineitem":
31877
31878type OrdersReturnrefundlineitemCall struct {
31879	s                                 *APIService
31880	merchantId                        uint64
31881	orderId                           string
31882	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
31883	urlParams_                        gensupport.URLParams
31884	ctx_                              context.Context
31885	header_                           http.Header
31886}
31887
31888// Returnrefundlineitem: Returns and refunds a line item. Note that this
31889// method can only be called on fully shipped orders. Please also note
31890// that the Orderreturns API is the preferred way to handle returns
31891// after you receive a return from a customer. You can use
31892// Orderreturns.list or Orderreturns.get to search for the return, and
31893// then use Orderreturns.processreturn to issue the refund. If the
31894// return cannot be found, then we recommend using this API to issue a
31895// refund.
31896//
31897// - merchantId: The ID of the account that manages the order. This
31898//   cannot be a multi-client account.
31899// - orderId: The ID of the order.
31900func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
31901	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31902	c.merchantId = merchantId
31903	c.orderId = orderId
31904	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
31905	return c
31906}
31907
31908// Fields allows partial responses to be retrieved. See
31909// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31910// for more information.
31911func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
31912	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31913	return c
31914}
31915
31916// Context sets the context to be used in this call's Do method. Any
31917// pending HTTP request will be aborted if the provided context is
31918// canceled.
31919func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
31920	c.ctx_ = ctx
31921	return c
31922}
31923
31924// Header returns an http.Header that can be modified by the caller to
31925// add HTTP headers to the request.
31926func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
31927	if c.header_ == nil {
31928		c.header_ = make(http.Header)
31929	}
31930	return c.header_
31931}
31932
31933func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
31934	reqHeaders := make(http.Header)
31935	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
31936	for k, v := range c.header_ {
31937		reqHeaders[k] = v
31938	}
31939	reqHeaders.Set("User-Agent", c.s.userAgent())
31940	var body io.Reader = nil
31941	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
31942	if err != nil {
31943		return nil, err
31944	}
31945	reqHeaders.Set("Content-Type", "application/json")
31946	c.urlParams_.Set("alt", alt)
31947	c.urlParams_.Set("prettyPrint", "false")
31948	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnRefundLineItem")
31949	urls += "?" + c.urlParams_.Encode()
31950	req, err := http.NewRequest("POST", urls, body)
31951	if err != nil {
31952		return nil, err
31953	}
31954	req.Header = reqHeaders
31955	googleapi.Expand(req.URL, map[string]string{
31956		"merchantId": strconv.FormatUint(c.merchantId, 10),
31957		"orderId":    c.orderId,
31958	})
31959	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31960}
31961
31962// Do executes the "content.orders.returnrefundlineitem" call.
31963// Exactly one of *OrdersReturnRefundLineItemResponse or error will be
31964// non-nil. Any non-2xx status code is an error. Response headers are in
31965// either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
31966// (if a response was returned at all) in
31967// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31968// whether the returned error was because http.StatusNotModified was
31969// returned.
31970func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
31971	gensupport.SetOptions(c.urlParams_, opts...)
31972	res, err := c.doRequest("json")
31973	if res != nil && res.StatusCode == http.StatusNotModified {
31974		if res.Body != nil {
31975			res.Body.Close()
31976		}
31977		return nil, &googleapi.Error{
31978			Code:   res.StatusCode,
31979			Header: res.Header,
31980		}
31981	}
31982	if err != nil {
31983		return nil, err
31984	}
31985	defer googleapi.CloseBody(res)
31986	if err := googleapi.CheckResponse(res); err != nil {
31987		return nil, err
31988	}
31989	ret := &OrdersReturnRefundLineItemResponse{
31990		ServerResponse: googleapi.ServerResponse{
31991			Header:         res.Header,
31992			HTTPStatusCode: res.StatusCode,
31993		},
31994	}
31995	target := &ret
31996	if err := gensupport.DecodeResponse(target, res); err != nil {
31997		return nil, err
31998	}
31999	return ret, nil
32000	// {
32001	//   "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.",
32002	//   "flatPath": "{merchantId}/orders/{orderId}/returnRefundLineItem",
32003	//   "httpMethod": "POST",
32004	//   "id": "content.orders.returnrefundlineitem",
32005	//   "parameterOrder": [
32006	//     "merchantId",
32007	//     "orderId"
32008	//   ],
32009	//   "parameters": {
32010	//     "merchantId": {
32011	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32012	//       "format": "uint64",
32013	//       "location": "path",
32014	//       "required": true,
32015	//       "type": "string"
32016	//     },
32017	//     "orderId": {
32018	//       "description": "The ID of the order.",
32019	//       "location": "path",
32020	//       "required": true,
32021	//       "type": "string"
32022	//     }
32023	//   },
32024	//   "path": "{merchantId}/orders/{orderId}/returnRefundLineItem",
32025	//   "request": {
32026	//     "$ref": "OrdersReturnRefundLineItemRequest"
32027	//   },
32028	//   "response": {
32029	//     "$ref": "OrdersReturnRefundLineItemResponse"
32030	//   },
32031	//   "scopes": [
32032	//     "https://www.googleapis.com/auth/content"
32033	//   ]
32034	// }
32035
32036}
32037
32038// method id "content.orders.setlineitemmetadata":
32039
32040type OrdersSetlineitemmetadataCall struct {
32041	s                                *APIService
32042	merchantId                       uint64
32043	orderId                          string
32044	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
32045	urlParams_                       gensupport.URLParams
32046	ctx_                             context.Context
32047	header_                          http.Header
32048}
32049
32050// Setlineitemmetadata: Sets (or overrides if it already exists)
32051// merchant provided annotations in the form of key-value pairs. A
32052// common use case would be to supply us with additional structured
32053// information about a line item that cannot be provided via other
32054// methods. Submitted key-value pairs can be retrieved as part of the
32055// orders resource.
32056//
32057// - merchantId: The ID of the account that manages the order. This
32058//   cannot be a multi-client account.
32059// - orderId: The ID of the order.
32060func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
32061	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32062	c.merchantId = merchantId
32063	c.orderId = orderId
32064	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
32065	return c
32066}
32067
32068// Fields allows partial responses to be retrieved. See
32069// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32070// for more information.
32071func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
32072	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32073	return c
32074}
32075
32076// Context sets the context to be used in this call's Do method. Any
32077// pending HTTP request will be aborted if the provided context is
32078// canceled.
32079func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
32080	c.ctx_ = ctx
32081	return c
32082}
32083
32084// Header returns an http.Header that can be modified by the caller to
32085// add HTTP headers to the request.
32086func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
32087	if c.header_ == nil {
32088		c.header_ = make(http.Header)
32089	}
32090	return c.header_
32091}
32092
32093func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
32094	reqHeaders := make(http.Header)
32095	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32096	for k, v := range c.header_ {
32097		reqHeaders[k] = v
32098	}
32099	reqHeaders.Set("User-Agent", c.s.userAgent())
32100	var body io.Reader = nil
32101	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
32102	if err != nil {
32103		return nil, err
32104	}
32105	reqHeaders.Set("Content-Type", "application/json")
32106	c.urlParams_.Set("alt", alt)
32107	c.urlParams_.Set("prettyPrint", "false")
32108	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/setLineItemMetadata")
32109	urls += "?" + c.urlParams_.Encode()
32110	req, err := http.NewRequest("POST", urls, body)
32111	if err != nil {
32112		return nil, err
32113	}
32114	req.Header = reqHeaders
32115	googleapi.Expand(req.URL, map[string]string{
32116		"merchantId": strconv.FormatUint(c.merchantId, 10),
32117		"orderId":    c.orderId,
32118	})
32119	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32120}
32121
32122// Do executes the "content.orders.setlineitemmetadata" call.
32123// Exactly one of *OrdersSetLineItemMetadataResponse or error will be
32124// non-nil. Any non-2xx status code is an error. Response headers are in
32125// either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
32126// (if a response was returned at all) in
32127// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32128// whether the returned error was because http.StatusNotModified was
32129// returned.
32130func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
32131	gensupport.SetOptions(c.urlParams_, opts...)
32132	res, err := c.doRequest("json")
32133	if res != nil && res.StatusCode == http.StatusNotModified {
32134		if res.Body != nil {
32135			res.Body.Close()
32136		}
32137		return nil, &googleapi.Error{
32138			Code:   res.StatusCode,
32139			Header: res.Header,
32140		}
32141	}
32142	if err != nil {
32143		return nil, err
32144	}
32145	defer googleapi.CloseBody(res)
32146	if err := googleapi.CheckResponse(res); err != nil {
32147		return nil, err
32148	}
32149	ret := &OrdersSetLineItemMetadataResponse{
32150		ServerResponse: googleapi.ServerResponse{
32151			Header:         res.Header,
32152			HTTPStatusCode: res.StatusCode,
32153		},
32154	}
32155	target := &ret
32156	if err := gensupport.DecodeResponse(target, res); err != nil {
32157		return nil, err
32158	}
32159	return ret, nil
32160	// {
32161	//   "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.",
32162	//   "flatPath": "{merchantId}/orders/{orderId}/setLineItemMetadata",
32163	//   "httpMethod": "POST",
32164	//   "id": "content.orders.setlineitemmetadata",
32165	//   "parameterOrder": [
32166	//     "merchantId",
32167	//     "orderId"
32168	//   ],
32169	//   "parameters": {
32170	//     "merchantId": {
32171	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32172	//       "format": "uint64",
32173	//       "location": "path",
32174	//       "required": true,
32175	//       "type": "string"
32176	//     },
32177	//     "orderId": {
32178	//       "description": "The ID of the order.",
32179	//       "location": "path",
32180	//       "required": true,
32181	//       "type": "string"
32182	//     }
32183	//   },
32184	//   "path": "{merchantId}/orders/{orderId}/setLineItemMetadata",
32185	//   "request": {
32186	//     "$ref": "OrdersSetLineItemMetadataRequest"
32187	//   },
32188	//   "response": {
32189	//     "$ref": "OrdersSetLineItemMetadataResponse"
32190	//   },
32191	//   "scopes": [
32192	//     "https://www.googleapis.com/auth/content"
32193	//   ]
32194	// }
32195
32196}
32197
32198// method id "content.orders.shiplineitems":
32199
32200type OrdersShiplineitemsCall struct {
32201	s                          *APIService
32202	merchantId                 uint64
32203	orderId                    string
32204	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
32205	urlParams_                 gensupport.URLParams
32206	ctx_                       context.Context
32207	header_                    http.Header
32208}
32209
32210// Shiplineitems: Marks line item(s) as shipped.
32211//
32212// - merchantId: The ID of the account that manages the order. This
32213//   cannot be a multi-client account.
32214// - orderId: The ID of the order.
32215func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
32216	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32217	c.merchantId = merchantId
32218	c.orderId = orderId
32219	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
32220	return c
32221}
32222
32223// Fields allows partial responses to be retrieved. See
32224// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32225// for more information.
32226func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
32227	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32228	return c
32229}
32230
32231// Context sets the context to be used in this call's Do method. Any
32232// pending HTTP request will be aborted if the provided context is
32233// canceled.
32234func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
32235	c.ctx_ = ctx
32236	return c
32237}
32238
32239// Header returns an http.Header that can be modified by the caller to
32240// add HTTP headers to the request.
32241func (c *OrdersShiplineitemsCall) Header() http.Header {
32242	if c.header_ == nil {
32243		c.header_ = make(http.Header)
32244	}
32245	return c.header_
32246}
32247
32248func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
32249	reqHeaders := make(http.Header)
32250	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32251	for k, v := range c.header_ {
32252		reqHeaders[k] = v
32253	}
32254	reqHeaders.Set("User-Agent", c.s.userAgent())
32255	var body io.Reader = nil
32256	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
32257	if err != nil {
32258		return nil, err
32259	}
32260	reqHeaders.Set("Content-Type", "application/json")
32261	c.urlParams_.Set("alt", alt)
32262	c.urlParams_.Set("prettyPrint", "false")
32263	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/shipLineItems")
32264	urls += "?" + c.urlParams_.Encode()
32265	req, err := http.NewRequest("POST", urls, body)
32266	if err != nil {
32267		return nil, err
32268	}
32269	req.Header = reqHeaders
32270	googleapi.Expand(req.URL, map[string]string{
32271		"merchantId": strconv.FormatUint(c.merchantId, 10),
32272		"orderId":    c.orderId,
32273	})
32274	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32275}
32276
32277// Do executes the "content.orders.shiplineitems" call.
32278// Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
32279// Any non-2xx status code is an error. Response headers are in either
32280// *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
32281// was returned at all) in error.(*googleapi.Error).Header. Use
32282// googleapi.IsNotModified to check whether the returned error was
32283// because http.StatusNotModified was returned.
32284func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
32285	gensupport.SetOptions(c.urlParams_, opts...)
32286	res, err := c.doRequest("json")
32287	if res != nil && res.StatusCode == http.StatusNotModified {
32288		if res.Body != nil {
32289			res.Body.Close()
32290		}
32291		return nil, &googleapi.Error{
32292			Code:   res.StatusCode,
32293			Header: res.Header,
32294		}
32295	}
32296	if err != nil {
32297		return nil, err
32298	}
32299	defer googleapi.CloseBody(res)
32300	if err := googleapi.CheckResponse(res); err != nil {
32301		return nil, err
32302	}
32303	ret := &OrdersShipLineItemsResponse{
32304		ServerResponse: googleapi.ServerResponse{
32305			Header:         res.Header,
32306			HTTPStatusCode: res.StatusCode,
32307		},
32308	}
32309	target := &ret
32310	if err := gensupport.DecodeResponse(target, res); err != nil {
32311		return nil, err
32312	}
32313	return ret, nil
32314	// {
32315	//   "description": "Marks line item(s) as shipped.",
32316	//   "flatPath": "{merchantId}/orders/{orderId}/shipLineItems",
32317	//   "httpMethod": "POST",
32318	//   "id": "content.orders.shiplineitems",
32319	//   "parameterOrder": [
32320	//     "merchantId",
32321	//     "orderId"
32322	//   ],
32323	//   "parameters": {
32324	//     "merchantId": {
32325	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32326	//       "format": "uint64",
32327	//       "location": "path",
32328	//       "required": true,
32329	//       "type": "string"
32330	//     },
32331	//     "orderId": {
32332	//       "description": "The ID of the order.",
32333	//       "location": "path",
32334	//       "required": true,
32335	//       "type": "string"
32336	//     }
32337	//   },
32338	//   "path": "{merchantId}/orders/{orderId}/shipLineItems",
32339	//   "request": {
32340	//     "$ref": "OrdersShipLineItemsRequest"
32341	//   },
32342	//   "response": {
32343	//     "$ref": "OrdersShipLineItemsResponse"
32344	//   },
32345	//   "scopes": [
32346	//     "https://www.googleapis.com/auth/content"
32347	//   ]
32348	// }
32349
32350}
32351
32352// method id "content.orders.updatelineitemshippingdetails":
32353
32354type OrdersUpdatelineitemshippingdetailsCall struct {
32355	s                                          *APIService
32356	merchantId                                 uint64
32357	orderId                                    string
32358	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
32359	urlParams_                                 gensupport.URLParams
32360	ctx_                                       context.Context
32361	header_                                    http.Header
32362}
32363
32364// Updatelineitemshippingdetails: Updates ship by and delivery by dates
32365// for a line item.
32366//
32367// - merchantId: The ID of the account that manages the order. This
32368//   cannot be a multi-client account.
32369// - orderId: The ID of the order.
32370func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
32371	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32372	c.merchantId = merchantId
32373	c.orderId = orderId
32374	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
32375	return c
32376}
32377
32378// Fields allows partial responses to be retrieved. See
32379// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32380// for more information.
32381func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
32382	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32383	return c
32384}
32385
32386// Context sets the context to be used in this call's Do method. Any
32387// pending HTTP request will be aborted if the provided context is
32388// canceled.
32389func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
32390	c.ctx_ = ctx
32391	return c
32392}
32393
32394// Header returns an http.Header that can be modified by the caller to
32395// add HTTP headers to the request.
32396func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
32397	if c.header_ == nil {
32398		c.header_ = make(http.Header)
32399	}
32400	return c.header_
32401}
32402
32403func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
32404	reqHeaders := make(http.Header)
32405	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32406	for k, v := range c.header_ {
32407		reqHeaders[k] = v
32408	}
32409	reqHeaders.Set("User-Agent", c.s.userAgent())
32410	var body io.Reader = nil
32411	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
32412	if err != nil {
32413		return nil, err
32414	}
32415	reqHeaders.Set("Content-Type", "application/json")
32416	c.urlParams_.Set("alt", alt)
32417	c.urlParams_.Set("prettyPrint", "false")
32418	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
32419	urls += "?" + c.urlParams_.Encode()
32420	req, err := http.NewRequest("POST", urls, body)
32421	if err != nil {
32422		return nil, err
32423	}
32424	req.Header = reqHeaders
32425	googleapi.Expand(req.URL, map[string]string{
32426		"merchantId": strconv.FormatUint(c.merchantId, 10),
32427		"orderId":    c.orderId,
32428	})
32429	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32430}
32431
32432// Do executes the "content.orders.updatelineitemshippingdetails" call.
32433// Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
32434// will be non-nil. Any non-2xx status code is an error. Response
32435// headers are in either
32436// *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
32437// (if a response was returned at all) in
32438// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32439// whether the returned error was because http.StatusNotModified was
32440// returned.
32441func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
32442	gensupport.SetOptions(c.urlParams_, opts...)
32443	res, err := c.doRequest("json")
32444	if res != nil && res.StatusCode == http.StatusNotModified {
32445		if res.Body != nil {
32446			res.Body.Close()
32447		}
32448		return nil, &googleapi.Error{
32449			Code:   res.StatusCode,
32450			Header: res.Header,
32451		}
32452	}
32453	if err != nil {
32454		return nil, err
32455	}
32456	defer googleapi.CloseBody(res)
32457	if err := googleapi.CheckResponse(res); err != nil {
32458		return nil, err
32459	}
32460	ret := &OrdersUpdateLineItemShippingDetailsResponse{
32461		ServerResponse: googleapi.ServerResponse{
32462			Header:         res.Header,
32463			HTTPStatusCode: res.StatusCode,
32464		},
32465	}
32466	target := &ret
32467	if err := gensupport.DecodeResponse(target, res); err != nil {
32468		return nil, err
32469	}
32470	return ret, nil
32471	// {
32472	//   "description": "Updates ship by and delivery by dates for a line item.",
32473	//   "flatPath": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
32474	//   "httpMethod": "POST",
32475	//   "id": "content.orders.updatelineitemshippingdetails",
32476	//   "parameterOrder": [
32477	//     "merchantId",
32478	//     "orderId"
32479	//   ],
32480	//   "parameters": {
32481	//     "merchantId": {
32482	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32483	//       "format": "uint64",
32484	//       "location": "path",
32485	//       "required": true,
32486	//       "type": "string"
32487	//     },
32488	//     "orderId": {
32489	//       "description": "The ID of the order.",
32490	//       "location": "path",
32491	//       "required": true,
32492	//       "type": "string"
32493	//     }
32494	//   },
32495	//   "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
32496	//   "request": {
32497	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
32498	//   },
32499	//   "response": {
32500	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
32501	//   },
32502	//   "scopes": [
32503	//     "https://www.googleapis.com/auth/content"
32504	//   ]
32505	// }
32506
32507}
32508
32509// method id "content.orders.updatemerchantorderid":
32510
32511type OrdersUpdatemerchantorderidCall struct {
32512	s                                  *APIService
32513	merchantId                         uint64
32514	orderId                            string
32515	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
32516	urlParams_                         gensupport.URLParams
32517	ctx_                               context.Context
32518	header_                            http.Header
32519}
32520
32521// Updatemerchantorderid: Updates the merchant order ID for a given
32522// order.
32523//
32524// - merchantId: The ID of the account that manages the order. This
32525//   cannot be a multi-client account.
32526// - orderId: The ID of the order.
32527func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
32528	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32529	c.merchantId = merchantId
32530	c.orderId = orderId
32531	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
32532	return c
32533}
32534
32535// Fields allows partial responses to be retrieved. See
32536// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32537// for more information.
32538func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
32539	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32540	return c
32541}
32542
32543// Context sets the context to be used in this call's Do method. Any
32544// pending HTTP request will be aborted if the provided context is
32545// canceled.
32546func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
32547	c.ctx_ = ctx
32548	return c
32549}
32550
32551// Header returns an http.Header that can be modified by the caller to
32552// add HTTP headers to the request.
32553func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
32554	if c.header_ == nil {
32555		c.header_ = make(http.Header)
32556	}
32557	return c.header_
32558}
32559
32560func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
32561	reqHeaders := make(http.Header)
32562	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32563	for k, v := range c.header_ {
32564		reqHeaders[k] = v
32565	}
32566	reqHeaders.Set("User-Agent", c.s.userAgent())
32567	var body io.Reader = nil
32568	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
32569	if err != nil {
32570		return nil, err
32571	}
32572	reqHeaders.Set("Content-Type", "application/json")
32573	c.urlParams_.Set("alt", alt)
32574	c.urlParams_.Set("prettyPrint", "false")
32575	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateMerchantOrderId")
32576	urls += "?" + c.urlParams_.Encode()
32577	req, err := http.NewRequest("POST", urls, body)
32578	if err != nil {
32579		return nil, err
32580	}
32581	req.Header = reqHeaders
32582	googleapi.Expand(req.URL, map[string]string{
32583		"merchantId": strconv.FormatUint(c.merchantId, 10),
32584		"orderId":    c.orderId,
32585	})
32586	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32587}
32588
32589// Do executes the "content.orders.updatemerchantorderid" call.
32590// Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
32591// non-nil. Any non-2xx status code is an error. Response headers are in
32592// either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
32593// (if a response was returned at all) in
32594// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32595// whether the returned error was because http.StatusNotModified was
32596// returned.
32597func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
32598	gensupport.SetOptions(c.urlParams_, opts...)
32599	res, err := c.doRequest("json")
32600	if res != nil && res.StatusCode == http.StatusNotModified {
32601		if res.Body != nil {
32602			res.Body.Close()
32603		}
32604		return nil, &googleapi.Error{
32605			Code:   res.StatusCode,
32606			Header: res.Header,
32607		}
32608	}
32609	if err != nil {
32610		return nil, err
32611	}
32612	defer googleapi.CloseBody(res)
32613	if err := googleapi.CheckResponse(res); err != nil {
32614		return nil, err
32615	}
32616	ret := &OrdersUpdateMerchantOrderIdResponse{
32617		ServerResponse: googleapi.ServerResponse{
32618			Header:         res.Header,
32619			HTTPStatusCode: res.StatusCode,
32620		},
32621	}
32622	target := &ret
32623	if err := gensupport.DecodeResponse(target, res); err != nil {
32624		return nil, err
32625	}
32626	return ret, nil
32627	// {
32628	//   "description": "Updates the merchant order ID for a given order.",
32629	//   "flatPath": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
32630	//   "httpMethod": "POST",
32631	//   "id": "content.orders.updatemerchantorderid",
32632	//   "parameterOrder": [
32633	//     "merchantId",
32634	//     "orderId"
32635	//   ],
32636	//   "parameters": {
32637	//     "merchantId": {
32638	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32639	//       "format": "uint64",
32640	//       "location": "path",
32641	//       "required": true,
32642	//       "type": "string"
32643	//     },
32644	//     "orderId": {
32645	//       "description": "The ID of the order.",
32646	//       "location": "path",
32647	//       "required": true,
32648	//       "type": "string"
32649	//     }
32650	//   },
32651	//   "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
32652	//   "request": {
32653	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
32654	//   },
32655	//   "response": {
32656	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
32657	//   },
32658	//   "scopes": [
32659	//     "https://www.googleapis.com/auth/content"
32660	//   ]
32661	// }
32662
32663}
32664
32665// method id "content.orders.updateshipment":
32666
32667type OrdersUpdateshipmentCall struct {
32668	s                           *APIService
32669	merchantId                  uint64
32670	orderId                     string
32671	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
32672	urlParams_                  gensupport.URLParams
32673	ctx_                        context.Context
32674	header_                     http.Header
32675}
32676
32677// Updateshipment: Updates a shipment's status, carrier, and/or tracking
32678// ID.
32679//
32680// - merchantId: The ID of the account that manages the order. This
32681//   cannot be a multi-client account.
32682// - orderId: The ID of the order.
32683func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
32684	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32685	c.merchantId = merchantId
32686	c.orderId = orderId
32687	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
32688	return c
32689}
32690
32691// Fields allows partial responses to be retrieved. See
32692// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32693// for more information.
32694func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
32695	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32696	return c
32697}
32698
32699// Context sets the context to be used in this call's Do method. Any
32700// pending HTTP request will be aborted if the provided context is
32701// canceled.
32702func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
32703	c.ctx_ = ctx
32704	return c
32705}
32706
32707// Header returns an http.Header that can be modified by the caller to
32708// add HTTP headers to the request.
32709func (c *OrdersUpdateshipmentCall) Header() http.Header {
32710	if c.header_ == nil {
32711		c.header_ = make(http.Header)
32712	}
32713	return c.header_
32714}
32715
32716func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
32717	reqHeaders := make(http.Header)
32718	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32719	for k, v := range c.header_ {
32720		reqHeaders[k] = v
32721	}
32722	reqHeaders.Set("User-Agent", c.s.userAgent())
32723	var body io.Reader = nil
32724	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
32725	if err != nil {
32726		return nil, err
32727	}
32728	reqHeaders.Set("Content-Type", "application/json")
32729	c.urlParams_.Set("alt", alt)
32730	c.urlParams_.Set("prettyPrint", "false")
32731	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateShipment")
32732	urls += "?" + c.urlParams_.Encode()
32733	req, err := http.NewRequest("POST", urls, body)
32734	if err != nil {
32735		return nil, err
32736	}
32737	req.Header = reqHeaders
32738	googleapi.Expand(req.URL, map[string]string{
32739		"merchantId": strconv.FormatUint(c.merchantId, 10),
32740		"orderId":    c.orderId,
32741	})
32742	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32743}
32744
32745// Do executes the "content.orders.updateshipment" call.
32746// Exactly one of *OrdersUpdateShipmentResponse or error will be
32747// non-nil. Any non-2xx status code is an error. Response headers are in
32748// either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
32749// response was returned at all) in error.(*googleapi.Error).Header. Use
32750// googleapi.IsNotModified to check whether the returned error was
32751// because http.StatusNotModified was returned.
32752func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
32753	gensupport.SetOptions(c.urlParams_, opts...)
32754	res, err := c.doRequest("json")
32755	if res != nil && res.StatusCode == http.StatusNotModified {
32756		if res.Body != nil {
32757			res.Body.Close()
32758		}
32759		return nil, &googleapi.Error{
32760			Code:   res.StatusCode,
32761			Header: res.Header,
32762		}
32763	}
32764	if err != nil {
32765		return nil, err
32766	}
32767	defer googleapi.CloseBody(res)
32768	if err := googleapi.CheckResponse(res); err != nil {
32769		return nil, err
32770	}
32771	ret := &OrdersUpdateShipmentResponse{
32772		ServerResponse: googleapi.ServerResponse{
32773			Header:         res.Header,
32774			HTTPStatusCode: res.StatusCode,
32775		},
32776	}
32777	target := &ret
32778	if err := gensupport.DecodeResponse(target, res); err != nil {
32779		return nil, err
32780	}
32781	return ret, nil
32782	// {
32783	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
32784	//   "flatPath": "{merchantId}/orders/{orderId}/updateShipment",
32785	//   "httpMethod": "POST",
32786	//   "id": "content.orders.updateshipment",
32787	//   "parameterOrder": [
32788	//     "merchantId",
32789	//     "orderId"
32790	//   ],
32791	//   "parameters": {
32792	//     "merchantId": {
32793	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32794	//       "format": "uint64",
32795	//       "location": "path",
32796	//       "required": true,
32797	//       "type": "string"
32798	//     },
32799	//     "orderId": {
32800	//       "description": "The ID of the order.",
32801	//       "location": "path",
32802	//       "required": true,
32803	//       "type": "string"
32804	//     }
32805	//   },
32806	//   "path": "{merchantId}/orders/{orderId}/updateShipment",
32807	//   "request": {
32808	//     "$ref": "OrdersUpdateShipmentRequest"
32809	//   },
32810	//   "response": {
32811	//     "$ref": "OrdersUpdateShipmentResponse"
32812	//   },
32813	//   "scopes": [
32814	//     "https://www.googleapis.com/auth/content"
32815	//   ]
32816	// }
32817
32818}
32819
32820// method id "content.ordertrackingsignals.create":
32821
32822type OrdertrackingsignalsCreateCall struct {
32823	s                   *APIService
32824	merchantId          int64
32825	ordertrackingsignal *OrderTrackingSignal
32826	urlParams_          gensupport.URLParams
32827	ctx_                context.Context
32828	header_             http.Header
32829}
32830
32831// Create: Creates new order tracking signal.
32832//
32833// - merchantId: The ID of the merchant for which the order signal is
32834//   created.
32835func (r *OrdertrackingsignalsService) Create(merchantId int64, ordertrackingsignal *OrderTrackingSignal) *OrdertrackingsignalsCreateCall {
32836	c := &OrdertrackingsignalsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32837	c.merchantId = merchantId
32838	c.ordertrackingsignal = ordertrackingsignal
32839	return c
32840}
32841
32842// Fields allows partial responses to be retrieved. See
32843// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32844// for more information.
32845func (c *OrdertrackingsignalsCreateCall) Fields(s ...googleapi.Field) *OrdertrackingsignalsCreateCall {
32846	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32847	return c
32848}
32849
32850// Context sets the context to be used in this call's Do method. Any
32851// pending HTTP request will be aborted if the provided context is
32852// canceled.
32853func (c *OrdertrackingsignalsCreateCall) Context(ctx context.Context) *OrdertrackingsignalsCreateCall {
32854	c.ctx_ = ctx
32855	return c
32856}
32857
32858// Header returns an http.Header that can be modified by the caller to
32859// add HTTP headers to the request.
32860func (c *OrdertrackingsignalsCreateCall) Header() http.Header {
32861	if c.header_ == nil {
32862		c.header_ = make(http.Header)
32863	}
32864	return c.header_
32865}
32866
32867func (c *OrdertrackingsignalsCreateCall) doRequest(alt string) (*http.Response, error) {
32868	reqHeaders := make(http.Header)
32869	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
32870	for k, v := range c.header_ {
32871		reqHeaders[k] = v
32872	}
32873	reqHeaders.Set("User-Agent", c.s.userAgent())
32874	var body io.Reader = nil
32875	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordertrackingsignal)
32876	if err != nil {
32877		return nil, err
32878	}
32879	reqHeaders.Set("Content-Type", "application/json")
32880	c.urlParams_.Set("alt", alt)
32881	c.urlParams_.Set("prettyPrint", "false")
32882	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordertrackingsignals")
32883	urls += "?" + c.urlParams_.Encode()
32884	req, err := http.NewRequest("POST", urls, body)
32885	if err != nil {
32886		return nil, err
32887	}
32888	req.Header = reqHeaders
32889	googleapi.Expand(req.URL, map[string]string{
32890		"merchantId": strconv.FormatInt(c.merchantId, 10),
32891	})
32892	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32893}
32894
32895// Do executes the "content.ordertrackingsignals.create" call.
32896// Exactly one of *OrderTrackingSignal or error will be non-nil. Any
32897// non-2xx status code is an error. Response headers are in either
32898// *OrderTrackingSignal.ServerResponse.Header or (if a response was
32899// returned at all) in error.(*googleapi.Error).Header. Use
32900// googleapi.IsNotModified to check whether the returned error was
32901// because http.StatusNotModified was returned.
32902func (c *OrdertrackingsignalsCreateCall) Do(opts ...googleapi.CallOption) (*OrderTrackingSignal, error) {
32903	gensupport.SetOptions(c.urlParams_, opts...)
32904	res, err := c.doRequest("json")
32905	if res != nil && res.StatusCode == http.StatusNotModified {
32906		if res.Body != nil {
32907			res.Body.Close()
32908		}
32909		return nil, &googleapi.Error{
32910			Code:   res.StatusCode,
32911			Header: res.Header,
32912		}
32913	}
32914	if err != nil {
32915		return nil, err
32916	}
32917	defer googleapi.CloseBody(res)
32918	if err := googleapi.CheckResponse(res); err != nil {
32919		return nil, err
32920	}
32921	ret := &OrderTrackingSignal{
32922		ServerResponse: googleapi.ServerResponse{
32923			Header:         res.Header,
32924			HTTPStatusCode: res.StatusCode,
32925		},
32926	}
32927	target := &ret
32928	if err := gensupport.DecodeResponse(target, res); err != nil {
32929		return nil, err
32930	}
32931	return ret, nil
32932	// {
32933	//   "description": "Creates new order tracking signal.",
32934	//   "flatPath": "{merchantId}/ordertrackingsignals",
32935	//   "httpMethod": "POST",
32936	//   "id": "content.ordertrackingsignals.create",
32937	//   "parameterOrder": [
32938	//     "merchantId"
32939	//   ],
32940	//   "parameters": {
32941	//     "merchantId": {
32942	//       "description": "The ID of the merchant for which the order signal is created.",
32943	//       "format": "int64",
32944	//       "location": "path",
32945	//       "required": true,
32946	//       "type": "string"
32947	//     }
32948	//   },
32949	//   "path": "{merchantId}/ordertrackingsignals",
32950	//   "request": {
32951	//     "$ref": "OrderTrackingSignal"
32952	//   },
32953	//   "response": {
32954	//     "$ref": "OrderTrackingSignal"
32955	//   },
32956	//   "scopes": [
32957	//     "https://www.googleapis.com/auth/content"
32958	//   ]
32959	// }
32960
32961}
32962
32963// method id "content.pos.custombatch":
32964
32965type PosCustombatchCall struct {
32966	s                     *APIService
32967	poscustombatchrequest *PosCustomBatchRequest
32968	urlParams_            gensupport.URLParams
32969	ctx_                  context.Context
32970	header_               http.Header
32971}
32972
32973// Custombatch: Batches multiple POS-related calls in a single request.
32974func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
32975	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32976	c.poscustombatchrequest = poscustombatchrequest
32977	return c
32978}
32979
32980// Fields allows partial responses to be retrieved. See
32981// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32982// for more information.
32983func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
32984	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32985	return c
32986}
32987
32988// Context sets the context to be used in this call's Do method. Any
32989// pending HTTP request will be aborted if the provided context is
32990// canceled.
32991func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
32992	c.ctx_ = ctx
32993	return c
32994}
32995
32996// Header returns an http.Header that can be modified by the caller to
32997// add HTTP headers to the request.
32998func (c *PosCustombatchCall) Header() http.Header {
32999	if c.header_ == nil {
33000		c.header_ = make(http.Header)
33001	}
33002	return c.header_
33003}
33004
33005func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
33006	reqHeaders := make(http.Header)
33007	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33008	for k, v := range c.header_ {
33009		reqHeaders[k] = v
33010	}
33011	reqHeaders.Set("User-Agent", c.s.userAgent())
33012	var body io.Reader = nil
33013	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
33014	if err != nil {
33015		return nil, err
33016	}
33017	reqHeaders.Set("Content-Type", "application/json")
33018	c.urlParams_.Set("alt", alt)
33019	c.urlParams_.Set("prettyPrint", "false")
33020	urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch")
33021	urls += "?" + c.urlParams_.Encode()
33022	req, err := http.NewRequest("POST", urls, body)
33023	if err != nil {
33024		return nil, err
33025	}
33026	req.Header = reqHeaders
33027	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33028}
33029
33030// Do executes the "content.pos.custombatch" call.
33031// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
33032// non-2xx status code is an error. Response headers are in either
33033// *PosCustomBatchResponse.ServerResponse.Header or (if a response was
33034// returned at all) in error.(*googleapi.Error).Header. Use
33035// googleapi.IsNotModified to check whether the returned error was
33036// because http.StatusNotModified was returned.
33037func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
33038	gensupport.SetOptions(c.urlParams_, opts...)
33039	res, err := c.doRequest("json")
33040	if res != nil && res.StatusCode == http.StatusNotModified {
33041		if res.Body != nil {
33042			res.Body.Close()
33043		}
33044		return nil, &googleapi.Error{
33045			Code:   res.StatusCode,
33046			Header: res.Header,
33047		}
33048	}
33049	if err != nil {
33050		return nil, err
33051	}
33052	defer googleapi.CloseBody(res)
33053	if err := googleapi.CheckResponse(res); err != nil {
33054		return nil, err
33055	}
33056	ret := &PosCustomBatchResponse{
33057		ServerResponse: googleapi.ServerResponse{
33058			Header:         res.Header,
33059			HTTPStatusCode: res.StatusCode,
33060		},
33061	}
33062	target := &ret
33063	if err := gensupport.DecodeResponse(target, res); err != nil {
33064		return nil, err
33065	}
33066	return ret, nil
33067	// {
33068	//   "description": "Batches multiple POS-related calls in a single request.",
33069	//   "flatPath": "pos/batch",
33070	//   "httpMethod": "POST",
33071	//   "id": "content.pos.custombatch",
33072	//   "parameterOrder": [],
33073	//   "parameters": {},
33074	//   "path": "pos/batch",
33075	//   "request": {
33076	//     "$ref": "PosCustomBatchRequest"
33077	//   },
33078	//   "response": {
33079	//     "$ref": "PosCustomBatchResponse"
33080	//   },
33081	//   "scopes": [
33082	//     "https://www.googleapis.com/auth/content"
33083	//   ]
33084	// }
33085
33086}
33087
33088// method id "content.pos.delete":
33089
33090type PosDeleteCall struct {
33091	s                *APIService
33092	merchantId       uint64
33093	targetMerchantId uint64
33094	storeCode        string
33095	urlParams_       gensupport.URLParams
33096	ctx_             context.Context
33097	header_          http.Header
33098}
33099
33100// Delete: Deletes a store for the given merchant.
33101//
33102// - merchantId: The ID of the POS or inventory data provider.
33103// - storeCode: A store code that is unique per merchant.
33104// - targetMerchantId: The ID of the target merchant.
33105func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
33106	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33107	c.merchantId = merchantId
33108	c.targetMerchantId = targetMerchantId
33109	c.storeCode = storeCode
33110	return c
33111}
33112
33113// Fields allows partial responses to be retrieved. See
33114// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33115// for more information.
33116func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
33117	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33118	return c
33119}
33120
33121// Context sets the context to be used in this call's Do method. Any
33122// pending HTTP request will be aborted if the provided context is
33123// canceled.
33124func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
33125	c.ctx_ = ctx
33126	return c
33127}
33128
33129// Header returns an http.Header that can be modified by the caller to
33130// add HTTP headers to the request.
33131func (c *PosDeleteCall) Header() http.Header {
33132	if c.header_ == nil {
33133		c.header_ = make(http.Header)
33134	}
33135	return c.header_
33136}
33137
33138func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
33139	reqHeaders := make(http.Header)
33140	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33141	for k, v := range c.header_ {
33142		reqHeaders[k] = v
33143	}
33144	reqHeaders.Set("User-Agent", c.s.userAgent())
33145	var body io.Reader = nil
33146	c.urlParams_.Set("alt", alt)
33147	c.urlParams_.Set("prettyPrint", "false")
33148	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
33149	urls += "?" + c.urlParams_.Encode()
33150	req, err := http.NewRequest("DELETE", urls, body)
33151	if err != nil {
33152		return nil, err
33153	}
33154	req.Header = reqHeaders
33155	googleapi.Expand(req.URL, map[string]string{
33156		"merchantId":       strconv.FormatUint(c.merchantId, 10),
33157		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
33158		"storeCode":        c.storeCode,
33159	})
33160	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33161}
33162
33163// Do executes the "content.pos.delete" call.
33164func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
33165	gensupport.SetOptions(c.urlParams_, opts...)
33166	res, err := c.doRequest("json")
33167	if err != nil {
33168		return err
33169	}
33170	defer googleapi.CloseBody(res)
33171	if err := googleapi.CheckResponse(res); err != nil {
33172		return err
33173	}
33174	return nil
33175	// {
33176	//   "description": "Deletes a store for the given merchant.",
33177	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
33178	//   "httpMethod": "DELETE",
33179	//   "id": "content.pos.delete",
33180	//   "parameterOrder": [
33181	//     "merchantId",
33182	//     "targetMerchantId",
33183	//     "storeCode"
33184	//   ],
33185	//   "parameters": {
33186	//     "merchantId": {
33187	//       "description": "The ID of the POS or inventory data provider.",
33188	//       "format": "uint64",
33189	//       "location": "path",
33190	//       "required": true,
33191	//       "type": "string"
33192	//     },
33193	//     "storeCode": {
33194	//       "description": "A store code that is unique per merchant.",
33195	//       "location": "path",
33196	//       "required": true,
33197	//       "type": "string"
33198	//     },
33199	//     "targetMerchantId": {
33200	//       "description": "The ID of the target merchant.",
33201	//       "format": "uint64",
33202	//       "location": "path",
33203	//       "required": true,
33204	//       "type": "string"
33205	//     }
33206	//   },
33207	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
33208	//   "scopes": [
33209	//     "https://www.googleapis.com/auth/content"
33210	//   ]
33211	// }
33212
33213}
33214
33215// method id "content.pos.get":
33216
33217type PosGetCall struct {
33218	s                *APIService
33219	merchantId       uint64
33220	targetMerchantId uint64
33221	storeCode        string
33222	urlParams_       gensupport.URLParams
33223	ifNoneMatch_     string
33224	ctx_             context.Context
33225	header_          http.Header
33226}
33227
33228// Get: Retrieves information about the given store.
33229//
33230// - merchantId: The ID of the POS or inventory data provider.
33231// - storeCode: A store code that is unique per merchant.
33232// - targetMerchantId: The ID of the target merchant.
33233func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
33234	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33235	c.merchantId = merchantId
33236	c.targetMerchantId = targetMerchantId
33237	c.storeCode = storeCode
33238	return c
33239}
33240
33241// Fields allows partial responses to be retrieved. See
33242// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33243// for more information.
33244func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
33245	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33246	return c
33247}
33248
33249// IfNoneMatch sets the optional parameter which makes the operation
33250// fail if the object's ETag matches the given value. This is useful for
33251// getting updates only after the object has changed since the last
33252// request. Use googleapi.IsNotModified to check whether the response
33253// error from Do is the result of In-None-Match.
33254func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
33255	c.ifNoneMatch_ = entityTag
33256	return c
33257}
33258
33259// Context sets the context to be used in this call's Do method. Any
33260// pending HTTP request will be aborted if the provided context is
33261// canceled.
33262func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
33263	c.ctx_ = ctx
33264	return c
33265}
33266
33267// Header returns an http.Header that can be modified by the caller to
33268// add HTTP headers to the request.
33269func (c *PosGetCall) Header() http.Header {
33270	if c.header_ == nil {
33271		c.header_ = make(http.Header)
33272	}
33273	return c.header_
33274}
33275
33276func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
33277	reqHeaders := make(http.Header)
33278	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33279	for k, v := range c.header_ {
33280		reqHeaders[k] = v
33281	}
33282	reqHeaders.Set("User-Agent", c.s.userAgent())
33283	if c.ifNoneMatch_ != "" {
33284		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33285	}
33286	var body io.Reader = nil
33287	c.urlParams_.Set("alt", alt)
33288	c.urlParams_.Set("prettyPrint", "false")
33289	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
33290	urls += "?" + c.urlParams_.Encode()
33291	req, err := http.NewRequest("GET", urls, body)
33292	if err != nil {
33293		return nil, err
33294	}
33295	req.Header = reqHeaders
33296	googleapi.Expand(req.URL, map[string]string{
33297		"merchantId":       strconv.FormatUint(c.merchantId, 10),
33298		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
33299		"storeCode":        c.storeCode,
33300	})
33301	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33302}
33303
33304// Do executes the "content.pos.get" call.
33305// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
33306// code is an error. Response headers are in either
33307// *PosStore.ServerResponse.Header or (if a response was returned at
33308// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
33309// to check whether the returned error was because
33310// http.StatusNotModified was returned.
33311func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
33312	gensupport.SetOptions(c.urlParams_, opts...)
33313	res, err := c.doRequest("json")
33314	if res != nil && res.StatusCode == http.StatusNotModified {
33315		if res.Body != nil {
33316			res.Body.Close()
33317		}
33318		return nil, &googleapi.Error{
33319			Code:   res.StatusCode,
33320			Header: res.Header,
33321		}
33322	}
33323	if err != nil {
33324		return nil, err
33325	}
33326	defer googleapi.CloseBody(res)
33327	if err := googleapi.CheckResponse(res); err != nil {
33328		return nil, err
33329	}
33330	ret := &PosStore{
33331		ServerResponse: googleapi.ServerResponse{
33332			Header:         res.Header,
33333			HTTPStatusCode: res.StatusCode,
33334		},
33335	}
33336	target := &ret
33337	if err := gensupport.DecodeResponse(target, res); err != nil {
33338		return nil, err
33339	}
33340	return ret, nil
33341	// {
33342	//   "description": "Retrieves information about the given store.",
33343	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
33344	//   "httpMethod": "GET",
33345	//   "id": "content.pos.get",
33346	//   "parameterOrder": [
33347	//     "merchantId",
33348	//     "targetMerchantId",
33349	//     "storeCode"
33350	//   ],
33351	//   "parameters": {
33352	//     "merchantId": {
33353	//       "description": "The ID of the POS or inventory data provider.",
33354	//       "format": "uint64",
33355	//       "location": "path",
33356	//       "required": true,
33357	//       "type": "string"
33358	//     },
33359	//     "storeCode": {
33360	//       "description": "A store code that is unique per merchant.",
33361	//       "location": "path",
33362	//       "required": true,
33363	//       "type": "string"
33364	//     },
33365	//     "targetMerchantId": {
33366	//       "description": "The ID of the target merchant.",
33367	//       "format": "uint64",
33368	//       "location": "path",
33369	//       "required": true,
33370	//       "type": "string"
33371	//     }
33372	//   },
33373	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
33374	//   "response": {
33375	//     "$ref": "PosStore"
33376	//   },
33377	//   "scopes": [
33378	//     "https://www.googleapis.com/auth/content"
33379	//   ]
33380	// }
33381
33382}
33383
33384// method id "content.pos.insert":
33385
33386type PosInsertCall struct {
33387	s                *APIService
33388	merchantId       uint64
33389	targetMerchantId uint64
33390	posstore         *PosStore
33391	urlParams_       gensupport.URLParams
33392	ctx_             context.Context
33393	header_          http.Header
33394}
33395
33396// Insert: Creates a store for the given merchant.
33397//
33398// - merchantId: The ID of the POS or inventory data provider.
33399// - targetMerchantId: The ID of the target merchant.
33400func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
33401	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33402	c.merchantId = merchantId
33403	c.targetMerchantId = targetMerchantId
33404	c.posstore = posstore
33405	return c
33406}
33407
33408// Fields allows partial responses to be retrieved. See
33409// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33410// for more information.
33411func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
33412	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33413	return c
33414}
33415
33416// Context sets the context to be used in this call's Do method. Any
33417// pending HTTP request will be aborted if the provided context is
33418// canceled.
33419func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
33420	c.ctx_ = ctx
33421	return c
33422}
33423
33424// Header returns an http.Header that can be modified by the caller to
33425// add HTTP headers to the request.
33426func (c *PosInsertCall) Header() http.Header {
33427	if c.header_ == nil {
33428		c.header_ = make(http.Header)
33429	}
33430	return c.header_
33431}
33432
33433func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
33434	reqHeaders := make(http.Header)
33435	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33436	for k, v := range c.header_ {
33437		reqHeaders[k] = v
33438	}
33439	reqHeaders.Set("User-Agent", c.s.userAgent())
33440	var body io.Reader = nil
33441	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
33442	if err != nil {
33443		return nil, err
33444	}
33445	reqHeaders.Set("Content-Type", "application/json")
33446	c.urlParams_.Set("alt", alt)
33447	c.urlParams_.Set("prettyPrint", "false")
33448	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
33449	urls += "?" + c.urlParams_.Encode()
33450	req, err := http.NewRequest("POST", urls, body)
33451	if err != nil {
33452		return nil, err
33453	}
33454	req.Header = reqHeaders
33455	googleapi.Expand(req.URL, map[string]string{
33456		"merchantId":       strconv.FormatUint(c.merchantId, 10),
33457		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
33458	})
33459	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33460}
33461
33462// Do executes the "content.pos.insert" call.
33463// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
33464// code is an error. Response headers are in either
33465// *PosStore.ServerResponse.Header or (if a response was returned at
33466// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
33467// to check whether the returned error was because
33468// http.StatusNotModified was returned.
33469func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
33470	gensupport.SetOptions(c.urlParams_, opts...)
33471	res, err := c.doRequest("json")
33472	if res != nil && res.StatusCode == http.StatusNotModified {
33473		if res.Body != nil {
33474			res.Body.Close()
33475		}
33476		return nil, &googleapi.Error{
33477			Code:   res.StatusCode,
33478			Header: res.Header,
33479		}
33480	}
33481	if err != nil {
33482		return nil, err
33483	}
33484	defer googleapi.CloseBody(res)
33485	if err := googleapi.CheckResponse(res); err != nil {
33486		return nil, err
33487	}
33488	ret := &PosStore{
33489		ServerResponse: googleapi.ServerResponse{
33490			Header:         res.Header,
33491			HTTPStatusCode: res.StatusCode,
33492		},
33493	}
33494	target := &ret
33495	if err := gensupport.DecodeResponse(target, res); err != nil {
33496		return nil, err
33497	}
33498	return ret, nil
33499	// {
33500	//   "description": "Creates a store for the given merchant.",
33501	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
33502	//   "httpMethod": "POST",
33503	//   "id": "content.pos.insert",
33504	//   "parameterOrder": [
33505	//     "merchantId",
33506	//     "targetMerchantId"
33507	//   ],
33508	//   "parameters": {
33509	//     "merchantId": {
33510	//       "description": "The ID of the POS or inventory data provider.",
33511	//       "format": "uint64",
33512	//       "location": "path",
33513	//       "required": true,
33514	//       "type": "string"
33515	//     },
33516	//     "targetMerchantId": {
33517	//       "description": "The ID of the target merchant.",
33518	//       "format": "uint64",
33519	//       "location": "path",
33520	//       "required": true,
33521	//       "type": "string"
33522	//     }
33523	//   },
33524	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
33525	//   "request": {
33526	//     "$ref": "PosStore"
33527	//   },
33528	//   "response": {
33529	//     "$ref": "PosStore"
33530	//   },
33531	//   "scopes": [
33532	//     "https://www.googleapis.com/auth/content"
33533	//   ]
33534	// }
33535
33536}
33537
33538// method id "content.pos.inventory":
33539
33540type PosInventoryCall struct {
33541	s                   *APIService
33542	merchantId          uint64
33543	targetMerchantId    uint64
33544	posinventoryrequest *PosInventoryRequest
33545	urlParams_          gensupport.URLParams
33546	ctx_                context.Context
33547	header_             http.Header
33548}
33549
33550// Inventory: Submit inventory for the given merchant.
33551//
33552// - merchantId: The ID of the POS or inventory data provider.
33553// - targetMerchantId: The ID of the target merchant.
33554func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
33555	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33556	c.merchantId = merchantId
33557	c.targetMerchantId = targetMerchantId
33558	c.posinventoryrequest = posinventoryrequest
33559	return c
33560}
33561
33562// Fields allows partial responses to be retrieved. See
33563// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33564// for more information.
33565func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
33566	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33567	return c
33568}
33569
33570// Context sets the context to be used in this call's Do method. Any
33571// pending HTTP request will be aborted if the provided context is
33572// canceled.
33573func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
33574	c.ctx_ = ctx
33575	return c
33576}
33577
33578// Header returns an http.Header that can be modified by the caller to
33579// add HTTP headers to the request.
33580func (c *PosInventoryCall) Header() http.Header {
33581	if c.header_ == nil {
33582		c.header_ = make(http.Header)
33583	}
33584	return c.header_
33585}
33586
33587func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
33588	reqHeaders := make(http.Header)
33589	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33590	for k, v := range c.header_ {
33591		reqHeaders[k] = v
33592	}
33593	reqHeaders.Set("User-Agent", c.s.userAgent())
33594	var body io.Reader = nil
33595	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
33596	if err != nil {
33597		return nil, err
33598	}
33599	reqHeaders.Set("Content-Type", "application/json")
33600	c.urlParams_.Set("alt", alt)
33601	c.urlParams_.Set("prettyPrint", "false")
33602	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory")
33603	urls += "?" + c.urlParams_.Encode()
33604	req, err := http.NewRequest("POST", urls, body)
33605	if err != nil {
33606		return nil, err
33607	}
33608	req.Header = reqHeaders
33609	googleapi.Expand(req.URL, map[string]string{
33610		"merchantId":       strconv.FormatUint(c.merchantId, 10),
33611		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
33612	})
33613	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33614}
33615
33616// Do executes the "content.pos.inventory" call.
33617// Exactly one of *PosInventoryResponse or error will be non-nil. Any
33618// non-2xx status code is an error. Response headers are in either
33619// *PosInventoryResponse.ServerResponse.Header or (if a response was
33620// returned at all) in error.(*googleapi.Error).Header. Use
33621// googleapi.IsNotModified to check whether the returned error was
33622// because http.StatusNotModified was returned.
33623func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
33624	gensupport.SetOptions(c.urlParams_, opts...)
33625	res, err := c.doRequest("json")
33626	if res != nil && res.StatusCode == http.StatusNotModified {
33627		if res.Body != nil {
33628			res.Body.Close()
33629		}
33630		return nil, &googleapi.Error{
33631			Code:   res.StatusCode,
33632			Header: res.Header,
33633		}
33634	}
33635	if err != nil {
33636		return nil, err
33637	}
33638	defer googleapi.CloseBody(res)
33639	if err := googleapi.CheckResponse(res); err != nil {
33640		return nil, err
33641	}
33642	ret := &PosInventoryResponse{
33643		ServerResponse: googleapi.ServerResponse{
33644			Header:         res.Header,
33645			HTTPStatusCode: res.StatusCode,
33646		},
33647	}
33648	target := &ret
33649	if err := gensupport.DecodeResponse(target, res); err != nil {
33650		return nil, err
33651	}
33652	return ret, nil
33653	// {
33654	//   "description": "Submit inventory for the given merchant.",
33655	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/inventory",
33656	//   "httpMethod": "POST",
33657	//   "id": "content.pos.inventory",
33658	//   "parameterOrder": [
33659	//     "merchantId",
33660	//     "targetMerchantId"
33661	//   ],
33662	//   "parameters": {
33663	//     "merchantId": {
33664	//       "description": "The ID of the POS or inventory data provider.",
33665	//       "format": "uint64",
33666	//       "location": "path",
33667	//       "required": true,
33668	//       "type": "string"
33669	//     },
33670	//     "targetMerchantId": {
33671	//       "description": "The ID of the target merchant.",
33672	//       "format": "uint64",
33673	//       "location": "path",
33674	//       "required": true,
33675	//       "type": "string"
33676	//     }
33677	//   },
33678	//   "path": "{merchantId}/pos/{targetMerchantId}/inventory",
33679	//   "request": {
33680	//     "$ref": "PosInventoryRequest"
33681	//   },
33682	//   "response": {
33683	//     "$ref": "PosInventoryResponse"
33684	//   },
33685	//   "scopes": [
33686	//     "https://www.googleapis.com/auth/content"
33687	//   ]
33688	// }
33689
33690}
33691
33692// method id "content.pos.list":
33693
33694type PosListCall struct {
33695	s                *APIService
33696	merchantId       uint64
33697	targetMerchantId uint64
33698	urlParams_       gensupport.URLParams
33699	ifNoneMatch_     string
33700	ctx_             context.Context
33701	header_          http.Header
33702}
33703
33704// List: Lists the stores of the target merchant.
33705//
33706// - merchantId: The ID of the POS or inventory data provider.
33707// - targetMerchantId: The ID of the target merchant.
33708func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
33709	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33710	c.merchantId = merchantId
33711	c.targetMerchantId = targetMerchantId
33712	return c
33713}
33714
33715// Fields allows partial responses to be retrieved. See
33716// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33717// for more information.
33718func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
33719	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33720	return c
33721}
33722
33723// IfNoneMatch sets the optional parameter which makes the operation
33724// fail if the object's ETag matches the given value. This is useful for
33725// getting updates only after the object has changed since the last
33726// request. Use googleapi.IsNotModified to check whether the response
33727// error from Do is the result of In-None-Match.
33728func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
33729	c.ifNoneMatch_ = entityTag
33730	return c
33731}
33732
33733// Context sets the context to be used in this call's Do method. Any
33734// pending HTTP request will be aborted if the provided context is
33735// canceled.
33736func (c *PosListCall) Context(ctx context.Context) *PosListCall {
33737	c.ctx_ = ctx
33738	return c
33739}
33740
33741// Header returns an http.Header that can be modified by the caller to
33742// add HTTP headers to the request.
33743func (c *PosListCall) Header() http.Header {
33744	if c.header_ == nil {
33745		c.header_ = make(http.Header)
33746	}
33747	return c.header_
33748}
33749
33750func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
33751	reqHeaders := make(http.Header)
33752	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33753	for k, v := range c.header_ {
33754		reqHeaders[k] = v
33755	}
33756	reqHeaders.Set("User-Agent", c.s.userAgent())
33757	if c.ifNoneMatch_ != "" {
33758		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33759	}
33760	var body io.Reader = nil
33761	c.urlParams_.Set("alt", alt)
33762	c.urlParams_.Set("prettyPrint", "false")
33763	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
33764	urls += "?" + c.urlParams_.Encode()
33765	req, err := http.NewRequest("GET", urls, body)
33766	if err != nil {
33767		return nil, err
33768	}
33769	req.Header = reqHeaders
33770	googleapi.Expand(req.URL, map[string]string{
33771		"merchantId":       strconv.FormatUint(c.merchantId, 10),
33772		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
33773	})
33774	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33775}
33776
33777// Do executes the "content.pos.list" call.
33778// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
33779// status code is an error. Response headers are in either
33780// *PosListResponse.ServerResponse.Header or (if a response was returned
33781// at all) in error.(*googleapi.Error).Header. Use
33782// googleapi.IsNotModified to check whether the returned error was
33783// because http.StatusNotModified was returned.
33784func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
33785	gensupport.SetOptions(c.urlParams_, opts...)
33786	res, err := c.doRequest("json")
33787	if res != nil && res.StatusCode == http.StatusNotModified {
33788		if res.Body != nil {
33789			res.Body.Close()
33790		}
33791		return nil, &googleapi.Error{
33792			Code:   res.StatusCode,
33793			Header: res.Header,
33794		}
33795	}
33796	if err != nil {
33797		return nil, err
33798	}
33799	defer googleapi.CloseBody(res)
33800	if err := googleapi.CheckResponse(res); err != nil {
33801		return nil, err
33802	}
33803	ret := &PosListResponse{
33804		ServerResponse: googleapi.ServerResponse{
33805			Header:         res.Header,
33806			HTTPStatusCode: res.StatusCode,
33807		},
33808	}
33809	target := &ret
33810	if err := gensupport.DecodeResponse(target, res); err != nil {
33811		return nil, err
33812	}
33813	return ret, nil
33814	// {
33815	//   "description": "Lists the stores of the target merchant.",
33816	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
33817	//   "httpMethod": "GET",
33818	//   "id": "content.pos.list",
33819	//   "parameterOrder": [
33820	//     "merchantId",
33821	//     "targetMerchantId"
33822	//   ],
33823	//   "parameters": {
33824	//     "merchantId": {
33825	//       "description": "The ID of the POS or inventory data provider.",
33826	//       "format": "uint64",
33827	//       "location": "path",
33828	//       "required": true,
33829	//       "type": "string"
33830	//     },
33831	//     "targetMerchantId": {
33832	//       "description": "The ID of the target merchant.",
33833	//       "format": "uint64",
33834	//       "location": "path",
33835	//       "required": true,
33836	//       "type": "string"
33837	//     }
33838	//   },
33839	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
33840	//   "response": {
33841	//     "$ref": "PosListResponse"
33842	//   },
33843	//   "scopes": [
33844	//     "https://www.googleapis.com/auth/content"
33845	//   ]
33846	// }
33847
33848}
33849
33850// method id "content.pos.sale":
33851
33852type PosSaleCall struct {
33853	s                *APIService
33854	merchantId       uint64
33855	targetMerchantId uint64
33856	possalerequest   *PosSaleRequest
33857	urlParams_       gensupport.URLParams
33858	ctx_             context.Context
33859	header_          http.Header
33860}
33861
33862// Sale: Submit a sale event for the given merchant.
33863//
33864// - merchantId: The ID of the POS or inventory data provider.
33865// - targetMerchantId: The ID of the target merchant.
33866func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
33867	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33868	c.merchantId = merchantId
33869	c.targetMerchantId = targetMerchantId
33870	c.possalerequest = possalerequest
33871	return c
33872}
33873
33874// Fields allows partial responses to be retrieved. See
33875// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33876// for more information.
33877func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
33878	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33879	return c
33880}
33881
33882// Context sets the context to be used in this call's Do method. Any
33883// pending HTTP request will be aborted if the provided context is
33884// canceled.
33885func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
33886	c.ctx_ = ctx
33887	return c
33888}
33889
33890// Header returns an http.Header that can be modified by the caller to
33891// add HTTP headers to the request.
33892func (c *PosSaleCall) Header() http.Header {
33893	if c.header_ == nil {
33894		c.header_ = make(http.Header)
33895	}
33896	return c.header_
33897}
33898
33899func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
33900	reqHeaders := make(http.Header)
33901	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
33902	for k, v := range c.header_ {
33903		reqHeaders[k] = v
33904	}
33905	reqHeaders.Set("User-Agent", c.s.userAgent())
33906	var body io.Reader = nil
33907	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
33908	if err != nil {
33909		return nil, err
33910	}
33911	reqHeaders.Set("Content-Type", "application/json")
33912	c.urlParams_.Set("alt", alt)
33913	c.urlParams_.Set("prettyPrint", "false")
33914	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale")
33915	urls += "?" + c.urlParams_.Encode()
33916	req, err := http.NewRequest("POST", urls, body)
33917	if err != nil {
33918		return nil, err
33919	}
33920	req.Header = reqHeaders
33921	googleapi.Expand(req.URL, map[string]string{
33922		"merchantId":       strconv.FormatUint(c.merchantId, 10),
33923		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
33924	})
33925	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33926}
33927
33928// Do executes the "content.pos.sale" call.
33929// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
33930// status code is an error. Response headers are in either
33931// *PosSaleResponse.ServerResponse.Header or (if a response was returned
33932// at all) in error.(*googleapi.Error).Header. Use
33933// googleapi.IsNotModified to check whether the returned error was
33934// because http.StatusNotModified was returned.
33935func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) {
33936	gensupport.SetOptions(c.urlParams_, opts...)
33937	res, err := c.doRequest("json")
33938	if res != nil && res.StatusCode == http.StatusNotModified {
33939		if res.Body != nil {
33940			res.Body.Close()
33941		}
33942		return nil, &googleapi.Error{
33943			Code:   res.StatusCode,
33944			Header: res.Header,
33945		}
33946	}
33947	if err != nil {
33948		return nil, err
33949	}
33950	defer googleapi.CloseBody(res)
33951	if err := googleapi.CheckResponse(res); err != nil {
33952		return nil, err
33953	}
33954	ret := &PosSaleResponse{
33955		ServerResponse: googleapi.ServerResponse{
33956			Header:         res.Header,
33957			HTTPStatusCode: res.StatusCode,
33958		},
33959	}
33960	target := &ret
33961	if err := gensupport.DecodeResponse(target, res); err != nil {
33962		return nil, err
33963	}
33964	return ret, nil
33965	// {
33966	//   "description": "Submit a sale event for the given merchant.",
33967	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/sale",
33968	//   "httpMethod": "POST",
33969	//   "id": "content.pos.sale",
33970	//   "parameterOrder": [
33971	//     "merchantId",
33972	//     "targetMerchantId"
33973	//   ],
33974	//   "parameters": {
33975	//     "merchantId": {
33976	//       "description": "The ID of the POS or inventory data provider.",
33977	//       "format": "uint64",
33978	//       "location": "path",
33979	//       "required": true,
33980	//       "type": "string"
33981	//     },
33982	//     "targetMerchantId": {
33983	//       "description": "The ID of the target merchant.",
33984	//       "format": "uint64",
33985	//       "location": "path",
33986	//       "required": true,
33987	//       "type": "string"
33988	//     }
33989	//   },
33990	//   "path": "{merchantId}/pos/{targetMerchantId}/sale",
33991	//   "request": {
33992	//     "$ref": "PosSaleRequest"
33993	//   },
33994	//   "response": {
33995	//     "$ref": "PosSaleResponse"
33996	//   },
33997	//   "scopes": [
33998	//     "https://www.googleapis.com/auth/content"
33999	//   ]
34000	// }
34001
34002}
34003
34004// method id "content.products.custombatch":
34005
34006type ProductsCustombatchCall struct {
34007	s                          *APIService
34008	productscustombatchrequest *ProductsCustomBatchRequest
34009	urlParams_                 gensupport.URLParams
34010	ctx_                       context.Context
34011	header_                    http.Header
34012}
34013
34014// Custombatch: Retrieves, inserts, and deletes multiple products in a
34015// single request.
34016func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
34017	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34018	c.productscustombatchrequest = productscustombatchrequest
34019	return c
34020}
34021
34022// Fields allows partial responses to be retrieved. See
34023// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34024// for more information.
34025func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
34026	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34027	return c
34028}
34029
34030// Context sets the context to be used in this call's Do method. Any
34031// pending HTTP request will be aborted if the provided context is
34032// canceled.
34033func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
34034	c.ctx_ = ctx
34035	return c
34036}
34037
34038// Header returns an http.Header that can be modified by the caller to
34039// add HTTP headers to the request.
34040func (c *ProductsCustombatchCall) Header() http.Header {
34041	if c.header_ == nil {
34042		c.header_ = make(http.Header)
34043	}
34044	return c.header_
34045}
34046
34047func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
34048	reqHeaders := make(http.Header)
34049	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34050	for k, v := range c.header_ {
34051		reqHeaders[k] = v
34052	}
34053	reqHeaders.Set("User-Agent", c.s.userAgent())
34054	var body io.Reader = nil
34055	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
34056	if err != nil {
34057		return nil, err
34058	}
34059	reqHeaders.Set("Content-Type", "application/json")
34060	c.urlParams_.Set("alt", alt)
34061	c.urlParams_.Set("prettyPrint", "false")
34062	urls := googleapi.ResolveRelative(c.s.BasePath, "products/batch")
34063	urls += "?" + c.urlParams_.Encode()
34064	req, err := http.NewRequest("POST", urls, body)
34065	if err != nil {
34066		return nil, err
34067	}
34068	req.Header = reqHeaders
34069	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34070}
34071
34072// Do executes the "content.products.custombatch" call.
34073// Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
34074// Any non-2xx status code is an error. Response headers are in either
34075// *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
34076// was returned at all) in error.(*googleapi.Error).Header. Use
34077// googleapi.IsNotModified to check whether the returned error was
34078// because http.StatusNotModified was returned.
34079func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
34080	gensupport.SetOptions(c.urlParams_, opts...)
34081	res, err := c.doRequest("json")
34082	if res != nil && res.StatusCode == http.StatusNotModified {
34083		if res.Body != nil {
34084			res.Body.Close()
34085		}
34086		return nil, &googleapi.Error{
34087			Code:   res.StatusCode,
34088			Header: res.Header,
34089		}
34090	}
34091	if err != nil {
34092		return nil, err
34093	}
34094	defer googleapi.CloseBody(res)
34095	if err := googleapi.CheckResponse(res); err != nil {
34096		return nil, err
34097	}
34098	ret := &ProductsCustomBatchResponse{
34099		ServerResponse: googleapi.ServerResponse{
34100			Header:         res.Header,
34101			HTTPStatusCode: res.StatusCode,
34102		},
34103	}
34104	target := &ret
34105	if err := gensupport.DecodeResponse(target, res); err != nil {
34106		return nil, err
34107	}
34108	return ret, nil
34109	// {
34110	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
34111	//   "flatPath": "products/batch",
34112	//   "httpMethod": "POST",
34113	//   "id": "content.products.custombatch",
34114	//   "parameterOrder": [],
34115	//   "parameters": {},
34116	//   "path": "products/batch",
34117	//   "request": {
34118	//     "$ref": "ProductsCustomBatchRequest"
34119	//   },
34120	//   "response": {
34121	//     "$ref": "ProductsCustomBatchResponse"
34122	//   },
34123	//   "scopes": [
34124	//     "https://www.googleapis.com/auth/content"
34125	//   ]
34126	// }
34127
34128}
34129
34130// method id "content.products.delete":
34131
34132type ProductsDeleteCall struct {
34133	s          *APIService
34134	merchantId uint64
34135	productId  string
34136	urlParams_ gensupport.URLParams
34137	ctx_       context.Context
34138	header_    http.Header
34139}
34140
34141// Delete: Deletes a product from your Merchant Center account.
34142//
34143// - merchantId: The ID of the account that contains the product. This
34144//   account cannot be a multi-client account.
34145// - productId: The REST ID of the product.
34146func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
34147	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34148	c.merchantId = merchantId
34149	c.productId = productId
34150	return c
34151}
34152
34153// FeedId sets the optional parameter "feedId": The Content API
34154// Supplemental Feed ID. If present then product deletion applies to the
34155// data in a supplemental feed. If absent, entire product will be
34156// deleted.
34157func (c *ProductsDeleteCall) FeedId(feedId uint64) *ProductsDeleteCall {
34158	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
34159	return c
34160}
34161
34162// Fields allows partial responses to be retrieved. See
34163// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34164// for more information.
34165func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
34166	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34167	return c
34168}
34169
34170// Context sets the context to be used in this call's Do method. Any
34171// pending HTTP request will be aborted if the provided context is
34172// canceled.
34173func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
34174	c.ctx_ = ctx
34175	return c
34176}
34177
34178// Header returns an http.Header that can be modified by the caller to
34179// add HTTP headers to the request.
34180func (c *ProductsDeleteCall) Header() http.Header {
34181	if c.header_ == nil {
34182		c.header_ = make(http.Header)
34183	}
34184	return c.header_
34185}
34186
34187func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
34188	reqHeaders := make(http.Header)
34189	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34190	for k, v := range c.header_ {
34191		reqHeaders[k] = v
34192	}
34193	reqHeaders.Set("User-Agent", c.s.userAgent())
34194	var body io.Reader = nil
34195	c.urlParams_.Set("alt", alt)
34196	c.urlParams_.Set("prettyPrint", "false")
34197	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
34198	urls += "?" + c.urlParams_.Encode()
34199	req, err := http.NewRequest("DELETE", urls, body)
34200	if err != nil {
34201		return nil, err
34202	}
34203	req.Header = reqHeaders
34204	googleapi.Expand(req.URL, map[string]string{
34205		"merchantId": strconv.FormatUint(c.merchantId, 10),
34206		"productId":  c.productId,
34207	})
34208	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34209}
34210
34211// Do executes the "content.products.delete" call.
34212func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
34213	gensupport.SetOptions(c.urlParams_, opts...)
34214	res, err := c.doRequest("json")
34215	if err != nil {
34216		return err
34217	}
34218	defer googleapi.CloseBody(res)
34219	if err := googleapi.CheckResponse(res); err != nil {
34220		return err
34221	}
34222	return nil
34223	// {
34224	//   "description": "Deletes a product from your Merchant Center account.",
34225	//   "flatPath": "{merchantId}/products/{productId}",
34226	//   "httpMethod": "DELETE",
34227	//   "id": "content.products.delete",
34228	//   "parameterOrder": [
34229	//     "merchantId",
34230	//     "productId"
34231	//   ],
34232	//   "parameters": {
34233	//     "feedId": {
34234	//       "description": "The Content API Supplemental Feed ID. If present then product deletion applies to the data in a supplemental feed. If absent, entire product will be deleted.",
34235	//       "format": "uint64",
34236	//       "location": "query",
34237	//       "type": "string"
34238	//     },
34239	//     "merchantId": {
34240	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
34241	//       "format": "uint64",
34242	//       "location": "path",
34243	//       "required": true,
34244	//       "type": "string"
34245	//     },
34246	//     "productId": {
34247	//       "description": "The REST ID of the product.",
34248	//       "location": "path",
34249	//       "required": true,
34250	//       "type": "string"
34251	//     }
34252	//   },
34253	//   "path": "{merchantId}/products/{productId}",
34254	//   "scopes": [
34255	//     "https://www.googleapis.com/auth/content"
34256	//   ]
34257	// }
34258
34259}
34260
34261// method id "content.products.get":
34262
34263type ProductsGetCall struct {
34264	s            *APIService
34265	merchantId   uint64
34266	productId    string
34267	urlParams_   gensupport.URLParams
34268	ifNoneMatch_ string
34269	ctx_         context.Context
34270	header_      http.Header
34271}
34272
34273// Get: Retrieves a product from your Merchant Center account.
34274//
34275// - merchantId: The ID of the account that contains the product. This
34276//   account cannot be a multi-client account.
34277// - productId: The REST ID of the product.
34278func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
34279	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34280	c.merchantId = merchantId
34281	c.productId = productId
34282	return c
34283}
34284
34285// Fields allows partial responses to be retrieved. See
34286// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34287// for more information.
34288func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
34289	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34290	return c
34291}
34292
34293// IfNoneMatch sets the optional parameter which makes the operation
34294// fail if the object's ETag matches the given value. This is useful for
34295// getting updates only after the object has changed since the last
34296// request. Use googleapi.IsNotModified to check whether the response
34297// error from Do is the result of In-None-Match.
34298func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
34299	c.ifNoneMatch_ = entityTag
34300	return c
34301}
34302
34303// Context sets the context to be used in this call's Do method. Any
34304// pending HTTP request will be aborted if the provided context is
34305// canceled.
34306func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
34307	c.ctx_ = ctx
34308	return c
34309}
34310
34311// Header returns an http.Header that can be modified by the caller to
34312// add HTTP headers to the request.
34313func (c *ProductsGetCall) Header() http.Header {
34314	if c.header_ == nil {
34315		c.header_ = make(http.Header)
34316	}
34317	return c.header_
34318}
34319
34320func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
34321	reqHeaders := make(http.Header)
34322	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34323	for k, v := range c.header_ {
34324		reqHeaders[k] = v
34325	}
34326	reqHeaders.Set("User-Agent", c.s.userAgent())
34327	if c.ifNoneMatch_ != "" {
34328		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34329	}
34330	var body io.Reader = nil
34331	c.urlParams_.Set("alt", alt)
34332	c.urlParams_.Set("prettyPrint", "false")
34333	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
34334	urls += "?" + c.urlParams_.Encode()
34335	req, err := http.NewRequest("GET", urls, body)
34336	if err != nil {
34337		return nil, err
34338	}
34339	req.Header = reqHeaders
34340	googleapi.Expand(req.URL, map[string]string{
34341		"merchantId": strconv.FormatUint(c.merchantId, 10),
34342		"productId":  c.productId,
34343	})
34344	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34345}
34346
34347// Do executes the "content.products.get" call.
34348// Exactly one of *Product or error will be non-nil. Any non-2xx status
34349// code is an error. Response headers are in either
34350// *Product.ServerResponse.Header or (if a response was returned at all)
34351// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
34352// check whether the returned error was because http.StatusNotModified
34353// was returned.
34354func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
34355	gensupport.SetOptions(c.urlParams_, opts...)
34356	res, err := c.doRequest("json")
34357	if res != nil && res.StatusCode == http.StatusNotModified {
34358		if res.Body != nil {
34359			res.Body.Close()
34360		}
34361		return nil, &googleapi.Error{
34362			Code:   res.StatusCode,
34363			Header: res.Header,
34364		}
34365	}
34366	if err != nil {
34367		return nil, err
34368	}
34369	defer googleapi.CloseBody(res)
34370	if err := googleapi.CheckResponse(res); err != nil {
34371		return nil, err
34372	}
34373	ret := &Product{
34374		ServerResponse: googleapi.ServerResponse{
34375			Header:         res.Header,
34376			HTTPStatusCode: res.StatusCode,
34377		},
34378	}
34379	target := &ret
34380	if err := gensupport.DecodeResponse(target, res); err != nil {
34381		return nil, err
34382	}
34383	return ret, nil
34384	// {
34385	//   "description": "Retrieves a product from your Merchant Center account.",
34386	//   "flatPath": "{merchantId}/products/{productId}",
34387	//   "httpMethod": "GET",
34388	//   "id": "content.products.get",
34389	//   "parameterOrder": [
34390	//     "merchantId",
34391	//     "productId"
34392	//   ],
34393	//   "parameters": {
34394	//     "merchantId": {
34395	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
34396	//       "format": "uint64",
34397	//       "location": "path",
34398	//       "required": true,
34399	//       "type": "string"
34400	//     },
34401	//     "productId": {
34402	//       "description": "The REST ID of the product.",
34403	//       "location": "path",
34404	//       "required": true,
34405	//       "type": "string"
34406	//     }
34407	//   },
34408	//   "path": "{merchantId}/products/{productId}",
34409	//   "response": {
34410	//     "$ref": "Product"
34411	//   },
34412	//   "scopes": [
34413	//     "https://www.googleapis.com/auth/content"
34414	//   ]
34415	// }
34416
34417}
34418
34419// method id "content.products.insert":
34420
34421type ProductsInsertCall struct {
34422	s          *APIService
34423	merchantId uint64
34424	product    *Product
34425	urlParams_ gensupport.URLParams
34426	ctx_       context.Context
34427	header_    http.Header
34428}
34429
34430// Insert: Uploads a product to your Merchant Center account. If an item
34431// with the same channel, contentLanguage, offerId, and targetCountry
34432// already exists, this method updates that entry.
34433//
34434// - merchantId: The ID of the account that contains the product. This
34435//   account cannot be a multi-client account.
34436func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
34437	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34438	c.merchantId = merchantId
34439	c.product = product
34440	return c
34441}
34442
34443// FeedId sets the optional parameter "feedId": The Content API
34444// Supplemental Feed ID. If present then product insertion applies to
34445// the data in a supplemental feed.
34446func (c *ProductsInsertCall) FeedId(feedId uint64) *ProductsInsertCall {
34447	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
34448	return c
34449}
34450
34451// Fields allows partial responses to be retrieved. See
34452// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34453// for more information.
34454func (c *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
34455	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34456	return c
34457}
34458
34459// Context sets the context to be used in this call's Do method. Any
34460// pending HTTP request will be aborted if the provided context is
34461// canceled.
34462func (c *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
34463	c.ctx_ = ctx
34464	return c
34465}
34466
34467// Header returns an http.Header that can be modified by the caller to
34468// add HTTP headers to the request.
34469func (c *ProductsInsertCall) Header() http.Header {
34470	if c.header_ == nil {
34471		c.header_ = make(http.Header)
34472	}
34473	return c.header_
34474}
34475
34476func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
34477	reqHeaders := make(http.Header)
34478	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34479	for k, v := range c.header_ {
34480		reqHeaders[k] = v
34481	}
34482	reqHeaders.Set("User-Agent", c.s.userAgent())
34483	var body io.Reader = nil
34484	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
34485	if err != nil {
34486		return nil, err
34487	}
34488	reqHeaders.Set("Content-Type", "application/json")
34489	c.urlParams_.Set("alt", alt)
34490	c.urlParams_.Set("prettyPrint", "false")
34491	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
34492	urls += "?" + c.urlParams_.Encode()
34493	req, err := http.NewRequest("POST", urls, body)
34494	if err != nil {
34495		return nil, err
34496	}
34497	req.Header = reqHeaders
34498	googleapi.Expand(req.URL, map[string]string{
34499		"merchantId": strconv.FormatUint(c.merchantId, 10),
34500	})
34501	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34502}
34503
34504// Do executes the "content.products.insert" call.
34505// Exactly one of *Product or error will be non-nil. Any non-2xx status
34506// code is an error. Response headers are in either
34507// *Product.ServerResponse.Header or (if a response was returned at all)
34508// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
34509// check whether the returned error was because http.StatusNotModified
34510// was returned.
34511func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
34512	gensupport.SetOptions(c.urlParams_, opts...)
34513	res, err := c.doRequest("json")
34514	if res != nil && res.StatusCode == http.StatusNotModified {
34515		if res.Body != nil {
34516			res.Body.Close()
34517		}
34518		return nil, &googleapi.Error{
34519			Code:   res.StatusCode,
34520			Header: res.Header,
34521		}
34522	}
34523	if err != nil {
34524		return nil, err
34525	}
34526	defer googleapi.CloseBody(res)
34527	if err := googleapi.CheckResponse(res); err != nil {
34528		return nil, err
34529	}
34530	ret := &Product{
34531		ServerResponse: googleapi.ServerResponse{
34532			Header:         res.Header,
34533			HTTPStatusCode: res.StatusCode,
34534		},
34535	}
34536	target := &ret
34537	if err := gensupport.DecodeResponse(target, res); err != nil {
34538		return nil, err
34539	}
34540	return ret, nil
34541	// {
34542	//   "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.",
34543	//   "flatPath": "{merchantId}/products",
34544	//   "httpMethod": "POST",
34545	//   "id": "content.products.insert",
34546	//   "parameterOrder": [
34547	//     "merchantId"
34548	//   ],
34549	//   "parameters": {
34550	//     "feedId": {
34551	//       "description": "The Content API Supplemental Feed ID. If present then product insertion applies to the data in a supplemental feed.",
34552	//       "format": "uint64",
34553	//       "location": "query",
34554	//       "type": "string"
34555	//     },
34556	//     "merchantId": {
34557	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
34558	//       "format": "uint64",
34559	//       "location": "path",
34560	//       "required": true,
34561	//       "type": "string"
34562	//     }
34563	//   },
34564	//   "path": "{merchantId}/products",
34565	//   "request": {
34566	//     "$ref": "Product"
34567	//   },
34568	//   "response": {
34569	//     "$ref": "Product"
34570	//   },
34571	//   "scopes": [
34572	//     "https://www.googleapis.com/auth/content"
34573	//   ]
34574	// }
34575
34576}
34577
34578// method id "content.products.list":
34579
34580type ProductsListCall struct {
34581	s            *APIService
34582	merchantId   uint64
34583	urlParams_   gensupport.URLParams
34584	ifNoneMatch_ string
34585	ctx_         context.Context
34586	header_      http.Header
34587}
34588
34589// List: Lists the products in your Merchant Center account. The
34590// response might contain fewer items than specified by maxResults. Rely
34591// on nextPageToken to determine if there are more items to be
34592// requested.
34593//
34594// - merchantId: The ID of the account that contains the products. This
34595//   account cannot be a multi-client account.
34596func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
34597	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34598	c.merchantId = merchantId
34599	return c
34600}
34601
34602// MaxResults sets the optional parameter "maxResults": The maximum
34603// number of products to return in the response, used for paging.
34604func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
34605	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
34606	return c
34607}
34608
34609// PageToken sets the optional parameter "pageToken": The token returned
34610// by the previous request.
34611func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
34612	c.urlParams_.Set("pageToken", pageToken)
34613	return c
34614}
34615
34616// Fields allows partial responses to be retrieved. See
34617// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34618// for more information.
34619func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
34620	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34621	return c
34622}
34623
34624// IfNoneMatch sets the optional parameter which makes the operation
34625// fail if the object's ETag matches the given value. This is useful for
34626// getting updates only after the object has changed since the last
34627// request. Use googleapi.IsNotModified to check whether the response
34628// error from Do is the result of In-None-Match.
34629func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
34630	c.ifNoneMatch_ = entityTag
34631	return c
34632}
34633
34634// Context sets the context to be used in this call's Do method. Any
34635// pending HTTP request will be aborted if the provided context is
34636// canceled.
34637func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
34638	c.ctx_ = ctx
34639	return c
34640}
34641
34642// Header returns an http.Header that can be modified by the caller to
34643// add HTTP headers to the request.
34644func (c *ProductsListCall) Header() http.Header {
34645	if c.header_ == nil {
34646		c.header_ = make(http.Header)
34647	}
34648	return c.header_
34649}
34650
34651func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
34652	reqHeaders := make(http.Header)
34653	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34654	for k, v := range c.header_ {
34655		reqHeaders[k] = v
34656	}
34657	reqHeaders.Set("User-Agent", c.s.userAgent())
34658	if c.ifNoneMatch_ != "" {
34659		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34660	}
34661	var body io.Reader = nil
34662	c.urlParams_.Set("alt", alt)
34663	c.urlParams_.Set("prettyPrint", "false")
34664	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
34665	urls += "?" + c.urlParams_.Encode()
34666	req, err := http.NewRequest("GET", urls, body)
34667	if err != nil {
34668		return nil, err
34669	}
34670	req.Header = reqHeaders
34671	googleapi.Expand(req.URL, map[string]string{
34672		"merchantId": strconv.FormatUint(c.merchantId, 10),
34673	})
34674	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34675}
34676
34677// Do executes the "content.products.list" call.
34678// Exactly one of *ProductsListResponse or error will be non-nil. Any
34679// non-2xx status code is an error. Response headers are in either
34680// *ProductsListResponse.ServerResponse.Header or (if a response was
34681// returned at all) in error.(*googleapi.Error).Header. Use
34682// googleapi.IsNotModified to check whether the returned error was
34683// because http.StatusNotModified was returned.
34684func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
34685	gensupport.SetOptions(c.urlParams_, opts...)
34686	res, err := c.doRequest("json")
34687	if res != nil && res.StatusCode == http.StatusNotModified {
34688		if res.Body != nil {
34689			res.Body.Close()
34690		}
34691		return nil, &googleapi.Error{
34692			Code:   res.StatusCode,
34693			Header: res.Header,
34694		}
34695	}
34696	if err != nil {
34697		return nil, err
34698	}
34699	defer googleapi.CloseBody(res)
34700	if err := googleapi.CheckResponse(res); err != nil {
34701		return nil, err
34702	}
34703	ret := &ProductsListResponse{
34704		ServerResponse: googleapi.ServerResponse{
34705			Header:         res.Header,
34706			HTTPStatusCode: res.StatusCode,
34707		},
34708	}
34709	target := &ret
34710	if err := gensupport.DecodeResponse(target, res); err != nil {
34711		return nil, err
34712	}
34713	return ret, nil
34714	// {
34715	//   "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.",
34716	//   "flatPath": "{merchantId}/products",
34717	//   "httpMethod": "GET",
34718	//   "id": "content.products.list",
34719	//   "parameterOrder": [
34720	//     "merchantId"
34721	//   ],
34722	//   "parameters": {
34723	//     "maxResults": {
34724	//       "description": "The maximum number of products to return in the response, used for paging.",
34725	//       "format": "uint32",
34726	//       "location": "query",
34727	//       "type": "integer"
34728	//     },
34729	//     "merchantId": {
34730	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
34731	//       "format": "uint64",
34732	//       "location": "path",
34733	//       "required": true,
34734	//       "type": "string"
34735	//     },
34736	//     "pageToken": {
34737	//       "description": "The token returned by the previous request.",
34738	//       "location": "query",
34739	//       "type": "string"
34740	//     }
34741	//   },
34742	//   "path": "{merchantId}/products",
34743	//   "response": {
34744	//     "$ref": "ProductsListResponse"
34745	//   },
34746	//   "scopes": [
34747	//     "https://www.googleapis.com/auth/content"
34748	//   ]
34749	// }
34750
34751}
34752
34753// Pages invokes f for each page of results.
34754// A non-nil error returned from f will halt the iteration.
34755// The provided context supersedes any context provided to the Context method.
34756func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
34757	c.ctx_ = ctx
34758	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
34759	for {
34760		x, err := c.Do()
34761		if err != nil {
34762			return err
34763		}
34764		if err := f(x); err != nil {
34765			return err
34766		}
34767		if x.NextPageToken == "" {
34768			return nil
34769		}
34770		c.PageToken(x.NextPageToken)
34771	}
34772}
34773
34774// method id "content.products.update":
34775
34776type ProductsUpdateCall struct {
34777	s          *APIService
34778	merchantId uint64
34779	productId  string
34780	product    *Product
34781	urlParams_ gensupport.URLParams
34782	ctx_       context.Context
34783	header_    http.Header
34784}
34785
34786// Update: Updates an existing product in your Merchant Center account.
34787// Only updates attributes provided in the request.
34788//
34789// - merchantId: The ID of the account that contains the product. This
34790//   account cannot be a multi-client account.
34791// - productId: The REST ID of the product for which to update.
34792func (r *ProductsService) Update(merchantId uint64, productId string, product *Product) *ProductsUpdateCall {
34793	c := &ProductsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34794	c.merchantId = merchantId
34795	c.productId = productId
34796	c.product = product
34797	return c
34798}
34799
34800// UpdateMask sets the optional parameter "updateMask": The
34801// comma-separated list of product attributes to be updated. Example:
34802// "title,salePrice". Attributes specified in the update mask without
34803// a value specified in the body will be deleted from the product. Only
34804// top-level product attributes can be updated. If not defined, product
34805// attributes with set values will be updated and other attributes will
34806// stay unchanged.
34807func (c *ProductsUpdateCall) UpdateMask(updateMask string) *ProductsUpdateCall {
34808	c.urlParams_.Set("updateMask", updateMask)
34809	return c
34810}
34811
34812// Fields allows partial responses to be retrieved. See
34813// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34814// for more information.
34815func (c *ProductsUpdateCall) Fields(s ...googleapi.Field) *ProductsUpdateCall {
34816	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34817	return c
34818}
34819
34820// Context sets the context to be used in this call's Do method. Any
34821// pending HTTP request will be aborted if the provided context is
34822// canceled.
34823func (c *ProductsUpdateCall) Context(ctx context.Context) *ProductsUpdateCall {
34824	c.ctx_ = ctx
34825	return c
34826}
34827
34828// Header returns an http.Header that can be modified by the caller to
34829// add HTTP headers to the request.
34830func (c *ProductsUpdateCall) Header() http.Header {
34831	if c.header_ == nil {
34832		c.header_ = make(http.Header)
34833	}
34834	return c.header_
34835}
34836
34837func (c *ProductsUpdateCall) doRequest(alt string) (*http.Response, error) {
34838	reqHeaders := make(http.Header)
34839	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34840	for k, v := range c.header_ {
34841		reqHeaders[k] = v
34842	}
34843	reqHeaders.Set("User-Agent", c.s.userAgent())
34844	var body io.Reader = nil
34845	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
34846	if err != nil {
34847		return nil, err
34848	}
34849	reqHeaders.Set("Content-Type", "application/json")
34850	c.urlParams_.Set("alt", alt)
34851	c.urlParams_.Set("prettyPrint", "false")
34852	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
34853	urls += "?" + c.urlParams_.Encode()
34854	req, err := http.NewRequest("PATCH", urls, body)
34855	if err != nil {
34856		return nil, err
34857	}
34858	req.Header = reqHeaders
34859	googleapi.Expand(req.URL, map[string]string{
34860		"merchantId": strconv.FormatUint(c.merchantId, 10),
34861		"productId":  c.productId,
34862	})
34863	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34864}
34865
34866// Do executes the "content.products.update" call.
34867// Exactly one of *Product or error will be non-nil. Any non-2xx status
34868// code is an error. Response headers are in either
34869// *Product.ServerResponse.Header or (if a response was returned at all)
34870// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
34871// check whether the returned error was because http.StatusNotModified
34872// was returned.
34873func (c *ProductsUpdateCall) Do(opts ...googleapi.CallOption) (*Product, error) {
34874	gensupport.SetOptions(c.urlParams_, opts...)
34875	res, err := c.doRequest("json")
34876	if res != nil && res.StatusCode == http.StatusNotModified {
34877		if res.Body != nil {
34878			res.Body.Close()
34879		}
34880		return nil, &googleapi.Error{
34881			Code:   res.StatusCode,
34882			Header: res.Header,
34883		}
34884	}
34885	if err != nil {
34886		return nil, err
34887	}
34888	defer googleapi.CloseBody(res)
34889	if err := googleapi.CheckResponse(res); err != nil {
34890		return nil, err
34891	}
34892	ret := &Product{
34893		ServerResponse: googleapi.ServerResponse{
34894			Header:         res.Header,
34895			HTTPStatusCode: res.StatusCode,
34896		},
34897	}
34898	target := &ret
34899	if err := gensupport.DecodeResponse(target, res); err != nil {
34900		return nil, err
34901	}
34902	return ret, nil
34903	// {
34904	//   "description": "Updates an existing product in your Merchant Center account. Only updates attributes provided in the request.",
34905	//   "flatPath": "{merchantId}/products/{productId}",
34906	//   "httpMethod": "PATCH",
34907	//   "id": "content.products.update",
34908	//   "parameterOrder": [
34909	//     "merchantId",
34910	//     "productId"
34911	//   ],
34912	//   "parameters": {
34913	//     "merchantId": {
34914	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
34915	//       "format": "uint64",
34916	//       "location": "path",
34917	//       "required": true,
34918	//       "type": "string"
34919	//     },
34920	//     "productId": {
34921	//       "description": "The REST ID of the product for which to update.",
34922	//       "location": "path",
34923	//       "required": true,
34924	//       "type": "string"
34925	//     },
34926	//     "updateMask": {
34927	//       "description": "The comma-separated list of product attributes to be updated. Example: `\"title,salePrice\"`. Attributes specified in the update mask without a value specified in the body will be deleted from the product. Only top-level product attributes can be updated. If not defined, product attributes with set values will be updated and other attributes will stay unchanged.",
34928	//       "format": "google-fieldmask",
34929	//       "location": "query",
34930	//       "type": "string"
34931	//     }
34932	//   },
34933	//   "path": "{merchantId}/products/{productId}",
34934	//   "request": {
34935	//     "$ref": "Product"
34936	//   },
34937	//   "response": {
34938	//     "$ref": "Product"
34939	//   },
34940	//   "scopes": [
34941	//     "https://www.googleapis.com/auth/content"
34942	//   ]
34943	// }
34944
34945}
34946
34947// method id "content.productstatuses.custombatch":
34948
34949type ProductstatusesCustombatchCall struct {
34950	s                                 *APIService
34951	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
34952	urlParams_                        gensupport.URLParams
34953	ctx_                              context.Context
34954	header_                           http.Header
34955}
34956
34957// Custombatch: Gets the statuses of multiple products in a single
34958// request.
34959func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
34960	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34961	c.productstatusescustombatchrequest = productstatusescustombatchrequest
34962	return c
34963}
34964
34965// Fields allows partial responses to be retrieved. See
34966// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34967// for more information.
34968func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
34969	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34970	return c
34971}
34972
34973// Context sets the context to be used in this call's Do method. Any
34974// pending HTTP request will be aborted if the provided context is
34975// canceled.
34976func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
34977	c.ctx_ = ctx
34978	return c
34979}
34980
34981// Header returns an http.Header that can be modified by the caller to
34982// add HTTP headers to the request.
34983func (c *ProductstatusesCustombatchCall) Header() http.Header {
34984	if c.header_ == nil {
34985		c.header_ = make(http.Header)
34986	}
34987	return c.header_
34988}
34989
34990func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
34991	reqHeaders := make(http.Header)
34992	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
34993	for k, v := range c.header_ {
34994		reqHeaders[k] = v
34995	}
34996	reqHeaders.Set("User-Agent", c.s.userAgent())
34997	var body io.Reader = nil
34998	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
34999	if err != nil {
35000		return nil, err
35001	}
35002	reqHeaders.Set("Content-Type", "application/json")
35003	c.urlParams_.Set("alt", alt)
35004	c.urlParams_.Set("prettyPrint", "false")
35005	urls := googleapi.ResolveRelative(c.s.BasePath, "productstatuses/batch")
35006	urls += "?" + c.urlParams_.Encode()
35007	req, err := http.NewRequest("POST", urls, body)
35008	if err != nil {
35009		return nil, err
35010	}
35011	req.Header = reqHeaders
35012	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35013}
35014
35015// Do executes the "content.productstatuses.custombatch" call.
35016// Exactly one of *ProductstatusesCustomBatchResponse or error will be
35017// non-nil. Any non-2xx status code is an error. Response headers are in
35018// either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
35019// (if a response was returned at all) in
35020// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
35021// whether the returned error was because http.StatusNotModified was
35022// returned.
35023func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
35024	gensupport.SetOptions(c.urlParams_, opts...)
35025	res, err := c.doRequest("json")
35026	if res != nil && res.StatusCode == http.StatusNotModified {
35027		if res.Body != nil {
35028			res.Body.Close()
35029		}
35030		return nil, &googleapi.Error{
35031			Code:   res.StatusCode,
35032			Header: res.Header,
35033		}
35034	}
35035	if err != nil {
35036		return nil, err
35037	}
35038	defer googleapi.CloseBody(res)
35039	if err := googleapi.CheckResponse(res); err != nil {
35040		return nil, err
35041	}
35042	ret := &ProductstatusesCustomBatchResponse{
35043		ServerResponse: googleapi.ServerResponse{
35044			Header:         res.Header,
35045			HTTPStatusCode: res.StatusCode,
35046		},
35047	}
35048	target := &ret
35049	if err := gensupport.DecodeResponse(target, res); err != nil {
35050		return nil, err
35051	}
35052	return ret, nil
35053	// {
35054	//   "description": "Gets the statuses of multiple products in a single request.",
35055	//   "flatPath": "productstatuses/batch",
35056	//   "httpMethod": "POST",
35057	//   "id": "content.productstatuses.custombatch",
35058	//   "parameterOrder": [],
35059	//   "parameters": {},
35060	//   "path": "productstatuses/batch",
35061	//   "request": {
35062	//     "$ref": "ProductstatusesCustomBatchRequest"
35063	//   },
35064	//   "response": {
35065	//     "$ref": "ProductstatusesCustomBatchResponse"
35066	//   },
35067	//   "scopes": [
35068	//     "https://www.googleapis.com/auth/content"
35069	//   ]
35070	// }
35071
35072}
35073
35074// method id "content.productstatuses.get":
35075
35076type ProductstatusesGetCall struct {
35077	s            *APIService
35078	merchantId   uint64
35079	productId    string
35080	urlParams_   gensupport.URLParams
35081	ifNoneMatch_ string
35082	ctx_         context.Context
35083	header_      http.Header
35084}
35085
35086// Get: Gets the status of a product from your Merchant Center account.
35087//
35088// - merchantId: The ID of the account that contains the product. This
35089//   account cannot be a multi-client account.
35090// - productId: The REST ID of the product.
35091func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
35092	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35093	c.merchantId = merchantId
35094	c.productId = productId
35095	return c
35096}
35097
35098// Destinations sets the optional parameter "destinations": If set, only
35099// issues for the specified destinations are returned, otherwise only
35100// issues for the Shopping destination.
35101func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
35102	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
35103	return c
35104}
35105
35106// Fields allows partial responses to be retrieved. See
35107// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35108// for more information.
35109func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
35110	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35111	return c
35112}
35113
35114// IfNoneMatch sets the optional parameter which makes the operation
35115// fail if the object's ETag matches the given value. This is useful for
35116// getting updates only after the object has changed since the last
35117// request. Use googleapi.IsNotModified to check whether the response
35118// error from Do is the result of In-None-Match.
35119func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
35120	c.ifNoneMatch_ = entityTag
35121	return c
35122}
35123
35124// Context sets the context to be used in this call's Do method. Any
35125// pending HTTP request will be aborted if the provided context is
35126// canceled.
35127func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
35128	c.ctx_ = ctx
35129	return c
35130}
35131
35132// Header returns an http.Header that can be modified by the caller to
35133// add HTTP headers to the request.
35134func (c *ProductstatusesGetCall) Header() http.Header {
35135	if c.header_ == nil {
35136		c.header_ = make(http.Header)
35137	}
35138	return c.header_
35139}
35140
35141func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
35142	reqHeaders := make(http.Header)
35143	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35144	for k, v := range c.header_ {
35145		reqHeaders[k] = v
35146	}
35147	reqHeaders.Set("User-Agent", c.s.userAgent())
35148	if c.ifNoneMatch_ != "" {
35149		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35150	}
35151	var body io.Reader = nil
35152	c.urlParams_.Set("alt", alt)
35153	c.urlParams_.Set("prettyPrint", "false")
35154	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}")
35155	urls += "?" + c.urlParams_.Encode()
35156	req, err := http.NewRequest("GET", urls, body)
35157	if err != nil {
35158		return nil, err
35159	}
35160	req.Header = reqHeaders
35161	googleapi.Expand(req.URL, map[string]string{
35162		"merchantId": strconv.FormatUint(c.merchantId, 10),
35163		"productId":  c.productId,
35164	})
35165	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35166}
35167
35168// Do executes the "content.productstatuses.get" call.
35169// Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
35170// status code is an error. Response headers are in either
35171// *ProductStatus.ServerResponse.Header or (if a response was returned
35172// at all) in error.(*googleapi.Error).Header. Use
35173// googleapi.IsNotModified to check whether the returned error was
35174// because http.StatusNotModified was returned.
35175func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
35176	gensupport.SetOptions(c.urlParams_, opts...)
35177	res, err := c.doRequest("json")
35178	if res != nil && res.StatusCode == http.StatusNotModified {
35179		if res.Body != nil {
35180			res.Body.Close()
35181		}
35182		return nil, &googleapi.Error{
35183			Code:   res.StatusCode,
35184			Header: res.Header,
35185		}
35186	}
35187	if err != nil {
35188		return nil, err
35189	}
35190	defer googleapi.CloseBody(res)
35191	if err := googleapi.CheckResponse(res); err != nil {
35192		return nil, err
35193	}
35194	ret := &ProductStatus{
35195		ServerResponse: googleapi.ServerResponse{
35196			Header:         res.Header,
35197			HTTPStatusCode: res.StatusCode,
35198		},
35199	}
35200	target := &ret
35201	if err := gensupport.DecodeResponse(target, res); err != nil {
35202		return nil, err
35203	}
35204	return ret, nil
35205	// {
35206	//   "description": "Gets the status of a product from your Merchant Center account.",
35207	//   "flatPath": "{merchantId}/productstatuses/{productId}",
35208	//   "httpMethod": "GET",
35209	//   "id": "content.productstatuses.get",
35210	//   "parameterOrder": [
35211	//     "merchantId",
35212	//     "productId"
35213	//   ],
35214	//   "parameters": {
35215	//     "destinations": {
35216	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
35217	//       "location": "query",
35218	//       "repeated": true,
35219	//       "type": "string"
35220	//     },
35221	//     "merchantId": {
35222	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35223	//       "format": "uint64",
35224	//       "location": "path",
35225	//       "required": true,
35226	//       "type": "string"
35227	//     },
35228	//     "productId": {
35229	//       "description": "The REST ID of the product.",
35230	//       "location": "path",
35231	//       "required": true,
35232	//       "type": "string"
35233	//     }
35234	//   },
35235	//   "path": "{merchantId}/productstatuses/{productId}",
35236	//   "response": {
35237	//     "$ref": "ProductStatus"
35238	//   },
35239	//   "scopes": [
35240	//     "https://www.googleapis.com/auth/content"
35241	//   ]
35242	// }
35243
35244}
35245
35246// method id "content.productstatuses.list":
35247
35248type ProductstatusesListCall struct {
35249	s            *APIService
35250	merchantId   uint64
35251	urlParams_   gensupport.URLParams
35252	ifNoneMatch_ string
35253	ctx_         context.Context
35254	header_      http.Header
35255}
35256
35257// List: Lists the statuses of the products in your Merchant Center
35258// account.
35259//
35260// - merchantId: The ID of the account that contains the products. This
35261//   account cannot be a multi-client account.
35262func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
35263	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35264	c.merchantId = merchantId
35265	return c
35266}
35267
35268// Destinations sets the optional parameter "destinations": If set, only
35269// issues for the specified destinations are returned, otherwise only
35270// issues for the Shopping destination.
35271func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
35272	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
35273	return c
35274}
35275
35276// MaxResults sets the optional parameter "maxResults": The maximum
35277// number of product statuses to return in the response, used for
35278// paging.
35279func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
35280	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
35281	return c
35282}
35283
35284// PageToken sets the optional parameter "pageToken": The token returned
35285// by the previous request.
35286func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
35287	c.urlParams_.Set("pageToken", pageToken)
35288	return c
35289}
35290
35291// Fields allows partial responses to be retrieved. See
35292// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35293// for more information.
35294func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
35295	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35296	return c
35297}
35298
35299// IfNoneMatch sets the optional parameter which makes the operation
35300// fail if the object's ETag matches the given value. This is useful for
35301// getting updates only after the object has changed since the last
35302// request. Use googleapi.IsNotModified to check whether the response
35303// error from Do is the result of In-None-Match.
35304func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
35305	c.ifNoneMatch_ = entityTag
35306	return c
35307}
35308
35309// Context sets the context to be used in this call's Do method. Any
35310// pending HTTP request will be aborted if the provided context is
35311// canceled.
35312func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
35313	c.ctx_ = ctx
35314	return c
35315}
35316
35317// Header returns an http.Header that can be modified by the caller to
35318// add HTTP headers to the request.
35319func (c *ProductstatusesListCall) Header() http.Header {
35320	if c.header_ == nil {
35321		c.header_ = make(http.Header)
35322	}
35323	return c.header_
35324}
35325
35326func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
35327	reqHeaders := make(http.Header)
35328	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35329	for k, v := range c.header_ {
35330		reqHeaders[k] = v
35331	}
35332	reqHeaders.Set("User-Agent", c.s.userAgent())
35333	if c.ifNoneMatch_ != "" {
35334		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35335	}
35336	var body io.Reader = nil
35337	c.urlParams_.Set("alt", alt)
35338	c.urlParams_.Set("prettyPrint", "false")
35339	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses")
35340	urls += "?" + c.urlParams_.Encode()
35341	req, err := http.NewRequest("GET", urls, body)
35342	if err != nil {
35343		return nil, err
35344	}
35345	req.Header = reqHeaders
35346	googleapi.Expand(req.URL, map[string]string{
35347		"merchantId": strconv.FormatUint(c.merchantId, 10),
35348	})
35349	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35350}
35351
35352// Do executes the "content.productstatuses.list" call.
35353// Exactly one of *ProductstatusesListResponse or error will be non-nil.
35354// Any non-2xx status code is an error. Response headers are in either
35355// *ProductstatusesListResponse.ServerResponse.Header or (if a response
35356// was returned at all) in error.(*googleapi.Error).Header. Use
35357// googleapi.IsNotModified to check whether the returned error was
35358// because http.StatusNotModified was returned.
35359func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
35360	gensupport.SetOptions(c.urlParams_, opts...)
35361	res, err := c.doRequest("json")
35362	if res != nil && res.StatusCode == http.StatusNotModified {
35363		if res.Body != nil {
35364			res.Body.Close()
35365		}
35366		return nil, &googleapi.Error{
35367			Code:   res.StatusCode,
35368			Header: res.Header,
35369		}
35370	}
35371	if err != nil {
35372		return nil, err
35373	}
35374	defer googleapi.CloseBody(res)
35375	if err := googleapi.CheckResponse(res); err != nil {
35376		return nil, err
35377	}
35378	ret := &ProductstatusesListResponse{
35379		ServerResponse: googleapi.ServerResponse{
35380			Header:         res.Header,
35381			HTTPStatusCode: res.StatusCode,
35382		},
35383	}
35384	target := &ret
35385	if err := gensupport.DecodeResponse(target, res); err != nil {
35386		return nil, err
35387	}
35388	return ret, nil
35389	// {
35390	//   "description": "Lists the statuses of the products in your Merchant Center account.",
35391	//   "flatPath": "{merchantId}/productstatuses",
35392	//   "httpMethod": "GET",
35393	//   "id": "content.productstatuses.list",
35394	//   "parameterOrder": [
35395	//     "merchantId"
35396	//   ],
35397	//   "parameters": {
35398	//     "destinations": {
35399	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
35400	//       "location": "query",
35401	//       "repeated": true,
35402	//       "type": "string"
35403	//     },
35404	//     "maxResults": {
35405	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
35406	//       "format": "uint32",
35407	//       "location": "query",
35408	//       "type": "integer"
35409	//     },
35410	//     "merchantId": {
35411	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
35412	//       "format": "uint64",
35413	//       "location": "path",
35414	//       "required": true,
35415	//       "type": "string"
35416	//     },
35417	//     "pageToken": {
35418	//       "description": "The token returned by the previous request.",
35419	//       "location": "query",
35420	//       "type": "string"
35421	//     }
35422	//   },
35423	//   "path": "{merchantId}/productstatuses",
35424	//   "response": {
35425	//     "$ref": "ProductstatusesListResponse"
35426	//   },
35427	//   "scopes": [
35428	//     "https://www.googleapis.com/auth/content"
35429	//   ]
35430	// }
35431
35432}
35433
35434// Pages invokes f for each page of results.
35435// A non-nil error returned from f will halt the iteration.
35436// The provided context supersedes any context provided to the Context method.
35437func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
35438	c.ctx_ = ctx
35439	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
35440	for {
35441		x, err := c.Do()
35442		if err != nil {
35443			return err
35444		}
35445		if err := f(x); err != nil {
35446			return err
35447		}
35448		if x.NextPageToken == "" {
35449			return nil
35450		}
35451		c.PageToken(x.NextPageToken)
35452	}
35453}
35454
35455// method id "content.productstatuses.repricingreports.list":
35456
35457type ProductstatusesRepricingreportsListCall struct {
35458	s            *APIService
35459	merchantId   int64
35460	productId    string
35461	urlParams_   gensupport.URLParams
35462	ifNoneMatch_ string
35463	ctx_         context.Context
35464	header_      http.Header
35465}
35466
35467// List: Lists the metrics report for a given Repricing product.
35468//
35469// - merchantId: Id of the merchant who owns the Repricing rule.
35470// - productId: Id of the Repricing product. Also known as the REST_ID
35471//   (https://developers.google.com/shopping-content/reference/rest/v2.1/products#Product.FIELDS.id).
35472func (r *ProductstatusesRepricingreportsService) List(merchantId int64, productId string) *ProductstatusesRepricingreportsListCall {
35473	c := &ProductstatusesRepricingreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35474	c.merchantId = merchantId
35475	c.productId = productId
35476	return c
35477}
35478
35479// EndDate sets the optional parameter "endDate": Gets Repricing reports
35480// on and before this date in the merchant's timezone. You can only
35481// retrieve data up to 7 days ago (default) or earlier. Format is
35482// YYYY-MM-DD.
35483func (c *ProductstatusesRepricingreportsListCall) EndDate(endDate string) *ProductstatusesRepricingreportsListCall {
35484	c.urlParams_.Set("endDate", endDate)
35485	return c
35486}
35487
35488// PageSize sets the optional parameter "pageSize": Maximum number of
35489// days of reports to return. There can be more than one rule report
35490// returned per day. For example, if 3 rule types got applied to the
35491// same product within a 24-hour period, then a page_size of 1 will
35492// return 3 rule reports. The page size defaults to 50 and values above
35493// 1000 are coerced to 1000. This service may return fewer days of
35494// reports than this value, for example, if the time between your start
35495// and end date is less than the page size.
35496func (c *ProductstatusesRepricingreportsListCall) PageSize(pageSize int64) *ProductstatusesRepricingreportsListCall {
35497	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
35498	return c
35499}
35500
35501// PageToken sets the optional parameter "pageToken": Token (if
35502// provided) to retrieve the subsequent page. All other parameters must
35503// match the original call that provided the page token.
35504func (c *ProductstatusesRepricingreportsListCall) PageToken(pageToken string) *ProductstatusesRepricingreportsListCall {
35505	c.urlParams_.Set("pageToken", pageToken)
35506	return c
35507}
35508
35509// RuleId sets the optional parameter "ruleId": Id of the Repricing
35510// rule. If specified, only gets this rule's reports.
35511func (c *ProductstatusesRepricingreportsListCall) RuleId(ruleId string) *ProductstatusesRepricingreportsListCall {
35512	c.urlParams_.Set("ruleId", ruleId)
35513	return c
35514}
35515
35516// StartDate sets the optional parameter "startDate": Gets Repricing
35517// reports on and after this date in the merchant's timezone, up to one
35518// year ago. Do not use a start date later than 7 days ago (default).
35519// Format is YYYY-MM-DD.
35520func (c *ProductstatusesRepricingreportsListCall) StartDate(startDate string) *ProductstatusesRepricingreportsListCall {
35521	c.urlParams_.Set("startDate", startDate)
35522	return c
35523}
35524
35525// Fields allows partial responses to be retrieved. See
35526// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35527// for more information.
35528func (c *ProductstatusesRepricingreportsListCall) Fields(s ...googleapi.Field) *ProductstatusesRepricingreportsListCall {
35529	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35530	return c
35531}
35532
35533// IfNoneMatch sets the optional parameter which makes the operation
35534// fail if the object's ETag matches the given value. This is useful for
35535// getting updates only after the object has changed since the last
35536// request. Use googleapi.IsNotModified to check whether the response
35537// error from Do is the result of In-None-Match.
35538func (c *ProductstatusesRepricingreportsListCall) IfNoneMatch(entityTag string) *ProductstatusesRepricingreportsListCall {
35539	c.ifNoneMatch_ = entityTag
35540	return c
35541}
35542
35543// Context sets the context to be used in this call's Do method. Any
35544// pending HTTP request will be aborted if the provided context is
35545// canceled.
35546func (c *ProductstatusesRepricingreportsListCall) Context(ctx context.Context) *ProductstatusesRepricingreportsListCall {
35547	c.ctx_ = ctx
35548	return c
35549}
35550
35551// Header returns an http.Header that can be modified by the caller to
35552// add HTTP headers to the request.
35553func (c *ProductstatusesRepricingreportsListCall) Header() http.Header {
35554	if c.header_ == nil {
35555		c.header_ = make(http.Header)
35556	}
35557	return c.header_
35558}
35559
35560func (c *ProductstatusesRepricingreportsListCall) doRequest(alt string) (*http.Response, error) {
35561	reqHeaders := make(http.Header)
35562	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35563	for k, v := range c.header_ {
35564		reqHeaders[k] = v
35565	}
35566	reqHeaders.Set("User-Agent", c.s.userAgent())
35567	if c.ifNoneMatch_ != "" {
35568		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35569	}
35570	var body io.Reader = nil
35571	c.urlParams_.Set("alt", alt)
35572	c.urlParams_.Set("prettyPrint", "false")
35573	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}/repricingreports")
35574	urls += "?" + c.urlParams_.Encode()
35575	req, err := http.NewRequest("GET", urls, body)
35576	if err != nil {
35577		return nil, err
35578	}
35579	req.Header = reqHeaders
35580	googleapi.Expand(req.URL, map[string]string{
35581		"merchantId": strconv.FormatInt(c.merchantId, 10),
35582		"productId":  c.productId,
35583	})
35584	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35585}
35586
35587// Do executes the "content.productstatuses.repricingreports.list" call.
35588// Exactly one of *ListRepricingProductReportsResponse or error will be
35589// non-nil. Any non-2xx status code is an error. Response headers are in
35590// either *ListRepricingProductReportsResponse.ServerResponse.Header or
35591// (if a response was returned at all) in
35592// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
35593// whether the returned error was because http.StatusNotModified was
35594// returned.
35595func (c *ProductstatusesRepricingreportsListCall) Do(opts ...googleapi.CallOption) (*ListRepricingProductReportsResponse, error) {
35596	gensupport.SetOptions(c.urlParams_, opts...)
35597	res, err := c.doRequest("json")
35598	if res != nil && res.StatusCode == http.StatusNotModified {
35599		if res.Body != nil {
35600			res.Body.Close()
35601		}
35602		return nil, &googleapi.Error{
35603			Code:   res.StatusCode,
35604			Header: res.Header,
35605		}
35606	}
35607	if err != nil {
35608		return nil, err
35609	}
35610	defer googleapi.CloseBody(res)
35611	if err := googleapi.CheckResponse(res); err != nil {
35612		return nil, err
35613	}
35614	ret := &ListRepricingProductReportsResponse{
35615		ServerResponse: googleapi.ServerResponse{
35616			Header:         res.Header,
35617			HTTPStatusCode: res.StatusCode,
35618		},
35619	}
35620	target := &ret
35621	if err := gensupport.DecodeResponse(target, res); err != nil {
35622		return nil, err
35623	}
35624	return ret, nil
35625	// {
35626	//   "description": "Lists the metrics report for a given Repricing product.",
35627	//   "flatPath": "{merchantId}/productstatuses/{productId}/repricingreports",
35628	//   "httpMethod": "GET",
35629	//   "id": "content.productstatuses.repricingreports.list",
35630	//   "parameterOrder": [
35631	//     "merchantId",
35632	//     "productId"
35633	//   ],
35634	//   "parameters": {
35635	//     "endDate": {
35636	//       "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.",
35637	//       "location": "query",
35638	//       "type": "string"
35639	//     },
35640	//     "merchantId": {
35641	//       "description": "Required. Id of the merchant who owns the Repricing rule.",
35642	//       "format": "int64",
35643	//       "location": "path",
35644	//       "required": true,
35645	//       "type": "string"
35646	//     },
35647	//     "pageSize": {
35648	//       "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.",
35649	//       "format": "int32",
35650	//       "location": "query",
35651	//       "type": "integer"
35652	//     },
35653	//     "pageToken": {
35654	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
35655	//       "location": "query",
35656	//       "type": "string"
35657	//     },
35658	//     "productId": {
35659	//       "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)",
35660	//       "location": "path",
35661	//       "required": true,
35662	//       "type": "string"
35663	//     },
35664	//     "ruleId": {
35665	//       "description": "Id of the Repricing rule. If specified, only gets this rule's reports.",
35666	//       "location": "query",
35667	//       "type": "string"
35668	//     },
35669	//     "startDate": {
35670	//       "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.",
35671	//       "location": "query",
35672	//       "type": "string"
35673	//     }
35674	//   },
35675	//   "path": "{merchantId}/productstatuses/{productId}/repricingreports",
35676	//   "response": {
35677	//     "$ref": "ListRepricingProductReportsResponse"
35678	//   },
35679	//   "scopes": [
35680	//     "https://www.googleapis.com/auth/content"
35681	//   ]
35682	// }
35683
35684}
35685
35686// Pages invokes f for each page of results.
35687// A non-nil error returned from f will halt the iteration.
35688// The provided context supersedes any context provided to the Context method.
35689func (c *ProductstatusesRepricingreportsListCall) Pages(ctx context.Context, f func(*ListRepricingProductReportsResponse) error) error {
35690	c.ctx_ = ctx
35691	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
35692	for {
35693		x, err := c.Do()
35694		if err != nil {
35695			return err
35696		}
35697		if err := f(x); err != nil {
35698			return err
35699		}
35700		if x.NextPageToken == "" {
35701			return nil
35702		}
35703		c.PageToken(x.NextPageToken)
35704	}
35705}
35706
35707// method id "content.pubsubnotificationsettings.get":
35708
35709type PubsubnotificationsettingsGetCall struct {
35710	s            *APIService
35711	merchantId   uint64
35712	urlParams_   gensupport.URLParams
35713	ifNoneMatch_ string
35714	ctx_         context.Context
35715	header_      http.Header
35716}
35717
35718// Get: Retrieves a Merchant Center account's pubsub notification
35719// settings.
35720//
35721// - merchantId: The ID of the account for which to get pubsub
35722//   notification settings.
35723func (r *PubsubnotificationsettingsService) Get(merchantId uint64) *PubsubnotificationsettingsGetCall {
35724	c := &PubsubnotificationsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35725	c.merchantId = merchantId
35726	return c
35727}
35728
35729// Fields allows partial responses to be retrieved. See
35730// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35731// for more information.
35732func (c *PubsubnotificationsettingsGetCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsGetCall {
35733	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35734	return c
35735}
35736
35737// IfNoneMatch sets the optional parameter which makes the operation
35738// fail if the object's ETag matches the given value. This is useful for
35739// getting updates only after the object has changed since the last
35740// request. Use googleapi.IsNotModified to check whether the response
35741// error from Do is the result of In-None-Match.
35742func (c *PubsubnotificationsettingsGetCall) IfNoneMatch(entityTag string) *PubsubnotificationsettingsGetCall {
35743	c.ifNoneMatch_ = entityTag
35744	return c
35745}
35746
35747// Context sets the context to be used in this call's Do method. Any
35748// pending HTTP request will be aborted if the provided context is
35749// canceled.
35750func (c *PubsubnotificationsettingsGetCall) Context(ctx context.Context) *PubsubnotificationsettingsGetCall {
35751	c.ctx_ = ctx
35752	return c
35753}
35754
35755// Header returns an http.Header that can be modified by the caller to
35756// add HTTP headers to the request.
35757func (c *PubsubnotificationsettingsGetCall) Header() http.Header {
35758	if c.header_ == nil {
35759		c.header_ = make(http.Header)
35760	}
35761	return c.header_
35762}
35763
35764func (c *PubsubnotificationsettingsGetCall) doRequest(alt string) (*http.Response, error) {
35765	reqHeaders := make(http.Header)
35766	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35767	for k, v := range c.header_ {
35768		reqHeaders[k] = v
35769	}
35770	reqHeaders.Set("User-Agent", c.s.userAgent())
35771	if c.ifNoneMatch_ != "" {
35772		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35773	}
35774	var body io.Reader = nil
35775	c.urlParams_.Set("alt", alt)
35776	c.urlParams_.Set("prettyPrint", "false")
35777	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pubsubnotificationsettings")
35778	urls += "?" + c.urlParams_.Encode()
35779	req, err := http.NewRequest("GET", urls, body)
35780	if err != nil {
35781		return nil, err
35782	}
35783	req.Header = reqHeaders
35784	googleapi.Expand(req.URL, map[string]string{
35785		"merchantId": strconv.FormatUint(c.merchantId, 10),
35786	})
35787	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35788}
35789
35790// Do executes the "content.pubsubnotificationsettings.get" call.
35791// Exactly one of *PubsubNotificationSettings or error will be non-nil.
35792// Any non-2xx status code is an error. Response headers are in either
35793// *PubsubNotificationSettings.ServerResponse.Header or (if a response
35794// was returned at all) in error.(*googleapi.Error).Header. Use
35795// googleapi.IsNotModified to check whether the returned error was
35796// because http.StatusNotModified was returned.
35797func (c *PubsubnotificationsettingsGetCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
35798	gensupport.SetOptions(c.urlParams_, opts...)
35799	res, err := c.doRequest("json")
35800	if res != nil && res.StatusCode == http.StatusNotModified {
35801		if res.Body != nil {
35802			res.Body.Close()
35803		}
35804		return nil, &googleapi.Error{
35805			Code:   res.StatusCode,
35806			Header: res.Header,
35807		}
35808	}
35809	if err != nil {
35810		return nil, err
35811	}
35812	defer googleapi.CloseBody(res)
35813	if err := googleapi.CheckResponse(res); err != nil {
35814		return nil, err
35815	}
35816	ret := &PubsubNotificationSettings{
35817		ServerResponse: googleapi.ServerResponse{
35818			Header:         res.Header,
35819			HTTPStatusCode: res.StatusCode,
35820		},
35821	}
35822	target := &ret
35823	if err := gensupport.DecodeResponse(target, res); err != nil {
35824		return nil, err
35825	}
35826	return ret, nil
35827	// {
35828	//   "description": "Retrieves a Merchant Center account's pubsub notification settings.",
35829	//   "flatPath": "{merchantId}/pubsubnotificationsettings",
35830	//   "httpMethod": "GET",
35831	//   "id": "content.pubsubnotificationsettings.get",
35832	//   "parameterOrder": [
35833	//     "merchantId"
35834	//   ],
35835	//   "parameters": {
35836	//     "merchantId": {
35837	//       "description": "The ID of the account for which to get pubsub notification settings.",
35838	//       "format": "uint64",
35839	//       "location": "path",
35840	//       "required": true,
35841	//       "type": "string"
35842	//     }
35843	//   },
35844	//   "path": "{merchantId}/pubsubnotificationsettings",
35845	//   "response": {
35846	//     "$ref": "PubsubNotificationSettings"
35847	//   },
35848	//   "scopes": [
35849	//     "https://www.googleapis.com/auth/content"
35850	//   ]
35851	// }
35852
35853}
35854
35855// method id "content.pubsubnotificationsettings.update":
35856
35857type PubsubnotificationsettingsUpdateCall struct {
35858	s                          *APIService
35859	merchantId                 uint64
35860	pubsubnotificationsettings *PubsubNotificationSettings
35861	urlParams_                 gensupport.URLParams
35862	ctx_                       context.Context
35863	header_                    http.Header
35864}
35865
35866// Update: Register a Merchant Center account for pubsub notifications.
35867// Note that cloud topic name should not be provided as part of the
35868// request.
35869//
35870// - merchantId: The ID of the account.
35871func (r *PubsubnotificationsettingsService) Update(merchantId uint64, pubsubnotificationsettings *PubsubNotificationSettings) *PubsubnotificationsettingsUpdateCall {
35872	c := &PubsubnotificationsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35873	c.merchantId = merchantId
35874	c.pubsubnotificationsettings = pubsubnotificationsettings
35875	return c
35876}
35877
35878// Fields allows partial responses to be retrieved. See
35879// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35880// for more information.
35881func (c *PubsubnotificationsettingsUpdateCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsUpdateCall {
35882	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35883	return c
35884}
35885
35886// Context sets the context to be used in this call's Do method. Any
35887// pending HTTP request will be aborted if the provided context is
35888// canceled.
35889func (c *PubsubnotificationsettingsUpdateCall) Context(ctx context.Context) *PubsubnotificationsettingsUpdateCall {
35890	c.ctx_ = ctx
35891	return c
35892}
35893
35894// Header returns an http.Header that can be modified by the caller to
35895// add HTTP headers to the request.
35896func (c *PubsubnotificationsettingsUpdateCall) Header() http.Header {
35897	if c.header_ == nil {
35898		c.header_ = make(http.Header)
35899	}
35900	return c.header_
35901}
35902
35903func (c *PubsubnotificationsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
35904	reqHeaders := make(http.Header)
35905	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
35906	for k, v := range c.header_ {
35907		reqHeaders[k] = v
35908	}
35909	reqHeaders.Set("User-Agent", c.s.userAgent())
35910	var body io.Reader = nil
35911	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pubsubnotificationsettings)
35912	if err != nil {
35913		return nil, err
35914	}
35915	reqHeaders.Set("Content-Type", "application/json")
35916	c.urlParams_.Set("alt", alt)
35917	c.urlParams_.Set("prettyPrint", "false")
35918	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pubsubnotificationsettings")
35919	urls += "?" + c.urlParams_.Encode()
35920	req, err := http.NewRequest("PUT", urls, body)
35921	if err != nil {
35922		return nil, err
35923	}
35924	req.Header = reqHeaders
35925	googleapi.Expand(req.URL, map[string]string{
35926		"merchantId": strconv.FormatUint(c.merchantId, 10),
35927	})
35928	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35929}
35930
35931// Do executes the "content.pubsubnotificationsettings.update" call.
35932// Exactly one of *PubsubNotificationSettings or error will be non-nil.
35933// Any non-2xx status code is an error. Response headers are in either
35934// *PubsubNotificationSettings.ServerResponse.Header or (if a response
35935// was returned at all) in error.(*googleapi.Error).Header. Use
35936// googleapi.IsNotModified to check whether the returned error was
35937// because http.StatusNotModified was returned.
35938func (c *PubsubnotificationsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
35939	gensupport.SetOptions(c.urlParams_, opts...)
35940	res, err := c.doRequest("json")
35941	if res != nil && res.StatusCode == http.StatusNotModified {
35942		if res.Body != nil {
35943			res.Body.Close()
35944		}
35945		return nil, &googleapi.Error{
35946			Code:   res.StatusCode,
35947			Header: res.Header,
35948		}
35949	}
35950	if err != nil {
35951		return nil, err
35952	}
35953	defer googleapi.CloseBody(res)
35954	if err := googleapi.CheckResponse(res); err != nil {
35955		return nil, err
35956	}
35957	ret := &PubsubNotificationSettings{
35958		ServerResponse: googleapi.ServerResponse{
35959			Header:         res.Header,
35960			HTTPStatusCode: res.StatusCode,
35961		},
35962	}
35963	target := &ret
35964	if err := gensupport.DecodeResponse(target, res); err != nil {
35965		return nil, err
35966	}
35967	return ret, nil
35968	// {
35969	//   "description": "Register a Merchant Center account for pubsub notifications. Note that cloud topic name should not be provided as part of the request.",
35970	//   "flatPath": "{merchantId}/pubsubnotificationsettings",
35971	//   "httpMethod": "PUT",
35972	//   "id": "content.pubsubnotificationsettings.update",
35973	//   "parameterOrder": [
35974	//     "merchantId"
35975	//   ],
35976	//   "parameters": {
35977	//     "merchantId": {
35978	//       "description": "The ID of the account.",
35979	//       "format": "uint64",
35980	//       "location": "path",
35981	//       "required": true,
35982	//       "type": "string"
35983	//     }
35984	//   },
35985	//   "path": "{merchantId}/pubsubnotificationsettings",
35986	//   "request": {
35987	//     "$ref": "PubsubNotificationSettings"
35988	//   },
35989	//   "response": {
35990	//     "$ref": "PubsubNotificationSettings"
35991	//   },
35992	//   "scopes": [
35993	//     "https://www.googleapis.com/auth/content"
35994	//   ]
35995	// }
35996
35997}
35998
35999// method id "content.regionalinventory.custombatch":
36000
36001type RegionalinventoryCustombatchCall struct {
36002	s                                   *APIService
36003	regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest
36004	urlParams_                          gensupport.URLParams
36005	ctx_                                context.Context
36006	header_                             http.Header
36007}
36008
36009// Custombatch: Updates regional inventory for multiple products or
36010// regions in a single request.
36011func (r *RegionalinventoryService) Custombatch(regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest) *RegionalinventoryCustombatchCall {
36012	c := &RegionalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36013	c.regionalinventorycustombatchrequest = regionalinventorycustombatchrequest
36014	return c
36015}
36016
36017// Fields allows partial responses to be retrieved. See
36018// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36019// for more information.
36020func (c *RegionalinventoryCustombatchCall) Fields(s ...googleapi.Field) *RegionalinventoryCustombatchCall {
36021	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36022	return c
36023}
36024
36025// Context sets the context to be used in this call's Do method. Any
36026// pending HTTP request will be aborted if the provided context is
36027// canceled.
36028func (c *RegionalinventoryCustombatchCall) Context(ctx context.Context) *RegionalinventoryCustombatchCall {
36029	c.ctx_ = ctx
36030	return c
36031}
36032
36033// Header returns an http.Header that can be modified by the caller to
36034// add HTTP headers to the request.
36035func (c *RegionalinventoryCustombatchCall) Header() http.Header {
36036	if c.header_ == nil {
36037		c.header_ = make(http.Header)
36038	}
36039	return c.header_
36040}
36041
36042func (c *RegionalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
36043	reqHeaders := make(http.Header)
36044	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36045	for k, v := range c.header_ {
36046		reqHeaders[k] = v
36047	}
36048	reqHeaders.Set("User-Agent", c.s.userAgent())
36049	var body io.Reader = nil
36050	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventorycustombatchrequest)
36051	if err != nil {
36052		return nil, err
36053	}
36054	reqHeaders.Set("Content-Type", "application/json")
36055	c.urlParams_.Set("alt", alt)
36056	c.urlParams_.Set("prettyPrint", "false")
36057	urls := googleapi.ResolveRelative(c.s.BasePath, "regionalinventory/batch")
36058	urls += "?" + c.urlParams_.Encode()
36059	req, err := http.NewRequest("POST", urls, body)
36060	if err != nil {
36061		return nil, err
36062	}
36063	req.Header = reqHeaders
36064	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36065}
36066
36067// Do executes the "content.regionalinventory.custombatch" call.
36068// Exactly one of *RegionalinventoryCustomBatchResponse or error will be
36069// non-nil. Any non-2xx status code is an error. Response headers are in
36070// either *RegionalinventoryCustomBatchResponse.ServerResponse.Header or
36071// (if a response was returned at all) in
36072// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
36073// whether the returned error was because http.StatusNotModified was
36074// returned.
36075func (c *RegionalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*RegionalinventoryCustomBatchResponse, error) {
36076	gensupport.SetOptions(c.urlParams_, opts...)
36077	res, err := c.doRequest("json")
36078	if res != nil && res.StatusCode == http.StatusNotModified {
36079		if res.Body != nil {
36080			res.Body.Close()
36081		}
36082		return nil, &googleapi.Error{
36083			Code:   res.StatusCode,
36084			Header: res.Header,
36085		}
36086	}
36087	if err != nil {
36088		return nil, err
36089	}
36090	defer googleapi.CloseBody(res)
36091	if err := googleapi.CheckResponse(res); err != nil {
36092		return nil, err
36093	}
36094	ret := &RegionalinventoryCustomBatchResponse{
36095		ServerResponse: googleapi.ServerResponse{
36096			Header:         res.Header,
36097			HTTPStatusCode: res.StatusCode,
36098		},
36099	}
36100	target := &ret
36101	if err := gensupport.DecodeResponse(target, res); err != nil {
36102		return nil, err
36103	}
36104	return ret, nil
36105	// {
36106	//   "description": "Updates regional inventory for multiple products or regions in a single request.",
36107	//   "flatPath": "regionalinventory/batch",
36108	//   "httpMethod": "POST",
36109	//   "id": "content.regionalinventory.custombatch",
36110	//   "parameterOrder": [],
36111	//   "parameters": {},
36112	//   "path": "regionalinventory/batch",
36113	//   "request": {
36114	//     "$ref": "RegionalinventoryCustomBatchRequest"
36115	//   },
36116	//   "response": {
36117	//     "$ref": "RegionalinventoryCustomBatchResponse"
36118	//   },
36119	//   "scopes": [
36120	//     "https://www.googleapis.com/auth/content"
36121	//   ]
36122	// }
36123
36124}
36125
36126// method id "content.regionalinventory.insert":
36127
36128type RegionalinventoryInsertCall struct {
36129	s                 *APIService
36130	merchantId        uint64
36131	productId         string
36132	regionalinventory *RegionalInventory
36133	urlParams_        gensupport.URLParams
36134	ctx_              context.Context
36135	header_           http.Header
36136}
36137
36138// Insert: Update the regional inventory of a product in your Merchant
36139// Center account. If a regional inventory with the same region ID
36140// already exists, this method updates that entry.
36141//
36142// - merchantId: The ID of the account that contains the product. This
36143//   account cannot be a multi-client account.
36144// - productId: The REST ID of the product for which to update the
36145//   regional inventory.
36146func (r *RegionalinventoryService) Insert(merchantId uint64, productId string, regionalinventory *RegionalInventory) *RegionalinventoryInsertCall {
36147	c := &RegionalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36148	c.merchantId = merchantId
36149	c.productId = productId
36150	c.regionalinventory = regionalinventory
36151	return c
36152}
36153
36154// Fields allows partial responses to be retrieved. See
36155// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36156// for more information.
36157func (c *RegionalinventoryInsertCall) Fields(s ...googleapi.Field) *RegionalinventoryInsertCall {
36158	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36159	return c
36160}
36161
36162// Context sets the context to be used in this call's Do method. Any
36163// pending HTTP request will be aborted if the provided context is
36164// canceled.
36165func (c *RegionalinventoryInsertCall) Context(ctx context.Context) *RegionalinventoryInsertCall {
36166	c.ctx_ = ctx
36167	return c
36168}
36169
36170// Header returns an http.Header that can be modified by the caller to
36171// add HTTP headers to the request.
36172func (c *RegionalinventoryInsertCall) Header() http.Header {
36173	if c.header_ == nil {
36174		c.header_ = make(http.Header)
36175	}
36176	return c.header_
36177}
36178
36179func (c *RegionalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
36180	reqHeaders := make(http.Header)
36181	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36182	for k, v := range c.header_ {
36183		reqHeaders[k] = v
36184	}
36185	reqHeaders.Set("User-Agent", c.s.userAgent())
36186	var body io.Reader = nil
36187	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventory)
36188	if err != nil {
36189		return nil, err
36190	}
36191	reqHeaders.Set("Content-Type", "application/json")
36192	c.urlParams_.Set("alt", alt)
36193	c.urlParams_.Set("prettyPrint", "false")
36194	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/regionalinventory")
36195	urls += "?" + c.urlParams_.Encode()
36196	req, err := http.NewRequest("POST", urls, body)
36197	if err != nil {
36198		return nil, err
36199	}
36200	req.Header = reqHeaders
36201	googleapi.Expand(req.URL, map[string]string{
36202		"merchantId": strconv.FormatUint(c.merchantId, 10),
36203		"productId":  c.productId,
36204	})
36205	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36206}
36207
36208// Do executes the "content.regionalinventory.insert" call.
36209// Exactly one of *RegionalInventory or error will be non-nil. Any
36210// non-2xx status code is an error. Response headers are in either
36211// *RegionalInventory.ServerResponse.Header or (if a response was
36212// returned at all) in error.(*googleapi.Error).Header. Use
36213// googleapi.IsNotModified to check whether the returned error was
36214// because http.StatusNotModified was returned.
36215func (c *RegionalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*RegionalInventory, error) {
36216	gensupport.SetOptions(c.urlParams_, opts...)
36217	res, err := c.doRequest("json")
36218	if res != nil && res.StatusCode == http.StatusNotModified {
36219		if res.Body != nil {
36220			res.Body.Close()
36221		}
36222		return nil, &googleapi.Error{
36223			Code:   res.StatusCode,
36224			Header: res.Header,
36225		}
36226	}
36227	if err != nil {
36228		return nil, err
36229	}
36230	defer googleapi.CloseBody(res)
36231	if err := googleapi.CheckResponse(res); err != nil {
36232		return nil, err
36233	}
36234	ret := &RegionalInventory{
36235		ServerResponse: googleapi.ServerResponse{
36236			Header:         res.Header,
36237			HTTPStatusCode: res.StatusCode,
36238		},
36239	}
36240	target := &ret
36241	if err := gensupport.DecodeResponse(target, res); err != nil {
36242		return nil, err
36243	}
36244	return ret, nil
36245	// {
36246	//   "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.",
36247	//   "flatPath": "{merchantId}/products/{productId}/regionalinventory",
36248	//   "httpMethod": "POST",
36249	//   "id": "content.regionalinventory.insert",
36250	//   "parameterOrder": [
36251	//     "merchantId",
36252	//     "productId"
36253	//   ],
36254	//   "parameters": {
36255	//     "merchantId": {
36256	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
36257	//       "format": "uint64",
36258	//       "location": "path",
36259	//       "required": true,
36260	//       "type": "string"
36261	//     },
36262	//     "productId": {
36263	//       "description": "The REST ID of the product for which to update the regional inventory.",
36264	//       "location": "path",
36265	//       "required": true,
36266	//       "type": "string"
36267	//     }
36268	//   },
36269	//   "path": "{merchantId}/products/{productId}/regionalinventory",
36270	//   "request": {
36271	//     "$ref": "RegionalInventory"
36272	//   },
36273	//   "response": {
36274	//     "$ref": "RegionalInventory"
36275	//   },
36276	//   "scopes": [
36277	//     "https://www.googleapis.com/auth/content"
36278	//   ]
36279	// }
36280
36281}
36282
36283// method id "content.regions.create":
36284
36285type RegionsCreateCall struct {
36286	s          *APIService
36287	merchantId int64
36288	region     *Region
36289	urlParams_ gensupport.URLParams
36290	ctx_       context.Context
36291	header_    http.Header
36292}
36293
36294// Create: Creates a region definition in your Merchant Center account.
36295//
36296// - merchantId: The id of the merchant for which to create region
36297//   definition.
36298func (r *RegionsService) Create(merchantId int64, region *Region) *RegionsCreateCall {
36299	c := &RegionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36300	c.merchantId = merchantId
36301	c.region = region
36302	return c
36303}
36304
36305// RegionId sets the optional parameter "regionId": Required. The id of
36306// the region to create.
36307func (c *RegionsCreateCall) RegionId(regionId string) *RegionsCreateCall {
36308	c.urlParams_.Set("regionId", regionId)
36309	return c
36310}
36311
36312// Fields allows partial responses to be retrieved. See
36313// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36314// for more information.
36315func (c *RegionsCreateCall) Fields(s ...googleapi.Field) *RegionsCreateCall {
36316	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36317	return c
36318}
36319
36320// Context sets the context to be used in this call's Do method. Any
36321// pending HTTP request will be aborted if the provided context is
36322// canceled.
36323func (c *RegionsCreateCall) Context(ctx context.Context) *RegionsCreateCall {
36324	c.ctx_ = ctx
36325	return c
36326}
36327
36328// Header returns an http.Header that can be modified by the caller to
36329// add HTTP headers to the request.
36330func (c *RegionsCreateCall) Header() http.Header {
36331	if c.header_ == nil {
36332		c.header_ = make(http.Header)
36333	}
36334	return c.header_
36335}
36336
36337func (c *RegionsCreateCall) doRequest(alt string) (*http.Response, error) {
36338	reqHeaders := make(http.Header)
36339	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36340	for k, v := range c.header_ {
36341		reqHeaders[k] = v
36342	}
36343	reqHeaders.Set("User-Agent", c.s.userAgent())
36344	var body io.Reader = nil
36345	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
36346	if err != nil {
36347		return nil, err
36348	}
36349	reqHeaders.Set("Content-Type", "application/json")
36350	c.urlParams_.Set("alt", alt)
36351	c.urlParams_.Set("prettyPrint", "false")
36352	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions")
36353	urls += "?" + c.urlParams_.Encode()
36354	req, err := http.NewRequest("POST", urls, body)
36355	if err != nil {
36356		return nil, err
36357	}
36358	req.Header = reqHeaders
36359	googleapi.Expand(req.URL, map[string]string{
36360		"merchantId": strconv.FormatInt(c.merchantId, 10),
36361	})
36362	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36363}
36364
36365// Do executes the "content.regions.create" call.
36366// Exactly one of *Region or error will be non-nil. Any non-2xx status
36367// code is an error. Response headers are in either
36368// *Region.ServerResponse.Header or (if a response was returned at all)
36369// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
36370// check whether the returned error was because http.StatusNotModified
36371// was returned.
36372func (c *RegionsCreateCall) Do(opts ...googleapi.CallOption) (*Region, error) {
36373	gensupport.SetOptions(c.urlParams_, opts...)
36374	res, err := c.doRequest("json")
36375	if res != nil && res.StatusCode == http.StatusNotModified {
36376		if res.Body != nil {
36377			res.Body.Close()
36378		}
36379		return nil, &googleapi.Error{
36380			Code:   res.StatusCode,
36381			Header: res.Header,
36382		}
36383	}
36384	if err != nil {
36385		return nil, err
36386	}
36387	defer googleapi.CloseBody(res)
36388	if err := googleapi.CheckResponse(res); err != nil {
36389		return nil, err
36390	}
36391	ret := &Region{
36392		ServerResponse: googleapi.ServerResponse{
36393			Header:         res.Header,
36394			HTTPStatusCode: res.StatusCode,
36395		},
36396	}
36397	target := &ret
36398	if err := gensupport.DecodeResponse(target, res); err != nil {
36399		return nil, err
36400	}
36401	return ret, nil
36402	// {
36403	//   "description": "Creates a region definition in your Merchant Center account.",
36404	//   "flatPath": "{merchantId}/regions",
36405	//   "httpMethod": "POST",
36406	//   "id": "content.regions.create",
36407	//   "parameterOrder": [
36408	//     "merchantId"
36409	//   ],
36410	//   "parameters": {
36411	//     "merchantId": {
36412	//       "description": "Required. The id of the merchant for which to create region definition.",
36413	//       "format": "int64",
36414	//       "location": "path",
36415	//       "required": true,
36416	//       "type": "string"
36417	//     },
36418	//     "regionId": {
36419	//       "description": "Required. The id of the region to create.",
36420	//       "location": "query",
36421	//       "type": "string"
36422	//     }
36423	//   },
36424	//   "path": "{merchantId}/regions",
36425	//   "request": {
36426	//     "$ref": "Region"
36427	//   },
36428	//   "response": {
36429	//     "$ref": "Region"
36430	//   },
36431	//   "scopes": [
36432	//     "https://www.googleapis.com/auth/content"
36433	//   ]
36434	// }
36435
36436}
36437
36438// method id "content.regions.delete":
36439
36440type RegionsDeleteCall struct {
36441	s          *APIService
36442	merchantId int64
36443	regionId   string
36444	urlParams_ gensupport.URLParams
36445	ctx_       context.Context
36446	header_    http.Header
36447}
36448
36449// Delete: Deletes a region definition from your Merchant Center
36450// account.
36451//
36452// - merchantId: The id of the merchant for which to delete region
36453//   definition.
36454// - regionId: The id of the region to delete.
36455func (r *RegionsService) Delete(merchantId int64, regionId string) *RegionsDeleteCall {
36456	c := &RegionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36457	c.merchantId = merchantId
36458	c.regionId = regionId
36459	return c
36460}
36461
36462// Fields allows partial responses to be retrieved. See
36463// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36464// for more information.
36465func (c *RegionsDeleteCall) Fields(s ...googleapi.Field) *RegionsDeleteCall {
36466	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36467	return c
36468}
36469
36470// Context sets the context to be used in this call's Do method. Any
36471// pending HTTP request will be aborted if the provided context is
36472// canceled.
36473func (c *RegionsDeleteCall) Context(ctx context.Context) *RegionsDeleteCall {
36474	c.ctx_ = ctx
36475	return c
36476}
36477
36478// Header returns an http.Header that can be modified by the caller to
36479// add HTTP headers to the request.
36480func (c *RegionsDeleteCall) Header() http.Header {
36481	if c.header_ == nil {
36482		c.header_ = make(http.Header)
36483	}
36484	return c.header_
36485}
36486
36487func (c *RegionsDeleteCall) doRequest(alt string) (*http.Response, error) {
36488	reqHeaders := make(http.Header)
36489	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36490	for k, v := range c.header_ {
36491		reqHeaders[k] = v
36492	}
36493	reqHeaders.Set("User-Agent", c.s.userAgent())
36494	var body io.Reader = nil
36495	c.urlParams_.Set("alt", alt)
36496	c.urlParams_.Set("prettyPrint", "false")
36497	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
36498	urls += "?" + c.urlParams_.Encode()
36499	req, err := http.NewRequest("DELETE", urls, body)
36500	if err != nil {
36501		return nil, err
36502	}
36503	req.Header = reqHeaders
36504	googleapi.Expand(req.URL, map[string]string{
36505		"merchantId": strconv.FormatInt(c.merchantId, 10),
36506		"regionId":   c.regionId,
36507	})
36508	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36509}
36510
36511// Do executes the "content.regions.delete" call.
36512func (c *RegionsDeleteCall) Do(opts ...googleapi.CallOption) error {
36513	gensupport.SetOptions(c.urlParams_, opts...)
36514	res, err := c.doRequest("json")
36515	if err != nil {
36516		return err
36517	}
36518	defer googleapi.CloseBody(res)
36519	if err := googleapi.CheckResponse(res); err != nil {
36520		return err
36521	}
36522	return nil
36523	// {
36524	//   "description": "Deletes a region definition from your Merchant Center account.",
36525	//   "flatPath": "{merchantId}/regions/{regionId}",
36526	//   "httpMethod": "DELETE",
36527	//   "id": "content.regions.delete",
36528	//   "parameterOrder": [
36529	//     "merchantId",
36530	//     "regionId"
36531	//   ],
36532	//   "parameters": {
36533	//     "merchantId": {
36534	//       "description": "Required. The id of the merchant for which to delete region definition.",
36535	//       "format": "int64",
36536	//       "location": "path",
36537	//       "required": true,
36538	//       "type": "string"
36539	//     },
36540	//     "regionId": {
36541	//       "description": "Required. The id of the region to delete.",
36542	//       "location": "path",
36543	//       "required": true,
36544	//       "type": "string"
36545	//     }
36546	//   },
36547	//   "path": "{merchantId}/regions/{regionId}",
36548	//   "scopes": [
36549	//     "https://www.googleapis.com/auth/content"
36550	//   ]
36551	// }
36552
36553}
36554
36555// method id "content.regions.get":
36556
36557type RegionsGetCall struct {
36558	s            *APIService
36559	merchantId   int64
36560	regionId     string
36561	urlParams_   gensupport.URLParams
36562	ifNoneMatch_ string
36563	ctx_         context.Context
36564	header_      http.Header
36565}
36566
36567// Get: Retrieves a region defined in your Merchant Center account.
36568//
36569// - merchantId: The id of the merchant for which to retrieve region
36570//   definition.
36571// - regionId: The id of the region to retrieve.
36572func (r *RegionsService) Get(merchantId int64, regionId string) *RegionsGetCall {
36573	c := &RegionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36574	c.merchantId = merchantId
36575	c.regionId = regionId
36576	return c
36577}
36578
36579// Fields allows partial responses to be retrieved. See
36580// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36581// for more information.
36582func (c *RegionsGetCall) Fields(s ...googleapi.Field) *RegionsGetCall {
36583	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36584	return c
36585}
36586
36587// IfNoneMatch sets the optional parameter which makes the operation
36588// fail if the object's ETag matches the given value. This is useful for
36589// getting updates only after the object has changed since the last
36590// request. Use googleapi.IsNotModified to check whether the response
36591// error from Do is the result of In-None-Match.
36592func (c *RegionsGetCall) IfNoneMatch(entityTag string) *RegionsGetCall {
36593	c.ifNoneMatch_ = entityTag
36594	return c
36595}
36596
36597// Context sets the context to be used in this call's Do method. Any
36598// pending HTTP request will be aborted if the provided context is
36599// canceled.
36600func (c *RegionsGetCall) Context(ctx context.Context) *RegionsGetCall {
36601	c.ctx_ = ctx
36602	return c
36603}
36604
36605// Header returns an http.Header that can be modified by the caller to
36606// add HTTP headers to the request.
36607func (c *RegionsGetCall) Header() http.Header {
36608	if c.header_ == nil {
36609		c.header_ = make(http.Header)
36610	}
36611	return c.header_
36612}
36613
36614func (c *RegionsGetCall) doRequest(alt string) (*http.Response, error) {
36615	reqHeaders := make(http.Header)
36616	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36617	for k, v := range c.header_ {
36618		reqHeaders[k] = v
36619	}
36620	reqHeaders.Set("User-Agent", c.s.userAgent())
36621	if c.ifNoneMatch_ != "" {
36622		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36623	}
36624	var body io.Reader = nil
36625	c.urlParams_.Set("alt", alt)
36626	c.urlParams_.Set("prettyPrint", "false")
36627	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
36628	urls += "?" + c.urlParams_.Encode()
36629	req, err := http.NewRequest("GET", urls, body)
36630	if err != nil {
36631		return nil, err
36632	}
36633	req.Header = reqHeaders
36634	googleapi.Expand(req.URL, map[string]string{
36635		"merchantId": strconv.FormatInt(c.merchantId, 10),
36636		"regionId":   c.regionId,
36637	})
36638	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36639}
36640
36641// Do executes the "content.regions.get" call.
36642// Exactly one of *Region or error will be non-nil. Any non-2xx status
36643// code is an error. Response headers are in either
36644// *Region.ServerResponse.Header or (if a response was returned at all)
36645// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
36646// check whether the returned error was because http.StatusNotModified
36647// was returned.
36648func (c *RegionsGetCall) Do(opts ...googleapi.CallOption) (*Region, error) {
36649	gensupport.SetOptions(c.urlParams_, opts...)
36650	res, err := c.doRequest("json")
36651	if res != nil && res.StatusCode == http.StatusNotModified {
36652		if res.Body != nil {
36653			res.Body.Close()
36654		}
36655		return nil, &googleapi.Error{
36656			Code:   res.StatusCode,
36657			Header: res.Header,
36658		}
36659	}
36660	if err != nil {
36661		return nil, err
36662	}
36663	defer googleapi.CloseBody(res)
36664	if err := googleapi.CheckResponse(res); err != nil {
36665		return nil, err
36666	}
36667	ret := &Region{
36668		ServerResponse: googleapi.ServerResponse{
36669			Header:         res.Header,
36670			HTTPStatusCode: res.StatusCode,
36671		},
36672	}
36673	target := &ret
36674	if err := gensupport.DecodeResponse(target, res); err != nil {
36675		return nil, err
36676	}
36677	return ret, nil
36678	// {
36679	//   "description": "Retrieves a region defined in your Merchant Center account.",
36680	//   "flatPath": "{merchantId}/regions/{regionId}",
36681	//   "httpMethod": "GET",
36682	//   "id": "content.regions.get",
36683	//   "parameterOrder": [
36684	//     "merchantId",
36685	//     "regionId"
36686	//   ],
36687	//   "parameters": {
36688	//     "merchantId": {
36689	//       "description": "Required. The id of the merchant for which to retrieve region definition.",
36690	//       "format": "int64",
36691	//       "location": "path",
36692	//       "required": true,
36693	//       "type": "string"
36694	//     },
36695	//     "regionId": {
36696	//       "description": "Required. The id of the region to retrieve.",
36697	//       "location": "path",
36698	//       "required": true,
36699	//       "type": "string"
36700	//     }
36701	//   },
36702	//   "path": "{merchantId}/regions/{regionId}",
36703	//   "response": {
36704	//     "$ref": "Region"
36705	//   },
36706	//   "scopes": [
36707	//     "https://www.googleapis.com/auth/content"
36708	//   ]
36709	// }
36710
36711}
36712
36713// method id "content.regions.list":
36714
36715type RegionsListCall struct {
36716	s            *APIService
36717	merchantId   int64
36718	urlParams_   gensupport.URLParams
36719	ifNoneMatch_ string
36720	ctx_         context.Context
36721	header_      http.Header
36722}
36723
36724// List: Lists the regions in your Merchant Center account.
36725//
36726// - merchantId: The id of the merchant for which to list region
36727//   definitions.
36728func (r *RegionsService) List(merchantId int64) *RegionsListCall {
36729	c := &RegionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36730	c.merchantId = merchantId
36731	return c
36732}
36733
36734// PageSize sets the optional parameter "pageSize": The maximum number
36735// of regions to return. The service may return fewer than this value.
36736// If unspecified, at most 50 rules will be returned. The maximum value
36737// is 1000; values above 1000 will be coerced to 1000.
36738func (c *RegionsListCall) PageSize(pageSize int64) *RegionsListCall {
36739	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
36740	return c
36741}
36742
36743// PageToken sets the optional parameter "pageToken": A page token,
36744// received from a previous `ListRegions` call. Provide this to retrieve
36745// the subsequent page. When paginating, all other parameters provided
36746// to `ListRegions` must match the call that provided the page token.
36747func (c *RegionsListCall) PageToken(pageToken string) *RegionsListCall {
36748	c.urlParams_.Set("pageToken", pageToken)
36749	return c
36750}
36751
36752// Fields allows partial responses to be retrieved. See
36753// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36754// for more information.
36755func (c *RegionsListCall) Fields(s ...googleapi.Field) *RegionsListCall {
36756	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36757	return c
36758}
36759
36760// IfNoneMatch sets the optional parameter which makes the operation
36761// fail if the object's ETag matches the given value. This is useful for
36762// getting updates only after the object has changed since the last
36763// request. Use googleapi.IsNotModified to check whether the response
36764// error from Do is the result of In-None-Match.
36765func (c *RegionsListCall) IfNoneMatch(entityTag string) *RegionsListCall {
36766	c.ifNoneMatch_ = entityTag
36767	return c
36768}
36769
36770// Context sets the context to be used in this call's Do method. Any
36771// pending HTTP request will be aborted if the provided context is
36772// canceled.
36773func (c *RegionsListCall) Context(ctx context.Context) *RegionsListCall {
36774	c.ctx_ = ctx
36775	return c
36776}
36777
36778// Header returns an http.Header that can be modified by the caller to
36779// add HTTP headers to the request.
36780func (c *RegionsListCall) Header() http.Header {
36781	if c.header_ == nil {
36782		c.header_ = make(http.Header)
36783	}
36784	return c.header_
36785}
36786
36787func (c *RegionsListCall) doRequest(alt string) (*http.Response, error) {
36788	reqHeaders := make(http.Header)
36789	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36790	for k, v := range c.header_ {
36791		reqHeaders[k] = v
36792	}
36793	reqHeaders.Set("User-Agent", c.s.userAgent())
36794	if c.ifNoneMatch_ != "" {
36795		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36796	}
36797	var body io.Reader = nil
36798	c.urlParams_.Set("alt", alt)
36799	c.urlParams_.Set("prettyPrint", "false")
36800	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions")
36801	urls += "?" + c.urlParams_.Encode()
36802	req, err := http.NewRequest("GET", urls, body)
36803	if err != nil {
36804		return nil, err
36805	}
36806	req.Header = reqHeaders
36807	googleapi.Expand(req.URL, map[string]string{
36808		"merchantId": strconv.FormatInt(c.merchantId, 10),
36809	})
36810	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36811}
36812
36813// Do executes the "content.regions.list" call.
36814// Exactly one of *ListRegionsResponse or error will be non-nil. Any
36815// non-2xx status code is an error. Response headers are in either
36816// *ListRegionsResponse.ServerResponse.Header or (if a response was
36817// returned at all) in error.(*googleapi.Error).Header. Use
36818// googleapi.IsNotModified to check whether the returned error was
36819// because http.StatusNotModified was returned.
36820func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*ListRegionsResponse, error) {
36821	gensupport.SetOptions(c.urlParams_, opts...)
36822	res, err := c.doRequest("json")
36823	if res != nil && res.StatusCode == http.StatusNotModified {
36824		if res.Body != nil {
36825			res.Body.Close()
36826		}
36827		return nil, &googleapi.Error{
36828			Code:   res.StatusCode,
36829			Header: res.Header,
36830		}
36831	}
36832	if err != nil {
36833		return nil, err
36834	}
36835	defer googleapi.CloseBody(res)
36836	if err := googleapi.CheckResponse(res); err != nil {
36837		return nil, err
36838	}
36839	ret := &ListRegionsResponse{
36840		ServerResponse: googleapi.ServerResponse{
36841			Header:         res.Header,
36842			HTTPStatusCode: res.StatusCode,
36843		},
36844	}
36845	target := &ret
36846	if err := gensupport.DecodeResponse(target, res); err != nil {
36847		return nil, err
36848	}
36849	return ret, nil
36850	// {
36851	//   "description": "Lists the regions in your Merchant Center account.",
36852	//   "flatPath": "{merchantId}/regions",
36853	//   "httpMethod": "GET",
36854	//   "id": "content.regions.list",
36855	//   "parameterOrder": [
36856	//     "merchantId"
36857	//   ],
36858	//   "parameters": {
36859	//     "merchantId": {
36860	//       "description": "Required. The id of the merchant for which to list region definitions.",
36861	//       "format": "int64",
36862	//       "location": "path",
36863	//       "required": true,
36864	//       "type": "string"
36865	//     },
36866	//     "pageSize": {
36867	//       "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.",
36868	//       "format": "int32",
36869	//       "location": "query",
36870	//       "type": "integer"
36871	//     },
36872	//     "pageToken": {
36873	//       "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.",
36874	//       "location": "query",
36875	//       "type": "string"
36876	//     }
36877	//   },
36878	//   "path": "{merchantId}/regions",
36879	//   "response": {
36880	//     "$ref": "ListRegionsResponse"
36881	//   },
36882	//   "scopes": [
36883	//     "https://www.googleapis.com/auth/content"
36884	//   ]
36885	// }
36886
36887}
36888
36889// Pages invokes f for each page of results.
36890// A non-nil error returned from f will halt the iteration.
36891// The provided context supersedes any context provided to the Context method.
36892func (c *RegionsListCall) Pages(ctx context.Context, f func(*ListRegionsResponse) error) error {
36893	c.ctx_ = ctx
36894	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
36895	for {
36896		x, err := c.Do()
36897		if err != nil {
36898			return err
36899		}
36900		if err := f(x); err != nil {
36901			return err
36902		}
36903		if x.NextPageToken == "" {
36904			return nil
36905		}
36906		c.PageToken(x.NextPageToken)
36907	}
36908}
36909
36910// method id "content.regions.patch":
36911
36912type RegionsPatchCall struct {
36913	s          *APIService
36914	merchantId int64
36915	regionId   string
36916	region     *Region
36917	urlParams_ gensupport.URLParams
36918	ctx_       context.Context
36919	header_    http.Header
36920}
36921
36922// Patch: Updates a region definition in your Merchant Center account.
36923//
36924// - merchantId: The id of the merchant for which to update region
36925//   definition.
36926// - regionId: The id of the region to update.
36927func (r *RegionsService) Patch(merchantId int64, regionId string, region *Region) *RegionsPatchCall {
36928	c := &RegionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36929	c.merchantId = merchantId
36930	c.regionId = regionId
36931	c.region = region
36932	return c
36933}
36934
36935// UpdateMask sets the optional parameter "updateMask": The
36936// comma-separated field mask indicating the fields to update. Example:
36937// "displayName,postalCodeArea.regionCode".
36938func (c *RegionsPatchCall) UpdateMask(updateMask string) *RegionsPatchCall {
36939	c.urlParams_.Set("updateMask", updateMask)
36940	return c
36941}
36942
36943// Fields allows partial responses to be retrieved. See
36944// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36945// for more information.
36946func (c *RegionsPatchCall) Fields(s ...googleapi.Field) *RegionsPatchCall {
36947	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36948	return c
36949}
36950
36951// Context sets the context to be used in this call's Do method. Any
36952// pending HTTP request will be aborted if the provided context is
36953// canceled.
36954func (c *RegionsPatchCall) Context(ctx context.Context) *RegionsPatchCall {
36955	c.ctx_ = ctx
36956	return c
36957}
36958
36959// Header returns an http.Header that can be modified by the caller to
36960// add HTTP headers to the request.
36961func (c *RegionsPatchCall) Header() http.Header {
36962	if c.header_ == nil {
36963		c.header_ = make(http.Header)
36964	}
36965	return c.header_
36966}
36967
36968func (c *RegionsPatchCall) doRequest(alt string) (*http.Response, error) {
36969	reqHeaders := make(http.Header)
36970	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
36971	for k, v := range c.header_ {
36972		reqHeaders[k] = v
36973	}
36974	reqHeaders.Set("User-Agent", c.s.userAgent())
36975	var body io.Reader = nil
36976	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
36977	if err != nil {
36978		return nil, err
36979	}
36980	reqHeaders.Set("Content-Type", "application/json")
36981	c.urlParams_.Set("alt", alt)
36982	c.urlParams_.Set("prettyPrint", "false")
36983	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
36984	urls += "?" + c.urlParams_.Encode()
36985	req, err := http.NewRequest("PATCH", urls, body)
36986	if err != nil {
36987		return nil, err
36988	}
36989	req.Header = reqHeaders
36990	googleapi.Expand(req.URL, map[string]string{
36991		"merchantId": strconv.FormatInt(c.merchantId, 10),
36992		"regionId":   c.regionId,
36993	})
36994	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36995}
36996
36997// Do executes the "content.regions.patch" call.
36998// Exactly one of *Region or error will be non-nil. Any non-2xx status
36999// code is an error. Response headers are in either
37000// *Region.ServerResponse.Header or (if a response was returned at all)
37001// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
37002// check whether the returned error was because http.StatusNotModified
37003// was returned.
37004func (c *RegionsPatchCall) Do(opts ...googleapi.CallOption) (*Region, error) {
37005	gensupport.SetOptions(c.urlParams_, opts...)
37006	res, err := c.doRequest("json")
37007	if res != nil && res.StatusCode == http.StatusNotModified {
37008		if res.Body != nil {
37009			res.Body.Close()
37010		}
37011		return nil, &googleapi.Error{
37012			Code:   res.StatusCode,
37013			Header: res.Header,
37014		}
37015	}
37016	if err != nil {
37017		return nil, err
37018	}
37019	defer googleapi.CloseBody(res)
37020	if err := googleapi.CheckResponse(res); err != nil {
37021		return nil, err
37022	}
37023	ret := &Region{
37024		ServerResponse: googleapi.ServerResponse{
37025			Header:         res.Header,
37026			HTTPStatusCode: res.StatusCode,
37027		},
37028	}
37029	target := &ret
37030	if err := gensupport.DecodeResponse(target, res); err != nil {
37031		return nil, err
37032	}
37033	return ret, nil
37034	// {
37035	//   "description": "Updates a region definition in your Merchant Center account.",
37036	//   "flatPath": "{merchantId}/regions/{regionId}",
37037	//   "httpMethod": "PATCH",
37038	//   "id": "content.regions.patch",
37039	//   "parameterOrder": [
37040	//     "merchantId",
37041	//     "regionId"
37042	//   ],
37043	//   "parameters": {
37044	//     "merchantId": {
37045	//       "description": "Required. The id of the merchant for which to update region definition.",
37046	//       "format": "int64",
37047	//       "location": "path",
37048	//       "required": true,
37049	//       "type": "string"
37050	//     },
37051	//     "regionId": {
37052	//       "description": "Required. The id of the region to update.",
37053	//       "location": "path",
37054	//       "required": true,
37055	//       "type": "string"
37056	//     },
37057	//     "updateMask": {
37058	//       "description": "Optional. The comma-separated field mask indicating the fields to update. Example: `\"displayName,postalCodeArea.regionCode\"`.",
37059	//       "format": "google-fieldmask",
37060	//       "location": "query",
37061	//       "type": "string"
37062	//     }
37063	//   },
37064	//   "path": "{merchantId}/regions/{regionId}",
37065	//   "request": {
37066	//     "$ref": "Region"
37067	//   },
37068	//   "response": {
37069	//     "$ref": "Region"
37070	//   },
37071	//   "scopes": [
37072	//     "https://www.googleapis.com/auth/content"
37073	//   ]
37074	// }
37075
37076}
37077
37078// method id "content.reports.search":
37079
37080type ReportsSearchCall struct {
37081	s             *APIService
37082	merchantId    int64
37083	searchrequest *SearchRequest
37084	urlParams_    gensupport.URLParams
37085	ctx_          context.Context
37086	header_       http.Header
37087}
37088
37089// Search: Retrieves merchant performance mertrics matching the search
37090// query and optionally segmented by selected dimensions.
37091//
37092// - merchantId: Id of the merchant making the call. Must be a
37093//   standalone account or an MCA subaccount.
37094func (r *ReportsService) Search(merchantId int64, searchrequest *SearchRequest) *ReportsSearchCall {
37095	c := &ReportsSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37096	c.merchantId = merchantId
37097	c.searchrequest = searchrequest
37098	return c
37099}
37100
37101// Fields allows partial responses to be retrieved. See
37102// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37103// for more information.
37104func (c *ReportsSearchCall) Fields(s ...googleapi.Field) *ReportsSearchCall {
37105	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37106	return c
37107}
37108
37109// Context sets the context to be used in this call's Do method. Any
37110// pending HTTP request will be aborted if the provided context is
37111// canceled.
37112func (c *ReportsSearchCall) Context(ctx context.Context) *ReportsSearchCall {
37113	c.ctx_ = ctx
37114	return c
37115}
37116
37117// Header returns an http.Header that can be modified by the caller to
37118// add HTTP headers to the request.
37119func (c *ReportsSearchCall) Header() http.Header {
37120	if c.header_ == nil {
37121		c.header_ = make(http.Header)
37122	}
37123	return c.header_
37124}
37125
37126func (c *ReportsSearchCall) doRequest(alt string) (*http.Response, error) {
37127	reqHeaders := make(http.Header)
37128	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37129	for k, v := range c.header_ {
37130		reqHeaders[k] = v
37131	}
37132	reqHeaders.Set("User-Agent", c.s.userAgent())
37133	var body io.Reader = nil
37134	body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchrequest)
37135	if err != nil {
37136		return nil, err
37137	}
37138	reqHeaders.Set("Content-Type", "application/json")
37139	c.urlParams_.Set("alt", alt)
37140	c.urlParams_.Set("prettyPrint", "false")
37141	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/reports/search")
37142	urls += "?" + c.urlParams_.Encode()
37143	req, err := http.NewRequest("POST", urls, body)
37144	if err != nil {
37145		return nil, err
37146	}
37147	req.Header = reqHeaders
37148	googleapi.Expand(req.URL, map[string]string{
37149		"merchantId": strconv.FormatInt(c.merchantId, 10),
37150	})
37151	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37152}
37153
37154// Do executes the "content.reports.search" call.
37155// Exactly one of *SearchResponse or error will be non-nil. Any non-2xx
37156// status code is an error. Response headers are in either
37157// *SearchResponse.ServerResponse.Header or (if a response was returned
37158// at all) in error.(*googleapi.Error).Header. Use
37159// googleapi.IsNotModified to check whether the returned error was
37160// because http.StatusNotModified was returned.
37161func (c *ReportsSearchCall) Do(opts ...googleapi.CallOption) (*SearchResponse, error) {
37162	gensupport.SetOptions(c.urlParams_, opts...)
37163	res, err := c.doRequest("json")
37164	if res != nil && res.StatusCode == http.StatusNotModified {
37165		if res.Body != nil {
37166			res.Body.Close()
37167		}
37168		return nil, &googleapi.Error{
37169			Code:   res.StatusCode,
37170			Header: res.Header,
37171		}
37172	}
37173	if err != nil {
37174		return nil, err
37175	}
37176	defer googleapi.CloseBody(res)
37177	if err := googleapi.CheckResponse(res); err != nil {
37178		return nil, err
37179	}
37180	ret := &SearchResponse{
37181		ServerResponse: googleapi.ServerResponse{
37182			Header:         res.Header,
37183			HTTPStatusCode: res.StatusCode,
37184		},
37185	}
37186	target := &ret
37187	if err := gensupport.DecodeResponse(target, res); err != nil {
37188		return nil, err
37189	}
37190	return ret, nil
37191	// {
37192	//   "description": "Retrieves merchant performance mertrics matching the search query and optionally segmented by selected dimensions.",
37193	//   "flatPath": "{merchantId}/reports/search",
37194	//   "httpMethod": "POST",
37195	//   "id": "content.reports.search",
37196	//   "parameterOrder": [
37197	//     "merchantId"
37198	//   ],
37199	//   "parameters": {
37200	//     "merchantId": {
37201	//       "description": "Required. Id of the merchant making the call. Must be a standalone account or an MCA subaccount.",
37202	//       "format": "int64",
37203	//       "location": "path",
37204	//       "required": true,
37205	//       "type": "string"
37206	//     }
37207	//   },
37208	//   "path": "{merchantId}/reports/search",
37209	//   "request": {
37210	//     "$ref": "SearchRequest"
37211	//   },
37212	//   "response": {
37213	//     "$ref": "SearchResponse"
37214	//   },
37215	//   "scopes": [
37216	//     "https://www.googleapis.com/auth/content"
37217	//   ]
37218	// }
37219
37220}
37221
37222// Pages invokes f for each page of results.
37223// A non-nil error returned from f will halt the iteration.
37224// The provided context supersedes any context provided to the Context method.
37225func (c *ReportsSearchCall) Pages(ctx context.Context, f func(*SearchResponse) error) error {
37226	c.ctx_ = ctx
37227	defer func(pt string) { c.searchrequest.PageToken = pt }(c.searchrequest.PageToken) // reset paging to original point
37228	for {
37229		x, err := c.Do()
37230		if err != nil {
37231			return err
37232		}
37233		if err := f(x); err != nil {
37234			return err
37235		}
37236		if x.NextPageToken == "" {
37237			return nil
37238		}
37239		c.searchrequest.PageToken = x.NextPageToken
37240	}
37241}
37242
37243// method id "content.repricingrules.create":
37244
37245type RepricingrulesCreateCall struct {
37246	s             *APIService
37247	merchantId    int64
37248	repricingrule *RepricingRule
37249	urlParams_    gensupport.URLParams
37250	ctx_          context.Context
37251	header_       http.Header
37252}
37253
37254// Create: Creates a repricing rule for your Merchant Center account.
37255//
37256// - merchantId: The id of the merchant who owns the repricing rule.
37257func (r *RepricingrulesService) Create(merchantId int64, repricingrule *RepricingRule) *RepricingrulesCreateCall {
37258	c := &RepricingrulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37259	c.merchantId = merchantId
37260	c.repricingrule = repricingrule
37261	return c
37262}
37263
37264// RuleId sets the optional parameter "ruleId": Required. The id of the
37265// rule to create.
37266func (c *RepricingrulesCreateCall) RuleId(ruleId string) *RepricingrulesCreateCall {
37267	c.urlParams_.Set("ruleId", ruleId)
37268	return c
37269}
37270
37271// Fields allows partial responses to be retrieved. See
37272// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37273// for more information.
37274func (c *RepricingrulesCreateCall) Fields(s ...googleapi.Field) *RepricingrulesCreateCall {
37275	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37276	return c
37277}
37278
37279// Context sets the context to be used in this call's Do method. Any
37280// pending HTTP request will be aborted if the provided context is
37281// canceled.
37282func (c *RepricingrulesCreateCall) Context(ctx context.Context) *RepricingrulesCreateCall {
37283	c.ctx_ = ctx
37284	return c
37285}
37286
37287// Header returns an http.Header that can be modified by the caller to
37288// add HTTP headers to the request.
37289func (c *RepricingrulesCreateCall) Header() http.Header {
37290	if c.header_ == nil {
37291		c.header_ = make(http.Header)
37292	}
37293	return c.header_
37294}
37295
37296func (c *RepricingrulesCreateCall) doRequest(alt string) (*http.Response, error) {
37297	reqHeaders := make(http.Header)
37298	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37299	for k, v := range c.header_ {
37300		reqHeaders[k] = v
37301	}
37302	reqHeaders.Set("User-Agent", c.s.userAgent())
37303	var body io.Reader = nil
37304	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
37305	if err != nil {
37306		return nil, err
37307	}
37308	reqHeaders.Set("Content-Type", "application/json")
37309	c.urlParams_.Set("alt", alt)
37310	c.urlParams_.Set("prettyPrint", "false")
37311	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules")
37312	urls += "?" + c.urlParams_.Encode()
37313	req, err := http.NewRequest("POST", urls, body)
37314	if err != nil {
37315		return nil, err
37316	}
37317	req.Header = reqHeaders
37318	googleapi.Expand(req.URL, map[string]string{
37319		"merchantId": strconv.FormatInt(c.merchantId, 10),
37320	})
37321	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37322}
37323
37324// Do executes the "content.repricingrules.create" call.
37325// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
37326// status code is an error. Response headers are in either
37327// *RepricingRule.ServerResponse.Header or (if a response was returned
37328// at all) in error.(*googleapi.Error).Header. Use
37329// googleapi.IsNotModified to check whether the returned error was
37330// because http.StatusNotModified was returned.
37331func (c *RepricingrulesCreateCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
37332	gensupport.SetOptions(c.urlParams_, opts...)
37333	res, err := c.doRequest("json")
37334	if res != nil && res.StatusCode == http.StatusNotModified {
37335		if res.Body != nil {
37336			res.Body.Close()
37337		}
37338		return nil, &googleapi.Error{
37339			Code:   res.StatusCode,
37340			Header: res.Header,
37341		}
37342	}
37343	if err != nil {
37344		return nil, err
37345	}
37346	defer googleapi.CloseBody(res)
37347	if err := googleapi.CheckResponse(res); err != nil {
37348		return nil, err
37349	}
37350	ret := &RepricingRule{
37351		ServerResponse: googleapi.ServerResponse{
37352			Header:         res.Header,
37353			HTTPStatusCode: res.StatusCode,
37354		},
37355	}
37356	target := &ret
37357	if err := gensupport.DecodeResponse(target, res); err != nil {
37358		return nil, err
37359	}
37360	return ret, nil
37361	// {
37362	//   "description": "Creates a repricing rule for your Merchant Center account.",
37363	//   "flatPath": "{merchantId}/repricingrules",
37364	//   "httpMethod": "POST",
37365	//   "id": "content.repricingrules.create",
37366	//   "parameterOrder": [
37367	//     "merchantId"
37368	//   ],
37369	//   "parameters": {
37370	//     "merchantId": {
37371	//       "description": "Required. The id of the merchant who owns the repricing rule.",
37372	//       "format": "int64",
37373	//       "location": "path",
37374	//       "required": true,
37375	//       "type": "string"
37376	//     },
37377	//     "ruleId": {
37378	//       "description": "Required. The id of the rule to create.",
37379	//       "location": "query",
37380	//       "type": "string"
37381	//     }
37382	//   },
37383	//   "path": "{merchantId}/repricingrules",
37384	//   "request": {
37385	//     "$ref": "RepricingRule"
37386	//   },
37387	//   "response": {
37388	//     "$ref": "RepricingRule"
37389	//   },
37390	//   "scopes": [
37391	//     "https://www.googleapis.com/auth/content"
37392	//   ]
37393	// }
37394
37395}
37396
37397// method id "content.repricingrules.delete":
37398
37399type RepricingrulesDeleteCall struct {
37400	s          *APIService
37401	merchantId int64
37402	ruleId     string
37403	urlParams_ gensupport.URLParams
37404	ctx_       context.Context
37405	header_    http.Header
37406}
37407
37408// Delete: Deletes a repricing rule in your Merchant Center account.
37409//
37410// - merchantId: The id of the merchant who owns the repricing rule.
37411// - ruleId: The id of the rule to Delete.
37412func (r *RepricingrulesService) Delete(merchantId int64, ruleId string) *RepricingrulesDeleteCall {
37413	c := &RepricingrulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37414	c.merchantId = merchantId
37415	c.ruleId = ruleId
37416	return c
37417}
37418
37419// Fields allows partial responses to be retrieved. See
37420// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37421// for more information.
37422func (c *RepricingrulesDeleteCall) Fields(s ...googleapi.Field) *RepricingrulesDeleteCall {
37423	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37424	return c
37425}
37426
37427// Context sets the context to be used in this call's Do method. Any
37428// pending HTTP request will be aborted if the provided context is
37429// canceled.
37430func (c *RepricingrulesDeleteCall) Context(ctx context.Context) *RepricingrulesDeleteCall {
37431	c.ctx_ = ctx
37432	return c
37433}
37434
37435// Header returns an http.Header that can be modified by the caller to
37436// add HTTP headers to the request.
37437func (c *RepricingrulesDeleteCall) Header() http.Header {
37438	if c.header_ == nil {
37439		c.header_ = make(http.Header)
37440	}
37441	return c.header_
37442}
37443
37444func (c *RepricingrulesDeleteCall) doRequest(alt string) (*http.Response, error) {
37445	reqHeaders := make(http.Header)
37446	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37447	for k, v := range c.header_ {
37448		reqHeaders[k] = v
37449	}
37450	reqHeaders.Set("User-Agent", c.s.userAgent())
37451	var body io.Reader = nil
37452	c.urlParams_.Set("alt", alt)
37453	c.urlParams_.Set("prettyPrint", "false")
37454	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
37455	urls += "?" + c.urlParams_.Encode()
37456	req, err := http.NewRequest("DELETE", urls, body)
37457	if err != nil {
37458		return nil, err
37459	}
37460	req.Header = reqHeaders
37461	googleapi.Expand(req.URL, map[string]string{
37462		"merchantId": strconv.FormatInt(c.merchantId, 10),
37463		"ruleId":     c.ruleId,
37464	})
37465	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37466}
37467
37468// Do executes the "content.repricingrules.delete" call.
37469func (c *RepricingrulesDeleteCall) Do(opts ...googleapi.CallOption) error {
37470	gensupport.SetOptions(c.urlParams_, opts...)
37471	res, err := c.doRequest("json")
37472	if err != nil {
37473		return err
37474	}
37475	defer googleapi.CloseBody(res)
37476	if err := googleapi.CheckResponse(res); err != nil {
37477		return err
37478	}
37479	return nil
37480	// {
37481	//   "description": "Deletes a repricing rule in your Merchant Center account.",
37482	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
37483	//   "httpMethod": "DELETE",
37484	//   "id": "content.repricingrules.delete",
37485	//   "parameterOrder": [
37486	//     "merchantId",
37487	//     "ruleId"
37488	//   ],
37489	//   "parameters": {
37490	//     "merchantId": {
37491	//       "description": "Required. The id of the merchant who owns the repricing rule.",
37492	//       "format": "int64",
37493	//       "location": "path",
37494	//       "required": true,
37495	//       "type": "string"
37496	//     },
37497	//     "ruleId": {
37498	//       "description": "Required. The id of the rule to Delete.",
37499	//       "location": "path",
37500	//       "required": true,
37501	//       "type": "string"
37502	//     }
37503	//   },
37504	//   "path": "{merchantId}/repricingrules/{ruleId}",
37505	//   "scopes": [
37506	//     "https://www.googleapis.com/auth/content"
37507	//   ]
37508	// }
37509
37510}
37511
37512// method id "content.repricingrules.get":
37513
37514type RepricingrulesGetCall struct {
37515	s            *APIService
37516	merchantId   int64
37517	ruleId       string
37518	urlParams_   gensupport.URLParams
37519	ifNoneMatch_ string
37520	ctx_         context.Context
37521	header_      http.Header
37522}
37523
37524// Get: Retrieves a repricing rule from your Merchant Center account.
37525//
37526// - merchantId: The id of the merchant who owns the repricing rule.
37527// - ruleId: The id of the rule to retrieve.
37528func (r *RepricingrulesService) Get(merchantId int64, ruleId string) *RepricingrulesGetCall {
37529	c := &RepricingrulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37530	c.merchantId = merchantId
37531	c.ruleId = ruleId
37532	return c
37533}
37534
37535// Fields allows partial responses to be retrieved. See
37536// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37537// for more information.
37538func (c *RepricingrulesGetCall) Fields(s ...googleapi.Field) *RepricingrulesGetCall {
37539	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37540	return c
37541}
37542
37543// IfNoneMatch sets the optional parameter which makes the operation
37544// fail if the object's ETag matches the given value. This is useful for
37545// getting updates only after the object has changed since the last
37546// request. Use googleapi.IsNotModified to check whether the response
37547// error from Do is the result of In-None-Match.
37548func (c *RepricingrulesGetCall) IfNoneMatch(entityTag string) *RepricingrulesGetCall {
37549	c.ifNoneMatch_ = entityTag
37550	return c
37551}
37552
37553// Context sets the context to be used in this call's Do method. Any
37554// pending HTTP request will be aborted if the provided context is
37555// canceled.
37556func (c *RepricingrulesGetCall) Context(ctx context.Context) *RepricingrulesGetCall {
37557	c.ctx_ = ctx
37558	return c
37559}
37560
37561// Header returns an http.Header that can be modified by the caller to
37562// add HTTP headers to the request.
37563func (c *RepricingrulesGetCall) Header() http.Header {
37564	if c.header_ == nil {
37565		c.header_ = make(http.Header)
37566	}
37567	return c.header_
37568}
37569
37570func (c *RepricingrulesGetCall) doRequest(alt string) (*http.Response, error) {
37571	reqHeaders := make(http.Header)
37572	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37573	for k, v := range c.header_ {
37574		reqHeaders[k] = v
37575	}
37576	reqHeaders.Set("User-Agent", c.s.userAgent())
37577	if c.ifNoneMatch_ != "" {
37578		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37579	}
37580	var body io.Reader = nil
37581	c.urlParams_.Set("alt", alt)
37582	c.urlParams_.Set("prettyPrint", "false")
37583	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
37584	urls += "?" + c.urlParams_.Encode()
37585	req, err := http.NewRequest("GET", urls, body)
37586	if err != nil {
37587		return nil, err
37588	}
37589	req.Header = reqHeaders
37590	googleapi.Expand(req.URL, map[string]string{
37591		"merchantId": strconv.FormatInt(c.merchantId, 10),
37592		"ruleId":     c.ruleId,
37593	})
37594	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37595}
37596
37597// Do executes the "content.repricingrules.get" call.
37598// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
37599// status code is an error. Response headers are in either
37600// *RepricingRule.ServerResponse.Header or (if a response was returned
37601// at all) in error.(*googleapi.Error).Header. Use
37602// googleapi.IsNotModified to check whether the returned error was
37603// because http.StatusNotModified was returned.
37604func (c *RepricingrulesGetCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
37605	gensupport.SetOptions(c.urlParams_, opts...)
37606	res, err := c.doRequest("json")
37607	if res != nil && res.StatusCode == http.StatusNotModified {
37608		if res.Body != nil {
37609			res.Body.Close()
37610		}
37611		return nil, &googleapi.Error{
37612			Code:   res.StatusCode,
37613			Header: res.Header,
37614		}
37615	}
37616	if err != nil {
37617		return nil, err
37618	}
37619	defer googleapi.CloseBody(res)
37620	if err := googleapi.CheckResponse(res); err != nil {
37621		return nil, err
37622	}
37623	ret := &RepricingRule{
37624		ServerResponse: googleapi.ServerResponse{
37625			Header:         res.Header,
37626			HTTPStatusCode: res.StatusCode,
37627		},
37628	}
37629	target := &ret
37630	if err := gensupport.DecodeResponse(target, res); err != nil {
37631		return nil, err
37632	}
37633	return ret, nil
37634	// {
37635	//   "description": "Retrieves a repricing rule from your Merchant Center account.",
37636	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
37637	//   "httpMethod": "GET",
37638	//   "id": "content.repricingrules.get",
37639	//   "parameterOrder": [
37640	//     "merchantId",
37641	//     "ruleId"
37642	//   ],
37643	//   "parameters": {
37644	//     "merchantId": {
37645	//       "description": "Required. The id of the merchant who owns the repricing rule.",
37646	//       "format": "int64",
37647	//       "location": "path",
37648	//       "required": true,
37649	//       "type": "string"
37650	//     },
37651	//     "ruleId": {
37652	//       "description": "Required. The id of the rule to retrieve.",
37653	//       "location": "path",
37654	//       "required": true,
37655	//       "type": "string"
37656	//     }
37657	//   },
37658	//   "path": "{merchantId}/repricingrules/{ruleId}",
37659	//   "response": {
37660	//     "$ref": "RepricingRule"
37661	//   },
37662	//   "scopes": [
37663	//     "https://www.googleapis.com/auth/content"
37664	//   ]
37665	// }
37666
37667}
37668
37669// method id "content.repricingrules.list":
37670
37671type RepricingrulesListCall struct {
37672	s            *APIService
37673	merchantId   int64
37674	urlParams_   gensupport.URLParams
37675	ifNoneMatch_ string
37676	ctx_         context.Context
37677	header_      http.Header
37678}
37679
37680// List: Lists the repricing rules in your Merchant Center account.
37681//
37682// - merchantId: The id of the merchant who owns the repricing rule.
37683func (r *RepricingrulesService) List(merchantId int64) *RepricingrulesListCall {
37684	c := &RepricingrulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37685	c.merchantId = merchantId
37686	return c
37687}
37688
37689// CountryCode sets the optional parameter "countryCode": CLDR country
37690// code
37691// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
37692// (e.g. "US"), used as a filter on repricing rules.
37693func (c *RepricingrulesListCall) CountryCode(countryCode string) *RepricingrulesListCall {
37694	c.urlParams_.Set("countryCode", countryCode)
37695	return c
37696}
37697
37698// LanguageCode sets the optional parameter "languageCode": The
37699// two-letter ISO 639-1 language code associated with the repricing
37700// rule, used as a filter.
37701func (c *RepricingrulesListCall) LanguageCode(languageCode string) *RepricingrulesListCall {
37702	c.urlParams_.Set("languageCode", languageCode)
37703	return c
37704}
37705
37706// PageSize sets the optional parameter "pageSize": The maximum number
37707// of repricing rules to return. The service may return fewer than this
37708// value. If unspecified, at most 50 rules will be returned. The maximum
37709// value is 1000; values above 1000 will be coerced to 1000.
37710func (c *RepricingrulesListCall) PageSize(pageSize int64) *RepricingrulesListCall {
37711	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
37712	return c
37713}
37714
37715// PageToken sets the optional parameter "pageToken": A page token,
37716// received from a previous `ListRepricingRules` call. Provide this to
37717// retrieve the subsequent page. When paginating, all other parameters
37718// provided to `ListRepricingRules` must match the call that provided
37719// the page token.
37720func (c *RepricingrulesListCall) PageToken(pageToken string) *RepricingrulesListCall {
37721	c.urlParams_.Set("pageToken", pageToken)
37722	return c
37723}
37724
37725// Fields allows partial responses to be retrieved. See
37726// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37727// for more information.
37728func (c *RepricingrulesListCall) Fields(s ...googleapi.Field) *RepricingrulesListCall {
37729	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37730	return c
37731}
37732
37733// IfNoneMatch sets the optional parameter which makes the operation
37734// fail if the object's ETag matches the given value. This is useful for
37735// getting updates only after the object has changed since the last
37736// request. Use googleapi.IsNotModified to check whether the response
37737// error from Do is the result of In-None-Match.
37738func (c *RepricingrulesListCall) IfNoneMatch(entityTag string) *RepricingrulesListCall {
37739	c.ifNoneMatch_ = entityTag
37740	return c
37741}
37742
37743// Context sets the context to be used in this call's Do method. Any
37744// pending HTTP request will be aborted if the provided context is
37745// canceled.
37746func (c *RepricingrulesListCall) Context(ctx context.Context) *RepricingrulesListCall {
37747	c.ctx_ = ctx
37748	return c
37749}
37750
37751// Header returns an http.Header that can be modified by the caller to
37752// add HTTP headers to the request.
37753func (c *RepricingrulesListCall) Header() http.Header {
37754	if c.header_ == nil {
37755		c.header_ = make(http.Header)
37756	}
37757	return c.header_
37758}
37759
37760func (c *RepricingrulesListCall) doRequest(alt string) (*http.Response, error) {
37761	reqHeaders := make(http.Header)
37762	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37763	for k, v := range c.header_ {
37764		reqHeaders[k] = v
37765	}
37766	reqHeaders.Set("User-Agent", c.s.userAgent())
37767	if c.ifNoneMatch_ != "" {
37768		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37769	}
37770	var body io.Reader = nil
37771	c.urlParams_.Set("alt", alt)
37772	c.urlParams_.Set("prettyPrint", "false")
37773	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules")
37774	urls += "?" + c.urlParams_.Encode()
37775	req, err := http.NewRequest("GET", urls, body)
37776	if err != nil {
37777		return nil, err
37778	}
37779	req.Header = reqHeaders
37780	googleapi.Expand(req.URL, map[string]string{
37781		"merchantId": strconv.FormatInt(c.merchantId, 10),
37782	})
37783	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37784}
37785
37786// Do executes the "content.repricingrules.list" call.
37787// Exactly one of *ListRepricingRulesResponse or error will be non-nil.
37788// Any non-2xx status code is an error. Response headers are in either
37789// *ListRepricingRulesResponse.ServerResponse.Header or (if a response
37790// was returned at all) in error.(*googleapi.Error).Header. Use
37791// googleapi.IsNotModified to check whether the returned error was
37792// because http.StatusNotModified was returned.
37793func (c *RepricingrulesListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRulesResponse, error) {
37794	gensupport.SetOptions(c.urlParams_, opts...)
37795	res, err := c.doRequest("json")
37796	if res != nil && res.StatusCode == http.StatusNotModified {
37797		if res.Body != nil {
37798			res.Body.Close()
37799		}
37800		return nil, &googleapi.Error{
37801			Code:   res.StatusCode,
37802			Header: res.Header,
37803		}
37804	}
37805	if err != nil {
37806		return nil, err
37807	}
37808	defer googleapi.CloseBody(res)
37809	if err := googleapi.CheckResponse(res); err != nil {
37810		return nil, err
37811	}
37812	ret := &ListRepricingRulesResponse{
37813		ServerResponse: googleapi.ServerResponse{
37814			Header:         res.Header,
37815			HTTPStatusCode: res.StatusCode,
37816		},
37817	}
37818	target := &ret
37819	if err := gensupport.DecodeResponse(target, res); err != nil {
37820		return nil, err
37821	}
37822	return ret, nil
37823	// {
37824	//   "description": "Lists the repricing rules in your Merchant Center account.",
37825	//   "flatPath": "{merchantId}/repricingrules",
37826	//   "httpMethod": "GET",
37827	//   "id": "content.repricingrules.list",
37828	//   "parameterOrder": [
37829	//     "merchantId"
37830	//   ],
37831	//   "parameters": {
37832	//     "countryCode": {
37833	//       "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.",
37834	//       "location": "query",
37835	//       "type": "string"
37836	//     },
37837	//     "languageCode": {
37838	//       "description": "The two-letter ISO 639-1 language code associated with the repricing rule, used as a filter.",
37839	//       "location": "query",
37840	//       "type": "string"
37841	//     },
37842	//     "merchantId": {
37843	//       "description": "Required. The id of the merchant who owns the repricing rule.",
37844	//       "format": "int64",
37845	//       "location": "path",
37846	//       "required": true,
37847	//       "type": "string"
37848	//     },
37849	//     "pageSize": {
37850	//       "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.",
37851	//       "format": "int32",
37852	//       "location": "query",
37853	//       "type": "integer"
37854	//     },
37855	//     "pageToken": {
37856	//       "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.",
37857	//       "location": "query",
37858	//       "type": "string"
37859	//     }
37860	//   },
37861	//   "path": "{merchantId}/repricingrules",
37862	//   "response": {
37863	//     "$ref": "ListRepricingRulesResponse"
37864	//   },
37865	//   "scopes": [
37866	//     "https://www.googleapis.com/auth/content"
37867	//   ]
37868	// }
37869
37870}
37871
37872// Pages invokes f for each page of results.
37873// A non-nil error returned from f will halt the iteration.
37874// The provided context supersedes any context provided to the Context method.
37875func (c *RepricingrulesListCall) Pages(ctx context.Context, f func(*ListRepricingRulesResponse) error) error {
37876	c.ctx_ = ctx
37877	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
37878	for {
37879		x, err := c.Do()
37880		if err != nil {
37881			return err
37882		}
37883		if err := f(x); err != nil {
37884			return err
37885		}
37886		if x.NextPageToken == "" {
37887			return nil
37888		}
37889		c.PageToken(x.NextPageToken)
37890	}
37891}
37892
37893// method id "content.repricingrules.patch":
37894
37895type RepricingrulesPatchCall struct {
37896	s             *APIService
37897	merchantId    int64
37898	ruleId        string
37899	repricingrule *RepricingRule
37900	urlParams_    gensupport.URLParams
37901	ctx_          context.Context
37902	header_       http.Header
37903}
37904
37905// Patch: Updates a repricing rule in your Merchant Center account. All
37906// mutable fields will be overwritten in each update request. In each
37907// update, you must provide all required mutable fields, or an error
37908// will be thrown. If you do not provide an optional field in the update
37909// request, if that field currently exists, it will be deleted from the
37910// rule.
37911//
37912// - merchantId: The id of the merchant who owns the repricing rule.
37913// - ruleId: The id of the rule to update.
37914func (r *RepricingrulesService) Patch(merchantId int64, ruleId string, repricingrule *RepricingRule) *RepricingrulesPatchCall {
37915	c := &RepricingrulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37916	c.merchantId = merchantId
37917	c.ruleId = ruleId
37918	c.repricingrule = repricingrule
37919	return c
37920}
37921
37922// Fields allows partial responses to be retrieved. See
37923// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37924// for more information.
37925func (c *RepricingrulesPatchCall) Fields(s ...googleapi.Field) *RepricingrulesPatchCall {
37926	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37927	return c
37928}
37929
37930// Context sets the context to be used in this call's Do method. Any
37931// pending HTTP request will be aborted if the provided context is
37932// canceled.
37933func (c *RepricingrulesPatchCall) Context(ctx context.Context) *RepricingrulesPatchCall {
37934	c.ctx_ = ctx
37935	return c
37936}
37937
37938// Header returns an http.Header that can be modified by the caller to
37939// add HTTP headers to the request.
37940func (c *RepricingrulesPatchCall) Header() http.Header {
37941	if c.header_ == nil {
37942		c.header_ = make(http.Header)
37943	}
37944	return c.header_
37945}
37946
37947func (c *RepricingrulesPatchCall) doRequest(alt string) (*http.Response, error) {
37948	reqHeaders := make(http.Header)
37949	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
37950	for k, v := range c.header_ {
37951		reqHeaders[k] = v
37952	}
37953	reqHeaders.Set("User-Agent", c.s.userAgent())
37954	var body io.Reader = nil
37955	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
37956	if err != nil {
37957		return nil, err
37958	}
37959	reqHeaders.Set("Content-Type", "application/json")
37960	c.urlParams_.Set("alt", alt)
37961	c.urlParams_.Set("prettyPrint", "false")
37962	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
37963	urls += "?" + c.urlParams_.Encode()
37964	req, err := http.NewRequest("PATCH", urls, body)
37965	if err != nil {
37966		return nil, err
37967	}
37968	req.Header = reqHeaders
37969	googleapi.Expand(req.URL, map[string]string{
37970		"merchantId": strconv.FormatInt(c.merchantId, 10),
37971		"ruleId":     c.ruleId,
37972	})
37973	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37974}
37975
37976// Do executes the "content.repricingrules.patch" call.
37977// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
37978// status code is an error. Response headers are in either
37979// *RepricingRule.ServerResponse.Header or (if a response was returned
37980// at all) in error.(*googleapi.Error).Header. Use
37981// googleapi.IsNotModified to check whether the returned error was
37982// because http.StatusNotModified was returned.
37983func (c *RepricingrulesPatchCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
37984	gensupport.SetOptions(c.urlParams_, opts...)
37985	res, err := c.doRequest("json")
37986	if res != nil && res.StatusCode == http.StatusNotModified {
37987		if res.Body != nil {
37988			res.Body.Close()
37989		}
37990		return nil, &googleapi.Error{
37991			Code:   res.StatusCode,
37992			Header: res.Header,
37993		}
37994	}
37995	if err != nil {
37996		return nil, err
37997	}
37998	defer googleapi.CloseBody(res)
37999	if err := googleapi.CheckResponse(res); err != nil {
38000		return nil, err
38001	}
38002	ret := &RepricingRule{
38003		ServerResponse: googleapi.ServerResponse{
38004			Header:         res.Header,
38005			HTTPStatusCode: res.StatusCode,
38006		},
38007	}
38008	target := &ret
38009	if err := gensupport.DecodeResponse(target, res); err != nil {
38010		return nil, err
38011	}
38012	return ret, nil
38013	// {
38014	//   "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.",
38015	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
38016	//   "httpMethod": "PATCH",
38017	//   "id": "content.repricingrules.patch",
38018	//   "parameterOrder": [
38019	//     "merchantId",
38020	//     "ruleId"
38021	//   ],
38022	//   "parameters": {
38023	//     "merchantId": {
38024	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38025	//       "format": "int64",
38026	//       "location": "path",
38027	//       "required": true,
38028	//       "type": "string"
38029	//     },
38030	//     "ruleId": {
38031	//       "description": "Required. The id of the rule to update.",
38032	//       "location": "path",
38033	//       "required": true,
38034	//       "type": "string"
38035	//     }
38036	//   },
38037	//   "path": "{merchantId}/repricingrules/{ruleId}",
38038	//   "request": {
38039	//     "$ref": "RepricingRule"
38040	//   },
38041	//   "response": {
38042	//     "$ref": "RepricingRule"
38043	//   },
38044	//   "scopes": [
38045	//     "https://www.googleapis.com/auth/content"
38046	//   ]
38047	// }
38048
38049}
38050
38051// method id "content.repricingrules.repricingreports.list":
38052
38053type RepricingrulesRepricingreportsListCall struct {
38054	s            *APIService
38055	merchantId   int64
38056	ruleId       string
38057	urlParams_   gensupport.URLParams
38058	ifNoneMatch_ string
38059	ctx_         context.Context
38060	header_      http.Header
38061}
38062
38063// List: Lists the metrics report for a given Repricing rule.
38064//
38065// - merchantId: Id of the merchant who owns the Repricing rule.
38066// - ruleId: Id of the Repricing rule.
38067func (r *RepricingrulesRepricingreportsService) List(merchantId int64, ruleId string) *RepricingrulesRepricingreportsListCall {
38068	c := &RepricingrulesRepricingreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38069	c.merchantId = merchantId
38070	c.ruleId = ruleId
38071	return c
38072}
38073
38074// EndDate sets the optional parameter "endDate": Gets Repricing reports
38075// on and before this date in the merchant's timezone. You can only
38076// retrieve data up to 7 days ago (default) or earlier. Format:
38077// YYYY-MM-DD.
38078func (c *RepricingrulesRepricingreportsListCall) EndDate(endDate string) *RepricingrulesRepricingreportsListCall {
38079	c.urlParams_.Set("endDate", endDate)
38080	return c
38081}
38082
38083// PageSize sets the optional parameter "pageSize": Maximum number of
38084// daily reports to return. Each report includes data from a single
38085// 24-hour period. The page size defaults to 50 and values above 1000
38086// are coerced to 1000. This service may return fewer days than this
38087// value, for example, if the time between your start and end date is
38088// less than page size.
38089func (c *RepricingrulesRepricingreportsListCall) PageSize(pageSize int64) *RepricingrulesRepricingreportsListCall {
38090	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
38091	return c
38092}
38093
38094// PageToken sets the optional parameter "pageToken": Token (if
38095// provided) to retrieve the subsequent page. All other parameters must
38096// match the original call that provided the page token.
38097func (c *RepricingrulesRepricingreportsListCall) PageToken(pageToken string) *RepricingrulesRepricingreportsListCall {
38098	c.urlParams_.Set("pageToken", pageToken)
38099	return c
38100}
38101
38102// StartDate sets the optional parameter "startDate": Gets Repricing
38103// reports on and after this date in the merchant's timezone, up to one
38104// year ago. Do not use a start date later than 7 days ago (default).
38105// Format: YYYY-MM-DD.
38106func (c *RepricingrulesRepricingreportsListCall) StartDate(startDate string) *RepricingrulesRepricingreportsListCall {
38107	c.urlParams_.Set("startDate", startDate)
38108	return c
38109}
38110
38111// Fields allows partial responses to be retrieved. See
38112// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38113// for more information.
38114func (c *RepricingrulesRepricingreportsListCall) Fields(s ...googleapi.Field) *RepricingrulesRepricingreportsListCall {
38115	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38116	return c
38117}
38118
38119// IfNoneMatch sets the optional parameter which makes the operation
38120// fail if the object's ETag matches the given value. This is useful for
38121// getting updates only after the object has changed since the last
38122// request. Use googleapi.IsNotModified to check whether the response
38123// error from Do is the result of In-None-Match.
38124func (c *RepricingrulesRepricingreportsListCall) IfNoneMatch(entityTag string) *RepricingrulesRepricingreportsListCall {
38125	c.ifNoneMatch_ = entityTag
38126	return c
38127}
38128
38129// Context sets the context to be used in this call's Do method. Any
38130// pending HTTP request will be aborted if the provided context is
38131// canceled.
38132func (c *RepricingrulesRepricingreportsListCall) Context(ctx context.Context) *RepricingrulesRepricingreportsListCall {
38133	c.ctx_ = ctx
38134	return c
38135}
38136
38137// Header returns an http.Header that can be modified by the caller to
38138// add HTTP headers to the request.
38139func (c *RepricingrulesRepricingreportsListCall) Header() http.Header {
38140	if c.header_ == nil {
38141		c.header_ = make(http.Header)
38142	}
38143	return c.header_
38144}
38145
38146func (c *RepricingrulesRepricingreportsListCall) doRequest(alt string) (*http.Response, error) {
38147	reqHeaders := make(http.Header)
38148	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38149	for k, v := range c.header_ {
38150		reqHeaders[k] = v
38151	}
38152	reqHeaders.Set("User-Agent", c.s.userAgent())
38153	if c.ifNoneMatch_ != "" {
38154		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38155	}
38156	var body io.Reader = nil
38157	c.urlParams_.Set("alt", alt)
38158	c.urlParams_.Set("prettyPrint", "false")
38159	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}/repricingreports")
38160	urls += "?" + c.urlParams_.Encode()
38161	req, err := http.NewRequest("GET", urls, body)
38162	if err != nil {
38163		return nil, err
38164	}
38165	req.Header = reqHeaders
38166	googleapi.Expand(req.URL, map[string]string{
38167		"merchantId": strconv.FormatInt(c.merchantId, 10),
38168		"ruleId":     c.ruleId,
38169	})
38170	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38171}
38172
38173// Do executes the "content.repricingrules.repricingreports.list" call.
38174// Exactly one of *ListRepricingRuleReportsResponse or error will be
38175// non-nil. Any non-2xx status code is an error. Response headers are in
38176// either *ListRepricingRuleReportsResponse.ServerResponse.Header or (if
38177// a response was returned at all) in error.(*googleapi.Error).Header.
38178// Use googleapi.IsNotModified to check whether the returned error was
38179// because http.StatusNotModified was returned.
38180func (c *RepricingrulesRepricingreportsListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRuleReportsResponse, error) {
38181	gensupport.SetOptions(c.urlParams_, opts...)
38182	res, err := c.doRequest("json")
38183	if res != nil && res.StatusCode == http.StatusNotModified {
38184		if res.Body != nil {
38185			res.Body.Close()
38186		}
38187		return nil, &googleapi.Error{
38188			Code:   res.StatusCode,
38189			Header: res.Header,
38190		}
38191	}
38192	if err != nil {
38193		return nil, err
38194	}
38195	defer googleapi.CloseBody(res)
38196	if err := googleapi.CheckResponse(res); err != nil {
38197		return nil, err
38198	}
38199	ret := &ListRepricingRuleReportsResponse{
38200		ServerResponse: googleapi.ServerResponse{
38201			Header:         res.Header,
38202			HTTPStatusCode: res.StatusCode,
38203		},
38204	}
38205	target := &ret
38206	if err := gensupport.DecodeResponse(target, res); err != nil {
38207		return nil, err
38208	}
38209	return ret, nil
38210	// {
38211	//   "description": "Lists the metrics report for a given Repricing rule.",
38212	//   "flatPath": "{merchantId}/repricingrules/{ruleId}/repricingreports",
38213	//   "httpMethod": "GET",
38214	//   "id": "content.repricingrules.repricingreports.list",
38215	//   "parameterOrder": [
38216	//     "merchantId",
38217	//     "ruleId"
38218	//   ],
38219	//   "parameters": {
38220	//     "endDate": {
38221	//       "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.",
38222	//       "location": "query",
38223	//       "type": "string"
38224	//     },
38225	//     "merchantId": {
38226	//       "description": "Required. Id of the merchant who owns the Repricing rule.",
38227	//       "format": "int64",
38228	//       "location": "path",
38229	//       "required": true,
38230	//       "type": "string"
38231	//     },
38232	//     "pageSize": {
38233	//       "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.",
38234	//       "format": "int32",
38235	//       "location": "query",
38236	//       "type": "integer"
38237	//     },
38238	//     "pageToken": {
38239	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
38240	//       "location": "query",
38241	//       "type": "string"
38242	//     },
38243	//     "ruleId": {
38244	//       "description": "Required. Id of the Repricing rule.",
38245	//       "location": "path",
38246	//       "required": true,
38247	//       "type": "string"
38248	//     },
38249	//     "startDate": {
38250	//       "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.",
38251	//       "location": "query",
38252	//       "type": "string"
38253	//     }
38254	//   },
38255	//   "path": "{merchantId}/repricingrules/{ruleId}/repricingreports",
38256	//   "response": {
38257	//     "$ref": "ListRepricingRuleReportsResponse"
38258	//   },
38259	//   "scopes": [
38260	//     "https://www.googleapis.com/auth/content"
38261	//   ]
38262	// }
38263
38264}
38265
38266// Pages invokes f for each page of results.
38267// A non-nil error returned from f will halt the iteration.
38268// The provided context supersedes any context provided to the Context method.
38269func (c *RepricingrulesRepricingreportsListCall) Pages(ctx context.Context, f func(*ListRepricingRuleReportsResponse) error) error {
38270	c.ctx_ = ctx
38271	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
38272	for {
38273		x, err := c.Do()
38274		if err != nil {
38275			return err
38276		}
38277		if err := f(x); err != nil {
38278			return err
38279		}
38280		if x.NextPageToken == "" {
38281			return nil
38282		}
38283		c.PageToken(x.NextPageToken)
38284	}
38285}
38286
38287// method id "content.returnaddress.custombatch":
38288
38289type ReturnaddressCustombatchCall struct {
38290	s                               *APIService
38291	returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest
38292	urlParams_                      gensupport.URLParams
38293	ctx_                            context.Context
38294	header_                         http.Header
38295}
38296
38297// Custombatch: Batches multiple return address related calls in a
38298// single request.
38299func (r *ReturnaddressService) Custombatch(returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest) *ReturnaddressCustombatchCall {
38300	c := &ReturnaddressCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38301	c.returnaddresscustombatchrequest = returnaddresscustombatchrequest
38302	return c
38303}
38304
38305// Fields allows partial responses to be retrieved. See
38306// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38307// for more information.
38308func (c *ReturnaddressCustombatchCall) Fields(s ...googleapi.Field) *ReturnaddressCustombatchCall {
38309	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38310	return c
38311}
38312
38313// Context sets the context to be used in this call's Do method. Any
38314// pending HTTP request will be aborted if the provided context is
38315// canceled.
38316func (c *ReturnaddressCustombatchCall) Context(ctx context.Context) *ReturnaddressCustombatchCall {
38317	c.ctx_ = ctx
38318	return c
38319}
38320
38321// Header returns an http.Header that can be modified by the caller to
38322// add HTTP headers to the request.
38323func (c *ReturnaddressCustombatchCall) Header() http.Header {
38324	if c.header_ == nil {
38325		c.header_ = make(http.Header)
38326	}
38327	return c.header_
38328}
38329
38330func (c *ReturnaddressCustombatchCall) doRequest(alt string) (*http.Response, error) {
38331	reqHeaders := make(http.Header)
38332	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38333	for k, v := range c.header_ {
38334		reqHeaders[k] = v
38335	}
38336	reqHeaders.Set("User-Agent", c.s.userAgent())
38337	var body io.Reader = nil
38338	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddresscustombatchrequest)
38339	if err != nil {
38340		return nil, err
38341	}
38342	reqHeaders.Set("Content-Type", "application/json")
38343	c.urlParams_.Set("alt", alt)
38344	c.urlParams_.Set("prettyPrint", "false")
38345	urls := googleapi.ResolveRelative(c.s.BasePath, "returnaddress/batch")
38346	urls += "?" + c.urlParams_.Encode()
38347	req, err := http.NewRequest("POST", urls, body)
38348	if err != nil {
38349		return nil, err
38350	}
38351	req.Header = reqHeaders
38352	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38353}
38354
38355// Do executes the "content.returnaddress.custombatch" call.
38356// Exactly one of *ReturnaddressCustomBatchResponse or error will be
38357// non-nil. Any non-2xx status code is an error. Response headers are in
38358// either *ReturnaddressCustomBatchResponse.ServerResponse.Header or (if
38359// a response was returned at all) in error.(*googleapi.Error).Header.
38360// Use googleapi.IsNotModified to check whether the returned error was
38361// because http.StatusNotModified was returned.
38362func (c *ReturnaddressCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnaddressCustomBatchResponse, error) {
38363	gensupport.SetOptions(c.urlParams_, opts...)
38364	res, err := c.doRequest("json")
38365	if res != nil && res.StatusCode == http.StatusNotModified {
38366		if res.Body != nil {
38367			res.Body.Close()
38368		}
38369		return nil, &googleapi.Error{
38370			Code:   res.StatusCode,
38371			Header: res.Header,
38372		}
38373	}
38374	if err != nil {
38375		return nil, err
38376	}
38377	defer googleapi.CloseBody(res)
38378	if err := googleapi.CheckResponse(res); err != nil {
38379		return nil, err
38380	}
38381	ret := &ReturnaddressCustomBatchResponse{
38382		ServerResponse: googleapi.ServerResponse{
38383			Header:         res.Header,
38384			HTTPStatusCode: res.StatusCode,
38385		},
38386	}
38387	target := &ret
38388	if err := gensupport.DecodeResponse(target, res); err != nil {
38389		return nil, err
38390	}
38391	return ret, nil
38392	// {
38393	//   "description": "Batches multiple return address related calls in a single request.",
38394	//   "flatPath": "returnaddress/batch",
38395	//   "httpMethod": "POST",
38396	//   "id": "content.returnaddress.custombatch",
38397	//   "parameterOrder": [],
38398	//   "parameters": {},
38399	//   "path": "returnaddress/batch",
38400	//   "request": {
38401	//     "$ref": "ReturnaddressCustomBatchRequest"
38402	//   },
38403	//   "response": {
38404	//     "$ref": "ReturnaddressCustomBatchResponse"
38405	//   },
38406	//   "scopes": [
38407	//     "https://www.googleapis.com/auth/content"
38408	//   ]
38409	// }
38410
38411}
38412
38413// method id "content.returnaddress.delete":
38414
38415type ReturnaddressDeleteCall struct {
38416	s               *APIService
38417	merchantId      uint64
38418	returnAddressId string
38419	urlParams_      gensupport.URLParams
38420	ctx_            context.Context
38421	header_         http.Header
38422}
38423
38424// Delete: Deletes a return address for the given Merchant Center
38425// account.
38426//
38427// - merchantId: The Merchant Center account from which to delete the
38428//   given return address.
38429// - returnAddressId: Return address ID generated by Google.
38430func (r *ReturnaddressService) Delete(merchantId uint64, returnAddressId string) *ReturnaddressDeleteCall {
38431	c := &ReturnaddressDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38432	c.merchantId = merchantId
38433	c.returnAddressId = returnAddressId
38434	return c
38435}
38436
38437// Fields allows partial responses to be retrieved. See
38438// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38439// for more information.
38440func (c *ReturnaddressDeleteCall) Fields(s ...googleapi.Field) *ReturnaddressDeleteCall {
38441	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38442	return c
38443}
38444
38445// Context sets the context to be used in this call's Do method. Any
38446// pending HTTP request will be aborted if the provided context is
38447// canceled.
38448func (c *ReturnaddressDeleteCall) Context(ctx context.Context) *ReturnaddressDeleteCall {
38449	c.ctx_ = ctx
38450	return c
38451}
38452
38453// Header returns an http.Header that can be modified by the caller to
38454// add HTTP headers to the request.
38455func (c *ReturnaddressDeleteCall) Header() http.Header {
38456	if c.header_ == nil {
38457		c.header_ = make(http.Header)
38458	}
38459	return c.header_
38460}
38461
38462func (c *ReturnaddressDeleteCall) doRequest(alt string) (*http.Response, error) {
38463	reqHeaders := make(http.Header)
38464	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38465	for k, v := range c.header_ {
38466		reqHeaders[k] = v
38467	}
38468	reqHeaders.Set("User-Agent", c.s.userAgent())
38469	var body io.Reader = nil
38470	c.urlParams_.Set("alt", alt)
38471	c.urlParams_.Set("prettyPrint", "false")
38472	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
38473	urls += "?" + c.urlParams_.Encode()
38474	req, err := http.NewRequest("DELETE", urls, body)
38475	if err != nil {
38476		return nil, err
38477	}
38478	req.Header = reqHeaders
38479	googleapi.Expand(req.URL, map[string]string{
38480		"merchantId":      strconv.FormatUint(c.merchantId, 10),
38481		"returnAddressId": c.returnAddressId,
38482	})
38483	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38484}
38485
38486// Do executes the "content.returnaddress.delete" call.
38487func (c *ReturnaddressDeleteCall) Do(opts ...googleapi.CallOption) error {
38488	gensupport.SetOptions(c.urlParams_, opts...)
38489	res, err := c.doRequest("json")
38490	if err != nil {
38491		return err
38492	}
38493	defer googleapi.CloseBody(res)
38494	if err := googleapi.CheckResponse(res); err != nil {
38495		return err
38496	}
38497	return nil
38498	// {
38499	//   "description": "Deletes a return address for the given Merchant Center account.",
38500	//   "flatPath": "{merchantId}/returnaddress/{returnAddressId}",
38501	//   "httpMethod": "DELETE",
38502	//   "id": "content.returnaddress.delete",
38503	//   "parameterOrder": [
38504	//     "merchantId",
38505	//     "returnAddressId"
38506	//   ],
38507	//   "parameters": {
38508	//     "merchantId": {
38509	//       "description": "The Merchant Center account from which to delete the given return address.",
38510	//       "format": "uint64",
38511	//       "location": "path",
38512	//       "required": true,
38513	//       "type": "string"
38514	//     },
38515	//     "returnAddressId": {
38516	//       "description": "Return address ID generated by Google.",
38517	//       "location": "path",
38518	//       "required": true,
38519	//       "type": "string"
38520	//     }
38521	//   },
38522	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
38523	//   "scopes": [
38524	//     "https://www.googleapis.com/auth/content"
38525	//   ]
38526	// }
38527
38528}
38529
38530// method id "content.returnaddress.get":
38531
38532type ReturnaddressGetCall struct {
38533	s               *APIService
38534	merchantId      uint64
38535	returnAddressId string
38536	urlParams_      gensupport.URLParams
38537	ifNoneMatch_    string
38538	ctx_            context.Context
38539	header_         http.Header
38540}
38541
38542// Get: Gets a return address of the Merchant Center account.
38543//
38544// - merchantId: The Merchant Center account to get a return address
38545//   for.
38546// - returnAddressId: Return address ID generated by Google.
38547func (r *ReturnaddressService) Get(merchantId uint64, returnAddressId string) *ReturnaddressGetCall {
38548	c := &ReturnaddressGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38549	c.merchantId = merchantId
38550	c.returnAddressId = returnAddressId
38551	return c
38552}
38553
38554// Fields allows partial responses to be retrieved. See
38555// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38556// for more information.
38557func (c *ReturnaddressGetCall) Fields(s ...googleapi.Field) *ReturnaddressGetCall {
38558	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38559	return c
38560}
38561
38562// IfNoneMatch sets the optional parameter which makes the operation
38563// fail if the object's ETag matches the given value. This is useful for
38564// getting updates only after the object has changed since the last
38565// request. Use googleapi.IsNotModified to check whether the response
38566// error from Do is the result of In-None-Match.
38567func (c *ReturnaddressGetCall) IfNoneMatch(entityTag string) *ReturnaddressGetCall {
38568	c.ifNoneMatch_ = entityTag
38569	return c
38570}
38571
38572// Context sets the context to be used in this call's Do method. Any
38573// pending HTTP request will be aborted if the provided context is
38574// canceled.
38575func (c *ReturnaddressGetCall) Context(ctx context.Context) *ReturnaddressGetCall {
38576	c.ctx_ = ctx
38577	return c
38578}
38579
38580// Header returns an http.Header that can be modified by the caller to
38581// add HTTP headers to the request.
38582func (c *ReturnaddressGetCall) Header() http.Header {
38583	if c.header_ == nil {
38584		c.header_ = make(http.Header)
38585	}
38586	return c.header_
38587}
38588
38589func (c *ReturnaddressGetCall) doRequest(alt string) (*http.Response, error) {
38590	reqHeaders := make(http.Header)
38591	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38592	for k, v := range c.header_ {
38593		reqHeaders[k] = v
38594	}
38595	reqHeaders.Set("User-Agent", c.s.userAgent())
38596	if c.ifNoneMatch_ != "" {
38597		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38598	}
38599	var body io.Reader = nil
38600	c.urlParams_.Set("alt", alt)
38601	c.urlParams_.Set("prettyPrint", "false")
38602	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
38603	urls += "?" + c.urlParams_.Encode()
38604	req, err := http.NewRequest("GET", urls, body)
38605	if err != nil {
38606		return nil, err
38607	}
38608	req.Header = reqHeaders
38609	googleapi.Expand(req.URL, map[string]string{
38610		"merchantId":      strconv.FormatUint(c.merchantId, 10),
38611		"returnAddressId": c.returnAddressId,
38612	})
38613	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38614}
38615
38616// Do executes the "content.returnaddress.get" call.
38617// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
38618// status code is an error. Response headers are in either
38619// *ReturnAddress.ServerResponse.Header or (if a response was returned
38620// at all) in error.(*googleapi.Error).Header. Use
38621// googleapi.IsNotModified to check whether the returned error was
38622// because http.StatusNotModified was returned.
38623func (c *ReturnaddressGetCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
38624	gensupport.SetOptions(c.urlParams_, opts...)
38625	res, err := c.doRequest("json")
38626	if res != nil && res.StatusCode == http.StatusNotModified {
38627		if res.Body != nil {
38628			res.Body.Close()
38629		}
38630		return nil, &googleapi.Error{
38631			Code:   res.StatusCode,
38632			Header: res.Header,
38633		}
38634	}
38635	if err != nil {
38636		return nil, err
38637	}
38638	defer googleapi.CloseBody(res)
38639	if err := googleapi.CheckResponse(res); err != nil {
38640		return nil, err
38641	}
38642	ret := &ReturnAddress{
38643		ServerResponse: googleapi.ServerResponse{
38644			Header:         res.Header,
38645			HTTPStatusCode: res.StatusCode,
38646		},
38647	}
38648	target := &ret
38649	if err := gensupport.DecodeResponse(target, res); err != nil {
38650		return nil, err
38651	}
38652	return ret, nil
38653	// {
38654	//   "description": "Gets a return address of the Merchant Center account.",
38655	//   "flatPath": "{merchantId}/returnaddress/{returnAddressId}",
38656	//   "httpMethod": "GET",
38657	//   "id": "content.returnaddress.get",
38658	//   "parameterOrder": [
38659	//     "merchantId",
38660	//     "returnAddressId"
38661	//   ],
38662	//   "parameters": {
38663	//     "merchantId": {
38664	//       "description": "The Merchant Center account to get a return address for.",
38665	//       "format": "uint64",
38666	//       "location": "path",
38667	//       "required": true,
38668	//       "type": "string"
38669	//     },
38670	//     "returnAddressId": {
38671	//       "description": "Return address ID generated by Google.",
38672	//       "location": "path",
38673	//       "required": true,
38674	//       "type": "string"
38675	//     }
38676	//   },
38677	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
38678	//   "response": {
38679	//     "$ref": "ReturnAddress"
38680	//   },
38681	//   "scopes": [
38682	//     "https://www.googleapis.com/auth/content"
38683	//   ]
38684	// }
38685
38686}
38687
38688// method id "content.returnaddress.insert":
38689
38690type ReturnaddressInsertCall struct {
38691	s             *APIService
38692	merchantId    uint64
38693	returnaddress *ReturnAddress
38694	urlParams_    gensupport.URLParams
38695	ctx_          context.Context
38696	header_       http.Header
38697}
38698
38699// Insert: Inserts a return address for the Merchant Center account.
38700//
38701// - merchantId: The Merchant Center account to insert a return address
38702//   for.
38703func (r *ReturnaddressService) Insert(merchantId uint64, returnaddress *ReturnAddress) *ReturnaddressInsertCall {
38704	c := &ReturnaddressInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38705	c.merchantId = merchantId
38706	c.returnaddress = returnaddress
38707	return c
38708}
38709
38710// Fields allows partial responses to be retrieved. See
38711// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38712// for more information.
38713func (c *ReturnaddressInsertCall) Fields(s ...googleapi.Field) *ReturnaddressInsertCall {
38714	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38715	return c
38716}
38717
38718// Context sets the context to be used in this call's Do method. Any
38719// pending HTTP request will be aborted if the provided context is
38720// canceled.
38721func (c *ReturnaddressInsertCall) Context(ctx context.Context) *ReturnaddressInsertCall {
38722	c.ctx_ = ctx
38723	return c
38724}
38725
38726// Header returns an http.Header that can be modified by the caller to
38727// add HTTP headers to the request.
38728func (c *ReturnaddressInsertCall) Header() http.Header {
38729	if c.header_ == nil {
38730		c.header_ = make(http.Header)
38731	}
38732	return c.header_
38733}
38734
38735func (c *ReturnaddressInsertCall) doRequest(alt string) (*http.Response, error) {
38736	reqHeaders := make(http.Header)
38737	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38738	for k, v := range c.header_ {
38739		reqHeaders[k] = v
38740	}
38741	reqHeaders.Set("User-Agent", c.s.userAgent())
38742	var body io.Reader = nil
38743	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddress)
38744	if err != nil {
38745		return nil, err
38746	}
38747	reqHeaders.Set("Content-Type", "application/json")
38748	c.urlParams_.Set("alt", alt)
38749	c.urlParams_.Set("prettyPrint", "false")
38750	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
38751	urls += "?" + c.urlParams_.Encode()
38752	req, err := http.NewRequest("POST", urls, body)
38753	if err != nil {
38754		return nil, err
38755	}
38756	req.Header = reqHeaders
38757	googleapi.Expand(req.URL, map[string]string{
38758		"merchantId": strconv.FormatUint(c.merchantId, 10),
38759	})
38760	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38761}
38762
38763// Do executes the "content.returnaddress.insert" call.
38764// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
38765// status code is an error. Response headers are in either
38766// *ReturnAddress.ServerResponse.Header or (if a response was returned
38767// at all) in error.(*googleapi.Error).Header. Use
38768// googleapi.IsNotModified to check whether the returned error was
38769// because http.StatusNotModified was returned.
38770func (c *ReturnaddressInsertCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
38771	gensupport.SetOptions(c.urlParams_, opts...)
38772	res, err := c.doRequest("json")
38773	if res != nil && res.StatusCode == http.StatusNotModified {
38774		if res.Body != nil {
38775			res.Body.Close()
38776		}
38777		return nil, &googleapi.Error{
38778			Code:   res.StatusCode,
38779			Header: res.Header,
38780		}
38781	}
38782	if err != nil {
38783		return nil, err
38784	}
38785	defer googleapi.CloseBody(res)
38786	if err := googleapi.CheckResponse(res); err != nil {
38787		return nil, err
38788	}
38789	ret := &ReturnAddress{
38790		ServerResponse: googleapi.ServerResponse{
38791			Header:         res.Header,
38792			HTTPStatusCode: res.StatusCode,
38793		},
38794	}
38795	target := &ret
38796	if err := gensupport.DecodeResponse(target, res); err != nil {
38797		return nil, err
38798	}
38799	return ret, nil
38800	// {
38801	//   "description": "Inserts a return address for the Merchant Center account.",
38802	//   "flatPath": "{merchantId}/returnaddress",
38803	//   "httpMethod": "POST",
38804	//   "id": "content.returnaddress.insert",
38805	//   "parameterOrder": [
38806	//     "merchantId"
38807	//   ],
38808	//   "parameters": {
38809	//     "merchantId": {
38810	//       "description": "The Merchant Center account to insert a return address for.",
38811	//       "format": "uint64",
38812	//       "location": "path",
38813	//       "required": true,
38814	//       "type": "string"
38815	//     }
38816	//   },
38817	//   "path": "{merchantId}/returnaddress",
38818	//   "request": {
38819	//     "$ref": "ReturnAddress"
38820	//   },
38821	//   "response": {
38822	//     "$ref": "ReturnAddress"
38823	//   },
38824	//   "scopes": [
38825	//     "https://www.googleapis.com/auth/content"
38826	//   ]
38827	// }
38828
38829}
38830
38831// method id "content.returnaddress.list":
38832
38833type ReturnaddressListCall struct {
38834	s            *APIService
38835	merchantId   uint64
38836	urlParams_   gensupport.URLParams
38837	ifNoneMatch_ string
38838	ctx_         context.Context
38839	header_      http.Header
38840}
38841
38842// List: Lists the return addresses of the Merchant Center account.
38843//
38844// - merchantId: The Merchant Center account to list return addresses
38845//   for.
38846func (r *ReturnaddressService) List(merchantId uint64) *ReturnaddressListCall {
38847	c := &ReturnaddressListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38848	c.merchantId = merchantId
38849	return c
38850}
38851
38852// Country sets the optional parameter "country": List only return
38853// addresses applicable to the given country of sale. When omitted, all
38854// return addresses are listed.
38855func (c *ReturnaddressListCall) Country(country string) *ReturnaddressListCall {
38856	c.urlParams_.Set("country", country)
38857	return c
38858}
38859
38860// MaxResults sets the optional parameter "maxResults": The maximum
38861// number of addresses in the response, used for paging.
38862func (c *ReturnaddressListCall) MaxResults(maxResults int64) *ReturnaddressListCall {
38863	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
38864	return c
38865}
38866
38867// PageToken sets the optional parameter "pageToken": The token returned
38868// by the previous request.
38869func (c *ReturnaddressListCall) PageToken(pageToken string) *ReturnaddressListCall {
38870	c.urlParams_.Set("pageToken", pageToken)
38871	return c
38872}
38873
38874// Fields allows partial responses to be retrieved. See
38875// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38876// for more information.
38877func (c *ReturnaddressListCall) Fields(s ...googleapi.Field) *ReturnaddressListCall {
38878	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38879	return c
38880}
38881
38882// IfNoneMatch sets the optional parameter which makes the operation
38883// fail if the object's ETag matches the given value. This is useful for
38884// getting updates only after the object has changed since the last
38885// request. Use googleapi.IsNotModified to check whether the response
38886// error from Do is the result of In-None-Match.
38887func (c *ReturnaddressListCall) IfNoneMatch(entityTag string) *ReturnaddressListCall {
38888	c.ifNoneMatch_ = entityTag
38889	return c
38890}
38891
38892// Context sets the context to be used in this call's Do method. Any
38893// pending HTTP request will be aborted if the provided context is
38894// canceled.
38895func (c *ReturnaddressListCall) Context(ctx context.Context) *ReturnaddressListCall {
38896	c.ctx_ = ctx
38897	return c
38898}
38899
38900// Header returns an http.Header that can be modified by the caller to
38901// add HTTP headers to the request.
38902func (c *ReturnaddressListCall) Header() http.Header {
38903	if c.header_ == nil {
38904		c.header_ = make(http.Header)
38905	}
38906	return c.header_
38907}
38908
38909func (c *ReturnaddressListCall) doRequest(alt string) (*http.Response, error) {
38910	reqHeaders := make(http.Header)
38911	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
38912	for k, v := range c.header_ {
38913		reqHeaders[k] = v
38914	}
38915	reqHeaders.Set("User-Agent", c.s.userAgent())
38916	if c.ifNoneMatch_ != "" {
38917		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38918	}
38919	var body io.Reader = nil
38920	c.urlParams_.Set("alt", alt)
38921	c.urlParams_.Set("prettyPrint", "false")
38922	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
38923	urls += "?" + c.urlParams_.Encode()
38924	req, err := http.NewRequest("GET", urls, body)
38925	if err != nil {
38926		return nil, err
38927	}
38928	req.Header = reqHeaders
38929	googleapi.Expand(req.URL, map[string]string{
38930		"merchantId": strconv.FormatUint(c.merchantId, 10),
38931	})
38932	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38933}
38934
38935// Do executes the "content.returnaddress.list" call.
38936// Exactly one of *ReturnaddressListResponse or error will be non-nil.
38937// Any non-2xx status code is an error. Response headers are in either
38938// *ReturnaddressListResponse.ServerResponse.Header or (if a response
38939// was returned at all) in error.(*googleapi.Error).Header. Use
38940// googleapi.IsNotModified to check whether the returned error was
38941// because http.StatusNotModified was returned.
38942func (c *ReturnaddressListCall) Do(opts ...googleapi.CallOption) (*ReturnaddressListResponse, error) {
38943	gensupport.SetOptions(c.urlParams_, opts...)
38944	res, err := c.doRequest("json")
38945	if res != nil && res.StatusCode == http.StatusNotModified {
38946		if res.Body != nil {
38947			res.Body.Close()
38948		}
38949		return nil, &googleapi.Error{
38950			Code:   res.StatusCode,
38951			Header: res.Header,
38952		}
38953	}
38954	if err != nil {
38955		return nil, err
38956	}
38957	defer googleapi.CloseBody(res)
38958	if err := googleapi.CheckResponse(res); err != nil {
38959		return nil, err
38960	}
38961	ret := &ReturnaddressListResponse{
38962		ServerResponse: googleapi.ServerResponse{
38963			Header:         res.Header,
38964			HTTPStatusCode: res.StatusCode,
38965		},
38966	}
38967	target := &ret
38968	if err := gensupport.DecodeResponse(target, res); err != nil {
38969		return nil, err
38970	}
38971	return ret, nil
38972	// {
38973	//   "description": "Lists the return addresses of the Merchant Center account.",
38974	//   "flatPath": "{merchantId}/returnaddress",
38975	//   "httpMethod": "GET",
38976	//   "id": "content.returnaddress.list",
38977	//   "parameterOrder": [
38978	//     "merchantId"
38979	//   ],
38980	//   "parameters": {
38981	//     "country": {
38982	//       "description": "List only return addresses applicable to the given country of sale. When omitted, all return addresses are listed.",
38983	//       "location": "query",
38984	//       "type": "string"
38985	//     },
38986	//     "maxResults": {
38987	//       "description": "The maximum number of addresses in the response, used for paging.",
38988	//       "format": "uint32",
38989	//       "location": "query",
38990	//       "type": "integer"
38991	//     },
38992	//     "merchantId": {
38993	//       "description": "The Merchant Center account to list return addresses for.",
38994	//       "format": "uint64",
38995	//       "location": "path",
38996	//       "required": true,
38997	//       "type": "string"
38998	//     },
38999	//     "pageToken": {
39000	//       "description": "The token returned by the previous request.",
39001	//       "location": "query",
39002	//       "type": "string"
39003	//     }
39004	//   },
39005	//   "path": "{merchantId}/returnaddress",
39006	//   "response": {
39007	//     "$ref": "ReturnaddressListResponse"
39008	//   },
39009	//   "scopes": [
39010	//     "https://www.googleapis.com/auth/content"
39011	//   ]
39012	// }
39013
39014}
39015
39016// Pages invokes f for each page of results.
39017// A non-nil error returned from f will halt the iteration.
39018// The provided context supersedes any context provided to the Context method.
39019func (c *ReturnaddressListCall) Pages(ctx context.Context, f func(*ReturnaddressListResponse) error) error {
39020	c.ctx_ = ctx
39021	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
39022	for {
39023		x, err := c.Do()
39024		if err != nil {
39025			return err
39026		}
39027		if err := f(x); err != nil {
39028			return err
39029		}
39030		if x.NextPageToken == "" {
39031			return nil
39032		}
39033		c.PageToken(x.NextPageToken)
39034	}
39035}
39036
39037// method id "content.returnpolicy.custombatch":
39038
39039type ReturnpolicyCustombatchCall struct {
39040	s                              *APIService
39041	returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest
39042	urlParams_                     gensupport.URLParams
39043	ctx_                           context.Context
39044	header_                        http.Header
39045}
39046
39047// Custombatch: Batches multiple return policy related calls in a single
39048// request.
39049func (r *ReturnpolicyService) Custombatch(returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest) *ReturnpolicyCustombatchCall {
39050	c := &ReturnpolicyCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39051	c.returnpolicycustombatchrequest = returnpolicycustombatchrequest
39052	return c
39053}
39054
39055// Fields allows partial responses to be retrieved. See
39056// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39057// for more information.
39058func (c *ReturnpolicyCustombatchCall) Fields(s ...googleapi.Field) *ReturnpolicyCustombatchCall {
39059	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39060	return c
39061}
39062
39063// Context sets the context to be used in this call's Do method. Any
39064// pending HTTP request will be aborted if the provided context is
39065// canceled.
39066func (c *ReturnpolicyCustombatchCall) Context(ctx context.Context) *ReturnpolicyCustombatchCall {
39067	c.ctx_ = ctx
39068	return c
39069}
39070
39071// Header returns an http.Header that can be modified by the caller to
39072// add HTTP headers to the request.
39073func (c *ReturnpolicyCustombatchCall) Header() http.Header {
39074	if c.header_ == nil {
39075		c.header_ = make(http.Header)
39076	}
39077	return c.header_
39078}
39079
39080func (c *ReturnpolicyCustombatchCall) doRequest(alt string) (*http.Response, error) {
39081	reqHeaders := make(http.Header)
39082	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39083	for k, v := range c.header_ {
39084		reqHeaders[k] = v
39085	}
39086	reqHeaders.Set("User-Agent", c.s.userAgent())
39087	var body io.Reader = nil
39088	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicycustombatchrequest)
39089	if err != nil {
39090		return nil, err
39091	}
39092	reqHeaders.Set("Content-Type", "application/json")
39093	c.urlParams_.Set("alt", alt)
39094	c.urlParams_.Set("prettyPrint", "false")
39095	urls := googleapi.ResolveRelative(c.s.BasePath, "returnpolicy/batch")
39096	urls += "?" + c.urlParams_.Encode()
39097	req, err := http.NewRequest("POST", urls, body)
39098	if err != nil {
39099		return nil, err
39100	}
39101	req.Header = reqHeaders
39102	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39103}
39104
39105// Do executes the "content.returnpolicy.custombatch" call.
39106// Exactly one of *ReturnpolicyCustomBatchResponse or error will be
39107// non-nil. Any non-2xx status code is an error. Response headers are in
39108// either *ReturnpolicyCustomBatchResponse.ServerResponse.Header or (if
39109// a response was returned at all) in error.(*googleapi.Error).Header.
39110// Use googleapi.IsNotModified to check whether the returned error was
39111// because http.StatusNotModified was returned.
39112func (c *ReturnpolicyCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyCustomBatchResponse, error) {
39113	gensupport.SetOptions(c.urlParams_, opts...)
39114	res, err := c.doRequest("json")
39115	if res != nil && res.StatusCode == http.StatusNotModified {
39116		if res.Body != nil {
39117			res.Body.Close()
39118		}
39119		return nil, &googleapi.Error{
39120			Code:   res.StatusCode,
39121			Header: res.Header,
39122		}
39123	}
39124	if err != nil {
39125		return nil, err
39126	}
39127	defer googleapi.CloseBody(res)
39128	if err := googleapi.CheckResponse(res); err != nil {
39129		return nil, err
39130	}
39131	ret := &ReturnpolicyCustomBatchResponse{
39132		ServerResponse: googleapi.ServerResponse{
39133			Header:         res.Header,
39134			HTTPStatusCode: res.StatusCode,
39135		},
39136	}
39137	target := &ret
39138	if err := gensupport.DecodeResponse(target, res); err != nil {
39139		return nil, err
39140	}
39141	return ret, nil
39142	// {
39143	//   "description": "Batches multiple return policy related calls in a single request.",
39144	//   "flatPath": "returnpolicy/batch",
39145	//   "httpMethod": "POST",
39146	//   "id": "content.returnpolicy.custombatch",
39147	//   "parameterOrder": [],
39148	//   "parameters": {},
39149	//   "path": "returnpolicy/batch",
39150	//   "request": {
39151	//     "$ref": "ReturnpolicyCustomBatchRequest"
39152	//   },
39153	//   "response": {
39154	//     "$ref": "ReturnpolicyCustomBatchResponse"
39155	//   },
39156	//   "scopes": [
39157	//     "https://www.googleapis.com/auth/content"
39158	//   ]
39159	// }
39160
39161}
39162
39163// method id "content.returnpolicy.delete":
39164
39165type ReturnpolicyDeleteCall struct {
39166	s              *APIService
39167	merchantId     uint64
39168	returnPolicyId string
39169	urlParams_     gensupport.URLParams
39170	ctx_           context.Context
39171	header_        http.Header
39172}
39173
39174// Delete: Deletes a return policy for the given Merchant Center
39175// account.
39176//
39177// - merchantId: The Merchant Center account from which to delete the
39178//   given return policy.
39179// - returnPolicyId: Return policy ID generated by Google.
39180func (r *ReturnpolicyService) Delete(merchantId uint64, returnPolicyId string) *ReturnpolicyDeleteCall {
39181	c := &ReturnpolicyDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39182	c.merchantId = merchantId
39183	c.returnPolicyId = returnPolicyId
39184	return c
39185}
39186
39187// Fields allows partial responses to be retrieved. See
39188// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39189// for more information.
39190func (c *ReturnpolicyDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyDeleteCall {
39191	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39192	return c
39193}
39194
39195// Context sets the context to be used in this call's Do method. Any
39196// pending HTTP request will be aborted if the provided context is
39197// canceled.
39198func (c *ReturnpolicyDeleteCall) Context(ctx context.Context) *ReturnpolicyDeleteCall {
39199	c.ctx_ = ctx
39200	return c
39201}
39202
39203// Header returns an http.Header that can be modified by the caller to
39204// add HTTP headers to the request.
39205func (c *ReturnpolicyDeleteCall) Header() http.Header {
39206	if c.header_ == nil {
39207		c.header_ = make(http.Header)
39208	}
39209	return c.header_
39210}
39211
39212func (c *ReturnpolicyDeleteCall) doRequest(alt string) (*http.Response, error) {
39213	reqHeaders := make(http.Header)
39214	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39215	for k, v := range c.header_ {
39216		reqHeaders[k] = v
39217	}
39218	reqHeaders.Set("User-Agent", c.s.userAgent())
39219	var body io.Reader = nil
39220	c.urlParams_.Set("alt", alt)
39221	c.urlParams_.Set("prettyPrint", "false")
39222	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
39223	urls += "?" + c.urlParams_.Encode()
39224	req, err := http.NewRequest("DELETE", urls, body)
39225	if err != nil {
39226		return nil, err
39227	}
39228	req.Header = reqHeaders
39229	googleapi.Expand(req.URL, map[string]string{
39230		"merchantId":     strconv.FormatUint(c.merchantId, 10),
39231		"returnPolicyId": c.returnPolicyId,
39232	})
39233	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39234}
39235
39236// Do executes the "content.returnpolicy.delete" call.
39237func (c *ReturnpolicyDeleteCall) Do(opts ...googleapi.CallOption) error {
39238	gensupport.SetOptions(c.urlParams_, opts...)
39239	res, err := c.doRequest("json")
39240	if err != nil {
39241		return err
39242	}
39243	defer googleapi.CloseBody(res)
39244	if err := googleapi.CheckResponse(res); err != nil {
39245		return err
39246	}
39247	return nil
39248	// {
39249	//   "description": "Deletes a return policy for the given Merchant Center account.",
39250	//   "flatPath": "{merchantId}/returnpolicy/{returnPolicyId}",
39251	//   "httpMethod": "DELETE",
39252	//   "id": "content.returnpolicy.delete",
39253	//   "parameterOrder": [
39254	//     "merchantId",
39255	//     "returnPolicyId"
39256	//   ],
39257	//   "parameters": {
39258	//     "merchantId": {
39259	//       "description": "The Merchant Center account from which to delete the given return policy.",
39260	//       "format": "uint64",
39261	//       "location": "path",
39262	//       "required": true,
39263	//       "type": "string"
39264	//     },
39265	//     "returnPolicyId": {
39266	//       "description": "Return policy ID generated by Google.",
39267	//       "location": "path",
39268	//       "required": true,
39269	//       "type": "string"
39270	//     }
39271	//   },
39272	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
39273	//   "scopes": [
39274	//     "https://www.googleapis.com/auth/content"
39275	//   ]
39276	// }
39277
39278}
39279
39280// method id "content.returnpolicy.get":
39281
39282type ReturnpolicyGetCall struct {
39283	s              *APIService
39284	merchantId     uint64
39285	returnPolicyId string
39286	urlParams_     gensupport.URLParams
39287	ifNoneMatch_   string
39288	ctx_           context.Context
39289	header_        http.Header
39290}
39291
39292// Get: Gets a return policy of the Merchant Center account.
39293//
39294// - merchantId: The Merchant Center account to get a return policy for.
39295// - returnPolicyId: Return policy ID generated by Google.
39296func (r *ReturnpolicyService) Get(merchantId uint64, returnPolicyId string) *ReturnpolicyGetCall {
39297	c := &ReturnpolicyGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39298	c.merchantId = merchantId
39299	c.returnPolicyId = returnPolicyId
39300	return c
39301}
39302
39303// Fields allows partial responses to be retrieved. See
39304// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39305// for more information.
39306func (c *ReturnpolicyGetCall) Fields(s ...googleapi.Field) *ReturnpolicyGetCall {
39307	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39308	return c
39309}
39310
39311// IfNoneMatch sets the optional parameter which makes the operation
39312// fail if the object's ETag matches the given value. This is useful for
39313// getting updates only after the object has changed since the last
39314// request. Use googleapi.IsNotModified to check whether the response
39315// error from Do is the result of In-None-Match.
39316func (c *ReturnpolicyGetCall) IfNoneMatch(entityTag string) *ReturnpolicyGetCall {
39317	c.ifNoneMatch_ = entityTag
39318	return c
39319}
39320
39321// Context sets the context to be used in this call's Do method. Any
39322// pending HTTP request will be aborted if the provided context is
39323// canceled.
39324func (c *ReturnpolicyGetCall) Context(ctx context.Context) *ReturnpolicyGetCall {
39325	c.ctx_ = ctx
39326	return c
39327}
39328
39329// Header returns an http.Header that can be modified by the caller to
39330// add HTTP headers to the request.
39331func (c *ReturnpolicyGetCall) Header() http.Header {
39332	if c.header_ == nil {
39333		c.header_ = make(http.Header)
39334	}
39335	return c.header_
39336}
39337
39338func (c *ReturnpolicyGetCall) doRequest(alt string) (*http.Response, error) {
39339	reqHeaders := make(http.Header)
39340	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39341	for k, v := range c.header_ {
39342		reqHeaders[k] = v
39343	}
39344	reqHeaders.Set("User-Agent", c.s.userAgent())
39345	if c.ifNoneMatch_ != "" {
39346		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39347	}
39348	var body io.Reader = nil
39349	c.urlParams_.Set("alt", alt)
39350	c.urlParams_.Set("prettyPrint", "false")
39351	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
39352	urls += "?" + c.urlParams_.Encode()
39353	req, err := http.NewRequest("GET", urls, body)
39354	if err != nil {
39355		return nil, err
39356	}
39357	req.Header = reqHeaders
39358	googleapi.Expand(req.URL, map[string]string{
39359		"merchantId":     strconv.FormatUint(c.merchantId, 10),
39360		"returnPolicyId": c.returnPolicyId,
39361	})
39362	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39363}
39364
39365// Do executes the "content.returnpolicy.get" call.
39366// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
39367// status code is an error. Response headers are in either
39368// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
39369// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
39370// to check whether the returned error was because
39371// http.StatusNotModified was returned.
39372func (c *ReturnpolicyGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
39373	gensupport.SetOptions(c.urlParams_, opts...)
39374	res, err := c.doRequest("json")
39375	if res != nil && res.StatusCode == http.StatusNotModified {
39376		if res.Body != nil {
39377			res.Body.Close()
39378		}
39379		return nil, &googleapi.Error{
39380			Code:   res.StatusCode,
39381			Header: res.Header,
39382		}
39383	}
39384	if err != nil {
39385		return nil, err
39386	}
39387	defer googleapi.CloseBody(res)
39388	if err := googleapi.CheckResponse(res); err != nil {
39389		return nil, err
39390	}
39391	ret := &ReturnPolicy{
39392		ServerResponse: googleapi.ServerResponse{
39393			Header:         res.Header,
39394			HTTPStatusCode: res.StatusCode,
39395		},
39396	}
39397	target := &ret
39398	if err := gensupport.DecodeResponse(target, res); err != nil {
39399		return nil, err
39400	}
39401	return ret, nil
39402	// {
39403	//   "description": "Gets a return policy of the Merchant Center account.",
39404	//   "flatPath": "{merchantId}/returnpolicy/{returnPolicyId}",
39405	//   "httpMethod": "GET",
39406	//   "id": "content.returnpolicy.get",
39407	//   "parameterOrder": [
39408	//     "merchantId",
39409	//     "returnPolicyId"
39410	//   ],
39411	//   "parameters": {
39412	//     "merchantId": {
39413	//       "description": "The Merchant Center account to get a return policy for.",
39414	//       "format": "uint64",
39415	//       "location": "path",
39416	//       "required": true,
39417	//       "type": "string"
39418	//     },
39419	//     "returnPolicyId": {
39420	//       "description": "Return policy ID generated by Google.",
39421	//       "location": "path",
39422	//       "required": true,
39423	//       "type": "string"
39424	//     }
39425	//   },
39426	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
39427	//   "response": {
39428	//     "$ref": "ReturnPolicy"
39429	//   },
39430	//   "scopes": [
39431	//     "https://www.googleapis.com/auth/content"
39432	//   ]
39433	// }
39434
39435}
39436
39437// method id "content.returnpolicy.insert":
39438
39439type ReturnpolicyInsertCall struct {
39440	s            *APIService
39441	merchantId   uint64
39442	returnpolicy *ReturnPolicy
39443	urlParams_   gensupport.URLParams
39444	ctx_         context.Context
39445	header_      http.Header
39446}
39447
39448// Insert: Inserts a return policy for the Merchant Center account.
39449//
39450// - merchantId: The Merchant Center account to insert a return policy
39451//   for.
39452func (r *ReturnpolicyService) Insert(merchantId uint64, returnpolicy *ReturnPolicy) *ReturnpolicyInsertCall {
39453	c := &ReturnpolicyInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39454	c.merchantId = merchantId
39455	c.returnpolicy = returnpolicy
39456	return c
39457}
39458
39459// Fields allows partial responses to be retrieved. See
39460// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39461// for more information.
39462func (c *ReturnpolicyInsertCall) Fields(s ...googleapi.Field) *ReturnpolicyInsertCall {
39463	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39464	return c
39465}
39466
39467// Context sets the context to be used in this call's Do method. Any
39468// pending HTTP request will be aborted if the provided context is
39469// canceled.
39470func (c *ReturnpolicyInsertCall) Context(ctx context.Context) *ReturnpolicyInsertCall {
39471	c.ctx_ = ctx
39472	return c
39473}
39474
39475// Header returns an http.Header that can be modified by the caller to
39476// add HTTP headers to the request.
39477func (c *ReturnpolicyInsertCall) Header() http.Header {
39478	if c.header_ == nil {
39479		c.header_ = make(http.Header)
39480	}
39481	return c.header_
39482}
39483
39484func (c *ReturnpolicyInsertCall) doRequest(alt string) (*http.Response, error) {
39485	reqHeaders := make(http.Header)
39486	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39487	for k, v := range c.header_ {
39488		reqHeaders[k] = v
39489	}
39490	reqHeaders.Set("User-Agent", c.s.userAgent())
39491	var body io.Reader = nil
39492	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicy)
39493	if err != nil {
39494		return nil, err
39495	}
39496	reqHeaders.Set("Content-Type", "application/json")
39497	c.urlParams_.Set("alt", alt)
39498	c.urlParams_.Set("prettyPrint", "false")
39499	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
39500	urls += "?" + c.urlParams_.Encode()
39501	req, err := http.NewRequest("POST", urls, body)
39502	if err != nil {
39503		return nil, err
39504	}
39505	req.Header = reqHeaders
39506	googleapi.Expand(req.URL, map[string]string{
39507		"merchantId": strconv.FormatUint(c.merchantId, 10),
39508	})
39509	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39510}
39511
39512// Do executes the "content.returnpolicy.insert" call.
39513// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
39514// status code is an error. Response headers are in either
39515// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
39516// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
39517// to check whether the returned error was because
39518// http.StatusNotModified was returned.
39519func (c *ReturnpolicyInsertCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
39520	gensupport.SetOptions(c.urlParams_, opts...)
39521	res, err := c.doRequest("json")
39522	if res != nil && res.StatusCode == http.StatusNotModified {
39523		if res.Body != nil {
39524			res.Body.Close()
39525		}
39526		return nil, &googleapi.Error{
39527			Code:   res.StatusCode,
39528			Header: res.Header,
39529		}
39530	}
39531	if err != nil {
39532		return nil, err
39533	}
39534	defer googleapi.CloseBody(res)
39535	if err := googleapi.CheckResponse(res); err != nil {
39536		return nil, err
39537	}
39538	ret := &ReturnPolicy{
39539		ServerResponse: googleapi.ServerResponse{
39540			Header:         res.Header,
39541			HTTPStatusCode: res.StatusCode,
39542		},
39543	}
39544	target := &ret
39545	if err := gensupport.DecodeResponse(target, res); err != nil {
39546		return nil, err
39547	}
39548	return ret, nil
39549	// {
39550	//   "description": "Inserts a return policy for the Merchant Center account.",
39551	//   "flatPath": "{merchantId}/returnpolicy",
39552	//   "httpMethod": "POST",
39553	//   "id": "content.returnpolicy.insert",
39554	//   "parameterOrder": [
39555	//     "merchantId"
39556	//   ],
39557	//   "parameters": {
39558	//     "merchantId": {
39559	//       "description": "The Merchant Center account to insert a return policy for.",
39560	//       "format": "uint64",
39561	//       "location": "path",
39562	//       "required": true,
39563	//       "type": "string"
39564	//     }
39565	//   },
39566	//   "path": "{merchantId}/returnpolicy",
39567	//   "request": {
39568	//     "$ref": "ReturnPolicy"
39569	//   },
39570	//   "response": {
39571	//     "$ref": "ReturnPolicy"
39572	//   },
39573	//   "scopes": [
39574	//     "https://www.googleapis.com/auth/content"
39575	//   ]
39576	// }
39577
39578}
39579
39580// method id "content.returnpolicy.list":
39581
39582type ReturnpolicyListCall struct {
39583	s            *APIService
39584	merchantId   uint64
39585	urlParams_   gensupport.URLParams
39586	ifNoneMatch_ string
39587	ctx_         context.Context
39588	header_      http.Header
39589}
39590
39591// List: Lists the return policies of the Merchant Center account.
39592//
39593// - merchantId: The Merchant Center account to list return policies
39594//   for.
39595func (r *ReturnpolicyService) List(merchantId uint64) *ReturnpolicyListCall {
39596	c := &ReturnpolicyListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39597	c.merchantId = merchantId
39598	return c
39599}
39600
39601// Fields allows partial responses to be retrieved. See
39602// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39603// for more information.
39604func (c *ReturnpolicyListCall) Fields(s ...googleapi.Field) *ReturnpolicyListCall {
39605	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39606	return c
39607}
39608
39609// IfNoneMatch sets the optional parameter which makes the operation
39610// fail if the object's ETag matches the given value. This is useful for
39611// getting updates only after the object has changed since the last
39612// request. Use googleapi.IsNotModified to check whether the response
39613// error from Do is the result of In-None-Match.
39614func (c *ReturnpolicyListCall) IfNoneMatch(entityTag string) *ReturnpolicyListCall {
39615	c.ifNoneMatch_ = entityTag
39616	return c
39617}
39618
39619// Context sets the context to be used in this call's Do method. Any
39620// pending HTTP request will be aborted if the provided context is
39621// canceled.
39622func (c *ReturnpolicyListCall) Context(ctx context.Context) *ReturnpolicyListCall {
39623	c.ctx_ = ctx
39624	return c
39625}
39626
39627// Header returns an http.Header that can be modified by the caller to
39628// add HTTP headers to the request.
39629func (c *ReturnpolicyListCall) Header() http.Header {
39630	if c.header_ == nil {
39631		c.header_ = make(http.Header)
39632	}
39633	return c.header_
39634}
39635
39636func (c *ReturnpolicyListCall) doRequest(alt string) (*http.Response, error) {
39637	reqHeaders := make(http.Header)
39638	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39639	for k, v := range c.header_ {
39640		reqHeaders[k] = v
39641	}
39642	reqHeaders.Set("User-Agent", c.s.userAgent())
39643	if c.ifNoneMatch_ != "" {
39644		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39645	}
39646	var body io.Reader = nil
39647	c.urlParams_.Set("alt", alt)
39648	c.urlParams_.Set("prettyPrint", "false")
39649	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
39650	urls += "?" + c.urlParams_.Encode()
39651	req, err := http.NewRequest("GET", urls, body)
39652	if err != nil {
39653		return nil, err
39654	}
39655	req.Header = reqHeaders
39656	googleapi.Expand(req.URL, map[string]string{
39657		"merchantId": strconv.FormatUint(c.merchantId, 10),
39658	})
39659	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39660}
39661
39662// Do executes the "content.returnpolicy.list" call.
39663// Exactly one of *ReturnpolicyListResponse or error will be non-nil.
39664// Any non-2xx status code is an error. Response headers are in either
39665// *ReturnpolicyListResponse.ServerResponse.Header or (if a response was
39666// returned at all) in error.(*googleapi.Error).Header. Use
39667// googleapi.IsNotModified to check whether the returned error was
39668// because http.StatusNotModified was returned.
39669func (c *ReturnpolicyListCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyListResponse, error) {
39670	gensupport.SetOptions(c.urlParams_, opts...)
39671	res, err := c.doRequest("json")
39672	if res != nil && res.StatusCode == http.StatusNotModified {
39673		if res.Body != nil {
39674			res.Body.Close()
39675		}
39676		return nil, &googleapi.Error{
39677			Code:   res.StatusCode,
39678			Header: res.Header,
39679		}
39680	}
39681	if err != nil {
39682		return nil, err
39683	}
39684	defer googleapi.CloseBody(res)
39685	if err := googleapi.CheckResponse(res); err != nil {
39686		return nil, err
39687	}
39688	ret := &ReturnpolicyListResponse{
39689		ServerResponse: googleapi.ServerResponse{
39690			Header:         res.Header,
39691			HTTPStatusCode: res.StatusCode,
39692		},
39693	}
39694	target := &ret
39695	if err := gensupport.DecodeResponse(target, res); err != nil {
39696		return nil, err
39697	}
39698	return ret, nil
39699	// {
39700	//   "description": "Lists the return policies of the Merchant Center account.",
39701	//   "flatPath": "{merchantId}/returnpolicy",
39702	//   "httpMethod": "GET",
39703	//   "id": "content.returnpolicy.list",
39704	//   "parameterOrder": [
39705	//     "merchantId"
39706	//   ],
39707	//   "parameters": {
39708	//     "merchantId": {
39709	//       "description": "The Merchant Center account to list return policies for.",
39710	//       "format": "uint64",
39711	//       "location": "path",
39712	//       "required": true,
39713	//       "type": "string"
39714	//     }
39715	//   },
39716	//   "path": "{merchantId}/returnpolicy",
39717	//   "response": {
39718	//     "$ref": "ReturnpolicyListResponse"
39719	//   },
39720	//   "scopes": [
39721	//     "https://www.googleapis.com/auth/content"
39722	//   ]
39723	// }
39724
39725}
39726
39727// method id "content.returnpolicyonline.create":
39728
39729type ReturnpolicyonlineCreateCall struct {
39730	s                  *APIService
39731	merchantId         int64
39732	returnpolicyonline *ReturnPolicyOnline
39733	urlParams_         gensupport.URLParams
39734	ctx_               context.Context
39735	header_            http.Header
39736}
39737
39738// Create: Creates a new return policy.
39739//
39740// - merchantId: The id of the merchant for which to retrieve the return
39741//   policy online object.
39742func (r *ReturnpolicyonlineService) Create(merchantId int64, returnpolicyonline *ReturnPolicyOnline) *ReturnpolicyonlineCreateCall {
39743	c := &ReturnpolicyonlineCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39744	c.merchantId = merchantId
39745	c.returnpolicyonline = returnpolicyonline
39746	return c
39747}
39748
39749// Fields allows partial responses to be retrieved. See
39750// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39751// for more information.
39752func (c *ReturnpolicyonlineCreateCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineCreateCall {
39753	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39754	return c
39755}
39756
39757// Context sets the context to be used in this call's Do method. Any
39758// pending HTTP request will be aborted if the provided context is
39759// canceled.
39760func (c *ReturnpolicyonlineCreateCall) Context(ctx context.Context) *ReturnpolicyonlineCreateCall {
39761	c.ctx_ = ctx
39762	return c
39763}
39764
39765// Header returns an http.Header that can be modified by the caller to
39766// add HTTP headers to the request.
39767func (c *ReturnpolicyonlineCreateCall) Header() http.Header {
39768	if c.header_ == nil {
39769		c.header_ = make(http.Header)
39770	}
39771	return c.header_
39772}
39773
39774func (c *ReturnpolicyonlineCreateCall) doRequest(alt string) (*http.Response, error) {
39775	reqHeaders := make(http.Header)
39776	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39777	for k, v := range c.header_ {
39778		reqHeaders[k] = v
39779	}
39780	reqHeaders.Set("User-Agent", c.s.userAgent())
39781	var body io.Reader = nil
39782	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicyonline)
39783	if err != nil {
39784		return nil, err
39785	}
39786	reqHeaders.Set("Content-Type", "application/json")
39787	c.urlParams_.Set("alt", alt)
39788	c.urlParams_.Set("prettyPrint", "false")
39789	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline")
39790	urls += "?" + c.urlParams_.Encode()
39791	req, err := http.NewRequest("POST", urls, body)
39792	if err != nil {
39793		return nil, err
39794	}
39795	req.Header = reqHeaders
39796	googleapi.Expand(req.URL, map[string]string{
39797		"merchantId": strconv.FormatInt(c.merchantId, 10),
39798	})
39799	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39800}
39801
39802// Do executes the "content.returnpolicyonline.create" call.
39803// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
39804// non-2xx status code is an error. Response headers are in either
39805// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
39806// returned at all) in error.(*googleapi.Error).Header. Use
39807// googleapi.IsNotModified to check whether the returned error was
39808// because http.StatusNotModified was returned.
39809func (c *ReturnpolicyonlineCreateCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
39810	gensupport.SetOptions(c.urlParams_, opts...)
39811	res, err := c.doRequest("json")
39812	if res != nil && res.StatusCode == http.StatusNotModified {
39813		if res.Body != nil {
39814			res.Body.Close()
39815		}
39816		return nil, &googleapi.Error{
39817			Code:   res.StatusCode,
39818			Header: res.Header,
39819		}
39820	}
39821	if err != nil {
39822		return nil, err
39823	}
39824	defer googleapi.CloseBody(res)
39825	if err := googleapi.CheckResponse(res); err != nil {
39826		return nil, err
39827	}
39828	ret := &ReturnPolicyOnline{
39829		ServerResponse: googleapi.ServerResponse{
39830			Header:         res.Header,
39831			HTTPStatusCode: res.StatusCode,
39832		},
39833	}
39834	target := &ret
39835	if err := gensupport.DecodeResponse(target, res); err != nil {
39836		return nil, err
39837	}
39838	return ret, nil
39839	// {
39840	//   "description": "Creates a new return policy.",
39841	//   "flatPath": "{merchantId}/returnpolicyonline",
39842	//   "httpMethod": "POST",
39843	//   "id": "content.returnpolicyonline.create",
39844	//   "parameterOrder": [
39845	//     "merchantId"
39846	//   ],
39847	//   "parameters": {
39848	//     "merchantId": {
39849	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
39850	//       "format": "int64",
39851	//       "location": "path",
39852	//       "required": true,
39853	//       "type": "string"
39854	//     }
39855	//   },
39856	//   "path": "{merchantId}/returnpolicyonline",
39857	//   "request": {
39858	//     "$ref": "ReturnPolicyOnline"
39859	//   },
39860	//   "response": {
39861	//     "$ref": "ReturnPolicyOnline"
39862	//   },
39863	//   "scopes": [
39864	//     "https://www.googleapis.com/auth/content"
39865	//   ]
39866	// }
39867
39868}
39869
39870// method id "content.returnpolicyonline.delete":
39871
39872type ReturnpolicyonlineDeleteCall struct {
39873	s              *APIService
39874	merchantId     int64
39875	returnPolicyId string
39876	urlParams_     gensupport.URLParams
39877	ctx_           context.Context
39878	header_        http.Header
39879}
39880
39881// Delete: Deletes an existing return policy.
39882//
39883// - merchantId: The id of the merchant for which to retrieve the return
39884//   policy online object.
39885// - returnPolicyId: The id of the return policy to delete.
39886func (r *ReturnpolicyonlineService) Delete(merchantId int64, returnPolicyId string) *ReturnpolicyonlineDeleteCall {
39887	c := &ReturnpolicyonlineDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39888	c.merchantId = merchantId
39889	c.returnPolicyId = returnPolicyId
39890	return c
39891}
39892
39893// Fields allows partial responses to be retrieved. See
39894// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39895// for more information.
39896func (c *ReturnpolicyonlineDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineDeleteCall {
39897	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39898	return c
39899}
39900
39901// Context sets the context to be used in this call's Do method. Any
39902// pending HTTP request will be aborted if the provided context is
39903// canceled.
39904func (c *ReturnpolicyonlineDeleteCall) Context(ctx context.Context) *ReturnpolicyonlineDeleteCall {
39905	c.ctx_ = ctx
39906	return c
39907}
39908
39909// Header returns an http.Header that can be modified by the caller to
39910// add HTTP headers to the request.
39911func (c *ReturnpolicyonlineDeleteCall) Header() http.Header {
39912	if c.header_ == nil {
39913		c.header_ = make(http.Header)
39914	}
39915	return c.header_
39916}
39917
39918func (c *ReturnpolicyonlineDeleteCall) doRequest(alt string) (*http.Response, error) {
39919	reqHeaders := make(http.Header)
39920	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
39921	for k, v := range c.header_ {
39922		reqHeaders[k] = v
39923	}
39924	reqHeaders.Set("User-Agent", c.s.userAgent())
39925	var body io.Reader = nil
39926	c.urlParams_.Set("alt", alt)
39927	c.urlParams_.Set("prettyPrint", "false")
39928	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
39929	urls += "?" + c.urlParams_.Encode()
39930	req, err := http.NewRequest("DELETE", urls, body)
39931	if err != nil {
39932		return nil, err
39933	}
39934	req.Header = reqHeaders
39935	googleapi.Expand(req.URL, map[string]string{
39936		"merchantId":     strconv.FormatInt(c.merchantId, 10),
39937		"returnPolicyId": c.returnPolicyId,
39938	})
39939	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39940}
39941
39942// Do executes the "content.returnpolicyonline.delete" call.
39943func (c *ReturnpolicyonlineDeleteCall) Do(opts ...googleapi.CallOption) error {
39944	gensupport.SetOptions(c.urlParams_, opts...)
39945	res, err := c.doRequest("json")
39946	if err != nil {
39947		return err
39948	}
39949	defer googleapi.CloseBody(res)
39950	if err := googleapi.CheckResponse(res); err != nil {
39951		return err
39952	}
39953	return nil
39954	// {
39955	//   "description": "Deletes an existing return policy.",
39956	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
39957	//   "httpMethod": "DELETE",
39958	//   "id": "content.returnpolicyonline.delete",
39959	//   "parameterOrder": [
39960	//     "merchantId",
39961	//     "returnPolicyId"
39962	//   ],
39963	//   "parameters": {
39964	//     "merchantId": {
39965	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
39966	//       "format": "int64",
39967	//       "location": "path",
39968	//       "required": true,
39969	//       "type": "string"
39970	//     },
39971	//     "returnPolicyId": {
39972	//       "description": "Required. The id of the return policy to delete.",
39973	//       "location": "path",
39974	//       "required": true,
39975	//       "type": "string"
39976	//     }
39977	//   },
39978	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
39979	//   "scopes": [
39980	//     "https://www.googleapis.com/auth/content"
39981	//   ]
39982	// }
39983
39984}
39985
39986// method id "content.returnpolicyonline.get":
39987
39988type ReturnpolicyonlineGetCall struct {
39989	s              *APIService
39990	merchantId     int64
39991	returnPolicyId string
39992	urlParams_     gensupport.URLParams
39993	ifNoneMatch_   string
39994	ctx_           context.Context
39995	header_        http.Header
39996}
39997
39998// Get: Gets an existing return policy.
39999//
40000// - merchantId: The id of the merchant for which to retrieve the return
40001//   policy online object.
40002// - returnPolicyId: The id of the return policy to retrieve.
40003func (r *ReturnpolicyonlineService) Get(merchantId int64, returnPolicyId string) *ReturnpolicyonlineGetCall {
40004	c := &ReturnpolicyonlineGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40005	c.merchantId = merchantId
40006	c.returnPolicyId = returnPolicyId
40007	return c
40008}
40009
40010// Fields allows partial responses to be retrieved. See
40011// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40012// for more information.
40013func (c *ReturnpolicyonlineGetCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineGetCall {
40014	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40015	return c
40016}
40017
40018// IfNoneMatch sets the optional parameter which makes the operation
40019// fail if the object's ETag matches the given value. This is useful for
40020// getting updates only after the object has changed since the last
40021// request. Use googleapi.IsNotModified to check whether the response
40022// error from Do is the result of In-None-Match.
40023func (c *ReturnpolicyonlineGetCall) IfNoneMatch(entityTag string) *ReturnpolicyonlineGetCall {
40024	c.ifNoneMatch_ = entityTag
40025	return c
40026}
40027
40028// Context sets the context to be used in this call's Do method. Any
40029// pending HTTP request will be aborted if the provided context is
40030// canceled.
40031func (c *ReturnpolicyonlineGetCall) Context(ctx context.Context) *ReturnpolicyonlineGetCall {
40032	c.ctx_ = ctx
40033	return c
40034}
40035
40036// Header returns an http.Header that can be modified by the caller to
40037// add HTTP headers to the request.
40038func (c *ReturnpolicyonlineGetCall) Header() http.Header {
40039	if c.header_ == nil {
40040		c.header_ = make(http.Header)
40041	}
40042	return c.header_
40043}
40044
40045func (c *ReturnpolicyonlineGetCall) doRequest(alt string) (*http.Response, error) {
40046	reqHeaders := make(http.Header)
40047	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40048	for k, v := range c.header_ {
40049		reqHeaders[k] = v
40050	}
40051	reqHeaders.Set("User-Agent", c.s.userAgent())
40052	if c.ifNoneMatch_ != "" {
40053		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40054	}
40055	var body io.Reader = nil
40056	c.urlParams_.Set("alt", alt)
40057	c.urlParams_.Set("prettyPrint", "false")
40058	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
40059	urls += "?" + c.urlParams_.Encode()
40060	req, err := http.NewRequest("GET", urls, body)
40061	if err != nil {
40062		return nil, err
40063	}
40064	req.Header = reqHeaders
40065	googleapi.Expand(req.URL, map[string]string{
40066		"merchantId":     strconv.FormatInt(c.merchantId, 10),
40067		"returnPolicyId": c.returnPolicyId,
40068	})
40069	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40070}
40071
40072// Do executes the "content.returnpolicyonline.get" call.
40073// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
40074// non-2xx status code is an error. Response headers are in either
40075// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
40076// returned at all) in error.(*googleapi.Error).Header. Use
40077// googleapi.IsNotModified to check whether the returned error was
40078// because http.StatusNotModified was returned.
40079func (c *ReturnpolicyonlineGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
40080	gensupport.SetOptions(c.urlParams_, opts...)
40081	res, err := c.doRequest("json")
40082	if res != nil && res.StatusCode == http.StatusNotModified {
40083		if res.Body != nil {
40084			res.Body.Close()
40085		}
40086		return nil, &googleapi.Error{
40087			Code:   res.StatusCode,
40088			Header: res.Header,
40089		}
40090	}
40091	if err != nil {
40092		return nil, err
40093	}
40094	defer googleapi.CloseBody(res)
40095	if err := googleapi.CheckResponse(res); err != nil {
40096		return nil, err
40097	}
40098	ret := &ReturnPolicyOnline{
40099		ServerResponse: googleapi.ServerResponse{
40100			Header:         res.Header,
40101			HTTPStatusCode: res.StatusCode,
40102		},
40103	}
40104	target := &ret
40105	if err := gensupport.DecodeResponse(target, res); err != nil {
40106		return nil, err
40107	}
40108	return ret, nil
40109	// {
40110	//   "description": "Gets an existing return policy.",
40111	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
40112	//   "httpMethod": "GET",
40113	//   "id": "content.returnpolicyonline.get",
40114	//   "parameterOrder": [
40115	//     "merchantId",
40116	//     "returnPolicyId"
40117	//   ],
40118	//   "parameters": {
40119	//     "merchantId": {
40120	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
40121	//       "format": "int64",
40122	//       "location": "path",
40123	//       "required": true,
40124	//       "type": "string"
40125	//     },
40126	//     "returnPolicyId": {
40127	//       "description": "Required. The id of the return policy to retrieve.",
40128	//       "location": "path",
40129	//       "required": true,
40130	//       "type": "string"
40131	//     }
40132	//   },
40133	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
40134	//   "response": {
40135	//     "$ref": "ReturnPolicyOnline"
40136	//   },
40137	//   "scopes": [
40138	//     "https://www.googleapis.com/auth/content"
40139	//   ]
40140	// }
40141
40142}
40143
40144// method id "content.returnpolicyonline.list":
40145
40146type ReturnpolicyonlineListCall struct {
40147	s            *APIService
40148	merchantId   int64
40149	urlParams_   gensupport.URLParams
40150	ifNoneMatch_ string
40151	ctx_         context.Context
40152	header_      http.Header
40153}
40154
40155// List: Lists all existing return policies.
40156//
40157// - merchantId: The id of the merchant for which to retrieve the return
40158//   policy online object.
40159func (r *ReturnpolicyonlineService) List(merchantId int64) *ReturnpolicyonlineListCall {
40160	c := &ReturnpolicyonlineListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40161	c.merchantId = merchantId
40162	return c
40163}
40164
40165// Fields allows partial responses to be retrieved. See
40166// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40167// for more information.
40168func (c *ReturnpolicyonlineListCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineListCall {
40169	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40170	return c
40171}
40172
40173// IfNoneMatch sets the optional parameter which makes the operation
40174// fail if the object's ETag matches the given value. This is useful for
40175// getting updates only after the object has changed since the last
40176// request. Use googleapi.IsNotModified to check whether the response
40177// error from Do is the result of In-None-Match.
40178func (c *ReturnpolicyonlineListCall) IfNoneMatch(entityTag string) *ReturnpolicyonlineListCall {
40179	c.ifNoneMatch_ = entityTag
40180	return c
40181}
40182
40183// Context sets the context to be used in this call's Do method. Any
40184// pending HTTP request will be aborted if the provided context is
40185// canceled.
40186func (c *ReturnpolicyonlineListCall) Context(ctx context.Context) *ReturnpolicyonlineListCall {
40187	c.ctx_ = ctx
40188	return c
40189}
40190
40191// Header returns an http.Header that can be modified by the caller to
40192// add HTTP headers to the request.
40193func (c *ReturnpolicyonlineListCall) Header() http.Header {
40194	if c.header_ == nil {
40195		c.header_ = make(http.Header)
40196	}
40197	return c.header_
40198}
40199
40200func (c *ReturnpolicyonlineListCall) doRequest(alt string) (*http.Response, error) {
40201	reqHeaders := make(http.Header)
40202	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40203	for k, v := range c.header_ {
40204		reqHeaders[k] = v
40205	}
40206	reqHeaders.Set("User-Agent", c.s.userAgent())
40207	if c.ifNoneMatch_ != "" {
40208		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40209	}
40210	var body io.Reader = nil
40211	c.urlParams_.Set("alt", alt)
40212	c.urlParams_.Set("prettyPrint", "false")
40213	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline")
40214	urls += "?" + c.urlParams_.Encode()
40215	req, err := http.NewRequest("GET", urls, body)
40216	if err != nil {
40217		return nil, err
40218	}
40219	req.Header = reqHeaders
40220	googleapi.Expand(req.URL, map[string]string{
40221		"merchantId": strconv.FormatInt(c.merchantId, 10),
40222	})
40223	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40224}
40225
40226// Do executes the "content.returnpolicyonline.list" call.
40227// Exactly one of *ListReturnPolicyOnlineResponse or error will be
40228// non-nil. Any non-2xx status code is an error. Response headers are in
40229// either *ListReturnPolicyOnlineResponse.ServerResponse.Header or (if a
40230// response was returned at all) in error.(*googleapi.Error).Header. Use
40231// googleapi.IsNotModified to check whether the returned error was
40232// because http.StatusNotModified was returned.
40233func (c *ReturnpolicyonlineListCall) Do(opts ...googleapi.CallOption) (*ListReturnPolicyOnlineResponse, error) {
40234	gensupport.SetOptions(c.urlParams_, opts...)
40235	res, err := c.doRequest("json")
40236	if res != nil && res.StatusCode == http.StatusNotModified {
40237		if res.Body != nil {
40238			res.Body.Close()
40239		}
40240		return nil, &googleapi.Error{
40241			Code:   res.StatusCode,
40242			Header: res.Header,
40243		}
40244	}
40245	if err != nil {
40246		return nil, err
40247	}
40248	defer googleapi.CloseBody(res)
40249	if err := googleapi.CheckResponse(res); err != nil {
40250		return nil, err
40251	}
40252	ret := &ListReturnPolicyOnlineResponse{
40253		ServerResponse: googleapi.ServerResponse{
40254			Header:         res.Header,
40255			HTTPStatusCode: res.StatusCode,
40256		},
40257	}
40258	target := &ret
40259	if err := gensupport.DecodeResponse(target, res); err != nil {
40260		return nil, err
40261	}
40262	return ret, nil
40263	// {
40264	//   "description": "Lists all existing return policies.",
40265	//   "flatPath": "{merchantId}/returnpolicyonline",
40266	//   "httpMethod": "GET",
40267	//   "id": "content.returnpolicyonline.list",
40268	//   "parameterOrder": [
40269	//     "merchantId"
40270	//   ],
40271	//   "parameters": {
40272	//     "merchantId": {
40273	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
40274	//       "format": "int64",
40275	//       "location": "path",
40276	//       "required": true,
40277	//       "type": "string"
40278	//     }
40279	//   },
40280	//   "path": "{merchantId}/returnpolicyonline",
40281	//   "response": {
40282	//     "$ref": "ListReturnPolicyOnlineResponse"
40283	//   },
40284	//   "scopes": [
40285	//     "https://www.googleapis.com/auth/content"
40286	//   ]
40287	// }
40288
40289}
40290
40291// method id "content.returnpolicyonline.patch":
40292
40293type ReturnpolicyonlinePatchCall struct {
40294	s                  *APIService
40295	merchantId         int64
40296	returnPolicyId     string
40297	returnpolicyonline *ReturnPolicyOnline
40298	urlParams_         gensupport.URLParams
40299	ctx_               context.Context
40300	header_            http.Header
40301}
40302
40303// Patch: Updates an existing return policy.
40304//
40305// - merchantId: The id of the merchant for which to retrieve the return
40306//   policy online object.
40307// - returnPolicyId: The id of the return policy to update.
40308func (r *ReturnpolicyonlineService) Patch(merchantId int64, returnPolicyId string, returnpolicyonline *ReturnPolicyOnline) *ReturnpolicyonlinePatchCall {
40309	c := &ReturnpolicyonlinePatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40310	c.merchantId = merchantId
40311	c.returnPolicyId = returnPolicyId
40312	c.returnpolicyonline = returnpolicyonline
40313	return c
40314}
40315
40316// Fields allows partial responses to be retrieved. See
40317// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40318// for more information.
40319func (c *ReturnpolicyonlinePatchCall) Fields(s ...googleapi.Field) *ReturnpolicyonlinePatchCall {
40320	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40321	return c
40322}
40323
40324// Context sets the context to be used in this call's Do method. Any
40325// pending HTTP request will be aborted if the provided context is
40326// canceled.
40327func (c *ReturnpolicyonlinePatchCall) Context(ctx context.Context) *ReturnpolicyonlinePatchCall {
40328	c.ctx_ = ctx
40329	return c
40330}
40331
40332// Header returns an http.Header that can be modified by the caller to
40333// add HTTP headers to the request.
40334func (c *ReturnpolicyonlinePatchCall) Header() http.Header {
40335	if c.header_ == nil {
40336		c.header_ = make(http.Header)
40337	}
40338	return c.header_
40339}
40340
40341func (c *ReturnpolicyonlinePatchCall) doRequest(alt string) (*http.Response, error) {
40342	reqHeaders := make(http.Header)
40343	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40344	for k, v := range c.header_ {
40345		reqHeaders[k] = v
40346	}
40347	reqHeaders.Set("User-Agent", c.s.userAgent())
40348	var body io.Reader = nil
40349	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicyonline)
40350	if err != nil {
40351		return nil, err
40352	}
40353	reqHeaders.Set("Content-Type", "application/json")
40354	c.urlParams_.Set("alt", alt)
40355	c.urlParams_.Set("prettyPrint", "false")
40356	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
40357	urls += "?" + c.urlParams_.Encode()
40358	req, err := http.NewRequest("PATCH", urls, body)
40359	if err != nil {
40360		return nil, err
40361	}
40362	req.Header = reqHeaders
40363	googleapi.Expand(req.URL, map[string]string{
40364		"merchantId":     strconv.FormatInt(c.merchantId, 10),
40365		"returnPolicyId": c.returnPolicyId,
40366	})
40367	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40368}
40369
40370// Do executes the "content.returnpolicyonline.patch" call.
40371// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
40372// non-2xx status code is an error. Response headers are in either
40373// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
40374// returned at all) in error.(*googleapi.Error).Header. Use
40375// googleapi.IsNotModified to check whether the returned error was
40376// because http.StatusNotModified was returned.
40377func (c *ReturnpolicyonlinePatchCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
40378	gensupport.SetOptions(c.urlParams_, opts...)
40379	res, err := c.doRequest("json")
40380	if res != nil && res.StatusCode == http.StatusNotModified {
40381		if res.Body != nil {
40382			res.Body.Close()
40383		}
40384		return nil, &googleapi.Error{
40385			Code:   res.StatusCode,
40386			Header: res.Header,
40387		}
40388	}
40389	if err != nil {
40390		return nil, err
40391	}
40392	defer googleapi.CloseBody(res)
40393	if err := googleapi.CheckResponse(res); err != nil {
40394		return nil, err
40395	}
40396	ret := &ReturnPolicyOnline{
40397		ServerResponse: googleapi.ServerResponse{
40398			Header:         res.Header,
40399			HTTPStatusCode: res.StatusCode,
40400		},
40401	}
40402	target := &ret
40403	if err := gensupport.DecodeResponse(target, res); err != nil {
40404		return nil, err
40405	}
40406	return ret, nil
40407	// {
40408	//   "description": "Updates an existing return policy.",
40409	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
40410	//   "httpMethod": "PATCH",
40411	//   "id": "content.returnpolicyonline.patch",
40412	//   "parameterOrder": [
40413	//     "merchantId",
40414	//     "returnPolicyId"
40415	//   ],
40416	//   "parameters": {
40417	//     "merchantId": {
40418	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
40419	//       "format": "int64",
40420	//       "location": "path",
40421	//       "required": true,
40422	//       "type": "string"
40423	//     },
40424	//     "returnPolicyId": {
40425	//       "description": "Required. The id of the return policy to update.",
40426	//       "location": "path",
40427	//       "required": true,
40428	//       "type": "string"
40429	//     }
40430	//   },
40431	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
40432	//   "request": {
40433	//     "$ref": "ReturnPolicyOnline"
40434	//   },
40435	//   "response": {
40436	//     "$ref": "ReturnPolicyOnline"
40437	//   },
40438	//   "scopes": [
40439	//     "https://www.googleapis.com/auth/content"
40440	//   ]
40441	// }
40442
40443}
40444
40445// method id "content.settlementreports.get":
40446
40447type SettlementreportsGetCall struct {
40448	s            *APIService
40449	merchantId   uint64
40450	settlementId string
40451	urlParams_   gensupport.URLParams
40452	ifNoneMatch_ string
40453	ctx_         context.Context
40454	header_      http.Header
40455}
40456
40457// Get: Retrieves a settlement report from your Merchant Center account.
40458//
40459// - merchantId: The Merchant Center account of the settlement report.
40460// - settlementId: The Google-provided ID of the settlement.
40461func (r *SettlementreportsService) Get(merchantId uint64, settlementId string) *SettlementreportsGetCall {
40462	c := &SettlementreportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40463	c.merchantId = merchantId
40464	c.settlementId = settlementId
40465	return c
40466}
40467
40468// Fields allows partial responses to be retrieved. See
40469// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40470// for more information.
40471func (c *SettlementreportsGetCall) Fields(s ...googleapi.Field) *SettlementreportsGetCall {
40472	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40473	return c
40474}
40475
40476// IfNoneMatch sets the optional parameter which makes the operation
40477// fail if the object's ETag matches the given value. This is useful for
40478// getting updates only after the object has changed since the last
40479// request. Use googleapi.IsNotModified to check whether the response
40480// error from Do is the result of In-None-Match.
40481func (c *SettlementreportsGetCall) IfNoneMatch(entityTag string) *SettlementreportsGetCall {
40482	c.ifNoneMatch_ = entityTag
40483	return c
40484}
40485
40486// Context sets the context to be used in this call's Do method. Any
40487// pending HTTP request will be aborted if the provided context is
40488// canceled.
40489func (c *SettlementreportsGetCall) Context(ctx context.Context) *SettlementreportsGetCall {
40490	c.ctx_ = ctx
40491	return c
40492}
40493
40494// Header returns an http.Header that can be modified by the caller to
40495// add HTTP headers to the request.
40496func (c *SettlementreportsGetCall) Header() http.Header {
40497	if c.header_ == nil {
40498		c.header_ = make(http.Header)
40499	}
40500	return c.header_
40501}
40502
40503func (c *SettlementreportsGetCall) doRequest(alt string) (*http.Response, error) {
40504	reqHeaders := make(http.Header)
40505	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40506	for k, v := range c.header_ {
40507		reqHeaders[k] = v
40508	}
40509	reqHeaders.Set("User-Agent", c.s.userAgent())
40510	if c.ifNoneMatch_ != "" {
40511		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40512	}
40513	var body io.Reader = nil
40514	c.urlParams_.Set("alt", alt)
40515	c.urlParams_.Set("prettyPrint", "false")
40516	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports/{settlementId}")
40517	urls += "?" + c.urlParams_.Encode()
40518	req, err := http.NewRequest("GET", urls, body)
40519	if err != nil {
40520		return nil, err
40521	}
40522	req.Header = reqHeaders
40523	googleapi.Expand(req.URL, map[string]string{
40524		"merchantId":   strconv.FormatUint(c.merchantId, 10),
40525		"settlementId": c.settlementId,
40526	})
40527	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40528}
40529
40530// Do executes the "content.settlementreports.get" call.
40531// Exactly one of *SettlementReport or error will be non-nil. Any
40532// non-2xx status code is an error. Response headers are in either
40533// *SettlementReport.ServerResponse.Header or (if a response was
40534// returned at all) in error.(*googleapi.Error).Header. Use
40535// googleapi.IsNotModified to check whether the returned error was
40536// because http.StatusNotModified was returned.
40537func (c *SettlementreportsGetCall) Do(opts ...googleapi.CallOption) (*SettlementReport, error) {
40538	gensupport.SetOptions(c.urlParams_, opts...)
40539	res, err := c.doRequest("json")
40540	if res != nil && res.StatusCode == http.StatusNotModified {
40541		if res.Body != nil {
40542			res.Body.Close()
40543		}
40544		return nil, &googleapi.Error{
40545			Code:   res.StatusCode,
40546			Header: res.Header,
40547		}
40548	}
40549	if err != nil {
40550		return nil, err
40551	}
40552	defer googleapi.CloseBody(res)
40553	if err := googleapi.CheckResponse(res); err != nil {
40554		return nil, err
40555	}
40556	ret := &SettlementReport{
40557		ServerResponse: googleapi.ServerResponse{
40558			Header:         res.Header,
40559			HTTPStatusCode: res.StatusCode,
40560		},
40561	}
40562	target := &ret
40563	if err := gensupport.DecodeResponse(target, res); err != nil {
40564		return nil, err
40565	}
40566	return ret, nil
40567	// {
40568	//   "description": "Retrieves a settlement report from your Merchant Center account.",
40569	//   "flatPath": "{merchantId}/settlementreports/{settlementId}",
40570	//   "httpMethod": "GET",
40571	//   "id": "content.settlementreports.get",
40572	//   "parameterOrder": [
40573	//     "merchantId",
40574	//     "settlementId"
40575	//   ],
40576	//   "parameters": {
40577	//     "merchantId": {
40578	//       "description": "The Merchant Center account of the settlement report.",
40579	//       "format": "uint64",
40580	//       "location": "path",
40581	//       "required": true,
40582	//       "type": "string"
40583	//     },
40584	//     "settlementId": {
40585	//       "description": "The Google-provided ID of the settlement.",
40586	//       "location": "path",
40587	//       "required": true,
40588	//       "type": "string"
40589	//     }
40590	//   },
40591	//   "path": "{merchantId}/settlementreports/{settlementId}",
40592	//   "response": {
40593	//     "$ref": "SettlementReport"
40594	//   },
40595	//   "scopes": [
40596	//     "https://www.googleapis.com/auth/content"
40597	//   ]
40598	// }
40599
40600}
40601
40602// method id "content.settlementreports.list":
40603
40604type SettlementreportsListCall struct {
40605	s            *APIService
40606	merchantId   uint64
40607	urlParams_   gensupport.URLParams
40608	ifNoneMatch_ string
40609	ctx_         context.Context
40610	header_      http.Header
40611}
40612
40613// List: Retrieves a list of settlement reports from your Merchant
40614// Center account.
40615//
40616// - merchantId: The Merchant Center account to list settlements for.
40617func (r *SettlementreportsService) List(merchantId uint64) *SettlementreportsListCall {
40618	c := &SettlementreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40619	c.merchantId = merchantId
40620	return c
40621}
40622
40623// MaxResults sets the optional parameter "maxResults": The maximum
40624// number of settlements to return in the response, used for paging. The
40625// default value is 200 returns per page, and the maximum allowed value
40626// is 5000 returns per page.
40627func (c *SettlementreportsListCall) MaxResults(maxResults int64) *SettlementreportsListCall {
40628	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
40629	return c
40630}
40631
40632// PageToken sets the optional parameter "pageToken": The token returned
40633// by the previous request.
40634func (c *SettlementreportsListCall) PageToken(pageToken string) *SettlementreportsListCall {
40635	c.urlParams_.Set("pageToken", pageToken)
40636	return c
40637}
40638
40639// TransferEndDate sets the optional parameter "transferEndDate":
40640// Obtains settlements which have transactions before this date
40641// (inclusively), in ISO 8601 format.
40642func (c *SettlementreportsListCall) TransferEndDate(transferEndDate string) *SettlementreportsListCall {
40643	c.urlParams_.Set("transferEndDate", transferEndDate)
40644	return c
40645}
40646
40647// TransferStartDate sets the optional parameter "transferStartDate":
40648// Obtains settlements which have transactions after this date
40649// (inclusively), in ISO 8601 format.
40650func (c *SettlementreportsListCall) TransferStartDate(transferStartDate string) *SettlementreportsListCall {
40651	c.urlParams_.Set("transferStartDate", transferStartDate)
40652	return c
40653}
40654
40655// Fields allows partial responses to be retrieved. See
40656// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40657// for more information.
40658func (c *SettlementreportsListCall) Fields(s ...googleapi.Field) *SettlementreportsListCall {
40659	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40660	return c
40661}
40662
40663// IfNoneMatch sets the optional parameter which makes the operation
40664// fail if the object's ETag matches the given value. This is useful for
40665// getting updates only after the object has changed since the last
40666// request. Use googleapi.IsNotModified to check whether the response
40667// error from Do is the result of In-None-Match.
40668func (c *SettlementreportsListCall) IfNoneMatch(entityTag string) *SettlementreportsListCall {
40669	c.ifNoneMatch_ = entityTag
40670	return c
40671}
40672
40673// Context sets the context to be used in this call's Do method. Any
40674// pending HTTP request will be aborted if the provided context is
40675// canceled.
40676func (c *SettlementreportsListCall) Context(ctx context.Context) *SettlementreportsListCall {
40677	c.ctx_ = ctx
40678	return c
40679}
40680
40681// Header returns an http.Header that can be modified by the caller to
40682// add HTTP headers to the request.
40683func (c *SettlementreportsListCall) Header() http.Header {
40684	if c.header_ == nil {
40685		c.header_ = make(http.Header)
40686	}
40687	return c.header_
40688}
40689
40690func (c *SettlementreportsListCall) doRequest(alt string) (*http.Response, error) {
40691	reqHeaders := make(http.Header)
40692	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40693	for k, v := range c.header_ {
40694		reqHeaders[k] = v
40695	}
40696	reqHeaders.Set("User-Agent", c.s.userAgent())
40697	if c.ifNoneMatch_ != "" {
40698		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40699	}
40700	var body io.Reader = nil
40701	c.urlParams_.Set("alt", alt)
40702	c.urlParams_.Set("prettyPrint", "false")
40703	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports")
40704	urls += "?" + c.urlParams_.Encode()
40705	req, err := http.NewRequest("GET", urls, body)
40706	if err != nil {
40707		return nil, err
40708	}
40709	req.Header = reqHeaders
40710	googleapi.Expand(req.URL, map[string]string{
40711		"merchantId": strconv.FormatUint(c.merchantId, 10),
40712	})
40713	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40714}
40715
40716// Do executes the "content.settlementreports.list" call.
40717// Exactly one of *SettlementreportsListResponse or error will be
40718// non-nil. Any non-2xx status code is an error. Response headers are in
40719// either *SettlementreportsListResponse.ServerResponse.Header or (if a
40720// response was returned at all) in error.(*googleapi.Error).Header. Use
40721// googleapi.IsNotModified to check whether the returned error was
40722// because http.StatusNotModified was returned.
40723func (c *SettlementreportsListCall) Do(opts ...googleapi.CallOption) (*SettlementreportsListResponse, error) {
40724	gensupport.SetOptions(c.urlParams_, opts...)
40725	res, err := c.doRequest("json")
40726	if res != nil && res.StatusCode == http.StatusNotModified {
40727		if res.Body != nil {
40728			res.Body.Close()
40729		}
40730		return nil, &googleapi.Error{
40731			Code:   res.StatusCode,
40732			Header: res.Header,
40733		}
40734	}
40735	if err != nil {
40736		return nil, err
40737	}
40738	defer googleapi.CloseBody(res)
40739	if err := googleapi.CheckResponse(res); err != nil {
40740		return nil, err
40741	}
40742	ret := &SettlementreportsListResponse{
40743		ServerResponse: googleapi.ServerResponse{
40744			Header:         res.Header,
40745			HTTPStatusCode: res.StatusCode,
40746		},
40747	}
40748	target := &ret
40749	if err := gensupport.DecodeResponse(target, res); err != nil {
40750		return nil, err
40751	}
40752	return ret, nil
40753	// {
40754	//   "description": "Retrieves a list of settlement reports from your Merchant Center account.",
40755	//   "flatPath": "{merchantId}/settlementreports",
40756	//   "httpMethod": "GET",
40757	//   "id": "content.settlementreports.list",
40758	//   "parameterOrder": [
40759	//     "merchantId"
40760	//   ],
40761	//   "parameters": {
40762	//     "maxResults": {
40763	//       "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.",
40764	//       "format": "uint32",
40765	//       "location": "query",
40766	//       "type": "integer"
40767	//     },
40768	//     "merchantId": {
40769	//       "description": "The Merchant Center account to list settlements for.",
40770	//       "format": "uint64",
40771	//       "location": "path",
40772	//       "required": true,
40773	//       "type": "string"
40774	//     },
40775	//     "pageToken": {
40776	//       "description": "The token returned by the previous request.",
40777	//       "location": "query",
40778	//       "type": "string"
40779	//     },
40780	//     "transferEndDate": {
40781	//       "description": "Obtains settlements which have transactions before this date (inclusively), in ISO 8601 format.",
40782	//       "location": "query",
40783	//       "type": "string"
40784	//     },
40785	//     "transferStartDate": {
40786	//       "description": "Obtains settlements which have transactions after this date (inclusively), in ISO 8601 format.",
40787	//       "location": "query",
40788	//       "type": "string"
40789	//     }
40790	//   },
40791	//   "path": "{merchantId}/settlementreports",
40792	//   "response": {
40793	//     "$ref": "SettlementreportsListResponse"
40794	//   },
40795	//   "scopes": [
40796	//     "https://www.googleapis.com/auth/content"
40797	//   ]
40798	// }
40799
40800}
40801
40802// Pages invokes f for each page of results.
40803// A non-nil error returned from f will halt the iteration.
40804// The provided context supersedes any context provided to the Context method.
40805func (c *SettlementreportsListCall) Pages(ctx context.Context, f func(*SettlementreportsListResponse) error) error {
40806	c.ctx_ = ctx
40807	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
40808	for {
40809		x, err := c.Do()
40810		if err != nil {
40811			return err
40812		}
40813		if err := f(x); err != nil {
40814			return err
40815		}
40816		if x.NextPageToken == "" {
40817			return nil
40818		}
40819		c.PageToken(x.NextPageToken)
40820	}
40821}
40822
40823// method id "content.settlementtransactions.list":
40824
40825type SettlementtransactionsListCall struct {
40826	s            *APIService
40827	merchantId   uint64
40828	settlementId string
40829	urlParams_   gensupport.URLParams
40830	ifNoneMatch_ string
40831	ctx_         context.Context
40832	header_      http.Header
40833}
40834
40835// List: Retrieves a list of transactions for the settlement.
40836//
40837// - merchantId: The Merchant Center account to list transactions for.
40838// - settlementId: The Google-provided ID of the settlement.
40839func (r *SettlementtransactionsService) List(merchantId uint64, settlementId string) *SettlementtransactionsListCall {
40840	c := &SettlementtransactionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40841	c.merchantId = merchantId
40842	c.settlementId = settlementId
40843	return c
40844}
40845
40846// MaxResults sets the optional parameter "maxResults": The maximum
40847// number of transactions to return in the response, used for paging.
40848// The default value is 200 transactions per page, and the maximum
40849// allowed value is 5000 transactions per page.
40850func (c *SettlementtransactionsListCall) MaxResults(maxResults int64) *SettlementtransactionsListCall {
40851	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
40852	return c
40853}
40854
40855// PageToken sets the optional parameter "pageToken": The token returned
40856// by the previous request.
40857func (c *SettlementtransactionsListCall) PageToken(pageToken string) *SettlementtransactionsListCall {
40858	c.urlParams_.Set("pageToken", pageToken)
40859	return c
40860}
40861
40862// TransactionIds sets the optional parameter "transactionIds": The list
40863// of transactions to return. If not set, all transactions will be
40864// returned.
40865func (c *SettlementtransactionsListCall) TransactionIds(transactionIds ...string) *SettlementtransactionsListCall {
40866	c.urlParams_.SetMulti("transactionIds", append([]string{}, transactionIds...))
40867	return c
40868}
40869
40870// Fields allows partial responses to be retrieved. See
40871// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40872// for more information.
40873func (c *SettlementtransactionsListCall) Fields(s ...googleapi.Field) *SettlementtransactionsListCall {
40874	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40875	return c
40876}
40877
40878// IfNoneMatch sets the optional parameter which makes the operation
40879// fail if the object's ETag matches the given value. This is useful for
40880// getting updates only after the object has changed since the last
40881// request. Use googleapi.IsNotModified to check whether the response
40882// error from Do is the result of In-None-Match.
40883func (c *SettlementtransactionsListCall) IfNoneMatch(entityTag string) *SettlementtransactionsListCall {
40884	c.ifNoneMatch_ = entityTag
40885	return c
40886}
40887
40888// Context sets the context to be used in this call's Do method. Any
40889// pending HTTP request will be aborted if the provided context is
40890// canceled.
40891func (c *SettlementtransactionsListCall) Context(ctx context.Context) *SettlementtransactionsListCall {
40892	c.ctx_ = ctx
40893	return c
40894}
40895
40896// Header returns an http.Header that can be modified by the caller to
40897// add HTTP headers to the request.
40898func (c *SettlementtransactionsListCall) Header() http.Header {
40899	if c.header_ == nil {
40900		c.header_ = make(http.Header)
40901	}
40902	return c.header_
40903}
40904
40905func (c *SettlementtransactionsListCall) doRequest(alt string) (*http.Response, error) {
40906	reqHeaders := make(http.Header)
40907	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
40908	for k, v := range c.header_ {
40909		reqHeaders[k] = v
40910	}
40911	reqHeaders.Set("User-Agent", c.s.userAgent())
40912	if c.ifNoneMatch_ != "" {
40913		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40914	}
40915	var body io.Reader = nil
40916	c.urlParams_.Set("alt", alt)
40917	c.urlParams_.Set("prettyPrint", "false")
40918	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports/{settlementId}/transactions")
40919	urls += "?" + c.urlParams_.Encode()
40920	req, err := http.NewRequest("GET", urls, body)
40921	if err != nil {
40922		return nil, err
40923	}
40924	req.Header = reqHeaders
40925	googleapi.Expand(req.URL, map[string]string{
40926		"merchantId":   strconv.FormatUint(c.merchantId, 10),
40927		"settlementId": c.settlementId,
40928	})
40929	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40930}
40931
40932// Do executes the "content.settlementtransactions.list" call.
40933// Exactly one of *SettlementtransactionsListResponse or error will be
40934// non-nil. Any non-2xx status code is an error. Response headers are in
40935// either *SettlementtransactionsListResponse.ServerResponse.Header or
40936// (if a response was returned at all) in
40937// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
40938// whether the returned error was because http.StatusNotModified was
40939// returned.
40940func (c *SettlementtransactionsListCall) Do(opts ...googleapi.CallOption) (*SettlementtransactionsListResponse, error) {
40941	gensupport.SetOptions(c.urlParams_, opts...)
40942	res, err := c.doRequest("json")
40943	if res != nil && res.StatusCode == http.StatusNotModified {
40944		if res.Body != nil {
40945			res.Body.Close()
40946		}
40947		return nil, &googleapi.Error{
40948			Code:   res.StatusCode,
40949			Header: res.Header,
40950		}
40951	}
40952	if err != nil {
40953		return nil, err
40954	}
40955	defer googleapi.CloseBody(res)
40956	if err := googleapi.CheckResponse(res); err != nil {
40957		return nil, err
40958	}
40959	ret := &SettlementtransactionsListResponse{
40960		ServerResponse: googleapi.ServerResponse{
40961			Header:         res.Header,
40962			HTTPStatusCode: res.StatusCode,
40963		},
40964	}
40965	target := &ret
40966	if err := gensupport.DecodeResponse(target, res); err != nil {
40967		return nil, err
40968	}
40969	return ret, nil
40970	// {
40971	//   "description": "Retrieves a list of transactions for the settlement.",
40972	//   "flatPath": "{merchantId}/settlementreports/{settlementId}/transactions",
40973	//   "httpMethod": "GET",
40974	//   "id": "content.settlementtransactions.list",
40975	//   "parameterOrder": [
40976	//     "merchantId",
40977	//     "settlementId"
40978	//   ],
40979	//   "parameters": {
40980	//     "maxResults": {
40981	//       "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.",
40982	//       "format": "uint32",
40983	//       "location": "query",
40984	//       "type": "integer"
40985	//     },
40986	//     "merchantId": {
40987	//       "description": "The Merchant Center account to list transactions for.",
40988	//       "format": "uint64",
40989	//       "location": "path",
40990	//       "required": true,
40991	//       "type": "string"
40992	//     },
40993	//     "pageToken": {
40994	//       "description": "The token returned by the previous request.",
40995	//       "location": "query",
40996	//       "type": "string"
40997	//     },
40998	//     "settlementId": {
40999	//       "description": "The Google-provided ID of the settlement.",
41000	//       "location": "path",
41001	//       "required": true,
41002	//       "type": "string"
41003	//     },
41004	//     "transactionIds": {
41005	//       "description": "The list of transactions to return. If not set, all transactions will be returned.",
41006	//       "location": "query",
41007	//       "repeated": true,
41008	//       "type": "string"
41009	//     }
41010	//   },
41011	//   "path": "{merchantId}/settlementreports/{settlementId}/transactions",
41012	//   "response": {
41013	//     "$ref": "SettlementtransactionsListResponse"
41014	//   },
41015	//   "scopes": [
41016	//     "https://www.googleapis.com/auth/content"
41017	//   ]
41018	// }
41019
41020}
41021
41022// Pages invokes f for each page of results.
41023// A non-nil error returned from f will halt the iteration.
41024// The provided context supersedes any context provided to the Context method.
41025func (c *SettlementtransactionsListCall) Pages(ctx context.Context, f func(*SettlementtransactionsListResponse) error) error {
41026	c.ctx_ = ctx
41027	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
41028	for {
41029		x, err := c.Do()
41030		if err != nil {
41031			return err
41032		}
41033		if err := f(x); err != nil {
41034			return err
41035		}
41036		if x.NextPageToken == "" {
41037			return nil
41038		}
41039		c.PageToken(x.NextPageToken)
41040	}
41041}
41042
41043// method id "content.shippingsettings.custombatch":
41044
41045type ShippingsettingsCustombatchCall struct {
41046	s                                  *APIService
41047	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
41048	urlParams_                         gensupport.URLParams
41049	ctx_                               context.Context
41050	header_                            http.Header
41051}
41052
41053// Custombatch: Retrieves and updates the shipping settings of multiple
41054// accounts in a single request.
41055func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
41056	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41057	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
41058	return c
41059}
41060
41061// Fields allows partial responses to be retrieved. See
41062// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41063// for more information.
41064func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
41065	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41066	return c
41067}
41068
41069// Context sets the context to be used in this call's Do method. Any
41070// pending HTTP request will be aborted if the provided context is
41071// canceled.
41072func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
41073	c.ctx_ = ctx
41074	return c
41075}
41076
41077// Header returns an http.Header that can be modified by the caller to
41078// add HTTP headers to the request.
41079func (c *ShippingsettingsCustombatchCall) Header() http.Header {
41080	if c.header_ == nil {
41081		c.header_ = make(http.Header)
41082	}
41083	return c.header_
41084}
41085
41086func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
41087	reqHeaders := make(http.Header)
41088	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41089	for k, v := range c.header_ {
41090		reqHeaders[k] = v
41091	}
41092	reqHeaders.Set("User-Agent", c.s.userAgent())
41093	var body io.Reader = nil
41094	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
41095	if err != nil {
41096		return nil, err
41097	}
41098	reqHeaders.Set("Content-Type", "application/json")
41099	c.urlParams_.Set("alt", alt)
41100	c.urlParams_.Set("prettyPrint", "false")
41101	urls := googleapi.ResolveRelative(c.s.BasePath, "shippingsettings/batch")
41102	urls += "?" + c.urlParams_.Encode()
41103	req, err := http.NewRequest("POST", urls, body)
41104	if err != nil {
41105		return nil, err
41106	}
41107	req.Header = reqHeaders
41108	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41109}
41110
41111// Do executes the "content.shippingsettings.custombatch" call.
41112// Exactly one of *ShippingsettingsCustomBatchResponse or error will be
41113// non-nil. Any non-2xx status code is an error. Response headers are in
41114// either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
41115// (if a response was returned at all) in
41116// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
41117// whether the returned error was because http.StatusNotModified was
41118// returned.
41119func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
41120	gensupport.SetOptions(c.urlParams_, opts...)
41121	res, err := c.doRequest("json")
41122	if res != nil && res.StatusCode == http.StatusNotModified {
41123		if res.Body != nil {
41124			res.Body.Close()
41125		}
41126		return nil, &googleapi.Error{
41127			Code:   res.StatusCode,
41128			Header: res.Header,
41129		}
41130	}
41131	if err != nil {
41132		return nil, err
41133	}
41134	defer googleapi.CloseBody(res)
41135	if err := googleapi.CheckResponse(res); err != nil {
41136		return nil, err
41137	}
41138	ret := &ShippingsettingsCustomBatchResponse{
41139		ServerResponse: googleapi.ServerResponse{
41140			Header:         res.Header,
41141			HTTPStatusCode: res.StatusCode,
41142		},
41143	}
41144	target := &ret
41145	if err := gensupport.DecodeResponse(target, res); err != nil {
41146		return nil, err
41147	}
41148	return ret, nil
41149	// {
41150	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
41151	//   "flatPath": "shippingsettings/batch",
41152	//   "httpMethod": "POST",
41153	//   "id": "content.shippingsettings.custombatch",
41154	//   "parameterOrder": [],
41155	//   "parameters": {},
41156	//   "path": "shippingsettings/batch",
41157	//   "request": {
41158	//     "$ref": "ShippingsettingsCustomBatchRequest"
41159	//   },
41160	//   "response": {
41161	//     "$ref": "ShippingsettingsCustomBatchResponse"
41162	//   },
41163	//   "scopes": [
41164	//     "https://www.googleapis.com/auth/content"
41165	//   ]
41166	// }
41167
41168}
41169
41170// method id "content.shippingsettings.get":
41171
41172type ShippingsettingsGetCall struct {
41173	s            *APIService
41174	merchantId   uint64
41175	accountId    uint64
41176	urlParams_   gensupport.URLParams
41177	ifNoneMatch_ string
41178	ctx_         context.Context
41179	header_      http.Header
41180}
41181
41182// Get: Retrieves the shipping settings of the account.
41183//
41184// - accountId: The ID of the account for which to get/update shipping
41185//   settings.
41186// - merchantId: The ID of the managing account. If this parameter is
41187//   not the same as accountId, then this account must be a multi-client
41188//   account and `accountId` must be the ID of a sub-account of this
41189//   account.
41190func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
41191	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41192	c.merchantId = merchantId
41193	c.accountId = accountId
41194	return c
41195}
41196
41197// Fields allows partial responses to be retrieved. See
41198// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41199// for more information.
41200func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
41201	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41202	return c
41203}
41204
41205// IfNoneMatch sets the optional parameter which makes the operation
41206// fail if the object's ETag matches the given value. This is useful for
41207// getting updates only after the object has changed since the last
41208// request. Use googleapi.IsNotModified to check whether the response
41209// error from Do is the result of In-None-Match.
41210func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
41211	c.ifNoneMatch_ = entityTag
41212	return c
41213}
41214
41215// Context sets the context to be used in this call's Do method. Any
41216// pending HTTP request will be aborted if the provided context is
41217// canceled.
41218func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
41219	c.ctx_ = ctx
41220	return c
41221}
41222
41223// Header returns an http.Header that can be modified by the caller to
41224// add HTTP headers to the request.
41225func (c *ShippingsettingsGetCall) Header() http.Header {
41226	if c.header_ == nil {
41227		c.header_ = make(http.Header)
41228	}
41229	return c.header_
41230}
41231
41232func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
41233	reqHeaders := make(http.Header)
41234	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41235	for k, v := range c.header_ {
41236		reqHeaders[k] = v
41237	}
41238	reqHeaders.Set("User-Agent", c.s.userAgent())
41239	if c.ifNoneMatch_ != "" {
41240		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41241	}
41242	var body io.Reader = nil
41243	c.urlParams_.Set("alt", alt)
41244	c.urlParams_.Set("prettyPrint", "false")
41245	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
41246	urls += "?" + c.urlParams_.Encode()
41247	req, err := http.NewRequest("GET", urls, body)
41248	if err != nil {
41249		return nil, err
41250	}
41251	req.Header = reqHeaders
41252	googleapi.Expand(req.URL, map[string]string{
41253		"merchantId": strconv.FormatUint(c.merchantId, 10),
41254		"accountId":  strconv.FormatUint(c.accountId, 10),
41255	})
41256	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41257}
41258
41259// Do executes the "content.shippingsettings.get" call.
41260// Exactly one of *ShippingSettings or error will be non-nil. Any
41261// non-2xx status code is an error. Response headers are in either
41262// *ShippingSettings.ServerResponse.Header or (if a response was
41263// returned at all) in error.(*googleapi.Error).Header. Use
41264// googleapi.IsNotModified to check whether the returned error was
41265// because http.StatusNotModified was returned.
41266func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
41267	gensupport.SetOptions(c.urlParams_, opts...)
41268	res, err := c.doRequest("json")
41269	if res != nil && res.StatusCode == http.StatusNotModified {
41270		if res.Body != nil {
41271			res.Body.Close()
41272		}
41273		return nil, &googleapi.Error{
41274			Code:   res.StatusCode,
41275			Header: res.Header,
41276		}
41277	}
41278	if err != nil {
41279		return nil, err
41280	}
41281	defer googleapi.CloseBody(res)
41282	if err := googleapi.CheckResponse(res); err != nil {
41283		return nil, err
41284	}
41285	ret := &ShippingSettings{
41286		ServerResponse: googleapi.ServerResponse{
41287			Header:         res.Header,
41288			HTTPStatusCode: res.StatusCode,
41289		},
41290	}
41291	target := &ret
41292	if err := gensupport.DecodeResponse(target, res); err != nil {
41293		return nil, err
41294	}
41295	return ret, nil
41296	// {
41297	//   "description": "Retrieves the shipping settings of the account.",
41298	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
41299	//   "httpMethod": "GET",
41300	//   "id": "content.shippingsettings.get",
41301	//   "parameterOrder": [
41302	//     "merchantId",
41303	//     "accountId"
41304	//   ],
41305	//   "parameters": {
41306	//     "accountId": {
41307	//       "description": "The ID of the account for which to get/update shipping settings.",
41308	//       "format": "uint64",
41309	//       "location": "path",
41310	//       "required": true,
41311	//       "type": "string"
41312	//     },
41313	//     "merchantId": {
41314	//       "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.",
41315	//       "format": "uint64",
41316	//       "location": "path",
41317	//       "required": true,
41318	//       "type": "string"
41319	//     }
41320	//   },
41321	//   "path": "{merchantId}/shippingsettings/{accountId}",
41322	//   "response": {
41323	//     "$ref": "ShippingSettings"
41324	//   },
41325	//   "scopes": [
41326	//     "https://www.googleapis.com/auth/content"
41327	//   ]
41328	// }
41329
41330}
41331
41332// method id "content.shippingsettings.getsupportedcarriers":
41333
41334type ShippingsettingsGetsupportedcarriersCall struct {
41335	s            *APIService
41336	merchantId   uint64
41337	urlParams_   gensupport.URLParams
41338	ifNoneMatch_ string
41339	ctx_         context.Context
41340	header_      http.Header
41341}
41342
41343// Getsupportedcarriers: Retrieves supported carriers and carrier
41344// services for an account.
41345//
41346// - merchantId: The ID of the account for which to retrieve the
41347//   supported carriers.
41348func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
41349	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41350	c.merchantId = merchantId
41351	return c
41352}
41353
41354// Fields allows partial responses to be retrieved. See
41355// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41356// for more information.
41357func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
41358	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41359	return c
41360}
41361
41362// IfNoneMatch sets the optional parameter which makes the operation
41363// fail if the object's ETag matches the given value. This is useful for
41364// getting updates only after the object has changed since the last
41365// request. Use googleapi.IsNotModified to check whether the response
41366// error from Do is the result of In-None-Match.
41367func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
41368	c.ifNoneMatch_ = entityTag
41369	return c
41370}
41371
41372// Context sets the context to be used in this call's Do method. Any
41373// pending HTTP request will be aborted if the provided context is
41374// canceled.
41375func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
41376	c.ctx_ = ctx
41377	return c
41378}
41379
41380// Header returns an http.Header that can be modified by the caller to
41381// add HTTP headers to the request.
41382func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
41383	if c.header_ == nil {
41384		c.header_ = make(http.Header)
41385	}
41386	return c.header_
41387}
41388
41389func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
41390	reqHeaders := make(http.Header)
41391	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41392	for k, v := range c.header_ {
41393		reqHeaders[k] = v
41394	}
41395	reqHeaders.Set("User-Agent", c.s.userAgent())
41396	if c.ifNoneMatch_ != "" {
41397		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41398	}
41399	var body io.Reader = nil
41400	c.urlParams_.Set("alt", alt)
41401	c.urlParams_.Set("prettyPrint", "false")
41402	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedCarriers")
41403	urls += "?" + c.urlParams_.Encode()
41404	req, err := http.NewRequest("GET", urls, body)
41405	if err != nil {
41406		return nil, err
41407	}
41408	req.Header = reqHeaders
41409	googleapi.Expand(req.URL, map[string]string{
41410		"merchantId": strconv.FormatUint(c.merchantId, 10),
41411	})
41412	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41413}
41414
41415// Do executes the "content.shippingsettings.getsupportedcarriers" call.
41416// Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
41417// will be non-nil. Any non-2xx status code is an error. Response
41418// headers are in either
41419// *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
41420// or (if a response was returned at all) in
41421// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
41422// whether the returned error was because http.StatusNotModified was
41423// returned.
41424func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
41425	gensupport.SetOptions(c.urlParams_, opts...)
41426	res, err := c.doRequest("json")
41427	if res != nil && res.StatusCode == http.StatusNotModified {
41428		if res.Body != nil {
41429			res.Body.Close()
41430		}
41431		return nil, &googleapi.Error{
41432			Code:   res.StatusCode,
41433			Header: res.Header,
41434		}
41435	}
41436	if err != nil {
41437		return nil, err
41438	}
41439	defer googleapi.CloseBody(res)
41440	if err := googleapi.CheckResponse(res); err != nil {
41441		return nil, err
41442	}
41443	ret := &ShippingsettingsGetSupportedCarriersResponse{
41444		ServerResponse: googleapi.ServerResponse{
41445			Header:         res.Header,
41446			HTTPStatusCode: res.StatusCode,
41447		},
41448	}
41449	target := &ret
41450	if err := gensupport.DecodeResponse(target, res); err != nil {
41451		return nil, err
41452	}
41453	return ret, nil
41454	// {
41455	//   "description": "Retrieves supported carriers and carrier services for an account.",
41456	//   "flatPath": "{merchantId}/supportedCarriers",
41457	//   "httpMethod": "GET",
41458	//   "id": "content.shippingsettings.getsupportedcarriers",
41459	//   "parameterOrder": [
41460	//     "merchantId"
41461	//   ],
41462	//   "parameters": {
41463	//     "merchantId": {
41464	//       "description": "The ID of the account for which to retrieve the supported carriers.",
41465	//       "format": "uint64",
41466	//       "location": "path",
41467	//       "required": true,
41468	//       "type": "string"
41469	//     }
41470	//   },
41471	//   "path": "{merchantId}/supportedCarriers",
41472	//   "response": {
41473	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
41474	//   },
41475	//   "scopes": [
41476	//     "https://www.googleapis.com/auth/content"
41477	//   ]
41478	// }
41479
41480}
41481
41482// method id "content.shippingsettings.getsupportedholidays":
41483
41484type ShippingsettingsGetsupportedholidaysCall struct {
41485	s            *APIService
41486	merchantId   uint64
41487	urlParams_   gensupport.URLParams
41488	ifNoneMatch_ string
41489	ctx_         context.Context
41490	header_      http.Header
41491}
41492
41493// Getsupportedholidays: Retrieves supported holidays for an account.
41494//
41495// - merchantId: The ID of the account for which to retrieve the
41496//   supported holidays.
41497func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
41498	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41499	c.merchantId = merchantId
41500	return c
41501}
41502
41503// Fields allows partial responses to be retrieved. See
41504// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41505// for more information.
41506func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
41507	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41508	return c
41509}
41510
41511// IfNoneMatch sets the optional parameter which makes the operation
41512// fail if the object's ETag matches the given value. This is useful for
41513// getting updates only after the object has changed since the last
41514// request. Use googleapi.IsNotModified to check whether the response
41515// error from Do is the result of In-None-Match.
41516func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
41517	c.ifNoneMatch_ = entityTag
41518	return c
41519}
41520
41521// Context sets the context to be used in this call's Do method. Any
41522// pending HTTP request will be aborted if the provided context is
41523// canceled.
41524func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
41525	c.ctx_ = ctx
41526	return c
41527}
41528
41529// Header returns an http.Header that can be modified by the caller to
41530// add HTTP headers to the request.
41531func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
41532	if c.header_ == nil {
41533		c.header_ = make(http.Header)
41534	}
41535	return c.header_
41536}
41537
41538func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
41539	reqHeaders := make(http.Header)
41540	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41541	for k, v := range c.header_ {
41542		reqHeaders[k] = v
41543	}
41544	reqHeaders.Set("User-Agent", c.s.userAgent())
41545	if c.ifNoneMatch_ != "" {
41546		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41547	}
41548	var body io.Reader = nil
41549	c.urlParams_.Set("alt", alt)
41550	c.urlParams_.Set("prettyPrint", "false")
41551	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedHolidays")
41552	urls += "?" + c.urlParams_.Encode()
41553	req, err := http.NewRequest("GET", urls, body)
41554	if err != nil {
41555		return nil, err
41556	}
41557	req.Header = reqHeaders
41558	googleapi.Expand(req.URL, map[string]string{
41559		"merchantId": strconv.FormatUint(c.merchantId, 10),
41560	})
41561	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41562}
41563
41564// Do executes the "content.shippingsettings.getsupportedholidays" call.
41565// Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
41566// will be non-nil. Any non-2xx status code is an error. Response
41567// headers are in either
41568// *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
41569// or (if a response was returned at all) in
41570// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
41571// whether the returned error was because http.StatusNotModified was
41572// returned.
41573func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
41574	gensupport.SetOptions(c.urlParams_, opts...)
41575	res, err := c.doRequest("json")
41576	if res != nil && res.StatusCode == http.StatusNotModified {
41577		if res.Body != nil {
41578			res.Body.Close()
41579		}
41580		return nil, &googleapi.Error{
41581			Code:   res.StatusCode,
41582			Header: res.Header,
41583		}
41584	}
41585	if err != nil {
41586		return nil, err
41587	}
41588	defer googleapi.CloseBody(res)
41589	if err := googleapi.CheckResponse(res); err != nil {
41590		return nil, err
41591	}
41592	ret := &ShippingsettingsGetSupportedHolidaysResponse{
41593		ServerResponse: googleapi.ServerResponse{
41594			Header:         res.Header,
41595			HTTPStatusCode: res.StatusCode,
41596		},
41597	}
41598	target := &ret
41599	if err := gensupport.DecodeResponse(target, res); err != nil {
41600		return nil, err
41601	}
41602	return ret, nil
41603	// {
41604	//   "description": "Retrieves supported holidays for an account.",
41605	//   "flatPath": "{merchantId}/supportedHolidays",
41606	//   "httpMethod": "GET",
41607	//   "id": "content.shippingsettings.getsupportedholidays",
41608	//   "parameterOrder": [
41609	//     "merchantId"
41610	//   ],
41611	//   "parameters": {
41612	//     "merchantId": {
41613	//       "description": "The ID of the account for which to retrieve the supported holidays.",
41614	//       "format": "uint64",
41615	//       "location": "path",
41616	//       "required": true,
41617	//       "type": "string"
41618	//     }
41619	//   },
41620	//   "path": "{merchantId}/supportedHolidays",
41621	//   "response": {
41622	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
41623	//   },
41624	//   "scopes": [
41625	//     "https://www.googleapis.com/auth/content"
41626	//   ]
41627	// }
41628
41629}
41630
41631// method id "content.shippingsettings.getsupportedpickupservices":
41632
41633type ShippingsettingsGetsupportedpickupservicesCall struct {
41634	s            *APIService
41635	merchantId   uint64
41636	urlParams_   gensupport.URLParams
41637	ifNoneMatch_ string
41638	ctx_         context.Context
41639	header_      http.Header
41640}
41641
41642// Getsupportedpickupservices: Retrieves supported pickup services for
41643// an account.
41644//
41645// - merchantId: The ID of the account for which to retrieve the
41646//   supported pickup services.
41647func (r *ShippingsettingsService) Getsupportedpickupservices(merchantId uint64) *ShippingsettingsGetsupportedpickupservicesCall {
41648	c := &ShippingsettingsGetsupportedpickupservicesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41649	c.merchantId = merchantId
41650	return c
41651}
41652
41653// Fields allows partial responses to be retrieved. See
41654// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41655// for more information.
41656func (c *ShippingsettingsGetsupportedpickupservicesCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedpickupservicesCall {
41657	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41658	return c
41659}
41660
41661// IfNoneMatch sets the optional parameter which makes the operation
41662// fail if the object's ETag matches the given value. This is useful for
41663// getting updates only after the object has changed since the last
41664// request. Use googleapi.IsNotModified to check whether the response
41665// error from Do is the result of In-None-Match.
41666func (c *ShippingsettingsGetsupportedpickupservicesCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedpickupservicesCall {
41667	c.ifNoneMatch_ = entityTag
41668	return c
41669}
41670
41671// Context sets the context to be used in this call's Do method. Any
41672// pending HTTP request will be aborted if the provided context is
41673// canceled.
41674func (c *ShippingsettingsGetsupportedpickupservicesCall) Context(ctx context.Context) *ShippingsettingsGetsupportedpickupservicesCall {
41675	c.ctx_ = ctx
41676	return c
41677}
41678
41679// Header returns an http.Header that can be modified by the caller to
41680// add HTTP headers to the request.
41681func (c *ShippingsettingsGetsupportedpickupservicesCall) Header() http.Header {
41682	if c.header_ == nil {
41683		c.header_ = make(http.Header)
41684	}
41685	return c.header_
41686}
41687
41688func (c *ShippingsettingsGetsupportedpickupservicesCall) doRequest(alt string) (*http.Response, error) {
41689	reqHeaders := make(http.Header)
41690	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41691	for k, v := range c.header_ {
41692		reqHeaders[k] = v
41693	}
41694	reqHeaders.Set("User-Agent", c.s.userAgent())
41695	if c.ifNoneMatch_ != "" {
41696		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41697	}
41698	var body io.Reader = nil
41699	c.urlParams_.Set("alt", alt)
41700	c.urlParams_.Set("prettyPrint", "false")
41701	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedPickupServices")
41702	urls += "?" + c.urlParams_.Encode()
41703	req, err := http.NewRequest("GET", urls, body)
41704	if err != nil {
41705		return nil, err
41706	}
41707	req.Header = reqHeaders
41708	googleapi.Expand(req.URL, map[string]string{
41709		"merchantId": strconv.FormatUint(c.merchantId, 10),
41710	})
41711	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41712}
41713
41714// Do executes the "content.shippingsettings.getsupportedpickupservices" call.
41715// Exactly one of *ShippingsettingsGetSupportedPickupServicesResponse or
41716// error will be non-nil. Any non-2xx status code is an error. Response
41717// headers are in either
41718// *ShippingsettingsGetSupportedPickupServicesResponse.ServerResponse.Hea
41719// der or (if a response was returned at all) in
41720// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
41721// whether the returned error was because http.StatusNotModified was
41722// returned.
41723func (c *ShippingsettingsGetsupportedpickupservicesCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedPickupServicesResponse, error) {
41724	gensupport.SetOptions(c.urlParams_, opts...)
41725	res, err := c.doRequest("json")
41726	if res != nil && res.StatusCode == http.StatusNotModified {
41727		if res.Body != nil {
41728			res.Body.Close()
41729		}
41730		return nil, &googleapi.Error{
41731			Code:   res.StatusCode,
41732			Header: res.Header,
41733		}
41734	}
41735	if err != nil {
41736		return nil, err
41737	}
41738	defer googleapi.CloseBody(res)
41739	if err := googleapi.CheckResponse(res); err != nil {
41740		return nil, err
41741	}
41742	ret := &ShippingsettingsGetSupportedPickupServicesResponse{
41743		ServerResponse: googleapi.ServerResponse{
41744			Header:         res.Header,
41745			HTTPStatusCode: res.StatusCode,
41746		},
41747	}
41748	target := &ret
41749	if err := gensupport.DecodeResponse(target, res); err != nil {
41750		return nil, err
41751	}
41752	return ret, nil
41753	// {
41754	//   "description": "Retrieves supported pickup services for an account.",
41755	//   "flatPath": "{merchantId}/supportedPickupServices",
41756	//   "httpMethod": "GET",
41757	//   "id": "content.shippingsettings.getsupportedpickupservices",
41758	//   "parameterOrder": [
41759	//     "merchantId"
41760	//   ],
41761	//   "parameters": {
41762	//     "merchantId": {
41763	//       "description": "The ID of the account for which to retrieve the supported pickup services.",
41764	//       "format": "uint64",
41765	//       "location": "path",
41766	//       "required": true,
41767	//       "type": "string"
41768	//     }
41769	//   },
41770	//   "path": "{merchantId}/supportedPickupServices",
41771	//   "response": {
41772	//     "$ref": "ShippingsettingsGetSupportedPickupServicesResponse"
41773	//   },
41774	//   "scopes": [
41775	//     "https://www.googleapis.com/auth/content"
41776	//   ]
41777	// }
41778
41779}
41780
41781// method id "content.shippingsettings.list":
41782
41783type ShippingsettingsListCall struct {
41784	s            *APIService
41785	merchantId   uint64
41786	urlParams_   gensupport.URLParams
41787	ifNoneMatch_ string
41788	ctx_         context.Context
41789	header_      http.Header
41790}
41791
41792// List: Lists the shipping settings of the sub-accounts in your
41793// Merchant Center account.
41794//
41795// - merchantId: The ID of the managing account. This must be a
41796//   multi-client account.
41797func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
41798	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41799	c.merchantId = merchantId
41800	return c
41801}
41802
41803// MaxResults sets the optional parameter "maxResults": The maximum
41804// number of shipping settings to return in the response, used for
41805// paging.
41806func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
41807	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
41808	return c
41809}
41810
41811// PageToken sets the optional parameter "pageToken": The token returned
41812// by the previous request.
41813func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
41814	c.urlParams_.Set("pageToken", pageToken)
41815	return c
41816}
41817
41818// Fields allows partial responses to be retrieved. See
41819// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41820// for more information.
41821func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
41822	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41823	return c
41824}
41825
41826// IfNoneMatch sets the optional parameter which makes the operation
41827// fail if the object's ETag matches the given value. This is useful for
41828// getting updates only after the object has changed since the last
41829// request. Use googleapi.IsNotModified to check whether the response
41830// error from Do is the result of In-None-Match.
41831func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
41832	c.ifNoneMatch_ = entityTag
41833	return c
41834}
41835
41836// Context sets the context to be used in this call's Do method. Any
41837// pending HTTP request will be aborted if the provided context is
41838// canceled.
41839func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
41840	c.ctx_ = ctx
41841	return c
41842}
41843
41844// Header returns an http.Header that can be modified by the caller to
41845// add HTTP headers to the request.
41846func (c *ShippingsettingsListCall) Header() http.Header {
41847	if c.header_ == nil {
41848		c.header_ = make(http.Header)
41849	}
41850	return c.header_
41851}
41852
41853func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
41854	reqHeaders := make(http.Header)
41855	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
41856	for k, v := range c.header_ {
41857		reqHeaders[k] = v
41858	}
41859	reqHeaders.Set("User-Agent", c.s.userAgent())
41860	if c.ifNoneMatch_ != "" {
41861		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41862	}
41863	var body io.Reader = nil
41864	c.urlParams_.Set("alt", alt)
41865	c.urlParams_.Set("prettyPrint", "false")
41866	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings")
41867	urls += "?" + c.urlParams_.Encode()
41868	req, err := http.NewRequest("GET", urls, body)
41869	if err != nil {
41870		return nil, err
41871	}
41872	req.Header = reqHeaders
41873	googleapi.Expand(req.URL, map[string]string{
41874		"merchantId": strconv.FormatUint(c.merchantId, 10),
41875	})
41876	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41877}
41878
41879// Do executes the "content.shippingsettings.list" call.
41880// Exactly one of *ShippingsettingsListResponse or error will be
41881// non-nil. Any non-2xx status code is an error. Response headers are in
41882// either *ShippingsettingsListResponse.ServerResponse.Header or (if a
41883// response was returned at all) in error.(*googleapi.Error).Header. Use
41884// googleapi.IsNotModified to check whether the returned error was
41885// because http.StatusNotModified was returned.
41886func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
41887	gensupport.SetOptions(c.urlParams_, opts...)
41888	res, err := c.doRequest("json")
41889	if res != nil && res.StatusCode == http.StatusNotModified {
41890		if res.Body != nil {
41891			res.Body.Close()
41892		}
41893		return nil, &googleapi.Error{
41894			Code:   res.StatusCode,
41895			Header: res.Header,
41896		}
41897	}
41898	if err != nil {
41899		return nil, err
41900	}
41901	defer googleapi.CloseBody(res)
41902	if err := googleapi.CheckResponse(res); err != nil {
41903		return nil, err
41904	}
41905	ret := &ShippingsettingsListResponse{
41906		ServerResponse: googleapi.ServerResponse{
41907			Header:         res.Header,
41908			HTTPStatusCode: res.StatusCode,
41909		},
41910	}
41911	target := &ret
41912	if err := gensupport.DecodeResponse(target, res); err != nil {
41913		return nil, err
41914	}
41915	return ret, nil
41916	// {
41917	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
41918	//   "flatPath": "{merchantId}/shippingsettings",
41919	//   "httpMethod": "GET",
41920	//   "id": "content.shippingsettings.list",
41921	//   "parameterOrder": [
41922	//     "merchantId"
41923	//   ],
41924	//   "parameters": {
41925	//     "maxResults": {
41926	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
41927	//       "format": "uint32",
41928	//       "location": "query",
41929	//       "type": "integer"
41930	//     },
41931	//     "merchantId": {
41932	//       "description": "The ID of the managing account. This must be a multi-client account.",
41933	//       "format": "uint64",
41934	//       "location": "path",
41935	//       "required": true,
41936	//       "type": "string"
41937	//     },
41938	//     "pageToken": {
41939	//       "description": "The token returned by the previous request.",
41940	//       "location": "query",
41941	//       "type": "string"
41942	//     }
41943	//   },
41944	//   "path": "{merchantId}/shippingsettings",
41945	//   "response": {
41946	//     "$ref": "ShippingsettingsListResponse"
41947	//   },
41948	//   "scopes": [
41949	//     "https://www.googleapis.com/auth/content"
41950	//   ]
41951	// }
41952
41953}
41954
41955// Pages invokes f for each page of results.
41956// A non-nil error returned from f will halt the iteration.
41957// The provided context supersedes any context provided to the Context method.
41958func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
41959	c.ctx_ = ctx
41960	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
41961	for {
41962		x, err := c.Do()
41963		if err != nil {
41964			return err
41965		}
41966		if err := f(x); err != nil {
41967			return err
41968		}
41969		if x.NextPageToken == "" {
41970			return nil
41971		}
41972		c.PageToken(x.NextPageToken)
41973	}
41974}
41975
41976// method id "content.shippingsettings.update":
41977
41978type ShippingsettingsUpdateCall struct {
41979	s                *APIService
41980	merchantId       uint64
41981	accountId        uint64
41982	shippingsettings *ShippingSettings
41983	urlParams_       gensupport.URLParams
41984	ctx_             context.Context
41985	header_          http.Header
41986}
41987
41988// Update: Updates the shipping settings of the account. Any fields that
41989// are not provided are deleted from the resource.
41990//
41991// - accountId: The ID of the account for which to get/update shipping
41992//   settings.
41993// - merchantId: The ID of the managing account. If this parameter is
41994//   not the same as accountId, then this account must be a multi-client
41995//   account and `accountId` must be the ID of a sub-account of this
41996//   account.
41997func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
41998	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41999	c.merchantId = merchantId
42000	c.accountId = accountId
42001	c.shippingsettings = shippingsettings
42002	return c
42003}
42004
42005// Fields allows partial responses to be retrieved. See
42006// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42007// for more information.
42008func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
42009	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42010	return c
42011}
42012
42013// Context sets the context to be used in this call's Do method. Any
42014// pending HTTP request will be aborted if the provided context is
42015// canceled.
42016func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
42017	c.ctx_ = ctx
42018	return c
42019}
42020
42021// Header returns an http.Header that can be modified by the caller to
42022// add HTTP headers to the request.
42023func (c *ShippingsettingsUpdateCall) Header() http.Header {
42024	if c.header_ == nil {
42025		c.header_ = make(http.Header)
42026	}
42027	return c.header_
42028}
42029
42030func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
42031	reqHeaders := make(http.Header)
42032	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42033	for k, v := range c.header_ {
42034		reqHeaders[k] = v
42035	}
42036	reqHeaders.Set("User-Agent", c.s.userAgent())
42037	var body io.Reader = nil
42038	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
42039	if err != nil {
42040		return nil, err
42041	}
42042	reqHeaders.Set("Content-Type", "application/json")
42043	c.urlParams_.Set("alt", alt)
42044	c.urlParams_.Set("prettyPrint", "false")
42045	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
42046	urls += "?" + c.urlParams_.Encode()
42047	req, err := http.NewRequest("PUT", urls, body)
42048	if err != nil {
42049		return nil, err
42050	}
42051	req.Header = reqHeaders
42052	googleapi.Expand(req.URL, map[string]string{
42053		"merchantId": strconv.FormatUint(c.merchantId, 10),
42054		"accountId":  strconv.FormatUint(c.accountId, 10),
42055	})
42056	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42057}
42058
42059// Do executes the "content.shippingsettings.update" call.
42060// Exactly one of *ShippingSettings or error will be non-nil. Any
42061// non-2xx status code is an error. Response headers are in either
42062// *ShippingSettings.ServerResponse.Header or (if a response was
42063// returned at all) in error.(*googleapi.Error).Header. Use
42064// googleapi.IsNotModified to check whether the returned error was
42065// because http.StatusNotModified was returned.
42066func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
42067	gensupport.SetOptions(c.urlParams_, opts...)
42068	res, err := c.doRequest("json")
42069	if res != nil && res.StatusCode == http.StatusNotModified {
42070		if res.Body != nil {
42071			res.Body.Close()
42072		}
42073		return nil, &googleapi.Error{
42074			Code:   res.StatusCode,
42075			Header: res.Header,
42076		}
42077	}
42078	if err != nil {
42079		return nil, err
42080	}
42081	defer googleapi.CloseBody(res)
42082	if err := googleapi.CheckResponse(res); err != nil {
42083		return nil, err
42084	}
42085	ret := &ShippingSettings{
42086		ServerResponse: googleapi.ServerResponse{
42087			Header:         res.Header,
42088			HTTPStatusCode: res.StatusCode,
42089		},
42090	}
42091	target := &ret
42092	if err := gensupport.DecodeResponse(target, res); err != nil {
42093		return nil, err
42094	}
42095	return ret, nil
42096	// {
42097	//   "description": "Updates the shipping settings of the account. Any fields that are not provided are deleted from the resource.",
42098	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
42099	//   "httpMethod": "PUT",
42100	//   "id": "content.shippingsettings.update",
42101	//   "parameterOrder": [
42102	//     "merchantId",
42103	//     "accountId"
42104	//   ],
42105	//   "parameters": {
42106	//     "accountId": {
42107	//       "description": "The ID of the account for which to get/update shipping settings.",
42108	//       "format": "uint64",
42109	//       "location": "path",
42110	//       "required": true,
42111	//       "type": "string"
42112	//     },
42113	//     "merchantId": {
42114	//       "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.",
42115	//       "format": "uint64",
42116	//       "location": "path",
42117	//       "required": true,
42118	//       "type": "string"
42119	//     }
42120	//   },
42121	//   "path": "{merchantId}/shippingsettings/{accountId}",
42122	//   "request": {
42123	//     "$ref": "ShippingSettings"
42124	//   },
42125	//   "response": {
42126	//     "$ref": "ShippingSettings"
42127	//   },
42128	//   "scopes": [
42129	//     "https://www.googleapis.com/auth/content"
42130	//   ]
42131	// }
42132
42133}
42134
42135// method id "content.shoppingadsprogram.get":
42136
42137type ShoppingadsprogramGetCall struct {
42138	s            *APIService
42139	merchantId   int64
42140	urlParams_   gensupport.URLParams
42141	ifNoneMatch_ string
42142	ctx_         context.Context
42143	header_      http.Header
42144}
42145
42146// Get: Retrieves the status and review eligibility for the Shopping Ads
42147// program.
42148//
42149// - merchantId: The ID of the account.
42150func (r *ShoppingadsprogramService) Get(merchantId int64) *ShoppingadsprogramGetCall {
42151	c := &ShoppingadsprogramGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42152	c.merchantId = merchantId
42153	return c
42154}
42155
42156// Fields allows partial responses to be retrieved. See
42157// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42158// for more information.
42159func (c *ShoppingadsprogramGetCall) Fields(s ...googleapi.Field) *ShoppingadsprogramGetCall {
42160	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42161	return c
42162}
42163
42164// IfNoneMatch sets the optional parameter which makes the operation
42165// fail if the object's ETag matches the given value. This is useful for
42166// getting updates only after the object has changed since the last
42167// request. Use googleapi.IsNotModified to check whether the response
42168// error from Do is the result of In-None-Match.
42169func (c *ShoppingadsprogramGetCall) IfNoneMatch(entityTag string) *ShoppingadsprogramGetCall {
42170	c.ifNoneMatch_ = entityTag
42171	return c
42172}
42173
42174// Context sets the context to be used in this call's Do method. Any
42175// pending HTTP request will be aborted if the provided context is
42176// canceled.
42177func (c *ShoppingadsprogramGetCall) Context(ctx context.Context) *ShoppingadsprogramGetCall {
42178	c.ctx_ = ctx
42179	return c
42180}
42181
42182// Header returns an http.Header that can be modified by the caller to
42183// add HTTP headers to the request.
42184func (c *ShoppingadsprogramGetCall) Header() http.Header {
42185	if c.header_ == nil {
42186		c.header_ = make(http.Header)
42187	}
42188	return c.header_
42189}
42190
42191func (c *ShoppingadsprogramGetCall) doRequest(alt string) (*http.Response, error) {
42192	reqHeaders := make(http.Header)
42193	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42194	for k, v := range c.header_ {
42195		reqHeaders[k] = v
42196	}
42197	reqHeaders.Set("User-Agent", c.s.userAgent())
42198	if c.ifNoneMatch_ != "" {
42199		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42200	}
42201	var body io.Reader = nil
42202	c.urlParams_.Set("alt", alt)
42203	c.urlParams_.Set("prettyPrint", "false")
42204	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shoppingadsprogram")
42205	urls += "?" + c.urlParams_.Encode()
42206	req, err := http.NewRequest("GET", urls, body)
42207	if err != nil {
42208		return nil, err
42209	}
42210	req.Header = reqHeaders
42211	googleapi.Expand(req.URL, map[string]string{
42212		"merchantId": strconv.FormatInt(c.merchantId, 10),
42213	})
42214	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42215}
42216
42217// Do executes the "content.shoppingadsprogram.get" call.
42218// Exactly one of *ShoppingAdsProgramStatus or error will be non-nil.
42219// Any non-2xx status code is an error. Response headers are in either
42220// *ShoppingAdsProgramStatus.ServerResponse.Header or (if a response was
42221// returned at all) in error.(*googleapi.Error).Header. Use
42222// googleapi.IsNotModified to check whether the returned error was
42223// because http.StatusNotModified was returned.
42224func (c *ShoppingadsprogramGetCall) Do(opts ...googleapi.CallOption) (*ShoppingAdsProgramStatus, error) {
42225	gensupport.SetOptions(c.urlParams_, opts...)
42226	res, err := c.doRequest("json")
42227	if res != nil && res.StatusCode == http.StatusNotModified {
42228		if res.Body != nil {
42229			res.Body.Close()
42230		}
42231		return nil, &googleapi.Error{
42232			Code:   res.StatusCode,
42233			Header: res.Header,
42234		}
42235	}
42236	if err != nil {
42237		return nil, err
42238	}
42239	defer googleapi.CloseBody(res)
42240	if err := googleapi.CheckResponse(res); err != nil {
42241		return nil, err
42242	}
42243	ret := &ShoppingAdsProgramStatus{
42244		ServerResponse: googleapi.ServerResponse{
42245			Header:         res.Header,
42246			HTTPStatusCode: res.StatusCode,
42247		},
42248	}
42249	target := &ret
42250	if err := gensupport.DecodeResponse(target, res); err != nil {
42251		return nil, err
42252	}
42253	return ret, nil
42254	// {
42255	//   "description": "Retrieves the status and review eligibility for the Shopping Ads program.",
42256	//   "flatPath": "{merchantId}/shoppingadsprogram",
42257	//   "httpMethod": "GET",
42258	//   "id": "content.shoppingadsprogram.get",
42259	//   "parameterOrder": [
42260	//     "merchantId"
42261	//   ],
42262	//   "parameters": {
42263	//     "merchantId": {
42264	//       "description": "Required. The ID of the account.",
42265	//       "format": "int64",
42266	//       "location": "path",
42267	//       "required": true,
42268	//       "type": "string"
42269	//     }
42270	//   },
42271	//   "path": "{merchantId}/shoppingadsprogram",
42272	//   "response": {
42273	//     "$ref": "ShoppingAdsProgramStatus"
42274	//   },
42275	//   "scopes": [
42276	//     "https://www.googleapis.com/auth/content"
42277	//   ]
42278	// }
42279
42280}
42281
42282// method id "content.shoppingadsprogram.requestreview":
42283
42284type ShoppingadsprogramRequestreviewCall struct {
42285	s                               *APIService
42286	merchantId                      int64
42287	requestreviewshoppingadsrequest *RequestReviewShoppingAdsRequest
42288	urlParams_                      gensupport.URLParams
42289	ctx_                            context.Context
42290	header_                         http.Header
42291}
42292
42293// Requestreview: Requests a review for Shopping Ads program in the
42294// provided country.
42295//
42296// - merchantId: The ID of the account.
42297func (r *ShoppingadsprogramService) Requestreview(merchantId int64, requestreviewshoppingadsrequest *RequestReviewShoppingAdsRequest) *ShoppingadsprogramRequestreviewCall {
42298	c := &ShoppingadsprogramRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42299	c.merchantId = merchantId
42300	c.requestreviewshoppingadsrequest = requestreviewshoppingadsrequest
42301	return c
42302}
42303
42304// Fields allows partial responses to be retrieved. See
42305// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42306// for more information.
42307func (c *ShoppingadsprogramRequestreviewCall) Fields(s ...googleapi.Field) *ShoppingadsprogramRequestreviewCall {
42308	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42309	return c
42310}
42311
42312// Context sets the context to be used in this call's Do method. Any
42313// pending HTTP request will be aborted if the provided context is
42314// canceled.
42315func (c *ShoppingadsprogramRequestreviewCall) Context(ctx context.Context) *ShoppingadsprogramRequestreviewCall {
42316	c.ctx_ = ctx
42317	return c
42318}
42319
42320// Header returns an http.Header that can be modified by the caller to
42321// add HTTP headers to the request.
42322func (c *ShoppingadsprogramRequestreviewCall) Header() http.Header {
42323	if c.header_ == nil {
42324		c.header_ = make(http.Header)
42325	}
42326	return c.header_
42327}
42328
42329func (c *ShoppingadsprogramRequestreviewCall) doRequest(alt string) (*http.Response, error) {
42330	reqHeaders := make(http.Header)
42331	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812")
42332	for k, v := range c.header_ {
42333		reqHeaders[k] = v
42334	}
42335	reqHeaders.Set("User-Agent", c.s.userAgent())
42336	var body io.Reader = nil
42337	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewshoppingadsrequest)
42338	if err != nil {
42339		return nil, err
42340	}
42341	reqHeaders.Set("Content-Type", "application/json")
42342	c.urlParams_.Set("alt", alt)
42343	c.urlParams_.Set("prettyPrint", "false")
42344	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shoppingadsprogram/requestreview")
42345	urls += "?" + c.urlParams_.Encode()
42346	req, err := http.NewRequest("POST", urls, body)
42347	if err != nil {
42348		return nil, err
42349	}
42350	req.Header = reqHeaders
42351	googleapi.Expand(req.URL, map[string]string{
42352		"merchantId": strconv.FormatInt(c.merchantId, 10),
42353	})
42354	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42355}
42356
42357// Do executes the "content.shoppingadsprogram.requestreview" call.
42358func (c *ShoppingadsprogramRequestreviewCall) Do(opts ...googleapi.CallOption) error {
42359	gensupport.SetOptions(c.urlParams_, opts...)
42360	res, err := c.doRequest("json")
42361	if err != nil {
42362		return err
42363	}
42364	defer googleapi.CloseBody(res)
42365	if err := googleapi.CheckResponse(res); err != nil {
42366		return err
42367	}
42368	return nil
42369	// {
42370	//   "description": "Requests a review for Shopping Ads program in the provided country.",
42371	//   "flatPath": "{merchantId}/shoppingadsprogram/requestreview",
42372	//   "httpMethod": "POST",
42373	//   "id": "content.shoppingadsprogram.requestreview",
42374	//   "parameterOrder": [
42375	//     "merchantId"
42376	//   ],
42377	//   "parameters": {
42378	//     "merchantId": {
42379	//       "description": "Required. The ID of the account.",
42380	//       "format": "int64",
42381	//       "location": "path",
42382	//       "required": true,
42383	//       "type": "string"
42384	//     }
42385	//   },
42386	//   "path": "{merchantId}/shoppingadsprogram/requestreview",
42387	//   "request": {
42388	//     "$ref": "RequestReviewShoppingAdsRequest"
42389	//   },
42390	//   "scopes": [
42391	//     "https://www.googleapis.com/auth/content"
42392	//   ]
42393	// }
42394
42395}
42396