1// Copyright 2020 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/"
78const mtlsBasePath = "https://shoppingcontent.mtls.googleapis.com/"
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.Csses = NewCssesService(s)
123	s.Datafeeds = NewDatafeedsService(s)
124	s.Datafeedstatuses = NewDatafeedstatusesService(s)
125	s.Liasettings = NewLiasettingsService(s)
126	s.Localinventory = NewLocalinventoryService(s)
127	s.Orderinvoices = NewOrderinvoicesService(s)
128	s.Orderreports = NewOrderreportsService(s)
129	s.Orderreturns = NewOrderreturnsService(s)
130	s.Orders = NewOrdersService(s)
131	s.Ordertrackingsignals = NewOrdertrackingsignalsService(s)
132	s.Pos = NewPosService(s)
133	s.Products = NewProductsService(s)
134	s.Productstatuses = NewProductstatusesService(s)
135	s.Pubsubnotificationsettings = NewPubsubnotificationsettingsService(s)
136	s.Regionalinventory = NewRegionalinventoryService(s)
137	s.Regions = NewRegionsService(s)
138	s.Repricingrules = NewRepricingrulesService(s)
139	s.Returnaddress = NewReturnaddressService(s)
140	s.Returnpolicy = NewReturnpolicyService(s)
141	s.Settlementreports = NewSettlementreportsService(s)
142	s.Settlementtransactions = NewSettlementtransactionsService(s)
143	s.Shippingsettings = NewShippingsettingsService(s)
144	return s, nil
145}
146
147type APIService struct {
148	client    *http.Client
149	BasePath  string // API endpoint base URL
150	UserAgent string // optional additional User-Agent fragment
151
152	Accounts *AccountsService
153
154	Accountstatuses *AccountstatusesService
155
156	Accounttax *AccounttaxService
157
158	Csses *CssesService
159
160	Datafeeds *DatafeedsService
161
162	Datafeedstatuses *DatafeedstatusesService
163
164	Liasettings *LiasettingsService
165
166	Localinventory *LocalinventoryService
167
168	Orderinvoices *OrderinvoicesService
169
170	Orderreports *OrderreportsService
171
172	Orderreturns *OrderreturnsService
173
174	Orders *OrdersService
175
176	Ordertrackingsignals *OrdertrackingsignalsService
177
178	Pos *PosService
179
180	Products *ProductsService
181
182	Productstatuses *ProductstatusesService
183
184	Pubsubnotificationsettings *PubsubnotificationsettingsService
185
186	Regionalinventory *RegionalinventoryService
187
188	Regions *RegionsService
189
190	Repricingrules *RepricingrulesService
191
192	Returnaddress *ReturnaddressService
193
194	Returnpolicy *ReturnpolicyService
195
196	Settlementreports *SettlementreportsService
197
198	Settlementtransactions *SettlementtransactionsService
199
200	Shippingsettings *ShippingsettingsService
201}
202
203func (s *APIService) userAgent() string {
204	if s.UserAgent == "" {
205		return googleapi.UserAgent
206	}
207	return googleapi.UserAgent + " " + s.UserAgent
208}
209
210func NewAccountsService(s *APIService) *AccountsService {
211	rs := &AccountsService{s: s}
212	rs.Labels = NewAccountsLabelsService(s)
213	return rs
214}
215
216type AccountsService struct {
217	s *APIService
218
219	Labels *AccountsLabelsService
220}
221
222func NewAccountsLabelsService(s *APIService) *AccountsLabelsService {
223	rs := &AccountsLabelsService{s: s}
224	return rs
225}
226
227type AccountsLabelsService struct {
228	s *APIService
229}
230
231func NewAccountstatusesService(s *APIService) *AccountstatusesService {
232	rs := &AccountstatusesService{s: s}
233	return rs
234}
235
236type AccountstatusesService struct {
237	s *APIService
238}
239
240func NewAccounttaxService(s *APIService) *AccounttaxService {
241	rs := &AccounttaxService{s: s}
242	return rs
243}
244
245type AccounttaxService struct {
246	s *APIService
247}
248
249func NewCssesService(s *APIService) *CssesService {
250	rs := &CssesService{s: s}
251	return rs
252}
253
254type CssesService struct {
255	s *APIService
256}
257
258func NewDatafeedsService(s *APIService) *DatafeedsService {
259	rs := &DatafeedsService{s: s}
260	return rs
261}
262
263type DatafeedsService struct {
264	s *APIService
265}
266
267func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
268	rs := &DatafeedstatusesService{s: s}
269	return rs
270}
271
272type DatafeedstatusesService struct {
273	s *APIService
274}
275
276func NewLiasettingsService(s *APIService) *LiasettingsService {
277	rs := &LiasettingsService{s: s}
278	return rs
279}
280
281type LiasettingsService struct {
282	s *APIService
283}
284
285func NewLocalinventoryService(s *APIService) *LocalinventoryService {
286	rs := &LocalinventoryService{s: s}
287	return rs
288}
289
290type LocalinventoryService struct {
291	s *APIService
292}
293
294func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
295	rs := &OrderinvoicesService{s: s}
296	return rs
297}
298
299type OrderinvoicesService struct {
300	s *APIService
301}
302
303func NewOrderreportsService(s *APIService) *OrderreportsService {
304	rs := &OrderreportsService{s: s}
305	return rs
306}
307
308type OrderreportsService struct {
309	s *APIService
310}
311
312func NewOrderreturnsService(s *APIService) *OrderreturnsService {
313	rs := &OrderreturnsService{s: s}
314	return rs
315}
316
317type OrderreturnsService struct {
318	s *APIService
319}
320
321func NewOrdersService(s *APIService) *OrdersService {
322	rs := &OrdersService{s: s}
323	return rs
324}
325
326type OrdersService struct {
327	s *APIService
328}
329
330func NewOrdertrackingsignalsService(s *APIService) *OrdertrackingsignalsService {
331	rs := &OrdertrackingsignalsService{s: s}
332	return rs
333}
334
335type OrdertrackingsignalsService struct {
336	s *APIService
337}
338
339func NewPosService(s *APIService) *PosService {
340	rs := &PosService{s: s}
341	return rs
342}
343
344type PosService struct {
345	s *APIService
346}
347
348func NewProductsService(s *APIService) *ProductsService {
349	rs := &ProductsService{s: s}
350	return rs
351}
352
353type ProductsService struct {
354	s *APIService
355}
356
357func NewProductstatusesService(s *APIService) *ProductstatusesService {
358	rs := &ProductstatusesService{s: s}
359	return rs
360}
361
362type ProductstatusesService struct {
363	s *APIService
364}
365
366func NewPubsubnotificationsettingsService(s *APIService) *PubsubnotificationsettingsService {
367	rs := &PubsubnotificationsettingsService{s: s}
368	return rs
369}
370
371type PubsubnotificationsettingsService struct {
372	s *APIService
373}
374
375func NewRegionalinventoryService(s *APIService) *RegionalinventoryService {
376	rs := &RegionalinventoryService{s: s}
377	return rs
378}
379
380type RegionalinventoryService struct {
381	s *APIService
382}
383
384func NewRegionsService(s *APIService) *RegionsService {
385	rs := &RegionsService{s: s}
386	return rs
387}
388
389type RegionsService struct {
390	s *APIService
391}
392
393func NewRepricingrulesService(s *APIService) *RepricingrulesService {
394	rs := &RepricingrulesService{s: s}
395	return rs
396}
397
398type RepricingrulesService struct {
399	s *APIService
400}
401
402func NewReturnaddressService(s *APIService) *ReturnaddressService {
403	rs := &ReturnaddressService{s: s}
404	return rs
405}
406
407type ReturnaddressService struct {
408	s *APIService
409}
410
411func NewReturnpolicyService(s *APIService) *ReturnpolicyService {
412	rs := &ReturnpolicyService{s: s}
413	return rs
414}
415
416type ReturnpolicyService struct {
417	s *APIService
418}
419
420func NewSettlementreportsService(s *APIService) *SettlementreportsService {
421	rs := &SettlementreportsService{s: s}
422	return rs
423}
424
425type SettlementreportsService struct {
426	s *APIService
427}
428
429func NewSettlementtransactionsService(s *APIService) *SettlementtransactionsService {
430	rs := &SettlementtransactionsService{s: s}
431	return rs
432}
433
434type SettlementtransactionsService struct {
435	s *APIService
436}
437
438func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
439	rs := &ShippingsettingsService{s: s}
440	return rs
441}
442
443type ShippingsettingsService struct {
444	s *APIService
445}
446
447// Account: Account data. After the creation of a new account it may
448// take a few minutes before it is fully operational. The methods
449// delete, insert, and update require the admin role.
450type Account struct {
451	// AdsLinks: List of linked Ads accounts that are active or pending
452	// approval. To create a new link request, add a new link with status
453	// `active` to the list. It will remain in a `pending` state until
454	// approved or rejected either in the Ads interface or through the
455	// AdWords API. To delete an active link, or to cancel a link request,
456	// remove it from the list.
457	AdsLinks []*AccountAdsLink `json:"adsLinks,omitempty"`
458
459	// AdultContent: Indicates whether the merchant sells adult content.
460	AdultContent bool `json:"adultContent,omitempty"`
461
462	// BusinessInformation: The business information of the account.
463	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
464
465	// CssId: ID of CSS the account belongs to.
466	CssId uint64 `json:"cssId,omitempty,string"`
467
468	// GoogleMyBusinessLink: The GMB account which is linked or in the
469	// process of being linked with the Merchant Center account.
470	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
471
472	// Id: Required for update. Merchant Center account ID.
473	Id uint64 `json:"id,omitempty,string"`
474
475	// Kind: Identifies what kind of resource this is. Value: the fixed
476	// string "content#account"
477	Kind string `json:"kind,omitempty"`
478
479	// LabelIds: List of label IDs that are assigned to the account by CSS.
480	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
481
482	// Name: Required. Display name for the account.
483	Name string `json:"name,omitempty"`
484
485	// SellerId: Client-specific, locally-unique, internal ID for the child
486	// account.
487	SellerId string `json:"sellerId,omitempty"`
488
489	// Users: Users with access to the account. Every account (except for
490	// subaccounts) must have at least one admin user.
491	Users []*AccountUser `json:"users,omitempty"`
492
493	// WebsiteUrl: The merchant's website.
494	WebsiteUrl string `json:"websiteUrl,omitempty"`
495
496	// YoutubeChannelLinks: List of linked YouTube channels that are active
497	// or pending approval. To create a new link request, add a new link
498	// with status `active` to the list. It will remain in a `pending` state
499	// until approved or rejected in the YT Creator Studio interface. To
500	// delete an active link, or to cancel a link request, remove it from
501	// the list.
502	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
503
504	// ServerResponse contains the HTTP response code and headers from the
505	// server.
506	googleapi.ServerResponse `json:"-"`
507
508	// ForceSendFields is a list of field names (e.g. "AdsLinks") to
509	// unconditionally include in API requests. By default, fields with
510	// empty values are omitted from API requests. However, any non-pointer,
511	// non-interface field appearing in ForceSendFields will be sent to the
512	// server regardless of whether the field is empty or not. This may be
513	// used to include empty fields in Patch requests.
514	ForceSendFields []string `json:"-"`
515
516	// NullFields is a list of field names (e.g. "AdsLinks") to include in
517	// API requests with the JSON null value. By default, fields with empty
518	// values are omitted from API requests. However, any field with an
519	// empty value appearing in NullFields will be sent to the server as
520	// null. It is an error if a field in this list has a non-empty value.
521	// This may be used to include null fields in Patch requests.
522	NullFields []string `json:"-"`
523}
524
525func (s *Account) MarshalJSON() ([]byte, error) {
526	type NoMethod Account
527	raw := NoMethod(*s)
528	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
529}
530
531type AccountAddress struct {
532	// Country: CLDR country code (e.g. "US"). This value cannot be set for
533	// a sub-account of an MCA. All MCA sub-accounts inherit the country of
534	// their parent MCA.
535	Country string `json:"country,omitempty"`
536
537	// Locality: City, town or commune. May also include dependent
538	// localities or sublocalities (e.g. neighborhoods or suburbs).
539	Locality string `json:"locality,omitempty"`
540
541	// PostalCode: Postal code or ZIP (e.g. "94043").
542	PostalCode string `json:"postalCode,omitempty"`
543
544	// Region: Top-level administrative subdivision of the country. For
545	// example, a state like California ("CA") or a province like Quebec
546	// ("QC").
547	Region string `json:"region,omitempty"`
548
549	// StreetAddress: Street-level part of the address.
550	StreetAddress string `json:"streetAddress,omitempty"`
551
552	// ForceSendFields is a list of field names (e.g. "Country") to
553	// unconditionally include in API requests. By default, fields with
554	// empty values are omitted from API requests. However, any non-pointer,
555	// non-interface field appearing in ForceSendFields will be sent to the
556	// server regardless of whether the field is empty or not. This may be
557	// used to include empty fields in Patch requests.
558	ForceSendFields []string `json:"-"`
559
560	// NullFields is a list of field names (e.g. "Country") to include in
561	// API requests with the JSON null value. By default, fields with empty
562	// values are omitted from API requests. However, any field with an
563	// empty value appearing in NullFields will be sent to the server as
564	// null. It is an error if a field in this list has a non-empty value.
565	// This may be used to include null fields in Patch requests.
566	NullFields []string `json:"-"`
567}
568
569func (s *AccountAddress) MarshalJSON() ([]byte, error) {
570	type NoMethod AccountAddress
571	raw := NoMethod(*s)
572	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
573}
574
575type AccountAdsLink struct {
576	// AdsId: Customer ID of the Ads account.
577	AdsId uint64 `json:"adsId,omitempty,string"`
578
579	// Status: Status of the link between this Merchant Center account and
580	// the Ads account. Upon retrieval, it represents the actual status of
581	// the link and can be either `active` if it was approved in Google Ads
582	// or `pending` if it's pending approval. Upon insertion, it represents
583	// the *intended* status of the link. Re-uploading a link with status
584	// `active` when it's still pending or with status `pending` when it's
585	// already active will have no effect: the status will remain unchanged.
586	// Re-uploading a link with deprecated status `inactive` is equivalent
587	// to not submitting the link at all and will delete the link if it was
588	// active or cancel the link request if it was pending. Acceptable
589	// values are: - "active" - "pending"
590	Status string `json:"status,omitempty"`
591
592	// ForceSendFields is a list of field names (e.g. "AdsId") to
593	// unconditionally include in API requests. By default, fields with
594	// empty values are omitted from API requests. However, any non-pointer,
595	// non-interface field appearing in ForceSendFields will be sent to the
596	// server regardless of whether the field is empty or not. This may be
597	// used to include empty fields in Patch requests.
598	ForceSendFields []string `json:"-"`
599
600	// NullFields is a list of field names (e.g. "AdsId") to include in API
601	// requests with the JSON null value. By default, fields with empty
602	// values are omitted from API requests. However, any field with an
603	// empty value appearing in NullFields will be sent to the server as
604	// null. It is an error if a field in this list has a non-empty value.
605	// This may be used to include null fields in Patch requests.
606	NullFields []string `json:"-"`
607}
608
609func (s *AccountAdsLink) MarshalJSON() ([]byte, error) {
610	type NoMethod AccountAdsLink
611	raw := NoMethod(*s)
612	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
613}
614
615type AccountBusinessInformation struct {
616	// Address: The address of the business.
617	Address *AccountAddress `json:"address,omitempty"`
618
619	// CustomerService: The customer service information of the business.
620	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
621
622	// PhoneNumber: The phone number of the business.
623	PhoneNumber string `json:"phoneNumber,omitempty"`
624
625	// ForceSendFields is a list of field names (e.g. "Address") to
626	// unconditionally include in API requests. By default, fields with
627	// empty values are omitted from API requests. However, any non-pointer,
628	// non-interface field appearing in ForceSendFields will be sent to the
629	// server regardless of whether the field is empty or not. This may be
630	// used to include empty fields in Patch requests.
631	ForceSendFields []string `json:"-"`
632
633	// NullFields is a list of field names (e.g. "Address") to include in
634	// API requests with the JSON null value. By default, fields with empty
635	// values are omitted from API requests. However, any field with an
636	// empty value appearing in NullFields will be sent to the server as
637	// null. It is an error if a field in this list has a non-empty value.
638	// This may be used to include null fields in Patch requests.
639	NullFields []string `json:"-"`
640}
641
642func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
643	type NoMethod AccountBusinessInformation
644	raw := NoMethod(*s)
645	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
646}
647
648type AccountCustomerService struct {
649	// Email: Customer service email.
650	Email string `json:"email,omitempty"`
651
652	// PhoneNumber: Customer service phone number.
653	PhoneNumber string `json:"phoneNumber,omitempty"`
654
655	// Url: Customer service URL.
656	Url string `json:"url,omitempty"`
657
658	// ForceSendFields is a list of field names (e.g. "Email") to
659	// unconditionally include in API requests. By default, fields with
660	// empty values are omitted from API requests. However, any non-pointer,
661	// non-interface field appearing in ForceSendFields will be sent to the
662	// server regardless of whether the field is empty or not. This may be
663	// used to include empty fields in Patch requests.
664	ForceSendFields []string `json:"-"`
665
666	// NullFields is a list of field names (e.g. "Email") to include in API
667	// requests with the JSON null value. By default, fields with empty
668	// values are omitted from API requests. However, any field with an
669	// empty value appearing in NullFields will be sent to the server as
670	// null. It is an error if a field in this list has a non-empty value.
671	// This may be used to include null fields in Patch requests.
672	NullFields []string `json:"-"`
673}
674
675func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
676	type NoMethod AccountCustomerService
677	raw := NoMethod(*s)
678	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
679}
680
681type AccountGoogleMyBusinessLink struct {
682	// GmbAccountId: The ID of the GMB account. If this is provided, then
683	// `gmbEmail` is ignored. The value of this field should match the
684	// `accountId` used by the GMB API.
685	GmbAccountId string `json:"gmbAccountId,omitempty"`
686
687	// GmbEmail: The GMB email address of which a specific account within a
688	// GMB account. A sample account within a GMB account could be a
689	// business account with set of locations, managed under the GMB
690	// account.
691	GmbEmail string `json:"gmbEmail,omitempty"`
692
693	// Status: Status of the link between this Merchant Center account and
694	// the GMB account. Acceptable values are: - "active" - "pending"
695	Status string `json:"status,omitempty"`
696
697	// ForceSendFields is a list of field names (e.g. "GmbAccountId") to
698	// unconditionally include in API requests. By default, fields with
699	// empty values are omitted from API requests. However, any non-pointer,
700	// non-interface field appearing in ForceSendFields will be sent to the
701	// server regardless of whether the field is empty or not. This may be
702	// used to include empty fields in Patch requests.
703	ForceSendFields []string `json:"-"`
704
705	// NullFields is a list of field names (e.g. "GmbAccountId") to include
706	// in API requests with the JSON null value. By default, fields with
707	// empty values are omitted from API requests. However, any field with
708	// an empty value appearing in NullFields will be sent to the server as
709	// null. It is an error if a field in this list has a non-empty value.
710	// This may be used to include null fields in Patch requests.
711	NullFields []string `json:"-"`
712}
713
714func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
715	type NoMethod AccountGoogleMyBusinessLink
716	raw := NoMethod(*s)
717	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
718}
719
720type AccountIdentifier struct {
721	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
722	// (in that case, it represents the aggregator of the subaccount).
723	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
724
725	// MerchantId: The merchant account ID, set for individual accounts and
726	// subaccounts.
727	MerchantId uint64 `json:"merchantId,omitempty,string"`
728
729	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
730	// unconditionally include in API requests. By default, fields with
731	// empty values are omitted from API requests. However, any non-pointer,
732	// non-interface field appearing in ForceSendFields will be sent to the
733	// server regardless of whether the field is empty or not. This may be
734	// used to include empty fields in Patch requests.
735	ForceSendFields []string `json:"-"`
736
737	// NullFields is a list of field names (e.g. "AggregatorId") to include
738	// in API requests with the JSON null value. By default, fields with
739	// empty values are omitted from API requests. However, any field with
740	// an empty value appearing in NullFields will be sent to the server as
741	// null. It is an error if a field in this list has a non-empty value.
742	// This may be used to include null fields in Patch requests.
743	NullFields []string `json:"-"`
744}
745
746func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
747	type NoMethod AccountIdentifier
748	raw := NoMethod(*s)
749	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
750}
751
752// AccountLabel: Label assigned by CSS domain or CSS group to one of its
753// sub-accounts.
754type AccountLabel struct {
755	// AccountId: Output only. Immutable. The ID of account this label
756	// belongs to.
757	AccountId int64 `json:"accountId,omitempty,string"`
758
759	// Description: Description for this label.
760	Description string `json:"description,omitempty"`
761
762	// LabelId: Output only. Immutable. The ID of the label.
763	LabelId int64 `json:"labelId,omitempty,string"`
764
765	// Name: The display name of this label.
766	Name string `json:"name,omitempty"`
767
768	// ServerResponse contains the HTTP response code and headers from the
769	// server.
770	googleapi.ServerResponse `json:"-"`
771
772	// ForceSendFields is a list of field names (e.g. "AccountId") to
773	// unconditionally include in API requests. By default, fields with
774	// empty values are omitted from API requests. However, any non-pointer,
775	// non-interface field appearing in ForceSendFields will be sent to the
776	// server regardless of whether the field is empty or not. This may be
777	// used to include empty fields in Patch requests.
778	ForceSendFields []string `json:"-"`
779
780	// NullFields is a list of field names (e.g. "AccountId") to include in
781	// API requests with the JSON null value. By default, fields with empty
782	// values are omitted from API requests. However, any field with an
783	// empty value appearing in NullFields will be sent to the server as
784	// null. It is an error if a field in this list has a non-empty value.
785	// This may be used to include null fields in Patch requests.
786	NullFields []string `json:"-"`
787}
788
789func (s *AccountLabel) MarshalJSON() ([]byte, error) {
790	type NoMethod AccountLabel
791	raw := NoMethod(*s)
792	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
793}
794
795// AccountStatus: The status of an account, i.e., information about its
796// products, which is computed offline and not returned immediately at
797// insertion time.
798type AccountStatus struct {
799	// AccountId: The ID of the account for which the status is reported.
800	AccountId string `json:"accountId,omitempty"`
801
802	// AccountLevelIssues: A list of account level issues.
803	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
804
805	// Kind: Identifies what kind of resource this is. Value: the fixed
806	// string "content#accountStatus"
807	Kind string `json:"kind,omitempty"`
808
809	// Products: List of product-related data by channel, destination, and
810	// country. Data in this field may be delayed by up to 30 minutes.
811	Products []*AccountStatusProducts `json:"products,omitempty"`
812
813	// WebsiteClaimed: Whether the account's website is claimed or not.
814	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
815
816	// ServerResponse contains the HTTP response code and headers from the
817	// server.
818	googleapi.ServerResponse `json:"-"`
819
820	// ForceSendFields is a list of field names (e.g. "AccountId") to
821	// unconditionally include in API requests. By default, fields with
822	// empty values are omitted from API requests. However, any non-pointer,
823	// non-interface field appearing in ForceSendFields will be sent to the
824	// server regardless of whether the field is empty or not. This may be
825	// used to include empty fields in Patch requests.
826	ForceSendFields []string `json:"-"`
827
828	// NullFields is a list of field names (e.g. "AccountId") to include in
829	// API requests with the JSON null value. By default, fields with empty
830	// values are omitted from API requests. However, any field with an
831	// empty value appearing in NullFields will be sent to the server as
832	// null. It is an error if a field in this list has a non-empty value.
833	// This may be used to include null fields in Patch requests.
834	NullFields []string `json:"-"`
835}
836
837func (s *AccountStatus) MarshalJSON() ([]byte, error) {
838	type NoMethod AccountStatus
839	raw := NoMethod(*s)
840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
841}
842
843type AccountStatusAccountLevelIssue struct {
844	// Country: Country for which this issue is reported.
845	Country string `json:"country,omitempty"`
846
847	// Destination: The destination the issue applies to. If this field is
848	// empty then the issue applies to all available destinations.
849	Destination string `json:"destination,omitempty"`
850
851	// Detail: Additional details about the issue.
852	Detail string `json:"detail,omitempty"`
853
854	// Documentation: The URL of a web page to help resolving this issue.
855	Documentation string `json:"documentation,omitempty"`
856
857	// Id: Issue identifier.
858	Id string `json:"id,omitempty"`
859
860	// Severity: Severity of the issue. Acceptable values are: -
861	// "critical" - "error" - "suggestion"
862	Severity string `json:"severity,omitempty"`
863
864	// Title: Short description of the issue.
865	Title string `json:"title,omitempty"`
866
867	// ForceSendFields is a list of field names (e.g. "Country") to
868	// unconditionally include in API requests. By default, fields with
869	// empty values are omitted from API requests. However, any non-pointer,
870	// non-interface field appearing in ForceSendFields will be sent to the
871	// server regardless of whether the field is empty or not. This may be
872	// used to include empty fields in Patch requests.
873	ForceSendFields []string `json:"-"`
874
875	// NullFields is a list of field names (e.g. "Country") to include in
876	// API requests with the JSON null value. By default, fields with empty
877	// values are omitted from API requests. However, any field with an
878	// empty value appearing in NullFields will be sent to the server as
879	// null. It is an error if a field in this list has a non-empty value.
880	// This may be used to include null fields in Patch requests.
881	NullFields []string `json:"-"`
882}
883
884func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
885	type NoMethod AccountStatusAccountLevelIssue
886	raw := NoMethod(*s)
887	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
888}
889
890type AccountStatusItemLevelIssue struct {
891	// AttributeName: The attribute's name, if the issue is caused by a
892	// single attribute.
893	AttributeName string `json:"attributeName,omitempty"`
894
895	// Code: The error code of the issue.
896	Code string `json:"code,omitempty"`
897
898	// Description: A short issue description in English.
899	Description string `json:"description,omitempty"`
900
901	// Detail: A detailed issue description in English.
902	Detail string `json:"detail,omitempty"`
903
904	// Documentation: The URL of a web page to help with resolving this
905	// issue.
906	Documentation string `json:"documentation,omitempty"`
907
908	// NumItems: Number of items with this issue.
909	NumItems int64 `json:"numItems,omitempty,string"`
910
911	// Resolution: Whether the issue can be resolved by the merchant.
912	Resolution string `json:"resolution,omitempty"`
913
914	// Servability: How this issue affects serving of the offer.
915	Servability string `json:"servability,omitempty"`
916
917	// ForceSendFields is a list of field names (e.g. "AttributeName") to
918	// unconditionally include in API requests. By default, fields with
919	// empty values are omitted from API requests. However, any non-pointer,
920	// non-interface field appearing in ForceSendFields will be sent to the
921	// server regardless of whether the field is empty or not. This may be
922	// used to include empty fields in Patch requests.
923	ForceSendFields []string `json:"-"`
924
925	// NullFields is a list of field names (e.g. "AttributeName") to include
926	// in API requests with the JSON null value. By default, fields with
927	// empty values are omitted from API requests. However, any field with
928	// an empty value appearing in NullFields will be sent to the server as
929	// null. It is an error if a field in this list has a non-empty value.
930	// This may be used to include null fields in Patch requests.
931	NullFields []string `json:"-"`
932}
933
934func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
935	type NoMethod AccountStatusItemLevelIssue
936	raw := NoMethod(*s)
937	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
938}
939
940type AccountStatusProducts struct {
941	// Channel: The channel the data applies to. Acceptable values are: -
942	// "local" - "online"
943	Channel string `json:"channel,omitempty"`
944
945	// Country: The country the data applies to.
946	Country string `json:"country,omitempty"`
947
948	// Destination: The destination the data applies to.
949	Destination string `json:"destination,omitempty"`
950
951	// ItemLevelIssues: List of item-level issues.
952	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
953
954	// Statistics: Aggregated product statistics.
955	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
956
957	// ForceSendFields is a list of field names (e.g. "Channel") to
958	// unconditionally include in API requests. By default, fields with
959	// empty values are omitted from API requests. However, any non-pointer,
960	// non-interface field appearing in ForceSendFields will be sent to the
961	// server regardless of whether the field is empty or not. This may be
962	// used to include empty fields in Patch requests.
963	ForceSendFields []string `json:"-"`
964
965	// NullFields is a list of field names (e.g. "Channel") to include in
966	// API requests with the JSON null value. By default, fields with empty
967	// values are omitted from API requests. However, any field with an
968	// empty value appearing in NullFields will be sent to the server as
969	// null. It is an error if a field in this list has a non-empty value.
970	// This may be used to include null fields in Patch requests.
971	NullFields []string `json:"-"`
972}
973
974func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
975	type NoMethod AccountStatusProducts
976	raw := NoMethod(*s)
977	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
978}
979
980type AccountStatusStatistics struct {
981	// Active: Number of active offers.
982	Active int64 `json:"active,omitempty,string"`
983
984	// Disapproved: Number of disapproved offers.
985	Disapproved int64 `json:"disapproved,omitempty,string"`
986
987	// Expiring: Number of expiring offers.
988	Expiring int64 `json:"expiring,omitempty,string"`
989
990	// Pending: Number of pending offers.
991	Pending int64 `json:"pending,omitempty,string"`
992
993	// ForceSendFields is a list of field names (e.g. "Active") to
994	// unconditionally include in API requests. By default, fields with
995	// empty values are omitted from API requests. However, any non-pointer,
996	// non-interface field appearing in ForceSendFields will be sent to the
997	// server regardless of whether the field is empty or not. This may be
998	// used to include empty fields in Patch requests.
999	ForceSendFields []string `json:"-"`
1000
1001	// NullFields is a list of field names (e.g. "Active") to include in API
1002	// requests with the JSON null value. By default, fields with empty
1003	// values are omitted from API requests. However, any field with an
1004	// empty value appearing in NullFields will be sent to the server as
1005	// null. It is an error if a field in this list has a non-empty value.
1006	// This may be used to include null fields in Patch requests.
1007	NullFields []string `json:"-"`
1008}
1009
1010func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
1011	type NoMethod AccountStatusStatistics
1012	raw := NoMethod(*s)
1013	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1014}
1015
1016// AccountTax: The tax settings of a merchant account. All methods
1017// require the admin role.
1018type AccountTax struct {
1019	// AccountId: Required. The ID of the account to which these account tax
1020	// settings belong.
1021	AccountId uint64 `json:"accountId,omitempty,string"`
1022
1023	// Kind: Identifies what kind of resource this is. Value: the fixed
1024	// string "content#accountTax".
1025	Kind string `json:"kind,omitempty"`
1026
1027	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
1028	// reversible). Defining no rules is equivalent to not charging tax at
1029	// all.
1030	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
1031
1032	// ServerResponse contains the HTTP response code and headers from the
1033	// server.
1034	googleapi.ServerResponse `json:"-"`
1035
1036	// ForceSendFields is a list of field names (e.g. "AccountId") to
1037	// unconditionally include in API requests. By default, fields with
1038	// empty values are omitted from API requests. However, any non-pointer,
1039	// non-interface field appearing in ForceSendFields will be sent to the
1040	// server regardless of whether the field is empty or not. This may be
1041	// used to include empty fields in Patch requests.
1042	ForceSendFields []string `json:"-"`
1043
1044	// NullFields is a list of field names (e.g. "AccountId") to include in
1045	// API requests with the JSON null value. By default, fields with empty
1046	// values are omitted from API requests. However, any field with an
1047	// empty value appearing in NullFields will be sent to the server as
1048	// null. It is an error if a field in this list has a non-empty value.
1049	// This may be used to include null fields in Patch requests.
1050	NullFields []string `json:"-"`
1051}
1052
1053func (s *AccountTax) MarshalJSON() ([]byte, error) {
1054	type NoMethod AccountTax
1055	raw := NoMethod(*s)
1056	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1057}
1058
1059// AccountTaxTaxRule: Tax calculation rule to apply in a state or
1060// province (USA only).
1061type AccountTaxTaxRule struct {
1062	// Country: Country code in which tax is applicable.
1063	Country string `json:"country,omitempty"`
1064
1065	// LocationId: Required. State (or province) is which the tax is
1066	// applicable, described by its location ID (also called criteria ID).
1067	LocationId uint64 `json:"locationId,omitempty,string"`
1068
1069	// RatePercent: Explicit tax rate in percent, represented as a floating
1070	// point number without the percentage character. Must not be negative.
1071	RatePercent string `json:"ratePercent,omitempty"`
1072
1073	// ShippingTaxed: If true, shipping charges are also taxed.
1074	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
1075
1076	// UseGlobalRate: Whether the tax rate is taken from a global tax table
1077	// or specified explicitly.
1078	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
1079
1080	// ForceSendFields is a list of field names (e.g. "Country") to
1081	// unconditionally include in API requests. By default, fields with
1082	// empty values are omitted from API requests. However, any non-pointer,
1083	// non-interface field appearing in ForceSendFields will be sent to the
1084	// server regardless of whether the field is empty or not. This may be
1085	// used to include empty fields in Patch requests.
1086	ForceSendFields []string `json:"-"`
1087
1088	// NullFields is a list of field names (e.g. "Country") 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 *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
1098	type NoMethod AccountTaxTaxRule
1099	raw := NoMethod(*s)
1100	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1101}
1102
1103type AccountUser struct {
1104	// Admin: Whether user is an admin.
1105	Admin bool `json:"admin,omitempty"`
1106
1107	// EmailAddress: User's email address.
1108	EmailAddress string `json:"emailAddress,omitempty"`
1109
1110	// OrderManager: Whether user is an order manager.
1111	OrderManager bool `json:"orderManager,omitempty"`
1112
1113	// PaymentsAnalyst: Whether user can access payment statements.
1114	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
1115
1116	// PaymentsManager: Whether user can manage payment settings.
1117	PaymentsManager bool `json:"paymentsManager,omitempty"`
1118
1119	// ForceSendFields is a list of field names (e.g. "Admin") to
1120	// unconditionally include in API requests. By default, fields with
1121	// empty values are omitted from API requests. However, any non-pointer,
1122	// non-interface field appearing in ForceSendFields will be sent to the
1123	// server regardless of whether the field is empty or not. This may be
1124	// used to include empty fields in Patch requests.
1125	ForceSendFields []string `json:"-"`
1126
1127	// NullFields is a list of field names (e.g. "Admin") to include in API
1128	// requests with the JSON null value. By default, fields with empty
1129	// values are omitted from API requests. However, any field with an
1130	// empty value appearing in NullFields will be sent to the server as
1131	// null. It is an error if a field in this list has a non-empty value.
1132	// This may be used to include null fields in Patch requests.
1133	NullFields []string `json:"-"`
1134}
1135
1136func (s *AccountUser) MarshalJSON() ([]byte, error) {
1137	type NoMethod AccountUser
1138	raw := NoMethod(*s)
1139	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1140}
1141
1142type AccountYouTubeChannelLink struct {
1143	// ChannelId: Channel ID.
1144	ChannelId string `json:"channelId,omitempty"`
1145
1146	// Status: Status of the link between this Merchant Center account and
1147	// the YouTube channel. Upon retrieval, it represents the actual status
1148	// of the link and can be either `active` if it was approved in YT
1149	// Creator Studio or `pending` if it's pending approval. Upon insertion,
1150	// it represents the *intended* status of the link. Re-uploading a link
1151	// with status `active` when it's still pending or with status `pending`
1152	// when it's already active will have no effect: the status will remain
1153	// unchanged. Re-uploading a link with deprecated status `inactive` is
1154	// equivalent to not submitting the link at all and will delete the link
1155	// if it was active or cancel the link request if it was pending.
1156	Status string `json:"status,omitempty"`
1157
1158	// ForceSendFields is a list of field names (e.g. "ChannelId") to
1159	// unconditionally include in API requests. By default, fields with
1160	// empty values are omitted from API requests. However, any non-pointer,
1161	// non-interface field appearing in ForceSendFields will be sent to the
1162	// server regardless of whether the field is empty or not. This may be
1163	// used to include empty fields in Patch requests.
1164	ForceSendFields []string `json:"-"`
1165
1166	// NullFields is a list of field names (e.g. "ChannelId") to include in
1167	// API requests with the JSON null value. By default, fields with empty
1168	// values are omitted from API requests. However, any field with an
1169	// empty value appearing in NullFields will be sent to the server as
1170	// null. It is an error if a field in this list has a non-empty value.
1171	// This may be used to include null fields in Patch requests.
1172	NullFields []string `json:"-"`
1173}
1174
1175func (s *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
1176	type NoMethod AccountYouTubeChannelLink
1177	raw := NoMethod(*s)
1178	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1179}
1180
1181type AccountsAuthInfoResponse struct {
1182	// AccountIdentifiers: The account identifiers corresponding to the
1183	// authenticated user. - For an individual account: only the merchant ID
1184	// is defined - For an aggregator: only the aggregator ID is defined -
1185	// For a subaccount of an MCA: both the merchant ID and the aggregator
1186	// ID are defined.
1187	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
1188
1189	// Kind: Identifies what kind of resource this is. Value: the fixed
1190	// string "content#accountsAuthInfoResponse".
1191	Kind string `json:"kind,omitempty"`
1192
1193	// ServerResponse contains the HTTP response code and headers from the
1194	// server.
1195	googleapi.ServerResponse `json:"-"`
1196
1197	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
1198	// to unconditionally include in API requests. By default, fields with
1199	// empty values are omitted from API requests. However, any non-pointer,
1200	// non-interface field appearing in ForceSendFields will be sent to the
1201	// server regardless of whether the field is empty or not. This may be
1202	// used to include empty fields in Patch requests.
1203	ForceSendFields []string `json:"-"`
1204
1205	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
1206	// include in API requests with the JSON null value. By default, fields
1207	// with empty values are omitted from API requests. However, any field
1208	// with an empty value appearing in NullFields will be sent to the
1209	// server as null. It is an error if a field in this list has a
1210	// non-empty value. This may be used to include null fields in Patch
1211	// requests.
1212	NullFields []string `json:"-"`
1213}
1214
1215func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
1216	type NoMethod AccountsAuthInfoResponse
1217	raw := NoMethod(*s)
1218	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1219}
1220
1221type AccountsClaimWebsiteResponse struct {
1222	// Kind: Identifies what kind of resource this is. Value: the fixed
1223	// string "content#accountsClaimWebsiteResponse".
1224	Kind string `json:"kind,omitempty"`
1225
1226	// ServerResponse contains the HTTP response code and headers from the
1227	// server.
1228	googleapi.ServerResponse `json:"-"`
1229
1230	// ForceSendFields is a list of field names (e.g. "Kind") to
1231	// unconditionally include in API requests. By default, fields with
1232	// empty values are omitted from API requests. However, any non-pointer,
1233	// non-interface field appearing in ForceSendFields will be sent to the
1234	// server regardless of whether the field is empty or not. This may be
1235	// used to include empty fields in Patch requests.
1236	ForceSendFields []string `json:"-"`
1237
1238	// NullFields is a list of field names (e.g. "Kind") to include in API
1239	// requests with the JSON null value. By default, fields with empty
1240	// values are omitted from API requests. However, any field with an
1241	// empty value appearing in NullFields will be sent to the server as
1242	// null. It is an error if a field in this list has a non-empty value.
1243	// This may be used to include null fields in Patch requests.
1244	NullFields []string `json:"-"`
1245}
1246
1247func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
1248	type NoMethod AccountsClaimWebsiteResponse
1249	raw := NoMethod(*s)
1250	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1251}
1252
1253type AccountsCustomBatchRequest struct {
1254	// Entries: The request entries to be processed in the batch.
1255	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
1256
1257	// ForceSendFields is a list of field names (e.g. "Entries") to
1258	// unconditionally include in API requests. By default, fields with
1259	// empty values are omitted from API requests. However, any non-pointer,
1260	// non-interface field appearing in ForceSendFields will be sent to the
1261	// server regardless of whether the field is empty or not. This may be
1262	// used to include empty fields in Patch requests.
1263	ForceSendFields []string `json:"-"`
1264
1265	// NullFields is a list of field names (e.g. "Entries") to include in
1266	// API requests with the JSON null value. By default, fields with empty
1267	// values are omitted from API requests. However, any field with an
1268	// empty value appearing in NullFields will be sent to the server as
1269	// null. It is an error if a field in this list has a non-empty value.
1270	// This may be used to include null fields in Patch requests.
1271	NullFields []string `json:"-"`
1272}
1273
1274func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
1275	type NoMethod AccountsCustomBatchRequest
1276	raw := NoMethod(*s)
1277	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1278}
1279
1280// AccountsCustomBatchRequestEntry: A batch entry encoding a single
1281// non-batch accounts request.
1282type AccountsCustomBatchRequestEntry struct {
1283	// Account: The account to create or update. Only defined if the method
1284	// is `insert` or `update`.
1285	Account *Account `json:"account,omitempty"`
1286
1287	// AccountId: The ID of the targeted account. Only defined if the method
1288	// is not `insert`.
1289	AccountId uint64 `json:"accountId,omitempty,string"`
1290
1291	// BatchId: An entry ID, unique within the batch request.
1292	BatchId int64 `json:"batchId,omitempty"`
1293
1294	// Force: Whether the account should be deleted if the account has
1295	// offers. Only applicable if the method is `delete`.
1296	Force bool `json:"force,omitempty"`
1297
1298	// LabelIds: Label IDs for the 'updatelabels' request.
1299	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1300
1301	// LinkRequest: Details about the `link` request.
1302	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
1303
1304	// MerchantId: The ID of the managing account.
1305	MerchantId uint64 `json:"merchantId,omitempty,string"`
1306
1307	// Method: The method of the batch entry. Acceptable values are: -
1308	// "claimWebsite" - "delete" - "get" - "insert" - "link" -
1309	// "update"
1310	Method string `json:"method,omitempty"`
1311
1312	// Overwrite: Only applicable if the method is `claimwebsite`. Indicates
1313	// whether or not to take the claim from another account in case there
1314	// is a conflict.
1315	Overwrite bool `json:"overwrite,omitempty"`
1316
1317	// View: Controls which fields are visible. Only applicable if the
1318	// method is 'get'.
1319	View string `json:"view,omitempty"`
1320
1321	// ForceSendFields is a list of field names (e.g. "Account") to
1322	// unconditionally include in API requests. By default, fields with
1323	// empty values are omitted from API requests. However, any non-pointer,
1324	// non-interface field appearing in ForceSendFields will be sent to the
1325	// server regardless of whether the field is empty or not. This may be
1326	// used to include empty fields in Patch requests.
1327	ForceSendFields []string `json:"-"`
1328
1329	// NullFields is a list of field names (e.g. "Account") to include in
1330	// API requests with the JSON null value. By default, fields with empty
1331	// values are omitted from API requests. However, any field with an
1332	// empty value appearing in NullFields will be sent to the server as
1333	// null. It is an error if a field in this list has a non-empty value.
1334	// This may be used to include null fields in Patch requests.
1335	NullFields []string `json:"-"`
1336}
1337
1338func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1339	type NoMethod AccountsCustomBatchRequestEntry
1340	raw := NoMethod(*s)
1341	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1342}
1343
1344type AccountsCustomBatchRequestEntryLinkRequest struct {
1345	// Action: Action to perform for this link. The "request" action is
1346	// only available to select merchants. Acceptable values are: -
1347	// "approve" - "remove" - "request"
1348	Action string `json:"action,omitempty"`
1349
1350	// LinkType: Type of the link between the two accounts. Acceptable
1351	// values are: - "channelPartner" - "eCommercePlatform"
1352	LinkType string `json:"linkType,omitempty"`
1353
1354	// LinkedAccountId: The ID of the linked account.
1355	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1356
1357	// Services: List of provided services.
1358	Services []string `json:"services,omitempty"`
1359
1360	// ForceSendFields is a list of field names (e.g. "Action") to
1361	// unconditionally include in API requests. By default, fields with
1362	// empty values are omitted from API requests. However, any non-pointer,
1363	// non-interface field appearing in ForceSendFields will be sent to the
1364	// server regardless of whether the field is empty or not. This may be
1365	// used to include empty fields in Patch requests.
1366	ForceSendFields []string `json:"-"`
1367
1368	// NullFields is a list of field names (e.g. "Action") to include in API
1369	// requests with the JSON null value. By default, fields with empty
1370	// values are omitted from API requests. However, any field with an
1371	// empty value appearing in NullFields will be sent to the server as
1372	// null. It is an error if a field in this list has a non-empty value.
1373	// This may be used to include null fields in Patch requests.
1374	NullFields []string `json:"-"`
1375}
1376
1377func (s *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
1378	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
1379	raw := NoMethod(*s)
1380	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1381}
1382
1383type AccountsCustomBatchResponse struct {
1384	// Entries: The result of the execution of the batch requests.
1385	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
1386
1387	// Kind: Identifies what kind of resource this is. Value: the fixed
1388	// string "content#accountsCustomBatchResponse".
1389	Kind string `json:"kind,omitempty"`
1390
1391	// ServerResponse contains the HTTP response code and headers from the
1392	// server.
1393	googleapi.ServerResponse `json:"-"`
1394
1395	// ForceSendFields is a list of field names (e.g. "Entries") to
1396	// unconditionally include in API requests. By default, fields with
1397	// empty values are omitted from API requests. However, any non-pointer,
1398	// non-interface field appearing in ForceSendFields will be sent to the
1399	// server regardless of whether the field is empty or not. This may be
1400	// used to include empty fields in Patch requests.
1401	ForceSendFields []string `json:"-"`
1402
1403	// NullFields is a list of field names (e.g. "Entries") to include in
1404	// API requests with the JSON null value. By default, fields with empty
1405	// values are omitted from API requests. However, any field with an
1406	// empty value appearing in NullFields will be sent to the server as
1407	// null. It is an error if a field in this list has a non-empty value.
1408	// This may be used to include null fields in Patch requests.
1409	NullFields []string `json:"-"`
1410}
1411
1412func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
1413	type NoMethod AccountsCustomBatchResponse
1414	raw := NoMethod(*s)
1415	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1416}
1417
1418// AccountsCustomBatchResponseEntry: A batch entry encoding a single
1419// non-batch accounts response.
1420type AccountsCustomBatchResponseEntry struct {
1421	// Account: The retrieved, created, or updated account. Not defined if
1422	// the method was `delete`, `claimwebsite` or `link`.
1423	Account *Account `json:"account,omitempty"`
1424
1425	// BatchId: The ID of the request entry this entry responds to.
1426	BatchId int64 `json:"batchId,omitempty"`
1427
1428	// Errors: A list of errors defined if and only if the request failed.
1429	Errors *Errors `json:"errors,omitempty"`
1430
1431	// Kind: Identifies what kind of resource this is. Value: the fixed
1432	// string "content#accountsCustomBatchResponseEntry"
1433	Kind string `json:"kind,omitempty"`
1434
1435	// ForceSendFields is a list of field names (e.g. "Account") to
1436	// unconditionally include in API requests. By default, fields with
1437	// empty values are omitted from API requests. However, any non-pointer,
1438	// non-interface field appearing in ForceSendFields will be sent to the
1439	// server regardless of whether the field is empty or not. This may be
1440	// used to include empty fields in Patch requests.
1441	ForceSendFields []string `json:"-"`
1442
1443	// NullFields is a list of field names (e.g. "Account") to include in
1444	// API requests with the JSON null value. By default, fields with empty
1445	// values are omitted from API requests. However, any field with an
1446	// empty value appearing in NullFields will be sent to the server as
1447	// null. It is an error if a field in this list has a non-empty value.
1448	// This may be used to include null fields in Patch requests.
1449	NullFields []string `json:"-"`
1450}
1451
1452func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1453	type NoMethod AccountsCustomBatchResponseEntry
1454	raw := NoMethod(*s)
1455	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1456}
1457
1458type AccountsLinkRequest struct {
1459	// Action: Action to perform for this link. The "request" action is
1460	// only available to select merchants. Acceptable values are: -
1461	// "approve" - "remove" - "request"
1462	Action string `json:"action,omitempty"`
1463
1464	// LinkType: Type of the link between the two accounts. Acceptable
1465	// values are: - "channelPartner" - "eCommercePlatform"
1466	LinkType string `json:"linkType,omitempty"`
1467
1468	// LinkedAccountId: The ID of the linked account.
1469	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1470
1471	// Services: List of provided services.
1472	Services []string `json:"services,omitempty"`
1473
1474	// ForceSendFields is a list of field names (e.g. "Action") to
1475	// unconditionally include in API requests. By default, fields with
1476	// empty values are omitted from API requests. However, any non-pointer,
1477	// non-interface field appearing in ForceSendFields will be sent to the
1478	// server regardless of whether the field is empty or not. This may be
1479	// used to include empty fields in Patch requests.
1480	ForceSendFields []string `json:"-"`
1481
1482	// NullFields is a list of field names (e.g. "Action") to include in API
1483	// requests with the JSON null value. By default, fields with empty
1484	// values are omitted from API requests. However, any field with an
1485	// empty value appearing in NullFields will be sent to the server as
1486	// null. It is an error if a field in this list has a non-empty value.
1487	// This may be used to include null fields in Patch requests.
1488	NullFields []string `json:"-"`
1489}
1490
1491func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
1492	type NoMethod AccountsLinkRequest
1493	raw := NoMethod(*s)
1494	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1495}
1496
1497type AccountsLinkResponse struct {
1498	// Kind: Identifies what kind of resource this is. Value: the fixed
1499	// string "content#accountsLinkResponse".
1500	Kind string `json:"kind,omitempty"`
1501
1502	// ServerResponse contains the HTTP response code and headers from the
1503	// server.
1504	googleapi.ServerResponse `json:"-"`
1505
1506	// ForceSendFields is a list of field names (e.g. "Kind") to
1507	// unconditionally include in API requests. By default, fields with
1508	// empty values are omitted from API requests. However, any non-pointer,
1509	// non-interface field appearing in ForceSendFields will be sent to the
1510	// server regardless of whether the field is empty or not. This may be
1511	// used to include empty fields in Patch requests.
1512	ForceSendFields []string `json:"-"`
1513
1514	// NullFields is a list of field names (e.g. "Kind") to include in API
1515	// requests with the JSON null value. By default, fields with empty
1516	// values are omitted from API requests. However, any field with an
1517	// empty value appearing in NullFields will be sent to the server as
1518	// null. It is an error if a field in this list has a non-empty value.
1519	// This may be used to include null fields in Patch requests.
1520	NullFields []string `json:"-"`
1521}
1522
1523func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
1524	type NoMethod AccountsLinkResponse
1525	raw := NoMethod(*s)
1526	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1527}
1528
1529type AccountsListLinksResponse struct {
1530	// Kind: Identifies what kind of resource this is. Value: the fixed
1531	// string "content#accountsListLinksResponse".
1532	Kind string `json:"kind,omitempty"`
1533
1534	// Links: The list of available links.
1535	Links []*LinkedAccount `json:"links,omitempty"`
1536
1537	// NextPageToken: The token for the retrieval of the next page of links.
1538	NextPageToken string `json:"nextPageToken,omitempty"`
1539
1540	// ServerResponse contains the HTTP response code and headers from the
1541	// server.
1542	googleapi.ServerResponse `json:"-"`
1543
1544	// ForceSendFields is a list of field names (e.g. "Kind") to
1545	// unconditionally include in API requests. By default, fields with
1546	// empty values are omitted from API requests. However, any non-pointer,
1547	// non-interface field appearing in ForceSendFields will be sent to the
1548	// server regardless of whether the field is empty or not. This may be
1549	// used to include empty fields in Patch requests.
1550	ForceSendFields []string `json:"-"`
1551
1552	// NullFields is a list of field names (e.g. "Kind") to include in API
1553	// requests with the JSON null value. By default, fields with empty
1554	// values are omitted from API requests. However, any field with an
1555	// empty value appearing in NullFields will be sent to the server as
1556	// null. It is an error if a field in this list has a non-empty value.
1557	// This may be used to include null fields in Patch requests.
1558	NullFields []string `json:"-"`
1559}
1560
1561func (s *AccountsListLinksResponse) MarshalJSON() ([]byte, error) {
1562	type NoMethod AccountsListLinksResponse
1563	raw := NoMethod(*s)
1564	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1565}
1566
1567type AccountsListResponse struct {
1568	// Kind: Identifies what kind of resource this is. Value: the fixed
1569	// string "content#accountsListResponse".
1570	Kind string `json:"kind,omitempty"`
1571
1572	// NextPageToken: The token for the retrieval of the next page of
1573	// accounts.
1574	NextPageToken string `json:"nextPageToken,omitempty"`
1575
1576	Resources []*Account `json:"resources,omitempty"`
1577
1578	// ServerResponse contains the HTTP response code and headers from the
1579	// server.
1580	googleapi.ServerResponse `json:"-"`
1581
1582	// ForceSendFields is a list of field names (e.g. "Kind") to
1583	// unconditionally include in API requests. By default, fields with
1584	// empty values are omitted from API requests. However, any non-pointer,
1585	// non-interface field appearing in ForceSendFields will be sent to the
1586	// server regardless of whether the field is empty or not. This may be
1587	// used to include empty fields in Patch requests.
1588	ForceSendFields []string `json:"-"`
1589
1590	// NullFields is a list of field names (e.g. "Kind") to include in API
1591	// requests with the JSON null value. By default, fields with empty
1592	// values are omitted from API requests. However, any field with an
1593	// empty value appearing in NullFields will be sent to the server as
1594	// null. It is an error if a field in this list has a non-empty value.
1595	// This may be used to include null fields in Patch requests.
1596	NullFields []string `json:"-"`
1597}
1598
1599func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1600	type NoMethod AccountsListResponse
1601	raw := NoMethod(*s)
1602	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1603}
1604
1605type AccountsUpdateLabelsRequest struct {
1606	// LabelIds: The IDs of labels that should be assigned to the account.
1607	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1608
1609	// ForceSendFields is a list of field names (e.g. "LabelIds") to
1610	// unconditionally include in API requests. By default, fields with
1611	// empty values are omitted from API requests. However, any non-pointer,
1612	// non-interface field appearing in ForceSendFields will be sent to the
1613	// server regardless of whether the field is empty or not. This may be
1614	// used to include empty fields in Patch requests.
1615	ForceSendFields []string `json:"-"`
1616
1617	// NullFields is a list of field names (e.g. "LabelIds") to include in
1618	// API requests with the JSON null value. By default, fields with empty
1619	// values are omitted from API requests. However, any field with an
1620	// empty value appearing in NullFields will be sent to the server as
1621	// null. It is an error if a field in this list has a non-empty value.
1622	// This may be used to include null fields in Patch requests.
1623	NullFields []string `json:"-"`
1624}
1625
1626func (s *AccountsUpdateLabelsRequest) MarshalJSON() ([]byte, error) {
1627	type NoMethod AccountsUpdateLabelsRequest
1628	raw := NoMethod(*s)
1629	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1630}
1631
1632type AccountsUpdateLabelsResponse struct {
1633	// Kind: Identifies what kind of resource this is. Value: the fixed
1634	// string "content#accountsUpdateLabelsResponse".
1635	Kind string `json:"kind,omitempty"`
1636
1637	// ServerResponse contains the HTTP response code and headers from the
1638	// server.
1639	googleapi.ServerResponse `json:"-"`
1640
1641	// ForceSendFields is a list of field names (e.g. "Kind") to
1642	// unconditionally include in API requests. By default, fields with
1643	// empty values are omitted from API requests. However, any non-pointer,
1644	// non-interface field appearing in ForceSendFields will be sent to the
1645	// server regardless of whether the field is empty or not. This may be
1646	// used to include empty fields in Patch requests.
1647	ForceSendFields []string `json:"-"`
1648
1649	// NullFields is a list of field names (e.g. "Kind") to include in API
1650	// requests with the JSON null value. By default, fields with empty
1651	// values are omitted from API requests. However, any field with an
1652	// empty value appearing in NullFields will be sent to the server as
1653	// null. It is an error if a field in this list has a non-empty value.
1654	// This may be used to include null fields in Patch requests.
1655	NullFields []string `json:"-"`
1656}
1657
1658func (s *AccountsUpdateLabelsResponse) MarshalJSON() ([]byte, error) {
1659	type NoMethod AccountsUpdateLabelsResponse
1660	raw := NoMethod(*s)
1661	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1662}
1663
1664type AccountstatusesCustomBatchRequest struct {
1665	// Entries: The request entries to be processed in the batch.
1666	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
1667
1668	// ForceSendFields is a list of field names (e.g. "Entries") to
1669	// unconditionally include in API requests. By default, fields with
1670	// empty values are omitted from API requests. However, any non-pointer,
1671	// non-interface field appearing in ForceSendFields will be sent to the
1672	// server regardless of whether the field is empty or not. This may be
1673	// used to include empty fields in Patch requests.
1674	ForceSendFields []string `json:"-"`
1675
1676	// NullFields is a list of field names (e.g. "Entries") to include in
1677	// API requests with the JSON null value. By default, fields with empty
1678	// values are omitted from API requests. However, any field with an
1679	// empty value appearing in NullFields will be sent to the server as
1680	// null. It is an error if a field in this list has a non-empty value.
1681	// This may be used to include null fields in Patch requests.
1682	NullFields []string `json:"-"`
1683}
1684
1685func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
1686	type NoMethod AccountstatusesCustomBatchRequest
1687	raw := NoMethod(*s)
1688	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1689}
1690
1691// AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
1692// single non-batch accountstatuses request.
1693type AccountstatusesCustomBatchRequestEntry struct {
1694	// AccountId: The ID of the (sub-)account whose status to get.
1695	AccountId uint64 `json:"accountId,omitempty,string"`
1696
1697	// BatchId: An entry ID, unique within the batch request.
1698	BatchId int64 `json:"batchId,omitempty"`
1699
1700	// Destinations: If set, only issues for the specified destinations are
1701	// returned, otherwise only issues for the Shopping destination.
1702	Destinations []string `json:"destinations,omitempty"`
1703
1704	// MerchantId: The ID of the managing account.
1705	MerchantId uint64 `json:"merchantId,omitempty,string"`
1706
1707	// Method: The method of the batch entry. Acceptable values are: -
1708	// "get"
1709	Method string `json:"method,omitempty"`
1710
1711	// ForceSendFields is a list of field names (e.g. "AccountId") to
1712	// unconditionally include in API requests. By default, fields with
1713	// empty values are omitted from API requests. However, any non-pointer,
1714	// non-interface field appearing in ForceSendFields will be sent to the
1715	// server regardless of whether the field is empty or not. This may be
1716	// used to include empty fields in Patch requests.
1717	ForceSendFields []string `json:"-"`
1718
1719	// NullFields is a list of field names (e.g. "AccountId") to include in
1720	// API requests with the JSON null value. By default, fields with empty
1721	// values are omitted from API requests. However, any field with an
1722	// empty value appearing in NullFields will be sent to the server as
1723	// null. It is an error if a field in this list has a non-empty value.
1724	// This may be used to include null fields in Patch requests.
1725	NullFields []string `json:"-"`
1726}
1727
1728func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1729	type NoMethod AccountstatusesCustomBatchRequestEntry
1730	raw := NoMethod(*s)
1731	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1732}
1733
1734type AccountstatusesCustomBatchResponse struct {
1735	// Entries: The result of the execution of the batch requests.
1736	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
1737
1738	// Kind: Identifies what kind of resource this is. Value: the fixed
1739	// string "content#accountstatusesCustomBatchResponse".
1740	Kind string `json:"kind,omitempty"`
1741
1742	// ServerResponse contains the HTTP response code and headers from the
1743	// server.
1744	googleapi.ServerResponse `json:"-"`
1745
1746	// ForceSendFields is a list of field names (e.g. "Entries") to
1747	// unconditionally include in API requests. By default, fields with
1748	// empty values are omitted from API requests. However, any non-pointer,
1749	// non-interface field appearing in ForceSendFields will be sent to the
1750	// server regardless of whether the field is empty or not. This may be
1751	// used to include empty fields in Patch requests.
1752	ForceSendFields []string `json:"-"`
1753
1754	// NullFields is a list of field names (e.g. "Entries") to include in
1755	// API requests with the JSON null value. By default, fields with empty
1756	// values are omitted from API requests. However, any field with an
1757	// empty value appearing in NullFields will be sent to the server as
1758	// null. It is an error if a field in this list has a non-empty value.
1759	// This may be used to include null fields in Patch requests.
1760	NullFields []string `json:"-"`
1761}
1762
1763func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
1764	type NoMethod AccountstatusesCustomBatchResponse
1765	raw := NoMethod(*s)
1766	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1767}
1768
1769// AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
1770// single non-batch accountstatuses response.
1771type AccountstatusesCustomBatchResponseEntry struct {
1772	// AccountStatus: The requested account status. Defined if and only if
1773	// the request was successful.
1774	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
1775
1776	// BatchId: The ID of the request entry this entry responds to.
1777	BatchId int64 `json:"batchId,omitempty"`
1778
1779	// Errors: A list of errors defined if and only if the request failed.
1780	Errors *Errors `json:"errors,omitempty"`
1781
1782	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
1783	// unconditionally include in API requests. By default, fields with
1784	// empty values are omitted from API requests. However, any non-pointer,
1785	// non-interface field appearing in ForceSendFields will be sent to the
1786	// server regardless of whether the field is empty or not. This may be
1787	// used to include empty fields in Patch requests.
1788	ForceSendFields []string `json:"-"`
1789
1790	// NullFields is a list of field names (e.g. "AccountStatus") to include
1791	// in API requests with the JSON null value. By default, fields with
1792	// empty values are omitted from API requests. However, any field with
1793	// an empty value appearing in NullFields will be sent to the server as
1794	// null. It is an error if a field in this list has a non-empty value.
1795	// This may be used to include null fields in Patch requests.
1796	NullFields []string `json:"-"`
1797}
1798
1799func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1800	type NoMethod AccountstatusesCustomBatchResponseEntry
1801	raw := NoMethod(*s)
1802	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1803}
1804
1805type AccountstatusesListResponse struct {
1806	// Kind: Identifies what kind of resource this is. Value: the fixed
1807	// string "content#accountstatusesListResponse".
1808	Kind string `json:"kind,omitempty"`
1809
1810	// NextPageToken: The token for the retrieval of the next page of
1811	// account statuses.
1812	NextPageToken string `json:"nextPageToken,omitempty"`
1813
1814	Resources []*AccountStatus `json:"resources,omitempty"`
1815
1816	// ServerResponse contains the HTTP response code and headers from the
1817	// server.
1818	googleapi.ServerResponse `json:"-"`
1819
1820	// ForceSendFields is a list of field names (e.g. "Kind") to
1821	// unconditionally include in API requests. By default, fields with
1822	// empty values are omitted from API requests. However, any non-pointer,
1823	// non-interface field appearing in ForceSendFields will be sent to the
1824	// server regardless of whether the field is empty or not. This may be
1825	// used to include empty fields in Patch requests.
1826	ForceSendFields []string `json:"-"`
1827
1828	// NullFields is a list of field names (e.g. "Kind") to include in API
1829	// requests with the JSON null value. By default, fields with empty
1830	// values are omitted from API requests. However, any field with an
1831	// empty value appearing in NullFields will be sent to the server as
1832	// null. It is an error if a field in this list has a non-empty value.
1833	// This may be used to include null fields in Patch requests.
1834	NullFields []string `json:"-"`
1835}
1836
1837func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
1838	type NoMethod AccountstatusesListResponse
1839	raw := NoMethod(*s)
1840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1841}
1842
1843type AccounttaxCustomBatchRequest struct {
1844	// Entries: The request entries to be processed in the batch.
1845	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
1846
1847	// ForceSendFields is a list of field names (e.g. "Entries") to
1848	// unconditionally include in API requests. By default, fields with
1849	// empty values are omitted from API requests. However, any non-pointer,
1850	// non-interface field appearing in ForceSendFields will be sent to the
1851	// server regardless of whether the field is empty or not. This may be
1852	// used to include empty fields in Patch requests.
1853	ForceSendFields []string `json:"-"`
1854
1855	// NullFields is a list of field names (e.g. "Entries") to include in
1856	// API requests with the JSON null value. By default, fields with empty
1857	// values are omitted from API requests. However, any field with an
1858	// empty value appearing in NullFields will be sent to the server as
1859	// null. It is an error if a field in this list has a non-empty value.
1860	// This may be used to include null fields in Patch requests.
1861	NullFields []string `json:"-"`
1862}
1863
1864func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
1865	type NoMethod AccounttaxCustomBatchRequest
1866	raw := NoMethod(*s)
1867	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1868}
1869
1870// AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
1871// non-batch accounttax request.
1872type AccounttaxCustomBatchRequestEntry struct {
1873	// AccountId: The ID of the account for which to get/update account tax
1874	// settings.
1875	AccountId uint64 `json:"accountId,omitempty,string"`
1876
1877	// AccountTax: The account tax settings to update. Only defined if the
1878	// method is `update`.
1879	AccountTax *AccountTax `json:"accountTax,omitempty"`
1880
1881	// BatchId: An entry ID, unique within the batch request.
1882	BatchId int64 `json:"batchId,omitempty"`
1883
1884	// MerchantId: The ID of the managing account.
1885	MerchantId uint64 `json:"merchantId,omitempty,string"`
1886
1887	// Method: The method of the batch entry. Acceptable values are: -
1888	// "get" - "update"
1889	Method string `json:"method,omitempty"`
1890
1891	// ForceSendFields is a list of field names (e.g. "AccountId") to
1892	// unconditionally include in API requests. By default, fields with
1893	// empty values are omitted from API requests. However, any non-pointer,
1894	// non-interface field appearing in ForceSendFields will be sent to the
1895	// server regardless of whether the field is empty or not. This may be
1896	// used to include empty fields in Patch requests.
1897	ForceSendFields []string `json:"-"`
1898
1899	// NullFields is a list of field names (e.g. "AccountId") to include in
1900	// API requests with the JSON null value. By default, fields with empty
1901	// values are omitted from API requests. However, any field with an
1902	// empty value appearing in NullFields will be sent to the server as
1903	// null. It is an error if a field in this list has a non-empty value.
1904	// This may be used to include null fields in Patch requests.
1905	NullFields []string `json:"-"`
1906}
1907
1908func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1909	type NoMethod AccounttaxCustomBatchRequestEntry
1910	raw := NoMethod(*s)
1911	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1912}
1913
1914type AccounttaxCustomBatchResponse struct {
1915	// Entries: The result of the execution of the batch requests.
1916	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
1917
1918	// Kind: Identifies what kind of resource this is. Value: the fixed
1919	// string "content#accounttaxCustomBatchResponse".
1920	Kind string `json:"kind,omitempty"`
1921
1922	// ServerResponse contains the HTTP response code and headers from the
1923	// server.
1924	googleapi.ServerResponse `json:"-"`
1925
1926	// ForceSendFields is a list of field names (e.g. "Entries") to
1927	// unconditionally include in API requests. By default, fields with
1928	// empty values are omitted from API requests. However, any non-pointer,
1929	// non-interface field appearing in ForceSendFields will be sent to the
1930	// server regardless of whether the field is empty or not. This may be
1931	// used to include empty fields in Patch requests.
1932	ForceSendFields []string `json:"-"`
1933
1934	// NullFields is a list of field names (e.g. "Entries") to include in
1935	// API requests with the JSON null value. By default, fields with empty
1936	// values are omitted from API requests. However, any field with an
1937	// empty value appearing in NullFields will be sent to the server as
1938	// null. It is an error if a field in this list has a non-empty value.
1939	// This may be used to include null fields in Patch requests.
1940	NullFields []string `json:"-"`
1941}
1942
1943func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
1944	type NoMethod AccounttaxCustomBatchResponse
1945	raw := NoMethod(*s)
1946	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1947}
1948
1949// AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
1950// non-batch accounttax response.
1951type AccounttaxCustomBatchResponseEntry struct {
1952	// AccountTax: The retrieved or updated account tax settings.
1953	AccountTax *AccountTax `json:"accountTax,omitempty"`
1954
1955	// BatchId: The ID of the request entry this entry responds to.
1956	BatchId int64 `json:"batchId,omitempty"`
1957
1958	// Errors: A list of errors defined if and only if the request failed.
1959	Errors *Errors `json:"errors,omitempty"`
1960
1961	// Kind: Identifies what kind of resource this is. Value: the fixed
1962	// string "content#accounttaxCustomBatchResponseEntry"
1963	Kind string `json:"kind,omitempty"`
1964
1965	// ForceSendFields is a list of field names (e.g. "AccountTax") to
1966	// unconditionally include in API requests. By default, fields with
1967	// empty values are omitted from API requests. However, any non-pointer,
1968	// non-interface field appearing in ForceSendFields will be sent to the
1969	// server regardless of whether the field is empty or not. This may be
1970	// used to include empty fields in Patch requests.
1971	ForceSendFields []string `json:"-"`
1972
1973	// NullFields is a list of field names (e.g. "AccountTax") to include in
1974	// API requests with the JSON null value. By default, fields with empty
1975	// values are omitted from API requests. However, any field with an
1976	// empty value appearing in NullFields will be sent to the server as
1977	// null. It is an error if a field in this list has a non-empty value.
1978	// This may be used to include null fields in Patch requests.
1979	NullFields []string `json:"-"`
1980}
1981
1982func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1983	type NoMethod AccounttaxCustomBatchResponseEntry
1984	raw := NoMethod(*s)
1985	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1986}
1987
1988type AccounttaxListResponse struct {
1989	// Kind: Identifies what kind of resource this is. Value: the fixed
1990	// string "content#accounttaxListResponse".
1991	Kind string `json:"kind,omitempty"`
1992
1993	// NextPageToken: The token for the retrieval of the next page of
1994	// account tax settings.
1995	NextPageToken string `json:"nextPageToken,omitempty"`
1996
1997	Resources []*AccountTax `json:"resources,omitempty"`
1998
1999	// ServerResponse contains the HTTP response code and headers from the
2000	// server.
2001	googleapi.ServerResponse `json:"-"`
2002
2003	// ForceSendFields is a list of field names (e.g. "Kind") to
2004	// unconditionally include in API requests. By default, fields with
2005	// empty values are omitted from API requests. However, any non-pointer,
2006	// non-interface field appearing in ForceSendFields will be sent to the
2007	// server regardless of whether the field is empty or not. This may be
2008	// used to include empty fields in Patch requests.
2009	ForceSendFields []string `json:"-"`
2010
2011	// NullFields is a list of field names (e.g. "Kind") to include in API
2012	// requests with the JSON null value. By default, fields with empty
2013	// values are omitted from API requests. However, any field with an
2014	// empty value appearing in NullFields will be sent to the server as
2015	// null. It is an error if a field in this list has a non-empty value.
2016	// This may be used to include null fields in Patch requests.
2017	NullFields []string `json:"-"`
2018}
2019
2020func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
2021	type NoMethod AccounttaxListResponse
2022	raw := NoMethod(*s)
2023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2024}
2025
2026type Amount struct {
2027	// PriceAmount: [required] The pre-tax or post-tax price depending on
2028	// the location of the order.
2029	PriceAmount *Price `json:"priceAmount,omitempty"`
2030
2031	// TaxAmount: [required] Tax value.
2032	TaxAmount *Price `json:"taxAmount,omitempty"`
2033
2034	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
2035	// unconditionally include in API requests. By default, fields with
2036	// empty values are omitted from API requests. However, any non-pointer,
2037	// non-interface field appearing in ForceSendFields will be sent to the
2038	// server regardless of whether the field is empty or not. This may be
2039	// used to include empty fields in Patch requests.
2040	ForceSendFields []string `json:"-"`
2041
2042	// NullFields is a list of field names (e.g. "PriceAmount") to include
2043	// in API requests with the JSON null value. By default, fields with
2044	// empty values are omitted from API requests. However, any field with
2045	// an empty value appearing in NullFields will be sent to the server as
2046	// null. It is an error if a field in this list has a non-empty value.
2047	// This may be used to include null fields in Patch requests.
2048	NullFields []string `json:"-"`
2049}
2050
2051func (s *Amount) MarshalJSON() ([]byte, error) {
2052	type NoMethod Amount
2053	raw := NoMethod(*s)
2054	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2055}
2056
2057type BusinessDayConfig struct {
2058	// BusinessDays: Regular business days. May not be empty.
2059	BusinessDays []string `json:"businessDays,omitempty"`
2060
2061	// ForceSendFields is a list of field names (e.g. "BusinessDays") to
2062	// unconditionally include in API requests. By default, fields with
2063	// empty values are omitted from API requests. However, any non-pointer,
2064	// non-interface field appearing in ForceSendFields will be sent to the
2065	// server regardless of whether the field is empty or not. This may be
2066	// used to include empty fields in Patch requests.
2067	ForceSendFields []string `json:"-"`
2068
2069	// NullFields is a list of field names (e.g. "BusinessDays") to include
2070	// in API requests with the JSON null value. By default, fields with
2071	// empty values are omitted from API requests. However, any field with
2072	// an empty value appearing in NullFields will be sent to the server as
2073	// null. It is an error if a field in this list has a non-empty value.
2074	// This may be used to include null fields in Patch requests.
2075	NullFields []string `json:"-"`
2076}
2077
2078func (s *BusinessDayConfig) MarshalJSON() ([]byte, error) {
2079	type NoMethod BusinessDayConfig
2080	raw := NoMethod(*s)
2081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2082}
2083
2084type CarrierRate struct {
2085	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list
2086	// of supported carriers can be retrieved via the `getSupportedCarriers`
2087	// method. Required.
2088	CarrierName string `json:"carrierName,omitempty"`
2089
2090	// CarrierService: Carrier service, such as "ground" or "2 days".
2091	// The list of supported services for a carrier can be retrieved via the
2092	// `getSupportedCarriers` method. Required.
2093	CarrierService string `json:"carrierService,omitempty"`
2094
2095	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
2096	// example `{ "value": "1", "currency" : "USD" }` adds $1 to the rate,
2097	// `{ "value": "-3", "currency" : "USD" }` removes $3 from the rate.
2098	// Optional.
2099	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
2100
2101	// Name: Name of the carrier rate. Must be unique per rate group.
2102	// Required.
2103	Name string `json:"name,omitempty"`
2104
2105	// OriginPostalCode: Shipping origin for this carrier rate. Required.
2106	OriginPostalCode string `json:"originPostalCode,omitempty"`
2107
2108	// PercentageAdjustment: Multiplicative shipping rate modifier as a
2109	// number in decimal notation. Can be negative. For example "5.4"
2110	// increases the rate by 5.4%, "-3" decreases the rate by 3%.
2111	// Optional.
2112	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
2113
2114	// ForceSendFields is a list of field names (e.g. "CarrierName") to
2115	// unconditionally include in API requests. By default, fields with
2116	// empty values are omitted from API requests. However, any non-pointer,
2117	// non-interface field appearing in ForceSendFields will be sent to the
2118	// server regardless of whether the field is empty or not. This may be
2119	// used to include empty fields in Patch requests.
2120	ForceSendFields []string `json:"-"`
2121
2122	// NullFields is a list of field names (e.g. "CarrierName") to include
2123	// in API requests with the JSON null value. By default, fields with
2124	// empty values are omitted from API requests. However, any field with
2125	// an empty value appearing in NullFields will be sent to the server as
2126	// null. It is an error if a field in this list has a non-empty value.
2127	// This may be used to include null fields in Patch requests.
2128	NullFields []string `json:"-"`
2129}
2130
2131func (s *CarrierRate) MarshalJSON() ([]byte, error) {
2132	type NoMethod CarrierRate
2133	raw := NoMethod(*s)
2134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2135}
2136
2137type CarriersCarrier struct {
2138	// Country: The CLDR country code of the carrier (e.g., "US"). Always
2139	// present.
2140	Country string `json:"country,omitempty"`
2141
2142	// Name: The name of the carrier (e.g., "UPS"). Always present.
2143	Name string `json:"name,omitempty"`
2144
2145	// Services: A list of supported services (e.g., "ground") for that
2146	// carrier. Contains at least one service.
2147	Services []string `json:"services,omitempty"`
2148
2149	// ForceSendFields is a list of field names (e.g. "Country") to
2150	// unconditionally include in API requests. By default, fields with
2151	// empty values are omitted from API requests. However, any non-pointer,
2152	// non-interface field appearing in ForceSendFields will be sent to the
2153	// server regardless of whether the field is empty or not. This may be
2154	// used to include empty fields in Patch requests.
2155	ForceSendFields []string `json:"-"`
2156
2157	// NullFields is a list of field names (e.g. "Country") to include in
2158	// API requests with the JSON null value. By default, fields with empty
2159	// values are omitted from API requests. However, any field with an
2160	// empty value appearing in NullFields will be sent to the server as
2161	// null. It is an error if a field in this list has a non-empty value.
2162	// This may be used to include null fields in Patch requests.
2163	NullFields []string `json:"-"`
2164}
2165
2166func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
2167	type NoMethod CarriersCarrier
2168	raw := NoMethod(*s)
2169	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2170}
2171
2172// Css: Information about CSS domain.
2173type Css struct {
2174	// CssDomainId: Output only. Immutable. The CSS domain ID.
2175	CssDomainId int64 `json:"cssDomainId,omitempty,string"`
2176
2177	// CssGroupId: Output only. Immutable. The ID of the CSS group this CSS
2178	// domain is affiliated with. Only populated for CSS group users.
2179	CssGroupId int64 `json:"cssGroupId,omitempty,string"`
2180
2181	// DisplayName: Output only. Immutable. The CSS domain's display name,
2182	// used when space is constrained.
2183	DisplayName string `json:"displayName,omitempty"`
2184
2185	// FullName: Output only. Immutable. The CSS domain's full name.
2186	FullName string `json:"fullName,omitempty"`
2187
2188	// HomepageUri: Output only. Immutable. The CSS domain's homepage.
2189	HomepageUri string `json:"homepageUri,omitempty"`
2190
2191	// LabelIds: A list of label IDs that are assigned to this CSS domain by
2192	// its CSS group. Only populated for CSS group users.
2193	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
2194
2195	// ServerResponse contains the HTTP response code and headers from the
2196	// server.
2197	googleapi.ServerResponse `json:"-"`
2198
2199	// ForceSendFields is a list of field names (e.g. "CssDomainId") to
2200	// unconditionally include in API requests. By default, fields with
2201	// empty values are omitted from API requests. However, any non-pointer,
2202	// non-interface field appearing in ForceSendFields will be sent to the
2203	// server regardless of whether the field is empty or not. This may be
2204	// used to include empty fields in Patch requests.
2205	ForceSendFields []string `json:"-"`
2206
2207	// NullFields is a list of field names (e.g. "CssDomainId") to include
2208	// in API requests with the JSON null value. By default, fields with
2209	// empty values are omitted from API requests. However, any field with
2210	// an empty value appearing in NullFields will be sent to the server as
2211	// null. It is an error if a field in this list has a non-empty value.
2212	// This may be used to include null fields in Patch requests.
2213	NullFields []string `json:"-"`
2214}
2215
2216func (s *Css) MarshalJSON() ([]byte, error) {
2217	type NoMethod Css
2218	raw := NoMethod(*s)
2219	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2220}
2221
2222type CustomAttribute struct {
2223	// GroupValues: Subattributes within this attribute group. Exactly one
2224	// of value or groupValues must be provided.
2225	GroupValues []*CustomAttribute `json:"groupValues,omitempty"`
2226
2227	// Name: The name of the attribute. Underscores will be replaced by
2228	// spaces upon insertion.
2229	Name string `json:"name,omitempty"`
2230
2231	// Value: The value of the attribute.
2232	Value string `json:"value,omitempty"`
2233
2234	// ForceSendFields is a list of field names (e.g. "GroupValues") to
2235	// unconditionally include in API requests. By default, fields with
2236	// empty values are omitted from API requests. However, any non-pointer,
2237	// non-interface field appearing in ForceSendFields will be sent to the
2238	// server regardless of whether the field is empty or not. This may be
2239	// used to include empty fields in Patch requests.
2240	ForceSendFields []string `json:"-"`
2241
2242	// NullFields is a list of field names (e.g. "GroupValues") to include
2243	// in API requests with the JSON null value. By default, fields with
2244	// empty values are omitted from API requests. However, any field with
2245	// an empty value appearing in NullFields will be sent to the server as
2246	// null. It is an error if a field in this list has a non-empty value.
2247	// This may be used to include null fields in Patch requests.
2248	NullFields []string `json:"-"`
2249}
2250
2251func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
2252	type NoMethod CustomAttribute
2253	raw := NoMethod(*s)
2254	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2255}
2256
2257type CustomerReturnReason struct {
2258	// Description: Description of the reason.
2259	Description string `json:"description,omitempty"`
2260
2261	// ReasonCode: Code of the return reason. Acceptable values are: -
2262	// "betterPriceFound" - "changedMind" - "damagedOrDefectiveItem" -
2263	// "didNotMatchDescription" - "doesNotFit" - "expiredItem" -
2264	// "incorrectItemReceived" - "noLongerNeeded" - "notSpecified" -
2265	// "orderedWrongItem" - "other" - "qualityNotExpected" -
2266	// "receivedTooLate" - "undeliverable"
2267	ReasonCode string `json:"reasonCode,omitempty"`
2268
2269	// ForceSendFields is a list of field names (e.g. "Description") to
2270	// unconditionally include in API requests. By default, fields with
2271	// empty values are omitted from API requests. However, any non-pointer,
2272	// non-interface field appearing in ForceSendFields will be sent to the
2273	// server regardless of whether the field is empty or not. This may be
2274	// used to include empty fields in Patch requests.
2275	ForceSendFields []string `json:"-"`
2276
2277	// NullFields is a list of field names (e.g. "Description") to include
2278	// in API requests with the JSON null value. By default, fields with
2279	// empty values are omitted from API requests. However, any field with
2280	// an empty value appearing in NullFields will be sent to the server as
2281	// null. It is an error if a field in this list has a non-empty value.
2282	// This may be used to include null fields in Patch requests.
2283	NullFields []string `json:"-"`
2284}
2285
2286func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
2287	type NoMethod CustomerReturnReason
2288	raw := NoMethod(*s)
2289	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2290}
2291
2292type CutoffTime struct {
2293	// Hour: Hour of the cutoff time until which an order has to be placed
2294	// to be processed in the same day. Required.
2295	Hour int64 `json:"hour,omitempty"`
2296
2297	// Minute: Minute of the cutoff time until which an order has to be
2298	// placed to be processed in the same day. Required.
2299	Minute int64 `json:"minute,omitempty"`
2300
2301	// Timezone: Timezone identifier for the cutoff time. A list of
2302	// identifiers can be found in the AdWords API documentation. E.g.
2303	// "Europe/Zurich". Required.
2304	Timezone string `json:"timezone,omitempty"`
2305
2306	// ForceSendFields is a list of field names (e.g. "Hour") to
2307	// unconditionally include in API requests. By default, fields with
2308	// empty values are omitted from API requests. However, any non-pointer,
2309	// non-interface field appearing in ForceSendFields will be sent to the
2310	// server regardless of whether the field is empty or not. This may be
2311	// used to include empty fields in Patch requests.
2312	ForceSendFields []string `json:"-"`
2313
2314	// NullFields is a list of field names (e.g. "Hour") to include in API
2315	// requests with the JSON null value. By default, fields with empty
2316	// values are omitted from API requests. However, any field with an
2317	// empty value appearing in NullFields will be sent to the server as
2318	// null. It is an error if a field in this list has a non-empty value.
2319	// This may be used to include null fields in Patch requests.
2320	NullFields []string `json:"-"`
2321}
2322
2323func (s *CutoffTime) MarshalJSON() ([]byte, error) {
2324	type NoMethod CutoffTime
2325	raw := NoMethod(*s)
2326	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2327}
2328
2329// Datafeed: Datafeed configuration data.
2330type Datafeed struct {
2331	// AttributeLanguage: The two-letter ISO 639-1 language in which the
2332	// attributes are defined in the data feed.
2333	AttributeLanguage string `json:"attributeLanguage,omitempty"`
2334
2335	// ContentType: Required. The type of data feed. For product inventory
2336	// feeds, only feeds for local stores, not online stores, are supported.
2337	// Acceptable values are: - "local products" - "product inventory" -
2338	// "products"
2339	ContentType string `json:"contentType,omitempty"`
2340
2341	// FetchSchedule: Fetch schedule for the feed file.
2342	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
2343
2344	// FileName: Required. The filename of the feed. All feeds must have a
2345	// unique file name.
2346	FileName string `json:"fileName,omitempty"`
2347
2348	// Format: Format of the feed file.
2349	Format *DatafeedFormat `json:"format,omitempty"`
2350
2351	// Id: Required for update. The ID of the data feed.
2352	Id int64 `json:"id,omitempty,string"`
2353
2354	// Kind: Identifies what kind of resource this is. Value: the fixed
2355	// string "content#datafeed"
2356	Kind string `json:"kind,omitempty"`
2357
2358	// Name: Required for insert. A descriptive name of the data feed.
2359	Name string `json:"name,omitempty"`
2360
2361	// Targets: The targets this feed should apply to (country, language,
2362	// destinations).
2363	Targets []*DatafeedTarget `json:"targets,omitempty"`
2364
2365	// ServerResponse contains the HTTP response code and headers from the
2366	// server.
2367	googleapi.ServerResponse `json:"-"`
2368
2369	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
2370	// to unconditionally include in API requests. By default, fields with
2371	// empty values are omitted from API requests. However, any non-pointer,
2372	// non-interface field appearing in ForceSendFields will be sent to the
2373	// server regardless of whether the field is empty or not. This may be
2374	// used to include empty fields in Patch requests.
2375	ForceSendFields []string `json:"-"`
2376
2377	// NullFields is a list of field names (e.g. "AttributeLanguage") to
2378	// include in API requests with the JSON null value. By default, fields
2379	// with empty values are omitted from API requests. However, any field
2380	// with an empty value appearing in NullFields will be sent to the
2381	// server as null. It is an error if a field in this list has a
2382	// non-empty value. This may be used to include null fields in Patch
2383	// requests.
2384	NullFields []string `json:"-"`
2385}
2386
2387func (s *Datafeed) MarshalJSON() ([]byte, error) {
2388	type NoMethod Datafeed
2389	raw := NoMethod(*s)
2390	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2391}
2392
2393// DatafeedFetchSchedule: The required fields vary based on the
2394// frequency of fetching. For a monthly fetch schedule, day_of_month and
2395// hour are required. For a weekly fetch schedule, weekday and hour are
2396// required. For a daily fetch schedule, only hour is required.
2397type DatafeedFetchSchedule struct {
2398	// DayOfMonth: The day of the month the feed file should be fetched
2399	// (1-31).
2400	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
2401
2402	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
2403	// Center will support automatic scheduled uploads using the HTTP,
2404	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
2405	// link using one of those four protocols.
2406	FetchUrl string `json:"fetchUrl,omitempty"`
2407
2408	// Hour: The hour of the day the feed file should be fetched (0-23).
2409	Hour int64 `json:"hour,omitempty"`
2410
2411	// MinuteOfHour: The minute of the hour the feed file should be fetched
2412	// (0-59). Read-only.
2413	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
2414
2415	// Password: An optional password for fetch_url.
2416	Password string `json:"password,omitempty"`
2417
2418	// Paused: Whether the scheduled fetch is paused or not.
2419	Paused bool `json:"paused,omitempty"`
2420
2421	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
2422	// "America/Los_Angeles".
2423	TimeZone string `json:"timeZone,omitempty"`
2424
2425	// Username: An optional user name for fetch_url.
2426	Username string `json:"username,omitempty"`
2427
2428	// Weekday: The day of the week the feed file should be fetched.
2429	// Acceptable values are: - "monday" - "tuesday" - "wednesday" -
2430	// "thursday" - "friday" - "saturday" - "sunday"
2431	Weekday string `json:"weekday,omitempty"`
2432
2433	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
2434	// unconditionally include in API requests. By default, fields with
2435	// empty values are omitted from API requests. However, any non-pointer,
2436	// non-interface field appearing in ForceSendFields will be sent to the
2437	// server regardless of whether the field is empty or not. This may be
2438	// used to include empty fields in Patch requests.
2439	ForceSendFields []string `json:"-"`
2440
2441	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
2442	// API requests with the JSON null value. By default, fields with empty
2443	// values are omitted from API requests. However, any field with an
2444	// empty value appearing in NullFields will be sent to the server as
2445	// null. It is an error if a field in this list has a non-empty value.
2446	// This may be used to include null fields in Patch requests.
2447	NullFields []string `json:"-"`
2448}
2449
2450func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
2451	type NoMethod DatafeedFetchSchedule
2452	raw := NoMethod(*s)
2453	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2454}
2455
2456type DatafeedFormat struct {
2457	// ColumnDelimiter: Delimiter for the separation of values in a
2458	// delimiter-separated values feed. If not specified, the delimiter will
2459	// be auto-detected. Ignored for non-DSV data feeds. Acceptable values
2460	// are: - "pipe" - "tab" - "tilde"
2461	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
2462
2463	// FileEncoding: Character encoding scheme of the data feed. If not
2464	// specified, the encoding will be auto-detected. Acceptable values are:
2465	// - "latin-1" - "utf-16be" - "utf-16le" - "utf-8" -
2466	// "windows-1252"
2467	FileEncoding string `json:"fileEncoding,omitempty"`
2468
2469	// QuotingMode: Specifies how double quotes are interpreted. If not
2470	// specified, the mode will be auto-detected. Ignored for non-DSV data
2471	// feeds. Acceptable values are: - "normal character" - "value
2472	// quoting"
2473	QuotingMode string `json:"quotingMode,omitempty"`
2474
2475	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
2476	// unconditionally include in API requests. By default, fields with
2477	// empty values are omitted from API requests. However, any non-pointer,
2478	// non-interface field appearing in ForceSendFields will be sent to the
2479	// server regardless of whether the field is empty or not. This may be
2480	// used to include empty fields in Patch requests.
2481	ForceSendFields []string `json:"-"`
2482
2483	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
2484	// include in API requests with the JSON null value. By default, fields
2485	// with empty values are omitted from API requests. However, any field
2486	// with an empty value appearing in NullFields will be sent to the
2487	// server as null. It is an error if a field in this list has a
2488	// non-empty value. This may be used to include null fields in Patch
2489	// requests.
2490	NullFields []string `json:"-"`
2491}
2492
2493func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
2494	type NoMethod DatafeedFormat
2495	raw := NoMethod(*s)
2496	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2497}
2498
2499// DatafeedStatus: The status of a datafeed, i.e., the result of the
2500// last retrieval of the datafeed computed asynchronously when the feed
2501// processing is finished.
2502type DatafeedStatus struct {
2503	// Country: The country for which the status is reported, represented as
2504	// a CLDR territory code.
2505	Country string `json:"country,omitempty"`
2506
2507	// DatafeedId: The ID of the feed for which the status is reported.
2508	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2509
2510	// Errors: The list of errors occurring in the feed.
2511	Errors []*DatafeedStatusError `json:"errors,omitempty"`
2512
2513	// ItemsTotal: The number of items in the feed that were processed.
2514	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
2515
2516	// ItemsValid: The number of items in the feed that were valid.
2517	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
2518
2519	// Kind: Identifies what kind of resource this is. Value: the fixed
2520	// string "content#datafeedStatus"
2521	Kind string `json:"kind,omitempty"`
2522
2523	// Language: The two-letter ISO 639-1 language for which the status is
2524	// reported.
2525	Language string `json:"language,omitempty"`
2526
2527	// LastUploadDate: The last date at which the feed was uploaded.
2528	LastUploadDate string `json:"lastUploadDate,omitempty"`
2529
2530	// ProcessingStatus: The processing status of the feed. Acceptable
2531	// values are: - ""failure": The feed could not be processed or all
2532	// items had errors." - "in progress": The feed is being processed. -
2533	// "none": The feed has not yet been processed. For example, a feed
2534	// that has never been uploaded will have this processing status. -
2535	// "success": The feed was processed successfully, though some items
2536	// might have had errors.
2537	ProcessingStatus string `json:"processingStatus,omitempty"`
2538
2539	// Warnings: The list of errors occurring in the feed.
2540	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
2541
2542	// ServerResponse contains the HTTP response code and headers from the
2543	// server.
2544	googleapi.ServerResponse `json:"-"`
2545
2546	// ForceSendFields is a list of field names (e.g. "Country") to
2547	// unconditionally include in API requests. By default, fields with
2548	// empty values are omitted from API requests. However, any non-pointer,
2549	// non-interface field appearing in ForceSendFields will be sent to the
2550	// server regardless of whether the field is empty or not. This may be
2551	// used to include empty fields in Patch requests.
2552	ForceSendFields []string `json:"-"`
2553
2554	// NullFields is a list of field names (e.g. "Country") to include in
2555	// API requests with the JSON null value. By default, fields with empty
2556	// values are omitted from API requests. However, any field with an
2557	// empty value appearing in NullFields will be sent to the server as
2558	// null. It is an error if a field in this list has a non-empty value.
2559	// This may be used to include null fields in Patch requests.
2560	NullFields []string `json:"-"`
2561}
2562
2563func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
2564	type NoMethod DatafeedStatus
2565	raw := NoMethod(*s)
2566	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2567}
2568
2569// DatafeedStatusError: An error occurring in the feed, like "invalid
2570// price".
2571type DatafeedStatusError struct {
2572	// Code: The code of the error, e.g., "validation/invalid_value".
2573	Code string `json:"code,omitempty"`
2574
2575	// Count: The number of occurrences of the error in the feed.
2576	Count uint64 `json:"count,omitempty,string"`
2577
2578	// Examples: A list of example occurrences of the error, grouped by
2579	// product.
2580	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
2581
2582	// Message: The error message, e.g., "Invalid price".
2583	Message string `json:"message,omitempty"`
2584
2585	// ForceSendFields is a list of field names (e.g. "Code") to
2586	// unconditionally include in API requests. By default, fields with
2587	// empty values are omitted from API requests. However, any non-pointer,
2588	// non-interface field appearing in ForceSendFields will be sent to the
2589	// server regardless of whether the field is empty or not. This may be
2590	// used to include empty fields in Patch requests.
2591	ForceSendFields []string `json:"-"`
2592
2593	// NullFields is a list of field names (e.g. "Code") to include in API
2594	// requests with the JSON null value. By default, fields with empty
2595	// values are omitted from API requests. However, any field with an
2596	// empty value appearing in NullFields will be sent to the server as
2597	// null. It is an error if a field in this list has a non-empty value.
2598	// This may be used to include null fields in Patch requests.
2599	NullFields []string `json:"-"`
2600}
2601
2602func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
2603	type NoMethod DatafeedStatusError
2604	raw := NoMethod(*s)
2605	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2606}
2607
2608// DatafeedStatusExample: An example occurrence for a particular error.
2609type DatafeedStatusExample struct {
2610	// ItemId: The ID of the example item.
2611	ItemId string `json:"itemId,omitempty"`
2612
2613	// LineNumber: Line number in the data feed where the example is found.
2614	LineNumber uint64 `json:"lineNumber,omitempty,string"`
2615
2616	// Value: The problematic value.
2617	Value string `json:"value,omitempty"`
2618
2619	// ForceSendFields is a list of field names (e.g. "ItemId") to
2620	// unconditionally include in API requests. By default, fields with
2621	// empty values are omitted from API requests. However, any non-pointer,
2622	// non-interface field appearing in ForceSendFields will be sent to the
2623	// server regardless of whether the field is empty or not. This may be
2624	// used to include empty fields in Patch requests.
2625	ForceSendFields []string `json:"-"`
2626
2627	// NullFields is a list of field names (e.g. "ItemId") to include in API
2628	// requests with the JSON null value. By default, fields with empty
2629	// values are omitted from API requests. However, any field with an
2630	// empty value appearing in NullFields will be sent to the server as
2631	// null. It is an error if a field in this list has a non-empty value.
2632	// This may be used to include null fields in Patch requests.
2633	NullFields []string `json:"-"`
2634}
2635
2636func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
2637	type NoMethod DatafeedStatusExample
2638	raw := NoMethod(*s)
2639	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2640}
2641
2642type DatafeedTarget struct {
2643	// Country: The country where the items in the feed will be included in
2644	// the search index, represented as a CLDR territory code.
2645	Country string `json:"country,omitempty"`
2646
2647	// ExcludedDestinations: The list of destinations to exclude for this
2648	// target (corresponds to unchecked check boxes in Merchant Center).
2649	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
2650
2651	// IncludedDestinations: The list of destinations to include for this
2652	// target (corresponds to checked check boxes in Merchant Center).
2653	// Default destinations are always included unless provided in
2654	// `excludedDestinations`. List of supported destinations (if available
2655	// to the account): - DisplayAds - Shopping - ShoppingActions -
2656	// SurfacesAcrossGoogle
2657	IncludedDestinations []string `json:"includedDestinations,omitempty"`
2658
2659	// Language: The two-letter ISO 639-1 language of the items in the feed.
2660	// Must be a valid language for `targets[].country`.
2661	Language string `json:"language,omitempty"`
2662
2663	// ForceSendFields is a list of field names (e.g. "Country") to
2664	// unconditionally include in API requests. By default, fields with
2665	// empty values are omitted from API requests. However, any non-pointer,
2666	// non-interface field appearing in ForceSendFields will be sent to the
2667	// server regardless of whether the field is empty or not. This may be
2668	// used to include empty fields in Patch requests.
2669	ForceSendFields []string `json:"-"`
2670
2671	// NullFields is a list of field names (e.g. "Country") to include in
2672	// API requests with the JSON null value. By default, fields with empty
2673	// values are omitted from API requests. However, any field with an
2674	// empty value appearing in NullFields will be sent to the server as
2675	// null. It is an error if a field in this list has a non-empty value.
2676	// This may be used to include null fields in Patch requests.
2677	NullFields []string `json:"-"`
2678}
2679
2680func (s *DatafeedTarget) MarshalJSON() ([]byte, error) {
2681	type NoMethod DatafeedTarget
2682	raw := NoMethod(*s)
2683	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2684}
2685
2686type DatafeedsCustomBatchRequest struct {
2687	// Entries: The request entries to be processed in the batch.
2688	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
2689
2690	// ForceSendFields is a list of field names (e.g. "Entries") to
2691	// unconditionally include in API requests. By default, fields with
2692	// empty values are omitted from API requests. However, any non-pointer,
2693	// non-interface field appearing in ForceSendFields will be sent to the
2694	// server regardless of whether the field is empty or not. This may be
2695	// used to include empty fields in Patch requests.
2696	ForceSendFields []string `json:"-"`
2697
2698	// NullFields is a list of field names (e.g. "Entries") to include in
2699	// API requests with the JSON null value. By default, fields with empty
2700	// values are omitted from API requests. However, any field with an
2701	// empty value appearing in NullFields will be sent to the server as
2702	// null. It is an error if a field in this list has a non-empty value.
2703	// This may be used to include null fields in Patch requests.
2704	NullFields []string `json:"-"`
2705}
2706
2707func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
2708	type NoMethod DatafeedsCustomBatchRequest
2709	raw := NoMethod(*s)
2710	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2711}
2712
2713// DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
2714// non-batch datafeeds request.
2715type DatafeedsCustomBatchRequestEntry struct {
2716	// BatchId: An entry ID, unique within the batch request.
2717	BatchId int64 `json:"batchId,omitempty"`
2718
2719	// Datafeed: The data feed to insert.
2720	Datafeed *Datafeed `json:"datafeed,omitempty"`
2721
2722	// DatafeedId: The ID of the data feed to get, delete or fetch.
2723	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2724
2725	// MerchantId: The ID of the managing account.
2726	MerchantId uint64 `json:"merchantId,omitempty,string"`
2727
2728	// Method: The method of the batch entry. Acceptable values are: -
2729	// "delete" - "fetchNow" - "get" - "insert" - "update"
2730	Method string `json:"method,omitempty"`
2731
2732	// ForceSendFields is a list of field names (e.g. "BatchId") to
2733	// unconditionally include in API requests. By default, fields with
2734	// empty values are omitted from API requests. However, any non-pointer,
2735	// non-interface field appearing in ForceSendFields will be sent to the
2736	// server regardless of whether the field is empty or not. This may be
2737	// used to include empty fields in Patch requests.
2738	ForceSendFields []string `json:"-"`
2739
2740	// NullFields is a list of field names (e.g. "BatchId") to include in
2741	// API requests with the JSON null value. By default, fields with empty
2742	// values are omitted from API requests. However, any field with an
2743	// empty value appearing in NullFields will be sent to the server as
2744	// null. It is an error if a field in this list has a non-empty value.
2745	// This may be used to include null fields in Patch requests.
2746	NullFields []string `json:"-"`
2747}
2748
2749func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2750	type NoMethod DatafeedsCustomBatchRequestEntry
2751	raw := NoMethod(*s)
2752	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2753}
2754
2755type DatafeedsCustomBatchResponse struct {
2756	// Entries: The result of the execution of the batch requests.
2757	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
2758
2759	// Kind: Identifies what kind of resource this is. Value: the fixed
2760	// string "content#datafeedsCustomBatchResponse".
2761	Kind string `json:"kind,omitempty"`
2762
2763	// ServerResponse contains the HTTP response code and headers from the
2764	// server.
2765	googleapi.ServerResponse `json:"-"`
2766
2767	// ForceSendFields is a list of field names (e.g. "Entries") to
2768	// unconditionally include in API requests. By default, fields with
2769	// empty values are omitted from API requests. However, any non-pointer,
2770	// non-interface field appearing in ForceSendFields will be sent to the
2771	// server regardless of whether the field is empty or not. This may be
2772	// used to include empty fields in Patch requests.
2773	ForceSendFields []string `json:"-"`
2774
2775	// NullFields is a list of field names (e.g. "Entries") to include in
2776	// API requests with the JSON null value. By default, fields with empty
2777	// values are omitted from API requests. However, any field with an
2778	// empty value appearing in NullFields will be sent to the server as
2779	// null. It is an error if a field in this list has a non-empty value.
2780	// This may be used to include null fields in Patch requests.
2781	NullFields []string `json:"-"`
2782}
2783
2784func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
2785	type NoMethod DatafeedsCustomBatchResponse
2786	raw := NoMethod(*s)
2787	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2788}
2789
2790// DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
2791// non-batch datafeeds response.
2792type DatafeedsCustomBatchResponseEntry struct {
2793	// BatchId: The ID of the request entry this entry responds to.
2794	BatchId int64 `json:"batchId,omitempty"`
2795
2796	// Datafeed: The requested data feed. Defined if and only if the request
2797	// was successful.
2798	Datafeed *Datafeed `json:"datafeed,omitempty"`
2799
2800	// Errors: A list of errors defined if and only if the request failed.
2801	Errors *Errors `json:"errors,omitempty"`
2802
2803	// ForceSendFields is a list of field names (e.g. "BatchId") to
2804	// unconditionally include in API requests. By default, fields with
2805	// empty values are omitted from API requests. However, any non-pointer,
2806	// non-interface field appearing in ForceSendFields will be sent to the
2807	// server regardless of whether the field is empty or not. This may be
2808	// used to include empty fields in Patch requests.
2809	ForceSendFields []string `json:"-"`
2810
2811	// NullFields is a list of field names (e.g. "BatchId") to include in
2812	// API requests with the JSON null value. By default, fields with empty
2813	// values are omitted from API requests. However, any field with an
2814	// empty value appearing in NullFields will be sent to the server as
2815	// null. It is an error if a field in this list has a non-empty value.
2816	// This may be used to include null fields in Patch requests.
2817	NullFields []string `json:"-"`
2818}
2819
2820func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2821	type NoMethod DatafeedsCustomBatchResponseEntry
2822	raw := NoMethod(*s)
2823	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2824}
2825
2826type DatafeedsFetchNowResponse struct {
2827	// Kind: Identifies what kind of resource this is. Value: the fixed
2828	// string "content#datafeedsFetchNowResponse".
2829	Kind string `json:"kind,omitempty"`
2830
2831	// ServerResponse contains the HTTP response code and headers from the
2832	// server.
2833	googleapi.ServerResponse `json:"-"`
2834
2835	// ForceSendFields is a list of field names (e.g. "Kind") to
2836	// unconditionally include in API requests. By default, fields with
2837	// empty values are omitted from API requests. However, any non-pointer,
2838	// non-interface field appearing in ForceSendFields will be sent to the
2839	// server regardless of whether the field is empty or not. This may be
2840	// used to include empty fields in Patch requests.
2841	ForceSendFields []string `json:"-"`
2842
2843	// NullFields is a list of field names (e.g. "Kind") to include in API
2844	// requests with the JSON null value. By default, fields with empty
2845	// values are omitted from API requests. However, any field with an
2846	// empty value appearing in NullFields will be sent to the server as
2847	// null. It is an error if a field in this list has a non-empty value.
2848	// This may be used to include null fields in Patch requests.
2849	NullFields []string `json:"-"`
2850}
2851
2852func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
2853	type NoMethod DatafeedsFetchNowResponse
2854	raw := NoMethod(*s)
2855	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2856}
2857
2858type DatafeedsListResponse struct {
2859	// Kind: Identifies what kind of resource this is. Value: the fixed
2860	// string "content#datafeedsListResponse".
2861	Kind string `json:"kind,omitempty"`
2862
2863	// NextPageToken: The token for the retrieval of the next page of
2864	// datafeeds.
2865	NextPageToken string `json:"nextPageToken,omitempty"`
2866
2867	Resources []*Datafeed `json:"resources,omitempty"`
2868
2869	// ServerResponse contains the HTTP response code and headers from the
2870	// server.
2871	googleapi.ServerResponse `json:"-"`
2872
2873	// ForceSendFields is a list of field names (e.g. "Kind") to
2874	// unconditionally include in API requests. By default, fields with
2875	// empty values are omitted from API requests. However, any non-pointer,
2876	// non-interface field appearing in ForceSendFields will be sent to the
2877	// server regardless of whether the field is empty or not. This may be
2878	// used to include empty fields in Patch requests.
2879	ForceSendFields []string `json:"-"`
2880
2881	// NullFields is a list of field names (e.g. "Kind") to include in API
2882	// requests with the JSON null value. By default, fields with empty
2883	// values are omitted from API requests. However, any field with an
2884	// empty value appearing in NullFields will be sent to the server as
2885	// null. It is an error if a field in this list has a non-empty value.
2886	// This may be used to include null fields in Patch requests.
2887	NullFields []string `json:"-"`
2888}
2889
2890func (s *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
2891	type NoMethod DatafeedsListResponse
2892	raw := NoMethod(*s)
2893	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2894}
2895
2896type DatafeedstatusesCustomBatchRequest struct {
2897	// Entries: The request entries to be processed in the batch.
2898	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
2899
2900	// ForceSendFields is a list of field names (e.g. "Entries") to
2901	// unconditionally include in API requests. By default, fields with
2902	// empty values are omitted from API requests. However, any non-pointer,
2903	// non-interface field appearing in ForceSendFields will be sent to the
2904	// server regardless of whether the field is empty or not. This may be
2905	// used to include empty fields in Patch requests.
2906	ForceSendFields []string `json:"-"`
2907
2908	// NullFields is a list of field names (e.g. "Entries") to include in
2909	// API requests with the JSON null value. By default, fields with empty
2910	// values are omitted from API requests. However, any field with an
2911	// empty value appearing in NullFields will be sent to the server as
2912	// null. It is an error if a field in this list has a non-empty value.
2913	// This may be used to include null fields in Patch requests.
2914	NullFields []string `json:"-"`
2915}
2916
2917func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
2918	type NoMethod DatafeedstatusesCustomBatchRequest
2919	raw := NoMethod(*s)
2920	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2921}
2922
2923// DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
2924// single non-batch datafeedstatuses request.
2925type DatafeedstatusesCustomBatchRequestEntry struct {
2926	// BatchId: An entry ID, unique within the batch request.
2927	BatchId int64 `json:"batchId,omitempty"`
2928
2929	// Country: The country for which to get the datafeed status. If this
2930	// parameter is provided then language must also be provided. Note that
2931	// for multi-target datafeeds this parameter is required.
2932	Country string `json:"country,omitempty"`
2933
2934	// DatafeedId: The ID of the data feed to get.
2935	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2936
2937	// Language: The language for which to get the datafeed status. If this
2938	// parameter is provided then country must also be provided. Note that
2939	// for multi-target datafeeds this parameter is required.
2940	Language string `json:"language,omitempty"`
2941
2942	// MerchantId: The ID of the managing account.
2943	MerchantId uint64 `json:"merchantId,omitempty,string"`
2944
2945	// Method: The method of the batch entry. Acceptable values are: -
2946	// "get"
2947	Method string `json:"method,omitempty"`
2948
2949	// ForceSendFields is a list of field names (e.g. "BatchId") to
2950	// unconditionally include in API requests. By default, fields with
2951	// empty values are omitted from API requests. However, any non-pointer,
2952	// non-interface field appearing in ForceSendFields will be sent to the
2953	// server regardless of whether the field is empty or not. This may be
2954	// used to include empty fields in Patch requests.
2955	ForceSendFields []string `json:"-"`
2956
2957	// NullFields is a list of field names (e.g. "BatchId") to include in
2958	// API requests with the JSON null value. By default, fields with empty
2959	// values are omitted from API requests. However, any field with an
2960	// empty value appearing in NullFields will be sent to the server as
2961	// null. It is an error if a field in this list has a non-empty value.
2962	// This may be used to include null fields in Patch requests.
2963	NullFields []string `json:"-"`
2964}
2965
2966func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2967	type NoMethod DatafeedstatusesCustomBatchRequestEntry
2968	raw := NoMethod(*s)
2969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2970}
2971
2972type DatafeedstatusesCustomBatchResponse struct {
2973	// Entries: The result of the execution of the batch requests.
2974	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
2975
2976	// Kind: Identifies what kind of resource this is. Value: the fixed
2977	// string "content#datafeedstatusesCustomBatchResponse".
2978	Kind string `json:"kind,omitempty"`
2979
2980	// ServerResponse contains the HTTP response code and headers from the
2981	// server.
2982	googleapi.ServerResponse `json:"-"`
2983
2984	// ForceSendFields is a list of field names (e.g. "Entries") to
2985	// unconditionally include in API requests. By default, fields with
2986	// empty values are omitted from API requests. However, any non-pointer,
2987	// non-interface field appearing in ForceSendFields will be sent to the
2988	// server regardless of whether the field is empty or not. This may be
2989	// used to include empty fields in Patch requests.
2990	ForceSendFields []string `json:"-"`
2991
2992	// NullFields is a list of field names (e.g. "Entries") to include in
2993	// API requests with the JSON null value. By default, fields with empty
2994	// values are omitted from API requests. However, any field with an
2995	// empty value appearing in NullFields will be sent to the server as
2996	// null. It is an error if a field in this list has a non-empty value.
2997	// This may be used to include null fields in Patch requests.
2998	NullFields []string `json:"-"`
2999}
3000
3001func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
3002	type NoMethod DatafeedstatusesCustomBatchResponse
3003	raw := NoMethod(*s)
3004	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3005}
3006
3007// DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
3008// single non-batch datafeedstatuses response.
3009type DatafeedstatusesCustomBatchResponseEntry struct {
3010	// BatchId: The ID of the request entry this entry responds to.
3011	BatchId int64 `json:"batchId,omitempty"`
3012
3013	// DatafeedStatus: The requested data feed status. Defined if and only
3014	// if the request was successful.
3015	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
3016
3017	// Errors: A list of errors defined if and only if the request failed.
3018	Errors *Errors `json:"errors,omitempty"`
3019
3020	// ForceSendFields is a list of field names (e.g. "BatchId") to
3021	// unconditionally include in API requests. By default, fields with
3022	// empty values are omitted from API requests. However, any non-pointer,
3023	// non-interface field appearing in ForceSendFields will be sent to the
3024	// server regardless of whether the field is empty or not. This may be
3025	// used to include empty fields in Patch requests.
3026	ForceSendFields []string `json:"-"`
3027
3028	// NullFields is a list of field names (e.g. "BatchId") to include in
3029	// API requests with the JSON null value. By default, fields with empty
3030	// values are omitted from API requests. However, any field with an
3031	// empty value appearing in NullFields will be sent to the server as
3032	// null. It is an error if a field in this list has a non-empty value.
3033	// This may be used to include null fields in Patch requests.
3034	NullFields []string `json:"-"`
3035}
3036
3037func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3038	type NoMethod DatafeedstatusesCustomBatchResponseEntry
3039	raw := NoMethod(*s)
3040	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3041}
3042
3043type DatafeedstatusesListResponse struct {
3044	// Kind: Identifies what kind of resource this is. Value: the fixed
3045	// string "content#datafeedstatusesListResponse".
3046	Kind string `json:"kind,omitempty"`
3047
3048	// NextPageToken: The token for the retrieval of the next page of
3049	// datafeed statuses.
3050	NextPageToken string `json:"nextPageToken,omitempty"`
3051
3052	Resources []*DatafeedStatus `json:"resources,omitempty"`
3053
3054	// ServerResponse contains the HTTP response code and headers from the
3055	// server.
3056	googleapi.ServerResponse `json:"-"`
3057
3058	// ForceSendFields is a list of field names (e.g. "Kind") to
3059	// unconditionally include in API requests. By default, fields with
3060	// empty values are omitted from API requests. However, any non-pointer,
3061	// non-interface field appearing in ForceSendFields will be sent to the
3062	// server regardless of whether the field is empty or not. This may be
3063	// used to include empty fields in Patch requests.
3064	ForceSendFields []string `json:"-"`
3065
3066	// NullFields is a list of field names (e.g. "Kind") to include in API
3067	// requests with the JSON null value. By default, fields with empty
3068	// values are omitted from API requests. However, any field with an
3069	// empty value appearing in NullFields will be sent to the server as
3070	// null. It is an error if a field in this list has a non-empty value.
3071	// This may be used to include null fields in Patch requests.
3072	NullFields []string `json:"-"`
3073}
3074
3075func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
3076	type NoMethod DatafeedstatusesListResponse
3077	raw := NoMethod(*s)
3078	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3079}
3080
3081// DateTime: Represents civil time (or occasionally physical time). This
3082// type can represent a civil time in one of a few possible ways: * When
3083// utc_offset is set and time_zone is unset: a civil time on a calendar
3084// day with a particular offset from UTC. * When time_zone is set and
3085// utc_offset is unset: a civil time on a calendar day in a particular
3086// time zone. * When neither time_zone nor utc_offset is set: a civil
3087// time on a calendar day in local time. The date is relative to the
3088// Proleptic Gregorian Calendar. If year is 0, the DateTime is
3089// considered not to have a specific year. month and day must have
3090// valid, non-zero values. This type may also be used to represent a
3091// physical time if all the date and time fields are set and either case
3092// of the `time_offset` oneof is set. Consider using `Timestamp` message
3093// for physical time instead. If your use case also would like to store
3094// the user's timezone, that can be done in another field. This type is
3095// more flexible than some applications may want. Make sure to document
3096// and validate your application's limitations.
3097type DateTime struct {
3098	// Day: Required. Day of month. Must be from 1 to 31 and valid for the
3099	// year and month.
3100	Day int64 `json:"day,omitempty"`
3101
3102	// Hours: Required. Hours of day in 24 hour format. Should be from 0 to
3103	// 23. An API may choose to allow the value "24:00:00" for scenarios
3104	// like business closing time.
3105	Hours int64 `json:"hours,omitempty"`
3106
3107	// Minutes: Required. Minutes of hour of day. Must be from 0 to 59.
3108	Minutes int64 `json:"minutes,omitempty"`
3109
3110	// Month: Required. Month of year. Must be from 1 to 12.
3111	Month int64 `json:"month,omitempty"`
3112
3113	// Nanos: Required. Fractions of seconds in nanoseconds. Must be from 0
3114	// to 999,999,999.
3115	Nanos int64 `json:"nanos,omitempty"`
3116
3117	// Seconds: Required. Seconds of minutes of the time. Must normally be
3118	// from 0 to 59. An API may allow the value 60 if it allows
3119	// leap-seconds.
3120	Seconds int64 `json:"seconds,omitempty"`
3121
3122	// TimeZone: Time zone.
3123	TimeZone *TimeZone `json:"timeZone,omitempty"`
3124
3125	// UtcOffset: UTC offset. Must be whole seconds, between -18 hours and
3126	// +18 hours. For example, a UTC offset of -4:00 would be represented as
3127	// { seconds: -14400 }.
3128	UtcOffset string `json:"utcOffset,omitempty"`
3129
3130	// Year: Optional. Year of date. Must be from 1 to 9999, or 0 if
3131	// specifying a datetime without a year.
3132	Year int64 `json:"year,omitempty"`
3133
3134	// ForceSendFields is a list of field names (e.g. "Day") to
3135	// unconditionally include in API requests. By default, fields with
3136	// empty values are omitted from API requests. However, any non-pointer,
3137	// non-interface field appearing in ForceSendFields will be sent to the
3138	// server regardless of whether the field is empty or not. This may be
3139	// used to include empty fields in Patch requests.
3140	ForceSendFields []string `json:"-"`
3141
3142	// NullFields is a list of field names (e.g. "Day") to include in API
3143	// requests with the JSON null value. By default, fields with empty
3144	// values are omitted from API requests. However, any field with an
3145	// empty value appearing in NullFields will be sent to the server as
3146	// null. It is an error if a field in this list has a non-empty value.
3147	// This may be used to include null fields in Patch requests.
3148	NullFields []string `json:"-"`
3149}
3150
3151func (s *DateTime) MarshalJSON() ([]byte, error) {
3152	type NoMethod DateTime
3153	raw := NoMethod(*s)
3154	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3155}
3156
3157type DeliveryTime struct {
3158	// CutoffTime: Business days cutoff time definition. If not configured
3159	// the cutoff time will be defaulted to 8AM PST.
3160	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
3161
3162	// HandlingBusinessDayConfig: The business days during which orders can
3163	// be handled. If not provided, Monday to Friday business days will be
3164	// assumed.
3165	HandlingBusinessDayConfig *BusinessDayConfig `json:"handlingBusinessDayConfig,omitempty"`
3166
3167	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
3168	// specify order cutoff times for holiday-specific shipping.
3169	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
3170
3171	// MaxHandlingTimeInDays: Maximum number of business days spent before
3172	// an order is shipped. 0 means same day shipped, 1 means next day
3173	// shipped. Must be greater than or equal to `minHandlingTimeInDays`.
3174	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
3175
3176	// MaxTransitTimeInDays: Maximum number of business days that is spent
3177	// in transit. 0 means same day delivery, 1 means next day delivery.
3178	// Must be greater than or equal to `minTransitTimeInDays`.
3179	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
3180
3181	// MinHandlingTimeInDays: Minimum number of business days spent before
3182	// an order is shipped. 0 means same day shipped, 1 means next day
3183	// shipped.
3184	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
3185
3186	// MinTransitTimeInDays: Minimum number of business days that is spent
3187	// in transit. 0 means same day delivery, 1 means next day delivery.
3188	// Either `{min,max}TransitTimeInDays` or `transitTimeTable` must be
3189	// set, but not both.
3190	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
3191
3192	// TransitBusinessDayConfig: The business days during which orders can
3193	// be in-transit. If not provided, Monday to Friday business days will
3194	// be assumed.
3195	TransitBusinessDayConfig *BusinessDayConfig `json:"transitBusinessDayConfig,omitempty"`
3196
3197	// TransitTimeTable: Transit time table, number of business days spent
3198	// in transit based on row and column dimensions. Either
3199	// `{min,max}TransitTimeInDays` or `transitTimeTable` can be set, but
3200	// not both.
3201	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
3202
3203	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
3204	// unconditionally include in API requests. By default, fields with
3205	// empty values are omitted from API requests. However, any non-pointer,
3206	// non-interface field appearing in ForceSendFields will be sent to the
3207	// server regardless of whether the field is empty or not. This may be
3208	// used to include empty fields in Patch requests.
3209	ForceSendFields []string `json:"-"`
3210
3211	// NullFields is a list of field names (e.g. "CutoffTime") to include in
3212	// API requests with the JSON null value. By default, fields with empty
3213	// values are omitted from API requests. However, any field with an
3214	// empty value appearing in NullFields will be sent to the server as
3215	// null. It is an error if a field in this list has a non-empty value.
3216	// This may be used to include null fields in Patch requests.
3217	NullFields []string `json:"-"`
3218}
3219
3220func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
3221	type NoMethod DeliveryTime
3222	raw := NoMethod(*s)
3223	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3224}
3225
3226// Error: An error returned by the API.
3227type Error struct {
3228	// Domain: The domain of the error.
3229	Domain string `json:"domain,omitempty"`
3230
3231	// Message: A description of the error.
3232	Message string `json:"message,omitempty"`
3233
3234	// Reason: The error code.
3235	Reason string `json:"reason,omitempty"`
3236
3237	// ForceSendFields is a list of field names (e.g. "Domain") to
3238	// unconditionally include in API requests. By default, fields with
3239	// empty values are omitted from API requests. However, any non-pointer,
3240	// non-interface field appearing in ForceSendFields will be sent to the
3241	// server regardless of whether the field is empty or not. This may be
3242	// used to include empty fields in Patch requests.
3243	ForceSendFields []string `json:"-"`
3244
3245	// NullFields is a list of field names (e.g. "Domain") to include in API
3246	// requests with the JSON null value. By default, fields with empty
3247	// values are omitted from API requests. However, any field with an
3248	// empty value appearing in NullFields will be sent to the server as
3249	// null. It is an error if a field in this list has a non-empty value.
3250	// This may be used to include null fields in Patch requests.
3251	NullFields []string `json:"-"`
3252}
3253
3254func (s *Error) MarshalJSON() ([]byte, error) {
3255	type NoMethod Error
3256	raw := NoMethod(*s)
3257	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3258}
3259
3260// Errors: A list of errors returned by a failed batch entry.
3261type Errors struct {
3262	// Code: The HTTP status of the first error in `errors`.
3263	Code int64 `json:"code,omitempty"`
3264
3265	// Errors: A list of errors.
3266	Errors []*Error `json:"errors,omitempty"`
3267
3268	// Message: The message of the first error in `errors`.
3269	Message string `json:"message,omitempty"`
3270
3271	// ForceSendFields is a list of field names (e.g. "Code") to
3272	// unconditionally include in API requests. By default, fields with
3273	// empty values are omitted from API requests. However, any non-pointer,
3274	// non-interface field appearing in ForceSendFields will be sent to the
3275	// server regardless of whether the field is empty or not. This may be
3276	// used to include empty fields in Patch requests.
3277	ForceSendFields []string `json:"-"`
3278
3279	// NullFields is a list of field names (e.g. "Code") to include in API
3280	// requests with the JSON null value. By default, fields with empty
3281	// values are omitted from API requests. However, any field with an
3282	// empty value appearing in NullFields will be sent to the server as
3283	// null. It is an error if a field in this list has a non-empty value.
3284	// This may be used to include null fields in Patch requests.
3285	NullFields []string `json:"-"`
3286}
3287
3288func (s *Errors) MarshalJSON() ([]byte, error) {
3289	type NoMethod Errors
3290	raw := NoMethod(*s)
3291	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3292}
3293
3294type GmbAccounts struct {
3295	// AccountId: The ID of the Merchant Center account.
3296	AccountId uint64 `json:"accountId,omitempty,string"`
3297
3298	// GmbAccounts: A list of GMB accounts which are available to the
3299	// merchant.
3300	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
3301
3302	// ForceSendFields is a list of field names (e.g. "AccountId") to
3303	// unconditionally include in API requests. By default, fields with
3304	// empty values are omitted from API requests. However, any non-pointer,
3305	// non-interface field appearing in ForceSendFields will be sent to the
3306	// server regardless of whether the field is empty or not. This may be
3307	// used to include empty fields in Patch requests.
3308	ForceSendFields []string `json:"-"`
3309
3310	// NullFields is a list of field names (e.g. "AccountId") to include in
3311	// API requests with the JSON null value. By default, fields with empty
3312	// values are omitted from API requests. However, any field with an
3313	// empty value appearing in NullFields will be sent to the server as
3314	// null. It is an error if a field in this list has a non-empty value.
3315	// This may be used to include null fields in Patch requests.
3316	NullFields []string `json:"-"`
3317}
3318
3319func (s *GmbAccounts) MarshalJSON() ([]byte, error) {
3320	type NoMethod GmbAccounts
3321	raw := NoMethod(*s)
3322	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3323}
3324
3325type GmbAccountsGmbAccount struct {
3326	// Email: The email which identifies the GMB account.
3327	Email string `json:"email,omitempty"`
3328
3329	// ListingCount: Number of listings under this account.
3330	ListingCount uint64 `json:"listingCount,omitempty,string"`
3331
3332	// Name: The name of the GMB account.
3333	Name string `json:"name,omitempty"`
3334
3335	// Type: The type of the GMB account (User or Business).
3336	Type string `json:"type,omitempty"`
3337
3338	// ForceSendFields is a list of field names (e.g. "Email") to
3339	// unconditionally include in API requests. By default, fields with
3340	// empty values are omitted from API requests. However, any non-pointer,
3341	// non-interface field appearing in ForceSendFields will be sent to the
3342	// server regardless of whether the field is empty or not. This may be
3343	// used to include empty fields in Patch requests.
3344	ForceSendFields []string `json:"-"`
3345
3346	// NullFields is a list of field names (e.g. "Email") to include in API
3347	// requests with the JSON null value. By default, fields with empty
3348	// values are omitted from API requests. However, any field with an
3349	// empty value appearing in NullFields will be sent to the server as
3350	// null. It is an error if a field in this list has a non-empty value.
3351	// This may be used to include null fields in Patch requests.
3352	NullFields []string `json:"-"`
3353}
3354
3355func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
3356	type NoMethod GmbAccountsGmbAccount
3357	raw := NoMethod(*s)
3358	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3359}
3360
3361// Headers: A non-empty list of row or column headers for a table.
3362// Exactly one of `prices`, `weights`, `numItems`,
3363// `postalCodeGroupNames`, or `location` must be set.
3364type Headers struct {
3365	// Locations: A list of location ID sets. Must be non-empty. Can only be
3366	// set if all other fields are not set.
3367	Locations []*LocationIdSet `json:"locations,omitempty"`
3368
3369	// NumberOfItems: A list of inclusive number of items upper bounds. The
3370	// last value can be "infinity". For example `["10", "50",
3371	// "infinity"]` represents the headers "<= 10 items", "<= 50 items", and
3372	// "> 50 items". Must be non-empty. Can only be set if all other fields
3373	// are not set.
3374	NumberOfItems []string `json:"numberOfItems,omitempty"`
3375
3376	// PostalCodeGroupNames: A list of postal group names. The last value
3377	// can be "all other locations". Example: `["zone 1", "zone 2", "all
3378	// other locations"]`. The referred postal code groups must match the
3379	// delivery country of the service. Must be non-empty. Can only be set
3380	// if all other fields are not set.
3381	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
3382
3383	// Prices: A list of inclusive order price upper bounds. The last
3384	// price's value can be "infinity". For example `[{"value": "10",
3385	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
3386	// "infinity", "currency": "USD"}]` represents the headers "<= $10", "<=
3387	// $500", and "> $500". All prices within a service must have the same
3388	// currency. Must be non-empty. Can only be set if all other fields are
3389	// not set.
3390	Prices []*Price `json:"prices,omitempty"`
3391
3392	// Weights: A list of inclusive order weight upper bounds. The last
3393	// weight's value can be "infinity". For example `[{"value": "10",
3394	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
3395	// "unit": "kg"}]` represents the headers "<= 10kg", "<= 50kg", and ">
3396	// 50kg". All weights within a service must have the same unit. Must be
3397	// non-empty. Can only be set if all other fields are not set.
3398	Weights []*Weight `json:"weights,omitempty"`
3399
3400	// ForceSendFields is a list of field names (e.g. "Locations") to
3401	// unconditionally include in API requests. By default, fields with
3402	// empty values are omitted from API requests. However, any non-pointer,
3403	// non-interface field appearing in ForceSendFields will be sent to the
3404	// server regardless of whether the field is empty or not. This may be
3405	// used to include empty fields in Patch requests.
3406	ForceSendFields []string `json:"-"`
3407
3408	// NullFields is a list of field names (e.g. "Locations") to include in
3409	// API requests with the JSON null value. By default, fields with empty
3410	// values are omitted from API requests. However, any field with an
3411	// empty value appearing in NullFields will be sent to the server as
3412	// null. It is an error if a field in this list has a non-empty value.
3413	// This may be used to include null fields in Patch requests.
3414	NullFields []string `json:"-"`
3415}
3416
3417func (s *Headers) MarshalJSON() ([]byte, error) {
3418	type NoMethod Headers
3419	raw := NoMethod(*s)
3420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3421}
3422
3423type HolidayCutoff struct {
3424	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
3425	// "2016-11-29" for 29th November 2016. Required.
3426	DeadlineDate string `json:"deadlineDate,omitempty"`
3427
3428	// DeadlineHour: Hour of the day on the deadline date until which the
3429	// order has to be placed to qualify for the delivery guarantee.
3430	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
3431	// Required.
3432	DeadlineHour int64 `json:"deadlineHour,omitempty"`
3433
3434	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
3435	// of identifiers can be found in the AdWords API documentation. E.g.
3436	// "Europe/Zurich". Required.
3437	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
3438
3439	// HolidayId: Unique identifier for the holiday. Required.
3440	HolidayId string `json:"holidayId,omitempty"`
3441
3442	// VisibleFromDate: Date on which the deadline will become visible to
3443	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
3444	// 2016. Required.
3445	VisibleFromDate string `json:"visibleFromDate,omitempty"`
3446
3447	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
3448	// unconditionally include in API requests. By default, fields with
3449	// empty values are omitted from API requests. However, any non-pointer,
3450	// non-interface field appearing in ForceSendFields will be sent to the
3451	// server regardless of whether the field is empty or not. This may be
3452	// used to include empty fields in Patch requests.
3453	ForceSendFields []string `json:"-"`
3454
3455	// NullFields is a list of field names (e.g. "DeadlineDate") to include
3456	// in API requests with the JSON null value. By default, fields with
3457	// empty values are omitted from API requests. However, any field with
3458	// an empty value appearing in NullFields will be sent to the server as
3459	// null. It is an error if a field in this list has a non-empty value.
3460	// This may be used to include null fields in Patch requests.
3461	NullFields []string `json:"-"`
3462}
3463
3464func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
3465	type NoMethod HolidayCutoff
3466	raw := NoMethod(*s)
3467	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3468}
3469
3470type HolidaysHoliday struct {
3471	// CountryCode: The CLDR territory code of the country in which the
3472	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
3473	// only be configured in a shipping settings service with matching
3474	// delivery country. Always present.
3475	CountryCode string `json:"countryCode,omitempty"`
3476
3477	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
3478	// Christmas 2016. Always present.
3479	Date string `json:"date,omitempty"`
3480
3481	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
3482	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
3483	// 2016. Always present.
3484	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
3485
3486	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
3487	// timezone on the guaranteed delivery date by which the order has to
3488	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
3489	// 12 (noon), 13, ..., 23. Always present.
3490	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
3491
3492	// Id: Unique identifier for the holiday to be used when configuring
3493	// holiday cutoffs. Always present.
3494	Id string `json:"id,omitempty"`
3495
3496	// Type: The holiday type. Always present. Acceptable values are: -
3497	// "Christmas" - "Easter" - "Father's Day" - "Halloween" -
3498	// "Independence Day (USA)" - "Mother's Day" - "Thanksgiving" -
3499	// "Valentine's Day"
3500	Type string `json:"type,omitempty"`
3501
3502	// ForceSendFields is a list of field names (e.g. "CountryCode") to
3503	// unconditionally include in API requests. By default, fields with
3504	// empty values are omitted from API requests. However, any non-pointer,
3505	// non-interface field appearing in ForceSendFields will be sent to the
3506	// server regardless of whether the field is empty or not. This may be
3507	// used to include empty fields in Patch requests.
3508	ForceSendFields []string `json:"-"`
3509
3510	// NullFields is a list of field names (e.g. "CountryCode") to include
3511	// in API requests with the JSON null value. By default, fields with
3512	// empty values are omitted from API requests. However, any field with
3513	// an empty value appearing in NullFields will be sent to the server as
3514	// null. It is an error if a field in this list has a non-empty value.
3515	// This may be used to include null fields in Patch requests.
3516	NullFields []string `json:"-"`
3517}
3518
3519func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
3520	type NoMethod HolidaysHoliday
3521	raw := NoMethod(*s)
3522	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3523}
3524
3525type Installment struct {
3526	// Amount: The amount the buyer has to pay per month.
3527	Amount *Price `json:"amount,omitempty"`
3528
3529	// Months: The number of installments the buyer has to pay.
3530	Months int64 `json:"months,omitempty,string"`
3531
3532	// ForceSendFields is a list of field names (e.g. "Amount") to
3533	// unconditionally include in API requests. By default, fields with
3534	// empty values are omitted from API requests. However, any non-pointer,
3535	// non-interface field appearing in ForceSendFields will be sent to the
3536	// server regardless of whether the field is empty or not. This may be
3537	// used to include empty fields in Patch requests.
3538	ForceSendFields []string `json:"-"`
3539
3540	// NullFields is a list of field names (e.g. "Amount") to include in API
3541	// requests with the JSON null value. By default, fields with empty
3542	// values are omitted from API requests. However, any field with an
3543	// empty value appearing in NullFields will be sent to the server as
3544	// null. It is an error if a field in this list has a non-empty value.
3545	// This may be used to include null fields in Patch requests.
3546	NullFields []string `json:"-"`
3547}
3548
3549func (s *Installment) MarshalJSON() ([]byte, error) {
3550	type NoMethod Installment
3551	raw := NoMethod(*s)
3552	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3553}
3554
3555type InvoiceSummary struct {
3556	// AdditionalChargeSummaries: Summary of the total amounts of the
3557	// additional charges.
3558	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
3559
3560	// ProductTotal: [required] Total price for the product.
3561	ProductTotal *Amount `json:"productTotal,omitempty"`
3562
3563	// ForceSendFields is a list of field names (e.g.
3564	// "AdditionalChargeSummaries") to unconditionally include in API
3565	// requests. By default, fields with empty values are omitted from API
3566	// requests. However, any non-pointer, non-interface field appearing in
3567	// ForceSendFields will be sent to the server regardless of whether the
3568	// field is empty or not. This may be used to include empty fields in
3569	// Patch requests.
3570	ForceSendFields []string `json:"-"`
3571
3572	// NullFields is a list of field names (e.g.
3573	// "AdditionalChargeSummaries") to include in API requests with the JSON
3574	// null value. By default, fields with empty values are omitted from API
3575	// requests. However, any field with an empty value appearing in
3576	// NullFields will be sent to the server as null. It is an error if a
3577	// field in this list has a non-empty value. This may be used to include
3578	// null fields in Patch requests.
3579	NullFields []string `json:"-"`
3580}
3581
3582func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
3583	type NoMethod InvoiceSummary
3584	raw := NoMethod(*s)
3585	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3586}
3587
3588type InvoiceSummaryAdditionalChargeSummary struct {
3589	// TotalAmount: [required] Total additional charge for this type.
3590	TotalAmount *Amount `json:"totalAmount,omitempty"`
3591
3592	// Type: [required] Type of the additional charge. Acceptable values
3593	// are: - "shipping"
3594	Type string `json:"type,omitempty"`
3595
3596	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
3597	// unconditionally include in API requests. By default, fields with
3598	// empty values are omitted from API requests. However, any non-pointer,
3599	// non-interface field appearing in ForceSendFields will be sent to the
3600	// server regardless of whether the field is empty or not. This may be
3601	// used to include empty fields in Patch requests.
3602	ForceSendFields []string `json:"-"`
3603
3604	// NullFields is a list of field names (e.g. "TotalAmount") to include
3605	// in API requests with the JSON null value. By default, fields with
3606	// empty values are omitted from API requests. However, any field with
3607	// an empty value appearing in NullFields will be sent to the server as
3608	// null. It is an error if a field in this list has a non-empty value.
3609	// This may be used to include null fields in Patch requests.
3610	NullFields []string `json:"-"`
3611}
3612
3613func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
3614	type NoMethod InvoiceSummaryAdditionalChargeSummary
3615	raw := NoMethod(*s)
3616	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3617}
3618
3619// LabelIds: The IDs of labels that should be assigned to the CSS
3620// domain.
3621type LabelIds struct {
3622	// LabelIds: The list of label IDs.
3623	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
3624
3625	// ForceSendFields is a list of field names (e.g. "LabelIds") to
3626	// unconditionally include in API requests. By default, fields with
3627	// empty values are omitted from API requests. However, any non-pointer,
3628	// non-interface field appearing in ForceSendFields will be sent to the
3629	// server regardless of whether the field is empty or not. This may be
3630	// used to include empty fields in Patch requests.
3631	ForceSendFields []string `json:"-"`
3632
3633	// NullFields is a list of field names (e.g. "LabelIds") to include in
3634	// API requests with the JSON null value. By default, fields with empty
3635	// values are omitted from API requests. However, any field with an
3636	// empty value appearing in NullFields will be sent to the server as
3637	// null. It is an error if a field in this list has a non-empty value.
3638	// This may be used to include null fields in Patch requests.
3639	NullFields []string `json:"-"`
3640}
3641
3642func (s *LabelIds) MarshalJSON() ([]byte, error) {
3643	type NoMethod LabelIds
3644	raw := NoMethod(*s)
3645	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3646}
3647
3648type LiaAboutPageSettings struct {
3649	// Status: The status of the verification process for the About page.
3650	// Acceptable values are: - "active" - "inactive" - "pending"
3651	Status string `json:"status,omitempty"`
3652
3653	// Url: The URL for the About page.
3654	Url string `json:"url,omitempty"`
3655
3656	// ForceSendFields is a list of field names (e.g. "Status") to
3657	// unconditionally include in API requests. By default, fields with
3658	// empty values are omitted from API requests. However, any non-pointer,
3659	// non-interface field appearing in ForceSendFields will be sent to the
3660	// server regardless of whether the field is empty or not. This may be
3661	// used to include empty fields in Patch requests.
3662	ForceSendFields []string `json:"-"`
3663
3664	// NullFields is a list of field names (e.g. "Status") to include in API
3665	// requests with the JSON null value. By default, fields with empty
3666	// values are omitted from API requests. However, any field with an
3667	// empty value appearing in NullFields will be sent to the server as
3668	// null. It is an error if a field in this list has a non-empty value.
3669	// This may be used to include null fields in Patch requests.
3670	NullFields []string `json:"-"`
3671}
3672
3673func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
3674	type NoMethod LiaAboutPageSettings
3675	raw := NoMethod(*s)
3676	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3677}
3678
3679type LiaCountrySettings struct {
3680	// About: The settings for the About page.
3681	About *LiaAboutPageSettings `json:"about,omitempty"`
3682
3683	// Country: Required. CLDR country code (e.g. "US").
3684	Country string `json:"country,omitempty"`
3685
3686	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
3687	// storefront" feature.
3688	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
3689
3690	// Inventory: LIA inventory verification settings.
3691	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
3692
3693	// OnDisplayToOrder: LIA "On Display To Order" settings.
3694	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
3695
3696	// PosDataProvider: The POS data provider linked with this country.
3697	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
3698
3699	// StorePickupActive: The status of the "Store pickup" feature.
3700	StorePickupActive bool `json:"storePickupActive,omitempty"`
3701
3702	// ForceSendFields is a list of field names (e.g. "About") to
3703	// unconditionally include in API requests. By default, fields with
3704	// empty values are omitted from API requests. However, any non-pointer,
3705	// non-interface field appearing in ForceSendFields will be sent to the
3706	// server regardless of whether the field is empty or not. This may be
3707	// used to include empty fields in Patch requests.
3708	ForceSendFields []string `json:"-"`
3709
3710	// NullFields is a list of field names (e.g. "About") to include in API
3711	// requests with the JSON null value. By default, fields with empty
3712	// values are omitted from API requests. However, any field with an
3713	// empty value appearing in NullFields will be sent to the server as
3714	// null. It is an error if a field in this list has a non-empty value.
3715	// This may be used to include null fields in Patch requests.
3716	NullFields []string `json:"-"`
3717}
3718
3719func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
3720	type NoMethod LiaCountrySettings
3721	raw := NoMethod(*s)
3722	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3723}
3724
3725type LiaInventorySettings struct {
3726	// InventoryVerificationContactEmail: The email of the contact for the
3727	// inventory verification process.
3728	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
3729
3730	// InventoryVerificationContactName: The name of the contact for the
3731	// inventory verification process.
3732	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
3733
3734	// InventoryVerificationContactStatus: The status of the verification
3735	// contact. Acceptable values are: - "active" - "inactive" -
3736	// "pending"
3737	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
3738
3739	// Status: The status of the inventory verification process. Acceptable
3740	// values are: - "active" - "inactive" - "pending"
3741	Status string `json:"status,omitempty"`
3742
3743	// ForceSendFields is a list of field names (e.g.
3744	// "InventoryVerificationContactEmail") to unconditionally include in
3745	// API requests. By default, fields with empty values are omitted from
3746	// API requests. However, any non-pointer, non-interface field appearing
3747	// in ForceSendFields will be sent to the server regardless of whether
3748	// the field is empty or not. This may be used to include empty fields
3749	// in Patch requests.
3750	ForceSendFields []string `json:"-"`
3751
3752	// NullFields is a list of field names (e.g.
3753	// "InventoryVerificationContactEmail") to include in API requests with
3754	// the JSON null value. By default, fields with empty values are omitted
3755	// from API requests. However, any field with an empty value appearing
3756	// in NullFields will be sent to the server as null. It is an error if a
3757	// field in this list has a non-empty value. This may be used to include
3758	// null fields in Patch requests.
3759	NullFields []string `json:"-"`
3760}
3761
3762func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
3763	type NoMethod LiaInventorySettings
3764	raw := NoMethod(*s)
3765	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3766}
3767
3768type LiaOnDisplayToOrderSettings struct {
3769	// ShippingCostPolicyUrl: Shipping cost and policy URL.
3770	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
3771
3772	// Status: The status of the ?On display to order? feature. Acceptable
3773	// values are: - "active" - "inactive" - "pending"
3774	Status string `json:"status,omitempty"`
3775
3776	// ForceSendFields is a list of field names (e.g.
3777	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
3778	// By default, fields with empty values are omitted from API requests.
3779	// However, any non-pointer, non-interface field appearing in
3780	// ForceSendFields will be sent to the server regardless of whether the
3781	// field is empty or not. This may be used to include empty fields in
3782	// Patch requests.
3783	ForceSendFields []string `json:"-"`
3784
3785	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
3786	// include in API requests with the JSON null value. By default, fields
3787	// with empty values are omitted from API requests. However, any field
3788	// with an empty value appearing in NullFields will be sent to the
3789	// server as null. It is an error if a field in this list has a
3790	// non-empty value. This may be used to include null fields in Patch
3791	// requests.
3792	NullFields []string `json:"-"`
3793}
3794
3795func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
3796	type NoMethod LiaOnDisplayToOrderSettings
3797	raw := NoMethod(*s)
3798	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3799}
3800
3801type LiaPosDataProvider struct {
3802	// PosDataProviderId: The ID of the POS data provider.
3803	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
3804
3805	// PosExternalAccountId: The account ID by which this merchant is known
3806	// to the POS data provider.
3807	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
3808
3809	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
3810	// to unconditionally include in API requests. By default, fields with
3811	// empty values are omitted from API requests. However, any non-pointer,
3812	// non-interface field appearing in ForceSendFields will be sent to the
3813	// server regardless of whether the field is empty or not. This may be
3814	// used to include empty fields in Patch requests.
3815	ForceSendFields []string `json:"-"`
3816
3817	// NullFields is a list of field names (e.g. "PosDataProviderId") to
3818	// include in API requests with the JSON null value. By default, fields
3819	// with empty values are omitted from API requests. However, any field
3820	// with an empty value appearing in NullFields will be sent to the
3821	// server as null. It is an error if a field in this list has a
3822	// non-empty value. This may be used to include null fields in Patch
3823	// requests.
3824	NullFields []string `json:"-"`
3825}
3826
3827func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
3828	type NoMethod LiaPosDataProvider
3829	raw := NoMethod(*s)
3830	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3831}
3832
3833// LiaSettings: Local Inventory ads (LIA) settings. All methods except
3834// listposdataproviders require the admin role.
3835type LiaSettings struct {
3836	// AccountId: The ID of the account to which these LIA settings belong.
3837	// Ignored upon update, always present in get request responses.
3838	AccountId uint64 `json:"accountId,omitempty,string"`
3839
3840	// CountrySettings: The LIA settings for each country.
3841	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
3842
3843	// Kind: Identifies what kind of resource this is. Value: the fixed
3844	// string "content#liaSettings"
3845	Kind string `json:"kind,omitempty"`
3846
3847	// ServerResponse contains the HTTP response code and headers from the
3848	// server.
3849	googleapi.ServerResponse `json:"-"`
3850
3851	// ForceSendFields is a list of field names (e.g. "AccountId") to
3852	// unconditionally include in API requests. By default, fields with
3853	// empty values are omitted from API requests. However, any non-pointer,
3854	// non-interface field appearing in ForceSendFields will be sent to the
3855	// server regardless of whether the field is empty or not. This may be
3856	// used to include empty fields in Patch requests.
3857	ForceSendFields []string `json:"-"`
3858
3859	// NullFields is a list of field names (e.g. "AccountId") to include in
3860	// API requests with the JSON null value. By default, fields with empty
3861	// values are omitted from API requests. However, any field with an
3862	// empty value appearing in NullFields will be sent to the server as
3863	// null. It is an error if a field in this list has a non-empty value.
3864	// This may be used to include null fields in Patch requests.
3865	NullFields []string `json:"-"`
3866}
3867
3868func (s *LiaSettings) MarshalJSON() ([]byte, error) {
3869	type NoMethod LiaSettings
3870	raw := NoMethod(*s)
3871	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3872}
3873
3874type LiasettingsCustomBatchRequest struct {
3875	// Entries: The request entries to be processed in the batch.
3876	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
3877
3878	// ForceSendFields is a list of field names (e.g. "Entries") to
3879	// unconditionally include in API requests. By default, fields with
3880	// empty values are omitted from API requests. However, any non-pointer,
3881	// non-interface field appearing in ForceSendFields will be sent to the
3882	// server regardless of whether the field is empty or not. This may be
3883	// used to include empty fields in Patch requests.
3884	ForceSendFields []string `json:"-"`
3885
3886	// NullFields is a list of field names (e.g. "Entries") to include in
3887	// API requests with the JSON null value. By default, fields with empty
3888	// values are omitted from API requests. However, any field with an
3889	// empty value appearing in NullFields will be sent to the server as
3890	// null. It is an error if a field in this list has a non-empty value.
3891	// This may be used to include null fields in Patch requests.
3892	NullFields []string `json:"-"`
3893}
3894
3895func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
3896	type NoMethod LiasettingsCustomBatchRequest
3897	raw := NoMethod(*s)
3898	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3899}
3900
3901type LiasettingsCustomBatchRequestEntry struct {
3902	// AccountId: The ID of the account for which to get/update account LIA
3903	// settings.
3904	AccountId uint64 `json:"accountId,omitempty,string"`
3905
3906	// BatchId: An entry ID, unique within the batch request.
3907	BatchId int64 `json:"batchId,omitempty"`
3908
3909	// ContactEmail: Inventory validation contact email. Required only for
3910	// SetInventoryValidationContact.
3911	ContactEmail string `json:"contactEmail,omitempty"`
3912
3913	// ContactName: Inventory validation contact name. Required only for
3914	// SetInventoryValidationContact.
3915	ContactName string `json:"contactName,omitempty"`
3916
3917	// Country: The country code. Required only for
3918	// RequestInventoryVerification.
3919	Country string `json:"country,omitempty"`
3920
3921	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
3922	GmbEmail string `json:"gmbEmail,omitempty"`
3923
3924	// LiaSettings: The account Lia settings to update. Only defined if the
3925	// method is `update`.
3926	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
3927
3928	// MerchantId: The ID of the managing account.
3929	MerchantId uint64 `json:"merchantId,omitempty,string"`
3930
3931	// Method: The method of the batch entry. Acceptable values are: -
3932	// "get" - "getAccessibleGmbAccounts" - "requestGmbAccess" -
3933	// "requestInventoryVerification" -
3934	// "setInventoryVerificationContact" - "update"
3935	Method string `json:"method,omitempty"`
3936
3937	// PosDataProviderId: The ID of POS data provider. Required only for
3938	// SetPosProvider.
3939	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
3940
3941	// PosExternalAccountId: The account ID by which this merchant is known
3942	// to the POS provider.
3943	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
3944
3945	// ForceSendFields is a list of field names (e.g. "AccountId") to
3946	// unconditionally include in API requests. By default, fields with
3947	// empty values are omitted from API requests. However, any non-pointer,
3948	// non-interface field appearing in ForceSendFields will be sent to the
3949	// server regardless of whether the field is empty or not. This may be
3950	// used to include empty fields in Patch requests.
3951	ForceSendFields []string `json:"-"`
3952
3953	// NullFields is a list of field names (e.g. "AccountId") to include in
3954	// API requests with the JSON null value. By default, fields with empty
3955	// values are omitted from API requests. However, any field with an
3956	// empty value appearing in NullFields will be sent to the server as
3957	// null. It is an error if a field in this list has a non-empty value.
3958	// This may be used to include null fields in Patch requests.
3959	NullFields []string `json:"-"`
3960}
3961
3962func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3963	type NoMethod LiasettingsCustomBatchRequestEntry
3964	raw := NoMethod(*s)
3965	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3966}
3967
3968type LiasettingsCustomBatchResponse struct {
3969	// Entries: The result of the execution of the batch requests.
3970	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
3971
3972	// Kind: Identifies what kind of resource this is. Value: the fixed
3973	// string "content#liasettingsCustomBatchResponse".
3974	Kind string `json:"kind,omitempty"`
3975
3976	// ServerResponse contains the HTTP response code and headers from the
3977	// server.
3978	googleapi.ServerResponse `json:"-"`
3979
3980	// ForceSendFields is a list of field names (e.g. "Entries") to
3981	// unconditionally include in API requests. By default, fields with
3982	// empty values are omitted from API requests. However, any non-pointer,
3983	// non-interface field appearing in ForceSendFields will be sent to the
3984	// server regardless of whether the field is empty or not. This may be
3985	// used to include empty fields in Patch requests.
3986	ForceSendFields []string `json:"-"`
3987
3988	// NullFields is a list of field names (e.g. "Entries") to include in
3989	// API requests with the JSON null value. By default, fields with empty
3990	// values are omitted from API requests. However, any field with an
3991	// empty value appearing in NullFields will be sent to the server as
3992	// null. It is an error if a field in this list has a non-empty value.
3993	// This may be used to include null fields in Patch requests.
3994	NullFields []string `json:"-"`
3995}
3996
3997func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
3998	type NoMethod LiasettingsCustomBatchResponse
3999	raw := NoMethod(*s)
4000	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4001}
4002
4003type LiasettingsCustomBatchResponseEntry struct {
4004	// BatchId: The ID of the request entry to which this entry responds.
4005	BatchId int64 `json:"batchId,omitempty"`
4006
4007	// Errors: A list of errors defined if, and only if, the request failed.
4008	Errors *Errors `json:"errors,omitempty"`
4009
4010	// GmbAccounts: The the list of accessible GMB accounts.
4011	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
4012
4013	// Kind: Identifies what kind of resource this is. Value: the fixed
4014	// string "content#liasettingsCustomBatchResponseEntry"
4015	Kind string `json:"kind,omitempty"`
4016
4017	// LiaSettings: The retrieved or updated Lia settings.
4018	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4019
4020	// PosDataProviders: The list of POS data providers.
4021	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4022
4023	// ForceSendFields is a list of field names (e.g. "BatchId") to
4024	// unconditionally include in API requests. By default, fields with
4025	// empty values are omitted from API requests. However, any non-pointer,
4026	// non-interface field appearing in ForceSendFields will be sent to the
4027	// server regardless of whether the field is empty or not. This may be
4028	// used to include empty fields in Patch requests.
4029	ForceSendFields []string `json:"-"`
4030
4031	// NullFields is a list of field names (e.g. "BatchId") to include in
4032	// API requests with the JSON null value. By default, fields with empty
4033	// values are omitted from API requests. However, any field with an
4034	// empty value appearing in NullFields will be sent to the server as
4035	// null. It is an error if a field in this list has a non-empty value.
4036	// This may be used to include null fields in Patch requests.
4037	NullFields []string `json:"-"`
4038}
4039
4040func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
4041	type NoMethod LiasettingsCustomBatchResponseEntry
4042	raw := NoMethod(*s)
4043	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4044}
4045
4046type LiasettingsGetAccessibleGmbAccountsResponse struct {
4047	// AccountId: The ID of the Merchant Center account.
4048	AccountId uint64 `json:"accountId,omitempty,string"`
4049
4050	// GmbAccounts: A list of GMB accounts which are available to the
4051	// merchant.
4052	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
4053
4054	// Kind: Identifies what kind of resource this is. Value: the fixed
4055	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
4056	Kind string `json:"kind,omitempty"`
4057
4058	// ServerResponse contains the HTTP response code and headers from the
4059	// server.
4060	googleapi.ServerResponse `json:"-"`
4061
4062	// ForceSendFields is a list of field names (e.g. "AccountId") to
4063	// unconditionally include in API requests. By default, fields with
4064	// empty values are omitted from API requests. However, any non-pointer,
4065	// non-interface field appearing in ForceSendFields will be sent to the
4066	// server regardless of whether the field is empty or not. This may be
4067	// used to include empty fields in Patch requests.
4068	ForceSendFields []string `json:"-"`
4069
4070	// NullFields is a list of field names (e.g. "AccountId") to include in
4071	// API requests with the JSON null value. By default, fields with empty
4072	// values are omitted from API requests. However, any field with an
4073	// empty value appearing in NullFields will be sent to the server as
4074	// null. It is an error if a field in this list has a non-empty value.
4075	// This may be used to include null fields in Patch requests.
4076	NullFields []string `json:"-"`
4077}
4078
4079func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
4080	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
4081	raw := NoMethod(*s)
4082	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4083}
4084
4085type LiasettingsListPosDataProvidersResponse struct {
4086	// Kind: Identifies what kind of resource this is. Value: the fixed
4087	// string "content#liasettingsListPosDataProvidersResponse".
4088	Kind string `json:"kind,omitempty"`
4089
4090	// PosDataProviders: The list of POS data providers for each eligible
4091	// country
4092	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4093
4094	// ServerResponse contains the HTTP response code and headers from the
4095	// server.
4096	googleapi.ServerResponse `json:"-"`
4097
4098	// ForceSendFields is a list of field names (e.g. "Kind") to
4099	// unconditionally include in API requests. By default, fields with
4100	// empty values are omitted from API requests. However, any non-pointer,
4101	// non-interface field appearing in ForceSendFields will be sent to the
4102	// server regardless of whether the field is empty or not. This may be
4103	// used to include empty fields in Patch requests.
4104	ForceSendFields []string `json:"-"`
4105
4106	// NullFields is a list of field names (e.g. "Kind") to include in API
4107	// requests with the JSON null value. By default, fields with empty
4108	// values are omitted from API requests. However, any field with an
4109	// empty value appearing in NullFields will be sent to the server as
4110	// null. It is an error if a field in this list has a non-empty value.
4111	// This may be used to include null fields in Patch requests.
4112	NullFields []string `json:"-"`
4113}
4114
4115func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
4116	type NoMethod LiasettingsListPosDataProvidersResponse
4117	raw := NoMethod(*s)
4118	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4119}
4120
4121type LiasettingsListResponse struct {
4122	// Kind: Identifies what kind of resource this is. Value: the fixed
4123	// string "content#liasettingsListResponse".
4124	Kind string `json:"kind,omitempty"`
4125
4126	// NextPageToken: The token for the retrieval of the next page of LIA
4127	// settings.
4128	NextPageToken string `json:"nextPageToken,omitempty"`
4129
4130	Resources []*LiaSettings `json:"resources,omitempty"`
4131
4132	// ServerResponse contains the HTTP response code and headers from the
4133	// server.
4134	googleapi.ServerResponse `json:"-"`
4135
4136	// ForceSendFields is a list of field names (e.g. "Kind") to
4137	// unconditionally include in API requests. By default, fields with
4138	// empty values are omitted from API requests. However, any non-pointer,
4139	// non-interface field appearing in ForceSendFields will be sent to the
4140	// server regardless of whether the field is empty or not. This may be
4141	// used to include empty fields in Patch requests.
4142	ForceSendFields []string `json:"-"`
4143
4144	// NullFields is a list of field names (e.g. "Kind") to include in API
4145	// requests with the JSON null value. By default, fields with empty
4146	// values are omitted from API requests. However, any field with an
4147	// empty value appearing in NullFields will be sent to the server as
4148	// null. It is an error if a field in this list has a non-empty value.
4149	// This may be used to include null fields in Patch requests.
4150	NullFields []string `json:"-"`
4151}
4152
4153func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
4154	type NoMethod LiasettingsListResponse
4155	raw := NoMethod(*s)
4156	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4157}
4158
4159type LiasettingsRequestGmbAccessResponse struct {
4160	// Kind: Identifies what kind of resource this is. Value: the fixed
4161	// string "content#liasettingsRequestGmbAccessResponse".
4162	Kind string `json:"kind,omitempty"`
4163
4164	// ServerResponse contains the HTTP response code and headers from the
4165	// server.
4166	googleapi.ServerResponse `json:"-"`
4167
4168	// ForceSendFields is a list of field names (e.g. "Kind") to
4169	// unconditionally include in API requests. By default, fields with
4170	// empty values are omitted from API requests. However, any non-pointer,
4171	// non-interface field appearing in ForceSendFields will be sent to the
4172	// server regardless of whether the field is empty or not. This may be
4173	// used to include empty fields in Patch requests.
4174	ForceSendFields []string `json:"-"`
4175
4176	// NullFields is a list of field names (e.g. "Kind") to include in API
4177	// requests with the JSON null value. By default, fields with empty
4178	// values are omitted from API requests. However, any field with an
4179	// empty value appearing in NullFields will be sent to the server as
4180	// null. It is an error if a field in this list has a non-empty value.
4181	// This may be used to include null fields in Patch requests.
4182	NullFields []string `json:"-"`
4183}
4184
4185func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
4186	type NoMethod LiasettingsRequestGmbAccessResponse
4187	raw := NoMethod(*s)
4188	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4189}
4190
4191type LiasettingsRequestInventoryVerificationResponse struct {
4192	// Kind: Identifies what kind of resource this is. Value: the fixed
4193	// string "content#liasettingsRequestInventoryVerificationResponse".
4194	Kind string `json:"kind,omitempty"`
4195
4196	// ServerResponse contains the HTTP response code and headers from the
4197	// server.
4198	googleapi.ServerResponse `json:"-"`
4199
4200	// ForceSendFields is a list of field names (e.g. "Kind") to
4201	// unconditionally include in API requests. By default, fields with
4202	// empty values are omitted from API requests. However, any non-pointer,
4203	// non-interface field appearing in ForceSendFields will be sent to the
4204	// server regardless of whether the field is empty or not. This may be
4205	// used to include empty fields in Patch requests.
4206	ForceSendFields []string `json:"-"`
4207
4208	// NullFields is a list of field names (e.g. "Kind") to include in API
4209	// requests with the JSON null value. By default, fields with empty
4210	// values are omitted from API requests. However, any field with an
4211	// empty value appearing in NullFields will be sent to the server as
4212	// null. It is an error if a field in this list has a non-empty value.
4213	// This may be used to include null fields in Patch requests.
4214	NullFields []string `json:"-"`
4215}
4216
4217func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
4218	type NoMethod LiasettingsRequestInventoryVerificationResponse
4219	raw := NoMethod(*s)
4220	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4221}
4222
4223type LiasettingsSetInventoryVerificationContactResponse struct {
4224	// Kind: Identifies what kind of resource this is. Value: the fixed
4225	// string "content#liasettingsSetInventoryVerificationContactResponse".
4226	Kind string `json:"kind,omitempty"`
4227
4228	// ServerResponse contains the HTTP response code and headers from the
4229	// server.
4230	googleapi.ServerResponse `json:"-"`
4231
4232	// ForceSendFields is a list of field names (e.g. "Kind") to
4233	// unconditionally include in API requests. By default, fields with
4234	// empty values are omitted from API requests. However, any non-pointer,
4235	// non-interface field appearing in ForceSendFields will be sent to the
4236	// server regardless of whether the field is empty or not. This may be
4237	// used to include empty fields in Patch requests.
4238	ForceSendFields []string `json:"-"`
4239
4240	// NullFields is a list of field names (e.g. "Kind") to include in API
4241	// requests with the JSON null value. By default, fields with empty
4242	// values are omitted from API requests. However, any field with an
4243	// empty value appearing in NullFields will be sent to the server as
4244	// null. It is an error if a field in this list has a non-empty value.
4245	// This may be used to include null fields in Patch requests.
4246	NullFields []string `json:"-"`
4247}
4248
4249func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
4250	type NoMethod LiasettingsSetInventoryVerificationContactResponse
4251	raw := NoMethod(*s)
4252	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4253}
4254
4255type LiasettingsSetPosDataProviderResponse struct {
4256	// Kind: Identifies what kind of resource this is. Value: the fixed
4257	// string "content#liasettingsSetPosDataProviderResponse".
4258	Kind string `json:"kind,omitempty"`
4259
4260	// ServerResponse contains the HTTP response code and headers from the
4261	// server.
4262	googleapi.ServerResponse `json:"-"`
4263
4264	// ForceSendFields is a list of field names (e.g. "Kind") to
4265	// unconditionally include in API requests. By default, fields with
4266	// empty values are omitted from API requests. However, any non-pointer,
4267	// non-interface field appearing in ForceSendFields will be sent to the
4268	// server regardless of whether the field is empty or not. This may be
4269	// used to include empty fields in Patch requests.
4270	ForceSendFields []string `json:"-"`
4271
4272	// NullFields is a list of field names (e.g. "Kind") to include in API
4273	// requests with the JSON null value. By default, fields with empty
4274	// values are omitted from API requests. However, any field with an
4275	// empty value appearing in NullFields will be sent to the server as
4276	// null. It is an error if a field in this list has a non-empty value.
4277	// This may be used to include null fields in Patch requests.
4278	NullFields []string `json:"-"`
4279}
4280
4281func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
4282	type NoMethod LiasettingsSetPosDataProviderResponse
4283	raw := NoMethod(*s)
4284	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4285}
4286
4287type LinkService struct {
4288	// Service: Service provided to or by the linked account. Acceptable
4289	// values are: - "shoppingActionsOrderManagement" -
4290	// "shoppingActionsProductManagement" -
4291	// "shoppingAdsProductManagement"
4292	Service string `json:"service,omitempty"`
4293
4294	// Status: Status of the link Acceptable values are: - "active" -
4295	// "inactive" - "pending"
4296	Status string `json:"status,omitempty"`
4297
4298	// ForceSendFields is a list of field names (e.g. "Service") to
4299	// unconditionally include in API requests. By default, fields with
4300	// empty values are omitted from API requests. However, any non-pointer,
4301	// non-interface field appearing in ForceSendFields will be sent to the
4302	// server regardless of whether the field is empty or not. This may be
4303	// used to include empty fields in Patch requests.
4304	ForceSendFields []string `json:"-"`
4305
4306	// NullFields is a list of field names (e.g. "Service") to include in
4307	// API requests with the JSON null value. By default, fields with empty
4308	// values are omitted from API requests. However, any field with an
4309	// empty value appearing in NullFields will be sent to the server as
4310	// null. It is an error if a field in this list has a non-empty value.
4311	// This may be used to include null fields in Patch requests.
4312	NullFields []string `json:"-"`
4313}
4314
4315func (s *LinkService) MarshalJSON() ([]byte, error) {
4316	type NoMethod LinkService
4317	raw := NoMethod(*s)
4318	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4319}
4320
4321type LinkedAccount struct {
4322	// LinkedAccountId: The ID of the linked account.
4323	LinkedAccountId string `json:"linkedAccountId,omitempty"`
4324
4325	// Services: List of provided services.
4326	Services []*LinkService `json:"services,omitempty"`
4327
4328	// ForceSendFields is a list of field names (e.g. "LinkedAccountId") to
4329	// unconditionally include in API requests. By default, fields with
4330	// empty values are omitted from API requests. However, any non-pointer,
4331	// non-interface field appearing in ForceSendFields will be sent to the
4332	// server regardless of whether the field is empty or not. This may be
4333	// used to include empty fields in Patch requests.
4334	ForceSendFields []string `json:"-"`
4335
4336	// NullFields is a list of field names (e.g. "LinkedAccountId") to
4337	// include in API requests with the JSON null value. By default, fields
4338	// with empty values are omitted from API requests. However, any field
4339	// with an empty value appearing in NullFields will be sent to the
4340	// server as null. It is an error if a field in this list has a
4341	// non-empty value. This may be used to include null fields in Patch
4342	// requests.
4343	NullFields []string `json:"-"`
4344}
4345
4346func (s *LinkedAccount) MarshalJSON() ([]byte, error) {
4347	type NoMethod LinkedAccount
4348	raw := NoMethod(*s)
4349	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4350}
4351
4352// ListAccountLabelsResponse: Response message for the
4353// `ListAccountLabels` method.
4354type ListAccountLabelsResponse struct {
4355	// AccountLabels: The labels from the specified account.
4356	AccountLabels []*AccountLabel `json:"accountLabels,omitempty"`
4357
4358	// NextPageToken: A token, which can be sent as `page_token` to retrieve
4359	// the next page. If this field is omitted, there are no subsequent
4360	// pages.
4361	NextPageToken string `json:"nextPageToken,omitempty"`
4362
4363	// ServerResponse contains the HTTP response code and headers from the
4364	// server.
4365	googleapi.ServerResponse `json:"-"`
4366
4367	// ForceSendFields is a list of field names (e.g. "AccountLabels") to
4368	// unconditionally include in API requests. By default, fields with
4369	// empty values are omitted from API requests. However, any non-pointer,
4370	// non-interface field appearing in ForceSendFields will be sent to the
4371	// server regardless of whether the field is empty or not. This may be
4372	// used to include empty fields in Patch requests.
4373	ForceSendFields []string `json:"-"`
4374
4375	// NullFields is a list of field names (e.g. "AccountLabels") to include
4376	// in API requests with the JSON null value. By default, fields with
4377	// empty values are omitted from API requests. However, any field with
4378	// an empty value appearing in NullFields will be sent to the server as
4379	// null. It is an error if a field in this list has a non-empty value.
4380	// This may be used to include null fields in Patch requests.
4381	NullFields []string `json:"-"`
4382}
4383
4384func (s *ListAccountLabelsResponse) MarshalJSON() ([]byte, error) {
4385	type NoMethod ListAccountLabelsResponse
4386	raw := NoMethod(*s)
4387	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4388}
4389
4390// ListCssesResponse: The response message for the `ListCsses` method
4391type ListCssesResponse struct {
4392	// Csses: The CSS domains affiliated with the specified CSS group.
4393	Csses []*Css `json:"csses,omitempty"`
4394
4395	// NextPageToken: A token, which can be sent as `page_token` to retrieve
4396	// the next page. If this field is omitted, there are no subsequent
4397	// pages.
4398	NextPageToken string `json:"nextPageToken,omitempty"`
4399
4400	// ServerResponse contains the HTTP response code and headers from the
4401	// server.
4402	googleapi.ServerResponse `json:"-"`
4403
4404	// ForceSendFields is a list of field names (e.g. "Csses") to
4405	// unconditionally include in API requests. By default, fields with
4406	// empty values are omitted from API requests. However, any non-pointer,
4407	// non-interface field appearing in ForceSendFields will be sent to the
4408	// server regardless of whether the field is empty or not. This may be
4409	// used to include empty fields in Patch requests.
4410	ForceSendFields []string `json:"-"`
4411
4412	// NullFields is a list of field names (e.g. "Csses") to include in API
4413	// requests with the JSON null value. By default, fields with empty
4414	// values are omitted from API requests. However, any field with an
4415	// empty value appearing in NullFields will be sent to the server as
4416	// null. It is an error if a field in this list has a non-empty value.
4417	// This may be used to include null fields in Patch requests.
4418	NullFields []string `json:"-"`
4419}
4420
4421func (s *ListCssesResponse) MarshalJSON() ([]byte, error) {
4422	type NoMethod ListCssesResponse
4423	raw := NoMethod(*s)
4424	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4425}
4426
4427// ListRegionsResponse: Response message for the `ListRegions` method.
4428type ListRegionsResponse struct {
4429	// NextPageToken: A token, which can be sent as `page_token` to retrieve
4430	// the next page. If this field is omitted, there are no subsequent
4431	// pages.
4432	NextPageToken string `json:"nextPageToken,omitempty"`
4433
4434	// Regions: The regions from the specified merchant.
4435	Regions []*Region `json:"regions,omitempty"`
4436
4437	// ServerResponse contains the HTTP response code and headers from the
4438	// server.
4439	googleapi.ServerResponse `json:"-"`
4440
4441	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
4442	// unconditionally include in API requests. By default, fields with
4443	// empty values are omitted from API requests. However, any non-pointer,
4444	// non-interface field appearing in ForceSendFields will be sent to the
4445	// server regardless of whether the field is empty or not. This may be
4446	// used to include empty fields in Patch requests.
4447	ForceSendFields []string `json:"-"`
4448
4449	// NullFields is a list of field names (e.g. "NextPageToken") to include
4450	// in API requests with the JSON null value. By default, fields with
4451	// empty values are omitted from API requests. However, any field with
4452	// an empty value appearing in NullFields will be sent to the server as
4453	// null. It is an error if a field in this list has a non-empty value.
4454	// This may be used to include null fields in Patch requests.
4455	NullFields []string `json:"-"`
4456}
4457
4458func (s *ListRegionsResponse) MarshalJSON() ([]byte, error) {
4459	type NoMethod ListRegionsResponse
4460	raw := NoMethod(*s)
4461	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4462}
4463
4464// ListRepricingRulesResponse: Response message for the
4465// `ListRepricingRules` method.
4466type ListRepricingRulesResponse struct {
4467	// NextPageToken: A token, which can be sent as `page_token` to retrieve
4468	// the next page. If this field is omitted, there are no subsequent
4469	// pages.
4470	NextPageToken string `json:"nextPageToken,omitempty"`
4471
4472	// RepricingRules: The rules from the specified merchant.
4473	RepricingRules []*RepricingRule `json:"repricingRules,omitempty"`
4474
4475	// ServerResponse contains the HTTP response code and headers from the
4476	// server.
4477	googleapi.ServerResponse `json:"-"`
4478
4479	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
4480	// unconditionally include in API requests. By default, fields with
4481	// empty values are omitted from API requests. However, any non-pointer,
4482	// non-interface field appearing in ForceSendFields will be sent to the
4483	// server regardless of whether the field is empty or not. This may be
4484	// used to include empty fields in Patch requests.
4485	ForceSendFields []string `json:"-"`
4486
4487	// NullFields is a list of field names (e.g. "NextPageToken") to include
4488	// in API requests with the JSON null value. By default, fields with
4489	// empty values are omitted from API requests. However, any field with
4490	// an empty value appearing in NullFields will be sent to the server as
4491	// null. It is an error if a field in this list has a non-empty value.
4492	// This may be used to include null fields in Patch requests.
4493	NullFields []string `json:"-"`
4494}
4495
4496func (s *ListRepricingRulesResponse) MarshalJSON() ([]byte, error) {
4497	type NoMethod ListRepricingRulesResponse
4498	raw := NoMethod(*s)
4499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4500}
4501
4502// LocalInventory: Local inventory resource. For accepted attribute
4503// values, see the local product inventory feed specification.
4504type LocalInventory struct {
4505	// Availability: Availability of the product. For accepted attribute
4506	// values, see the local product inventory feed specification.
4507	Availability string `json:"availability,omitempty"`
4508
4509	// InstoreProductLocation: In-store product location.
4510	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
4511
4512	// Kind: Identifies what kind of resource this is. Value: the fixed
4513	// string "content#localInventory"
4514	Kind string `json:"kind,omitempty"`
4515
4516	// PickupMethod: Supported pickup method for this offer. Unless the
4517	// value is "not supported", this field must be submitted together with
4518	// `pickupSla`. For accepted attribute values, see the local product
4519	// inventory feed // specification.
4520	PickupMethod string `json:"pickupMethod,omitempty"`
4521
4522	// PickupSla: Expected date that an order will be ready for pickup
4523	// relative to the order date. Must be submitted together with
4524	// `pickupMethod`. For accepted attribute values, see the local product
4525	// inventory feed specification.
4526	PickupSla string `json:"pickupSla,omitempty"`
4527
4528	// Price: Price of the product.
4529	Price *Price `json:"price,omitempty"`
4530
4531	// Quantity: Quantity of the product. Must be nonnegative.
4532	Quantity int64 `json:"quantity,omitempty"`
4533
4534	// SalePrice: Sale price of the product. Mandatory if
4535	// `sale_price_effective_date` is defined.
4536	SalePrice *Price `json:"salePrice,omitempty"`
4537
4538	// SalePriceEffectiveDate: A date range represented by a pair of ISO
4539	// 8601 dates separated by a space, comma, or slash. Both dates may be
4540	// specified as 'null' if undecided.
4541	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
4542
4543	// StoreCode: Required. Store code of this local inventory resource.
4544	StoreCode string `json:"storeCode,omitempty"`
4545
4546	// ServerResponse contains the HTTP response code and headers from the
4547	// server.
4548	googleapi.ServerResponse `json:"-"`
4549
4550	// ForceSendFields is a list of field names (e.g. "Availability") to
4551	// unconditionally include in API requests. By default, fields with
4552	// empty values are omitted from API requests. However, any non-pointer,
4553	// non-interface field appearing in ForceSendFields will be sent to the
4554	// server regardless of whether the field is empty or not. This may be
4555	// used to include empty fields in Patch requests.
4556	ForceSendFields []string `json:"-"`
4557
4558	// NullFields is a list of field names (e.g. "Availability") to include
4559	// in API requests with the JSON null value. By default, fields with
4560	// empty values are omitted from API requests. However, any field with
4561	// an empty value appearing in NullFields will be sent to the server as
4562	// null. It is an error if a field in this list has a non-empty value.
4563	// This may be used to include null fields in Patch requests.
4564	NullFields []string `json:"-"`
4565}
4566
4567func (s *LocalInventory) MarshalJSON() ([]byte, error) {
4568	type NoMethod LocalInventory
4569	raw := NoMethod(*s)
4570	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4571}
4572
4573type LocalinventoryCustomBatchRequest struct {
4574	// Entries: The request entries to be processed in the batch.
4575	Entries []*LocalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
4576
4577	// ForceSendFields is a list of field names (e.g. "Entries") to
4578	// unconditionally include in API requests. By default, fields with
4579	// empty values are omitted from API requests. However, any non-pointer,
4580	// non-interface field appearing in ForceSendFields will be sent to the
4581	// server regardless of whether the field is empty or not. This may be
4582	// used to include empty fields in Patch requests.
4583	ForceSendFields []string `json:"-"`
4584
4585	// NullFields is a list of field names (e.g. "Entries") to include in
4586	// API requests with the JSON null value. By default, fields with empty
4587	// values are omitted from API requests. However, any field with an
4588	// empty value appearing in NullFields will be sent to the server as
4589	// null. It is an error if a field in this list has a non-empty value.
4590	// This may be used to include null fields in Patch requests.
4591	NullFields []string `json:"-"`
4592}
4593
4594func (s *LocalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
4595	type NoMethod LocalinventoryCustomBatchRequest
4596	raw := NoMethod(*s)
4597	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4598}
4599
4600// LocalinventoryCustomBatchRequestEntry: Batch entry encoding a single
4601// local inventory update request.
4602type LocalinventoryCustomBatchRequestEntry struct {
4603	// BatchId: An entry ID, unique within the batch request.
4604	BatchId int64 `json:"batchId,omitempty"`
4605
4606	// LocalInventory: Local inventory of the product.
4607	LocalInventory *LocalInventory `json:"localInventory,omitempty"`
4608
4609	// MerchantId: The ID of the managing account.
4610	MerchantId uint64 `json:"merchantId,omitempty,string"`
4611
4612	// Method: Method of the batch request entry. Acceptable values are: -
4613	// "insert"
4614	Method string `json:"method,omitempty"`
4615
4616	// ProductId: The ID of the product for which to update local inventory.
4617	ProductId string `json:"productId,omitempty"`
4618
4619	// ForceSendFields is a list of field names (e.g. "BatchId") to
4620	// unconditionally include in API requests. By default, fields with
4621	// empty values are omitted from API requests. However, any non-pointer,
4622	// non-interface field appearing in ForceSendFields will be sent to the
4623	// server regardless of whether the field is empty or not. This may be
4624	// used to include empty fields in Patch requests.
4625	ForceSendFields []string `json:"-"`
4626
4627	// NullFields is a list of field names (e.g. "BatchId") to include in
4628	// API requests with the JSON null value. By default, fields with empty
4629	// values are omitted from API requests. However, any field with an
4630	// empty value appearing in NullFields will be sent to the server as
4631	// null. It is an error if a field in this list has a non-empty value.
4632	// This may be used to include null fields in Patch requests.
4633	NullFields []string `json:"-"`
4634}
4635
4636func (s *LocalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
4637	type NoMethod LocalinventoryCustomBatchRequestEntry
4638	raw := NoMethod(*s)
4639	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4640}
4641
4642type LocalinventoryCustomBatchResponse struct {
4643	// Entries: The result of the execution of the batch requests.
4644	Entries []*LocalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
4645
4646	// Kind: Identifies what kind of resource this is. Value: the fixed
4647	// string "content#localinventoryCustomBatchResponse".
4648	Kind string `json:"kind,omitempty"`
4649
4650	// ServerResponse contains the HTTP response code and headers from the
4651	// server.
4652	googleapi.ServerResponse `json:"-"`
4653
4654	// ForceSendFields is a list of field names (e.g. "Entries") to
4655	// unconditionally include in API requests. By default, fields with
4656	// empty values are omitted from API requests. However, any non-pointer,
4657	// non-interface field appearing in ForceSendFields will be sent to the
4658	// server regardless of whether the field is empty or not. This may be
4659	// used to include empty fields in Patch requests.
4660	ForceSendFields []string `json:"-"`
4661
4662	// NullFields is a list of field names (e.g. "Entries") to include in
4663	// API requests with the JSON null value. By default, fields with empty
4664	// values are omitted from API requests. However, any field with an
4665	// empty value appearing in NullFields will be sent to the server as
4666	// null. It is an error if a field in this list has a non-empty value.
4667	// This may be used to include null fields in Patch requests.
4668	NullFields []string `json:"-"`
4669}
4670
4671func (s *LocalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
4672	type NoMethod LocalinventoryCustomBatchResponse
4673	raw := NoMethod(*s)
4674	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4675}
4676
4677// LocalinventoryCustomBatchResponseEntry: Batch entry encoding a single
4678// local inventory update response.
4679type LocalinventoryCustomBatchResponseEntry struct {
4680	// BatchId: The ID of the request entry this entry responds to.
4681	BatchId int64 `json:"batchId,omitempty"`
4682
4683	// Errors: A list of errors defined if and only if the request failed.
4684	Errors *Errors `json:"errors,omitempty"`
4685
4686	// Kind: Identifies what kind of resource this is. Value: the fixed
4687	// string "content#localinventoryCustomBatchResponseEntry"
4688	Kind string `json:"kind,omitempty"`
4689
4690	// ForceSendFields is a list of field names (e.g. "BatchId") to
4691	// unconditionally include in API requests. By default, fields with
4692	// empty values are omitted from API requests. However, any non-pointer,
4693	// non-interface field appearing in ForceSendFields will be sent to the
4694	// server regardless of whether the field is empty or not. This may be
4695	// used to include empty fields in Patch requests.
4696	ForceSendFields []string `json:"-"`
4697
4698	// NullFields is a list of field names (e.g. "BatchId") to include in
4699	// API requests with the JSON null value. By default, fields with empty
4700	// values are omitted from API requests. However, any field with an
4701	// empty value appearing in NullFields will be sent to the server as
4702	// null. It is an error if a field in this list has a non-empty value.
4703	// This may be used to include null fields in Patch requests.
4704	NullFields []string `json:"-"`
4705}
4706
4707func (s *LocalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
4708	type NoMethod LocalinventoryCustomBatchResponseEntry
4709	raw := NoMethod(*s)
4710	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4711}
4712
4713type LocationIdSet struct {
4714	// LocationIds: A non-empty list of location IDs. They must all be of
4715	// the same location type (e.g., state).
4716	LocationIds []string `json:"locationIds,omitempty"`
4717
4718	// ForceSendFields is a list of field names (e.g. "LocationIds") to
4719	// unconditionally include in API requests. By default, fields with
4720	// empty values are omitted from API requests. However, any non-pointer,
4721	// non-interface field appearing in ForceSendFields will be sent to the
4722	// server regardless of whether the field is empty or not. This may be
4723	// used to include empty fields in Patch requests.
4724	ForceSendFields []string `json:"-"`
4725
4726	// NullFields is a list of field names (e.g. "LocationIds") to include
4727	// in API requests with the JSON null value. By default, fields with
4728	// empty values are omitted from API requests. However, any field with
4729	// an empty value appearing in NullFields will be sent to the server as
4730	// null. It is an error if a field in this list has a non-empty value.
4731	// This may be used to include null fields in Patch requests.
4732	NullFields []string `json:"-"`
4733}
4734
4735func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
4736	type NoMethod LocationIdSet
4737	raw := NoMethod(*s)
4738	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4739}
4740
4741type LoyaltyPoints struct {
4742	// Name: Name of loyalty points program. It is recommended to limit the
4743	// name to 12 full-width characters or 24 Roman characters.
4744	Name string `json:"name,omitempty"`
4745
4746	// PointsValue: The retailer's loyalty points in absolute value.
4747	PointsValue int64 `json:"pointsValue,omitempty,string"`
4748
4749	// Ratio: The ratio of a point when converted to currency. Google
4750	// assumes currency based on Merchant Center settings. If ratio is left
4751	// out, it defaults to 1.0.
4752	Ratio float64 `json:"ratio,omitempty"`
4753
4754	// ForceSendFields is a list of field names (e.g. "Name") to
4755	// unconditionally include in API requests. By default, fields with
4756	// empty values are omitted from API requests. However, any non-pointer,
4757	// non-interface field appearing in ForceSendFields will be sent to the
4758	// server regardless of whether the field is empty or not. This may be
4759	// used to include empty fields in Patch requests.
4760	ForceSendFields []string `json:"-"`
4761
4762	// NullFields is a list of field names (e.g. "Name") to include in API
4763	// requests with the JSON null value. By default, fields with empty
4764	// values are omitted from API requests. However, any field with an
4765	// empty value appearing in NullFields will be sent to the server as
4766	// null. It is an error if a field in this list has a non-empty value.
4767	// This may be used to include null fields in Patch requests.
4768	NullFields []string `json:"-"`
4769}
4770
4771func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
4772	type NoMethod LoyaltyPoints
4773	raw := NoMethod(*s)
4774	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4775}
4776
4777func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
4778	type NoMethod LoyaltyPoints
4779	var s1 struct {
4780		Ratio gensupport.JSONFloat64 `json:"ratio"`
4781		*NoMethod
4782	}
4783	s1.NoMethod = (*NoMethod)(s)
4784	if err := json.Unmarshal(data, &s1); err != nil {
4785		return err
4786	}
4787	s.Ratio = float64(s1.Ratio)
4788	return nil
4789}
4790
4791// MerchantOrderReturn: Order return. Production access (all methods)
4792// requires the order manager role. Sandbox access does not.
4793type MerchantOrderReturn struct {
4794	// CreationDate: The date of creation of the return, in ISO 8601 format.
4795	CreationDate string `json:"creationDate,omitempty"`
4796
4797	// MerchantOrderId: Merchant defined order ID.
4798	MerchantOrderId string `json:"merchantOrderId,omitempty"`
4799
4800	// OrderId: Google order ID.
4801	OrderId string `json:"orderId,omitempty"`
4802
4803	// OrderReturnId: Order return ID generated by Google.
4804	OrderReturnId string `json:"orderReturnId,omitempty"`
4805
4806	// ReturnItems: Items of the return.
4807	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
4808
4809	// ReturnPricingInfo: Information about shipping costs.
4810	ReturnPricingInfo *ReturnPricingInfo `json:"returnPricingInfo,omitempty"`
4811
4812	// ReturnShipments: Shipments of the return.
4813	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
4814
4815	// ServerResponse contains the HTTP response code and headers from the
4816	// server.
4817	googleapi.ServerResponse `json:"-"`
4818
4819	// ForceSendFields is a list of field names (e.g. "CreationDate") to
4820	// unconditionally include in API requests. By default, fields with
4821	// empty values are omitted from API requests. However, any non-pointer,
4822	// non-interface field appearing in ForceSendFields will be sent to the
4823	// server regardless of whether the field is empty or not. This may be
4824	// used to include empty fields in Patch requests.
4825	ForceSendFields []string `json:"-"`
4826
4827	// NullFields is a list of field names (e.g. "CreationDate") to include
4828	// in API requests with the JSON null value. By default, fields with
4829	// empty values are omitted from API requests. However, any field with
4830	// an empty value appearing in NullFields will be sent to the server as
4831	// null. It is an error if a field in this list has a non-empty value.
4832	// This may be used to include null fields in Patch requests.
4833	NullFields []string `json:"-"`
4834}
4835
4836func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
4837	type NoMethod MerchantOrderReturn
4838	raw := NoMethod(*s)
4839	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4840}
4841
4842type MerchantOrderReturnItem struct {
4843	// CustomerReturnReason: The reason that the customer chooses to return
4844	// an item.
4845	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
4846
4847	// ItemId: Product level item ID. If the returned items are of the same
4848	// product, they will have the same ID.
4849	ItemId string `json:"itemId,omitempty"`
4850
4851	// MerchantRejectionReason: The reason that the merchant chose to reject
4852	// an item return.
4853	MerchantRejectionReason *MerchantRejectionReason `json:"merchantRejectionReason,omitempty"`
4854
4855	// MerchantReturnReason: The reason that merchant chooses to accept a
4856	// return item.
4857	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
4858
4859	// Product: Product data from the time of the order placement.
4860	Product *OrderLineItemProduct `json:"product,omitempty"`
4861
4862	// RefundableAmount: Maximum amount that can be refunded for this return
4863	// item.
4864	RefundableAmount *MonetaryAmount `json:"refundableAmount,omitempty"`
4865
4866	// ReturnItemId: Unit level ID for the return item. Different units of
4867	// the same product will have different IDs.
4868	ReturnItemId string `json:"returnItemId,omitempty"`
4869
4870	// ReturnShipmentIds: IDs of the return shipments that this return item
4871	// belongs to.
4872	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
4873
4874	// ShipmentGroupId: ID of the original shipment group. Provided for
4875	// shipments with invoice support.
4876	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
4877
4878	// ShipmentUnitId: ID of the shipment unit assigned by the merchant.
4879	// Provided for shipments with invoice support.
4880	ShipmentUnitId string `json:"shipmentUnitId,omitempty"`
4881
4882	// State: State of the item. Acceptable values are: - "canceled" -
4883	// "new" - "received" - "refunded" - "rejected"
4884	State string `json:"state,omitempty"`
4885
4886	// ForceSendFields is a list of field names (e.g.
4887	// "CustomerReturnReason") to unconditionally include in API requests.
4888	// By default, fields with empty values are omitted from API requests.
4889	// However, any non-pointer, non-interface field appearing in
4890	// ForceSendFields will be sent to the server regardless of whether the
4891	// field is empty or not. This may be used to include empty fields in
4892	// Patch requests.
4893	ForceSendFields []string `json:"-"`
4894
4895	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
4896	// include in API requests with the JSON null value. By default, fields
4897	// with empty values are omitted from API requests. However, any field
4898	// with an empty value appearing in NullFields will be sent to the
4899	// server as null. It is an error if a field in this list has a
4900	// non-empty value. This may be used to include null fields in Patch
4901	// requests.
4902	NullFields []string `json:"-"`
4903}
4904
4905func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
4906	type NoMethod MerchantOrderReturnItem
4907	raw := NoMethod(*s)
4908	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4909}
4910
4911type MerchantRejectionReason struct {
4912	// Description: Description of the reason.
4913	Description string `json:"description,omitempty"`
4914
4915	// ReasonCode: Code of the rejection reason.
4916	ReasonCode string `json:"reasonCode,omitempty"`
4917
4918	// ForceSendFields is a list of field names (e.g. "Description") to
4919	// unconditionally include in API requests. By default, fields with
4920	// empty values are omitted from API requests. However, any non-pointer,
4921	// non-interface field appearing in ForceSendFields will be sent to the
4922	// server regardless of whether the field is empty or not. This may be
4923	// used to include empty fields in Patch requests.
4924	ForceSendFields []string `json:"-"`
4925
4926	// NullFields is a list of field names (e.g. "Description") to include
4927	// in API requests with the JSON null value. By default, fields with
4928	// empty values are omitted from API requests. However, any field with
4929	// an empty value appearing in NullFields will be sent to the server as
4930	// null. It is an error if a field in this list has a non-empty value.
4931	// This may be used to include null fields in Patch requests.
4932	NullFields []string `json:"-"`
4933}
4934
4935func (s *MerchantRejectionReason) MarshalJSON() ([]byte, error) {
4936	type NoMethod MerchantRejectionReason
4937	raw := NoMethod(*s)
4938	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4939}
4940
4941type MinimumOrderValueTable struct {
4942	StoreCodeSetWithMovs []*MinimumOrderValueTableStoreCodeSetWithMov `json:"storeCodeSetWithMovs,omitempty"`
4943
4944	// ForceSendFields is a list of field names (e.g.
4945	// "StoreCodeSetWithMovs") to unconditionally include in API requests.
4946	// By default, fields with empty values are omitted from API requests.
4947	// However, any non-pointer, non-interface field appearing in
4948	// ForceSendFields will be sent to the server regardless of whether the
4949	// field is empty or not. This may be used to include empty fields in
4950	// Patch requests.
4951	ForceSendFields []string `json:"-"`
4952
4953	// NullFields is a list of field names (e.g. "StoreCodeSetWithMovs") to
4954	// include in API requests with the JSON null value. By default, fields
4955	// with empty values are omitted from API requests. However, any field
4956	// with an empty value appearing in NullFields will be sent to the
4957	// server as null. It is an error if a field in this list has a
4958	// non-empty value. This may be used to include null fields in Patch
4959	// requests.
4960	NullFields []string `json:"-"`
4961}
4962
4963func (s *MinimumOrderValueTable) MarshalJSON() ([]byte, error) {
4964	type NoMethod MinimumOrderValueTable
4965	raw := NoMethod(*s)
4966	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4967}
4968
4969// MinimumOrderValueTableStoreCodeSetWithMov: A list of store code sets
4970// sharing the same minimum order value. At least two sets are required
4971// and the last one must be empty, which signifies 'MOV for all other
4972// stores'. Each store code can only appear once across all the sets.
4973// All prices within a service must have the same currency.
4974type MinimumOrderValueTableStoreCodeSetWithMov struct {
4975	// StoreCodes: A list of unique store codes or empty for the catch all.
4976	StoreCodes []string `json:"storeCodes,omitempty"`
4977
4978	// Value: The minimum order value for the given stores.
4979	Value *Price `json:"value,omitempty"`
4980
4981	// ForceSendFields is a list of field names (e.g. "StoreCodes") to
4982	// unconditionally include in API requests. By default, fields with
4983	// empty values are omitted from API requests. However, any non-pointer,
4984	// non-interface field appearing in ForceSendFields will be sent to the
4985	// server regardless of whether the field is empty or not. This may be
4986	// used to include empty fields in Patch requests.
4987	ForceSendFields []string `json:"-"`
4988
4989	// NullFields is a list of field names (e.g. "StoreCodes") to include in
4990	// API requests with the JSON null value. By default, fields with empty
4991	// values are omitted from API requests. However, any field with an
4992	// empty value appearing in NullFields will be sent to the server as
4993	// null. It is an error if a field in this list has a non-empty value.
4994	// This may be used to include null fields in Patch requests.
4995	NullFields []string `json:"-"`
4996}
4997
4998func (s *MinimumOrderValueTableStoreCodeSetWithMov) MarshalJSON() ([]byte, error) {
4999	type NoMethod MinimumOrderValueTableStoreCodeSetWithMov
5000	raw := NoMethod(*s)
5001	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5002}
5003
5004type MonetaryAmount struct {
5005	// PriceAmount: The pre-tax or post-tax price depends on the location of
5006	// the order. - For countries (e.g. US) where price attribute excludes
5007	// tax, this field corresponds to the pre-tax value. - For coutries
5008	// (e.g. France) where price attribute includes tax, this field
5009	// corresponds to the post-tax value .
5010	PriceAmount *Price `json:"priceAmount,omitempty"`
5011
5012	// TaxAmount: Tax value, present only for countries where price
5013	// attribute excludes tax (e.g. US). No tax is referenced as 0 value
5014	// with the corresponding `currency`.
5015	TaxAmount *Price `json:"taxAmount,omitempty"`
5016
5017	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
5018	// unconditionally include in API requests. By default, fields with
5019	// empty values are omitted from API requests. However, any non-pointer,
5020	// non-interface field appearing in ForceSendFields will be sent to the
5021	// server regardless of whether the field is empty or not. This may be
5022	// used to include empty fields in Patch requests.
5023	ForceSendFields []string `json:"-"`
5024
5025	// NullFields is a list of field names (e.g. "PriceAmount") to include
5026	// in API requests with the JSON null value. By default, fields with
5027	// empty values are omitted from API requests. However, any field with
5028	// an empty value appearing in NullFields will be sent to the server as
5029	// null. It is an error if a field in this list has a non-empty value.
5030	// This may be used to include null fields in Patch requests.
5031	NullFields []string `json:"-"`
5032}
5033
5034func (s *MonetaryAmount) MarshalJSON() ([]byte, error) {
5035	type NoMethod MonetaryAmount
5036	raw := NoMethod(*s)
5037	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5038}
5039
5040// Order: Order. Production access (all methods) requires the order
5041// manager role. Sandbox access does not.
5042type Order struct {
5043	// Acknowledged: Whether the order was acknowledged.
5044	Acknowledged bool `json:"acknowledged,omitempty"`
5045
5046	// Annotations: List of key-value pairs that are attached to a given
5047	// order.
5048	Annotations []*OrderOrderAnnotation `json:"annotations,omitempty"`
5049
5050	// BillingAddress: The billing address.
5051	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
5052
5053	// Customer: The details of the customer who placed the order.
5054	Customer *OrderCustomer `json:"customer,omitempty"`
5055
5056	// DeliveryDetails: Delivery details for shipments of type `delivery`.
5057	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
5058
5059	// Id: The REST ID of the order. Globally unique.
5060	Id string `json:"id,omitempty"`
5061
5062	// Kind: Identifies what kind of resource this is. Value: the fixed
5063	// string "content#order"
5064	Kind string `json:"kind,omitempty"`
5065
5066	// LineItems: Line items that are ordered.
5067	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
5068
5069	MerchantId uint64 `json:"merchantId,omitempty,string"`
5070
5071	// MerchantOrderId: Merchant-provided ID of the order.
5072	MerchantOrderId string `json:"merchantOrderId,omitempty"`
5073
5074	// NetPriceAmount: The net amount for the order (price part). For
5075	// example, if an order was originally for $100 and a refund was issued
5076	// for $20, the net amount will be $80.
5077	NetPriceAmount *Price `json:"netPriceAmount,omitempty"`
5078
5079	// NetTaxAmount: The net amount for the order (tax part). Note that in
5080	// certain cases due to taxable base adjustment `netTaxAmount` might not
5081	// match to a sum of tax field across all lineItems and refunds.
5082	NetTaxAmount *Price `json:"netTaxAmount,omitempty"`
5083
5084	// PaymentStatus: The status of the payment. Acceptable values are: -
5085	// "paymentCaptured" - "paymentRejected" - "paymentSecured" -
5086	// "pendingAuthorization"
5087	PaymentStatus string `json:"paymentStatus,omitempty"`
5088
5089	// PickupDetails: Pickup details for shipments of type `pickup`.
5090	PickupDetails *OrderPickupDetails `json:"pickupDetails,omitempty"`
5091
5092	// PlacedDate: The date when the order was placed, in ISO 8601 format.
5093	PlacedDate string `json:"placedDate,omitempty"`
5094
5095	// Promotions: Promotions associated with the order. To determine which
5096	// promotions apply to which products, check the
5097	// `Promotions[].appliedItems[].lineItemId` field against the
5098	// `LineItems[].id` field for each promotion. If a promotion is applied
5099	// to more than 1 offerId, divide the discount value by the number of
5100	// affected offers to determine how much discount to apply to each
5101	// offerId. Examples: 1. To calculate price paid by the customer for a
5102	// single line item including the discount: For each promotion, subtract
5103	// the `LineItems[].adjustments[].priceAdjustment.value` amount from the
5104	// `LineItems[].Price.value`. 2. To calculate price paid by the customer
5105	// for a single line item including the discount in case of multiple
5106	// quantity: For each promotion, divide the
5107	// `LineItems[].adjustments[].priceAdjustment.value` by the quantity of
5108	// products then subtract the resulting value from the
5109	// `LineItems[].Product.Price.value` for each quantity item. Only 1
5110	// promotion can be applied to an offerId in a given order. To refund an
5111	// item which had a promotion applied to it, make sure to refund the
5112	// amount after first subtracting the promotion discount from the item
5113	// price. More details about the program are here.
5114	Promotions []*OrderPromotion `json:"promotions,omitempty"`
5115
5116	// Refunds: Refunds for the order.
5117	Refunds []*OrderRefund `json:"refunds,omitempty"`
5118
5119	// Shipments: Shipments of the order.
5120	Shipments []*OrderShipment `json:"shipments,omitempty"`
5121
5122	// ShippingCost: The total cost of shipping for all items.
5123	ShippingCost *Price `json:"shippingCost,omitempty"`
5124
5125	// ShippingCostTax: The tax for the total shipping cost.
5126	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
5127
5128	// Status: The status of the order. Acceptable values are: -
5129	// "canceled" - "delivered" - "inProgress" -
5130	// "partiallyDelivered" - "partiallyReturned" - "partiallyShipped"
5131	// - "pendingShipment" - "returned" - "shipped"
5132	Status string `json:"status,omitempty"`
5133
5134	// TaxCollector: The party responsible for collecting and remitting
5135	// taxes. Acceptable values are: - "marketplaceFacilitator" -
5136	// "merchant"
5137	TaxCollector string `json:"taxCollector,omitempty"`
5138
5139	// ServerResponse contains the HTTP response code and headers from the
5140	// server.
5141	googleapi.ServerResponse `json:"-"`
5142
5143	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
5144	// unconditionally include in API requests. By default, fields with
5145	// empty values are omitted from API requests. However, any non-pointer,
5146	// non-interface field appearing in ForceSendFields will be sent to the
5147	// server regardless of whether the field is empty or not. This may be
5148	// used to include empty fields in Patch requests.
5149	ForceSendFields []string `json:"-"`
5150
5151	// NullFields is a list of field names (e.g. "Acknowledged") to include
5152	// in API requests with the JSON null value. By default, fields with
5153	// empty values are omitted from API requests. However, any field with
5154	// an empty value appearing in NullFields will be sent to the server as
5155	// null. It is an error if a field in this list has a non-empty value.
5156	// This may be used to include null fields in Patch requests.
5157	NullFields []string `json:"-"`
5158}
5159
5160func (s *Order) MarshalJSON() ([]byte, error) {
5161	type NoMethod Order
5162	raw := NoMethod(*s)
5163	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5164}
5165
5166type OrderAddress struct {
5167	// Country: CLDR country code (e.g. "US").
5168	Country string `json:"country,omitempty"`
5169
5170	// FullAddress: Strings representing the lines of the printed label for
5171	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
5172	// Mountain View, CA, 94043 United States
5173	FullAddress []string `json:"fullAddress,omitempty"`
5174
5175	// IsPostOfficeBox: Whether the address is a post office box.
5176	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
5177
5178	// Locality: City, town or commune. May also include dependent
5179	// localities or sublocalities (e.g. neighborhoods or suburbs).
5180	Locality string `json:"locality,omitempty"`
5181
5182	// PostalCode: Postal Code or ZIP (e.g. "94043").
5183	PostalCode string `json:"postalCode,omitempty"`
5184
5185	// RecipientName: Name of the recipient.
5186	RecipientName string `json:"recipientName,omitempty"`
5187
5188	// Region: Top-level administrative subdivision of the country. For
5189	// example, a state like California ("CA") or a province like Quebec
5190	// ("QC").
5191	Region string `json:"region,omitempty"`
5192
5193	// StreetAddress: Street-level part of the address.
5194	StreetAddress []string `json:"streetAddress,omitempty"`
5195
5196	// ForceSendFields is a list of field names (e.g. "Country") to
5197	// unconditionally include in API requests. By default, fields with
5198	// empty values are omitted from API requests. However, any non-pointer,
5199	// non-interface field appearing in ForceSendFields will be sent to the
5200	// server regardless of whether the field is empty or not. This may be
5201	// used to include empty fields in Patch requests.
5202	ForceSendFields []string `json:"-"`
5203
5204	// NullFields is a list of field names (e.g. "Country") to include in
5205	// API requests with the JSON null value. By default, fields with empty
5206	// values are omitted from API requests. However, any field with an
5207	// empty value appearing in NullFields will be sent to the server as
5208	// null. It is an error if a field in this list has a non-empty value.
5209	// This may be used to include null fields in Patch requests.
5210	NullFields []string `json:"-"`
5211}
5212
5213func (s *OrderAddress) MarshalJSON() ([]byte, error) {
5214	type NoMethod OrderAddress
5215	raw := NoMethod(*s)
5216	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5217}
5218
5219type OrderCancellation struct {
5220	// Actor: The actor that created the cancellation. Acceptable values
5221	// are: - "customer" - "googleBot" - "googleCustomerService" -
5222	// "googlePayments" - "googleSabre" - "merchant"
5223	Actor string `json:"actor,omitempty"`
5224
5225	// CreationDate: Date on which the cancellation has been created, in ISO
5226	// 8601 format.
5227	CreationDate string `json:"creationDate,omitempty"`
5228
5229	// Quantity: The quantity that was canceled.
5230	Quantity int64 `json:"quantity,omitempty"`
5231
5232	// Reason: The reason for the cancellation. Orders that are canceled
5233	// with a noInventory reason will lead to the removal of the product
5234	// from Buy on Google until you make an update to that product. This
5235	// will not affect your Shopping ads. Acceptable values are: -
5236	// "autoPostInternal" - "autoPostInvalidBillingAddress" -
5237	// "autoPostNoInventory" - "autoPostPriceError" -
5238	// "autoPostUndeliverableShippingAddress" - "couponAbuse" -
5239	// "customerCanceled" - "customerInitiatedCancel" -
5240	// "customerSupportRequested" - "failToPushOrderGoogleError" -
5241	// "failToPushOrderMerchantError" -
5242	// "failToPushOrderMerchantFulfillmentError" -
5243	// "failToPushOrderToMerchant" -
5244	// "failToPushOrderToMerchantOutOfStock" - "invalidCoupon" -
5245	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
5246	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
5247	// "paymentDeclined" - "priceError" - "returnRefundAbuse" -
5248	// "shippingPriceError" - "taxError" -
5249	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
5250	Reason string `json:"reason,omitempty"`
5251
5252	// ReasonText: The explanation of the reason.
5253	ReasonText string `json:"reasonText,omitempty"`
5254
5255	// ForceSendFields is a list of field names (e.g. "Actor") to
5256	// unconditionally include in API requests. By default, fields with
5257	// empty values are omitted from API requests. However, any non-pointer,
5258	// non-interface field appearing in ForceSendFields will be sent to the
5259	// server regardless of whether the field is empty or not. This may be
5260	// used to include empty fields in Patch requests.
5261	ForceSendFields []string `json:"-"`
5262
5263	// NullFields is a list of field names (e.g. "Actor") to include in API
5264	// requests with the JSON null value. By default, fields with empty
5265	// values are omitted from API requests. However, any field with an
5266	// empty value appearing in NullFields will be sent to the server as
5267	// null. It is an error if a field in this list has a non-empty value.
5268	// This may be used to include null fields in Patch requests.
5269	NullFields []string `json:"-"`
5270}
5271
5272func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
5273	type NoMethod OrderCancellation
5274	raw := NoMethod(*s)
5275	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5276}
5277
5278type OrderCustomer struct {
5279	// FullName: Full name of the customer.
5280	FullName string `json:"fullName,omitempty"`
5281
5282	// InvoiceReceivingEmail: Email address for the merchant to send
5283	// value-added tax or invoice documentation of the order. Only the last
5284	// document sent is made available to the customer. For more
5285	// information, see About automated VAT invoicing for Buy on Google.
5286	InvoiceReceivingEmail string `json:"invoiceReceivingEmail,omitempty"`
5287
5288	// LoyaltyInfo: Loyalty program information.
5289	LoyaltyInfo *OrderCustomerLoyaltyInfo `json:"loyaltyInfo,omitempty"`
5290
5291	// MarketingRightsInfo: Customer's marketing preferences. Contains the
5292	// marketing opt-in information that is current at the time that the
5293	// merchant call. User preference selections can change from one order
5294	// to the next so preferences must be checked with every order.
5295	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
5296
5297	// ForceSendFields is a list of field names (e.g. "FullName") to
5298	// unconditionally include in API requests. By default, fields with
5299	// empty values are omitted from API requests. However, any non-pointer,
5300	// non-interface field appearing in ForceSendFields will be sent to the
5301	// server regardless of whether the field is empty or not. This may be
5302	// used to include empty fields in Patch requests.
5303	ForceSendFields []string `json:"-"`
5304
5305	// NullFields is a list of field names (e.g. "FullName") to include in
5306	// API requests with the JSON null value. By default, fields with empty
5307	// values are omitted from API requests. However, any field with an
5308	// empty value appearing in NullFields will be sent to the server as
5309	// null. It is an error if a field in this list has a non-empty value.
5310	// This may be used to include null fields in Patch requests.
5311	NullFields []string `json:"-"`
5312}
5313
5314func (s *OrderCustomer) MarshalJSON() ([]byte, error) {
5315	type NoMethod OrderCustomer
5316	raw := NoMethod(*s)
5317	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5318}
5319
5320type OrderCustomerLoyaltyInfo struct {
5321	// LoyaltyNumber: The loyalty card/membership number.
5322	LoyaltyNumber string `json:"loyaltyNumber,omitempty"`
5323
5324	// Name: Name of card/membership holder, this field will be populated
5325	// when
5326	Name string `json:"name,omitempty"`
5327
5328	// ForceSendFields is a list of field names (e.g. "LoyaltyNumber") to
5329	// unconditionally include in API requests. By default, fields with
5330	// empty values are omitted from API requests. However, any non-pointer,
5331	// non-interface field appearing in ForceSendFields will be sent to the
5332	// server regardless of whether the field is empty or not. This may be
5333	// used to include empty fields in Patch requests.
5334	ForceSendFields []string `json:"-"`
5335
5336	// NullFields is a list of field names (e.g. "LoyaltyNumber") to include
5337	// in API requests with the JSON null value. By default, fields with
5338	// empty values are omitted from API requests. However, any field with
5339	// an empty value appearing in NullFields will be sent to the server as
5340	// null. It is an error if a field in this list has a non-empty value.
5341	// This may be used to include null fields in Patch requests.
5342	NullFields []string `json:"-"`
5343}
5344
5345func (s *OrderCustomerLoyaltyInfo) MarshalJSON() ([]byte, error) {
5346	type NoMethod OrderCustomerLoyaltyInfo
5347	raw := NoMethod(*s)
5348	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5349}
5350
5351type OrderCustomerMarketingRightsInfo struct {
5352	// ExplicitMarketingPreference: Last known customer selection regarding
5353	// marketing preferences. In certain cases this selection might not be
5354	// known, so this field would be empty. If a customer selected `granted`
5355	// in their most recent order, they can be subscribed to marketing
5356	// emails. Customers who have chosen `denied` must not be subscribed, or
5357	// must be unsubscribed if already opted-in. Acceptable values are: -
5358	// "denied" - "granted"
5359	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
5360
5361	// LastUpdatedTimestamp: Timestamp when last time marketing preference
5362	// was updated. Could be empty, if user wasn't offered a selection yet.
5363	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
5364
5365	// MarketingEmailAddress: Email address that can be used for marketing
5366	// purposes. The field may be empty even if
5367	// `explicitMarketingPreference` is 'granted'. This happens when
5368	// retrieving an old order from the customer who deleted their account.
5369	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
5370
5371	// ForceSendFields is a list of field names (e.g.
5372	// "ExplicitMarketingPreference") to unconditionally include in API
5373	// requests. By default, fields with empty values are omitted from API
5374	// requests. However, any non-pointer, non-interface field appearing in
5375	// ForceSendFields will be sent to the server regardless of whether the
5376	// field is empty or not. This may be used to include empty fields in
5377	// Patch requests.
5378	ForceSendFields []string `json:"-"`
5379
5380	// NullFields is a list of field names (e.g.
5381	// "ExplicitMarketingPreference") to include in API requests with the
5382	// JSON null value. By default, fields with empty values are omitted
5383	// from API requests. However, any field with an empty value appearing
5384	// in NullFields will be sent to the server as null. It is an error if a
5385	// field in this list has a non-empty value. This may be used to include
5386	// null fields in Patch requests.
5387	NullFields []string `json:"-"`
5388}
5389
5390func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
5391	type NoMethod OrderCustomerMarketingRightsInfo
5392	raw := NoMethod(*s)
5393	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5394}
5395
5396type OrderDeliveryDetails struct {
5397	// Address: The delivery address
5398	Address *OrderAddress `json:"address,omitempty"`
5399
5400	// PhoneNumber: The phone number of the person receiving the delivery.
5401	PhoneNumber string `json:"phoneNumber,omitempty"`
5402
5403	// ForceSendFields is a list of field names (e.g. "Address") to
5404	// unconditionally include in API requests. By default, fields with
5405	// empty values are omitted from API requests. However, any non-pointer,
5406	// non-interface field appearing in ForceSendFields will be sent to the
5407	// server regardless of whether the field is empty or not. This may be
5408	// used to include empty fields in Patch requests.
5409	ForceSendFields []string `json:"-"`
5410
5411	// NullFields is a list of field names (e.g. "Address") to include in
5412	// API requests with the JSON null value. By default, fields with empty
5413	// values are omitted from API requests. However, any field with an
5414	// empty value appearing in NullFields will be sent to the server as
5415	// null. It is an error if a field in this list has a non-empty value.
5416	// This may be used to include null fields in Patch requests.
5417	NullFields []string `json:"-"`
5418}
5419
5420func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
5421	type NoMethod OrderDeliveryDetails
5422	raw := NoMethod(*s)
5423	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5424}
5425
5426type OrderLineItem struct {
5427	// Adjustments: Price and tax adjustments applied on the line item.
5428	Adjustments []*OrderLineItemAdjustment `json:"adjustments,omitempty"`
5429
5430	// Annotations: Annotations that are attached to the line item.
5431	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
5432
5433	// Cancellations: Cancellations of the line item.
5434	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
5435
5436	// Id: The ID of the line item.
5437	Id string `json:"id,omitempty"`
5438
5439	// Price: Total price for the line item. For example, if two items for
5440	// $10 are purchased, the total price will be $20.
5441	Price *Price `json:"price,omitempty"`
5442
5443	// Product: Product data as seen by customer from the time of the order
5444	// placement. Note that certain attributes values (e.g. title or gtin)
5445	// might be reformatted and no longer match values submitted via product
5446	// feed.
5447	Product *OrderLineItemProduct `json:"product,omitempty"`
5448
5449	// QuantityCanceled: Number of items canceled.
5450	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
5451
5452	// QuantityDelivered: Number of items delivered.
5453	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
5454
5455	// QuantityOrdered: Number of items ordered.
5456	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
5457
5458	// QuantityPending: Number of items pending.
5459	QuantityPending int64 `json:"quantityPending,omitempty"`
5460
5461	// QuantityReadyForPickup: Number of items ready for pickup.
5462	QuantityReadyForPickup int64 `json:"quantityReadyForPickup,omitempty"`
5463
5464	// QuantityReturned: Number of items returned.
5465	QuantityReturned int64 `json:"quantityReturned,omitempty"`
5466
5467	// QuantityShipped: Number of items shipped.
5468	QuantityShipped int64 `json:"quantityShipped,omitempty"`
5469
5470	// QuantityUndeliverable: Number of items undeliverable.
5471	QuantityUndeliverable int64 `json:"quantityUndeliverable,omitempty"`
5472
5473	// ReturnInfo: Details of the return policy for the line item.
5474	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
5475
5476	// Returns: Returns of the line item.
5477	Returns []*OrderReturn `json:"returns,omitempty"`
5478
5479	// ShippingDetails: Details of the requested shipping for the line item.
5480	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
5481
5482	// Tax: Total tax amount for the line item. For example, if two items
5483	// are purchased, and each have a cost tax of $2, the total tax amount
5484	// will be $4.
5485	Tax *Price `json:"tax,omitempty"`
5486
5487	// ForceSendFields is a list of field names (e.g. "Adjustments") to
5488	// unconditionally include in API requests. By default, fields with
5489	// empty values are omitted from API requests. However, any non-pointer,
5490	// non-interface field appearing in ForceSendFields will be sent to the
5491	// server regardless of whether the field is empty or not. This may be
5492	// used to include empty fields in Patch requests.
5493	ForceSendFields []string `json:"-"`
5494
5495	// NullFields is a list of field names (e.g. "Adjustments") to include
5496	// in API requests with the JSON null value. By default, fields with
5497	// empty values are omitted from API requests. However, any field with
5498	// an empty value appearing in NullFields will be sent to the server as
5499	// null. It is an error if a field in this list has a non-empty value.
5500	// This may be used to include null fields in Patch requests.
5501	NullFields []string `json:"-"`
5502}
5503
5504func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
5505	type NoMethod OrderLineItem
5506	raw := NoMethod(*s)
5507	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5508}
5509
5510type OrderLineItemAdjustment struct {
5511	// PriceAdjustment: Adjustment for total price of the line item.
5512	PriceAdjustment *Price `json:"priceAdjustment,omitempty"`
5513
5514	// TaxAdjustment: Adjustment for total tax of the line item.
5515	TaxAdjustment *Price `json:"taxAdjustment,omitempty"`
5516
5517	// Type: Type of this adjustment. Acceptable values are: - "promotion"
5518	Type string `json:"type,omitempty"`
5519
5520	// ForceSendFields is a list of field names (e.g. "PriceAdjustment") to
5521	// unconditionally include in API requests. By default, fields with
5522	// empty values are omitted from API requests. However, any non-pointer,
5523	// non-interface field appearing in ForceSendFields will be sent to the
5524	// server regardless of whether the field is empty or not. This may be
5525	// used to include empty fields in Patch requests.
5526	ForceSendFields []string `json:"-"`
5527
5528	// NullFields is a list of field names (e.g. "PriceAdjustment") to
5529	// include in API requests with the JSON null value. By default, fields
5530	// with empty values are omitted from API requests. However, any field
5531	// with an empty value appearing in NullFields will be sent to the
5532	// server as null. It is an error if a field in this list has a
5533	// non-empty value. This may be used to include null fields in Patch
5534	// requests.
5535	NullFields []string `json:"-"`
5536}
5537
5538func (s *OrderLineItemAdjustment) MarshalJSON() ([]byte, error) {
5539	type NoMethod OrderLineItemAdjustment
5540	raw := NoMethod(*s)
5541	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5542}
5543
5544type OrderLineItemProduct struct {
5545	// Brand: Brand of the item.
5546	Brand string `json:"brand,omitempty"`
5547
5548	// Condition: Condition or state of the item. Acceptable values are: -
5549	// "new" - "refurbished" - "used"
5550	Condition string `json:"condition,omitempty"`
5551
5552	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
5553	ContentLanguage string `json:"contentLanguage,omitempty"`
5554
5555	// Fees: Associated fees at order creation time.
5556	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
5557
5558	// Gtin: Global Trade Item Number (GTIN) of the item.
5559	Gtin string `json:"gtin,omitempty"`
5560
5561	// Id: The REST ID of the product.
5562	Id string `json:"id,omitempty"`
5563
5564	// ImageLink: URL of an image of the item.
5565	ImageLink string `json:"imageLink,omitempty"`
5566
5567	// ItemGroupId: Shared identifier for all variants of the same product.
5568	ItemGroupId string `json:"itemGroupId,omitempty"`
5569
5570	// Mpn: Manufacturer Part Number (MPN) of the item.
5571	Mpn string `json:"mpn,omitempty"`
5572
5573	// OfferId: An identifier of the item.
5574	OfferId string `json:"offerId,omitempty"`
5575
5576	// Price: Price of the item.
5577	Price *Price `json:"price,omitempty"`
5578
5579	// ShownImage: URL to the cached image shown to the user when order was
5580	// placed.
5581	ShownImage string `json:"shownImage,omitempty"`
5582
5583	// TargetCountry: The CLDR territory // code of the target country of
5584	// the product.
5585	TargetCountry string `json:"targetCountry,omitempty"`
5586
5587	// Title: The title of the product.
5588	Title string `json:"title,omitempty"`
5589
5590	// VariantAttributes: Variant attributes for the item. These are
5591	// dimensions of the product, such as color, gender, material, pattern,
5592	// and size. You can find a comprehensive list of variant attributes
5593	// here.
5594	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
5595
5596	// ForceSendFields is a list of field names (e.g. "Brand") to
5597	// unconditionally include in API requests. By default, fields with
5598	// empty values are omitted from API requests. However, any non-pointer,
5599	// non-interface field appearing in ForceSendFields will be sent to the
5600	// server regardless of whether the field is empty or not. This may be
5601	// used to include empty fields in Patch requests.
5602	ForceSendFields []string `json:"-"`
5603
5604	// NullFields is a list of field names (e.g. "Brand") to include in API
5605	// requests with the JSON null value. By default, fields with empty
5606	// values are omitted from API requests. However, any field with an
5607	// empty value appearing in NullFields will be sent to the server as
5608	// null. It is an error if a field in this list has a non-empty value.
5609	// This may be used to include null fields in Patch requests.
5610	NullFields []string `json:"-"`
5611}
5612
5613func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
5614	type NoMethod OrderLineItemProduct
5615	raw := NoMethod(*s)
5616	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5617}
5618
5619type OrderLineItemProductFee struct {
5620	// Amount: Amount of the fee.
5621	Amount *Price `json:"amount,omitempty"`
5622
5623	// Name: Name of the fee.
5624	Name string `json:"name,omitempty"`
5625
5626	// ForceSendFields is a list of field names (e.g. "Amount") to
5627	// unconditionally include in API requests. By default, fields with
5628	// empty values are omitted from API requests. However, any non-pointer,
5629	// non-interface field appearing in ForceSendFields will be sent to the
5630	// server regardless of whether the field is empty or not. This may be
5631	// used to include empty fields in Patch requests.
5632	ForceSendFields []string `json:"-"`
5633
5634	// NullFields is a list of field names (e.g. "Amount") to include in API
5635	// requests with the JSON null value. By default, fields with empty
5636	// values are omitted from API requests. However, any field with an
5637	// empty value appearing in NullFields will be sent to the server as
5638	// null. It is an error if a field in this list has a non-empty value.
5639	// This may be used to include null fields in Patch requests.
5640	NullFields []string `json:"-"`
5641}
5642
5643func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
5644	type NoMethod OrderLineItemProductFee
5645	raw := NoMethod(*s)
5646	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5647}
5648
5649type OrderLineItemProductVariantAttribute struct {
5650	// Dimension: The dimension of the variant.
5651	Dimension string `json:"dimension,omitempty"`
5652
5653	// Value: The value for the dimension.
5654	Value string `json:"value,omitempty"`
5655
5656	// ForceSendFields is a list of field names (e.g. "Dimension") to
5657	// unconditionally include in API requests. By default, fields with
5658	// empty values are omitted from API requests. However, any non-pointer,
5659	// non-interface field appearing in ForceSendFields will be sent to the
5660	// server regardless of whether the field is empty or not. This may be
5661	// used to include empty fields in Patch requests.
5662	ForceSendFields []string `json:"-"`
5663
5664	// NullFields is a list of field names (e.g. "Dimension") to include in
5665	// API requests with the JSON null value. By default, fields with empty
5666	// values are omitted from API requests. However, any field with an
5667	// empty value appearing in NullFields will be sent to the server as
5668	// null. It is an error if a field in this list has a non-empty value.
5669	// This may be used to include null fields in Patch requests.
5670	NullFields []string `json:"-"`
5671}
5672
5673func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
5674	type NoMethod OrderLineItemProductVariantAttribute
5675	raw := NoMethod(*s)
5676	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5677}
5678
5679type OrderLineItemReturnInfo struct {
5680	// DaysToReturn: Required. How many days later the item can be returned.
5681	DaysToReturn int64 `json:"daysToReturn,omitempty"`
5682
5683	// IsReturnable: Required. Whether the item is returnable.
5684	IsReturnable bool `json:"isReturnable,omitempty"`
5685
5686	// PolicyUrl: Required. URL of the item return policy.
5687	PolicyUrl string `json:"policyUrl,omitempty"`
5688
5689	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
5690	// unconditionally include in API requests. By default, fields with
5691	// empty values are omitted from API requests. However, any non-pointer,
5692	// non-interface field appearing in ForceSendFields will be sent to the
5693	// server regardless of whether the field is empty or not. This may be
5694	// used to include empty fields in Patch requests.
5695	ForceSendFields []string `json:"-"`
5696
5697	// NullFields is a list of field names (e.g. "DaysToReturn") to include
5698	// in API requests with the JSON null value. By default, fields with
5699	// empty values are omitted from API requests. However, any field with
5700	// an empty value appearing in NullFields will be sent to the server as
5701	// null. It is an error if a field in this list has a non-empty value.
5702	// This may be used to include null fields in Patch requests.
5703	NullFields []string `json:"-"`
5704}
5705
5706func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
5707	type NoMethod OrderLineItemReturnInfo
5708	raw := NoMethod(*s)
5709	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5710}
5711
5712type OrderLineItemShippingDetails struct {
5713	// DeliverByDate: Required. The delivery by date, in ISO 8601 format.
5714	DeliverByDate string `json:"deliverByDate,omitempty"`
5715
5716	// Method: Required. Details of the shipping method.
5717	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
5718
5719	// PickupPromiseInMinutes: The promised time in minutes in which the
5720	// order will be ready for pickup. This only applies to
5721	// buy-online-pickup-in-store same-day order.
5722	PickupPromiseInMinutes int64 `json:"pickupPromiseInMinutes,omitempty"`
5723
5724	// ShipByDate: Required. The ship by date, in ISO 8601 format.
5725	ShipByDate string `json:"shipByDate,omitempty"`
5726
5727	// Type: Type of shipment. Indicates whether `deliveryDetails` or
5728	// `pickupDetails` is applicable for this shipment. Acceptable values
5729	// are: - "delivery" - "pickup"
5730	Type string `json:"type,omitempty"`
5731
5732	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
5733	// unconditionally include in API requests. By default, fields with
5734	// empty values are omitted from API requests. However, any non-pointer,
5735	// non-interface field appearing in ForceSendFields will be sent to the
5736	// server regardless of whether the field is empty or not. This may be
5737	// used to include empty fields in Patch requests.
5738	ForceSendFields []string `json:"-"`
5739
5740	// NullFields is a list of field names (e.g. "DeliverByDate") to include
5741	// in API requests with the JSON null value. By default, fields with
5742	// empty values are omitted from API requests. However, any field with
5743	// an empty value appearing in NullFields will be sent to the server as
5744	// null. It is an error if a field in this list has a non-empty value.
5745	// This may be used to include null fields in Patch requests.
5746	NullFields []string `json:"-"`
5747}
5748
5749func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
5750	type NoMethod OrderLineItemShippingDetails
5751	raw := NoMethod(*s)
5752	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5753}
5754
5755type OrderLineItemShippingDetailsMethod struct {
5756	// Carrier: The carrier for the shipping. Optional. See
5757	// `shipments[].carrier` for a list of acceptable values.
5758	Carrier string `json:"carrier,omitempty"`
5759
5760	// MaxDaysInTransit: Required. Maximum transit time.
5761	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
5762
5763	// MethodName: Required. The name of the shipping method.
5764	MethodName string `json:"methodName,omitempty"`
5765
5766	// MinDaysInTransit: Required. Minimum transit time.
5767	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
5768
5769	// ForceSendFields is a list of field names (e.g. "Carrier") to
5770	// unconditionally include in API requests. By default, fields with
5771	// empty values are omitted from API requests. However, any non-pointer,
5772	// non-interface field appearing in ForceSendFields will be sent to the
5773	// server regardless of whether the field is empty or not. This may be
5774	// used to include empty fields in Patch requests.
5775	ForceSendFields []string `json:"-"`
5776
5777	// NullFields is a list of field names (e.g. "Carrier") to include in
5778	// API requests with the JSON null value. By default, fields with empty
5779	// values are omitted from API requests. However, any field with an
5780	// empty value appearing in NullFields will be sent to the server as
5781	// null. It is an error if a field in this list has a non-empty value.
5782	// This may be used to include null fields in Patch requests.
5783	NullFields []string `json:"-"`
5784}
5785
5786func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
5787	type NoMethod OrderLineItemShippingDetailsMethod
5788	raw := NoMethod(*s)
5789	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5790}
5791
5792type OrderMerchantProvidedAnnotation struct {
5793	// Key: Key for additional merchant provided (as key-value pairs)
5794	// annotation about the line item.
5795	Key string `json:"key,omitempty"`
5796
5797	// Value: Value for additional merchant provided (as key-value pairs)
5798	// annotation about the line item.
5799	Value string `json:"value,omitempty"`
5800
5801	// ForceSendFields is a list of field names (e.g. "Key") to
5802	// unconditionally include in API requests. By default, fields with
5803	// empty values are omitted from API requests. However, any non-pointer,
5804	// non-interface field appearing in ForceSendFields will be sent to the
5805	// server regardless of whether the field is empty or not. This may be
5806	// used to include empty fields in Patch requests.
5807	ForceSendFields []string `json:"-"`
5808
5809	// NullFields is a list of field names (e.g. "Key") to include in API
5810	// requests with the JSON null value. By default, fields with empty
5811	// values are omitted from API requests. However, any field with an
5812	// empty value appearing in NullFields will be sent to the server as
5813	// null. It is an error if a field in this list has a non-empty value.
5814	// This may be used to include null fields in Patch requests.
5815	NullFields []string `json:"-"`
5816}
5817
5818func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
5819	type NoMethod OrderMerchantProvidedAnnotation
5820	raw := NoMethod(*s)
5821	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5822}
5823
5824type OrderOrderAnnotation struct {
5825	// Key: Key for additional google provided (as key-value pairs)
5826	// annotation.
5827	Key string `json:"key,omitempty"`
5828
5829	// Value: Value for additional google provided (as key-value pairs)
5830	// annotation.
5831	Value string `json:"value,omitempty"`
5832
5833	// ForceSendFields is a list of field names (e.g. "Key") to
5834	// unconditionally include in API requests. By default, fields with
5835	// empty values are omitted from API requests. However, any non-pointer,
5836	// non-interface field appearing in ForceSendFields will be sent to the
5837	// server regardless of whether the field is empty or not. This may be
5838	// used to include empty fields in Patch requests.
5839	ForceSendFields []string `json:"-"`
5840
5841	// NullFields is a list of field names (e.g. "Key") to include in API
5842	// requests with the JSON null value. By default, fields with empty
5843	// values are omitted from API requests. However, any field with an
5844	// empty value appearing in NullFields will be sent to the server as
5845	// null. It is an error if a field in this list has a non-empty value.
5846	// This may be used to include null fields in Patch requests.
5847	NullFields []string `json:"-"`
5848}
5849
5850func (s *OrderOrderAnnotation) MarshalJSON() ([]byte, error) {
5851	type NoMethod OrderOrderAnnotation
5852	raw := NoMethod(*s)
5853	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5854}
5855
5856type OrderPickupDetails struct {
5857	// Address: Address of the pickup location where the shipment should be
5858	// sent. Note that `recipientName` in the address is the name of the
5859	// business at the pickup location.
5860	Address *OrderAddress `json:"address,omitempty"`
5861
5862	// Collectors: Collectors authorized to pick up shipment from the pickup
5863	// location.
5864	Collectors []*OrderPickupDetailsCollector `json:"collectors,omitempty"`
5865
5866	// LocationId: ID of the pickup location.
5867	LocationId string `json:"locationId,omitempty"`
5868
5869	// PickupType: The pickup type of this order. Acceptable values are: -
5870	// "merchantStore" - "merchantStoreCurbside" -
5871	// "merchantStoreLocker" - "thirdPartyPickupPoint" -
5872	// "thirdPartyLocker"
5873	PickupType string `json:"pickupType,omitempty"`
5874
5875	// ForceSendFields is a list of field names (e.g. "Address") to
5876	// unconditionally include in API requests. By default, fields with
5877	// empty values are omitted from API requests. However, any non-pointer,
5878	// non-interface field appearing in ForceSendFields will be sent to the
5879	// server regardless of whether the field is empty or not. This may be
5880	// used to include empty fields in Patch requests.
5881	ForceSendFields []string `json:"-"`
5882
5883	// NullFields is a list of field names (e.g. "Address") to include in
5884	// API requests with the JSON null value. By default, fields with empty
5885	// values are omitted from API requests. However, any field with an
5886	// empty value appearing in NullFields will be sent to the server as
5887	// null. It is an error if a field in this list has a non-empty value.
5888	// This may be used to include null fields in Patch requests.
5889	NullFields []string `json:"-"`
5890}
5891
5892func (s *OrderPickupDetails) MarshalJSON() ([]byte, error) {
5893	type NoMethod OrderPickupDetails
5894	raw := NoMethod(*s)
5895	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5896}
5897
5898type OrderPickupDetailsCollector struct {
5899	// Name: Name of the person picking up the shipment.
5900	Name string `json:"name,omitempty"`
5901
5902	// PhoneNumber: Phone number of the person picking up the shipment.
5903	PhoneNumber string `json:"phoneNumber,omitempty"`
5904
5905	// ForceSendFields is a list of field names (e.g. "Name") to
5906	// unconditionally include in API requests. By default, fields with
5907	// empty values are omitted from API requests. However, any non-pointer,
5908	// non-interface field appearing in ForceSendFields will be sent to the
5909	// server regardless of whether the field is empty or not. This may be
5910	// used to include empty fields in Patch requests.
5911	ForceSendFields []string `json:"-"`
5912
5913	// NullFields is a list of field names (e.g. "Name") to include in API
5914	// requests with the JSON null value. By default, fields with empty
5915	// values are omitted from API requests. However, any field with an
5916	// empty value appearing in NullFields will be sent to the server as
5917	// null. It is an error if a field in this list has a non-empty value.
5918	// This may be used to include null fields in Patch requests.
5919	NullFields []string `json:"-"`
5920}
5921
5922func (s *OrderPickupDetailsCollector) MarshalJSON() ([]byte, error) {
5923	type NoMethod OrderPickupDetailsCollector
5924	raw := NoMethod(*s)
5925	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5926}
5927
5928type OrderPromotion struct {
5929	// ApplicableItems: Items that this promotion may be applied to. If
5930	// empty, there are no restrictions on applicable items and quantity.
5931	// This field will also be empty for shipping promotions because
5932	// shipping is not tied to any specific item.
5933	ApplicableItems []*OrderPromotionItem `json:"applicableItems,omitempty"`
5934
5935	// AppliedItems: Items that this promotion have been applied to. Do not
5936	// provide for `orders.createtestorder`. This field will be empty for
5937	// shipping promotions because shipping is not tied to any specific
5938	// item.
5939	AppliedItems []*OrderPromotionItem `json:"appliedItems,omitempty"`
5940
5941	// EndTime: Promotion end time in ISO 8601 format. Date, time, and
5942	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
5943	// "2020-01-02T09:00:00Z".
5944	EndTime string `json:"endTime,omitempty"`
5945
5946	// Funder: Required. The party funding the promotion. Only `merchant` is
5947	// supported for `orders.createtestorder`. Acceptable values are: -
5948	// "google" - "merchant"
5949	Funder string `json:"funder,omitempty"`
5950
5951	// MerchantPromotionId: Required. This field is used to identify
5952	// promotions within merchants' own systems.
5953	MerchantPromotionId string `json:"merchantPromotionId,omitempty"`
5954
5955	// PriceValue: Estimated discount applied to price. Amount is pre-tax or
5956	// post-tax depending on location of order.
5957	PriceValue *Price `json:"priceValue,omitempty"`
5958
5959	// ShortTitle: A short title of the promotion to be shown on the
5960	// checkout page. Do not provide for `orders.createtestorder`.
5961	ShortTitle string `json:"shortTitle,omitempty"`
5962
5963	// StartTime: Promotion start time in ISO 8601 format. Date, time, and
5964	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
5965	// "2020-01-02T09:00:00Z".
5966	StartTime string `json:"startTime,omitempty"`
5967
5968	// Subtype: Required. The category of the promotion. Only `moneyOff` is
5969	// supported for `orders.createtestorder`. Acceptable values are: -
5970	// "buyMGetMoneyOff" - "buyMGetNMoneyOff" - "buyMGetNPercentOff" -
5971	// "buyMGetPercentOff" - "freeGift" - "freeGiftWithItemId" -
5972	// "freeGiftWithValue" - "freeShippingOvernight" -
5973	// "freeShippingStandard" - "freeShippingTwoDay" - "moneyOff" -
5974	// "percentOff" - "rewardPoints" - "salePrice"
5975	Subtype string `json:"subtype,omitempty"`
5976
5977	// TaxValue: Estimated discount applied to tax (if allowed by law). Do
5978	// not provide for `orders.createtestorder`.
5979	TaxValue *Price `json:"taxValue,omitempty"`
5980
5981	// Title: Required. The title of the promotion.
5982	Title string `json:"title,omitempty"`
5983
5984	// Type: Required. The scope of the promotion. Only `product` is
5985	// supported for `orders.createtestorder`. Acceptable values are: -
5986	// "product" - "shipping"
5987	Type string `json:"type,omitempty"`
5988
5989	// ForceSendFields is a list of field names (e.g. "ApplicableItems") to
5990	// unconditionally include in API requests. By default, fields with
5991	// empty values are omitted from API requests. However, any non-pointer,
5992	// non-interface field appearing in ForceSendFields will be sent to the
5993	// server regardless of whether the field is empty or not. This may be
5994	// used to include empty fields in Patch requests.
5995	ForceSendFields []string `json:"-"`
5996
5997	// NullFields is a list of field names (e.g. "ApplicableItems") to
5998	// include in API requests with the JSON null value. By default, fields
5999	// with empty values are omitted from API requests. However, any field
6000	// with an empty value appearing in NullFields will be sent to the
6001	// server as null. It is an error if a field in this list has a
6002	// non-empty value. This may be used to include null fields in Patch
6003	// requests.
6004	NullFields []string `json:"-"`
6005}
6006
6007func (s *OrderPromotion) MarshalJSON() ([]byte, error) {
6008	type NoMethod OrderPromotion
6009	raw := NoMethod(*s)
6010	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6011}
6012
6013type OrderPromotionItem struct {
6014	// LineItemId: The line item ID of a product. Do not provide for
6015	// `orders.createtestorder`.
6016	LineItemId string `json:"lineItemId,omitempty"`
6017
6018	// OfferId: Required. Offer ID of a product. Only for
6019	// `orders.createtestorder`.
6020	OfferId string `json:"offerId,omitempty"`
6021
6022	// ProductId: `orders.createtestorder`.
6023	ProductId string `json:"productId,omitempty"`
6024
6025	// Quantity: The quantity of the associated product. Do not provide for
6026	// `orders.createtestorder`.
6027	Quantity int64 `json:"quantity,omitempty"`
6028
6029	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6030	// unconditionally include in API requests. By default, fields with
6031	// empty values are omitted from API requests. However, any non-pointer,
6032	// non-interface field appearing in ForceSendFields will be sent to the
6033	// server regardless of whether the field is empty or not. This may be
6034	// used to include empty fields in Patch requests.
6035	ForceSendFields []string `json:"-"`
6036
6037	// NullFields is a list of field names (e.g. "LineItemId") to include in
6038	// API requests with the JSON null value. By default, fields with empty
6039	// values are omitted from API requests. However, any field with an
6040	// empty value appearing in NullFields will be sent to the server as
6041	// null. It is an error if a field in this list has a non-empty value.
6042	// This may be used to include null fields in Patch requests.
6043	NullFields []string `json:"-"`
6044}
6045
6046func (s *OrderPromotionItem) MarshalJSON() ([]byte, error) {
6047	type NoMethod OrderPromotionItem
6048	raw := NoMethod(*s)
6049	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6050}
6051
6052type OrderRefund struct {
6053	// Actor: The actor that created the refund. Acceptable values are: -
6054	// "customer" - "googleBot" - "googleCustomerService" -
6055	// "googlePayments" - "googleSabre" - "merchant"
6056	Actor string `json:"actor,omitempty"`
6057
6058	// Amount: The amount that is refunded.
6059	Amount *Price `json:"amount,omitempty"`
6060
6061	// CreationDate: Date on which the item has been created, in ISO 8601
6062	// format.
6063	CreationDate string `json:"creationDate,omitempty"`
6064
6065	// Reason: The reason for the refund. Acceptable values are: -
6066	// "adjustment" - "autoPostInternal" -
6067	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
6068	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
6069	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
6070	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
6071	// - "customerSupportRequested" - "deliveredLateByCarrier" -
6072	// "deliveredTooLate" - "expiredItem" -
6073	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
6074	// "failToPushOrderMerchantFulfillmentError" -
6075	// "failToPushOrderToMerchant" -
6076	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
6077	// "invalidCoupon" - "lateShipmentCredit" -
6078	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
6079	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
6080	// "paymentDeclined" - "priceAdjustment" - "priceError" -
6081	// "productArrivedDamaged" - "productNotAsDescribed" -
6082	// "promoReallocation" - "qualityNotAsExpected" -
6083	// "returnRefundAbuse" - "shippingCostAdjustment" -
6084	// "shippingPriceError" - "taxAdjustment" - "taxError" -
6085	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
6086	// "wrongProductShipped"
6087	Reason string `json:"reason,omitempty"`
6088
6089	// ReasonText: The explanation of the reason.
6090	ReasonText string `json:"reasonText,omitempty"`
6091
6092	// ForceSendFields is a list of field names (e.g. "Actor") to
6093	// unconditionally include in API requests. By default, fields with
6094	// empty values are omitted from API requests. However, any non-pointer,
6095	// non-interface field appearing in ForceSendFields will be sent to the
6096	// server regardless of whether the field is empty or not. This may be
6097	// used to include empty fields in Patch requests.
6098	ForceSendFields []string `json:"-"`
6099
6100	// NullFields is a list of field names (e.g. "Actor") to include in API
6101	// requests with the JSON null value. By default, fields with empty
6102	// values are omitted from API requests. However, any field with an
6103	// empty value appearing in NullFields will be sent to the server as
6104	// null. It is an error if a field in this list has a non-empty value.
6105	// This may be used to include null fields in Patch requests.
6106	NullFields []string `json:"-"`
6107}
6108
6109func (s *OrderRefund) MarshalJSON() ([]byte, error) {
6110	type NoMethod OrderRefund
6111	raw := NoMethod(*s)
6112	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6113}
6114
6115// OrderReportDisbursement: Order disbursement. All methods require the
6116// payment analyst role.
6117type OrderReportDisbursement struct {
6118	// DisbursementAmount: The disbursement amount.
6119	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
6120
6121	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
6122	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
6123
6124	// DisbursementDate: The date the disbursement was initiated, in ISO
6125	// 8601 format.
6126	DisbursementDate string `json:"disbursementDate,omitempty"`
6127
6128	// DisbursementId: The ID of the disbursement.
6129	DisbursementId string `json:"disbursementId,omitempty"`
6130
6131	// MerchantId: The ID of the managing account.
6132	MerchantId uint64 `json:"merchantId,omitempty,string"`
6133
6134	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
6135	// to unconditionally include in API requests. By default, fields with
6136	// empty values are omitted from API requests. However, any non-pointer,
6137	// non-interface field appearing in ForceSendFields will be sent to the
6138	// server regardless of whether the field is empty or not. This may be
6139	// used to include empty fields in Patch requests.
6140	ForceSendFields []string `json:"-"`
6141
6142	// NullFields is a list of field names (e.g. "DisbursementAmount") to
6143	// include in API requests with the JSON null value. By default, fields
6144	// with empty values are omitted from API requests. However, any field
6145	// with an empty value appearing in NullFields will be sent to the
6146	// server as null. It is an error if a field in this list has a
6147	// non-empty value. This may be used to include null fields in Patch
6148	// requests.
6149	NullFields []string `json:"-"`
6150}
6151
6152func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
6153	type NoMethod OrderReportDisbursement
6154	raw := NoMethod(*s)
6155	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6156}
6157
6158type OrderReportTransaction struct {
6159	// DisbursementAmount: The disbursement amount.
6160	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
6161
6162	// DisbursementCreationDate: The date the disbursement was created, in
6163	// ISO 8601 format.
6164	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
6165
6166	// DisbursementDate: The date the disbursement was initiated, in ISO
6167	// 8601 format.
6168	DisbursementDate string `json:"disbursementDate,omitempty"`
6169
6170	// DisbursementId: The ID of the disbursement.
6171	DisbursementId string `json:"disbursementId,omitempty"`
6172
6173	// MerchantId: The ID of the managing account.
6174	MerchantId uint64 `json:"merchantId,omitempty,string"`
6175
6176	// MerchantOrderId: Merchant-provided ID of the order.
6177	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6178
6179	// OrderId: The ID of the order.
6180	OrderId string `json:"orderId,omitempty"`
6181
6182	// ProductAmount: Total amount for the items.
6183	ProductAmount *ProductAmount `json:"productAmount,omitempty"`
6184
6185	// TransactionDate: The date of the transaction, in ISO 8601 format.
6186	TransactionDate string `json:"transactionDate,omitempty"`
6187
6188	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
6189	// to unconditionally include in API requests. By default, fields with
6190	// empty values are omitted from API requests. However, any non-pointer,
6191	// non-interface field appearing in ForceSendFields will be sent to the
6192	// server regardless of whether the field is empty or not. This may be
6193	// used to include empty fields in Patch requests.
6194	ForceSendFields []string `json:"-"`
6195
6196	// NullFields is a list of field names (e.g. "DisbursementAmount") to
6197	// include in API requests with the JSON null value. By default, fields
6198	// with empty values are omitted from API requests. However, any field
6199	// with an empty value appearing in NullFields will be sent to the
6200	// server as null. It is an error if a field in this list has a
6201	// non-empty value. This may be used to include null fields in Patch
6202	// requests.
6203	NullFields []string `json:"-"`
6204}
6205
6206func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
6207	type NoMethod OrderReportTransaction
6208	raw := NoMethod(*s)
6209	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6210}
6211
6212type OrderReturn struct {
6213	// Actor: The actor that created the refund. Acceptable values are: -
6214	// "customer" - "googleBot" - "googleCustomerService" -
6215	// "googlePayments" - "googleSabre" - "merchant"
6216	Actor string `json:"actor,omitempty"`
6217
6218	// CreationDate: Date on which the item has been created, in ISO 8601
6219	// format.
6220	CreationDate string `json:"creationDate,omitempty"`
6221
6222	// Quantity: Quantity that is returned.
6223	Quantity int64 `json:"quantity,omitempty"`
6224
6225	// Reason: The reason for the return. Acceptable values are: -
6226	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
6227	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
6228	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
6229	// - "productNotAsDescribed" - "qualityNotAsExpected" -
6230	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
6231	// "wrongProductShipped"
6232	Reason string `json:"reason,omitempty"`
6233
6234	// ReasonText: The explanation of the reason.
6235	ReasonText string `json:"reasonText,omitempty"`
6236
6237	// ForceSendFields is a list of field names (e.g. "Actor") to
6238	// unconditionally include in API requests. By default, fields with
6239	// empty values are omitted from API requests. However, any non-pointer,
6240	// non-interface field appearing in ForceSendFields will be sent to the
6241	// server regardless of whether the field is empty or not. This may be
6242	// used to include empty fields in Patch requests.
6243	ForceSendFields []string `json:"-"`
6244
6245	// NullFields is a list of field names (e.g. "Actor") to include in API
6246	// requests with the JSON null value. By default, fields with empty
6247	// values are omitted from API requests. However, any field with an
6248	// empty value appearing in NullFields will be sent to the server as
6249	// null. It is an error if a field in this list has a non-empty value.
6250	// This may be used to include null fields in Patch requests.
6251	NullFields []string `json:"-"`
6252}
6253
6254func (s *OrderReturn) MarshalJSON() ([]byte, error) {
6255	type NoMethod OrderReturn
6256	raw := NoMethod(*s)
6257	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6258}
6259
6260type OrderShipment struct {
6261	// Carrier: The carrier handling the shipment. For supported carriers,
6262	// Google includes the carrier name and tracking URL in emails to
6263	// customers. For select supported carriers, Google also automatically
6264	// updates the shipment status based on the provided shipment ID.
6265	// *Note:* You can also use unsupported carriers, but emails to
6266	// customers will not include the carrier name or tracking URL, and
6267	// there will be no automatic order status updates. Supported carriers
6268	// for US are: - "ups" (United Parcel Service) *automatic status
6269	// updates* - "usps" (United States Postal Service) *automatic status
6270	// updates* - "fedex" (FedEx) *automatic status updates * - "dhl"
6271	// (DHL eCommerce) *automatic status updates* (US only) - "ontrac"
6272	// (OnTrac) *automatic status updates * - "dhl express" (DHL Express)
6273	// - "deliv" (Deliv) - "dynamex" (TForce) - "lasership"
6274	// (LaserShip) - "mpx" (Military Parcel Xpress) - "uds" (United
6275	// Delivery Service) - "efw" (Estes Forwarding Worldwide) - "jd
6276	// logistics" (JD Logistics) - "yunexpress" (YunExpress) - "china
6277	// post" (China Post) - "china ems" (China Post Express Mail Service)
6278	// - "singapore post" (Singapore Post) - "pos malaysia" (Pos
6279	// Malaysia) - "postnl" (PostNL) - "ptt" (PTT Turkish Post) -
6280	// "eub" (ePacket) - "chukou1" (Chukou1 Logistics) - "bestex"
6281	// (Best Express) - "canada post" (Canada Post) - "purolator"
6282	// (Purolator) - "canpar" (Canpar) - "india post" (India Post) -
6283	// "blue dart" (Blue Dart) - "delhivery" (Delhivery) - "dtdc"
6284	// (DTDC) - "tpc india" (TPC India) Supported carriers for FR are: -
6285	// "la poste" (La Poste) *automatic status updates * - "colissimo"
6286	// (Colissimo by La Poste) *automatic status updates* - "ups" (United
6287	// Parcel Service) *automatic status updates * - "chronopost"
6288	// (Chronopost by La Poste) - "gls" (General Logistics Systems France)
6289	// - "dpd" (DPD Group by GeoPost) - "bpost" (Belgian Post Group) -
6290	// "colis prive" (Colis Privé) - "boxtal" (Boxtal) - "geodis"
6291	// (GEODIS) - "tnt" (TNT) - "db schenker" (DB Schenker) - "aramex"
6292	// (Aramex)
6293	Carrier string `json:"carrier,omitempty"`
6294
6295	// CreationDate: Date on which the shipment has been created, in ISO
6296	// 8601 format.
6297	CreationDate string `json:"creationDate,omitempty"`
6298
6299	// DeliveryDate: Date on which the shipment has been delivered, in ISO
6300	// 8601 format. Present only if `status` is `delivered`
6301	DeliveryDate string `json:"deliveryDate,omitempty"`
6302
6303	// Id: The ID of the shipment.
6304	Id string `json:"id,omitempty"`
6305
6306	// LineItems: The line items that are shipped.
6307	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
6308
6309	// ScheduledDeliveryDetails: Delivery details of the shipment if
6310	// scheduling is needed.
6311	ScheduledDeliveryDetails *OrderShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
6312
6313	// ShipmentGroupId: The shipment group ID of the shipment. This is set
6314	// in shiplineitems request.
6315	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
6316
6317	// Status: The status of the shipment. Acceptable values are: -
6318	// "delivered" - "readyForPickup" - "shipped" - "undeliverable"
6319	Status string `json:"status,omitempty"`
6320
6321	// TrackingId: The tracking ID for the shipment.
6322	TrackingId string `json:"trackingId,omitempty"`
6323
6324	// ForceSendFields is a list of field names (e.g. "Carrier") to
6325	// unconditionally include in API requests. By default, fields with
6326	// empty values are omitted from API requests. However, any non-pointer,
6327	// non-interface field appearing in ForceSendFields will be sent to the
6328	// server regardless of whether the field is empty or not. This may be
6329	// used to include empty fields in Patch requests.
6330	ForceSendFields []string `json:"-"`
6331
6332	// NullFields is a list of field names (e.g. "Carrier") to include in
6333	// API requests with the JSON null value. By default, fields with empty
6334	// values are omitted from API requests. However, any field with an
6335	// empty value appearing in NullFields will be sent to the server as
6336	// null. It is an error if a field in this list has a non-empty value.
6337	// This may be used to include null fields in Patch requests.
6338	NullFields []string `json:"-"`
6339}
6340
6341func (s *OrderShipment) MarshalJSON() ([]byte, error) {
6342	type NoMethod OrderShipment
6343	raw := NoMethod(*s)
6344	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6345}
6346
6347type OrderShipmentLineItemShipment struct {
6348	// LineItemId: The ID of the line item that is shipped. This value is
6349	// assigned by Google when an order is created. Either lineItemId or
6350	// productId is required.
6351	LineItemId string `json:"lineItemId,omitempty"`
6352
6353	// ProductId: The ID of the product to ship. This is the REST ID used in
6354	// the products service. Either lineItemId or productId is required.
6355	ProductId string `json:"productId,omitempty"`
6356
6357	// Quantity: The quantity that is shipped.
6358	Quantity int64 `json:"quantity,omitempty"`
6359
6360	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6361	// unconditionally include in API requests. By default, fields with
6362	// empty values are omitted from API requests. However, any non-pointer,
6363	// non-interface field appearing in ForceSendFields will be sent to the
6364	// server regardless of whether the field is empty or not. This may be
6365	// used to include empty fields in Patch requests.
6366	ForceSendFields []string `json:"-"`
6367
6368	// NullFields is a list of field names (e.g. "LineItemId") to include in
6369	// API requests with the JSON null value. By default, fields with empty
6370	// values are omitted from API requests. However, any field with an
6371	// empty value appearing in NullFields will be sent to the server as
6372	// null. It is an error if a field in this list has a non-empty value.
6373	// This may be used to include null fields in Patch requests.
6374	NullFields []string `json:"-"`
6375}
6376
6377func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
6378	type NoMethod OrderShipmentLineItemShipment
6379	raw := NoMethod(*s)
6380	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6381}
6382
6383type OrderShipmentScheduledDeliveryDetails struct {
6384	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
6385	// delivery. The phone number is formatted as the international notation
6386	// in ITU-T Recommendation E.123 (e.g., "+41 44 668 1800").
6387	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
6388
6389	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
6390	// 8601 format.
6391	ScheduledDate string `json:"scheduledDate,omitempty"`
6392
6393	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
6394	// to unconditionally include in API requests. By default, fields with
6395	// empty values are omitted from API requests. However, any non-pointer,
6396	// non-interface field appearing in ForceSendFields will be sent to the
6397	// server regardless of whether the field is empty or not. This may be
6398	// used to include empty fields in Patch requests.
6399	ForceSendFields []string `json:"-"`
6400
6401	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
6402	// include in API requests with the JSON null value. By default, fields
6403	// with empty values are omitted from API requests. However, any field
6404	// with an empty value appearing in NullFields will be sent to the
6405	// server as null. It is an error if a field in this list has a
6406	// non-empty value. This may be used to include null fields in Patch
6407	// requests.
6408	NullFields []string `json:"-"`
6409}
6410
6411func (s *OrderShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
6412	type NoMethod OrderShipmentScheduledDeliveryDetails
6413	raw := NoMethod(*s)
6414	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6415}
6416
6417// OrderTrackingSignal: Represents a merchant trade from which signals
6418// are extracted, e.g. shipping.
6419type OrderTrackingSignal struct {
6420	// CustomerShippingFee: The shipping fee of the order; this value should
6421	// be set to zero in the case of free shipping.
6422	CustomerShippingFee *PriceAmount `json:"customerShippingFee,omitempty"`
6423
6424	// DeliveryPostalCode: Required. The delivery postal code, as a
6425	// continuous string without spaces or dashes, e.g. "95016".
6426	DeliveryPostalCode string `json:"deliveryPostalCode,omitempty"`
6427
6428	// DeliveryRegionCode: Required. The [CLDR territory code]
6429	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
6430	// for the shipping destination.
6431	DeliveryRegionCode string `json:"deliveryRegionCode,omitempty"`
6432
6433	// LineItems: Information about line items in the order.
6434	LineItems []*OrderTrackingSignalLineItemDetails `json:"lineItems,omitempty"`
6435
6436	// MerchantId: The Google merchant ID of this order tracking signal.
6437	// This value is optional. If left unset, the caller's merchant ID is
6438	// used. You must request access in order to provide data on behalf of
6439	// another merchant. For more information, see [Submitting Order
6440	// Tracking Signals](/shopping-content/guides/order-tracking-signals).
6441	MerchantId int64 `json:"merchantId,omitempty,string"`
6442
6443	// OrderCreatedTime: Required. The time when the order was created on
6444	// the merchant side. Include the year and timezone string, if
6445	// available.
6446	OrderCreatedTime *DateTime `json:"orderCreatedTime,omitempty"`
6447
6448	// OrderId: Required. The ID of the order on the merchant side.
6449	OrderId string `json:"orderId,omitempty"`
6450
6451	// OrderTrackingSignalId: Output only. The ID that uniquely identifies
6452	// this order tracking signal.
6453	OrderTrackingSignalId int64 `json:"orderTrackingSignalId,omitempty,string"`
6454
6455	// ShipmentLineItemMapping: The mapping of the line items to the
6456	// shipment information.
6457	ShipmentLineItemMapping []*OrderTrackingSignalShipmentLineItemMapping `json:"shipmentLineItemMapping,omitempty"`
6458
6459	// ShippingInfo: The shipping information for the order.
6460	ShippingInfo []*OrderTrackingSignalShippingInfo `json:"shippingInfo,omitempty"`
6461
6462	// ServerResponse contains the HTTP response code and headers from the
6463	// server.
6464	googleapi.ServerResponse `json:"-"`
6465
6466	// ForceSendFields is a list of field names (e.g. "CustomerShippingFee")
6467	// to unconditionally include in API requests. By default, fields with
6468	// empty values are omitted from API requests. However, any non-pointer,
6469	// non-interface field appearing in ForceSendFields will be sent to the
6470	// server regardless of whether the field is empty or not. This may be
6471	// used to include empty fields in Patch requests.
6472	ForceSendFields []string `json:"-"`
6473
6474	// NullFields is a list of field names (e.g. "CustomerShippingFee") to
6475	// include in API requests with the JSON null value. By default, fields
6476	// with empty values are omitted from API requests. However, any field
6477	// with an empty value appearing in NullFields will be sent to the
6478	// server as null. It is an error if a field in this list has a
6479	// non-empty value. This may be used to include null fields in Patch
6480	// requests.
6481	NullFields []string `json:"-"`
6482}
6483
6484func (s *OrderTrackingSignal) MarshalJSON() ([]byte, error) {
6485	type NoMethod OrderTrackingSignal
6486	raw := NoMethod(*s)
6487	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6488}
6489
6490// OrderTrackingSignalLineItemDetails: The line items of the order.
6491type OrderTrackingSignalLineItemDetails struct {
6492	// Gtin: The Global Trade Item Number.
6493	Gtin string `json:"gtin,omitempty"`
6494
6495	// LineItemId: Required. The ID for this line item.
6496	LineItemId string `json:"lineItemId,omitempty"`
6497
6498	// Mpn: The manufacturer part number.
6499	Mpn string `json:"mpn,omitempty"`
6500
6501	// ProductId: Required. The Content API REST ID of the product, in the
6502	// form channel:contentLanguage:targetCountry:offerId.
6503	ProductId string `json:"productId,omitempty"`
6504
6505	// Quantity: Required. The quantity of the line item in the order.
6506	Quantity int64 `json:"quantity,omitempty,string"`
6507
6508	// ForceSendFields is a list of field names (e.g. "Gtin") to
6509	// unconditionally include in API requests. By default, fields with
6510	// empty values are omitted from API requests. However, any non-pointer,
6511	// non-interface field appearing in ForceSendFields will be sent to the
6512	// server regardless of whether the field is empty or not. This may be
6513	// used to include empty fields in Patch requests.
6514	ForceSendFields []string `json:"-"`
6515
6516	// NullFields is a list of field names (e.g. "Gtin") to include in API
6517	// requests with the JSON null value. By default, fields with empty
6518	// values are omitted from API requests. However, any field with an
6519	// empty value appearing in NullFields will be sent to the server as
6520	// null. It is an error if a field in this list has a non-empty value.
6521	// This may be used to include null fields in Patch requests.
6522	NullFields []string `json:"-"`
6523}
6524
6525func (s *OrderTrackingSignalLineItemDetails) MarshalJSON() ([]byte, error) {
6526	type NoMethod OrderTrackingSignalLineItemDetails
6527	raw := NoMethod(*s)
6528	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6529}
6530
6531// OrderTrackingSignalShipmentLineItemMapping: Represents how many items
6532// are in the shipment for the given shipment_id and line_item_id.
6533type OrderTrackingSignalShipmentLineItemMapping struct {
6534	// LineItemId: Required. The line item ID.
6535	LineItemId string `json:"lineItemId,omitempty"`
6536
6537	// Quantity: Required. The line item quantity in the shipment.
6538	Quantity int64 `json:"quantity,omitempty,string"`
6539
6540	// ShipmentId: Required. The shipment ID.
6541	ShipmentId string `json:"shipmentId,omitempty"`
6542
6543	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6544	// unconditionally include in API requests. By default, fields with
6545	// empty values are omitted from API requests. However, any non-pointer,
6546	// non-interface field appearing in ForceSendFields will be sent to the
6547	// server regardless of whether the field is empty or not. This may be
6548	// used to include empty fields in Patch requests.
6549	ForceSendFields []string `json:"-"`
6550
6551	// NullFields is a list of field names (e.g. "LineItemId") to include in
6552	// API 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 *OrderTrackingSignalShipmentLineItemMapping) MarshalJSON() ([]byte, error) {
6561	type NoMethod OrderTrackingSignalShipmentLineItemMapping
6562	raw := NoMethod(*s)
6563	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6564}
6565
6566// OrderTrackingSignalShippingInfo: The shipping information for the
6567// order.
6568type OrderTrackingSignalShippingInfo struct {
6569	// ActualDeliveryTime: The time when the shipment was actually
6570	// delivered. Include the year and timezone string, if available. This
6571	// field is required, if one of the following fields is absent:
6572	// tracking_id or carrier_name.
6573	ActualDeliveryTime *DateTime `json:"actualDeliveryTime,omitempty"`
6574
6575	// CarrierName: The name of the shipping carrier for the delivery. This
6576	// field is required if one of the following fields is absent:
6577	// earliest_delivery_promise_time, latest_delivery_promise_time, and
6578	// actual_delivery_time.
6579	CarrierName string `json:"carrierName,omitempty"`
6580
6581	// CarrierServiceName: The service type for fulfillment, e.g., GROUND,
6582	// FIRST_CLASS, etc.
6583	CarrierServiceName string `json:"carrierServiceName,omitempty"`
6584
6585	// EarliestDeliveryPromiseTime: The earliest delivery promised time.
6586	// Include the year and timezone string, if available. This field is
6587	// required, if one of the following fields is absent: tracking_id or
6588	// carrier_name.
6589	EarliestDeliveryPromiseTime *DateTime `json:"earliestDeliveryPromiseTime,omitempty"`
6590
6591	// LatestDeliveryPromiseTime: The latest delivery promised time. Include
6592	// the year and timezone string, if available. This field is required,
6593	// if one of the following fields is absent: tracking_id or
6594	// carrier_name.
6595	LatestDeliveryPromiseTime *DateTime `json:"latestDeliveryPromiseTime,omitempty"`
6596
6597	// OriginPostalCode: The origin postal code, as a continuous string
6598	// without spaces or dashes, e.g. "95016".
6599	OriginPostalCode string `json:"originPostalCode,omitempty"`
6600
6601	// OriginRegionCode: The [CLDR territory code]
6602	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
6603	// for the shipping origin.
6604	OriginRegionCode string `json:"originRegionCode,omitempty"`
6605
6606	// ShipmentId: Required. The shipment ID.
6607	ShipmentId string `json:"shipmentId,omitempty"`
6608
6609	// ShippedTime: The time when the shipment was shipped. Include the year
6610	// and timezone string, if available.
6611	ShippedTime *DateTime `json:"shippedTime,omitempty"`
6612
6613	// ShippingStatus: The status of the shipment.
6614	//
6615	// Possible values:
6616	//   "SHIPPING_STATE_UNSPECIFIED" - The shipping status is not known to
6617	// merchant.
6618	//   "SHIPPED" - All items are shipped.
6619	//   "DELIVERED" - The shipment is already delivered.
6620	ShippingStatus string `json:"shippingStatus,omitempty"`
6621
6622	// TrackingId: The tracking ID of the shipment. This field is required
6623	// if one of the following fields is absent:
6624	// earliest_delivery_promise_time, latest_delivery_promise_time, and
6625	// actual_delivery_time.
6626	TrackingId string `json:"trackingId,omitempty"`
6627
6628	// ForceSendFields is a list of field names (e.g. "ActualDeliveryTime")
6629	// to unconditionally include in API requests. By default, fields with
6630	// empty values are omitted from API requests. However, any non-pointer,
6631	// non-interface field appearing in ForceSendFields will be sent to the
6632	// server regardless of whether the field is empty or not. This may be
6633	// used to include empty fields in Patch requests.
6634	ForceSendFields []string `json:"-"`
6635
6636	// NullFields is a list of field names (e.g. "ActualDeliveryTime") to
6637	// include in API requests with the JSON null value. By default, fields
6638	// with empty values are omitted from API requests. However, any field
6639	// with an empty value appearing in NullFields will be sent to the
6640	// server as null. It is an error if a field in this list has a
6641	// non-empty value. This may be used to include null fields in Patch
6642	// requests.
6643	NullFields []string `json:"-"`
6644}
6645
6646func (s *OrderTrackingSignalShippingInfo) MarshalJSON() ([]byte, error) {
6647	type NoMethod OrderTrackingSignalShippingInfo
6648	raw := NoMethod(*s)
6649	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6650}
6651
6652type OrderinvoicesCreateChargeInvoiceRequest struct {
6653	// InvoiceId: [required] The ID of the invoice.
6654	InvoiceId string `json:"invoiceId,omitempty"`
6655
6656	// InvoiceSummary: [required] Invoice summary.
6657	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
6658
6659	// LineItemInvoices: [required] Invoice details per line item.
6660	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
6661
6662	// OperationId: [required] The ID of the operation, unique across all
6663	// operations for a given order.
6664	OperationId string `json:"operationId,omitempty"`
6665
6666	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
6667	// by the merchant in the `shipLineItems` method and is used to group
6668	// multiple line items that have the same kind of shipping charges.
6669	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
6670
6671	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
6672	// unconditionally include in API requests. By default, fields with
6673	// empty values are omitted from API requests. However, any non-pointer,
6674	// non-interface field appearing in ForceSendFields will be sent to the
6675	// server regardless of whether the field is empty or not. This may be
6676	// used to include empty fields in Patch requests.
6677	ForceSendFields []string `json:"-"`
6678
6679	// NullFields is a list of field names (e.g. "InvoiceId") to include in
6680	// API requests with the JSON null value. By default, fields with empty
6681	// values are omitted from API requests. However, any field with an
6682	// empty value appearing in NullFields will be sent to the server as
6683	// null. It is an error if a field in this list has a non-empty value.
6684	// This may be used to include null fields in Patch requests.
6685	NullFields []string `json:"-"`
6686}
6687
6688func (s *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
6689	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
6690	raw := NoMethod(*s)
6691	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6692}
6693
6694type OrderinvoicesCreateChargeInvoiceResponse struct {
6695	// ExecutionStatus: The status of the execution. Acceptable values are:
6696	// - "duplicate" - "executed"
6697	ExecutionStatus string `json:"executionStatus,omitempty"`
6698
6699	// Kind: Identifies what kind of resource this is. Value: the fixed
6700	// string "content#orderinvoicesCreateChargeInvoiceResponse".
6701	Kind string `json:"kind,omitempty"`
6702
6703	// ServerResponse contains the HTTP response code and headers from the
6704	// server.
6705	googleapi.ServerResponse `json:"-"`
6706
6707	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6708	// unconditionally include in API requests. By default, fields with
6709	// empty values are omitted from API requests. However, any non-pointer,
6710	// non-interface field appearing in ForceSendFields will be sent to the
6711	// server regardless of whether the field is empty or not. This may be
6712	// used to include empty fields in Patch requests.
6713	ForceSendFields []string `json:"-"`
6714
6715	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6716	// include in API requests with the JSON null value. By default, fields
6717	// with empty values are omitted from API requests. However, any field
6718	// with an empty value appearing in NullFields will be sent to the
6719	// server as null. It is an error if a field in this list has a
6720	// non-empty value. This may be used to include null fields in Patch
6721	// requests.
6722	NullFields []string `json:"-"`
6723}
6724
6725func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
6726	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
6727	raw := NoMethod(*s)
6728	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6729}
6730
6731type OrderinvoicesCreateRefundInvoiceRequest struct {
6732	// InvoiceId: [required] The ID of the invoice.
6733	InvoiceId string `json:"invoiceId,omitempty"`
6734
6735	// OperationId: [required] The ID of the operation, unique across all
6736	// operations for a given order.
6737	OperationId string `json:"operationId,omitempty"`
6738
6739	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
6740	// of `refundOnlyOption` or `returnOption` must be provided.
6741	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
6742
6743	// ReturnOption: Option to create an invoice for a refund and mark all
6744	// items within the invoice as returned. Exactly one of
6745	// `refundOnlyOption` or `returnOption` must be provided.
6746	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
6747
6748	// ShipmentInvoices: Invoice details for different shipment groups.
6749	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
6750
6751	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
6752	// unconditionally include in API requests. By default, fields with
6753	// empty values are omitted from API requests. However, any non-pointer,
6754	// non-interface field appearing in ForceSendFields will be sent to the
6755	// server regardless of whether the field is empty or not. This may be
6756	// used to include empty fields in Patch requests.
6757	ForceSendFields []string `json:"-"`
6758
6759	// NullFields is a list of field names (e.g. "InvoiceId") to include in
6760	// API requests with the JSON null value. By default, fields with empty
6761	// values are omitted from API requests. However, any field with an
6762	// empty value appearing in NullFields will be sent to the server as
6763	// null. It is an error if a field in this list has a non-empty value.
6764	// This may be used to include null fields in Patch requests.
6765	NullFields []string `json:"-"`
6766}
6767
6768func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
6769	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
6770	raw := NoMethod(*s)
6771	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6772}
6773
6774type OrderinvoicesCreateRefundInvoiceResponse struct {
6775	// ExecutionStatus: The status of the execution. Acceptable values are:
6776	// - "duplicate" - "executed"
6777	ExecutionStatus string `json:"executionStatus,omitempty"`
6778
6779	// Kind: Identifies what kind of resource this is. Value: the fixed
6780	// string "content#orderinvoicesCreateRefundInvoiceResponse".
6781	Kind string `json:"kind,omitempty"`
6782
6783	// ServerResponse contains the HTTP response code and headers from the
6784	// server.
6785	googleapi.ServerResponse `json:"-"`
6786
6787	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6788	// unconditionally include in API requests. By default, fields with
6789	// empty values are omitted from API requests. However, any non-pointer,
6790	// non-interface field appearing in ForceSendFields will be sent to the
6791	// server regardless of whether the field is empty or not. This may be
6792	// used to include empty fields in Patch requests.
6793	ForceSendFields []string `json:"-"`
6794
6795	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6796	// include in API requests with the JSON null value. By default, fields
6797	// with empty values are omitted from API requests. However, any field
6798	// with an empty value appearing in NullFields will be sent to the
6799	// server as null. It is an error if a field in this list has a
6800	// non-empty value. This may be used to include null fields in Patch
6801	// requests.
6802	NullFields []string `json:"-"`
6803}
6804
6805func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
6806	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
6807	raw := NoMethod(*s)
6808	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6809}
6810
6811type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
6812	// Description: Optional description of the refund reason.
6813	Description string `json:"description,omitempty"`
6814
6815	// Reason: [required] Reason for the refund. Acceptable values are: -
6816	// "adjustment" - "autoPostInternal" -
6817	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
6818	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
6819	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
6820	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
6821	// - "customerSupportRequested" - "deliveredLateByCarrier" -
6822	// "deliveredTooLate" - "expiredItem" -
6823	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
6824	// "failToPushOrderMerchantFulfillmentError" -
6825	// "failToPushOrderToMerchant" -
6826	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
6827	// "invalidCoupon" - "lateShipmentCredit" -
6828	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
6829	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
6830	// "paymentDeclined" - "priceAdjustment" - "priceError" -
6831	// "productArrivedDamaged" - "productNotAsDescribed" -
6832	// "promoReallocation" - "qualityNotAsExpected" -
6833	// "returnRefundAbuse" - "shippingCostAdjustment" -
6834	// "shippingPriceError" - "taxAdjustment" - "taxError" -
6835	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
6836	// "wrongProductShipped"
6837	Reason string `json:"reason,omitempty"`
6838
6839	// ForceSendFields is a list of field names (e.g. "Description") to
6840	// unconditionally include in API requests. By default, fields with
6841	// empty values are omitted from API requests. However, any non-pointer,
6842	// non-interface field appearing in ForceSendFields will be sent to the
6843	// server regardless of whether the field is empty or not. This may be
6844	// used to include empty fields in Patch requests.
6845	ForceSendFields []string `json:"-"`
6846
6847	// NullFields is a list of field names (e.g. "Description") to include
6848	// in API requests with the JSON null value. By default, fields with
6849	// empty values are omitted from API requests. However, any field with
6850	// an empty value appearing in NullFields will be sent to the server as
6851	// null. It is an error if a field in this list has a non-empty value.
6852	// This may be used to include null fields in Patch requests.
6853	NullFields []string `json:"-"`
6854}
6855
6856func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
6857	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
6858	raw := NoMethod(*s)
6859	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6860}
6861
6862type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
6863	// Description: Optional description of the return reason.
6864	Description string `json:"description,omitempty"`
6865
6866	// Reason: [required] Reason for the return. Acceptable values are: -
6867	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
6868	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
6869	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
6870	// - "productNotAsDescribed" - "qualityNotAsExpected" -
6871	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
6872	// "wrongProductShipped"
6873	Reason string `json:"reason,omitempty"`
6874
6875	// ForceSendFields is a list of field names (e.g. "Description") to
6876	// unconditionally include in API requests. By default, fields with
6877	// empty values are omitted from API requests. However, any non-pointer,
6878	// non-interface field appearing in ForceSendFields will be sent to the
6879	// server regardless of whether the field is empty or not. This may be
6880	// used to include empty fields in Patch requests.
6881	ForceSendFields []string `json:"-"`
6882
6883	// NullFields is a list of field names (e.g. "Description") to include
6884	// in API requests with the JSON null value. By default, fields with
6885	// empty values are omitted from API requests. However, any field with
6886	// an empty value appearing in NullFields will be sent to the server as
6887	// null. It is an error if a field in this list has a non-empty value.
6888	// This may be used to include null fields in Patch requests.
6889	NullFields []string `json:"-"`
6890}
6891
6892func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
6893	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
6894	raw := NoMethod(*s)
6895	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6896}
6897
6898type OrderreportsListDisbursementsResponse struct {
6899	// Disbursements: The list of disbursements.
6900	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
6901
6902	// Kind: Identifies what kind of resource this is. Value: the fixed
6903	// string "content#orderreportsListDisbursementsResponse".
6904	Kind string `json:"kind,omitempty"`
6905
6906	// NextPageToken: The token for the retrieval of the next page of
6907	// disbursements.
6908	NextPageToken string `json:"nextPageToken,omitempty"`
6909
6910	// ServerResponse contains the HTTP response code and headers from the
6911	// server.
6912	googleapi.ServerResponse `json:"-"`
6913
6914	// ForceSendFields is a list of field names (e.g. "Disbursements") to
6915	// unconditionally include in API requests. By default, fields with
6916	// empty values are omitted from API requests. However, any non-pointer,
6917	// non-interface field appearing in ForceSendFields will be sent to the
6918	// server regardless of whether the field is empty or not. This may be
6919	// used to include empty fields in Patch requests.
6920	ForceSendFields []string `json:"-"`
6921
6922	// NullFields is a list of field names (e.g. "Disbursements") to include
6923	// in API requests with the JSON null value. By default, fields with
6924	// empty values are omitted from API requests. However, any field with
6925	// an 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 *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
6932	type NoMethod OrderreportsListDisbursementsResponse
6933	raw := NoMethod(*s)
6934	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6935}
6936
6937type OrderreportsListTransactionsResponse struct {
6938	// Kind: Identifies what kind of resource this is. Value: the fixed
6939	// string "content#orderreportsListTransactionsResponse".
6940	Kind string `json:"kind,omitempty"`
6941
6942	// NextPageToken: The token for the retrieval of the next page of
6943	// transactions.
6944	NextPageToken string `json:"nextPageToken,omitempty"`
6945
6946	// Transactions: The list of transactions.
6947	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
6948
6949	// ServerResponse contains the HTTP response code and headers from the
6950	// server.
6951	googleapi.ServerResponse `json:"-"`
6952
6953	// ForceSendFields is a list of field names (e.g. "Kind") to
6954	// unconditionally include in API requests. By default, fields with
6955	// empty values are omitted from API requests. However, any non-pointer,
6956	// non-interface field appearing in ForceSendFields will be sent to the
6957	// server regardless of whether the field is empty or not. This may be
6958	// used to include empty fields in Patch requests.
6959	ForceSendFields []string `json:"-"`
6960
6961	// NullFields is a list of field names (e.g. "Kind") to include in API
6962	// requests with the JSON null value. By default, fields with empty
6963	// values are omitted from API requests. However, any field with an
6964	// empty value appearing in NullFields will be sent to the server as
6965	// null. It is an error if a field in this list has a non-empty value.
6966	// This may be used to include null fields in Patch requests.
6967	NullFields []string `json:"-"`
6968}
6969
6970func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
6971	type NoMethod OrderreportsListTransactionsResponse
6972	raw := NoMethod(*s)
6973	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6974}
6975
6976type OrderreturnsAcknowledgeRequest struct {
6977	// OperationId: [required] The ID of the operation, unique across all
6978	// operations for a given order return.
6979	OperationId string `json:"operationId,omitempty"`
6980
6981	// ForceSendFields is a list of field names (e.g. "OperationId") to
6982	// unconditionally include in API requests. By default, fields with
6983	// empty values are omitted from API requests. However, any non-pointer,
6984	// non-interface field appearing in ForceSendFields will be sent to the
6985	// server regardless of whether the field is empty or not. This may be
6986	// used to include empty fields in Patch requests.
6987	ForceSendFields []string `json:"-"`
6988
6989	// NullFields is a list of field names (e.g. "OperationId") to include
6990	// in API requests with the JSON null value. By default, fields with
6991	// empty values are omitted from API requests. However, any field with
6992	// an empty value appearing in NullFields will be sent to the server as
6993	// null. It is an error if a field in this list has a non-empty value.
6994	// This may be used to include null fields in Patch requests.
6995	NullFields []string `json:"-"`
6996}
6997
6998func (s *OrderreturnsAcknowledgeRequest) MarshalJSON() ([]byte, error) {
6999	type NoMethod OrderreturnsAcknowledgeRequest
7000	raw := NoMethod(*s)
7001	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7002}
7003
7004type OrderreturnsAcknowledgeResponse struct {
7005	// ExecutionStatus: The status of the execution. Acceptable values are:
7006	// - "duplicate" - "executed"
7007	ExecutionStatus string `json:"executionStatus,omitempty"`
7008
7009	// Kind: Identifies what kind of resource this is. Value: the fixed
7010	// string "content#orderreturnsAcknowledgeResponse".
7011	Kind string `json:"kind,omitempty"`
7012
7013	// ServerResponse contains the HTTP response code and headers from the
7014	// server.
7015	googleapi.ServerResponse `json:"-"`
7016
7017	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7018	// unconditionally include in API requests. By default, fields with
7019	// empty values are omitted from API requests. However, any non-pointer,
7020	// non-interface field appearing in ForceSendFields will be sent to the
7021	// server regardless of whether the field is empty or not. This may be
7022	// used to include empty fields in Patch requests.
7023	ForceSendFields []string `json:"-"`
7024
7025	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7026	// include in API requests with the JSON null value. By default, fields
7027	// with empty values are omitted from API requests. However, any field
7028	// with an empty value appearing in NullFields will be sent to the
7029	// server as null. It is an error if a field in this list has a
7030	// non-empty value. This may be used to include null fields in Patch
7031	// requests.
7032	NullFields []string `json:"-"`
7033}
7034
7035func (s *OrderreturnsAcknowledgeResponse) MarshalJSON() ([]byte, error) {
7036	type NoMethod OrderreturnsAcknowledgeResponse
7037	raw := NoMethod(*s)
7038	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7039}
7040
7041type OrderreturnsCreateOrderReturnRequest struct {
7042	// LineItems: The list of line items to return.
7043	LineItems []*OrderreturnsLineItem `json:"lineItems,omitempty"`
7044
7045	// OperationId: The ID of the operation. Unique across all operations
7046	// for a given order.
7047	OperationId string `json:"operationId,omitempty"`
7048
7049	// OrderId: The ID of the order.
7050	OrderId string `json:"orderId,omitempty"`
7051
7052	// ReturnMethodType: The way of the package being returned.
7053	ReturnMethodType string `json:"returnMethodType,omitempty"`
7054
7055	// ForceSendFields is a list of field names (e.g. "LineItems") to
7056	// unconditionally include in API requests. By default, fields with
7057	// empty values are omitted from API requests. However, any non-pointer,
7058	// non-interface field appearing in ForceSendFields will be sent to the
7059	// server regardless of whether the field is empty or not. This may be
7060	// used to include empty fields in Patch requests.
7061	ForceSendFields []string `json:"-"`
7062
7063	// NullFields is a list of field names (e.g. "LineItems") to include in
7064	// API requests with the JSON null value. By default, fields with empty
7065	// values are omitted from API requests. However, any field with an
7066	// empty value appearing in NullFields will be sent to the server as
7067	// null. It is an error if a field in this list has a non-empty value.
7068	// This may be used to include null fields in Patch requests.
7069	NullFields []string `json:"-"`
7070}
7071
7072func (s *OrderreturnsCreateOrderReturnRequest) MarshalJSON() ([]byte, error) {
7073	type NoMethod OrderreturnsCreateOrderReturnRequest
7074	raw := NoMethod(*s)
7075	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7076}
7077
7078type OrderreturnsCreateOrderReturnResponse struct {
7079	// ExecutionStatus: The status of the execution. Acceptable values are:
7080	// - "duplicate" - "executed"
7081	ExecutionStatus string `json:"executionStatus,omitempty"`
7082
7083	// Kind: Identifies what kind of resource this is. Value: the fixed
7084	// string "content#orderreturnsCreateOrderReturnResponse".
7085	Kind string `json:"kind,omitempty"`
7086
7087	// OrderReturn: Created order return.
7088	OrderReturn *MerchantOrderReturn `json:"orderReturn,omitempty"`
7089
7090	// ServerResponse contains the HTTP response code and headers from the
7091	// server.
7092	googleapi.ServerResponse `json:"-"`
7093
7094	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7095	// unconditionally include in API requests. By default, fields with
7096	// empty values are omitted from API requests. However, any non-pointer,
7097	// non-interface field appearing in ForceSendFields will be sent to the
7098	// server regardless of whether the field is empty or not. This may be
7099	// used to include empty fields in Patch requests.
7100	ForceSendFields []string `json:"-"`
7101
7102	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7103	// include in API requests with the JSON null value. By default, fields
7104	// with empty values are omitted from API requests. However, any field
7105	// with an empty value appearing in NullFields will be sent to the
7106	// server as null. It is an error if a field in this list has a
7107	// non-empty value. This may be used to include null fields in Patch
7108	// requests.
7109	NullFields []string `json:"-"`
7110}
7111
7112func (s *OrderreturnsCreateOrderReturnResponse) MarshalJSON() ([]byte, error) {
7113	type NoMethod OrderreturnsCreateOrderReturnResponse
7114	raw := NoMethod(*s)
7115	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7116}
7117
7118type OrderreturnsLineItem struct {
7119	// LineItemId: The ID of the line item. This value is assigned by Google
7120	// when an order is created.
7121	LineItemId string `json:"lineItemId,omitempty"`
7122
7123	// Quantity: The quantity of this line item.
7124	Quantity int64 `json:"quantity,omitempty"`
7125
7126	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7127	// unconditionally include in API requests. By default, fields with
7128	// empty values are omitted from API requests. However, any non-pointer,
7129	// non-interface field appearing in ForceSendFields will be sent to the
7130	// server regardless of whether the field is empty or not. This may be
7131	// used to include empty fields in Patch requests.
7132	ForceSendFields []string `json:"-"`
7133
7134	// NullFields is a list of field names (e.g. "LineItemId") to include in
7135	// API requests with the JSON null value. By default, fields with empty
7136	// values are omitted from API requests. However, any field with an
7137	// empty value appearing in NullFields will be sent to the server as
7138	// null. It is an error if a field in this list has a non-empty value.
7139	// This may be used to include null fields in Patch requests.
7140	NullFields []string `json:"-"`
7141}
7142
7143func (s *OrderreturnsLineItem) MarshalJSON() ([]byte, error) {
7144	type NoMethod OrderreturnsLineItem
7145	raw := NoMethod(*s)
7146	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7147}
7148
7149type OrderreturnsListResponse struct {
7150	// Kind: Identifies what kind of resource this is. Value: the fixed
7151	// string "content#orderreturnsListResponse".
7152	Kind string `json:"kind,omitempty"`
7153
7154	// NextPageToken: The token for the retrieval of the next page of
7155	// returns.
7156	NextPageToken string `json:"nextPageToken,omitempty"`
7157
7158	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
7159
7160	// ServerResponse contains the HTTP response code and headers from the
7161	// server.
7162	googleapi.ServerResponse `json:"-"`
7163
7164	// ForceSendFields is a list of field names (e.g. "Kind") to
7165	// unconditionally include in API requests. By default, fields with
7166	// empty values are omitted from API requests. However, any non-pointer,
7167	// non-interface field appearing in ForceSendFields will be sent to the
7168	// server regardless of whether the field is empty or not. This may be
7169	// used to include empty fields in Patch requests.
7170	ForceSendFields []string `json:"-"`
7171
7172	// NullFields is a list of field names (e.g. "Kind") to include in API
7173	// requests with the JSON null value. By default, fields with empty
7174	// values are omitted from API requests. However, any field with an
7175	// empty value appearing in NullFields will be sent to the server as
7176	// null. It is an error if a field in this list has a non-empty value.
7177	// This may be used to include null fields in Patch requests.
7178	NullFields []string `json:"-"`
7179}
7180
7181func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
7182	type NoMethod OrderreturnsListResponse
7183	raw := NoMethod(*s)
7184	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7185}
7186
7187type OrderreturnsPartialRefund struct {
7188	// PriceAmount: The pre-tax or post-tax amount to be refunded, depending
7189	// on the location of the order.
7190	PriceAmount *Price `json:"priceAmount,omitempty"`
7191
7192	// TaxAmount: Tax amount to be refunded. Note: This has different
7193	// meaning depending on the location of the order.
7194	TaxAmount *Price `json:"taxAmount,omitempty"`
7195
7196	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
7197	// unconditionally include in API requests. By default, fields with
7198	// empty values are omitted from API requests. However, any non-pointer,
7199	// non-interface field appearing in ForceSendFields will be sent to the
7200	// server regardless of whether the field is empty or not. This may be
7201	// used to include empty fields in Patch requests.
7202	ForceSendFields []string `json:"-"`
7203
7204	// NullFields is a list of field names (e.g. "PriceAmount") to include
7205	// in API requests with the JSON null value. By default, fields with
7206	// empty values are omitted from API requests. However, any field with
7207	// an empty value appearing in NullFields will be sent to the server as
7208	// null. It is an error if a field in this list has a non-empty value.
7209	// This may be used to include null fields in Patch requests.
7210	NullFields []string `json:"-"`
7211}
7212
7213func (s *OrderreturnsPartialRefund) MarshalJSON() ([]byte, error) {
7214	type NoMethod OrderreturnsPartialRefund
7215	raw := NoMethod(*s)
7216	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7217}
7218
7219type OrderreturnsProcessRequest struct {
7220	// FullChargeReturnShippingCost: Option to charge the customer return
7221	// shipping cost.
7222	FullChargeReturnShippingCost bool `json:"fullChargeReturnShippingCost,omitempty"`
7223
7224	// OperationId: [required] The ID of the operation, unique across all
7225	// operations for a given order return.
7226	OperationId string `json:"operationId,omitempty"`
7227
7228	// RefundShippingFee: Refunds for original shipping fee.
7229	RefundShippingFee *OrderreturnsRefundOperation `json:"refundShippingFee,omitempty"`
7230
7231	// ReturnItems: The list of items to return.
7232	ReturnItems []*OrderreturnsReturnItem `json:"returnItems,omitempty"`
7233
7234	// ForceSendFields is a list of field names (e.g.
7235	// "FullChargeReturnShippingCost") to unconditionally include in API
7236	// requests. By default, fields with empty values are omitted from API
7237	// requests. However, any non-pointer, non-interface field appearing in
7238	// ForceSendFields will be sent to the server regardless of whether the
7239	// field is empty or not. This may be used to include empty fields in
7240	// Patch requests.
7241	ForceSendFields []string `json:"-"`
7242
7243	// NullFields is a list of field names (e.g.
7244	// "FullChargeReturnShippingCost") to include in API requests with the
7245	// JSON null value. By default, fields with empty values are omitted
7246	// from API requests. However, any field with an empty value appearing
7247	// in NullFields will be sent to the server as null. It is an error if a
7248	// field in this list has a non-empty value. This may be used to include
7249	// null fields in Patch requests.
7250	NullFields []string `json:"-"`
7251}
7252
7253func (s *OrderreturnsProcessRequest) MarshalJSON() ([]byte, error) {
7254	type NoMethod OrderreturnsProcessRequest
7255	raw := NoMethod(*s)
7256	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7257}
7258
7259type OrderreturnsProcessResponse struct {
7260	// ExecutionStatus: The status of the execution. Acceptable values are:
7261	// - "duplicate" - "executed"
7262	ExecutionStatus string `json:"executionStatus,omitempty"`
7263
7264	// Kind: Identifies what kind of resource this is. Value: the fixed
7265	// string "content#orderreturnsProcessResponse".
7266	Kind string `json:"kind,omitempty"`
7267
7268	// ServerResponse contains the HTTP response code and headers from the
7269	// server.
7270	googleapi.ServerResponse `json:"-"`
7271
7272	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7273	// unconditionally include in API requests. By default, fields with
7274	// empty values are omitted from API requests. However, any non-pointer,
7275	// non-interface field appearing in ForceSendFields will be sent to the
7276	// server regardless of whether the field is empty or not. This may be
7277	// used to include empty fields in Patch requests.
7278	ForceSendFields []string `json:"-"`
7279
7280	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7281	// include in API requests with the JSON null value. By default, fields
7282	// with empty values are omitted from API requests. However, any field
7283	// with an empty value appearing in NullFields will be sent to the
7284	// server as null. It is an error if a field in this list has a
7285	// non-empty value. This may be used to include null fields in Patch
7286	// requests.
7287	NullFields []string `json:"-"`
7288}
7289
7290func (s *OrderreturnsProcessResponse) MarshalJSON() ([]byte, error) {
7291	type NoMethod OrderreturnsProcessResponse
7292	raw := NoMethod(*s)
7293	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7294}
7295
7296type OrderreturnsRefundOperation struct {
7297	// FullRefund: If true, the item will be fully refunded. Allowed only
7298	// when payment_type is FOP. Merchant can choose this refund option to
7299	// indicate the full remaining amount of corresponding object to be
7300	// refunded to the customer via FOP.
7301	FullRefund bool `json:"fullRefund,omitempty"`
7302
7303	// PartialRefund: If this is set, the item will be partially refunded.
7304	// Merchant can choose this refund option to specify the customized
7305	// amount that to be refunded to the customer.
7306	PartialRefund *OrderreturnsPartialRefund `json:"partialRefund,omitempty"`
7307
7308	// PaymentType: The payment way of issuing refund. Default value is
7309	// ORIGINAL_FOP if not set.
7310	PaymentType string `json:"paymentType,omitempty"`
7311
7312	// ReasonText: The explanation of the reason.
7313	ReasonText string `json:"reasonText,omitempty"`
7314
7315	// ReturnRefundReason: Code of the refund reason.
7316	ReturnRefundReason string `json:"returnRefundReason,omitempty"`
7317
7318	// ForceSendFields is a list of field names (e.g. "FullRefund") to
7319	// unconditionally include in API requests. By default, fields with
7320	// empty values are omitted from API requests. However, any non-pointer,
7321	// non-interface field appearing in ForceSendFields will be sent to the
7322	// server regardless of whether the field is empty or not. This may be
7323	// used to include empty fields in Patch requests.
7324	ForceSendFields []string `json:"-"`
7325
7326	// NullFields is a list of field names (e.g. "FullRefund") to include in
7327	// API requests with the JSON null value. By default, fields with empty
7328	// values are omitted from API requests. However, any field with an
7329	// empty value appearing in NullFields will be sent to the server as
7330	// null. It is an error if a field in this list has a non-empty value.
7331	// This may be used to include null fields in Patch requests.
7332	NullFields []string `json:"-"`
7333}
7334
7335func (s *OrderreturnsRefundOperation) MarshalJSON() ([]byte, error) {
7336	type NoMethod OrderreturnsRefundOperation
7337	raw := NoMethod(*s)
7338	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7339}
7340
7341type OrderreturnsRejectOperation struct {
7342	// Reason: The reason for the return.
7343	Reason string `json:"reason,omitempty"`
7344
7345	// ReasonText: The explanation of the reason.
7346	ReasonText string `json:"reasonText,omitempty"`
7347
7348	// ForceSendFields is a list of field names (e.g. "Reason") to
7349	// unconditionally include in API requests. By default, fields with
7350	// empty values are omitted from API requests. However, any non-pointer,
7351	// non-interface field appearing in ForceSendFields will be sent to the
7352	// server regardless of whether the field is empty or not. This may be
7353	// used to include empty fields in Patch requests.
7354	ForceSendFields []string `json:"-"`
7355
7356	// NullFields is a list of field names (e.g. "Reason") to include in API
7357	// requests with the JSON null value. By default, fields with empty
7358	// values are omitted from API requests. However, any field with an
7359	// empty value appearing in NullFields will be sent to the server as
7360	// null. It is an error if a field in this list has a non-empty value.
7361	// This may be used to include null fields in Patch requests.
7362	NullFields []string `json:"-"`
7363}
7364
7365func (s *OrderreturnsRejectOperation) MarshalJSON() ([]byte, error) {
7366	type NoMethod OrderreturnsRejectOperation
7367	raw := NoMethod(*s)
7368	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7369}
7370
7371type OrderreturnsReturnItem struct {
7372	// Refund: Refunds the item.
7373	Refund *OrderreturnsRefundOperation `json:"refund,omitempty"`
7374
7375	// Reject: Rejects the item.
7376	Reject *OrderreturnsRejectOperation `json:"reject,omitempty"`
7377
7378	// ReturnItemId: Unit level ID for the return item. Different units of
7379	// the same product will have different IDs.
7380	ReturnItemId string `json:"returnItemId,omitempty"`
7381
7382	// ForceSendFields is a list of field names (e.g. "Refund") to
7383	// unconditionally include in API requests. By default, fields with
7384	// empty values are omitted from API requests. However, any non-pointer,
7385	// non-interface field appearing in ForceSendFields will be sent to the
7386	// server regardless of whether the field is empty or not. This may be
7387	// used to include empty fields in Patch requests.
7388	ForceSendFields []string `json:"-"`
7389
7390	// NullFields is a list of field names (e.g. "Refund") to include in API
7391	// requests with the JSON null value. By default, fields with empty
7392	// values are omitted from API requests. However, any field with an
7393	// empty value appearing in NullFields will be sent to the server as
7394	// null. It is an error if a field in this list has a non-empty value.
7395	// This may be used to include null fields in Patch requests.
7396	NullFields []string `json:"-"`
7397}
7398
7399func (s *OrderreturnsReturnItem) MarshalJSON() ([]byte, error) {
7400	type NoMethod OrderreturnsReturnItem
7401	raw := NoMethod(*s)
7402	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7403}
7404
7405type OrdersAcknowledgeRequest struct {
7406	// OperationId: The ID of the operation. Unique across all operations
7407	// for a given order.
7408	OperationId string `json:"operationId,omitempty"`
7409
7410	// ForceSendFields is a list of field names (e.g. "OperationId") to
7411	// unconditionally include in API requests. By default, fields with
7412	// empty values are omitted from API requests. However, any non-pointer,
7413	// non-interface field appearing in ForceSendFields will be sent to the
7414	// server regardless of whether the field is empty or not. This may be
7415	// used to include empty fields in Patch requests.
7416	ForceSendFields []string `json:"-"`
7417
7418	// NullFields is a list of field names (e.g. "OperationId") to include
7419	// in API requests with the JSON null value. By default, fields with
7420	// empty values are omitted from API requests. However, any field with
7421	// an empty value appearing in NullFields will be sent to the server as
7422	// null. It is an error if a field in this list has a non-empty value.
7423	// This may be used to include null fields in Patch requests.
7424	NullFields []string `json:"-"`
7425}
7426
7427func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
7428	type NoMethod OrdersAcknowledgeRequest
7429	raw := NoMethod(*s)
7430	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7431}
7432
7433type OrdersAcknowledgeResponse struct {
7434	// ExecutionStatus: The status of the execution. Acceptable values are:
7435	// - "duplicate" - "executed"
7436	ExecutionStatus string `json:"executionStatus,omitempty"`
7437
7438	// Kind: Identifies what kind of resource this is. Value: the fixed
7439	// string "content#ordersAcknowledgeResponse".
7440	Kind string `json:"kind,omitempty"`
7441
7442	// ServerResponse contains the HTTP response code and headers from the
7443	// server.
7444	googleapi.ServerResponse `json:"-"`
7445
7446	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7447	// unconditionally include in API requests. By default, fields with
7448	// empty values are omitted from API requests. However, any non-pointer,
7449	// non-interface field appearing in ForceSendFields will be sent to the
7450	// server regardless of whether the field is empty or not. This may be
7451	// used to include empty fields in Patch requests.
7452	ForceSendFields []string `json:"-"`
7453
7454	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7455	// include in API requests with the JSON null value. By default, fields
7456	// with empty values are omitted from API requests. However, any field
7457	// with an empty value appearing in NullFields will be sent to the
7458	// server as null. It is an error if a field in this list has a
7459	// non-empty value. This may be used to include null fields in Patch
7460	// requests.
7461	NullFields []string `json:"-"`
7462}
7463
7464func (s *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
7465	type NoMethod OrdersAcknowledgeResponse
7466	raw := NoMethod(*s)
7467	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7468}
7469
7470type OrdersAdvanceTestOrderResponse struct {
7471	// Kind: Identifies what kind of resource this is. Value: the fixed
7472	// string "content#ordersAdvanceTestOrderResponse".
7473	Kind string `json:"kind,omitempty"`
7474
7475	// ServerResponse contains the HTTP response code and headers from the
7476	// server.
7477	googleapi.ServerResponse `json:"-"`
7478
7479	// ForceSendFields is a list of field names (e.g. "Kind") to
7480	// unconditionally include in API requests. By default, fields with
7481	// empty values are omitted from API requests. However, any non-pointer,
7482	// non-interface field appearing in ForceSendFields will be sent to the
7483	// server regardless of whether the field is empty or not. This may be
7484	// used to include empty fields in Patch requests.
7485	ForceSendFields []string `json:"-"`
7486
7487	// NullFields is a list of field names (e.g. "Kind") to include in API
7488	// requests with the JSON null value. By default, fields with empty
7489	// values are omitted from API requests. However, any field with an
7490	// empty value appearing in NullFields will be sent to the server as
7491	// null. It is an error if a field in this list has a non-empty value.
7492	// This may be used to include null fields in Patch requests.
7493	NullFields []string `json:"-"`
7494}
7495
7496func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
7497	type NoMethod OrdersAdvanceTestOrderResponse
7498	raw := NoMethod(*s)
7499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7500}
7501
7502type OrdersCancelLineItemRequest struct {
7503	// LineItemId: The ID of the line item to cancel. Either lineItemId or
7504	// productId is required.
7505	LineItemId string `json:"lineItemId,omitempty"`
7506
7507	// OperationId: The ID of the operation. Unique across all operations
7508	// for a given order.
7509	OperationId string `json:"operationId,omitempty"`
7510
7511	// ProductId: The ID of the product to cancel. This is the REST ID used
7512	// in the products service. Either lineItemId or productId is required.
7513	ProductId string `json:"productId,omitempty"`
7514
7515	// Quantity: The quantity to cancel.
7516	Quantity int64 `json:"quantity,omitempty"`
7517
7518	// Reason: The reason for the cancellation. Acceptable values are: -
7519	// "customerInitiatedCancel" - "invalidCoupon" -
7520	// "malformedShippingAddress" - "noInventory" - "other" -
7521	// "priceError" - "shippingPriceError" - "taxError" -
7522	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
7523	Reason string `json:"reason,omitempty"`
7524
7525	// ReasonText: The explanation of the reason.
7526	ReasonText string `json:"reasonText,omitempty"`
7527
7528	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7529	// unconditionally include in API requests. By default, fields with
7530	// empty values are omitted from API requests. However, any non-pointer,
7531	// non-interface field appearing in ForceSendFields will be sent to the
7532	// server regardless of whether the field is empty or not. This may be
7533	// used to include empty fields in Patch requests.
7534	ForceSendFields []string `json:"-"`
7535
7536	// NullFields is a list of field names (e.g. "LineItemId") to include in
7537	// API requests with the JSON null value. By default, fields with empty
7538	// values are omitted from API requests. However, any field with an
7539	// empty value appearing in NullFields will be sent to the server as
7540	// null. It is an error if a field in this list has a non-empty value.
7541	// This may be used to include null fields in Patch requests.
7542	NullFields []string `json:"-"`
7543}
7544
7545func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
7546	type NoMethod OrdersCancelLineItemRequest
7547	raw := NoMethod(*s)
7548	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7549}
7550
7551type OrdersCancelLineItemResponse struct {
7552	// ExecutionStatus: The status of the execution. Acceptable values are:
7553	// - "duplicate" - "executed"
7554	ExecutionStatus string `json:"executionStatus,omitempty"`
7555
7556	// Kind: Identifies what kind of resource this is. Value: the fixed
7557	// string "content#ordersCancelLineItemResponse".
7558	Kind string `json:"kind,omitempty"`
7559
7560	// ServerResponse contains the HTTP response code and headers from the
7561	// server.
7562	googleapi.ServerResponse `json:"-"`
7563
7564	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7565	// unconditionally include in API requests. By default, fields with
7566	// empty values are omitted from API requests. However, any non-pointer,
7567	// non-interface field appearing in ForceSendFields will be sent to the
7568	// server regardless of whether the field is empty or not. This may be
7569	// used to include empty fields in Patch requests.
7570	ForceSendFields []string `json:"-"`
7571
7572	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7573	// include in API requests with the JSON null value. By default, fields
7574	// with empty values are omitted from API requests. However, any field
7575	// with an empty value appearing in NullFields will be sent to the
7576	// server as null. It is an error if a field in this list has a
7577	// non-empty value. This may be used to include null fields in Patch
7578	// requests.
7579	NullFields []string `json:"-"`
7580}
7581
7582func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
7583	type NoMethod OrdersCancelLineItemResponse
7584	raw := NoMethod(*s)
7585	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7586}
7587
7588type OrdersCancelRequest struct {
7589	// OperationId: The ID of the operation. Unique across all operations
7590	// for a given order.
7591	OperationId string `json:"operationId,omitempty"`
7592
7593	// Reason: The reason for the cancellation. Acceptable values are: -
7594	// "customerInitiatedCancel" - "invalidCoupon" -
7595	// "malformedShippingAddress" - "noInventory" - "other" -
7596	// "priceError" - "shippingPriceError" - "taxError" -
7597	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
7598	Reason string `json:"reason,omitempty"`
7599
7600	// ReasonText: The explanation of the reason.
7601	ReasonText string `json:"reasonText,omitempty"`
7602
7603	// ForceSendFields is a list of field names (e.g. "OperationId") to
7604	// unconditionally include in API requests. By default, fields with
7605	// empty values are omitted from API requests. However, any non-pointer,
7606	// non-interface field appearing in ForceSendFields will be sent to the
7607	// server regardless of whether the field is empty or not. This may be
7608	// used to include empty fields in Patch requests.
7609	ForceSendFields []string `json:"-"`
7610
7611	// NullFields is a list of field names (e.g. "OperationId") to include
7612	// in API requests with the JSON null value. By default, fields with
7613	// empty values are omitted from API requests. However, any field with
7614	// an empty value appearing in NullFields will be sent to the server as
7615	// null. It is an error if a field in this list has a non-empty value.
7616	// This may be used to include null fields in Patch requests.
7617	NullFields []string `json:"-"`
7618}
7619
7620func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
7621	type NoMethod OrdersCancelRequest
7622	raw := NoMethod(*s)
7623	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7624}
7625
7626type OrdersCancelResponse struct {
7627	// ExecutionStatus: The status of the execution. Acceptable values are:
7628	// - "duplicate" - "executed"
7629	ExecutionStatus string `json:"executionStatus,omitempty"`
7630
7631	// Kind: Identifies what kind of resource this is. Value: the fixed
7632	// string "content#ordersCancelResponse".
7633	Kind string `json:"kind,omitempty"`
7634
7635	// ServerResponse contains the HTTP response code and headers from the
7636	// server.
7637	googleapi.ServerResponse `json:"-"`
7638
7639	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7640	// unconditionally include in API requests. By default, fields with
7641	// empty values are omitted from API requests. However, any non-pointer,
7642	// non-interface field appearing in ForceSendFields will be sent to the
7643	// server regardless of whether the field is empty or not. This may be
7644	// used to include empty fields in Patch requests.
7645	ForceSendFields []string `json:"-"`
7646
7647	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7648	// include in API requests with the JSON null value. By default, fields
7649	// with empty values are omitted from API requests. However, any field
7650	// with an empty value appearing in NullFields will be sent to the
7651	// server as null. It is an error if a field in this list has a
7652	// non-empty value. This may be used to include null fields in Patch
7653	// requests.
7654	NullFields []string `json:"-"`
7655}
7656
7657func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
7658	type NoMethod OrdersCancelResponse
7659	raw := NoMethod(*s)
7660	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7661}
7662
7663type OrdersCancelTestOrderByCustomerRequest struct {
7664	// Reason: The reason for the cancellation. Acceptable values are: -
7665	// "changedMind" - "orderedWrongItem" - "other"
7666	Reason string `json:"reason,omitempty"`
7667
7668	// ForceSendFields is a list of field names (e.g. "Reason") to
7669	// unconditionally include in API requests. By default, fields with
7670	// empty values are omitted from API requests. However, any non-pointer,
7671	// non-interface field appearing in ForceSendFields will be sent to the
7672	// server regardless of whether the field is empty or not. This may be
7673	// used to include empty fields in Patch requests.
7674	ForceSendFields []string `json:"-"`
7675
7676	// NullFields is a list of field names (e.g. "Reason") to include in API
7677	// requests with the JSON null value. By default, fields with empty
7678	// values are omitted from API requests. However, any field with an
7679	// empty value appearing in NullFields will be sent to the server as
7680	// null. It is an error if a field in this list has a non-empty value.
7681	// This may be used to include null fields in Patch requests.
7682	NullFields []string `json:"-"`
7683}
7684
7685func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
7686	type NoMethod OrdersCancelTestOrderByCustomerRequest
7687	raw := NoMethod(*s)
7688	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7689}
7690
7691type OrdersCancelTestOrderByCustomerResponse struct {
7692	// Kind: Identifies what kind of resource this is. Value: the fixed
7693	// string "content#ordersCancelTestOrderByCustomerResponse".
7694	Kind string `json:"kind,omitempty"`
7695
7696	// ServerResponse contains the HTTP response code and headers from the
7697	// server.
7698	googleapi.ServerResponse `json:"-"`
7699
7700	// ForceSendFields is a list of field names (e.g. "Kind") to
7701	// unconditionally include in API requests. By default, fields with
7702	// empty values are omitted from API requests. However, any non-pointer,
7703	// non-interface field appearing in ForceSendFields will be sent to the
7704	// server regardless of whether the field is empty or not. This may be
7705	// used to include empty fields in Patch requests.
7706	ForceSendFields []string `json:"-"`
7707
7708	// NullFields is a list of field names (e.g. "Kind") to include in API
7709	// requests with the JSON null value. By default, fields with empty
7710	// values are omitted from API requests. However, any field with an
7711	// empty value appearing in NullFields will be sent to the server as
7712	// null. It is an error if a field in this list has a non-empty value.
7713	// This may be used to include null fields in Patch requests.
7714	NullFields []string `json:"-"`
7715}
7716
7717func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
7718	type NoMethod OrdersCancelTestOrderByCustomerResponse
7719	raw := NoMethod(*s)
7720	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7721}
7722
7723type OrdersCreateTestOrderRequest struct {
7724	// Country: The CLDR territory code of the country of the test order to
7725	// create. Affects the currency and addresses of orders created via
7726	// `template_name`, or the addresses of orders created via `test_order`.
7727	// Acceptable values are: - "US" - "FR" Defaults to `US`.
7728	Country string `json:"country,omitempty"`
7729
7730	// TemplateName: The test order template to use. Specify as an
7731	// alternative to `testOrder` as a shortcut for retrieving a template
7732	// and then creating an order using that template. Acceptable values
7733	// are: - "template1" - "template1a" - "template1b" -
7734	// "template2" - "template3"
7735	TemplateName string `json:"templateName,omitempty"`
7736
7737	// TestOrder: The test order to create.
7738	TestOrder *TestOrder `json:"testOrder,omitempty"`
7739
7740	// ForceSendFields is a list of field names (e.g. "Country") to
7741	// unconditionally include in API requests. By default, fields with
7742	// empty values are omitted from API requests. However, any non-pointer,
7743	// non-interface field appearing in ForceSendFields will be sent to the
7744	// server regardless of whether the field is empty or not. This may be
7745	// used to include empty fields in Patch requests.
7746	ForceSendFields []string `json:"-"`
7747
7748	// NullFields is a list of field names (e.g. "Country") to include in
7749	// API requests with the JSON null value. By default, fields with empty
7750	// values are omitted from API requests. However, any field with an
7751	// empty value appearing in NullFields will be sent to the server as
7752	// null. It is an error if a field in this list has a non-empty value.
7753	// This may be used to include null fields in Patch requests.
7754	NullFields []string `json:"-"`
7755}
7756
7757func (s *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
7758	type NoMethod OrdersCreateTestOrderRequest
7759	raw := NoMethod(*s)
7760	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7761}
7762
7763type OrdersCreateTestOrderResponse struct {
7764	// Kind: Identifies what kind of resource this is. Value: the fixed
7765	// string "content#ordersCreateTestOrderResponse".
7766	Kind string `json:"kind,omitempty"`
7767
7768	// OrderId: The ID of the newly created test order.
7769	OrderId string `json:"orderId,omitempty"`
7770
7771	// ServerResponse contains the HTTP response code and headers from the
7772	// server.
7773	googleapi.ServerResponse `json:"-"`
7774
7775	// ForceSendFields is a list of field names (e.g. "Kind") to
7776	// unconditionally include in API requests. By default, fields with
7777	// empty values are omitted from API requests. However, any non-pointer,
7778	// non-interface field appearing in ForceSendFields will be sent to the
7779	// server regardless of whether the field is empty or not. This may be
7780	// used to include empty fields in Patch requests.
7781	ForceSendFields []string `json:"-"`
7782
7783	// NullFields is a list of field names (e.g. "Kind") to include in API
7784	// requests with the JSON null value. By default, fields with empty
7785	// values are omitted from API requests. However, any field with an
7786	// empty value appearing in NullFields will be sent to the server as
7787	// null. It is an error if a field in this list has a non-empty value.
7788	// This may be used to include null fields in Patch requests.
7789	NullFields []string `json:"-"`
7790}
7791
7792func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
7793	type NoMethod OrdersCreateTestOrderResponse
7794	raw := NoMethod(*s)
7795	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7796}
7797
7798type OrdersCreateTestReturnRequest struct {
7799	// Items: Returned items.
7800	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
7801
7802	// ForceSendFields is a list of field names (e.g. "Items") to
7803	// unconditionally include in API requests. By default, fields with
7804	// empty values are omitted from API requests. However, any non-pointer,
7805	// non-interface field appearing in ForceSendFields will be sent to the
7806	// server regardless of whether the field is empty or not. This may be
7807	// used to include empty fields in Patch requests.
7808	ForceSendFields []string `json:"-"`
7809
7810	// NullFields is a list of field names (e.g. "Items") to include in API
7811	// requests with the JSON null value. By default, fields with empty
7812	// values are omitted from API requests. However, any field with an
7813	// empty value appearing in NullFields will be sent to the server as
7814	// null. It is an error if a field in this list has a non-empty value.
7815	// This may be used to include null fields in Patch requests.
7816	NullFields []string `json:"-"`
7817}
7818
7819func (s *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
7820	type NoMethod OrdersCreateTestReturnRequest
7821	raw := NoMethod(*s)
7822	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7823}
7824
7825type OrdersCreateTestReturnResponse struct {
7826	// Kind: Identifies what kind of resource this is. Value: the fixed
7827	// string "content#ordersCreateTestReturnResponse".
7828	Kind string `json:"kind,omitempty"`
7829
7830	// ReturnId: The ID of the newly created test order return.
7831	ReturnId string `json:"returnId,omitempty"`
7832
7833	// ServerResponse contains the HTTP response code and headers from the
7834	// server.
7835	googleapi.ServerResponse `json:"-"`
7836
7837	// ForceSendFields is a list of field names (e.g. "Kind") to
7838	// unconditionally include in API requests. By default, fields with
7839	// empty values are omitted from API requests. However, any non-pointer,
7840	// non-interface field appearing in ForceSendFields will be sent to the
7841	// server regardless of whether the field is empty or not. This may be
7842	// used to include empty fields in Patch requests.
7843	ForceSendFields []string `json:"-"`
7844
7845	// NullFields is a list of field names (e.g. "Kind") to include in API
7846	// requests with the JSON null value. By default, fields with empty
7847	// values are omitted from API requests. However, any field with an
7848	// empty value appearing in NullFields will be sent to the server as
7849	// null. It is an error if a field in this list has a non-empty value.
7850	// This may be used to include null fields in Patch requests.
7851	NullFields []string `json:"-"`
7852}
7853
7854func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
7855	type NoMethod OrdersCreateTestReturnResponse
7856	raw := NoMethod(*s)
7857	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7858}
7859
7860type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
7861	// LineItemId: The ID of the line item to return.
7862	LineItemId string `json:"lineItemId,omitempty"`
7863
7864	// Quantity: Quantity that is returned.
7865	Quantity int64 `json:"quantity,omitempty"`
7866
7867	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7868	// unconditionally include in API requests. By default, fields with
7869	// empty values are omitted from API requests. However, any non-pointer,
7870	// non-interface field appearing in ForceSendFields will be sent to the
7871	// server regardless of whether the field is empty or not. This may be
7872	// used to include empty fields in Patch requests.
7873	ForceSendFields []string `json:"-"`
7874
7875	// NullFields is a list of field names (e.g. "LineItemId") to include in
7876	// API requests with the JSON null value. By default, fields with empty
7877	// values are omitted from API requests. However, any field with an
7878	// empty value appearing in NullFields will be sent to the server as
7879	// null. It is an error if a field in this list has a non-empty value.
7880	// This may be used to include null fields in Patch requests.
7881	NullFields []string `json:"-"`
7882}
7883
7884func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
7885	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
7886	raw := NoMethod(*s)
7887	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7888}
7889
7890type OrdersCustomBatchRequestEntryRefundItemItem struct {
7891	// Amount: The total amount that is refunded. (e.g. refunding $5 each
7892	// for 2 products should be done by setting quantity to 2 and amount to
7893	// 10$) In case of multiple refunds, this should be the amount you
7894	// currently want to refund to the customer.
7895	Amount *MonetaryAmount `json:"amount,omitempty"`
7896
7897	// FullRefund: If true, the full item will be refunded. If this is true,
7898	// amount should not be provided and will be ignored.
7899	FullRefund bool `json:"fullRefund,omitempty"`
7900
7901	// LineItemId: The ID of the line item. Either lineItemId or productId
7902	// is required.
7903	LineItemId string `json:"lineItemId,omitempty"`
7904
7905	// ProductId: The ID of the product. This is the REST ID used in the
7906	// products service. Either lineItemId or productId is required.
7907	ProductId string `json:"productId,omitempty"`
7908
7909	// Quantity: The number of products that are refunded.
7910	Quantity int64 `json:"quantity,omitempty"`
7911
7912	// ForceSendFields is a list of field names (e.g. "Amount") to
7913	// unconditionally include in API requests. By default, fields with
7914	// empty values are omitted from API requests. However, any non-pointer,
7915	// non-interface field appearing in ForceSendFields will be sent to the
7916	// server regardless of whether the field is empty or not. This may be
7917	// used to include empty fields in Patch requests.
7918	ForceSendFields []string `json:"-"`
7919
7920	// NullFields is a list of field names (e.g. "Amount") to include in API
7921	// requests with the JSON null value. By default, fields with empty
7922	// values are omitted from API requests. However, any field with an
7923	// empty value appearing in NullFields will be sent to the server as
7924	// null. It is an error if a field in this list has a non-empty value.
7925	// This may be used to include null fields in Patch requests.
7926	NullFields []string `json:"-"`
7927}
7928
7929func (s *OrdersCustomBatchRequestEntryRefundItemItem) MarshalJSON() ([]byte, error) {
7930	type NoMethod OrdersCustomBatchRequestEntryRefundItemItem
7931	raw := NoMethod(*s)
7932	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7933}
7934
7935type OrdersCustomBatchRequestEntryRefundItemShipping struct {
7936	// Amount: The amount that is refunded. If this is not the first refund
7937	// for the shipment, this should be the newly refunded amount.
7938	Amount *Price `json:"amount,omitempty"`
7939
7940	// FullRefund: If set to true, all shipping costs for the order will be
7941	// refunded. If this is true, amount should not be provided and will be
7942	// ignored.
7943	FullRefund bool `json:"fullRefund,omitempty"`
7944
7945	// ForceSendFields is a list of field names (e.g. "Amount") to
7946	// unconditionally include in API requests. By default, fields with
7947	// empty values are omitted from API requests. However, any non-pointer,
7948	// non-interface field appearing in ForceSendFields will be sent to the
7949	// server regardless of whether the field is empty or not. This may be
7950	// used to include empty fields in Patch requests.
7951	ForceSendFields []string `json:"-"`
7952
7953	// NullFields is a list of field names (e.g. "Amount") to include in API
7954	// requests with the JSON null value. By default, fields with empty
7955	// values are omitted from API requests. However, any field with an
7956	// empty value appearing in NullFields will be sent to the server as
7957	// null. It is an error if a field in this list has a non-empty value.
7958	// This may be used to include null fields in Patch requests.
7959	NullFields []string `json:"-"`
7960}
7961
7962func (s *OrdersCustomBatchRequestEntryRefundItemShipping) MarshalJSON() ([]byte, error) {
7963	type NoMethod OrdersCustomBatchRequestEntryRefundItemShipping
7964	raw := NoMethod(*s)
7965	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7966}
7967
7968type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
7969	// Carrier: The carrier handling the shipment. See `shipments[].carrier`
7970	// in the Orders resource representation for a list of acceptable
7971	// values.
7972	Carrier string `json:"carrier,omitempty"`
7973
7974	// ShipmentId: Required. The ID of the shipment. This is assigned by the
7975	// merchant and is unique to each shipment.
7976	ShipmentId string `json:"shipmentId,omitempty"`
7977
7978	// TrackingId: The tracking ID for the shipment.
7979	TrackingId string `json:"trackingId,omitempty"`
7980
7981	// ForceSendFields is a list of field names (e.g. "Carrier") to
7982	// unconditionally include in API requests. By default, fields with
7983	// empty values are omitted from API requests. However, any non-pointer,
7984	// non-interface field appearing in ForceSendFields will be sent to the
7985	// server regardless of whether the field is empty or not. This may be
7986	// used to include empty fields in Patch requests.
7987	ForceSendFields []string `json:"-"`
7988
7989	// NullFields is a list of field names (e.g. "Carrier") to include in
7990	// API requests with the JSON null value. By default, fields with empty
7991	// values are omitted from API requests. However, any field with an
7992	// empty value appearing in NullFields will be sent to the server as
7993	// null. It is an error if a field in this list has a non-empty value.
7994	// This may be used to include null fields in Patch requests.
7995	NullFields []string `json:"-"`
7996}
7997
7998func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
7999	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
8000	raw := NoMethod(*s)
8001	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8002}
8003
8004type OrdersGetByMerchantOrderIdResponse struct {
8005	// Kind: Identifies what kind of resource this is. Value: the fixed
8006	// string "content#ordersGetByMerchantOrderIdResponse".
8007	Kind string `json:"kind,omitempty"`
8008
8009	// Order: The requested order.
8010	Order *Order `json:"order,omitempty"`
8011
8012	// ServerResponse contains the HTTP response code and headers from the
8013	// server.
8014	googleapi.ServerResponse `json:"-"`
8015
8016	// ForceSendFields is a list of field names (e.g. "Kind") to
8017	// unconditionally include in API requests. By default, fields with
8018	// empty values are omitted from API requests. However, any non-pointer,
8019	// non-interface field appearing in ForceSendFields will be sent to the
8020	// server regardless of whether the field is empty or not. This may be
8021	// used to include empty fields in Patch requests.
8022	ForceSendFields []string `json:"-"`
8023
8024	// NullFields is a list of field names (e.g. "Kind") to include in API
8025	// requests with the JSON null value. By default, fields with empty
8026	// values are omitted from API requests. However, any field with an
8027	// empty value appearing in NullFields will be sent to the server as
8028	// null. It is an error if a field in this list has a non-empty value.
8029	// This may be used to include null fields in Patch requests.
8030	NullFields []string `json:"-"`
8031}
8032
8033func (s *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
8034	type NoMethod OrdersGetByMerchantOrderIdResponse
8035	raw := NoMethod(*s)
8036	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8037}
8038
8039type OrdersGetTestOrderTemplateResponse struct {
8040	// Kind: Identifies what kind of resource this is. Value: the fixed
8041	// string "content#ordersGetTestOrderTemplateResponse".
8042	Kind string `json:"kind,omitempty"`
8043
8044	// Template: The requested test order template.
8045	Template *TestOrder `json:"template,omitempty"`
8046
8047	// ServerResponse contains the HTTP response code and headers from the
8048	// server.
8049	googleapi.ServerResponse `json:"-"`
8050
8051	// ForceSendFields is a list of field names (e.g. "Kind") to
8052	// unconditionally include in API requests. By default, fields with
8053	// empty values are omitted from API requests. However, any non-pointer,
8054	// non-interface field appearing in ForceSendFields will be sent to the
8055	// server regardless of whether the field is empty or not. This may be
8056	// used to include empty fields in Patch requests.
8057	ForceSendFields []string `json:"-"`
8058
8059	// NullFields is a list of field names (e.g. "Kind") to include in API
8060	// requests with the JSON null value. By default, fields with empty
8061	// values are omitted from API requests. However, any field with an
8062	// empty value appearing in NullFields will be sent to the server as
8063	// null. It is an error if a field in this list has a non-empty value.
8064	// This may be used to include null fields in Patch requests.
8065	NullFields []string `json:"-"`
8066}
8067
8068func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
8069	type NoMethod OrdersGetTestOrderTemplateResponse
8070	raw := NoMethod(*s)
8071	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8072}
8073
8074type OrdersInStoreRefundLineItemRequest struct {
8075	// LineItemId: The ID of the line item to return. Either lineItemId or
8076	// productId is required.
8077	LineItemId string `json:"lineItemId,omitempty"`
8078
8079	// OperationId: The ID of the operation. Unique across all operations
8080	// for a given order.
8081	OperationId string `json:"operationId,omitempty"`
8082
8083	// PriceAmount: The amount to be refunded. This may be pre-tax or
8084	// post-tax depending on the location of the order. Required.
8085	PriceAmount *Price `json:"priceAmount,omitempty"`
8086
8087	// ProductId: The ID of the product to return. This is the REST ID used
8088	// in the products service. Either lineItemId or productId is required.
8089	ProductId string `json:"productId,omitempty"`
8090
8091	// Quantity: The quantity to return and refund.
8092	Quantity int64 `json:"quantity,omitempty"`
8093
8094	// Reason: The reason for the return. Acceptable values are: -
8095	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8096	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
8097	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
8098	// - "productNotAsDescribed" - "qualityNotAsExpected" -
8099	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8100	// "wrongProductShipped"
8101	Reason string `json:"reason,omitempty"`
8102
8103	// ReasonText: The explanation of the reason.
8104	ReasonText string `json:"reasonText,omitempty"`
8105
8106	// TaxAmount: The amount of tax to be refunded. Required.
8107	TaxAmount *Price `json:"taxAmount,omitempty"`
8108
8109	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8110	// unconditionally include in API requests. By default, fields with
8111	// empty values are omitted from API requests. However, any non-pointer,
8112	// non-interface field appearing in ForceSendFields will be sent to the
8113	// server regardless of whether the field is empty or not. This may be
8114	// used to include empty fields in Patch requests.
8115	ForceSendFields []string `json:"-"`
8116
8117	// NullFields is a list of field names (e.g. "LineItemId") to include in
8118	// API requests with the JSON null value. By default, fields with empty
8119	// values are omitted from API requests. However, any field with an
8120	// empty value appearing in NullFields will be sent to the server as
8121	// null. It is an error if a field in this list has a non-empty value.
8122	// This may be used to include null fields in Patch requests.
8123	NullFields []string `json:"-"`
8124}
8125
8126func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
8127	type NoMethod OrdersInStoreRefundLineItemRequest
8128	raw := NoMethod(*s)
8129	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8130}
8131
8132type OrdersInStoreRefundLineItemResponse struct {
8133	// ExecutionStatus: The status of the execution. Acceptable values are:
8134	// - "duplicate" - "executed"
8135	ExecutionStatus string `json:"executionStatus,omitempty"`
8136
8137	// Kind: Identifies what kind of resource this is. Value: the fixed
8138	// string "content#ordersInStoreRefundLineItemResponse".
8139	Kind string `json:"kind,omitempty"`
8140
8141	// ServerResponse contains the HTTP response code and headers from the
8142	// server.
8143	googleapi.ServerResponse `json:"-"`
8144
8145	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8146	// unconditionally include in API requests. By default, fields with
8147	// empty values are omitted from API requests. However, any non-pointer,
8148	// non-interface field appearing in ForceSendFields will be sent to the
8149	// server regardless of whether the field is empty or not. This may be
8150	// used to include empty fields in Patch requests.
8151	ForceSendFields []string `json:"-"`
8152
8153	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8154	// include in API requests with the JSON null value. By default, fields
8155	// with empty values are omitted from API requests. However, any field
8156	// with an empty value appearing in NullFields will be sent to the
8157	// server as null. It is an error if a field in this list has a
8158	// non-empty value. This may be used to include null fields in Patch
8159	// requests.
8160	NullFields []string `json:"-"`
8161}
8162
8163func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
8164	type NoMethod OrdersInStoreRefundLineItemResponse
8165	raw := NoMethod(*s)
8166	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8167}
8168
8169type OrdersListResponse struct {
8170	// Kind: Identifies what kind of resource this is. Value: the fixed
8171	// string "content#ordersListResponse".
8172	Kind string `json:"kind,omitempty"`
8173
8174	// NextPageToken: The token for the retrieval of the next page of
8175	// orders.
8176	NextPageToken string `json:"nextPageToken,omitempty"`
8177
8178	Resources []*Order `json:"resources,omitempty"`
8179
8180	// ServerResponse contains the HTTP response code and headers from the
8181	// server.
8182	googleapi.ServerResponse `json:"-"`
8183
8184	// ForceSendFields is a list of field names (e.g. "Kind") to
8185	// unconditionally include in API requests. By default, fields with
8186	// empty values are omitted from API requests. However, any non-pointer,
8187	// non-interface field appearing in ForceSendFields will be sent to the
8188	// server regardless of whether the field is empty or not. This may be
8189	// used to include empty fields in Patch requests.
8190	ForceSendFields []string `json:"-"`
8191
8192	// NullFields is a list of field names (e.g. "Kind") to include in API
8193	// requests with the JSON null value. By default, fields with empty
8194	// values are omitted from API requests. However, any field with an
8195	// empty value appearing in NullFields will be sent to the server as
8196	// null. It is an error if a field in this list has a non-empty value.
8197	// This may be used to include null fields in Patch requests.
8198	NullFields []string `json:"-"`
8199}
8200
8201func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
8202	type NoMethod OrdersListResponse
8203	raw := NoMethod(*s)
8204	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8205}
8206
8207type OrdersRefundItemRequest struct {
8208	// Items: The items that are refunded. Either Item or Shipping must be
8209	// provided in the request.
8210	Items []*OrdersCustomBatchRequestEntryRefundItemItem `json:"items,omitempty"`
8211
8212	// OperationId: The ID of the operation. Unique across all operations
8213	// for a given order.
8214	OperationId string `json:"operationId,omitempty"`
8215
8216	// Reason: The reason for the refund. Acceptable values are: -
8217	// "shippingCostAdjustment" - "priceAdjustment" - "taxAdjustment"
8218	// - "feeAdjustment" - "courtesyAdjustment" - "adjustment" -
8219	// "customerCancelled" - "noInventory" - "productNotAsDescribed" -
8220	// "undeliverableShippingAddress" - "wrongProductShipped" -
8221	// "lateShipmentCredit" - "deliveredLateByCarrier" -
8222	// "productArrivedDamaged"
8223	Reason string `json:"reason,omitempty"`
8224
8225	// ReasonText: The explanation of the reason.
8226	ReasonText string `json:"reasonText,omitempty"`
8227
8228	// Shipping: The refund on shipping. Optional, but either Item or
8229	// Shipping must be provided in the request.
8230	Shipping *OrdersCustomBatchRequestEntryRefundItemShipping `json:"shipping,omitempty"`
8231
8232	// ForceSendFields is a list of field names (e.g. "Items") to
8233	// unconditionally include in API requests. By default, fields with
8234	// empty values are omitted from API requests. However, any non-pointer,
8235	// non-interface field appearing in ForceSendFields will be sent to the
8236	// server regardless of whether the field is empty or not. This may be
8237	// used to include empty fields in Patch requests.
8238	ForceSendFields []string `json:"-"`
8239
8240	// NullFields is a list of field names (e.g. "Items") to include in API
8241	// requests with the JSON null value. By default, fields with empty
8242	// values are omitted from API requests. However, any field with an
8243	// empty value appearing in NullFields will be sent to the server as
8244	// null. It is an error if a field in this list has a non-empty value.
8245	// This may be used to include null fields in Patch requests.
8246	NullFields []string `json:"-"`
8247}
8248
8249func (s *OrdersRefundItemRequest) MarshalJSON() ([]byte, error) {
8250	type NoMethod OrdersRefundItemRequest
8251	raw := NoMethod(*s)
8252	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8253}
8254
8255type OrdersRefundItemResponse struct {
8256	// ExecutionStatus: The status of the execution. Acceptable values are:
8257	// - "duplicate" - "executed"
8258	ExecutionStatus string `json:"executionStatus,omitempty"`
8259
8260	// Kind: Identifies what kind of resource this is. Value: the fixed
8261	// string "content#ordersRefundItemResponse".
8262	Kind string `json:"kind,omitempty"`
8263
8264	// ServerResponse contains the HTTP response code and headers from the
8265	// server.
8266	googleapi.ServerResponse `json:"-"`
8267
8268	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8269	// unconditionally include in API requests. By default, fields with
8270	// empty values are omitted from API requests. However, any non-pointer,
8271	// non-interface field appearing in ForceSendFields will be sent to the
8272	// server regardless of whether the field is empty or not. This may be
8273	// used to include empty fields in Patch requests.
8274	ForceSendFields []string `json:"-"`
8275
8276	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8277	// include in API requests with the JSON null value. By default, fields
8278	// with empty values are omitted from API requests. However, any field
8279	// with an empty value appearing in NullFields will be sent to the
8280	// server as null. It is an error if a field in this list has a
8281	// non-empty value. This may be used to include null fields in Patch
8282	// requests.
8283	NullFields []string `json:"-"`
8284}
8285
8286func (s *OrdersRefundItemResponse) MarshalJSON() ([]byte, error) {
8287	type NoMethod OrdersRefundItemResponse
8288	raw := NoMethod(*s)
8289	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8290}
8291
8292type OrdersRefundOrderRequest struct {
8293	// Amount: The amount that is refunded. If this is not the first refund
8294	// for the order, this should be the newly refunded amount.
8295	Amount *MonetaryAmount `json:"amount,omitempty"`
8296
8297	// FullRefund: If true, the full order will be refunded, including
8298	// shipping. If this is true, amount should not be provided and will be
8299	// ignored.
8300	FullRefund bool `json:"fullRefund,omitempty"`
8301
8302	// OperationId: The ID of the operation. Unique across all operations
8303	// for a given order.
8304	OperationId string `json:"operationId,omitempty"`
8305
8306	// Reason: The reason for the refund. Acceptable values are: -
8307	// "courtesyAdjustment" - "other"
8308	Reason string `json:"reason,omitempty"`
8309
8310	// ReasonText: The explanation of the reason.
8311	ReasonText string `json:"reasonText,omitempty"`
8312
8313	// ForceSendFields is a list of field names (e.g. "Amount") to
8314	// unconditionally include in API requests. By default, fields with
8315	// empty values are omitted from API requests. However, any non-pointer,
8316	// non-interface field appearing in ForceSendFields will be sent to the
8317	// server regardless of whether the field is empty or not. This may be
8318	// used to include empty fields in Patch requests.
8319	ForceSendFields []string `json:"-"`
8320
8321	// NullFields is a list of field names (e.g. "Amount") to include in API
8322	// requests with the JSON null value. By default, fields with empty
8323	// values are omitted from API requests. However, any field with an
8324	// empty value appearing in NullFields will be sent to the server as
8325	// null. It is an error if a field in this list has a non-empty value.
8326	// This may be used to include null fields in Patch requests.
8327	NullFields []string `json:"-"`
8328}
8329
8330func (s *OrdersRefundOrderRequest) MarshalJSON() ([]byte, error) {
8331	type NoMethod OrdersRefundOrderRequest
8332	raw := NoMethod(*s)
8333	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8334}
8335
8336type OrdersRefundOrderResponse struct {
8337	// ExecutionStatus: The status of the execution. Acceptable values are:
8338	// - "duplicate" - "executed"
8339	ExecutionStatus string `json:"executionStatus,omitempty"`
8340
8341	// Kind: Identifies what kind of resource this is. Value: the fixed
8342	// string "content#ordersRefundOrderResponse".
8343	Kind string `json:"kind,omitempty"`
8344
8345	// ServerResponse contains the HTTP response code and headers from the
8346	// server.
8347	googleapi.ServerResponse `json:"-"`
8348
8349	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8350	// unconditionally include in API requests. By default, fields with
8351	// empty values are omitted from API requests. However, any non-pointer,
8352	// non-interface field appearing in ForceSendFields will be sent to the
8353	// server regardless of whether the field is empty or not. This may be
8354	// used to include empty fields in Patch requests.
8355	ForceSendFields []string `json:"-"`
8356
8357	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8358	// include in API requests with the JSON null value. By default, fields
8359	// with empty values are omitted from API requests. However, any field
8360	// with an empty value appearing in NullFields will be sent to the
8361	// server as null. It is an error if a field in this list has a
8362	// non-empty value. This may be used to include null fields in Patch
8363	// requests.
8364	NullFields []string `json:"-"`
8365}
8366
8367func (s *OrdersRefundOrderResponse) MarshalJSON() ([]byte, error) {
8368	type NoMethod OrdersRefundOrderResponse
8369	raw := NoMethod(*s)
8370	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8371}
8372
8373type OrdersRejectReturnLineItemRequest struct {
8374	// LineItemId: The ID of the line item to return. Either lineItemId or
8375	// productId is required.
8376	LineItemId string `json:"lineItemId,omitempty"`
8377
8378	// OperationId: The ID of the operation. Unique across all operations
8379	// for a given order.
8380	OperationId string `json:"operationId,omitempty"`
8381
8382	// ProductId: The ID of the product to return. This is the REST ID used
8383	// in the products service. Either lineItemId or productId is required.
8384	ProductId string `json:"productId,omitempty"`
8385
8386	// Quantity: The quantity to return and refund.
8387	Quantity int64 `json:"quantity,omitempty"`
8388
8389	// Reason: The reason for the return. Acceptable values are: -
8390	// "damagedOrUsed" - "missingComponent" - "notEligible" -
8391	// "other" - "outOfReturnWindow"
8392	Reason string `json:"reason,omitempty"`
8393
8394	// ReasonText: The explanation of the reason.
8395	ReasonText string `json:"reasonText,omitempty"`
8396
8397	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8398	// unconditionally include in API requests. By default, fields with
8399	// empty values are omitted from API requests. However, any non-pointer,
8400	// non-interface field appearing in ForceSendFields will be sent to the
8401	// server regardless of whether the field is empty or not. This may be
8402	// used to include empty fields in Patch requests.
8403	ForceSendFields []string `json:"-"`
8404
8405	// NullFields is a list of field names (e.g. "LineItemId") to include in
8406	// API requests with the JSON null value. By default, fields with empty
8407	// values are omitted from API requests. However, any field with an
8408	// empty value appearing in NullFields will be sent to the server as
8409	// null. It is an error if a field in this list has a non-empty value.
8410	// This may be used to include null fields in Patch requests.
8411	NullFields []string `json:"-"`
8412}
8413
8414func (s *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
8415	type NoMethod OrdersRejectReturnLineItemRequest
8416	raw := NoMethod(*s)
8417	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8418}
8419
8420type OrdersRejectReturnLineItemResponse struct {
8421	// ExecutionStatus: The status of the execution. Acceptable values are:
8422	// - "duplicate" - "executed"
8423	ExecutionStatus string `json:"executionStatus,omitempty"`
8424
8425	// Kind: Identifies what kind of resource this is. Value: the fixed
8426	// string "content#ordersRejectReturnLineItemResponse".
8427	Kind string `json:"kind,omitempty"`
8428
8429	// ServerResponse contains the HTTP response code and headers from the
8430	// server.
8431	googleapi.ServerResponse `json:"-"`
8432
8433	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8434	// unconditionally include in API requests. By default, fields with
8435	// empty values are omitted from API requests. However, any non-pointer,
8436	// non-interface field appearing in ForceSendFields will be sent to the
8437	// server regardless of whether the field is empty or not. This may be
8438	// used to include empty fields in Patch requests.
8439	ForceSendFields []string `json:"-"`
8440
8441	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8442	// include in API requests with the JSON null value. By default, fields
8443	// with empty values are omitted from API requests. However, any field
8444	// with an empty value appearing in NullFields will be sent to the
8445	// server as null. It is an error if a field in this list has a
8446	// non-empty value. This may be used to include null fields in Patch
8447	// requests.
8448	NullFields []string `json:"-"`
8449}
8450
8451func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
8452	type NoMethod OrdersRejectReturnLineItemResponse
8453	raw := NoMethod(*s)
8454	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8455}
8456
8457type OrdersReturnRefundLineItemRequest struct {
8458	// LineItemId: The ID of the line item to return. Either lineItemId or
8459	// productId is required.
8460	LineItemId string `json:"lineItemId,omitempty"`
8461
8462	// OperationId: The ID of the operation. Unique across all operations
8463	// for a given order.
8464	OperationId string `json:"operationId,omitempty"`
8465
8466	// PriceAmount: The amount to be refunded. This may be pre-tax or
8467	// post-tax depending on the location of the order. If omitted,
8468	// refundless return is assumed.
8469	PriceAmount *Price `json:"priceAmount,omitempty"`
8470
8471	// ProductId: The ID of the product to return. This is the REST ID used
8472	// in the products service. Either lineItemId or productId is required.
8473	ProductId string `json:"productId,omitempty"`
8474
8475	// Quantity: The quantity to return and refund.
8476	Quantity int64 `json:"quantity,omitempty"`
8477
8478	// Reason: The reason for the return. Acceptable values are: -
8479	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8480	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
8481	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
8482	// - "productNotAsDescribed" - "qualityNotAsExpected" -
8483	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8484	// "wrongProductShipped"
8485	Reason string `json:"reason,omitempty"`
8486
8487	// ReasonText: The explanation of the reason.
8488	ReasonText string `json:"reasonText,omitempty"`
8489
8490	// TaxAmount: The amount of tax to be refunded. Optional, but if filled,
8491	// then priceAmount must be set. Calculated automatically if not
8492	// provided.
8493	TaxAmount *Price `json:"taxAmount,omitempty"`
8494
8495	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8496	// unconditionally include in API requests. By default, fields with
8497	// empty values are omitted from API requests. However, any non-pointer,
8498	// non-interface field appearing in ForceSendFields will be sent to the
8499	// server regardless of whether the field is empty or not. This may be
8500	// used to include empty fields in Patch requests.
8501	ForceSendFields []string `json:"-"`
8502
8503	// NullFields is a list of field names (e.g. "LineItemId") to include in
8504	// API requests with the JSON null value. By default, fields with empty
8505	// values are omitted from API requests. However, any field with an
8506	// 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 *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
8513	type NoMethod OrdersReturnRefundLineItemRequest
8514	raw := NoMethod(*s)
8515	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8516}
8517
8518type OrdersReturnRefundLineItemResponse struct {
8519	// ExecutionStatus: The status of the execution. Acceptable values are:
8520	// - "duplicate" - "executed"
8521	ExecutionStatus string `json:"executionStatus,omitempty"`
8522
8523	// Kind: Identifies what kind of resource this is. Value: the fixed
8524	// string "content#ordersReturnRefundLineItemResponse".
8525	Kind string `json:"kind,omitempty"`
8526
8527	// ServerResponse contains the HTTP response code and headers from the
8528	// server.
8529	googleapi.ServerResponse `json:"-"`
8530
8531	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8532	// unconditionally include in API requests. By default, fields with
8533	// empty values are omitted from API requests. However, any non-pointer,
8534	// non-interface field appearing in ForceSendFields will be sent to the
8535	// server regardless of whether the field is empty or not. This may be
8536	// used to include empty fields in Patch requests.
8537	ForceSendFields []string `json:"-"`
8538
8539	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8540	// include in API requests with the JSON null value. By default, fields
8541	// with empty values are omitted from API requests. However, any field
8542	// with an empty value appearing in NullFields will be sent to the
8543	// server as null. It is an error if a field in this list has a
8544	// non-empty value. This may be used to include null fields in Patch
8545	// requests.
8546	NullFields []string `json:"-"`
8547}
8548
8549func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
8550	type NoMethod OrdersReturnRefundLineItemResponse
8551	raw := NoMethod(*s)
8552	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8553}
8554
8555type OrdersSetLineItemMetadataRequest struct {
8556	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
8557
8558	// LineItemId: The ID of the line item to set metadata. Either
8559	// lineItemId or productId is required.
8560	LineItemId string `json:"lineItemId,omitempty"`
8561
8562	// OperationId: The ID of the operation. Unique across all operations
8563	// for a given order.
8564	OperationId string `json:"operationId,omitempty"`
8565
8566	// ProductId: The ID of the product to set metadata. This is the REST ID
8567	// used in the products service. Either lineItemId or productId is
8568	// required.
8569	ProductId string `json:"productId,omitempty"`
8570
8571	// ForceSendFields is a list of field names (e.g. "Annotations") to
8572	// unconditionally include in API requests. By default, fields with
8573	// empty values are omitted from API requests. However, any non-pointer,
8574	// non-interface field appearing in ForceSendFields will be sent to the
8575	// server regardless of whether the field is empty or not. This may be
8576	// used to include empty fields in Patch requests.
8577	ForceSendFields []string `json:"-"`
8578
8579	// NullFields is a list of field names (e.g. "Annotations") to include
8580	// in API requests with the JSON null value. By default, fields with
8581	// empty values are omitted from API requests. However, any field with
8582	// an empty value appearing in NullFields will be sent to the server as
8583	// null. It is an error if a field in this list has a non-empty value.
8584	// This may be used to include null fields in Patch requests.
8585	NullFields []string `json:"-"`
8586}
8587
8588func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
8589	type NoMethod OrdersSetLineItemMetadataRequest
8590	raw := NoMethod(*s)
8591	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8592}
8593
8594type OrdersSetLineItemMetadataResponse struct {
8595	// ExecutionStatus: The status of the execution. Acceptable values are:
8596	// - "duplicate" - "executed"
8597	ExecutionStatus string `json:"executionStatus,omitempty"`
8598
8599	// Kind: Identifies what kind of resource this is. Value: the fixed
8600	// string "content#ordersSetLineItemMetadataResponse".
8601	Kind string `json:"kind,omitempty"`
8602
8603	// ServerResponse contains the HTTP response code and headers from the
8604	// server.
8605	googleapi.ServerResponse `json:"-"`
8606
8607	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8608	// unconditionally include in API requests. By default, fields with
8609	// empty values are omitted from API requests. However, any non-pointer,
8610	// non-interface field appearing in ForceSendFields will be sent to the
8611	// server regardless of whether the field is empty or not. This may be
8612	// used to include empty fields in Patch requests.
8613	ForceSendFields []string `json:"-"`
8614
8615	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8616	// include in API requests with the JSON null value. By default, fields
8617	// with empty values are omitted from API requests. However, any field
8618	// with an empty value appearing in NullFields will be sent to the
8619	// server as null. It is an error if a field in this list has a
8620	// non-empty value. This may be used to include null fields in Patch
8621	// requests.
8622	NullFields []string `json:"-"`
8623}
8624
8625func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
8626	type NoMethod OrdersSetLineItemMetadataResponse
8627	raw := NoMethod(*s)
8628	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8629}
8630
8631type OrdersShipLineItemsRequest struct {
8632	// LineItems: Line items to ship.
8633	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
8634
8635	// OperationId: The ID of the operation. Unique across all operations
8636	// for a given order.
8637	OperationId string `json:"operationId,omitempty"`
8638
8639	// ShipmentGroupId: ID of the shipment group. Required for orders that
8640	// use the orderinvoices service.
8641	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
8642
8643	// ShipmentInfos: Shipment information. This field is repeated because a
8644	// single line item can be shipped in several packages (and have several
8645	// tracking IDs).
8646	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
8647
8648	// ForceSendFields is a list of field names (e.g. "LineItems") to
8649	// unconditionally include in API requests. By default, fields with
8650	// empty values are omitted from API requests. However, any non-pointer,
8651	// non-interface field appearing in ForceSendFields will be sent to the
8652	// server regardless of whether the field is empty or not. This may be
8653	// used to include empty fields in Patch requests.
8654	ForceSendFields []string `json:"-"`
8655
8656	// NullFields is a list of field names (e.g. "LineItems") to include in
8657	// API requests with the JSON null value. By default, fields with empty
8658	// values are omitted from API requests. However, any field with an
8659	// empty value appearing in NullFields will be sent to the server as
8660	// null. It is an error if a field in this list has a non-empty value.
8661	// This may be used to include null fields in Patch requests.
8662	NullFields []string `json:"-"`
8663}
8664
8665func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
8666	type NoMethod OrdersShipLineItemsRequest
8667	raw := NoMethod(*s)
8668	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8669}
8670
8671type OrdersShipLineItemsResponse struct {
8672	// ExecutionStatus: The status of the execution. Acceptable values are:
8673	// - "duplicate" - "executed"
8674	ExecutionStatus string `json:"executionStatus,omitempty"`
8675
8676	// Kind: Identifies what kind of resource this is. Value: the fixed
8677	// string "content#ordersShipLineItemsResponse".
8678	Kind string `json:"kind,omitempty"`
8679
8680	// ServerResponse contains the HTTP response code and headers from the
8681	// server.
8682	googleapi.ServerResponse `json:"-"`
8683
8684	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8685	// unconditionally include in API requests. By default, fields with
8686	// empty values are omitted from API requests. However, any non-pointer,
8687	// non-interface field appearing in ForceSendFields will be sent to the
8688	// server regardless of whether the field is empty or not. This may be
8689	// used to include empty fields in Patch requests.
8690	ForceSendFields []string `json:"-"`
8691
8692	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8693	// include in API requests with the JSON null value. By default, fields
8694	// with empty values are omitted from API requests. However, any field
8695	// with an empty value appearing in NullFields will be sent to the
8696	// server as null. It is an error if a field in this list has a
8697	// non-empty value. This may be used to include null fields in Patch
8698	// requests.
8699	NullFields []string `json:"-"`
8700}
8701
8702func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
8703	type NoMethod OrdersShipLineItemsResponse
8704	raw := NoMethod(*s)
8705	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8706}
8707
8708type OrdersUpdateLineItemShippingDetailsRequest struct {
8709	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
8710	// specified only ship by date is updated. Provided date should be
8711	// within 1 year timeframe and can not be a date in the past.
8712	DeliverByDate string `json:"deliverByDate,omitempty"`
8713
8714	// LineItemId: The ID of the line item to set metadata. Either
8715	// lineItemId or productId is required.
8716	LineItemId string `json:"lineItemId,omitempty"`
8717
8718	// OperationId: The ID of the operation. Unique across all operations
8719	// for a given order.
8720	OperationId string `json:"operationId,omitempty"`
8721
8722	// ProductId: The ID of the product to set metadata. This is the REST ID
8723	// used in the products service. Either lineItemId or productId is
8724	// required.
8725	ProductId string `json:"productId,omitempty"`
8726
8727	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
8728	// specified only deliver by date is updated. Provided date should be
8729	// within 1 year timeframe and can not be a date in the past.
8730	ShipByDate string `json:"shipByDate,omitempty"`
8731
8732	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
8733	// unconditionally include in API requests. By default, fields with
8734	// empty values are omitted from API requests. However, any non-pointer,
8735	// non-interface field appearing in ForceSendFields will be sent to the
8736	// server regardless of whether the field is empty or not. This may be
8737	// used to include empty fields in Patch requests.
8738	ForceSendFields []string `json:"-"`
8739
8740	// NullFields is a list of field names (e.g. "DeliverByDate") to include
8741	// in API requests with the JSON null value. By default, fields with
8742	// empty values are omitted from API requests. However, any field with
8743	// an empty value appearing in NullFields will be sent to the server as
8744	// null. It is an error if a field in this list has a non-empty value.
8745	// This may be used to include null fields in Patch requests.
8746	NullFields []string `json:"-"`
8747}
8748
8749func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
8750	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
8751	raw := NoMethod(*s)
8752	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8753}
8754
8755type OrdersUpdateLineItemShippingDetailsResponse struct {
8756	// ExecutionStatus: The status of the execution. Acceptable values are:
8757	// - "duplicate" - "executed"
8758	ExecutionStatus string `json:"executionStatus,omitempty"`
8759
8760	// Kind: Identifies what kind of resource this is. Value: the fixed
8761	// string "content#ordersUpdateLineItemShippingDetailsResponse".
8762	Kind string `json:"kind,omitempty"`
8763
8764	// ServerResponse contains the HTTP response code and headers from the
8765	// server.
8766	googleapi.ServerResponse `json:"-"`
8767
8768	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8769	// unconditionally include in API requests. By default, fields with
8770	// empty values are omitted from API requests. However, any non-pointer,
8771	// non-interface field appearing in ForceSendFields will be sent to the
8772	// server regardless of whether the field is empty or not. This may be
8773	// used to include empty fields in Patch requests.
8774	ForceSendFields []string `json:"-"`
8775
8776	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8777	// include in API requests with the JSON null value. By default, fields
8778	// with empty values are omitted from API requests. However, any field
8779	// with an empty value appearing in NullFields will be sent to the
8780	// server as null. It is an error if a field in this list has a
8781	// non-empty value. This may be used to include null fields in Patch
8782	// requests.
8783	NullFields []string `json:"-"`
8784}
8785
8786func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
8787	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
8788	raw := NoMethod(*s)
8789	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8790}
8791
8792type OrdersUpdateMerchantOrderIdRequest struct {
8793	// MerchantOrderId: The merchant order id to be assigned to the order.
8794	// Must be unique per merchant.
8795	MerchantOrderId string `json:"merchantOrderId,omitempty"`
8796
8797	// OperationId: The ID of the operation. Unique across all operations
8798	// for a given order.
8799	OperationId string `json:"operationId,omitempty"`
8800
8801	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
8802	// unconditionally include in API requests. By default, fields with
8803	// empty values are omitted from API requests. However, any non-pointer,
8804	// non-interface field appearing in ForceSendFields will be sent to the
8805	// server regardless of whether the field is empty or not. This may be
8806	// used to include empty fields in Patch requests.
8807	ForceSendFields []string `json:"-"`
8808
8809	// NullFields is a list of field names (e.g. "MerchantOrderId") to
8810	// include in API requests with the JSON null value. By default, fields
8811	// with empty values are omitted from API requests. However, any field
8812	// with an empty value appearing in NullFields will be sent to the
8813	// server as null. It is an error if a field in this list has a
8814	// non-empty value. This may be used to include null fields in Patch
8815	// requests.
8816	NullFields []string `json:"-"`
8817}
8818
8819func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
8820	type NoMethod OrdersUpdateMerchantOrderIdRequest
8821	raw := NoMethod(*s)
8822	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8823}
8824
8825type OrdersUpdateMerchantOrderIdResponse struct {
8826	// ExecutionStatus: The status of the execution. Acceptable values are:
8827	// - "duplicate" - "executed"
8828	ExecutionStatus string `json:"executionStatus,omitempty"`
8829
8830	// Kind: Identifies what kind of resource this is. Value: the fixed
8831	// string "content#ordersUpdateMerchantOrderIdResponse".
8832	Kind string `json:"kind,omitempty"`
8833
8834	// ServerResponse contains the HTTP response code and headers from the
8835	// server.
8836	googleapi.ServerResponse `json:"-"`
8837
8838	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8839	// unconditionally include in API requests. By default, fields with
8840	// empty values are omitted from API requests. However, any non-pointer,
8841	// non-interface field appearing in ForceSendFields will be sent to the
8842	// server regardless of whether the field is empty or not. This may be
8843	// used to include empty fields in Patch requests.
8844	ForceSendFields []string `json:"-"`
8845
8846	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8847	// include in API requests with the JSON null value. By default, fields
8848	// with empty values are omitted from API requests. However, any field
8849	// with an empty value appearing in NullFields will be sent to the
8850	// server as null. It is an error if a field in this list has a
8851	// non-empty value. This may be used to include null fields in Patch
8852	// requests.
8853	NullFields []string `json:"-"`
8854}
8855
8856func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
8857	type NoMethod OrdersUpdateMerchantOrderIdResponse
8858	raw := NoMethod(*s)
8859	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8860}
8861
8862type OrdersUpdateShipmentRequest struct {
8863	// Carrier: The carrier handling the shipment. Not updated if missing.
8864	// See `shipments[].carrier` in the Orders resource representation for a
8865	// list of acceptable values.
8866	Carrier string `json:"carrier,omitempty"`
8867
8868	// DeliveryDate: Date on which the shipment has been delivered, in ISO
8869	// 8601 format. Optional and can be provided only if `status` is
8870	// `delivered`.
8871	DeliveryDate string `json:"deliveryDate,omitempty"`
8872
8873	// LastPickupDate: Date after which the pickup will expire, in ISO 8601
8874	// format. Required only when order is buy-online-pickup-in-store(BOPIS)
8875	// and `status` is `ready for pickup`.
8876	LastPickupDate string `json:"lastPickupDate,omitempty"`
8877
8878	// OperationId: The ID of the operation. Unique across all operations
8879	// for a given order.
8880	OperationId string `json:"operationId,omitempty"`
8881
8882	// ReadyPickupDate: Date on which the shipment has been ready for
8883	// pickup, in ISO 8601 format. Optional and can be provided only if
8884	// `status` is `ready for pickup`.
8885	ReadyPickupDate string `json:"readyPickupDate,omitempty"`
8886
8887	// ShipmentId: The ID of the shipment.
8888	ShipmentId string `json:"shipmentId,omitempty"`
8889
8890	// Status: New status for the shipment. Not updated if missing.
8891	// Acceptable values are: - "delivered" - "undeliverable" -
8892	// "readyForPickup"
8893	Status string `json:"status,omitempty"`
8894
8895	// TrackingId: The tracking ID for the shipment. Not updated if missing.
8896	TrackingId string `json:"trackingId,omitempty"`
8897
8898	// UndeliveredDate: Date on which the shipment has been undeliverable,
8899	// in ISO 8601 format. Optional and can be provided only if `status` is
8900	// `undeliverable`.
8901	UndeliveredDate string `json:"undeliveredDate,omitempty"`
8902
8903	// ForceSendFields is a list of field names (e.g. "Carrier") to
8904	// unconditionally include in API requests. By default, fields with
8905	// empty values are omitted from API requests. However, any non-pointer,
8906	// non-interface field appearing in ForceSendFields will be sent to the
8907	// server regardless of whether the field is empty or not. This may be
8908	// used to include empty fields in Patch requests.
8909	ForceSendFields []string `json:"-"`
8910
8911	// NullFields is a list of field names (e.g. "Carrier") to include in
8912	// API requests with the JSON null value. By default, fields with empty
8913	// values are omitted from API requests. However, any field with an
8914	// empty value appearing in NullFields will be sent to the server as
8915	// null. It is an error if a field in this list has a non-empty value.
8916	// This may be used to include null fields in Patch requests.
8917	NullFields []string `json:"-"`
8918}
8919
8920func (s *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
8921	type NoMethod OrdersUpdateShipmentRequest
8922	raw := NoMethod(*s)
8923	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8924}
8925
8926type OrdersUpdateShipmentResponse struct {
8927	// ExecutionStatus: The status of the execution. Acceptable values are:
8928	// - "duplicate" - "executed"
8929	ExecutionStatus string `json:"executionStatus,omitempty"`
8930
8931	// Kind: Identifies what kind of resource this is. Value: the fixed
8932	// string "content#ordersUpdateShipmentResponse".
8933	Kind string `json:"kind,omitempty"`
8934
8935	// ServerResponse contains the HTTP response code and headers from the
8936	// server.
8937	googleapi.ServerResponse `json:"-"`
8938
8939	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8940	// unconditionally include in API requests. By default, fields with
8941	// empty values are omitted from API requests. However, any non-pointer,
8942	// non-interface field appearing in ForceSendFields will be sent to the
8943	// server regardless of whether the field is empty or not. This may be
8944	// used to include empty fields in Patch requests.
8945	ForceSendFields []string `json:"-"`
8946
8947	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8948	// include in API requests with the JSON null value. By default, fields
8949	// with empty values are omitted from API requests. However, any field
8950	// with an empty value appearing in NullFields will be sent to the
8951	// server as null. It is an error if a field in this list has a
8952	// non-empty value. This may be used to include null fields in Patch
8953	// requests.
8954	NullFields []string `json:"-"`
8955}
8956
8957func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
8958	type NoMethod OrdersUpdateShipmentResponse
8959	raw := NoMethod(*s)
8960	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8961}
8962
8963type PickupCarrierService struct {
8964	// CarrierName: The name of the pickup carrier (e.g., "UPS").
8965	// Required.
8966	CarrierName string `json:"carrierName,omitempty"`
8967
8968	// ServiceName: The name of the pickup service (e.g., "Access point").
8969	// Required.
8970	ServiceName string `json:"serviceName,omitempty"`
8971
8972	// ForceSendFields is a list of field names (e.g. "CarrierName") to
8973	// unconditionally include in API requests. By default, fields with
8974	// empty values are omitted from API requests. However, any non-pointer,
8975	// non-interface field appearing in ForceSendFields will be sent to the
8976	// server regardless of whether the field is empty or not. This may be
8977	// used to include empty fields in Patch requests.
8978	ForceSendFields []string `json:"-"`
8979
8980	// NullFields is a list of field names (e.g. "CarrierName") to include
8981	// in API requests with the JSON null value. By default, fields with
8982	// empty values are omitted from API requests. However, any field with
8983	// an empty value appearing in NullFields will be sent to the server as
8984	// null. It is an error if a field in this list has a non-empty value.
8985	// This may be used to include null fields in Patch requests.
8986	NullFields []string `json:"-"`
8987}
8988
8989func (s *PickupCarrierService) MarshalJSON() ([]byte, error) {
8990	type NoMethod PickupCarrierService
8991	raw := NoMethod(*s)
8992	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8993}
8994
8995type PickupServicesPickupService struct {
8996	// CarrierName: The name of the carrier (e.g., "UPS"). Always present.
8997	CarrierName string `json:"carrierName,omitempty"`
8998
8999	// Country: The CLDR country code of the carrier (e.g., "US"). Always
9000	// present.
9001	Country string `json:"country,omitempty"`
9002
9003	// ServiceName: The name of the pickup service (e.g., "Access point").
9004	// Always present.
9005	ServiceName string `json:"serviceName,omitempty"`
9006
9007	// ForceSendFields is a list of field names (e.g. "CarrierName") to
9008	// unconditionally include in API requests. By default, fields with
9009	// empty values are omitted from API requests. However, any non-pointer,
9010	// non-interface field appearing in ForceSendFields will be sent to the
9011	// server regardless of whether the field is empty or not. This may be
9012	// used to include empty fields in Patch requests.
9013	ForceSendFields []string `json:"-"`
9014
9015	// NullFields is a list of field names (e.g. "CarrierName") to include
9016	// in API requests with the JSON null value. By default, fields with
9017	// empty values are omitted from API requests. However, any field with
9018	// an empty value appearing in NullFields will be sent to the server as
9019	// null. It is an error if a field in this list has a non-empty value.
9020	// This may be used to include null fields in Patch requests.
9021	NullFields []string `json:"-"`
9022}
9023
9024func (s *PickupServicesPickupService) MarshalJSON() ([]byte, error) {
9025	type NoMethod PickupServicesPickupService
9026	raw := NoMethod(*s)
9027	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9028}
9029
9030type PosCustomBatchRequest struct {
9031	// Entries: The request entries to be processed in the batch.
9032	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
9033
9034	// ForceSendFields is a list of field names (e.g. "Entries") to
9035	// unconditionally include in API requests. By default, fields with
9036	// empty values are omitted from API requests. However, any non-pointer,
9037	// non-interface field appearing in ForceSendFields will be sent to the
9038	// server regardless of whether the field is empty or not. This may be
9039	// used to include empty fields in Patch requests.
9040	ForceSendFields []string `json:"-"`
9041
9042	// NullFields is a list of field names (e.g. "Entries") to include in
9043	// API requests with the JSON null value. By default, fields with empty
9044	// values are omitted from API requests. However, any field with an
9045	// empty value appearing in NullFields will be sent to the server as
9046	// null. It is an error if a field in this list has a non-empty value.
9047	// This may be used to include null fields in Patch requests.
9048	NullFields []string `json:"-"`
9049}
9050
9051func (s *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
9052	type NoMethod PosCustomBatchRequest
9053	raw := NoMethod(*s)
9054	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9055}
9056
9057type PosCustomBatchRequestEntry struct {
9058	// BatchId: An entry ID, unique within the batch request.
9059	BatchId int64 `json:"batchId,omitempty"`
9060
9061	// Inventory: The inventory to submit. This should be set only if the
9062	// method is `inventory`.
9063	Inventory *PosInventory `json:"inventory,omitempty"`
9064
9065	// MerchantId: The ID of the POS data provider.
9066	MerchantId uint64 `json:"merchantId,omitempty,string"`
9067
9068	// Method: The method of the batch entry. Acceptable values are: -
9069	// "delete" - "get" - "insert" - "inventory" - "sale"
9070	Method string `json:"method,omitempty"`
9071
9072	// Sale: The sale information to submit. This should be set only if the
9073	// method is `sale`.
9074	Sale *PosSale `json:"sale,omitempty"`
9075
9076	// Store: The store information to submit. This should be set only if
9077	// the method is `insert`.
9078	Store *PosStore `json:"store,omitempty"`
9079
9080	// StoreCode: The store code. This should be set only if the method is
9081	// `delete` or `get`.
9082	StoreCode string `json:"storeCode,omitempty"`
9083
9084	// TargetMerchantId: The ID of the account for which to get/submit data.
9085	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
9086
9087	// ForceSendFields is a list of field names (e.g. "BatchId") to
9088	// unconditionally include in API requests. By default, fields with
9089	// empty values are omitted from API requests. However, any non-pointer,
9090	// non-interface field appearing in ForceSendFields will be sent to the
9091	// server regardless of whether the field is empty or not. This may be
9092	// used to include empty fields in Patch requests.
9093	ForceSendFields []string `json:"-"`
9094
9095	// NullFields is a list of field names (e.g. "BatchId") to include in
9096	// API requests with the JSON null value. By default, fields with empty
9097	// values are omitted from API requests. However, any field with an
9098	// empty value appearing in NullFields will be sent to the server as
9099	// null. It is an error if a field in this list has a non-empty value.
9100	// This may be used to include null fields in Patch requests.
9101	NullFields []string `json:"-"`
9102}
9103
9104func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
9105	type NoMethod PosCustomBatchRequestEntry
9106	raw := NoMethod(*s)
9107	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9108}
9109
9110type PosCustomBatchResponse struct {
9111	// Entries: The result of the execution of the batch requests.
9112	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
9113
9114	// Kind: Identifies what kind of resource this is. Value: the fixed
9115	// string "content#posCustomBatchResponse".
9116	Kind string `json:"kind,omitempty"`
9117
9118	// ServerResponse contains the HTTP response code and headers from the
9119	// server.
9120	googleapi.ServerResponse `json:"-"`
9121
9122	// ForceSendFields is a list of field names (e.g. "Entries") to
9123	// unconditionally include in API requests. By default, fields with
9124	// empty values are omitted from API requests. However, any non-pointer,
9125	// non-interface field appearing in ForceSendFields will be sent to the
9126	// server regardless of whether the field is empty or not. This may be
9127	// used to include empty fields in Patch requests.
9128	ForceSendFields []string `json:"-"`
9129
9130	// NullFields is a list of field names (e.g. "Entries") to include in
9131	// API requests with the JSON null value. By default, fields with empty
9132	// values are omitted from API requests. However, any field with an
9133	// empty value appearing in NullFields will be sent to the server as
9134	// null. It is an error if a field in this list has a non-empty value.
9135	// This may be used to include null fields in Patch requests.
9136	NullFields []string `json:"-"`
9137}
9138
9139func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
9140	type NoMethod PosCustomBatchResponse
9141	raw := NoMethod(*s)
9142	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9143}
9144
9145type PosCustomBatchResponseEntry struct {
9146	// BatchId: The ID of the request entry to which this entry responds.
9147	BatchId int64 `json:"batchId,omitempty"`
9148
9149	// Errors: A list of errors defined if, and only if, the request failed.
9150	Errors *Errors `json:"errors,omitempty"`
9151
9152	// Inventory: The updated inventory information.
9153	Inventory *PosInventory `json:"inventory,omitempty"`
9154
9155	// Kind: Identifies what kind of resource this is. Value: the fixed
9156	// string "content#posCustomBatchResponseEntry"
9157	Kind string `json:"kind,omitempty"`
9158
9159	// Sale: The updated sale information.
9160	Sale *PosSale `json:"sale,omitempty"`
9161
9162	// Store: The retrieved or updated store information.
9163	Store *PosStore `json:"store,omitempty"`
9164
9165	// ForceSendFields is a list of field names (e.g. "BatchId") to
9166	// unconditionally include in API requests. By default, fields with
9167	// empty values are omitted from API requests. However, any non-pointer,
9168	// non-interface field appearing in ForceSendFields will be sent to the
9169	// server regardless of whether the field is empty or not. This may be
9170	// used to include empty fields in Patch requests.
9171	ForceSendFields []string `json:"-"`
9172
9173	// NullFields is a list of field names (e.g. "BatchId") to include in
9174	// API requests with the JSON null value. By default, fields with empty
9175	// values are omitted from API requests. However, any field with an
9176	// empty value appearing in NullFields will be sent to the server as
9177	// null. It is an error if a field in this list has a non-empty value.
9178	// This may be used to include null fields in Patch requests.
9179	NullFields []string `json:"-"`
9180}
9181
9182func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
9183	type NoMethod PosCustomBatchResponseEntry
9184	raw := NoMethod(*s)
9185	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9186}
9187
9188type PosDataProviders struct {
9189	// Country: Country code.
9190	Country string `json:"country,omitempty"`
9191
9192	// PosDataProviders: A list of POS data providers.
9193	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
9194
9195	// ForceSendFields is a list of field names (e.g. "Country") to
9196	// unconditionally include in API requests. By default, fields with
9197	// empty values are omitted from API requests. However, any non-pointer,
9198	// non-interface field appearing in ForceSendFields will be sent to the
9199	// server regardless of whether the field is empty or not. This may be
9200	// used to include empty fields in Patch requests.
9201	ForceSendFields []string `json:"-"`
9202
9203	// NullFields is a list of field names (e.g. "Country") to include in
9204	// API requests with the JSON null value. By default, fields with empty
9205	// values are omitted from API requests. However, any field with an
9206	// empty value appearing in NullFields will be sent to the server as
9207	// null. It is an error if a field in this list has a non-empty value.
9208	// This may be used to include null fields in Patch requests.
9209	NullFields []string `json:"-"`
9210}
9211
9212func (s *PosDataProviders) MarshalJSON() ([]byte, error) {
9213	type NoMethod PosDataProviders
9214	raw := NoMethod(*s)
9215	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9216}
9217
9218type PosDataProvidersPosDataProvider struct {
9219	// DisplayName: The display name of Pos data Provider.
9220	DisplayName string `json:"displayName,omitempty"`
9221
9222	// FullName: The full name of this POS data Provider.
9223	FullName string `json:"fullName,omitempty"`
9224
9225	// ProviderId: The ID of the account.
9226	ProviderId uint64 `json:"providerId,omitempty,string"`
9227
9228	// ForceSendFields is a list of field names (e.g. "DisplayName") to
9229	// unconditionally include in API requests. By default, fields with
9230	// empty values are omitted from API requests. However, any non-pointer,
9231	// non-interface field appearing in ForceSendFields will be sent to the
9232	// server regardless of whether the field is empty or not. This may be
9233	// used to include empty fields in Patch requests.
9234	ForceSendFields []string `json:"-"`
9235
9236	// NullFields is a list of field names (e.g. "DisplayName") to include
9237	// in API requests with the JSON null value. By default, fields with
9238	// empty values are omitted from API requests. However, any field with
9239	// an empty value appearing in NullFields will be sent to the server as
9240	// null. It is an error if a field in this list has a non-empty value.
9241	// This may be used to include null fields in Patch requests.
9242	NullFields []string `json:"-"`
9243}
9244
9245func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
9246	type NoMethod PosDataProvidersPosDataProvider
9247	raw := NoMethod(*s)
9248	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9249}
9250
9251// PosInventory: The absolute quantity of an item available at the given
9252// store.
9253type PosInventory struct {
9254	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9255	// the item.
9256	ContentLanguage string `json:"contentLanguage,omitempty"`
9257
9258	// Gtin: Global Trade Item Number.
9259	Gtin string `json:"gtin,omitempty"`
9260
9261	// ItemId: Required. A unique identifier for the item.
9262	ItemId string `json:"itemId,omitempty"`
9263
9264	// Kind: Identifies what kind of resource this is. Value: the fixed
9265	// string "content#posInventory"
9266	Kind string `json:"kind,omitempty"`
9267
9268	// Price: Required. The current price of the item.
9269	Price *Price `json:"price,omitempty"`
9270
9271	// Quantity: Required. The available quantity of the item.
9272	Quantity int64 `json:"quantity,omitempty,string"`
9273
9274	// StoreCode: Required. The identifier of the merchant's store. Either a
9275	// `storeCode` inserted via the API or the code of the store in Google
9276	// My Business.
9277	StoreCode string `json:"storeCode,omitempty"`
9278
9279	// TargetCountry: Required. The CLDR territory code for the item.
9280	TargetCountry string `json:"targetCountry,omitempty"`
9281
9282	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9283	Timestamp string `json:"timestamp,omitempty"`
9284
9285	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9286	// unconditionally include in API requests. By default, fields with
9287	// empty values are omitted from API requests. However, any non-pointer,
9288	// non-interface field appearing in ForceSendFields will be sent to the
9289	// server regardless of whether the field is empty or not. This may be
9290	// used to include empty fields in Patch requests.
9291	ForceSendFields []string `json:"-"`
9292
9293	// NullFields is a list of field names (e.g. "ContentLanguage") to
9294	// include in API requests with the JSON null value. By default, fields
9295	// with empty values are omitted from API requests. However, any field
9296	// with an empty value appearing in NullFields will be sent to the
9297	// server as null. It is an error if a field in this list has a
9298	// non-empty value. This may be used to include null fields in Patch
9299	// requests.
9300	NullFields []string `json:"-"`
9301}
9302
9303func (s *PosInventory) MarshalJSON() ([]byte, error) {
9304	type NoMethod PosInventory
9305	raw := NoMethod(*s)
9306	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9307}
9308
9309type PosInventoryRequest struct {
9310	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9311	// the item.
9312	ContentLanguage string `json:"contentLanguage,omitempty"`
9313
9314	// Gtin: Global Trade Item Number.
9315	Gtin string `json:"gtin,omitempty"`
9316
9317	// ItemId: Required. A unique identifier for the item.
9318	ItemId string `json:"itemId,omitempty"`
9319
9320	// Price: Required. The current price of the item.
9321	Price *Price `json:"price,omitempty"`
9322
9323	// Quantity: Required. The available quantity of the item.
9324	Quantity int64 `json:"quantity,omitempty,string"`
9325
9326	// StoreCode: Required. The identifier of the merchant's store. Either a
9327	// `storeCode` inserted via the API or the code of the store in Google
9328	// My Business.
9329	StoreCode string `json:"storeCode,omitempty"`
9330
9331	// TargetCountry: Required. The CLDR territory code for the item.
9332	TargetCountry string `json:"targetCountry,omitempty"`
9333
9334	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9335	Timestamp string `json:"timestamp,omitempty"`
9336
9337	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9338	// unconditionally include in API requests. By default, fields with
9339	// empty values are omitted from API requests. However, any non-pointer,
9340	// non-interface field appearing in ForceSendFields will be sent to the
9341	// server regardless of whether the field is empty or not. This may be
9342	// used to include empty fields in Patch requests.
9343	ForceSendFields []string `json:"-"`
9344
9345	// NullFields is a list of field names (e.g. "ContentLanguage") to
9346	// include in API requests with the JSON null value. By default, fields
9347	// with empty values are omitted from API requests. However, any field
9348	// with an empty value appearing in NullFields will be sent to the
9349	// server as null. It is an error if a field in this list has a
9350	// non-empty value. This may be used to include null fields in Patch
9351	// requests.
9352	NullFields []string `json:"-"`
9353}
9354
9355func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
9356	type NoMethod PosInventoryRequest
9357	raw := NoMethod(*s)
9358	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9359}
9360
9361type PosInventoryResponse struct {
9362	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9363	// the item.
9364	ContentLanguage string `json:"contentLanguage,omitempty"`
9365
9366	// Gtin: Global Trade Item Number.
9367	Gtin string `json:"gtin,omitempty"`
9368
9369	// ItemId: Required. A unique identifier for the item.
9370	ItemId string `json:"itemId,omitempty"`
9371
9372	// Kind: Identifies what kind of resource this is. Value: the fixed
9373	// string "content#posInventoryResponse".
9374	Kind string `json:"kind,omitempty"`
9375
9376	// Price: Required. The current price of the item.
9377	Price *Price `json:"price,omitempty"`
9378
9379	// Quantity: Required. The available quantity of the item.
9380	Quantity int64 `json:"quantity,omitempty,string"`
9381
9382	// StoreCode: Required. The identifier of the merchant's store. Either a
9383	// `storeCode` inserted via the API or the code of the store in Google
9384	// My Business.
9385	StoreCode string `json:"storeCode,omitempty"`
9386
9387	// TargetCountry: Required. The CLDR territory code for the item.
9388	TargetCountry string `json:"targetCountry,omitempty"`
9389
9390	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9391	Timestamp string `json:"timestamp,omitempty"`
9392
9393	// ServerResponse contains the HTTP response code and headers from the
9394	// server.
9395	googleapi.ServerResponse `json:"-"`
9396
9397	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9398	// unconditionally include in API requests. By default, fields with
9399	// empty values are omitted from API requests. However, any non-pointer,
9400	// non-interface field appearing in ForceSendFields will be sent to the
9401	// server regardless of whether the field is empty or not. This may be
9402	// used to include empty fields in Patch requests.
9403	ForceSendFields []string `json:"-"`
9404
9405	// NullFields is a list of field names (e.g. "ContentLanguage") to
9406	// include in API requests with the JSON null value. By default, fields
9407	// with empty values are omitted from API requests. However, any field
9408	// with an empty value appearing in NullFields will be sent to the
9409	// server as null. It is an error if a field in this list has a
9410	// non-empty value. This may be used to include null fields in Patch
9411	// requests.
9412	NullFields []string `json:"-"`
9413}
9414
9415func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
9416	type NoMethod PosInventoryResponse
9417	raw := NoMethod(*s)
9418	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9419}
9420
9421type PosListResponse struct {
9422	// Kind: Identifies what kind of resource this is. Value: the fixed
9423	// string "content#posListResponse".
9424	Kind string `json:"kind,omitempty"`
9425
9426	Resources []*PosStore `json:"resources,omitempty"`
9427
9428	// ServerResponse contains the HTTP response code and headers from the
9429	// server.
9430	googleapi.ServerResponse `json:"-"`
9431
9432	// ForceSendFields is a list of field names (e.g. "Kind") to
9433	// unconditionally include in API requests. By default, fields with
9434	// empty values are omitted from API requests. However, any non-pointer,
9435	// non-interface field appearing in ForceSendFields will be sent to the
9436	// server regardless of whether the field is empty or not. This may be
9437	// used to include empty fields in Patch requests.
9438	ForceSendFields []string `json:"-"`
9439
9440	// NullFields is a list of field names (e.g. "Kind") to include in API
9441	// requests with the JSON null value. By default, fields with empty
9442	// values are omitted from API requests. However, any field with an
9443	// empty value appearing in NullFields will be sent to the server as
9444	// null. It is an error if a field in this list has a non-empty value.
9445	// This may be used to include null fields in Patch requests.
9446	NullFields []string `json:"-"`
9447}
9448
9449func (s *PosListResponse) MarshalJSON() ([]byte, error) {
9450	type NoMethod PosListResponse
9451	raw := NoMethod(*s)
9452	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9453}
9454
9455// PosSale: The change of the available quantity of an item at the given
9456// store.
9457type PosSale struct {
9458	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9459	// the item.
9460	ContentLanguage string `json:"contentLanguage,omitempty"`
9461
9462	// Gtin: Global Trade Item Number.
9463	Gtin string `json:"gtin,omitempty"`
9464
9465	// ItemId: Required. A unique identifier for the item.
9466	ItemId string `json:"itemId,omitempty"`
9467
9468	// Kind: Identifies what kind of resource this is. Value: the fixed
9469	// string "content#posSale"
9470	Kind string `json:"kind,omitempty"`
9471
9472	// Price: Required. The price of the item.
9473	Price *Price `json:"price,omitempty"`
9474
9475	// Quantity: Required. The relative change of the available quantity.
9476	// Negative for items returned.
9477	Quantity int64 `json:"quantity,omitempty,string"`
9478
9479	// SaleId: A unique ID to group items from the same sale event.
9480	SaleId string `json:"saleId,omitempty"`
9481
9482	// StoreCode: Required. The identifier of the merchant's store. Either a
9483	// `storeCode` inserted via the API or the code of the store in Google
9484	// My Business.
9485	StoreCode string `json:"storeCode,omitempty"`
9486
9487	// TargetCountry: Required. The CLDR territory code for the item.
9488	TargetCountry string `json:"targetCountry,omitempty"`
9489
9490	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9491	Timestamp string `json:"timestamp,omitempty"`
9492
9493	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9494	// unconditionally include in API requests. By default, fields with
9495	// empty values are omitted from API requests. However, any non-pointer,
9496	// non-interface field appearing in ForceSendFields will be sent to the
9497	// server regardless of whether the field is empty or not. This may be
9498	// used to include empty fields in Patch requests.
9499	ForceSendFields []string `json:"-"`
9500
9501	// NullFields is a list of field names (e.g. "ContentLanguage") to
9502	// include in API requests with the JSON null value. By default, fields
9503	// with empty values are omitted from API requests. However, any field
9504	// with an empty value appearing in NullFields will be sent to the
9505	// server as null. It is an error if a field in this list has a
9506	// non-empty value. This may be used to include null fields in Patch
9507	// requests.
9508	NullFields []string `json:"-"`
9509}
9510
9511func (s *PosSale) MarshalJSON() ([]byte, error) {
9512	type NoMethod PosSale
9513	raw := NoMethod(*s)
9514	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9515}
9516
9517type PosSaleRequest struct {
9518	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9519	// the item.
9520	ContentLanguage string `json:"contentLanguage,omitempty"`
9521
9522	// Gtin: Global Trade Item Number.
9523	Gtin string `json:"gtin,omitempty"`
9524
9525	// ItemId: Required. A unique identifier for the item.
9526	ItemId string `json:"itemId,omitempty"`
9527
9528	// Price: Required. The price of the item.
9529	Price *Price `json:"price,omitempty"`
9530
9531	// Quantity: Required. The relative change of the available quantity.
9532	// Negative for items returned.
9533	Quantity int64 `json:"quantity,omitempty,string"`
9534
9535	// SaleId: A unique ID to group items from the same sale event.
9536	SaleId string `json:"saleId,omitempty"`
9537
9538	// StoreCode: Required. The identifier of the merchant's store. Either a
9539	// `storeCode` inserted via the API or the code of the store in Google
9540	// My Business.
9541	StoreCode string `json:"storeCode,omitempty"`
9542
9543	// TargetCountry: Required. The CLDR territory code for the item.
9544	TargetCountry string `json:"targetCountry,omitempty"`
9545
9546	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9547	Timestamp string `json:"timestamp,omitempty"`
9548
9549	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9550	// unconditionally include in API requests. By default, fields with
9551	// empty values are omitted from API requests. However, any non-pointer,
9552	// non-interface field appearing in ForceSendFields will be sent to the
9553	// server regardless of whether the field is empty or not. This may be
9554	// used to include empty fields in Patch requests.
9555	ForceSendFields []string `json:"-"`
9556
9557	// NullFields is a list of field names (e.g. "ContentLanguage") to
9558	// include in API requests with the JSON null value. By default, fields
9559	// with empty values are omitted from API requests. However, any field
9560	// with an empty value appearing in NullFields will be sent to the
9561	// server as null. It is an error if a field in this list has a
9562	// non-empty value. This may be used to include null fields in Patch
9563	// requests.
9564	NullFields []string `json:"-"`
9565}
9566
9567func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
9568	type NoMethod PosSaleRequest
9569	raw := NoMethod(*s)
9570	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9571}
9572
9573type PosSaleResponse struct {
9574	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9575	// the item.
9576	ContentLanguage string `json:"contentLanguage,omitempty"`
9577
9578	// Gtin: Global Trade Item Number.
9579	Gtin string `json:"gtin,omitempty"`
9580
9581	// ItemId: Required. A unique identifier for the item.
9582	ItemId string `json:"itemId,omitempty"`
9583
9584	// Kind: Identifies what kind of resource this is. Value: the fixed
9585	// string "content#posSaleResponse".
9586	Kind string `json:"kind,omitempty"`
9587
9588	// Price: Required. The price of the item.
9589	Price *Price `json:"price,omitempty"`
9590
9591	// Quantity: Required. The relative change of the available quantity.
9592	// Negative for items returned.
9593	Quantity int64 `json:"quantity,omitempty,string"`
9594
9595	// SaleId: A unique ID to group items from the same sale event.
9596	SaleId string `json:"saleId,omitempty"`
9597
9598	// StoreCode: Required. The identifier of the merchant's store. Either a
9599	// `storeCode` inserted via the API or the code of the store in Google
9600	// My Business.
9601	StoreCode string `json:"storeCode,omitempty"`
9602
9603	// TargetCountry: Required. The CLDR territory code for the item.
9604	TargetCountry string `json:"targetCountry,omitempty"`
9605
9606	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9607	Timestamp string `json:"timestamp,omitempty"`
9608
9609	// ServerResponse contains the HTTP response code and headers from the
9610	// server.
9611	googleapi.ServerResponse `json:"-"`
9612
9613	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9614	// unconditionally include in API requests. By default, fields with
9615	// empty values are omitted from API requests. However, any non-pointer,
9616	// non-interface field appearing in ForceSendFields will be sent to the
9617	// server regardless of whether the field is empty or not. This may be
9618	// used to include empty fields in Patch requests.
9619	ForceSendFields []string `json:"-"`
9620
9621	// NullFields is a list of field names (e.g. "ContentLanguage") to
9622	// include in API requests with the JSON null value. By default, fields
9623	// with empty values are omitted from API requests. However, any field
9624	// with an empty value appearing in NullFields will be sent to the
9625	// server as null. It is an error if a field in this list has a
9626	// non-empty value. This may be used to include null fields in Patch
9627	// requests.
9628	NullFields []string `json:"-"`
9629}
9630
9631func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
9632	type NoMethod PosSaleResponse
9633	raw := NoMethod(*s)
9634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9635}
9636
9637// PosStore: Store resource.
9638type PosStore struct {
9639	// Kind: Identifies what kind of resource this is. Value: the fixed
9640	// string "content#posStore"
9641	Kind string `json:"kind,omitempty"`
9642
9643	// StoreAddress: Required. The street address of the store.
9644	StoreAddress string `json:"storeAddress,omitempty"`
9645
9646	// StoreCode: Required. A store identifier that is unique for the given
9647	// merchant.
9648	StoreCode string `json:"storeCode,omitempty"`
9649
9650	// ServerResponse contains the HTTP response code and headers from the
9651	// server.
9652	googleapi.ServerResponse `json:"-"`
9653
9654	// ForceSendFields is a list of field names (e.g. "Kind") to
9655	// unconditionally include in API requests. By default, fields with
9656	// empty values are omitted from API requests. However, any non-pointer,
9657	// non-interface field appearing in ForceSendFields will be sent to the
9658	// server regardless of whether the field is empty or not. This may be
9659	// used to include empty fields in Patch requests.
9660	ForceSendFields []string `json:"-"`
9661
9662	// NullFields is a list of field names (e.g. "Kind") to include in API
9663	// requests with the JSON null value. By default, fields with empty
9664	// values are omitted from API requests. However, any field with an
9665	// empty value appearing in NullFields will be sent to the server as
9666	// null. It is an error if a field in this list has a non-empty value.
9667	// This may be used to include null fields in Patch requests.
9668	NullFields []string `json:"-"`
9669}
9670
9671func (s *PosStore) MarshalJSON() ([]byte, error) {
9672	type NoMethod PosStore
9673	raw := NoMethod(*s)
9674	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9675}
9676
9677type PostalCodeGroup struct {
9678	// Country: The CLDR territory code of the country the postal code group
9679	// applies to. Required.
9680	Country string `json:"country,omitempty"`
9681
9682	// Name: The name of the postal code group, referred to in headers.
9683	// Required.
9684	Name string `json:"name,omitempty"`
9685
9686	// PostalCodeRanges: A range of postal codes. Required.
9687	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
9688
9689	// ForceSendFields is a list of field names (e.g. "Country") to
9690	// unconditionally include in API requests. By default, fields with
9691	// empty values are omitted from API requests. However, any non-pointer,
9692	// non-interface field appearing in ForceSendFields will be sent to the
9693	// server regardless of whether the field is empty or not. This may be
9694	// used to include empty fields in Patch requests.
9695	ForceSendFields []string `json:"-"`
9696
9697	// NullFields is a list of field names (e.g. "Country") to include in
9698	// API requests with the JSON null value. By default, fields with empty
9699	// values are omitted from API requests. However, any field with an
9700	// empty value appearing in NullFields will be sent to the server as
9701	// null. It is an error if a field in this list has a non-empty value.
9702	// This may be used to include null fields in Patch requests.
9703	NullFields []string `json:"-"`
9704}
9705
9706func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
9707	type NoMethod PostalCodeGroup
9708	raw := NoMethod(*s)
9709	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9710}
9711
9712type PostalCodeRange struct {
9713	// PostalCodeRangeBegin: A postal code or a pattern of the form
9714	// `prefix*` denoting the inclusive lower bound of the range defining
9715	// the area. Examples values: "94108", "9410*", "9*". Required.
9716	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
9717
9718	// PostalCodeRangeEnd: A postal code or a pattern of the form `prefix*`
9719	// denoting the inclusive upper bound of the range defining the area. It
9720	// must have the same length as `postalCodeRangeBegin`: if
9721	// `postalCodeRangeBegin` is a postal code then `postalCodeRangeEnd`
9722	// must be a postal code too; if `postalCodeRangeBegin` is a pattern
9723	// then `postalCodeRangeEnd` must be a pattern with the same prefix
9724	// length. Optional: if not set, then the area is defined as being all
9725	// the postal codes matching `postalCodeRangeBegin`.
9726	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
9727
9728	// ForceSendFields is a list of field names (e.g.
9729	// "PostalCodeRangeBegin") to unconditionally include in API requests.
9730	// By default, fields with empty values are omitted from API requests.
9731	// However, any non-pointer, non-interface field appearing in
9732	// ForceSendFields will be sent to the server regardless of whether the
9733	// field is empty or not. This may be used to include empty fields in
9734	// Patch requests.
9735	ForceSendFields []string `json:"-"`
9736
9737	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
9738	// include in API requests with the JSON null value. By default, fields
9739	// with empty values are omitted from API requests. However, any field
9740	// with an empty value appearing in NullFields will be sent to the
9741	// server as null. It is an error if a field in this list has a
9742	// non-empty value. This may be used to include null fields in Patch
9743	// requests.
9744	NullFields []string `json:"-"`
9745}
9746
9747func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
9748	type NoMethod PostalCodeRange
9749	raw := NoMethod(*s)
9750	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9751}
9752
9753type Price struct {
9754	// Currency: The currency of the price.
9755	Currency string `json:"currency,omitempty"`
9756
9757	// Value: The price represented as a number.
9758	Value string `json:"value,omitempty"`
9759
9760	// ForceSendFields is a list of field names (e.g. "Currency") to
9761	// unconditionally include in API requests. By default, fields with
9762	// empty values are omitted from API requests. However, any non-pointer,
9763	// non-interface field appearing in ForceSendFields will be sent to the
9764	// server regardless of whether the field is empty or not. This may be
9765	// used to include empty fields in Patch requests.
9766	ForceSendFields []string `json:"-"`
9767
9768	// NullFields is a list of field names (e.g. "Currency") to include in
9769	// API requests with the JSON null value. By default, fields with empty
9770	// values are omitted from API requests. However, any field with an
9771	// empty value appearing in NullFields will be sent to the server as
9772	// null. It is an error if a field in this list has a non-empty value.
9773	// This may be used to include null fields in Patch requests.
9774	NullFields []string `json:"-"`
9775}
9776
9777func (s *Price) MarshalJSON() ([]byte, error) {
9778	type NoMethod Price
9779	raw := NoMethod(*s)
9780	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9781}
9782
9783// PriceAmount: The price represented as a number and currency.
9784type PriceAmount struct {
9785	// Currency: The currency of the price.
9786	Currency string `json:"currency,omitempty"`
9787
9788	// Value: The price represented as a number.
9789	Value string `json:"value,omitempty"`
9790
9791	// ForceSendFields is a list of field names (e.g. "Currency") to
9792	// unconditionally include in API requests. By default, fields with
9793	// empty values are omitted from API requests. However, any non-pointer,
9794	// non-interface field appearing in ForceSendFields will be sent to the
9795	// server regardless of whether the field is empty or not. This may be
9796	// used to include empty fields in Patch requests.
9797	ForceSendFields []string `json:"-"`
9798
9799	// NullFields is a list of field names (e.g. "Currency") to include in
9800	// API requests with the JSON null value. By default, fields with empty
9801	// values are omitted from API requests. However, any field with an
9802	// empty value appearing in NullFields will be sent to the server as
9803	// null. It is an error if a field in this list has a non-empty value.
9804	// This may be used to include null fields in Patch requests.
9805	NullFields []string `json:"-"`
9806}
9807
9808func (s *PriceAmount) MarshalJSON() ([]byte, error) {
9809	type NoMethod PriceAmount
9810	raw := NoMethod(*s)
9811	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9812}
9813
9814// Product:  Required product attributes are primarily defined by the
9815// products data specification. See the Products Data Specification Help
9816// Center article for information. Some attributes are country-specific,
9817// so make sure you select the appropriate country in the drop-down
9818// selector at the top of the page. Product data. After inserting,
9819// updating, or deleting a product, it may take several minutes before
9820// changes take effect.
9821type Product struct {
9822	// AdditionalImageLinks: Additional URLs of images of the item.
9823	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
9824
9825	// AdsGrouping: Used to group items in an arbitrary way. Only for CPA%,
9826	// discouraged otherwise.
9827	AdsGrouping string `json:"adsGrouping,omitempty"`
9828
9829	// AdsLabels: Similar to ads_grouping, but only works on CPC.
9830	AdsLabels []string `json:"adsLabels,omitempty"`
9831
9832	// AdsRedirect: Allows advertisers to override the item URL when the
9833	// product is shown within the context of Product Ads.
9834	AdsRedirect string `json:"adsRedirect,omitempty"`
9835
9836	// Adult: Should be set to true if the item is targeted towards adults.
9837	Adult bool `json:"adult,omitempty"`
9838
9839	// AgeGroup: Target age group of the item.
9840	AgeGroup string `json:"ageGroup,omitempty"`
9841
9842	// Availability: Availability status of the item.
9843	Availability string `json:"availability,omitempty"`
9844
9845	// AvailabilityDate: The day a pre-ordered product becomes available for
9846	// delivery, in ISO 8601 format.
9847	AvailabilityDate string `json:"availabilityDate,omitempty"`
9848
9849	// Brand: Brand of the item.
9850	Brand string `json:"brand,omitempty"`
9851
9852	// CanonicalLink: URL for the canonical version of your item's landing
9853	// page.
9854	CanonicalLink string `json:"canonicalLink,omitempty"`
9855
9856	// Channel: Required. The item's channel (online or local). Acceptable
9857	// values are: - "local" - "online"
9858	Channel string `json:"channel,omitempty"`
9859
9860	// Color: Color of the item.
9861	Color string `json:"color,omitempty"`
9862
9863	// Condition: Condition or state of the item.
9864	Condition string `json:"condition,omitempty"`
9865
9866	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9867	// the item.
9868	ContentLanguage string `json:"contentLanguage,omitempty"`
9869
9870	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
9871	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
9872
9873	// CustomAttributes: A list of custom (merchant-provided) attributes. It
9874	// can also be used for submitting any attribute of the feed
9875	// specification in its generic form (e.g., `{ "name": "size type",
9876	// "value": "regular" }`). This is useful for submitting attributes not
9877	// explicitly exposed by the API, such as additional attributes used for
9878	// Buy on Google (formerly known as Shopping Actions).
9879	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
9880
9881	// CustomLabel0: Custom label 0 for custom grouping of items in a
9882	// Shopping campaign.
9883	CustomLabel0 string `json:"customLabel0,omitempty"`
9884
9885	// CustomLabel1: Custom label 1 for custom grouping of items in a
9886	// Shopping campaign.
9887	CustomLabel1 string `json:"customLabel1,omitempty"`
9888
9889	// CustomLabel2: Custom label 2 for custom grouping of items in a
9890	// Shopping campaign.
9891	CustomLabel2 string `json:"customLabel2,omitempty"`
9892
9893	// CustomLabel3: Custom label 3 for custom grouping of items in a
9894	// Shopping campaign.
9895	CustomLabel3 string `json:"customLabel3,omitempty"`
9896
9897	// CustomLabel4: Custom label 4 for custom grouping of items in a
9898	// Shopping campaign.
9899	CustomLabel4 string `json:"customLabel4,omitempty"`
9900
9901	// Description: Description of the item.
9902	Description string `json:"description,omitempty"`
9903
9904	// DisplayAdsId: An identifier for an item for dynamic remarketing
9905	// campaigns.
9906	DisplayAdsId string `json:"displayAdsId,omitempty"`
9907
9908	// DisplayAdsLink: URL directly to your item's landing page for dynamic
9909	// remarketing campaigns.
9910	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
9911
9912	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
9913	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
9914
9915	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
9916	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
9917
9918	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
9919	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
9920
9921	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
9922	// directive 2010/30/EU.
9923	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
9924
9925	// ExcludedDestinations: The list of destinations to exclude for this
9926	// target (corresponds to unchecked check boxes in Merchant Center).
9927	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
9928
9929	// ExpirationDate: Date on which the item should expire, as specified
9930	// upon insertion, in ISO 8601 format. The actual expiration date in
9931	// Google Shopping is exposed in `productstatuses` as
9932	// `googleExpirationDate` and might be earlier if `expirationDate` is
9933	// too far in the future.
9934	ExpirationDate string `json:"expirationDate,omitempty"`
9935
9936	// Gender: Target gender of the item.
9937	Gender string `json:"gender,omitempty"`
9938
9939	// GoogleProductCategory: Google's category of the item (see Google
9940	// product taxonomy).
9941	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
9942
9943	// Gtin: Global Trade Item Number (GTIN) of the item.
9944	Gtin string `json:"gtin,omitempty"`
9945
9946	// Id: The REST ID of the product. Content API methods that operate on
9947	// products take this as their `productId` parameter. The REST ID for a
9948	// product is of the form channel:contentLanguage: targetCountry:
9949	// offerId.
9950	Id string `json:"id,omitempty"`
9951
9952	// IdentifierExists: False when the item does not have unique product
9953	// identifiers appropriate to its category, such as GTIN, MPN, and
9954	// brand. Required according to the Unique Product Identifier Rules for
9955	// all target countries except for Canada.
9956	IdentifierExists bool `json:"identifierExists,omitempty"`
9957
9958	// ImageLink: URL of an image of the item.
9959	ImageLink string `json:"imageLink,omitempty"`
9960
9961	// IncludedDestinations: The list of destinations to include for this
9962	// target (corresponds to checked check boxes in Merchant Center).
9963	// Default destinations are always included unless provided in
9964	// `excludedDestinations`.
9965	IncludedDestinations []string `json:"includedDestinations,omitempty"`
9966
9967	// Installment: Number and amount of installments to pay for an item.
9968	Installment *Installment `json:"installment,omitempty"`
9969
9970	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
9971	// a custom grouping of different products sold by a merchant for a
9972	// single price.
9973	IsBundle bool `json:"isBundle,omitempty"`
9974
9975	// ItemGroupId: Shared identifier for all variants of the same product.
9976	ItemGroupId string `json:"itemGroupId,omitempty"`
9977
9978	// Kind: Identifies what kind of resource this is. Value: the fixed
9979	// string "content#product"
9980	Kind string `json:"kind,omitempty"`
9981
9982	// Link: URL directly linking to your item's page on your website.
9983	Link string `json:"link,omitempty"`
9984
9985	// LoyaltyPoints: Loyalty points that users receive after purchasing the
9986	// item. Japan only.
9987	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
9988
9989	// Material: The material of which the item is made.
9990	Material string `json:"material,omitempty"`
9991
9992	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
9993	// EU directive 2010/30/EU.
9994	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
9995
9996	// MaxHandlingTime: Maximal product handling time (in business days).
9997	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
9998
9999	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
10000	// EU directive 2010/30/EU.
10001	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
10002
10003	// MinHandlingTime: Minimal product handling time (in business days).
10004	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
10005
10006	// MobileLink: URL for the mobile-optimized version of your item's
10007	// landing page.
10008	MobileLink string `json:"mobileLink,omitempty"`
10009
10010	// Mpn: Manufacturer Part Number (MPN) of the item.
10011	Mpn string `json:"mpn,omitempty"`
10012
10013	// Multipack: The number of identical products in a merchant-defined
10014	// multipack.
10015	Multipack int64 `json:"multipack,omitempty,string"`
10016
10017	// OfferId: Required. A unique identifier for the item. Leading and
10018	// trailing whitespaces are stripped and multiple whitespaces are
10019	// replaced by a single whitespace upon submission. Only valid unicode
10020	// characters are accepted. See the products feed specification for
10021	// details. *Note:* Content API methods that operate on products take
10022	// the REST ID of the product, *not* this identifier.
10023	OfferId string `json:"offerId,omitempty"`
10024
10025	// Pattern: The item's pattern (e.g. polka dots).
10026	Pattern string `json:"pattern,omitempty"`
10027
10028	// Price: Price of the item.
10029	Price *Price `json:"price,omitempty"`
10030
10031	// ProductDetails: Technical specification or additional product
10032	// details.
10033	ProductDetails []*ProductProductDetail `json:"productDetails,omitempty"`
10034
10035	// ProductHighlights: Bullet points describing the most relevant
10036	// highlights of a product.
10037	ProductHighlights []string `json:"productHighlights,omitempty"`
10038
10039	// ProductTypes: Categories of the item (formatted as in products data
10040	// specification).
10041	ProductTypes []string `json:"productTypes,omitempty"`
10042
10043	// PromotionIds: The unique ID of a promotion.
10044	PromotionIds []string `json:"promotionIds,omitempty"`
10045
10046	// SalePrice: Advertised sale price of the item.
10047	SalePrice *Price `json:"salePrice,omitempty"`
10048
10049	// SalePriceEffectiveDate: Date range during which the item is on sale
10050	// (see products data specification ).
10051	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
10052
10053	// SellOnGoogleQuantity: The quantity of the product that is available
10054	// for selling on Google. Supported only for online products.
10055	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
10056
10057	// Shipping: Shipping rules.
10058	Shipping []*ProductShipping `json:"shipping,omitempty"`
10059
10060	// ShippingHeight: Height of the item for shipping.
10061	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
10062
10063	// ShippingLabel: The shipping label of the product, used to group
10064	// product in account-level shipping rules.
10065	ShippingLabel string `json:"shippingLabel,omitempty"`
10066
10067	// ShippingLength: Length of the item for shipping.
10068	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
10069
10070	// ShippingWeight: Weight of the item for shipping.
10071	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
10072
10073	// ShippingWidth: Width of the item for shipping.
10074	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
10075
10076	// ShoppingAdsExcludedCountries: List of country codes (ISO 3166-1
10077	// alpha-2) to exclude the offer from Shopping Ads destination.
10078	// Countries from this list are removed from countries configured in MC
10079	// feed settings.
10080	ShoppingAdsExcludedCountries []string `json:"shoppingAdsExcludedCountries,omitempty"`
10081
10082	// SizeSystem: System in which the size is specified. Recommended for
10083	// apparel items.
10084	SizeSystem string `json:"sizeSystem,omitempty"`
10085
10086	// SizeType: The cut of the item. Recommended for apparel items.
10087	SizeType string `json:"sizeType,omitempty"`
10088
10089	// Sizes: Size of the item. Only one value is allowed. For variants with
10090	// different sizes, insert a separate product for each size with the
10091	// same `itemGroupId` value (see size definition).
10092	Sizes []string `json:"sizes,omitempty"`
10093
10094	// Source: The source of the offer, i.e., how the offer was created.
10095	// Acceptable values are: - "api" - "crawl" - "feed"
10096	Source string `json:"source,omitempty"`
10097
10098	// SubscriptionCost: Number of periods (months or years) and amount of
10099	// payment per period for an item with an associated subscription
10100	// contract.
10101	SubscriptionCost *ProductSubscriptionCost `json:"subscriptionCost,omitempty"`
10102
10103	// TargetCountry: Required. The CLDR territory code for the item.
10104	TargetCountry string `json:"targetCountry,omitempty"`
10105
10106	// TaxCategory: The tax category of the product, used to configure
10107	// detailed tax nexus in account-level tax settings.
10108	TaxCategory string `json:"taxCategory,omitempty"`
10109
10110	// Taxes: Tax information.
10111	Taxes []*ProductTax `json:"taxes,omitempty"`
10112
10113	// Title: Title of the item.
10114	Title string `json:"title,omitempty"`
10115
10116	// TransitTimeLabel: The transit time label of the product, used to
10117	// group product in account-level transit time tables.
10118	TransitTimeLabel string `json:"transitTimeLabel,omitempty"`
10119
10120	// UnitPricingBaseMeasure: The preference of the denominator of the unit
10121	// price.
10122	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
10123
10124	// UnitPricingMeasure: The measure and dimension of an item.
10125	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
10126
10127	// ServerResponse contains the HTTP response code and headers from the
10128	// server.
10129	googleapi.ServerResponse `json:"-"`
10130
10131	// ForceSendFields is a list of field names (e.g.
10132	// "AdditionalImageLinks") to unconditionally include in API requests.
10133	// By default, fields with empty values are omitted from API requests.
10134	// However, any non-pointer, non-interface field appearing in
10135	// ForceSendFields will be sent to the server regardless of whether the
10136	// field is empty or not. This may be used to include empty fields in
10137	// Patch requests.
10138	ForceSendFields []string `json:"-"`
10139
10140	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
10141	// include in API requests with the JSON null value. By default, fields
10142	// with empty values are omitted from API requests. However, any field
10143	// with an empty value appearing in NullFields will be sent to the
10144	// server as null. It is an error if a field in this list has a
10145	// non-empty value. This may be used to include null fields in Patch
10146	// requests.
10147	NullFields []string `json:"-"`
10148}
10149
10150func (s *Product) MarshalJSON() ([]byte, error) {
10151	type NoMethod Product
10152	raw := NoMethod(*s)
10153	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10154}
10155
10156func (s *Product) UnmarshalJSON(data []byte) error {
10157	type NoMethod Product
10158	var s1 struct {
10159		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
10160		*NoMethod
10161	}
10162	s1.NoMethod = (*NoMethod)(s)
10163	if err := json.Unmarshal(data, &s1); err != nil {
10164		return err
10165	}
10166	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
10167	return nil
10168}
10169
10170type ProductAmount struct {
10171	// PriceAmount: The pre-tax or post-tax price depending on the location
10172	// of the order.
10173	PriceAmount *Price `json:"priceAmount,omitempty"`
10174
10175	// RemittedTaxAmount: Remitted tax value.
10176	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
10177
10178	// TaxAmount: Tax value.
10179	TaxAmount *Price `json:"taxAmount,omitempty"`
10180
10181	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
10182	// unconditionally include in API requests. By default, fields with
10183	// empty values are omitted from API requests. However, any non-pointer,
10184	// non-interface field appearing in ForceSendFields will be sent to the
10185	// server regardless of whether the field is empty or not. This may be
10186	// used to include empty fields in Patch requests.
10187	ForceSendFields []string `json:"-"`
10188
10189	// NullFields is a list of field names (e.g. "PriceAmount") to include
10190	// in API requests with the JSON null value. By default, fields with
10191	// empty values are omitted from API requests. However, any field with
10192	// an empty value appearing in NullFields will be sent to the server as
10193	// null. It is an error if a field in this list has a non-empty value.
10194	// This may be used to include null fields in Patch requests.
10195	NullFields []string `json:"-"`
10196}
10197
10198func (s *ProductAmount) MarshalJSON() ([]byte, error) {
10199	type NoMethod ProductAmount
10200	raw := NoMethod(*s)
10201	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10202}
10203
10204type ProductProductDetail struct {
10205	// AttributeName: The name of the product detail.
10206	AttributeName string `json:"attributeName,omitempty"`
10207
10208	// AttributeValue: The value of the product detail.
10209	AttributeValue string `json:"attributeValue,omitempty"`
10210
10211	// SectionName: The section header used to group a set of product
10212	// details.
10213	SectionName string `json:"sectionName,omitempty"`
10214
10215	// ForceSendFields is a list of field names (e.g. "AttributeName") to
10216	// unconditionally include in API requests. By default, fields with
10217	// empty values are omitted from API requests. However, any non-pointer,
10218	// non-interface field appearing in ForceSendFields will be sent to the
10219	// server regardless of whether the field is empty or not. This may be
10220	// used to include empty fields in Patch requests.
10221	ForceSendFields []string `json:"-"`
10222
10223	// NullFields is a list of field names (e.g. "AttributeName") to include
10224	// in API requests with the JSON null value. By default, fields with
10225	// empty values are omitted from API requests. However, any field with
10226	// an empty value appearing in NullFields will be sent to the server as
10227	// null. It is an error if a field in this list has a non-empty value.
10228	// This may be used to include null fields in Patch requests.
10229	NullFields []string `json:"-"`
10230}
10231
10232func (s *ProductProductDetail) MarshalJSON() ([]byte, error) {
10233	type NoMethod ProductProductDetail
10234	raw := NoMethod(*s)
10235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10236}
10237
10238type ProductShipping struct {
10239	// Country: The CLDR territory code of the country to which an item will
10240	// ship.
10241	Country string `json:"country,omitempty"`
10242
10243	// LocationGroupName: The location where the shipping is applicable,
10244	// represented by a location group name.
10245	LocationGroupName string `json:"locationGroupName,omitempty"`
10246
10247	// LocationId: The numeric ID of a location that the shipping rate
10248	// applies to as defined in the AdWords API.
10249	LocationId int64 `json:"locationId,omitempty,string"`
10250
10251	// PostalCode: The postal code range that the shipping rate applies to,
10252	// represented by a postal code, a postal code prefix followed by a *
10253	// wildcard, a range between two postal codes or two postal code
10254	// prefixes of equal length.
10255	PostalCode string `json:"postalCode,omitempty"`
10256
10257	// Price: Fixed shipping price, represented as a number.
10258	Price *Price `json:"price,omitempty"`
10259
10260	// Region: The geographic region to which a shipping rate applies.
10261	Region string `json:"region,omitempty"`
10262
10263	// Service: A free-form description of the service class or delivery
10264	// speed.
10265	Service string `json:"service,omitempty"`
10266
10267	// ForceSendFields is a list of field names (e.g. "Country") to
10268	// unconditionally include in API requests. By default, fields with
10269	// empty values are omitted from API requests. However, any non-pointer,
10270	// non-interface field appearing in ForceSendFields will be sent to the
10271	// server regardless of whether the field is empty or not. This may be
10272	// used to include empty fields in Patch requests.
10273	ForceSendFields []string `json:"-"`
10274
10275	// NullFields is a list of field names (e.g. "Country") to include in
10276	// API requests with the JSON null value. By default, fields with empty
10277	// values are omitted from API requests. However, any field with an
10278	// empty value appearing in NullFields will be sent to the server as
10279	// null. It is an error if a field in this list has a non-empty value.
10280	// This may be used to include null fields in Patch requests.
10281	NullFields []string `json:"-"`
10282}
10283
10284func (s *ProductShipping) MarshalJSON() ([]byte, error) {
10285	type NoMethod ProductShipping
10286	raw := NoMethod(*s)
10287	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10288}
10289
10290type ProductShippingDimension struct {
10291	// Unit: The unit of value.
10292	Unit string `json:"unit,omitempty"`
10293
10294	// Value: The dimension of the product used to calculate the shipping
10295	// cost of the item.
10296	Value float64 `json:"value,omitempty"`
10297
10298	// ForceSendFields is a list of field names (e.g. "Unit") to
10299	// unconditionally include in API requests. By default, fields with
10300	// empty values are omitted from API requests. However, any non-pointer,
10301	// non-interface field appearing in ForceSendFields will be sent to the
10302	// server regardless of whether the field is empty or not. This may be
10303	// used to include empty fields in Patch requests.
10304	ForceSendFields []string `json:"-"`
10305
10306	// NullFields is a list of field names (e.g. "Unit") to include in API
10307	// requests with the JSON null value. By default, fields with empty
10308	// values are omitted from API requests. However, any field with an
10309	// empty value appearing in NullFields will be sent to the server as
10310	// null. It is an error if a field in this list has a non-empty value.
10311	// This may be used to include null fields in Patch requests.
10312	NullFields []string `json:"-"`
10313}
10314
10315func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
10316	type NoMethod ProductShippingDimension
10317	raw := NoMethod(*s)
10318	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10319}
10320
10321func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
10322	type NoMethod ProductShippingDimension
10323	var s1 struct {
10324		Value gensupport.JSONFloat64 `json:"value"`
10325		*NoMethod
10326	}
10327	s1.NoMethod = (*NoMethod)(s)
10328	if err := json.Unmarshal(data, &s1); err != nil {
10329		return err
10330	}
10331	s.Value = float64(s1.Value)
10332	return nil
10333}
10334
10335type ProductShippingWeight struct {
10336	// Unit: The unit of value.
10337	Unit string `json:"unit,omitempty"`
10338
10339	// Value: The weight of the product used to calculate the shipping cost
10340	// of the item.
10341	Value float64 `json:"value,omitempty"`
10342
10343	// ForceSendFields is a list of field names (e.g. "Unit") to
10344	// unconditionally include in API requests. By default, fields with
10345	// empty values are omitted from API requests. However, any non-pointer,
10346	// non-interface field appearing in ForceSendFields will be sent to the
10347	// server regardless of whether the field is empty or not. This may be
10348	// used to include empty fields in Patch requests.
10349	ForceSendFields []string `json:"-"`
10350
10351	// NullFields is a list of field names (e.g. "Unit") to include in API
10352	// requests with the JSON null value. By default, fields with empty
10353	// values are omitted from API requests. However, any field with an
10354	// empty value appearing in NullFields will be sent to the server as
10355	// null. It is an error if a field in this list has a non-empty value.
10356	// This may be used to include null fields in Patch requests.
10357	NullFields []string `json:"-"`
10358}
10359
10360func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
10361	type NoMethod ProductShippingWeight
10362	raw := NoMethod(*s)
10363	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10364}
10365
10366func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
10367	type NoMethod ProductShippingWeight
10368	var s1 struct {
10369		Value gensupport.JSONFloat64 `json:"value"`
10370		*NoMethod
10371	}
10372	s1.NoMethod = (*NoMethod)(s)
10373	if err := json.Unmarshal(data, &s1); err != nil {
10374		return err
10375	}
10376	s.Value = float64(s1.Value)
10377	return nil
10378}
10379
10380// ProductStatus: The status of a product, i.e., information about a
10381// product computed asynchronously.
10382type ProductStatus struct {
10383	// CreationDate: Date on which the item has been created, in ISO 8601
10384	// format.
10385	CreationDate string `json:"creationDate,omitempty"`
10386
10387	// DestinationStatuses: The intended destinations for the product.
10388	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
10389
10390	// GoogleExpirationDate: Date on which the item expires in Google
10391	// Shopping, in ISO 8601 format.
10392	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
10393
10394	// ItemLevelIssues: A list of all issues associated with the product.
10395	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
10396
10397	// Kind: Identifies what kind of resource this is. Value: the fixed
10398	// string "content#productStatus"
10399	Kind string `json:"kind,omitempty"`
10400
10401	// LastUpdateDate: Date on which the item has been last updated, in ISO
10402	// 8601 format.
10403	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
10404
10405	// Link: The link to the product.
10406	Link string `json:"link,omitempty"`
10407
10408	// ProductId: The ID of the product for which status is reported.
10409	ProductId string `json:"productId,omitempty"`
10410
10411	// Title: The title of the product.
10412	Title string `json:"title,omitempty"`
10413
10414	// ServerResponse contains the HTTP response code and headers from the
10415	// server.
10416	googleapi.ServerResponse `json:"-"`
10417
10418	// ForceSendFields is a list of field names (e.g. "CreationDate") to
10419	// unconditionally include in API requests. By default, fields with
10420	// empty values are omitted from API requests. However, any non-pointer,
10421	// non-interface field appearing in ForceSendFields will be sent to the
10422	// server regardless of whether the field is empty or not. This may be
10423	// used to include empty fields in Patch requests.
10424	ForceSendFields []string `json:"-"`
10425
10426	// NullFields is a list of field names (e.g. "CreationDate") to include
10427	// in API requests with the JSON null value. By default, fields with
10428	// empty values are omitted from API requests. However, any field with
10429	// an empty value appearing in NullFields will be sent to the server as
10430	// null. It is an error if a field in this list has a non-empty value.
10431	// This may be used to include null fields in Patch requests.
10432	NullFields []string `json:"-"`
10433}
10434
10435func (s *ProductStatus) MarshalJSON() ([]byte, error) {
10436	type NoMethod ProductStatus
10437	raw := NoMethod(*s)
10438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10439}
10440
10441type ProductStatusDestinationStatus struct {
10442	// ApprovedCountries: List of country codes (ISO 3166-1 alpha-2) where
10443	// the offer is approved.
10444	ApprovedCountries []string `json:"approvedCountries,omitempty"`
10445
10446	// Destination: The name of the destination
10447	Destination string `json:"destination,omitempty"`
10448
10449	// DisapprovedCountries: List of country codes (ISO 3166-1 alpha-2)
10450	// where the offer is disapproved.
10451	DisapprovedCountries []string `json:"disapprovedCountries,omitempty"`
10452
10453	// PendingCountries: List of country codes (ISO 3166-1 alpha-2) where
10454	// the offer is pending approval.
10455	PendingCountries []string `json:"pendingCountries,omitempty"`
10456
10457	// Status: Destination approval status in `targetCountry` of the offer.
10458	Status string `json:"status,omitempty"`
10459
10460	// ForceSendFields is a list of field names (e.g. "ApprovedCountries")
10461	// to unconditionally include in API requests. By default, fields with
10462	// empty values are omitted from API requests. However, any non-pointer,
10463	// non-interface field appearing in ForceSendFields will be sent to the
10464	// server regardless of whether the field is empty or not. This may be
10465	// used to include empty fields in Patch requests.
10466	ForceSendFields []string `json:"-"`
10467
10468	// NullFields is a list of field names (e.g. "ApprovedCountries") to
10469	// include in API requests with the JSON null value. By default, fields
10470	// with empty values are omitted from API requests. However, any field
10471	// with an empty value appearing in NullFields will be sent to the
10472	// server as null. It is an error if a field in this list has a
10473	// non-empty value. This may be used to include null fields in Patch
10474	// requests.
10475	NullFields []string `json:"-"`
10476}
10477
10478func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
10479	type NoMethod ProductStatusDestinationStatus
10480	raw := NoMethod(*s)
10481	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10482}
10483
10484type ProductStatusItemLevelIssue struct {
10485	// ApplicableCountries: List of country codes (ISO 3166-1 alpha-2) where
10486	// issue applies to the offer.
10487	ApplicableCountries []string `json:"applicableCountries,omitempty"`
10488
10489	// AttributeName: The attribute's name, if the issue is caused by a
10490	// single attribute.
10491	AttributeName string `json:"attributeName,omitempty"`
10492
10493	// Code: The error code of the issue.
10494	Code string `json:"code,omitempty"`
10495
10496	// Description: A short issue description in English.
10497	Description string `json:"description,omitempty"`
10498
10499	// Destination: The destination the issue applies to.
10500	Destination string `json:"destination,omitempty"`
10501
10502	// Detail: A detailed issue description in English.
10503	Detail string `json:"detail,omitempty"`
10504
10505	// Documentation: The URL of a web page to help with resolving this
10506	// issue.
10507	Documentation string `json:"documentation,omitempty"`
10508
10509	// Resolution: Whether the issue can be resolved by the merchant.
10510	Resolution string `json:"resolution,omitempty"`
10511
10512	// Servability: How this issue affects serving of the offer.
10513	Servability string `json:"servability,omitempty"`
10514
10515	// ForceSendFields is a list of field names (e.g. "ApplicableCountries")
10516	// to unconditionally include in API requests. By default, fields with
10517	// empty values are omitted from API requests. However, any non-pointer,
10518	// non-interface field appearing in ForceSendFields will be sent to the
10519	// server regardless of whether the field is empty or not. This may be
10520	// used to include empty fields in Patch requests.
10521	ForceSendFields []string `json:"-"`
10522
10523	// NullFields is a list of field names (e.g. "ApplicableCountries") to
10524	// include in API requests with the JSON null value. By default, fields
10525	// with empty values are omitted from API requests. However, any field
10526	// with an empty value appearing in NullFields will be sent to the
10527	// server as null. It is an error if a field in this list has a
10528	// non-empty value. This may be used to include null fields in Patch
10529	// requests.
10530	NullFields []string `json:"-"`
10531}
10532
10533func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
10534	type NoMethod ProductStatusItemLevelIssue
10535	raw := NoMethod(*s)
10536	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10537}
10538
10539type ProductSubscriptionCost struct {
10540	// Amount: The amount the buyer has to pay per subscription period.
10541	Amount *Price `json:"amount,omitempty"`
10542
10543	// Period: The type of subscription period.
10544	Period string `json:"period,omitempty"`
10545
10546	// PeriodLength: The number of subscription periods the buyer has to
10547	// pay.
10548	PeriodLength int64 `json:"periodLength,omitempty,string"`
10549
10550	// ForceSendFields is a list of field names (e.g. "Amount") to
10551	// unconditionally include in API requests. By default, fields with
10552	// empty values are omitted from API requests. However, any non-pointer,
10553	// non-interface field appearing in ForceSendFields will be sent to the
10554	// server regardless of whether the field is empty or not. This may be
10555	// used to include empty fields in Patch requests.
10556	ForceSendFields []string `json:"-"`
10557
10558	// NullFields is a list of field names (e.g. "Amount") to include in API
10559	// requests with the JSON null value. By default, fields with empty
10560	// values are omitted from API requests. However, any field with an
10561	// empty value appearing in NullFields will be sent to the server as
10562	// null. It is an error if a field in this list has a non-empty value.
10563	// This may be used to include null fields in Patch requests.
10564	NullFields []string `json:"-"`
10565}
10566
10567func (s *ProductSubscriptionCost) MarshalJSON() ([]byte, error) {
10568	type NoMethod ProductSubscriptionCost
10569	raw := NoMethod(*s)
10570	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10571}
10572
10573type ProductTax struct {
10574	// Country: The country within which the item is taxed, specified as a
10575	// CLDR territory code.
10576	Country string `json:"country,omitempty"`
10577
10578	// LocationId: The numeric ID of a location that the tax rate applies to
10579	// as defined in the AdWords API.
10580	LocationId int64 `json:"locationId,omitempty,string"`
10581
10582	// PostalCode: The postal code range that the tax rate applies to,
10583	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
10584	// range between two ZIP codes or two ZIP code prefixes of equal length.
10585	// Examples: 94114, 94*, 94002-95460, 94*-95*.
10586	PostalCode string `json:"postalCode,omitempty"`
10587
10588	// Rate: The percentage of tax rate that applies to the item price.
10589	Rate float64 `json:"rate,omitempty"`
10590
10591	// Region: The geographic region to which the tax rate applies.
10592	Region string `json:"region,omitempty"`
10593
10594	// TaxShip: Should be set to true if tax is charged on shipping.
10595	TaxShip bool `json:"taxShip,omitempty"`
10596
10597	// ForceSendFields is a list of field names (e.g. "Country") to
10598	// unconditionally include in API requests. By default, fields with
10599	// empty values are omitted from API requests. However, any non-pointer,
10600	// non-interface field appearing in ForceSendFields will be sent to the
10601	// server regardless of whether the field is empty or not. This may be
10602	// used to include empty fields in Patch requests.
10603	ForceSendFields []string `json:"-"`
10604
10605	// NullFields is a list of field names (e.g. "Country") to include in
10606	// API requests with the JSON null value. By default, fields with empty
10607	// values are omitted from API requests. However, any field with an
10608	// empty value appearing in NullFields will be sent to the server as
10609	// null. It is an error if a field in this list has a non-empty value.
10610	// This may be used to include null fields in Patch requests.
10611	NullFields []string `json:"-"`
10612}
10613
10614func (s *ProductTax) MarshalJSON() ([]byte, error) {
10615	type NoMethod ProductTax
10616	raw := NoMethod(*s)
10617	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10618}
10619
10620func (s *ProductTax) UnmarshalJSON(data []byte) error {
10621	type NoMethod ProductTax
10622	var s1 struct {
10623		Rate gensupport.JSONFloat64 `json:"rate"`
10624		*NoMethod
10625	}
10626	s1.NoMethod = (*NoMethod)(s)
10627	if err := json.Unmarshal(data, &s1); err != nil {
10628		return err
10629	}
10630	s.Rate = float64(s1.Rate)
10631	return nil
10632}
10633
10634type ProductUnitPricingBaseMeasure struct {
10635	// Unit: The unit of the denominator.
10636	Unit string `json:"unit,omitempty"`
10637
10638	// Value: The denominator of the unit price.
10639	Value int64 `json:"value,omitempty,string"`
10640
10641	// ForceSendFields is a list of field names (e.g. "Unit") to
10642	// unconditionally include in API requests. By default, fields with
10643	// empty values are omitted from API requests. However, any non-pointer,
10644	// non-interface field appearing in ForceSendFields will be sent to the
10645	// server regardless of whether the field is empty or not. This may be
10646	// used to include empty fields in Patch requests.
10647	ForceSendFields []string `json:"-"`
10648
10649	// NullFields is a list of field names (e.g. "Unit") to include in API
10650	// requests with the JSON null value. By default, fields with empty
10651	// values are omitted from API requests. However, any field with an
10652	// empty value appearing in NullFields will be sent to the server as
10653	// null. It is an error if a field in this list has a non-empty value.
10654	// This may be used to include null fields in Patch requests.
10655	NullFields []string `json:"-"`
10656}
10657
10658func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
10659	type NoMethod ProductUnitPricingBaseMeasure
10660	raw := NoMethod(*s)
10661	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10662}
10663
10664type ProductUnitPricingMeasure struct {
10665	// Unit: The unit of the measure.
10666	Unit string `json:"unit,omitempty"`
10667
10668	// Value: The measure of an item.
10669	Value float64 `json:"value,omitempty"`
10670
10671	// ForceSendFields is a list of field names (e.g. "Unit") to
10672	// unconditionally include in API requests. By default, fields with
10673	// empty values are omitted from API requests. However, any non-pointer,
10674	// non-interface field appearing in ForceSendFields will be sent to the
10675	// server regardless of whether the field is empty or not. This may be
10676	// used to include empty fields in Patch requests.
10677	ForceSendFields []string `json:"-"`
10678
10679	// NullFields is a list of field names (e.g. "Unit") to include in API
10680	// requests with the JSON null value. By default, fields with empty
10681	// values are omitted from API requests. However, any field with an
10682	// empty value appearing in NullFields will be sent to the server as
10683	// null. It is an error if a field in this list has a non-empty value.
10684	// This may be used to include null fields in Patch requests.
10685	NullFields []string `json:"-"`
10686}
10687
10688func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
10689	type NoMethod ProductUnitPricingMeasure
10690	raw := NoMethod(*s)
10691	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10692}
10693
10694func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
10695	type NoMethod ProductUnitPricingMeasure
10696	var s1 struct {
10697		Value gensupport.JSONFloat64 `json:"value"`
10698		*NoMethod
10699	}
10700	s1.NoMethod = (*NoMethod)(s)
10701	if err := json.Unmarshal(data, &s1); err != nil {
10702		return err
10703	}
10704	s.Value = float64(s1.Value)
10705	return nil
10706}
10707
10708type ProductsCustomBatchRequest struct {
10709	// Entries: The request entries to be processed in the batch.
10710	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
10711
10712	// ForceSendFields is a list of field names (e.g. "Entries") to
10713	// unconditionally include in API requests. By default, fields with
10714	// empty values are omitted from API requests. However, any non-pointer,
10715	// non-interface field appearing in ForceSendFields will be sent to the
10716	// server regardless of whether the field is empty or not. This may be
10717	// used to include empty fields in Patch requests.
10718	ForceSendFields []string `json:"-"`
10719
10720	// NullFields is a list of field names (e.g. "Entries") to include in
10721	// API requests with the JSON null value. By default, fields with empty
10722	// values are omitted from API requests. However, any field with an
10723	// empty value appearing in NullFields will be sent to the server as
10724	// null. It is an error if a field in this list has a non-empty value.
10725	// This may be used to include null fields in Patch requests.
10726	NullFields []string `json:"-"`
10727}
10728
10729func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
10730	type NoMethod ProductsCustomBatchRequest
10731	raw := NoMethod(*s)
10732	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10733}
10734
10735// ProductsCustomBatchRequestEntry: A batch entry encoding a single
10736// non-batch products request.
10737type ProductsCustomBatchRequestEntry struct {
10738	// BatchId: An entry ID, unique within the batch request.
10739	BatchId int64 `json:"batchId,omitempty"`
10740
10741	// FeedId: The Content API feed id.
10742	FeedId uint64 `json:"feedId,omitempty,string"`
10743
10744	// MerchantId: The ID of the managing account.
10745	MerchantId uint64 `json:"merchantId,omitempty,string"`
10746
10747	// Method: The method of the batch entry. Acceptable values are: -
10748	// "delete" - "get" - "insert"
10749	Method string `json:"method,omitempty"`
10750
10751	// Product: The product to insert. Only required if the method is
10752	// `insert`.
10753	Product *Product `json:"product,omitempty"`
10754
10755	// ProductId: The ID of the product to get or delete. Only defined if
10756	// the method is `get` or `delete`.
10757	ProductId string `json:"productId,omitempty"`
10758
10759	// ForceSendFields is a list of field names (e.g. "BatchId") to
10760	// unconditionally include in API requests. By default, fields with
10761	// empty values are omitted from API requests. However, any non-pointer,
10762	// non-interface field appearing in ForceSendFields will be sent to the
10763	// server regardless of whether the field is empty or not. This may be
10764	// used to include empty fields in Patch requests.
10765	ForceSendFields []string `json:"-"`
10766
10767	// NullFields is a list of field names (e.g. "BatchId") to include in
10768	// API requests with the JSON null value. By default, fields with empty
10769	// values are omitted from API requests. However, any field with an
10770	// empty value appearing in NullFields will be sent to the server as
10771	// null. It is an error if a field in this list has a non-empty value.
10772	// This may be used to include null fields in Patch requests.
10773	NullFields []string `json:"-"`
10774}
10775
10776func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10777	type NoMethod ProductsCustomBatchRequestEntry
10778	raw := NoMethod(*s)
10779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10780}
10781
10782type ProductsCustomBatchResponse struct {
10783	// Entries: The result of the execution of the batch requests.
10784	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
10785
10786	// Kind: Identifies what kind of resource this is. Value: the fixed
10787	// string "content#productsCustomBatchResponse".
10788	Kind string `json:"kind,omitempty"`
10789
10790	// ServerResponse contains the HTTP response code and headers from the
10791	// server.
10792	googleapi.ServerResponse `json:"-"`
10793
10794	// ForceSendFields is a list of field names (e.g. "Entries") to
10795	// unconditionally include in API requests. By default, fields with
10796	// empty values are omitted from API requests. However, any non-pointer,
10797	// non-interface field appearing in ForceSendFields will be sent to the
10798	// server regardless of whether the field is empty or not. This may be
10799	// used to include empty fields in Patch requests.
10800	ForceSendFields []string `json:"-"`
10801
10802	// NullFields is a list of field names (e.g. "Entries") to include in
10803	// API requests with the JSON null value. By default, fields with empty
10804	// values are omitted from API requests. However, any field with an
10805	// empty value appearing in NullFields will be sent to the server as
10806	// null. It is an error if a field in this list has a non-empty value.
10807	// This may be used to include null fields in Patch requests.
10808	NullFields []string `json:"-"`
10809}
10810
10811func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
10812	type NoMethod ProductsCustomBatchResponse
10813	raw := NoMethod(*s)
10814	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10815}
10816
10817// ProductsCustomBatchResponseEntry: A batch entry encoding a single
10818// non-batch products response.
10819type ProductsCustomBatchResponseEntry struct {
10820	// BatchId: The ID of the request entry this entry responds to.
10821	BatchId int64 `json:"batchId,omitempty"`
10822
10823	// Errors: A list of errors defined if and only if the request failed.
10824	Errors *Errors `json:"errors,omitempty"`
10825
10826	// Kind: Identifies what kind of resource this is. Value: the fixed
10827	// string "content#productsCustomBatchResponseEntry"
10828	Kind string `json:"kind,omitempty"`
10829
10830	// Product: The inserted product. Only defined if the method is `insert`
10831	// and if the request was successful.
10832	Product *Product `json:"product,omitempty"`
10833
10834	// ForceSendFields is a list of field names (e.g. "BatchId") to
10835	// unconditionally include in API requests. By default, fields with
10836	// empty values are omitted from API requests. However, any non-pointer,
10837	// non-interface field appearing in ForceSendFields will be sent to the
10838	// server regardless of whether the field is empty or not. This may be
10839	// used to include empty fields in Patch requests.
10840	ForceSendFields []string `json:"-"`
10841
10842	// NullFields is a list of field names (e.g. "BatchId") to include in
10843	// API requests with the JSON null value. By default, fields with empty
10844	// values are omitted from API requests. However, any field with an
10845	// empty value appearing in NullFields will be sent to the server as
10846	// null. It is an error if a field in this list has a non-empty value.
10847	// This may be used to include null fields in Patch requests.
10848	NullFields []string `json:"-"`
10849}
10850
10851func (s *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10852	type NoMethod ProductsCustomBatchResponseEntry
10853	raw := NoMethod(*s)
10854	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10855}
10856
10857type ProductsListResponse struct {
10858	// Kind: Identifies what kind of resource this is. Value: the fixed
10859	// string "content#productsListResponse".
10860	Kind string `json:"kind,omitempty"`
10861
10862	// NextPageToken: The token for the retrieval of the next page of
10863	// products.
10864	NextPageToken string `json:"nextPageToken,omitempty"`
10865
10866	Resources []*Product `json:"resources,omitempty"`
10867
10868	// ServerResponse contains the HTTP response code and headers from the
10869	// server.
10870	googleapi.ServerResponse `json:"-"`
10871
10872	// ForceSendFields is a list of field names (e.g. "Kind") to
10873	// unconditionally include in API requests. By default, fields with
10874	// empty values are omitted from API requests. However, any non-pointer,
10875	// non-interface field appearing in ForceSendFields will be sent to the
10876	// server regardless of whether the field is empty or not. This may be
10877	// used to include empty fields in Patch requests.
10878	ForceSendFields []string `json:"-"`
10879
10880	// NullFields is a list of field names (e.g. "Kind") to include in API
10881	// requests with the JSON null value. By default, fields with empty
10882	// values are omitted from API requests. However, any field with an
10883	// empty value appearing in NullFields will be sent to the server as
10884	// null. It is an error if a field in this list has a non-empty value.
10885	// This may be used to include null fields in Patch requests.
10886	NullFields []string `json:"-"`
10887}
10888
10889func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
10890	type NoMethod ProductsListResponse
10891	raw := NoMethod(*s)
10892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10893}
10894
10895type ProductstatusesCustomBatchRequest struct {
10896	// Entries: The request entries to be processed in the batch.
10897	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
10898
10899	// ForceSendFields is a list of field names (e.g. "Entries") to
10900	// unconditionally include in API requests. By default, fields with
10901	// empty values are omitted from API requests. However, any non-pointer,
10902	// non-interface field appearing in ForceSendFields will be sent to the
10903	// server regardless of whether the field is empty or not. This may be
10904	// used to include empty fields in Patch requests.
10905	ForceSendFields []string `json:"-"`
10906
10907	// NullFields is a list of field names (e.g. "Entries") to include in
10908	// API requests with the JSON null value. By default, fields with empty
10909	// values are omitted from API requests. However, any field with an
10910	// empty value appearing in NullFields will be sent to the server as
10911	// null. It is an error if a field in this list has a non-empty value.
10912	// This may be used to include null fields in Patch requests.
10913	NullFields []string `json:"-"`
10914}
10915
10916func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
10917	type NoMethod ProductstatusesCustomBatchRequest
10918	raw := NoMethod(*s)
10919	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10920}
10921
10922// ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
10923// single non-batch productstatuses request.
10924type ProductstatusesCustomBatchRequestEntry struct {
10925	// BatchId: An entry ID, unique within the batch request.
10926	BatchId int64 `json:"batchId,omitempty"`
10927
10928	// Destinations: If set, only issues for the specified destinations are
10929	// returned, otherwise only issues for the Shopping destination.
10930	Destinations []string `json:"destinations,omitempty"`
10931
10932	IncludeAttributes bool `json:"includeAttributes,omitempty"`
10933
10934	// MerchantId: The ID of the managing account.
10935	MerchantId uint64 `json:"merchantId,omitempty,string"`
10936
10937	// Method: The method of the batch entry. Acceptable values are: -
10938	// "get"
10939	Method string `json:"method,omitempty"`
10940
10941	// ProductId: The ID of the product whose status to get.
10942	ProductId string `json:"productId,omitempty"`
10943
10944	// ForceSendFields is a list of field names (e.g. "BatchId") to
10945	// unconditionally include in API requests. By default, fields with
10946	// empty values are omitted from API requests. However, any non-pointer,
10947	// non-interface field appearing in ForceSendFields will be sent to the
10948	// server regardless of whether the field is empty or not. This may be
10949	// used to include empty fields in Patch requests.
10950	ForceSendFields []string `json:"-"`
10951
10952	// NullFields is a list of field names (e.g. "BatchId") to include in
10953	// API requests with the JSON null value. By default, fields with empty
10954	// values are omitted from API requests. However, any field with an
10955	// empty value appearing in NullFields will be sent to the server as
10956	// null. It is an error if a field in this list has a non-empty value.
10957	// This may be used to include null fields in Patch requests.
10958	NullFields []string `json:"-"`
10959}
10960
10961func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10962	type NoMethod ProductstatusesCustomBatchRequestEntry
10963	raw := NoMethod(*s)
10964	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10965}
10966
10967type ProductstatusesCustomBatchResponse struct {
10968	// Entries: The result of the execution of the batch requests.
10969	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
10970
10971	// Kind: Identifies what kind of resource this is. Value: the fixed
10972	// string "content#productstatusesCustomBatchResponse".
10973	Kind string `json:"kind,omitempty"`
10974
10975	// ServerResponse contains the HTTP response code and headers from the
10976	// server.
10977	googleapi.ServerResponse `json:"-"`
10978
10979	// ForceSendFields is a list of field names (e.g. "Entries") to
10980	// unconditionally include in API requests. By default, fields with
10981	// empty values are omitted from API requests. However, any non-pointer,
10982	// non-interface field appearing in ForceSendFields will be sent to the
10983	// server regardless of whether the field is empty or not. This may be
10984	// used to include empty fields in Patch requests.
10985	ForceSendFields []string `json:"-"`
10986
10987	// NullFields is a list of field names (e.g. "Entries") to include in
10988	// API requests with the JSON null value. By default, fields with empty
10989	// values are omitted from API requests. However, any field with an
10990	// empty value appearing in NullFields will be sent to the server as
10991	// null. It is an error if a field in this list has a non-empty value.
10992	// This may be used to include null fields in Patch requests.
10993	NullFields []string `json:"-"`
10994}
10995
10996func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
10997	type NoMethod ProductstatusesCustomBatchResponse
10998	raw := NoMethod(*s)
10999	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11000}
11001
11002// ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
11003// single non-batch productstatuses response.
11004type ProductstatusesCustomBatchResponseEntry struct {
11005	// BatchId: The ID of the request entry this entry responds to.
11006	BatchId int64 `json:"batchId,omitempty"`
11007
11008	// Errors: A list of errors, if the request failed.
11009	Errors *Errors `json:"errors,omitempty"`
11010
11011	// Kind: Identifies what kind of resource this is. Value: the fixed
11012	// string "content#productstatusesCustomBatchResponseEntry"
11013	Kind string `json:"kind,omitempty"`
11014
11015	// ProductStatus: The requested product status. Only defined if the
11016	// request was successful.
11017	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
11018
11019	// ForceSendFields is a list of field names (e.g. "BatchId") to
11020	// unconditionally include in API requests. By default, fields with
11021	// empty values are omitted from API requests. However, any non-pointer,
11022	// non-interface field appearing in ForceSendFields will be sent to the
11023	// server regardless of whether the field is empty or not. This may be
11024	// used to include empty fields in Patch requests.
11025	ForceSendFields []string `json:"-"`
11026
11027	// NullFields is a list of field names (e.g. "BatchId") to include in
11028	// API requests with the JSON null value. By default, fields with empty
11029	// values are omitted from API requests. However, any field with an
11030	// empty value appearing in NullFields will be sent to the server as
11031	// null. It is an error if a field in this list has a non-empty value.
11032	// This may be used to include null fields in Patch requests.
11033	NullFields []string `json:"-"`
11034}
11035
11036func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
11037	type NoMethod ProductstatusesCustomBatchResponseEntry
11038	raw := NoMethod(*s)
11039	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11040}
11041
11042type ProductstatusesListResponse struct {
11043	// Kind: Identifies what kind of resource this is. Value: the fixed
11044	// string "content#productstatusesListResponse".
11045	Kind string `json:"kind,omitempty"`
11046
11047	// NextPageToken: The token for the retrieval of the next page of
11048	// products statuses.
11049	NextPageToken string `json:"nextPageToken,omitempty"`
11050
11051	Resources []*ProductStatus `json:"resources,omitempty"`
11052
11053	// ServerResponse contains the HTTP response code and headers from the
11054	// server.
11055	googleapi.ServerResponse `json:"-"`
11056
11057	// ForceSendFields is a list of field names (e.g. "Kind") to
11058	// unconditionally include in API requests. By default, fields with
11059	// empty values are omitted from API requests. However, any non-pointer,
11060	// non-interface field appearing in ForceSendFields will be sent to the
11061	// server regardless of whether the field is empty or not. This may be
11062	// used to include empty fields in Patch requests.
11063	ForceSendFields []string `json:"-"`
11064
11065	// NullFields is a list of field names (e.g. "Kind") to include in API
11066	// requests with the JSON null value. By default, fields with empty
11067	// values are omitted from API requests. However, any field with an
11068	// empty value appearing in NullFields will be sent to the server as
11069	// null. It is an error if a field in this list has a non-empty value.
11070	// This may be used to include null fields in Patch requests.
11071	NullFields []string `json:"-"`
11072}
11073
11074func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
11075	type NoMethod ProductstatusesListResponse
11076	raw := NoMethod(*s)
11077	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11078}
11079
11080// PubsubNotificationSettings: Settings for Pub/Sub notifications, all
11081// methods require that the caller is a direct user of the merchant
11082// center account.
11083type PubsubNotificationSettings struct {
11084	// CloudTopicName: Cloud pub/sub topic to which notifications are sent
11085	// (read-only).
11086	CloudTopicName string `json:"cloudTopicName,omitempty"`
11087
11088	// Kind: Identifies what kind of resource this is. Value: the fixed
11089	// string "content#pubsubNotificationSettings"
11090	Kind string `json:"kind,omitempty"`
11091
11092	// RegisteredEvents: List of event types. Acceptable values are: -
11093	// "orderPendingShipment"
11094	RegisteredEvents []string `json:"registeredEvents,omitempty"`
11095
11096	// ServerResponse contains the HTTP response code and headers from the
11097	// server.
11098	googleapi.ServerResponse `json:"-"`
11099
11100	// ForceSendFields is a list of field names (e.g. "CloudTopicName") to
11101	// unconditionally include in API requests. By default, fields with
11102	// empty values are omitted from API requests. However, any non-pointer,
11103	// non-interface field appearing in ForceSendFields will be sent to the
11104	// server regardless of whether the field is empty or not. This may be
11105	// used to include empty fields in Patch requests.
11106	ForceSendFields []string `json:"-"`
11107
11108	// NullFields is a list of field names (e.g. "CloudTopicName") to
11109	// include in API requests with the JSON null value. By default, fields
11110	// with empty values are omitted from API requests. However, any field
11111	// with an empty value appearing in NullFields will be sent to the
11112	// server as null. It is an error if a field in this list has a
11113	// non-empty value. This may be used to include null fields in Patch
11114	// requests.
11115	NullFields []string `json:"-"`
11116}
11117
11118func (s *PubsubNotificationSettings) MarshalJSON() ([]byte, error) {
11119	type NoMethod PubsubNotificationSettings
11120	raw := NoMethod(*s)
11121	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11122}
11123
11124type RateGroup struct {
11125	// ApplicableShippingLabels: A list of shipping labels defining the
11126	// products to which this rate group applies to. This is a disjunction:
11127	// only one of the labels has to match for the rate group to apply. May
11128	// only be empty for the last rate group of a service. Required.
11129	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
11130
11131	// CarrierRates: A list of carrier rates that can be referred to by
11132	// `mainTable` or `singleValue`.
11133	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
11134
11135	// MainTable: A table defining the rate group, when `singleValue` is not
11136	// expressive enough. Can only be set if `singleValue` is not set.
11137	MainTable *Table `json:"mainTable,omitempty"`
11138
11139	// Name: Name of the rate group. Optional. If set has to be unique
11140	// within shipping service.
11141	Name string `json:"name,omitempty"`
11142
11143	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
11144	// only be set if `mainTable` and `subtables` are not set.
11145	SingleValue *Value `json:"singleValue,omitempty"`
11146
11147	// Subtables: A list of subtables referred to by `mainTable`. Can only
11148	// be set if `mainTable` is set.
11149	Subtables []*Table `json:"subtables,omitempty"`
11150
11151	// ForceSendFields is a list of field names (e.g.
11152	// "ApplicableShippingLabels") to unconditionally include in API
11153	// requests. By default, fields with empty values are omitted from API
11154	// requests. However, any non-pointer, non-interface field appearing in
11155	// ForceSendFields will be sent to the server regardless of whether the
11156	// field is empty or not. This may be used to include empty fields in
11157	// Patch requests.
11158	ForceSendFields []string `json:"-"`
11159
11160	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
11161	// to include in API requests with the JSON null value. By default,
11162	// fields with empty values are omitted from API requests. However, any
11163	// field with an empty value appearing in NullFields will be sent to the
11164	// server as null. It is an error if a field in this list has a
11165	// non-empty value. This may be used to include null fields in Patch
11166	// requests.
11167	NullFields []string `json:"-"`
11168}
11169
11170func (s *RateGroup) MarshalJSON() ([]byte, error) {
11171	type NoMethod RateGroup
11172	raw := NoMethod(*s)
11173	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11174}
11175
11176type RefundReason struct {
11177	// Description: Description of the reason.
11178	Description string `json:"description,omitempty"`
11179
11180	// ReasonCode: Code of the refund reason. Acceptable values are: -
11181	// "adjustment" - "autoPostInternal" -
11182	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
11183	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
11184	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
11185	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
11186	// - "customerSupportRequested" - "deliveredLateByCarrier" -
11187	// "deliveredTooLate" - "expiredItem" -
11188	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
11189	// "failToPushOrderMerchantFulfillmentError" -
11190	// "failToPushOrderToMerchant" -
11191	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
11192	// "invalidCoupon" - "lateShipmentCredit" -
11193	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
11194	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
11195	// "paymentDeclined" - "priceAdjustment" - "priceError" -
11196	// "productArrivedDamaged" - "productNotAsDescribed" -
11197	// "promoReallocation" - "qualityNotAsExpected" -
11198	// "returnRefundAbuse" - "shippingCostAdjustment" -
11199	// "shippingPriceError" - "taxAdjustment" - "taxError" -
11200	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
11201	// "wrongProductShipped"
11202	ReasonCode string `json:"reasonCode,omitempty"`
11203
11204	// ForceSendFields is a list of field names (e.g. "Description") to
11205	// unconditionally include in API requests. By default, fields with
11206	// empty values are omitted from API requests. However, any non-pointer,
11207	// non-interface field appearing in ForceSendFields will be sent to the
11208	// server regardless of whether the field is empty or not. This may be
11209	// used to include empty fields in Patch requests.
11210	ForceSendFields []string `json:"-"`
11211
11212	// NullFields is a list of field names (e.g. "Description") to include
11213	// in API requests with the JSON null value. By default, fields with
11214	// empty values are omitted from API requests. However, any field with
11215	// an empty value appearing in NullFields will be sent to the server as
11216	// null. It is an error if a field in this list has a non-empty value.
11217	// This may be used to include null fields in Patch requests.
11218	NullFields []string `json:"-"`
11219}
11220
11221func (s *RefundReason) MarshalJSON() ([]byte, error) {
11222	type NoMethod RefundReason
11223	raw := NoMethod(*s)
11224	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11225}
11226
11227// Region: Represents a geographic region that you can use as a target
11228// with both the `RegionalInventory` and `ShippingSettings` services.
11229// You can define regions as collections of either postal codes or, in
11230// some countries, using predefined geotargets.
11231type Region struct {
11232	// DisplayName: The display name of the region.
11233	DisplayName string `json:"displayName,omitempty"`
11234
11235	// GeotargetArea: A list of geotargets that defines the region area.
11236	GeotargetArea *RegionGeoTargetArea `json:"geotargetArea,omitempty"`
11237
11238	// MerchantId: Output only. Immutable. Merchant that owns the region.
11239	MerchantId int64 `json:"merchantId,omitempty,string"`
11240
11241	// PostalCodeArea: A list of postal codes that defines the region area.
11242	PostalCodeArea *RegionPostalCodeArea `json:"postalCodeArea,omitempty"`
11243
11244	// RegionId: Output only. Immutable. The ID uniquely identifying each
11245	// region.
11246	RegionId string `json:"regionId,omitempty"`
11247
11248	// RegionalInventoryEligible: Output only. Indicates if the region is
11249	// eligible to use in the Regional Inventory configuration.
11250	RegionalInventoryEligible bool `json:"regionalInventoryEligible,omitempty"`
11251
11252	// ShippingEligible: Output only. Indicates if the region is eligible to
11253	// use in the Shipping Services configuration.
11254	ShippingEligible bool `json:"shippingEligible,omitempty"`
11255
11256	// ServerResponse contains the HTTP response code and headers from the
11257	// server.
11258	googleapi.ServerResponse `json:"-"`
11259
11260	// ForceSendFields is a list of field names (e.g. "DisplayName") to
11261	// unconditionally include in API requests. By default, fields with
11262	// empty values are omitted from API requests. However, any non-pointer,
11263	// non-interface field appearing in ForceSendFields will be sent to the
11264	// server regardless of whether the field is empty or not. This may be
11265	// used to include empty fields in Patch requests.
11266	ForceSendFields []string `json:"-"`
11267
11268	// NullFields is a list of field names (e.g. "DisplayName") to include
11269	// in API requests with the JSON null value. By default, fields with
11270	// empty values are omitted from API requests. However, any field with
11271	// an empty value appearing in NullFields will be sent to the server as
11272	// null. It is an error if a field in this list has a non-empty value.
11273	// This may be used to include null fields in Patch requests.
11274	NullFields []string `json:"-"`
11275}
11276
11277func (s *Region) MarshalJSON() ([]byte, error) {
11278	type NoMethod Region
11279	raw := NoMethod(*s)
11280	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11281}
11282
11283// RegionGeoTargetArea: A list of geotargets that defines the region
11284// area.
11285type RegionGeoTargetArea struct {
11286	// GeotargetCriteriaIds: Required. A non-empty list of [location
11287	// IDs](https://developers.google.com/adwords/api/docs/appendix/geotarget
11288	// ing). They must all be of the same location type (e.g., state).
11289	GeotargetCriteriaIds googleapi.Int64s `json:"geotargetCriteriaIds,omitempty"`
11290
11291	// ForceSendFields is a list of field names (e.g.
11292	// "GeotargetCriteriaIds") to unconditionally include in API requests.
11293	// By default, fields with empty values are omitted from API requests.
11294	// However, any non-pointer, non-interface field appearing in
11295	// ForceSendFields will be sent to the server regardless of whether the
11296	// field is empty or not. This may be used to include empty fields in
11297	// Patch requests.
11298	ForceSendFields []string `json:"-"`
11299
11300	// NullFields is a list of field names (e.g. "GeotargetCriteriaIds") to
11301	// include in API requests with the JSON null value. By default, fields
11302	// with empty values are omitted from API requests. However, any field
11303	// with an empty value appearing in NullFields will be sent to the
11304	// server as null. It is an error if a field in this list has a
11305	// non-empty value. This may be used to include null fields in Patch
11306	// requests.
11307	NullFields []string `json:"-"`
11308}
11309
11310func (s *RegionGeoTargetArea) MarshalJSON() ([]byte, error) {
11311	type NoMethod RegionGeoTargetArea
11312	raw := NoMethod(*s)
11313	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11314}
11315
11316// RegionPostalCodeArea: A list of postal codes that defines the region
11317// area. Note: All regions defined using postal codes are accessible via
11318// the account's `ShippingSettings.postalCodeGroups` resource.
11319type RegionPostalCodeArea struct {
11320	// PostalCodes: Required. A range of postal codes.
11321	PostalCodes []*RegionPostalCodeAreaPostalCodeRange `json:"postalCodes,omitempty"`
11322
11323	// RegionCode: Required. CLDR territory code or the country the postal
11324	// code group applies to.
11325	RegionCode string `json:"regionCode,omitempty"`
11326
11327	// ForceSendFields is a list of field names (e.g. "PostalCodes") to
11328	// unconditionally include in API requests. By default, fields with
11329	// empty values are omitted from API requests. However, any non-pointer,
11330	// non-interface field appearing in ForceSendFields will be sent to the
11331	// server regardless of whether the field is empty or not. This may be
11332	// used to include empty fields in Patch requests.
11333	ForceSendFields []string `json:"-"`
11334
11335	// NullFields is a list of field names (e.g. "PostalCodes") to include
11336	// in API requests with the JSON null value. By default, fields with
11337	// empty values are omitted from API requests. However, any field with
11338	// an empty value appearing in NullFields will be sent to the server as
11339	// null. It is an error if a field in this list has a non-empty value.
11340	// This may be used to include null fields in Patch requests.
11341	NullFields []string `json:"-"`
11342}
11343
11344func (s *RegionPostalCodeArea) MarshalJSON() ([]byte, error) {
11345	type NoMethod RegionPostalCodeArea
11346	raw := NoMethod(*s)
11347	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11348}
11349
11350// RegionPostalCodeAreaPostalCodeRange: A range of postal codes that
11351// defines the region area.
11352type RegionPostalCodeAreaPostalCodeRange struct {
11353	// Begin: Required. A postal code or a pattern of the form prefix*
11354	// denoting the inclusive lower bound of the range defining the area.
11355	// Examples values: "94108", "9410*", "9*".
11356	Begin string `json:"begin,omitempty"`
11357
11358	// End: Optional. A postal code or a pattern of the form prefix*
11359	// denoting the inclusive upper bound of the range defining the area. It
11360	// must have the same length as postalCodeRangeBegin: if
11361	// postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be
11362	// a postal code too; if postalCodeRangeBegin is a pattern then
11363	// postalCodeRangeEnd must be a pattern with the same prefix length.
11364	// Optional: if not set, then the area is defined as being all the
11365	// postal codes matching postalCodeRangeBegin.
11366	End string `json:"end,omitempty"`
11367
11368	// ForceSendFields is a list of field names (e.g. "Begin") to
11369	// unconditionally include in API requests. By default, fields with
11370	// empty values are omitted from API requests. However, any non-pointer,
11371	// non-interface field appearing in ForceSendFields will be sent to the
11372	// server regardless of whether the field is empty or not. This may be
11373	// used to include empty fields in Patch requests.
11374	ForceSendFields []string `json:"-"`
11375
11376	// NullFields is a list of field names (e.g. "Begin") to include in API
11377	// requests with the JSON null value. By default, fields with empty
11378	// values are omitted from API requests. However, any field with an
11379	// empty value appearing in NullFields will be sent to the server as
11380	// null. It is an error if a field in this list has a non-empty value.
11381	// This may be used to include null fields in Patch requests.
11382	NullFields []string `json:"-"`
11383}
11384
11385func (s *RegionPostalCodeAreaPostalCodeRange) MarshalJSON() ([]byte, error) {
11386	type NoMethod RegionPostalCodeAreaPostalCodeRange
11387	raw := NoMethod(*s)
11388	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11389}
11390
11391// RegionalInventory: Regional inventory resource. contains the regional
11392// name and all attributes which are overridden for the specified
11393// region.
11394type RegionalInventory struct {
11395	// Availability: The availability of the product.
11396	Availability string `json:"availability,omitempty"`
11397
11398	// CustomAttributes: A list of custom (merchant-provided) attributes. It
11399	// can also be used for submitting any attribute of the feed
11400	// specification in its generic form.
11401	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
11402
11403	// Kind: Identifies what kind of resource this is. Value: the fixed
11404	// string "content#regionalInventory".
11405	Kind string `json:"kind,omitempty"`
11406
11407	// Price: The price of the product.
11408	Price *Price `json:"price,omitempty"`
11409
11410	// RegionId: The ID uniquely identifying each region.
11411	RegionId string `json:"regionId,omitempty"`
11412
11413	// SalePrice: The sale price of the product. Mandatory if
11414	// `sale_price_effective_date` is defined.
11415	SalePrice *Price `json:"salePrice,omitempty"`
11416
11417	// SalePriceEffectiveDate: A date range represented by a pair of ISO
11418	// 8601 dates separated by a space, comma, or slash. Both dates might be
11419	// specified as 'null' if undecided.
11420	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
11421
11422	// ServerResponse contains the HTTP response code and headers from the
11423	// server.
11424	googleapi.ServerResponse `json:"-"`
11425
11426	// ForceSendFields is a list of field names (e.g. "Availability") to
11427	// unconditionally include in API requests. By default, fields with
11428	// empty values are omitted from API requests. However, any non-pointer,
11429	// non-interface field appearing in ForceSendFields will be sent to the
11430	// server regardless of whether the field is empty or not. This may be
11431	// used to include empty fields in Patch requests.
11432	ForceSendFields []string `json:"-"`
11433
11434	// NullFields is a list of field names (e.g. "Availability") to include
11435	// in API requests with the JSON null value. By default, fields with
11436	// empty values are omitted from API requests. However, any field with
11437	// an empty value appearing in NullFields will be sent to the server as
11438	// null. It is an error if a field in this list has a non-empty value.
11439	// This may be used to include null fields in Patch requests.
11440	NullFields []string `json:"-"`
11441}
11442
11443func (s *RegionalInventory) MarshalJSON() ([]byte, error) {
11444	type NoMethod RegionalInventory
11445	raw := NoMethod(*s)
11446	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11447}
11448
11449type RegionalinventoryCustomBatchRequest struct {
11450	// Entries: The request entries to be processed in the batch.
11451	Entries []*RegionalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
11452
11453	// ForceSendFields is a list of field names (e.g. "Entries") to
11454	// unconditionally include in API requests. By default, fields with
11455	// empty values are omitted from API requests. However, any non-pointer,
11456	// non-interface field appearing in ForceSendFields will be sent to the
11457	// server regardless of whether the field is empty or not. This may be
11458	// used to include empty fields in Patch requests.
11459	ForceSendFields []string `json:"-"`
11460
11461	// NullFields is a list of field names (e.g. "Entries") to include in
11462	// API requests with the JSON null value. By default, fields with empty
11463	// values are omitted from API requests. However, any field with an
11464	// empty value appearing in NullFields will be sent to the server as
11465	// null. It is an error if a field in this list has a non-empty value.
11466	// This may be used to include null fields in Patch requests.
11467	NullFields []string `json:"-"`
11468}
11469
11470func (s *RegionalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
11471	type NoMethod RegionalinventoryCustomBatchRequest
11472	raw := NoMethod(*s)
11473	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11474}
11475
11476// RegionalinventoryCustomBatchRequestEntry: A batch entry encoding a
11477// single non-batch regional inventory request.
11478type RegionalinventoryCustomBatchRequestEntry struct {
11479	// BatchId: An entry ID, unique within the batch request.
11480	BatchId int64 `json:"batchId,omitempty"`
11481
11482	// MerchantId: The ID of the managing account.
11483	MerchantId uint64 `json:"merchantId,omitempty,string"`
11484
11485	// Method: Method of the batch request entry. Acceptable values are: -
11486	// "insert"
11487	Method string `json:"method,omitempty"`
11488
11489	// ProductId: The ID of the product for which to update price and
11490	// availability.
11491	ProductId string `json:"productId,omitempty"`
11492
11493	// RegionalInventory: Price and availability of the product.
11494	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
11495
11496	// ForceSendFields is a list of field names (e.g. "BatchId") to
11497	// unconditionally include in API requests. By default, fields with
11498	// empty values are omitted from API requests. However, any non-pointer,
11499	// non-interface field appearing in ForceSendFields will be sent to the
11500	// server regardless of whether the field is empty or not. This may be
11501	// used to include empty fields in Patch requests.
11502	ForceSendFields []string `json:"-"`
11503
11504	// NullFields is a list of field names (e.g. "BatchId") to include in
11505	// API requests with the JSON null value. By default, fields with empty
11506	// values are omitted from API requests. However, any field with an
11507	// empty value appearing in NullFields will be sent to the server as
11508	// null. It is an error if a field in this list has a non-empty value.
11509	// This may be used to include null fields in Patch requests.
11510	NullFields []string `json:"-"`
11511}
11512
11513func (s *RegionalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
11514	type NoMethod RegionalinventoryCustomBatchRequestEntry
11515	raw := NoMethod(*s)
11516	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11517}
11518
11519type RegionalinventoryCustomBatchResponse struct {
11520	// Entries: The result of the execution of the batch requests.
11521	Entries []*RegionalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
11522
11523	// Kind: Identifies what kind of resource this is. Value: the fixed
11524	// string "content#regionalinventoryCustomBatchResponse".
11525	Kind string `json:"kind,omitempty"`
11526
11527	// ServerResponse contains the HTTP response code and headers from the
11528	// server.
11529	googleapi.ServerResponse `json:"-"`
11530
11531	// ForceSendFields is a list of field names (e.g. "Entries") to
11532	// unconditionally include in API requests. By default, fields with
11533	// empty values are omitted from API requests. However, any non-pointer,
11534	// non-interface field appearing in ForceSendFields will be sent to the
11535	// server regardless of whether the field is empty or not. This may be
11536	// used to include empty fields in Patch requests.
11537	ForceSendFields []string `json:"-"`
11538
11539	// NullFields is a list of field names (e.g. "Entries") to include in
11540	// API requests with the JSON null value. By default, fields with empty
11541	// values are omitted from API requests. However, any field with an
11542	// empty value appearing in NullFields will be sent to the server as
11543	// null. It is an error if a field in this list has a non-empty value.
11544	// This may be used to include null fields in Patch requests.
11545	NullFields []string `json:"-"`
11546}
11547
11548func (s *RegionalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
11549	type NoMethod RegionalinventoryCustomBatchResponse
11550	raw := NoMethod(*s)
11551	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11552}
11553
11554// RegionalinventoryCustomBatchResponseEntry: A batch entry encoding a
11555// single non-batch regional inventory response.
11556type RegionalinventoryCustomBatchResponseEntry struct {
11557	// BatchId: The ID of the request entry this entry responds to.
11558	BatchId int64 `json:"batchId,omitempty"`
11559
11560	// Errors: A list of errors defined if and only if the request failed.
11561	Errors *Errors `json:"errors,omitempty"`
11562
11563	// Kind: Identifies what kind of resource this is. Value: the fixed
11564	// string "content#regionalinventoryCustomBatchResponseEntry".
11565	Kind string `json:"kind,omitempty"`
11566
11567	// RegionalInventory: Price and availability of the product.
11568	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
11569
11570	// ForceSendFields is a list of field names (e.g. "BatchId") to
11571	// unconditionally include in API requests. By default, fields with
11572	// empty values are omitted from API requests. However, any non-pointer,
11573	// non-interface field appearing in ForceSendFields will be sent to the
11574	// server regardless of whether the field is empty or not. This may be
11575	// used to include empty fields in Patch requests.
11576	ForceSendFields []string `json:"-"`
11577
11578	// NullFields is a list of field names (e.g. "BatchId") to include in
11579	// API requests with the JSON null value. By default, fields with empty
11580	// values are omitted from API requests. However, any field with an
11581	// empty value appearing in NullFields will be sent to the server as
11582	// null. It is an error if a field in this list has a non-empty value.
11583	// This may be used to include null fields in Patch requests.
11584	NullFields []string `json:"-"`
11585}
11586
11587func (s *RegionalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
11588	type NoMethod RegionalinventoryCustomBatchResponseEntry
11589	raw := NoMethod(*s)
11590	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11591}
11592
11593// RepricingRule: Represents a repricing rule. A repricing rule is used
11594// by shopping serving to adjust transactable offer prices if conditions
11595// are met. Next ID: 24
11596type RepricingRule struct {
11597	// CountryCode: Required. Immutable. CLDR country code (e.g. "US").
11598	CountryCode string `json:"countryCode,omitempty"`
11599
11600	// EffectiveTimePeriod: Required. Time period when the rule should take
11601	// effect.
11602	EffectiveTimePeriod *RepricingRuleEffectiveTime `json:"effectiveTimePeriod,omitempty"`
11603
11604	// EligibleOfferMatcher: Required. Match criteria for the eligible
11605	// offers.
11606	EligibleOfferMatcher *RepricingRuleEligibleOfferMatcher `json:"eligibleOfferMatcher,omitempty"`
11607
11608	// LanguageCode: Required. Immutable. The two-letter ISO 639-1 language
11609	// code associated with the repricing rule.
11610	LanguageCode string `json:"languageCode,omitempty"`
11611
11612	// MerchantId: Output only. Immutable. Merchant that owns the repricing
11613	// rule.
11614	MerchantId int64 `json:"merchantId,omitempty,string"`
11615
11616	// Paused: Represents whether a rule is paused. A paused rule will
11617	// behave like a non-paused rule within CRUD operations, with the major
11618	// difference that a paused rule will not be evaluated and will have no
11619	// effect on offers.
11620	Paused bool `json:"paused,omitempty"`
11621
11622	// Restriction: Required. Restriction of the rule appliance.
11623	Restriction *RepricingRuleRestriction `json:"restriction,omitempty"`
11624
11625	// RuleId: Output only. Immutable. The ID to uniquely identify each
11626	// repricing rule.
11627	RuleId string `json:"ruleId,omitempty"`
11628
11629	// Title: The title for the rule.
11630	Title string `json:"title,omitempty"`
11631
11632	// Type: Required. Immutable. The type of the rule.
11633	//
11634	// Possible values:
11635	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
11636	//   "TYPE_WIN_BUY_BOX" - Buy Box winning price-based rules. In Buy on
11637	// Google, the Buy Box refers to the offer for a product shown at the
11638	// top of the Product Detail Page (PDP) with an "Add to Cart" button. If
11639	// this rule is chosen, your offer price will be lowered within the
11640	// range you set to help increase the likelihood that you will win the
11641	// Buy Box. There is no RuleDefinition needed for this type.
11642	Type string `json:"type,omitempty"`
11643
11644	// ServerResponse contains the HTTP response code and headers from the
11645	// server.
11646	googleapi.ServerResponse `json:"-"`
11647
11648	// ForceSendFields is a list of field names (e.g. "CountryCode") to
11649	// unconditionally include in API requests. By default, fields with
11650	// empty values are omitted from API requests. However, any non-pointer,
11651	// non-interface field appearing in ForceSendFields will be sent to the
11652	// server regardless of whether the field is empty or not. This may be
11653	// used to include empty fields in Patch requests.
11654	ForceSendFields []string `json:"-"`
11655
11656	// NullFields is a list of field names (e.g. "CountryCode") to include
11657	// in API requests with the JSON null value. By default, fields with
11658	// empty values are omitted from API requests. However, any field with
11659	// an empty value appearing in NullFields will be sent to the server as
11660	// null. It is an error if a field in this list has a non-empty value.
11661	// This may be used to include null fields in Patch requests.
11662	NullFields []string `json:"-"`
11663}
11664
11665func (s *RepricingRule) MarshalJSON() ([]byte, error) {
11666	type NoMethod RepricingRule
11667	raw := NoMethod(*s)
11668	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11669}
11670
11671type RepricingRuleEffectiveTime struct {
11672	// FixedTimePeriods: A list of fixed time periods combined with OR. The
11673	// maximum number of entries is limited to 5.
11674	FixedTimePeriods []*RepricingRuleEffectiveTimeFixedTimePeriod `json:"fixedTimePeriods,omitempty"`
11675
11676	// ForceSendFields is a list of field names (e.g. "FixedTimePeriods") to
11677	// unconditionally include in API requests. By default, fields with
11678	// empty values are omitted from API requests. However, any non-pointer,
11679	// non-interface field appearing in ForceSendFields will be sent to the
11680	// server regardless of whether the field is empty or not. This may be
11681	// used to include empty fields in Patch requests.
11682	ForceSendFields []string `json:"-"`
11683
11684	// NullFields is a list of field names (e.g. "FixedTimePeriods") to
11685	// include in API requests with the JSON null value. By default, fields
11686	// with empty values are omitted from API requests. However, any field
11687	// with an empty value appearing in NullFields will be sent to the
11688	// server as null. It is an error if a field in this list has a
11689	// non-empty value. This may be used to include null fields in Patch
11690	// requests.
11691	NullFields []string `json:"-"`
11692}
11693
11694func (s *RepricingRuleEffectiveTime) MarshalJSON() ([]byte, error) {
11695	type NoMethod RepricingRuleEffectiveTime
11696	raw := NoMethod(*s)
11697	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11698}
11699
11700// RepricingRuleEffectiveTimeFixedTimePeriod: Definition of a fixed time
11701// period.
11702type RepricingRuleEffectiveTimeFixedTimePeriod struct {
11703	// EndTime: The end time (exclusive) of the period. It can only be hour
11704	// granularity.
11705	EndTime string `json:"endTime,omitempty"`
11706
11707	// StartTime: The start time (inclusive) of the period. It can only be
11708	// hour granularity.
11709	StartTime string `json:"startTime,omitempty"`
11710
11711	// ForceSendFields is a list of field names (e.g. "EndTime") to
11712	// unconditionally include in API requests. By default, fields with
11713	// empty values are omitted from API requests. However, any non-pointer,
11714	// non-interface field appearing in ForceSendFields will be sent to the
11715	// server regardless of whether the field is empty or not. This may be
11716	// used to include empty fields in Patch requests.
11717	ForceSendFields []string `json:"-"`
11718
11719	// NullFields is a list of field names (e.g. "EndTime") to include in
11720	// API requests with the JSON null value. By default, fields with empty
11721	// values are omitted from API requests. However, any field with an
11722	// empty value appearing in NullFields will be sent to the server as
11723	// null. It is an error if a field in this list has a non-empty value.
11724	// This may be used to include null fields in Patch requests.
11725	NullFields []string `json:"-"`
11726}
11727
11728func (s *RepricingRuleEffectiveTimeFixedTimePeriod) MarshalJSON() ([]byte, error) {
11729	type NoMethod RepricingRuleEffectiveTimeFixedTimePeriod
11730	raw := NoMethod(*s)
11731	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11732}
11733
11734// RepricingRuleEligibleOfferMatcher: Matcher that specifies eligible
11735// offers. When the USE_FEED_ATTRIBUTE option is selected, only the
11736// repricing_rule_id attribute on the product feed is used to specify
11737// offer-rule mapping. When the CUSTOM_FILTER option is selected, only
11738// the *_matcher fields are used to filter the offers for offer-rule
11739// mapping. If the CUSTOM_FILTER option is selected, an offer needs to
11740// satisfy each custom filter matcher to be eligible for a rule. Size
11741// limit: the sum of the number of entries in all the matchers should
11742// not exceed 20. For example, there can be 15 product ids and 5 brands,
11743// but not 10 product ids and 11 brands.
11744type RepricingRuleEligibleOfferMatcher struct {
11745	// BrandMatcher: Filter by the brand.
11746	BrandMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"brandMatcher,omitempty"`
11747
11748	// ItemGroupIdMatcher: Filter by the item group id.
11749	ItemGroupIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"itemGroupIdMatcher,omitempty"`
11750
11751	// MatcherOption: Determines whether to use the custom matchers or the
11752	// product feed attribute "repricing_rule_id" to specify offer-rule
11753	// mapping.
11754	//
11755	// Possible values:
11756	//   "MATCHER_OPTION_UNSPECIFIED" - Unused.
11757	//   "MATCHER_OPTION_CUSTOM_FILTER" - Use custom filters.
11758	//   "MATCHER_OPTION_USE_FEED_ATTRIBUTE" - Use repricing_rule_id feed
11759	// attribute on the product resource to specify offer-rule mapping.
11760	//   "MATCHER_OPTION_ALL_PRODUCTS" - Matching all products.
11761	MatcherOption string `json:"matcherOption,omitempty"`
11762
11763	// OfferIdMatcher: Filter by the offer id.
11764	OfferIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"offerIdMatcher,omitempty"`
11765
11766	// ForceSendFields is a list of field names (e.g. "BrandMatcher") to
11767	// unconditionally include in API requests. By default, fields with
11768	// empty values are omitted from API requests. However, any non-pointer,
11769	// non-interface field appearing in ForceSendFields will be sent to the
11770	// server regardless of whether the field is empty or not. This may be
11771	// used to include empty fields in Patch requests.
11772	ForceSendFields []string `json:"-"`
11773
11774	// NullFields is a list of field names (e.g. "BrandMatcher") to include
11775	// in API requests with the JSON null value. By default, fields with
11776	// empty values are omitted from API requests. However, any field with
11777	// an empty value appearing in NullFields will be sent to the server as
11778	// null. It is an error if a field in this list has a non-empty value.
11779	// This may be used to include null fields in Patch requests.
11780	NullFields []string `json:"-"`
11781}
11782
11783func (s *RepricingRuleEligibleOfferMatcher) MarshalJSON() ([]byte, error) {
11784	type NoMethod RepricingRuleEligibleOfferMatcher
11785	raw := NoMethod(*s)
11786	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11787}
11788
11789// RepricingRuleEligibleOfferMatcherStringMatcher: Matcher by string
11790// attributes.
11791type RepricingRuleEligibleOfferMatcherStringMatcher struct {
11792	// StrAttributes: String attributes, as long as such attribute of an
11793	// offer is one of the string attribute values, the offer is considered
11794	// as passing the matcher. The string matcher checks an offer for
11795	// inclusivity in the string attributes, not equality. Only literal
11796	// string matching is supported, no regex.
11797	StrAttributes []string `json:"strAttributes,omitempty"`
11798
11799	// ForceSendFields is a list of field names (e.g. "StrAttributes") to
11800	// unconditionally include in API requests. By default, fields with
11801	// empty values are omitted from API requests. However, any non-pointer,
11802	// non-interface field appearing in ForceSendFields will be sent to the
11803	// server regardless of whether the field is empty or not. This may be
11804	// used to include empty fields in Patch requests.
11805	ForceSendFields []string `json:"-"`
11806
11807	// NullFields is a list of field names (e.g. "StrAttributes") to include
11808	// in API requests with the JSON null value. By default, fields with
11809	// empty values are omitted from API requests. However, any field with
11810	// an empty value appearing in NullFields will be sent to the server as
11811	// null. It is an error if a field in this list has a non-empty value.
11812	// This may be used to include null fields in Patch requests.
11813	NullFields []string `json:"-"`
11814}
11815
11816func (s *RepricingRuleEligibleOfferMatcherStringMatcher) MarshalJSON() ([]byte, error) {
11817	type NoMethod RepricingRuleEligibleOfferMatcherStringMatcher
11818	raw := NoMethod(*s)
11819	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11820}
11821
11822// RepricingRuleRestriction: Definition of a rule restriction. At least
11823// one of the following needs to be true: (1) use_auto_pricing_min_price
11824// is true (2) floor.price_delta exists (3) floor.percentage_delta
11825// exists If floor.price_delta and floor.percentage_delta are both set
11826// on a rule, the highest value will be chosen by the Repricer. In other
11827// words, for a product with a price of $50, if the
11828// `floor.percentage_delta` is "-10" and the floor.price_delta is "-12",
11829// the offer price will only be lowered $5 (10% lower than the original
11830// offer price).
11831type RepricingRuleRestriction struct {
11832	// Floor: The inclusive floor lower bound. The repricing rule only
11833	// applies when new price >= floor.
11834	Floor *RepricingRuleRestrictionBoundary `json:"floor,omitempty"`
11835
11836	// UseAutoPricingMinPrice: If true, use the AUTO_PRICING_MIN_PRICE offer
11837	// attribute as the lower bound of the rule. If
11838	// use_auto_pricing_min_price is true, then only offers with
11839	// `AUTO_PRICING_MIN_PRICE` existing on the offer will get Repricer
11840	// treatment, even if a floor value is set on the rule. Also, if
11841	// use_auto_pricing_min_price is true, the floor restriction will be
11842	// ignored.
11843	UseAutoPricingMinPrice bool `json:"useAutoPricingMinPrice,omitempty"`
11844
11845	// ForceSendFields is a list of field names (e.g. "Floor") to
11846	// unconditionally include in API requests. By default, fields with
11847	// empty values are omitted from API requests. However, any non-pointer,
11848	// non-interface field appearing in ForceSendFields will be sent to the
11849	// server regardless of whether the field is empty or not. This may be
11850	// used to include empty fields in Patch requests.
11851	ForceSendFields []string `json:"-"`
11852
11853	// NullFields is a list of field names (e.g. "Floor") to include in API
11854	// requests with the JSON null value. By default, fields with empty
11855	// values are omitted from API requests. However, any field with an
11856	// empty value appearing in NullFields will be sent to the server as
11857	// null. It is an error if a field in this list has a non-empty value.
11858	// This may be used to include null fields in Patch requests.
11859	NullFields []string `json:"-"`
11860}
11861
11862func (s *RepricingRuleRestriction) MarshalJSON() ([]byte, error) {
11863	type NoMethod RepricingRuleRestriction
11864	raw := NoMethod(*s)
11865	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11866}
11867
11868// RepricingRuleRestrictionBoundary: Definition of a boundary.
11869type RepricingRuleRestrictionBoundary struct {
11870	// PercentageDelta: The percentage delta relative to the offer selling
11871	// price. This field is signed. It must be negative in floor. When it is
11872	// used in floor, it should be > -100. For example, if an offer is
11873	// selling at $10 and this field is -30 in floor, the repricing rule
11874	// only applies if the calculated new price is >= $7.
11875	PercentageDelta int64 `json:"percentageDelta,omitempty"`
11876
11877	// PriceDelta: The price micros relative to the offer selling price.
11878	// This field is signed. It must be negative in floor. For example, if
11879	// an offer is selling at $10 and this field is -$2 in floor, the
11880	// repricing rule only applies if the calculated new price is >= $8.
11881	PriceDelta string `json:"priceDelta,omitempty"`
11882
11883	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
11884	// unconditionally include in API requests. By default, fields with
11885	// empty values are omitted from API requests. However, any non-pointer,
11886	// non-interface field appearing in ForceSendFields will be sent to the
11887	// server regardless of whether the field is empty or not. This may be
11888	// used to include empty fields in Patch requests.
11889	ForceSendFields []string `json:"-"`
11890
11891	// NullFields is a list of field names (e.g. "PercentageDelta") to
11892	// include in API requests with the JSON null value. By default, fields
11893	// with empty values are omitted from API requests. However, any field
11894	// with an empty value appearing in NullFields will be sent to the
11895	// server as null. It is an error if a field in this list has a
11896	// non-empty value. This may be used to include null fields in Patch
11897	// requests.
11898	NullFields []string `json:"-"`
11899}
11900
11901func (s *RepricingRuleRestrictionBoundary) MarshalJSON() ([]byte, error) {
11902	type NoMethod RepricingRuleRestrictionBoundary
11903	raw := NoMethod(*s)
11904	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11905}
11906
11907// ReturnAddress: Return address resource.
11908type ReturnAddress struct {
11909	// Address: Required. The address.
11910	Address *ReturnAddressAddress `json:"address,omitempty"`
11911
11912	// Country: Required. The country of sale where the return address is
11913	// applicable.
11914	Country string `json:"country,omitempty"`
11915
11916	// Kind: Identifies what kind of resource this is. Value: the fixed
11917	// string "content#returnAddress"
11918	Kind string `json:"kind,omitempty"`
11919
11920	// Label: Required. The user-defined label of the return address. For
11921	// the default address, use the label "default".
11922	Label string `json:"label,omitempty"`
11923
11924	// PhoneNumber: Required. The merchant's contact phone number regarding
11925	// the return.
11926	PhoneNumber string `json:"phoneNumber,omitempty"`
11927
11928	// ReturnAddressId: Return address ID generated by Google.
11929	ReturnAddressId string `json:"returnAddressId,omitempty"`
11930
11931	// ServerResponse contains the HTTP response code and headers from the
11932	// server.
11933	googleapi.ServerResponse `json:"-"`
11934
11935	// ForceSendFields is a list of field names (e.g. "Address") to
11936	// unconditionally include in API requests. By default, fields with
11937	// empty values are omitted from API requests. However, any non-pointer,
11938	// non-interface field appearing in ForceSendFields will be sent to the
11939	// server regardless of whether the field is empty or not. This may be
11940	// used to include empty fields in Patch requests.
11941	ForceSendFields []string `json:"-"`
11942
11943	// NullFields is a list of field names (e.g. "Address") to include in
11944	// API requests with the JSON null value. By default, fields with empty
11945	// values are omitted from API requests. However, any field with an
11946	// empty value appearing in NullFields will be sent to the server as
11947	// null. It is an error if a field in this list has a non-empty value.
11948	// This may be used to include null fields in Patch requests.
11949	NullFields []string `json:"-"`
11950}
11951
11952func (s *ReturnAddress) MarshalJSON() ([]byte, error) {
11953	type NoMethod ReturnAddress
11954	raw := NoMethod(*s)
11955	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11956}
11957
11958type ReturnAddressAddress struct {
11959	// Country: CLDR country code (e.g. "US").
11960	Country string `json:"country,omitempty"`
11961
11962	// Locality: City, town or commune. May also include dependent
11963	// localities or sublocalities (e.g. neighborhoods or suburbs).
11964	Locality string `json:"locality,omitempty"`
11965
11966	// PostalCode: Postal code or ZIP (e.g. "94043").
11967	PostalCode string `json:"postalCode,omitempty"`
11968
11969	// RecipientName: Name of the recipient to address returns to.
11970	RecipientName string `json:"recipientName,omitempty"`
11971
11972	// Region: Top-level administrative subdivision of the country. For
11973	// example, a state like California ("CA") or a province like Quebec
11974	// ("QC").
11975	Region string `json:"region,omitempty"`
11976
11977	// StreetAddress: Street-level part of the address. May be up to two
11978	// lines, each line specified as an array element.
11979	StreetAddress []string `json:"streetAddress,omitempty"`
11980
11981	// ForceSendFields is a list of field names (e.g. "Country") to
11982	// unconditionally include in API requests. By default, fields with
11983	// empty values are omitted from API requests. However, any non-pointer,
11984	// non-interface field appearing in ForceSendFields will be sent to the
11985	// server regardless of whether the field is empty or not. This may be
11986	// used to include empty fields in Patch requests.
11987	ForceSendFields []string `json:"-"`
11988
11989	// NullFields is a list of field names (e.g. "Country") to include in
11990	// API requests with the JSON null value. By default, fields with empty
11991	// values are omitted from API requests. However, any field with an
11992	// empty value appearing in NullFields will be sent to the server as
11993	// null. It is an error if a field in this list has a non-empty value.
11994	// This may be used to include null fields in Patch requests.
11995	NullFields []string `json:"-"`
11996}
11997
11998func (s *ReturnAddressAddress) MarshalJSON() ([]byte, error) {
11999	type NoMethod ReturnAddressAddress
12000	raw := NoMethod(*s)
12001	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12002}
12003
12004// ReturnPolicy: Return policy resource.
12005type ReturnPolicy struct {
12006	// Country: Required. The country of sale where the return policy is
12007	// applicable.
12008	Country string `json:"country,omitempty"`
12009
12010	// Kind: Identifies what kind of resource this is. Value: the fixed
12011	// string "content#returnPolicy"
12012	Kind string `json:"kind,omitempty"`
12013
12014	// Label: Required. The user-defined label of the return policy. For the
12015	// default policy, use the label "default".
12016	Label string `json:"label,omitempty"`
12017
12018	// Name: Required. The name of the policy as shown in Merchant Center.
12019	Name string `json:"name,omitempty"`
12020
12021	// NonFreeReturnReasons: Return reasons that will incur return fees.
12022	NonFreeReturnReasons []string `json:"nonFreeReturnReasons,omitempty"`
12023
12024	// Policy: Required. The policy.
12025	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
12026
12027	// ReturnPolicyId: Return policy ID generated by Google.
12028	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
12029
12030	// SeasonalOverrides: An optional list of seasonal overrides.
12031	SeasonalOverrides []*ReturnPolicySeasonalOverride `json:"seasonalOverrides,omitempty"`
12032
12033	// ServerResponse contains the HTTP response code and headers from the
12034	// server.
12035	googleapi.ServerResponse `json:"-"`
12036
12037	// ForceSendFields is a list of field names (e.g. "Country") to
12038	// unconditionally include in API requests. By default, fields with
12039	// empty values are omitted from API requests. However, any non-pointer,
12040	// non-interface field appearing in ForceSendFields will be sent to the
12041	// server regardless of whether the field is empty or not. This may be
12042	// used to include empty fields in Patch requests.
12043	ForceSendFields []string `json:"-"`
12044
12045	// NullFields is a list of field names (e.g. "Country") to include in
12046	// API requests with the JSON null value. By default, fields with empty
12047	// values are omitted from API requests. However, any field with an
12048	// empty value appearing in NullFields will be sent to the server as
12049	// null. It is an error if a field in this list has a non-empty value.
12050	// This may be used to include null fields in Patch requests.
12051	NullFields []string `json:"-"`
12052}
12053
12054func (s *ReturnPolicy) MarshalJSON() ([]byte, error) {
12055	type NoMethod ReturnPolicy
12056	raw := NoMethod(*s)
12057	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12058}
12059
12060type ReturnPolicyPolicy struct {
12061	// LastReturnDate: Required. Last day for returning the items. In ISO
12062	// 8601 format. When specifying the return window like this, set the
12063	// policy type to "lastReturnDate". Use this for seasonal overrides
12064	// only.
12065	LastReturnDate string `json:"lastReturnDate,omitempty"`
12066
12067	// NumberOfDays: The number of days items can be returned after
12068	// delivery, where one day is defined to be 24 hours after the delivery
12069	// timestamp. When specifying the return window like this, set the
12070	// policy type to "numberOfDaysAfterDelivery". Acceptable values are 30,
12071	// 45, 60, 90, 100, 180, 270 and 365 for the default policy. Additional
12072	// policies further allow 14, 15, 21 and 28 days, but note that for most
12073	// items a minimum of 30 days is required for returns. Exceptions may be
12074	// made for electronics. A policy of less than 30 days can only be
12075	// applied to those items.
12076	NumberOfDays int64 `json:"numberOfDays,omitempty,string"`
12077
12078	// Type: Policy type. Use "lastReturnDate" for seasonal overrides only.
12079	// Note that for most items a minimum of 30 days is required for
12080	// returns. Exceptions may be made for electronics or non-returnable
12081	// items such as food, perishables, and living things. A policy of less
12082	// than 30 days can only be applied to those items. Acceptable values
12083	// are: - "lastReturnDate" - "lifetimeReturns" - "noReturns" -
12084	// "numberOfDaysAfterDelivery"
12085	Type string `json:"type,omitempty"`
12086
12087	// ForceSendFields is a list of field names (e.g. "LastReturnDate") to
12088	// unconditionally include in API requests. By default, fields with
12089	// empty values are omitted from API requests. However, any non-pointer,
12090	// non-interface field appearing in ForceSendFields will be sent to the
12091	// server regardless of whether the field is empty or not. This may be
12092	// used to include empty fields in Patch requests.
12093	ForceSendFields []string `json:"-"`
12094
12095	// NullFields is a list of field names (e.g. "LastReturnDate") to
12096	// include in API requests with the JSON null value. By default, fields
12097	// with empty values are omitted from API requests. However, any field
12098	// with an empty value appearing in NullFields will be sent to the
12099	// server as null. It is an error if a field in this list has a
12100	// non-empty value. This may be used to include null fields in Patch
12101	// requests.
12102	NullFields []string `json:"-"`
12103}
12104
12105func (s *ReturnPolicyPolicy) MarshalJSON() ([]byte, error) {
12106	type NoMethod ReturnPolicyPolicy
12107	raw := NoMethod(*s)
12108	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12109}
12110
12111type ReturnPolicySeasonalOverride struct {
12112	// EndDate: Required. Last day on which the override applies. In ISO
12113	// 8601 format.
12114	EndDate string `json:"endDate,omitempty"`
12115
12116	// Name: Required. The name of the seasonal override as shown in
12117	// Merchant Center.
12118	Name string `json:"name,omitempty"`
12119
12120	// Policy: Required. The policy which is in effect during that time.
12121	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
12122
12123	// StartDate: Required. First day on which the override applies. In ISO
12124	// 8601 format.
12125	StartDate string `json:"startDate,omitempty"`
12126
12127	// ForceSendFields is a list of field names (e.g. "EndDate") to
12128	// unconditionally include in API requests. By default, fields with
12129	// empty values are omitted from API requests. However, any non-pointer,
12130	// non-interface field appearing in ForceSendFields will be sent to the
12131	// server regardless of whether the field is empty or not. This may be
12132	// used to include empty fields in Patch requests.
12133	ForceSendFields []string `json:"-"`
12134
12135	// NullFields is a list of field names (e.g. "EndDate") to include in
12136	// API requests with the JSON null value. By default, fields with empty
12137	// values are omitted from API requests. However, any field with an
12138	// empty value appearing in NullFields will be sent to the server as
12139	// null. It is an error if a field in this list has a non-empty value.
12140	// This may be used to include null fields in Patch requests.
12141	NullFields []string `json:"-"`
12142}
12143
12144func (s *ReturnPolicySeasonalOverride) MarshalJSON() ([]byte, error) {
12145	type NoMethod ReturnPolicySeasonalOverride
12146	raw := NoMethod(*s)
12147	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12148}
12149
12150type ReturnPricingInfo struct {
12151	// ChargeReturnShippingFee: Default option for whether merchant should
12152	// charge the customer for return shipping costs, based on customer
12153	// selected return reason and merchant's return policy for the items
12154	// being returned.
12155	ChargeReturnShippingFee bool `json:"chargeReturnShippingFee,omitempty"`
12156
12157	// MaxReturnShippingFee: Maximum return shipping costs that may be
12158	// charged to the customer depending on merchant's assessment of the
12159	// return reason and the merchant's return policy for the items being
12160	// returned.
12161	MaxReturnShippingFee *MonetaryAmount `json:"maxReturnShippingFee,omitempty"`
12162
12163	// RefundableItemsTotalAmount: Total amount that can be refunded for the
12164	// items in this return. It represents the total amount received by the
12165	// merchant for the items, after applying merchant coupons.
12166	RefundableItemsTotalAmount *MonetaryAmount `json:"refundableItemsTotalAmount,omitempty"`
12167
12168	// RefundableShippingAmount: Maximum amount that can be refunded for the
12169	// original shipping fee.
12170	RefundableShippingAmount *MonetaryAmount `json:"refundableShippingAmount,omitempty"`
12171
12172	// TotalRefundedAmount: Total amount already refunded by the merchant.
12173	// It includes all types of refunds (items, shipping, etc.) Not provided
12174	// if no refund has been applied yet.
12175	TotalRefundedAmount *MonetaryAmount `json:"totalRefundedAmount,omitempty"`
12176
12177	// ForceSendFields is a list of field names (e.g.
12178	// "ChargeReturnShippingFee") to unconditionally include in API
12179	// requests. By default, fields with empty values are omitted from API
12180	// requests. However, any non-pointer, non-interface field appearing in
12181	// ForceSendFields will be sent to the server regardless of whether the
12182	// field is empty or not. This may be used to include empty fields in
12183	// Patch requests.
12184	ForceSendFields []string `json:"-"`
12185
12186	// NullFields is a list of field names (e.g. "ChargeReturnShippingFee")
12187	// to include in API requests with the JSON null value. By default,
12188	// fields with empty values are omitted from API requests. However, any
12189	// field with an empty value appearing in NullFields will be sent to the
12190	// server as null. It is an error if a field in this list has a
12191	// non-empty value. This may be used to include null fields in Patch
12192	// requests.
12193	NullFields []string `json:"-"`
12194}
12195
12196func (s *ReturnPricingInfo) MarshalJSON() ([]byte, error) {
12197	type NoMethod ReturnPricingInfo
12198	raw := NoMethod(*s)
12199	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12200}
12201
12202type ReturnShipment struct {
12203	// CreationDate: The date of creation of the shipment, in ISO 8601
12204	// format.
12205	CreationDate string `json:"creationDate,omitempty"`
12206
12207	// DeliveryDate: The date of delivery of the shipment, in ISO 8601
12208	// format.
12209	DeliveryDate string `json:"deliveryDate,omitempty"`
12210
12211	// ReturnMethodType: Type of the return method. Acceptable values are: -
12212	// "byMail" - "contactCustomerSupport" - "returnless"
12213	ReturnMethodType string `json:"returnMethodType,omitempty"`
12214
12215	// ShipmentId: Shipment ID generated by Google.
12216	ShipmentId string `json:"shipmentId,omitempty"`
12217
12218	// ShipmentTrackingInfos: Tracking information of the shipment. One
12219	// return shipment might be handled by several shipping carriers
12220	// sequentially.
12221	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
12222
12223	// ShippingDate: The date of shipping of the shipment, in ISO 8601
12224	// format.
12225	ShippingDate string `json:"shippingDate,omitempty"`
12226
12227	// State: State of the shipment. Acceptable values are: - "completed"
12228	// - "new" - "shipped" - "undeliverable" - "pending"
12229	State string `json:"state,omitempty"`
12230
12231	// ForceSendFields is a list of field names (e.g. "CreationDate") to
12232	// unconditionally include in API requests. By default, fields with
12233	// empty values are omitted from API requests. However, any non-pointer,
12234	// non-interface field appearing in ForceSendFields will be sent to the
12235	// server regardless of whether the field is empty or not. This may be
12236	// used to include empty fields in Patch requests.
12237	ForceSendFields []string `json:"-"`
12238
12239	// NullFields is a list of field names (e.g. "CreationDate") to include
12240	// in API requests with the JSON null value. By default, fields with
12241	// empty values are omitted from API requests. However, any field with
12242	// an empty value appearing in NullFields will be sent to the server as
12243	// null. It is an error if a field in this list has a non-empty value.
12244	// This may be used to include null fields in Patch requests.
12245	NullFields []string `json:"-"`
12246}
12247
12248func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
12249	type NoMethod ReturnShipment
12250	raw := NoMethod(*s)
12251	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12252}
12253
12254type ReturnaddressCustomBatchRequest struct {
12255	// Entries: The request entries to be processed in the batch.
12256	Entries []*ReturnaddressCustomBatchRequestEntry `json:"entries,omitempty"`
12257
12258	// ForceSendFields is a list of field names (e.g. "Entries") to
12259	// unconditionally include in API requests. By default, fields with
12260	// empty values are omitted from API requests. However, any non-pointer,
12261	// non-interface field appearing in ForceSendFields will be sent to the
12262	// server regardless of whether the field is empty or not. This may be
12263	// used to include empty fields in Patch requests.
12264	ForceSendFields []string `json:"-"`
12265
12266	// NullFields is a list of field names (e.g. "Entries") to include in
12267	// API requests with the JSON null value. By default, fields with empty
12268	// values are omitted from API requests. However, any field with an
12269	// empty value appearing in NullFields will be sent to the server as
12270	// null. It is an error if a field in this list has a non-empty value.
12271	// This may be used to include null fields in Patch requests.
12272	NullFields []string `json:"-"`
12273}
12274
12275func (s *ReturnaddressCustomBatchRequest) MarshalJSON() ([]byte, error) {
12276	type NoMethod ReturnaddressCustomBatchRequest
12277	raw := NoMethod(*s)
12278	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12279}
12280
12281type ReturnaddressCustomBatchRequestEntry struct {
12282	// BatchId: An entry ID, unique within the batch request.
12283	BatchId int64 `json:"batchId,omitempty"`
12284
12285	// MerchantId: The Merchant Center account ID.
12286	MerchantId uint64 `json:"merchantId,omitempty,string"`
12287
12288	// Method: Method of the batch request entry. Acceptable values are: -
12289	// "delete" - "get" - "insert"
12290	Method string `json:"method,omitempty"`
12291
12292	// ReturnAddress: The return address to submit. This should be set only
12293	// if the method is `insert`.
12294	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
12295
12296	// ReturnAddressId: The return address ID. This should be set only if
12297	// the method is `delete` or `get`.
12298	ReturnAddressId string `json:"returnAddressId,omitempty"`
12299
12300	// ForceSendFields is a list of field names (e.g. "BatchId") to
12301	// unconditionally include in API requests. By default, fields with
12302	// empty values are omitted from API requests. However, any non-pointer,
12303	// non-interface field appearing in ForceSendFields will be sent to the
12304	// server regardless of whether the field is empty or not. This may be
12305	// used to include empty fields in Patch requests.
12306	ForceSendFields []string `json:"-"`
12307
12308	// NullFields is a list of field names (e.g. "BatchId") to include in
12309	// API requests with the JSON null value. By default, fields with empty
12310	// values are omitted from API requests. However, any field with an
12311	// empty value appearing in NullFields will be sent to the server as
12312	// null. It is an error if a field in this list has a non-empty value.
12313	// This may be used to include null fields in Patch requests.
12314	NullFields []string `json:"-"`
12315}
12316
12317func (s *ReturnaddressCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12318	type NoMethod ReturnaddressCustomBatchRequestEntry
12319	raw := NoMethod(*s)
12320	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12321}
12322
12323type ReturnaddressCustomBatchResponse struct {
12324	// Entries: The result of the execution of the batch requests.
12325	Entries []*ReturnaddressCustomBatchResponseEntry `json:"entries,omitempty"`
12326
12327	// Kind: Identifies what kind of resource this is. Value: the fixed
12328	// string "content#returnaddressCustomBatchResponse".
12329	Kind string `json:"kind,omitempty"`
12330
12331	// ServerResponse contains the HTTP response code and headers from the
12332	// server.
12333	googleapi.ServerResponse `json:"-"`
12334
12335	// ForceSendFields is a list of field names (e.g. "Entries") to
12336	// unconditionally include in API requests. By default, fields with
12337	// empty values are omitted from API requests. However, any non-pointer,
12338	// non-interface field appearing in ForceSendFields will be sent to the
12339	// server regardless of whether the field is empty or not. This may be
12340	// used to include empty fields in Patch requests.
12341	ForceSendFields []string `json:"-"`
12342
12343	// NullFields is a list of field names (e.g. "Entries") to include in
12344	// API requests with the JSON null value. By default, fields with empty
12345	// values are omitted from API requests. However, any field with an
12346	// empty value appearing in NullFields will be sent to the server as
12347	// null. It is an error if a field in this list has a non-empty value.
12348	// This may be used to include null fields in Patch requests.
12349	NullFields []string `json:"-"`
12350}
12351
12352func (s *ReturnaddressCustomBatchResponse) MarshalJSON() ([]byte, error) {
12353	type NoMethod ReturnaddressCustomBatchResponse
12354	raw := NoMethod(*s)
12355	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12356}
12357
12358type ReturnaddressCustomBatchResponseEntry struct {
12359	// BatchId: The ID of the request entry to which this entry responds.
12360	BatchId int64 `json:"batchId,omitempty"`
12361
12362	// Errors: A list of errors defined if, and only if, the request failed.
12363	Errors *Errors `json:"errors,omitempty"`
12364
12365	// Kind: Identifies what kind of resource this is. Value: the fixed
12366	// string "content#returnaddressCustomBatchResponseEntry"
12367	Kind string `json:"kind,omitempty"`
12368
12369	// ReturnAddress: The retrieved return address.
12370	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
12371
12372	// ForceSendFields is a list of field names (e.g. "BatchId") to
12373	// unconditionally include in API requests. By default, fields with
12374	// empty values are omitted from API requests. However, any non-pointer,
12375	// non-interface field appearing in ForceSendFields will be sent to the
12376	// server regardless of whether the field is empty or not. This may be
12377	// used to include empty fields in Patch requests.
12378	ForceSendFields []string `json:"-"`
12379
12380	// NullFields is a list of field names (e.g. "BatchId") to include in
12381	// API requests with the JSON null value. By default, fields with empty
12382	// values are omitted from API requests. However, any field with an
12383	// empty value appearing in NullFields will be sent to the server as
12384	// null. It is an error if a field in this list has a non-empty value.
12385	// This may be used to include null fields in Patch requests.
12386	NullFields []string `json:"-"`
12387}
12388
12389func (s *ReturnaddressCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12390	type NoMethod ReturnaddressCustomBatchResponseEntry
12391	raw := NoMethod(*s)
12392	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12393}
12394
12395type ReturnaddressListResponse struct {
12396	// Kind: Identifies what kind of resource this is. Value: the fixed
12397	// string "content#returnaddressListResponse".
12398	Kind string `json:"kind,omitempty"`
12399
12400	// NextPageToken: The token for the retrieval of the next page of
12401	// addresses.
12402	NextPageToken string `json:"nextPageToken,omitempty"`
12403
12404	Resources []*ReturnAddress `json:"resources,omitempty"`
12405
12406	// ServerResponse contains the HTTP response code and headers from the
12407	// server.
12408	googleapi.ServerResponse `json:"-"`
12409
12410	// ForceSendFields is a list of field names (e.g. "Kind") to
12411	// unconditionally include in API requests. By default, fields with
12412	// empty values are omitted from API requests. However, any non-pointer,
12413	// non-interface field appearing in ForceSendFields will be sent to the
12414	// server regardless of whether the field is empty or not. This may be
12415	// used to include empty fields in Patch requests.
12416	ForceSendFields []string `json:"-"`
12417
12418	// NullFields is a list of field names (e.g. "Kind") to include in API
12419	// requests with the JSON null value. By default, fields with empty
12420	// values are omitted from API requests. However, any field with an
12421	// empty value appearing in NullFields will be sent to the server as
12422	// null. It is an error if a field in this list has a non-empty value.
12423	// This may be used to include null fields in Patch requests.
12424	NullFields []string `json:"-"`
12425}
12426
12427func (s *ReturnaddressListResponse) MarshalJSON() ([]byte, error) {
12428	type NoMethod ReturnaddressListResponse
12429	raw := NoMethod(*s)
12430	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12431}
12432
12433type ReturnpolicyCustomBatchRequest struct {
12434	// Entries: The request entries to be processed in the batch.
12435	Entries []*ReturnpolicyCustomBatchRequestEntry `json:"entries,omitempty"`
12436
12437	// ForceSendFields is a list of field names (e.g. "Entries") to
12438	// unconditionally include in API requests. By default, fields with
12439	// empty values are omitted from API requests. However, any non-pointer,
12440	// non-interface field appearing in ForceSendFields will be sent to the
12441	// server regardless of whether the field is empty or not. This may be
12442	// used to include empty fields in Patch requests.
12443	ForceSendFields []string `json:"-"`
12444
12445	// NullFields is a list of field names (e.g. "Entries") to include in
12446	// API requests with the JSON null value. By default, fields with empty
12447	// values are omitted from API requests. However, any field with an
12448	// empty value appearing in NullFields will be sent to the server as
12449	// null. It is an error if a field in this list has a non-empty value.
12450	// This may be used to include null fields in Patch requests.
12451	NullFields []string `json:"-"`
12452}
12453
12454func (s *ReturnpolicyCustomBatchRequest) MarshalJSON() ([]byte, error) {
12455	type NoMethod ReturnpolicyCustomBatchRequest
12456	raw := NoMethod(*s)
12457	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12458}
12459
12460type ReturnpolicyCustomBatchRequestEntry struct {
12461	// BatchId: An entry ID, unique within the batch request.
12462	BatchId int64 `json:"batchId,omitempty"`
12463
12464	// MerchantId: The Merchant Center account ID.
12465	MerchantId uint64 `json:"merchantId,omitempty,string"`
12466
12467	// Method: Method of the batch request entry. Acceptable values are: -
12468	// "delete" - "get" - "insert"
12469	Method string `json:"method,omitempty"`
12470
12471	// ReturnPolicy: The return policy to submit. This should be set only if
12472	// the method is `insert`.
12473	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
12474
12475	// ReturnPolicyId: The return policy ID. This should be set only if the
12476	// method is `delete` or `get`.
12477	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
12478
12479	// ForceSendFields is a list of field names (e.g. "BatchId") to
12480	// unconditionally include in API requests. By default, fields with
12481	// empty values are omitted from API requests. However, any non-pointer,
12482	// non-interface field appearing in ForceSendFields will be sent to the
12483	// server regardless of whether the field is empty or not. This may be
12484	// used to include empty fields in Patch requests.
12485	ForceSendFields []string `json:"-"`
12486
12487	// NullFields is a list of field names (e.g. "BatchId") to include in
12488	// API requests with the JSON null value. By default, fields with empty
12489	// values are omitted from API requests. However, any field with an
12490	// empty value appearing in NullFields will be sent to the server as
12491	// null. It is an error if a field in this list has a non-empty value.
12492	// This may be used to include null fields in Patch requests.
12493	NullFields []string `json:"-"`
12494}
12495
12496func (s *ReturnpolicyCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12497	type NoMethod ReturnpolicyCustomBatchRequestEntry
12498	raw := NoMethod(*s)
12499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12500}
12501
12502type ReturnpolicyCustomBatchResponse struct {
12503	// Entries: The result of the execution of the batch requests.
12504	Entries []*ReturnpolicyCustomBatchResponseEntry `json:"entries,omitempty"`
12505
12506	// Kind: Identifies what kind of resource this is. Value: the fixed
12507	// string "content#returnpolicyCustomBatchResponse".
12508	Kind string `json:"kind,omitempty"`
12509
12510	// ServerResponse contains the HTTP response code and headers from the
12511	// server.
12512	googleapi.ServerResponse `json:"-"`
12513
12514	// ForceSendFields is a list of field names (e.g. "Entries") to
12515	// unconditionally include in API requests. By default, fields with
12516	// empty values are omitted from API requests. However, any non-pointer,
12517	// non-interface field appearing in ForceSendFields will be sent to the
12518	// server regardless of whether the field is empty or not. This may be
12519	// used to include empty fields in Patch requests.
12520	ForceSendFields []string `json:"-"`
12521
12522	// NullFields is a list of field names (e.g. "Entries") to include in
12523	// API requests with the JSON null value. By default, fields with empty
12524	// values are omitted from API requests. However, any field with an
12525	// empty value appearing in NullFields will be sent to the server as
12526	// null. It is an error if a field in this list has a non-empty value.
12527	// This may be used to include null fields in Patch requests.
12528	NullFields []string `json:"-"`
12529}
12530
12531func (s *ReturnpolicyCustomBatchResponse) MarshalJSON() ([]byte, error) {
12532	type NoMethod ReturnpolicyCustomBatchResponse
12533	raw := NoMethod(*s)
12534	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12535}
12536
12537type ReturnpolicyCustomBatchResponseEntry struct {
12538	// BatchId: The ID of the request entry to which this entry responds.
12539	BatchId int64 `json:"batchId,omitempty"`
12540
12541	// Errors: A list of errors defined if, and only if, the request failed.
12542	Errors *Errors `json:"errors,omitempty"`
12543
12544	// Kind: Identifies what kind of resource this is. Value: the fixed
12545	// string "content#returnpolicyCustomBatchResponseEntry"
12546	Kind string `json:"kind,omitempty"`
12547
12548	// ReturnPolicy: The retrieved return policy.
12549	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
12550
12551	// ForceSendFields is a list of field names (e.g. "BatchId") to
12552	// unconditionally include in API requests. By default, fields with
12553	// empty values are omitted from API requests. However, any non-pointer,
12554	// non-interface field appearing in ForceSendFields will be sent to the
12555	// server regardless of whether the field is empty or not. This may be
12556	// used to include empty fields in Patch requests.
12557	ForceSendFields []string `json:"-"`
12558
12559	// NullFields is a list of field names (e.g. "BatchId") to include in
12560	// API requests with the JSON null value. By default, fields with empty
12561	// values are omitted from API requests. However, any field with an
12562	// empty value appearing in NullFields will be sent to the server as
12563	// null. It is an error if a field in this list has a non-empty value.
12564	// This may be used to include null fields in Patch requests.
12565	NullFields []string `json:"-"`
12566}
12567
12568func (s *ReturnpolicyCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12569	type NoMethod ReturnpolicyCustomBatchResponseEntry
12570	raw := NoMethod(*s)
12571	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12572}
12573
12574type ReturnpolicyListResponse struct {
12575	// Kind: Identifies what kind of resource this is. Value: the fixed
12576	// string "content#returnpolicyListResponse".
12577	Kind string `json:"kind,omitempty"`
12578
12579	Resources []*ReturnPolicy `json:"resources,omitempty"`
12580
12581	// ServerResponse contains the HTTP response code and headers from the
12582	// server.
12583	googleapi.ServerResponse `json:"-"`
12584
12585	// ForceSendFields is a list of field names (e.g. "Kind") to
12586	// unconditionally include in API requests. By default, fields with
12587	// empty values are omitted from API requests. However, any non-pointer,
12588	// non-interface field appearing in ForceSendFields will be sent to the
12589	// server regardless of whether the field is empty or not. This may be
12590	// used to include empty fields in Patch requests.
12591	ForceSendFields []string `json:"-"`
12592
12593	// NullFields is a list of field names (e.g. "Kind") to include in API
12594	// requests with the JSON null value. By default, fields with empty
12595	// values are omitted from API requests. However, any field with an
12596	// empty value appearing in NullFields will be sent to the server as
12597	// null. It is an error if a field in this list has a non-empty value.
12598	// This may be used to include null fields in Patch requests.
12599	NullFields []string `json:"-"`
12600}
12601
12602func (s *ReturnpolicyListResponse) MarshalJSON() ([]byte, error) {
12603	type NoMethod ReturnpolicyListResponse
12604	raw := NoMethod(*s)
12605	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12606}
12607
12608type Row struct {
12609	// Cells: The list of cells that constitute the row. Must have the same
12610	// length as `columnHeaders` for two-dimensional tables, a length of 1
12611	// for one-dimensional tables. Required.
12612	Cells []*Value `json:"cells,omitempty"`
12613
12614	// ForceSendFields is a list of field names (e.g. "Cells") to
12615	// unconditionally include in API requests. By default, fields with
12616	// empty values are omitted from API requests. However, any non-pointer,
12617	// non-interface field appearing in ForceSendFields will be sent to the
12618	// server regardless of whether the field is empty or not. This may be
12619	// used to include empty fields in Patch requests.
12620	ForceSendFields []string `json:"-"`
12621
12622	// NullFields is a list of field names (e.g. "Cells") to include in API
12623	// requests with the JSON null value. By default, fields with empty
12624	// values are omitted from API requests. However, any field with an
12625	// empty value appearing in NullFields will be sent to the server as
12626	// null. It is an error if a field in this list has a non-empty value.
12627	// This may be used to include null fields in Patch requests.
12628	NullFields []string `json:"-"`
12629}
12630
12631func (s *Row) MarshalJSON() ([]byte, error) {
12632	type NoMethod Row
12633	raw := NoMethod(*s)
12634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12635}
12636
12637type Service struct {
12638	// Active: A boolean exposing the active status of the shipping service.
12639	// Required.
12640	Active bool `json:"active,omitempty"`
12641
12642	// Currency: The CLDR code of the currency to which this service
12643	// applies. Must match that of the prices in rate groups.
12644	Currency string `json:"currency,omitempty"`
12645
12646	// DeliveryCountry: The CLDR territory code of the country to which the
12647	// service applies. Required.
12648	DeliveryCountry string `json:"deliveryCountry,omitempty"`
12649
12650	// DeliveryTime: Time spent in various aspects from order to the
12651	// delivery of the product. Required.
12652	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
12653
12654	// Eligibility: Eligibility for this service. Acceptable values are: -
12655	// "All scenarios" - "All scenarios except Shopping Actions" -
12656	// "Shopping Actions"
12657	Eligibility string `json:"eligibility,omitempty"`
12658
12659	// MinimumOrderValue: Minimum order value for this service. If set,
12660	// indicates that customers will have to spend at least this amount. All
12661	// prices within a service must have the same currency. Cannot be set
12662	// together with minimum_order_value_table.
12663	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
12664
12665	// MinimumOrderValueTable: Table of per store minimum order values for
12666	// the pickup fulfillment type. Cannot be set together with
12667	// minimum_order_value.
12668	MinimumOrderValueTable *MinimumOrderValueTable `json:"minimumOrderValueTable,omitempty"`
12669
12670	// Name: Free-form name of the service. Must be unique within target
12671	// account. Required.
12672	Name string `json:"name,omitempty"`
12673
12674	// PickupService: The carrier-service pair delivering items to
12675	// collection points. The list of supported pickup services can be
12676	// retrieved via the `getSupportedPickupServices` method. Required if
12677	// and only if the service delivery type is `pickup`.
12678	PickupService *PickupCarrierService `json:"pickupService,omitempty"`
12679
12680	// RateGroups: Shipping rate group definitions. Only the last one is
12681	// allowed to have an empty `applicableShippingLabels`, which means
12682	// "everything else". The other `applicableShippingLabels` must not
12683	// overlap.
12684	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
12685
12686	// ShipmentType: Type of locations this service ships orders to.
12687	// Acceptable values are: - "delivery" - "pickup"
12688	ShipmentType string `json:"shipmentType,omitempty"`
12689
12690	// ForceSendFields is a list of field names (e.g. "Active") to
12691	// unconditionally include in API requests. By default, fields with
12692	// empty values are omitted from API requests. However, any non-pointer,
12693	// non-interface field appearing in ForceSendFields will be sent to the
12694	// server regardless of whether the field is empty or not. This may be
12695	// used to include empty fields in Patch requests.
12696	ForceSendFields []string `json:"-"`
12697
12698	// NullFields is a list of field names (e.g. "Active") to include in API
12699	// requests with the JSON null value. By default, fields with empty
12700	// values are omitted from API requests. However, any field with an
12701	// empty value appearing in NullFields will be sent to the server as
12702	// null. It is an error if a field in this list has a non-empty value.
12703	// This may be used to include null fields in Patch requests.
12704	NullFields []string `json:"-"`
12705}
12706
12707func (s *Service) MarshalJSON() ([]byte, error) {
12708	type NoMethod Service
12709	raw := NoMethod(*s)
12710	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12711}
12712
12713// SettlementReport:  Settlement reports detail order-level and
12714// item-level credits and debits between you and Google.
12715type SettlementReport struct {
12716	// EndDate: The end date on which all transactions are included in the
12717	// report, in ISO 8601 format.
12718	EndDate string `json:"endDate,omitempty"`
12719
12720	// Kind: Identifies what kind of resource this is. Value: the fixed
12721	// string "content#settlementReport"
12722	Kind string `json:"kind,omitempty"`
12723
12724	// PreviousBalance: The residual amount from the previous invoice. This
12725	// is set only if the previous invoices are not paid because of negative
12726	// balance.
12727	PreviousBalance *Price `json:"previousBalance,omitempty"`
12728
12729	// SettlementId: The ID of the settlement report.
12730	SettlementId string `json:"settlementId,omitempty"`
12731
12732	// StartDate: The start date on which all transactions are included in
12733	// the report, in ISO 8601 format.
12734	StartDate string `json:"startDate,omitempty"`
12735
12736	// TransferAmount: The money due to the merchant.
12737	TransferAmount *Price `json:"transferAmount,omitempty"`
12738
12739	// TransferDate: Date on which transfer for this payment was initiated
12740	// by Google, in ISO 8601 format.
12741	TransferDate string `json:"transferDate,omitempty"`
12742
12743	// TransferIds: The list of bank identifiers used for the transfer. e.g.
12744	// Trace ID for Federal Automated Clearing House (ACH). This may also be
12745	// known as the Wire ID.
12746	TransferIds []string `json:"transferIds,omitempty"`
12747
12748	// ServerResponse contains the HTTP response code and headers from the
12749	// server.
12750	googleapi.ServerResponse `json:"-"`
12751
12752	// ForceSendFields is a list of field names (e.g. "EndDate") to
12753	// unconditionally include in API requests. By default, fields with
12754	// empty values are omitted from API requests. However, any non-pointer,
12755	// non-interface field appearing in ForceSendFields will be sent to the
12756	// server regardless of whether the field is empty or not. This may be
12757	// used to include empty fields in Patch requests.
12758	ForceSendFields []string `json:"-"`
12759
12760	// NullFields is a list of field names (e.g. "EndDate") to include in
12761	// API requests with the JSON null value. By default, fields with empty
12762	// values are omitted from API requests. However, any field with an
12763	// empty value appearing in NullFields will be sent to the server as
12764	// null. It is an error if a field in this list has a non-empty value.
12765	// This may be used to include null fields in Patch requests.
12766	NullFields []string `json:"-"`
12767}
12768
12769func (s *SettlementReport) MarshalJSON() ([]byte, error) {
12770	type NoMethod SettlementReport
12771	raw := NoMethod(*s)
12772	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12773}
12774
12775// SettlementTransaction: Settlement transactions give a detailed
12776// breakdown of the settlement report.
12777type SettlementTransaction struct {
12778	// Amount: The amount for the transaction.
12779	Amount *SettlementTransactionAmount `json:"amount,omitempty"`
12780
12781	// Identifiers: Identifiers of the transaction.
12782	Identifiers *SettlementTransactionIdentifiers `json:"identifiers,omitempty"`
12783
12784	// Kind: Identifies what kind of resource this is. Value: the fixed
12785	// string "content#settlementTransaction"
12786	Kind string `json:"kind,omitempty"`
12787
12788	// Transaction: Details of the transaction.
12789	Transaction *SettlementTransactionTransaction `json:"transaction,omitempty"`
12790
12791	// ForceSendFields is a list of field names (e.g. "Amount") to
12792	// unconditionally include in API requests. By default, fields with
12793	// empty values are omitted from API requests. However, any non-pointer,
12794	// non-interface field appearing in ForceSendFields will be sent to the
12795	// server regardless of whether the field is empty or not. This may be
12796	// used to include empty fields in Patch requests.
12797	ForceSendFields []string `json:"-"`
12798
12799	// NullFields is a list of field names (e.g. "Amount") to include in API
12800	// requests with the JSON null value. By default, fields with empty
12801	// values are omitted from API requests. However, any field with an
12802	// empty value appearing in NullFields will be sent to the server as
12803	// null. It is an error if a field in this list has a non-empty value.
12804	// This may be used to include null fields in Patch requests.
12805	NullFields []string `json:"-"`
12806}
12807
12808func (s *SettlementTransaction) MarshalJSON() ([]byte, error) {
12809	type NoMethod SettlementTransaction
12810	raw := NoMethod(*s)
12811	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12812}
12813
12814type SettlementTransactionAmount struct {
12815	Commission *SettlementTransactionAmountCommission `json:"commission,omitempty"`
12816
12817	// Description: The description of the event. Acceptable values are: -
12818	// "taxWithhold" - "principal" - "principalAdjustment" -
12819	// "shippingFee" - "merchantRemittedSalesTax" -
12820	// "googleRemittedSalesTax" - "merchantCoupon" -
12821	// "merchantCouponTax" - "merchantRemittedDisposalTax" -
12822	// "googleRemittedDisposalTax" - "merchantRemittedRedemptionFee" -
12823	// "googleRemittedRedemptionFee" - "eeeEcoFee" - "furnitureEcoFee"
12824	// - "copyPrivateFee" - "eeeEcoFeeCommission" -
12825	// "furnitureEcoFeeCommission" - "copyPrivateFeeCommission" -
12826	// "principalRefund" - "principalRefundTax" - "itemCommission" -
12827	// "adjustmentCommission" - "shippingFeeCommission" -
12828	// "commissionRefund" - "damaged" - "damagedOrDefectiveItem" -
12829	// "expiredItem" - "faultyItem" - "incorrectItemReceived" -
12830	// "itemMissing" - "qualityNotExpected" - "receivedTooLate" -
12831	// "storePackageMissing" - "transitPackageMissing" -
12832	// "unsuccessfulDeliveryUndeliverable" - "wrongChargeInStore" -
12833	// "wrongItem" - "returns" - "undeliverable" -
12834	// "refundFromMerchant" - "returnLabelShippingFee"
12835	Description string `json:"description,omitempty"`
12836
12837	// TransactionAmount: The amount that contributes to the line item
12838	// price.
12839	TransactionAmount *Price `json:"transactionAmount,omitempty"`
12840
12841	// Type: The type of the amount. Acceptable values are: - "itemPrice"
12842	// - "orderPrice" - "refund" - "earlyRefund" - "courtesyRefund"
12843	// - "returnRefund" - "returnLabelShippingFeeAmount"
12844	Type string `json:"type,omitempty"`
12845
12846	// ForceSendFields is a list of field names (e.g. "Commission") to
12847	// unconditionally include in API requests. By default, fields with
12848	// empty values are omitted from API requests. However, any non-pointer,
12849	// non-interface field appearing in ForceSendFields will be sent to the
12850	// server regardless of whether the field is empty or not. This may be
12851	// used to include empty fields in Patch requests.
12852	ForceSendFields []string `json:"-"`
12853
12854	// NullFields is a list of field names (e.g. "Commission") to include in
12855	// API requests with the JSON null value. By default, fields with empty
12856	// values are omitted from API requests. However, any field with an
12857	// empty value appearing in NullFields will be sent to the server as
12858	// null. It is an error if a field in this list has a non-empty value.
12859	// This may be used to include null fields in Patch requests.
12860	NullFields []string `json:"-"`
12861}
12862
12863func (s *SettlementTransactionAmount) MarshalJSON() ([]byte, error) {
12864	type NoMethod SettlementTransactionAmount
12865	raw := NoMethod(*s)
12866	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12867}
12868
12869type SettlementTransactionAmountCommission struct {
12870	// Category: The category of the commission. Acceptable values are: -
12871	// "animalsAndPetSupplies" - "dogCatFoodAndCatLitter" -
12872	// "apparelAndAccessories" - "shoesHandbagsAndSunglasses" -
12873	// "costumesAndAccessories" - "jewelry" - "watches" -
12874	// "hobbiesArtsAndCrafts" - "homeAndGarden" -
12875	// "entertainmentCollectibles" - "collectibleCoins" -
12876	// "sportsCollectibles" - "sportingGoods" - "toysAndGames" -
12877	// "musicalInstruments" - "giftCards" - "babyAndToddler" -
12878	// "babyFoodWipesAndDiapers" - "businessAndIndustrial" -
12879	// "camerasOpticsAndPhotography" - "consumerElectronics" -
12880	// "electronicsAccessories" - "personalComputers" -
12881	// "videoGameConsoles" - "foodAndGrocery" - "beverages" -
12882	// "tobaccoProducts" - "furniture" - "hardware" -
12883	// "buildingMaterials" - "tools" - "healthAndPersonalCare" -
12884	// "beauty" - "householdSupplies" - "kitchenAndDining" -
12885	// "majorAppliances" - "luggageAndBags" - "media" -
12886	// "officeSupplies" - "softwareAndVideoGames" -
12887	// "vehiclePartsAndAccessories" - "vehicleTiresAndWheels" -
12888	// "vehicles" - "everythingElse"
12889	Category string `json:"category,omitempty"`
12890
12891	// Rate: Rate of the commission in percentage.
12892	Rate string `json:"rate,omitempty"`
12893
12894	// ForceSendFields is a list of field names (e.g. "Category") to
12895	// unconditionally include in API requests. By default, fields with
12896	// empty values are omitted from API requests. However, any non-pointer,
12897	// non-interface field appearing in ForceSendFields will be sent to the
12898	// server regardless of whether the field is empty or not. This may be
12899	// used to include empty fields in Patch requests.
12900	ForceSendFields []string `json:"-"`
12901
12902	// NullFields is a list of field names (e.g. "Category") to include in
12903	// API requests with the JSON null value. By default, fields with empty
12904	// values are omitted from API requests. However, any field with an
12905	// empty value appearing in NullFields will be sent to the server as
12906	// null. It is an error if a field in this list has a non-empty value.
12907	// This may be used to include null fields in Patch requests.
12908	NullFields []string `json:"-"`
12909}
12910
12911func (s *SettlementTransactionAmountCommission) MarshalJSON() ([]byte, error) {
12912	type NoMethod SettlementTransactionAmountCommission
12913	raw := NoMethod(*s)
12914	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12915}
12916
12917type SettlementTransactionIdentifiers struct {
12918	// AdjustmentId: The identifier of the adjustments, if it is available.
12919	AdjustmentId string `json:"adjustmentId,omitempty"`
12920
12921	// MerchantOrderId: The merchant provided order ID.
12922	MerchantOrderId string `json:"merchantOrderId,omitempty"`
12923
12924	// OrderItemId: The identifier of the item.
12925	OrderItemId string `json:"orderItemId,omitempty"`
12926
12927	// SettlementEntryId: The unique ID of the settlement transaction entry.
12928	SettlementEntryId string `json:"settlementEntryId,omitempty"`
12929
12930	// ShipmentIds: The shipment ids for the item.
12931	ShipmentIds []string `json:"shipmentIds,omitempty"`
12932
12933	// TransactionId: The Google transaction ID.
12934	TransactionId string `json:"transactionId,omitempty"`
12935
12936	// ForceSendFields is a list of field names (e.g. "AdjustmentId") to
12937	// unconditionally include in API requests. By default, fields with
12938	// empty values are omitted from API requests. However, any non-pointer,
12939	// non-interface field appearing in ForceSendFields will be sent to the
12940	// server regardless of whether the field is empty or not. This may be
12941	// used to include empty fields in Patch requests.
12942	ForceSendFields []string `json:"-"`
12943
12944	// NullFields is a list of field names (e.g. "AdjustmentId") to include
12945	// in API requests with the JSON null value. By default, fields with
12946	// empty values are omitted from API requests. However, any field with
12947	// an empty value appearing in NullFields will be sent to the server as
12948	// null. It is an error if a field in this list has a non-empty value.
12949	// This may be used to include null fields in Patch requests.
12950	NullFields []string `json:"-"`
12951}
12952
12953func (s *SettlementTransactionIdentifiers) MarshalJSON() ([]byte, error) {
12954	type NoMethod SettlementTransactionIdentifiers
12955	raw := NoMethod(*s)
12956	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12957}
12958
12959type SettlementTransactionTransaction struct {
12960	// PostDate: The time on which the event occurred in ISO 8601 format.
12961	PostDate string `json:"postDate,omitempty"`
12962
12963	// Type: The type of the transaction that occurred. Acceptable values
12964	// are: - "order" - "reversal" - "orderRefund" -
12965	// "reversalRefund" - "issueRelatedRefundAndReplacement" -
12966	// "returnLabelShippingFeeTransaction" -
12967	// "reversalIssueRelatedRefundAndReplacement" -
12968	// "reversalReturnLabelShippingFeeTransaction"
12969	Type string `json:"type,omitempty"`
12970
12971	// ForceSendFields is a list of field names (e.g. "PostDate") to
12972	// unconditionally include in API requests. By default, fields with
12973	// empty values are omitted from API requests. However, any non-pointer,
12974	// non-interface field appearing in ForceSendFields will be sent to the
12975	// server regardless of whether the field is empty or not. This may be
12976	// used to include empty fields in Patch requests.
12977	ForceSendFields []string `json:"-"`
12978
12979	// NullFields is a list of field names (e.g. "PostDate") to include in
12980	// API requests with the JSON null value. By default, fields with empty
12981	// values are omitted from API requests. However, any field with an
12982	// empty value appearing in NullFields will be sent to the server as
12983	// null. It is an error if a field in this list has a non-empty value.
12984	// This may be used to include null fields in Patch requests.
12985	NullFields []string `json:"-"`
12986}
12987
12988func (s *SettlementTransactionTransaction) MarshalJSON() ([]byte, error) {
12989	type NoMethod SettlementTransactionTransaction
12990	raw := NoMethod(*s)
12991	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12992}
12993
12994type SettlementreportsListResponse struct {
12995	// Kind: Identifies what kind of resource this is. Value: the fixed
12996	// string "content#settlementreportsListResponse".
12997	Kind string `json:"kind,omitempty"`
12998
12999	// NextPageToken: The token for the retrieval of the next page of
13000	// returns.
13001	NextPageToken string `json:"nextPageToken,omitempty"`
13002
13003	Resources []*SettlementReport `json:"resources,omitempty"`
13004
13005	// ServerResponse contains the HTTP response code and headers from the
13006	// server.
13007	googleapi.ServerResponse `json:"-"`
13008
13009	// ForceSendFields is a list of field names (e.g. "Kind") to
13010	// unconditionally include in API requests. By default, fields with
13011	// empty values are omitted from API requests. However, any non-pointer,
13012	// non-interface field appearing in ForceSendFields will be sent to the
13013	// server regardless of whether the field is empty or not. This may be
13014	// used to include empty fields in Patch requests.
13015	ForceSendFields []string `json:"-"`
13016
13017	// NullFields is a list of field names (e.g. "Kind") to include in API
13018	// requests with the JSON null value. By default, fields with empty
13019	// values are omitted from API requests. However, any field with an
13020	// empty value appearing in NullFields will be sent to the server as
13021	// null. It is an error if a field in this list has a non-empty value.
13022	// This may be used to include null fields in Patch requests.
13023	NullFields []string `json:"-"`
13024}
13025
13026func (s *SettlementreportsListResponse) MarshalJSON() ([]byte, error) {
13027	type NoMethod SettlementreportsListResponse
13028	raw := NoMethod(*s)
13029	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13030}
13031
13032type SettlementtransactionsListResponse struct {
13033	// Kind: Identifies what kind of resource this is. Value: the fixed
13034	// string "content#settlementtransactionsListResponse".
13035	Kind string `json:"kind,omitempty"`
13036
13037	// NextPageToken: The token for the retrieval of the next page of
13038	// returns.
13039	NextPageToken string `json:"nextPageToken,omitempty"`
13040
13041	Resources []*SettlementTransaction `json:"resources,omitempty"`
13042
13043	// ServerResponse contains the HTTP response code and headers from the
13044	// server.
13045	googleapi.ServerResponse `json:"-"`
13046
13047	// ForceSendFields is a list of field names (e.g. "Kind") to
13048	// unconditionally include in API requests. By default, fields with
13049	// empty values are omitted from API requests. However, any non-pointer,
13050	// non-interface field appearing in ForceSendFields will be sent to the
13051	// server regardless of whether the field is empty or not. This may be
13052	// used to include empty fields in Patch requests.
13053	ForceSendFields []string `json:"-"`
13054
13055	// NullFields is a list of field names (e.g. "Kind") to include in API
13056	// requests with the JSON null value. By default, fields with empty
13057	// values are omitted from API requests. However, any field with an
13058	// empty value appearing in NullFields will be sent to the server as
13059	// null. It is an error if a field in this list has a non-empty value.
13060	// This may be used to include null fields in Patch requests.
13061	NullFields []string `json:"-"`
13062}
13063
13064func (s *SettlementtransactionsListResponse) MarshalJSON() ([]byte, error) {
13065	type NoMethod SettlementtransactionsListResponse
13066	raw := NoMethod(*s)
13067	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13068}
13069
13070type ShipmentInvoice struct {
13071	// InvoiceSummary: [required] Invoice summary.
13072	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
13073
13074	// LineItemInvoices: [required] Invoice details per line item.
13075	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
13076
13077	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
13078	// by the merchant in the `shipLineItems` method and is used to group
13079	// multiple line items that have the same kind of shipping charges.
13080	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
13081
13082	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
13083	// unconditionally include in API requests. By default, fields with
13084	// empty values are omitted from API requests. However, any non-pointer,
13085	// non-interface field appearing in ForceSendFields will be sent to the
13086	// server regardless of whether the field is empty or not. This may be
13087	// used to include empty fields in Patch requests.
13088	ForceSendFields []string `json:"-"`
13089
13090	// NullFields is a list of field names (e.g. "InvoiceSummary") to
13091	// include in API requests with the JSON null value. By default, fields
13092	// with empty values are omitted from API requests. However, any field
13093	// with an empty value appearing in NullFields will be sent to the
13094	// server as null. It is an error if a field in this list has a
13095	// non-empty value. This may be used to include null fields in Patch
13096	// requests.
13097	NullFields []string `json:"-"`
13098}
13099
13100func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
13101	type NoMethod ShipmentInvoice
13102	raw := NoMethod(*s)
13103	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13104}
13105
13106type ShipmentInvoiceLineItemInvoice struct {
13107	// LineItemId: ID of the line item. Either lineItemId or productId must
13108	// be set.
13109	LineItemId string `json:"lineItemId,omitempty"`
13110
13111	// ProductId: ID of the product. This is the REST ID used in the
13112	// products service. Either lineItemId or productId must be set.
13113	ProductId string `json:"productId,omitempty"`
13114
13115	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
13116	// merchant and defines individual quantities within a line item. The
13117	// same ID can be assigned to units that are the same while units that
13118	// differ must be assigned a different ID (for example: free or
13119	// promotional units).
13120	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
13121
13122	// UnitInvoice: [required] Invoice details for a single unit.
13123	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
13124
13125	// ForceSendFields is a list of field names (e.g. "LineItemId") to
13126	// unconditionally include in API requests. By default, fields with
13127	// empty values are omitted from API requests. However, any non-pointer,
13128	// non-interface field appearing in ForceSendFields will be sent to the
13129	// server regardless of whether the field is empty or not. This may be
13130	// used to include empty fields in Patch requests.
13131	ForceSendFields []string `json:"-"`
13132
13133	// NullFields is a list of field names (e.g. "LineItemId") to include in
13134	// API requests with the JSON null value. By default, fields with empty
13135	// values are omitted from API requests. However, any field with an
13136	// empty value appearing in NullFields will be sent to the server as
13137	// null. It is an error if a field in this list has a non-empty value.
13138	// This may be used to include null fields in Patch requests.
13139	NullFields []string `json:"-"`
13140}
13141
13142func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
13143	type NoMethod ShipmentInvoiceLineItemInvoice
13144	raw := NoMethod(*s)
13145	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13146}
13147
13148type ShipmentTrackingInfo struct {
13149	// Carrier: The shipping carrier that handles the package. Acceptable
13150	// values are: - "boxtal" - "bpost" - "chronopost" -
13151	// "colisPrive" - "colissimo" - "cxt" - "deliv" - "dhl" -
13152	// "dpd" - "dynamex" - "eCourier" - "easypost" - "efw" -
13153	// "fedex" - "fedexSmartpost" - "geodis" - "gls" -
13154	// "googleCourier" - "gsx" - "jdLogistics" - "laPoste" -
13155	// "lasership" - "manual" - "mpx" - "onTrac" - "other" -
13156	// "tnt" - "uds" - "ups" - "usps"
13157	Carrier string `json:"carrier,omitempty"`
13158
13159	// TrackingNumber: The tracking number for the package.
13160	TrackingNumber string `json:"trackingNumber,omitempty"`
13161
13162	// ForceSendFields is a list of field names (e.g. "Carrier") to
13163	// unconditionally include in API requests. By default, fields with
13164	// empty values are omitted from API requests. However, any non-pointer,
13165	// non-interface field appearing in ForceSendFields will be sent to the
13166	// server regardless of whether the field is empty or not. This may be
13167	// used to include empty fields in Patch requests.
13168	ForceSendFields []string `json:"-"`
13169
13170	// NullFields is a list of field names (e.g. "Carrier") to include in
13171	// API requests with the JSON null value. By default, fields with empty
13172	// values are omitted from API requests. However, any field with an
13173	// empty value appearing in NullFields will be sent to the server as
13174	// null. It is an error if a field in this list has a non-empty value.
13175	// This may be used to include null fields in Patch requests.
13176	NullFields []string `json:"-"`
13177}
13178
13179func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
13180	type NoMethod ShipmentTrackingInfo
13181	raw := NoMethod(*s)
13182	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13183}
13184
13185// ShippingSettings: The merchant account's shipping settings. All
13186// methods except getsupportedcarriers and getsupportedholidays require
13187// the admin role.
13188type ShippingSettings struct {
13189	// AccountId: The ID of the account to which these account shipping
13190	// settings belong. Ignored upon update, always present in get request
13191	// responses.
13192	AccountId uint64 `json:"accountId,omitempty,string"`
13193
13194	// PostalCodeGroups: A list of postal code groups that can be referred
13195	// to in `services`. Optional.
13196	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
13197
13198	// Services: The target account's list of services. Optional.
13199	Services []*Service `json:"services,omitempty"`
13200
13201	// ServerResponse contains the HTTP response code and headers from the
13202	// server.
13203	googleapi.ServerResponse `json:"-"`
13204
13205	// ForceSendFields is a list of field names (e.g. "AccountId") to
13206	// unconditionally include in API requests. By default, fields with
13207	// empty values are omitted from API requests. However, any non-pointer,
13208	// non-interface field appearing in ForceSendFields will be sent to the
13209	// server regardless of whether the field is empty or not. This may be
13210	// used to include empty fields in Patch requests.
13211	ForceSendFields []string `json:"-"`
13212
13213	// NullFields is a list of field names (e.g. "AccountId") to include in
13214	// API requests with the JSON null value. By default, fields with empty
13215	// values are omitted from API requests. However, any field with an
13216	// empty value appearing in NullFields will be sent to the server as
13217	// null. It is an error if a field in this list has a non-empty value.
13218	// This may be used to include null fields in Patch requests.
13219	NullFields []string `json:"-"`
13220}
13221
13222func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
13223	type NoMethod ShippingSettings
13224	raw := NoMethod(*s)
13225	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13226}
13227
13228type ShippingsettingsCustomBatchRequest struct {
13229	// Entries: The request entries to be processed in the batch.
13230	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
13231
13232	// ForceSendFields is a list of field names (e.g. "Entries") to
13233	// unconditionally include in API requests. By default, fields with
13234	// empty values are omitted from API requests. However, any non-pointer,
13235	// non-interface field appearing in ForceSendFields will be sent to the
13236	// server regardless of whether the field is empty or not. This may be
13237	// used to include empty fields in Patch requests.
13238	ForceSendFields []string `json:"-"`
13239
13240	// NullFields is a list of field names (e.g. "Entries") to include in
13241	// API requests with the JSON null value. By default, fields with empty
13242	// values are omitted from API requests. However, any field with an
13243	// empty value appearing in NullFields will be sent to the server as
13244	// null. It is an error if a field in this list has a non-empty value.
13245	// This may be used to include null fields in Patch requests.
13246	NullFields []string `json:"-"`
13247}
13248
13249func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
13250	type NoMethod ShippingsettingsCustomBatchRequest
13251	raw := NoMethod(*s)
13252	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13253}
13254
13255// ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
13256// single non-batch shippingsettings request.
13257type ShippingsettingsCustomBatchRequestEntry struct {
13258	// AccountId: The ID of the account for which to get/update account
13259	// shipping settings.
13260	AccountId uint64 `json:"accountId,omitempty,string"`
13261
13262	// BatchId: An entry ID, unique within the batch request.
13263	BatchId int64 `json:"batchId,omitempty"`
13264
13265	// MerchantId: The ID of the managing account.
13266	MerchantId uint64 `json:"merchantId,omitempty,string"`
13267
13268	// Method: The method of the batch entry. Acceptable values are: -
13269	// "get" - "update"
13270	Method string `json:"method,omitempty"`
13271
13272	// ShippingSettings: The account shipping settings to update. Only
13273	// defined if the method is `update`.
13274	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
13275
13276	// ForceSendFields is a list of field names (e.g. "AccountId") to
13277	// unconditionally include in API requests. By default, fields with
13278	// empty values are omitted from API requests. However, any non-pointer,
13279	// non-interface field appearing in ForceSendFields will be sent to the
13280	// server regardless of whether the field is empty or not. This may be
13281	// used to include empty fields in Patch requests.
13282	ForceSendFields []string `json:"-"`
13283
13284	// NullFields is a list of field names (e.g. "AccountId") to include in
13285	// API requests with the JSON null value. By default, fields with empty
13286	// values are omitted from API requests. However, any field with an
13287	// empty value appearing in NullFields will be sent to the server as
13288	// null. It is an error if a field in this list has a non-empty value.
13289	// This may be used to include null fields in Patch requests.
13290	NullFields []string `json:"-"`
13291}
13292
13293func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
13294	type NoMethod ShippingsettingsCustomBatchRequestEntry
13295	raw := NoMethod(*s)
13296	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13297}
13298
13299type ShippingsettingsCustomBatchResponse struct {
13300	// Entries: The result of the execution of the batch requests.
13301	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
13302
13303	// Kind: Identifies what kind of resource this is. Value: the fixed
13304	// string "content#shippingsettingsCustomBatchResponse".
13305	Kind string `json:"kind,omitempty"`
13306
13307	// ServerResponse contains the HTTP response code and headers from the
13308	// server.
13309	googleapi.ServerResponse `json:"-"`
13310
13311	// ForceSendFields is a list of field names (e.g. "Entries") to
13312	// unconditionally include in API requests. By default, fields with
13313	// empty values are omitted from API requests. However, any non-pointer,
13314	// non-interface field appearing in ForceSendFields will be sent to the
13315	// server regardless of whether the field is empty or not. This may be
13316	// used to include empty fields in Patch requests.
13317	ForceSendFields []string `json:"-"`
13318
13319	// NullFields is a list of field names (e.g. "Entries") to include in
13320	// API requests with the JSON null value. By default, fields with empty
13321	// values are omitted from API requests. However, any field with an
13322	// empty value appearing in NullFields will be sent to the server as
13323	// null. It is an error if a field in this list has a non-empty value.
13324	// This may be used to include null fields in Patch requests.
13325	NullFields []string `json:"-"`
13326}
13327
13328func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
13329	type NoMethod ShippingsettingsCustomBatchResponse
13330	raw := NoMethod(*s)
13331	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13332}
13333
13334// ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
13335// single non-batch shipping settings response.
13336type ShippingsettingsCustomBatchResponseEntry struct {
13337	// BatchId: The ID of the request entry to which this entry responds.
13338	BatchId int64 `json:"batchId,omitempty"`
13339
13340	// Errors: A list of errors defined if, and only if, the request failed.
13341	Errors *Errors `json:"errors,omitempty"`
13342
13343	// Kind: Identifies what kind of resource this is. Value: the fixed
13344	// string "content#shippingsettingsCustomBatchResponseEntry"
13345	Kind string `json:"kind,omitempty"`
13346
13347	// ShippingSettings: The retrieved or updated account shipping settings.
13348	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
13349
13350	// ForceSendFields is a list of field names (e.g. "BatchId") to
13351	// unconditionally include in API requests. By default, fields with
13352	// empty values are omitted from API requests. However, any non-pointer,
13353	// non-interface field appearing in ForceSendFields will be sent to the
13354	// server regardless of whether the field is empty or not. This may be
13355	// used to include empty fields in Patch requests.
13356	ForceSendFields []string `json:"-"`
13357
13358	// NullFields is a list of field names (e.g. "BatchId") to include in
13359	// API requests with the JSON null value. By default, fields with empty
13360	// values are omitted from API requests. However, any field with an
13361	// empty value appearing in NullFields will be sent to the server as
13362	// null. It is an error if a field in this list has a non-empty value.
13363	// This may be used to include null fields in Patch requests.
13364	NullFields []string `json:"-"`
13365}
13366
13367func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
13368	type NoMethod ShippingsettingsCustomBatchResponseEntry
13369	raw := NoMethod(*s)
13370	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13371}
13372
13373type ShippingsettingsGetSupportedCarriersResponse struct {
13374	// Carriers: A list of supported carriers. May be empty.
13375	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
13376
13377	// Kind: Identifies what kind of resource this is. Value: the fixed
13378	// string "content#shippingsettingsGetSupportedCarriersResponse".
13379	Kind string `json:"kind,omitempty"`
13380
13381	// ServerResponse contains the HTTP response code and headers from the
13382	// server.
13383	googleapi.ServerResponse `json:"-"`
13384
13385	// ForceSendFields is a list of field names (e.g. "Carriers") to
13386	// unconditionally include in API requests. By default, fields with
13387	// empty values are omitted from API requests. However, any non-pointer,
13388	// non-interface field appearing in ForceSendFields will be sent to the
13389	// server regardless of whether the field is empty or not. This may be
13390	// used to include empty fields in Patch requests.
13391	ForceSendFields []string `json:"-"`
13392
13393	// NullFields is a list of field names (e.g. "Carriers") to include in
13394	// API requests with the JSON null value. By default, fields with empty
13395	// values are omitted from API requests. However, any field with an
13396	// empty value appearing in NullFields will be sent to the server as
13397	// null. It is an error if a field in this list has a non-empty value.
13398	// This may be used to include null fields in Patch requests.
13399	NullFields []string `json:"-"`
13400}
13401
13402func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
13403	type NoMethod ShippingsettingsGetSupportedCarriersResponse
13404	raw := NoMethod(*s)
13405	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13406}
13407
13408type ShippingsettingsGetSupportedHolidaysResponse struct {
13409	// Holidays: A list of holidays applicable for delivery guarantees. May
13410	// be empty.
13411	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
13412
13413	// Kind: Identifies what kind of resource this is. Value: the fixed
13414	// string "content#shippingsettingsGetSupportedHolidaysResponse".
13415	Kind string `json:"kind,omitempty"`
13416
13417	// ServerResponse contains the HTTP response code and headers from the
13418	// server.
13419	googleapi.ServerResponse `json:"-"`
13420
13421	// ForceSendFields is a list of field names (e.g. "Holidays") to
13422	// unconditionally include in API requests. By default, fields with
13423	// empty values are omitted from API requests. However, any non-pointer,
13424	// non-interface field appearing in ForceSendFields will be sent to the
13425	// server regardless of whether the field is empty or not. This may be
13426	// used to include empty fields in Patch requests.
13427	ForceSendFields []string `json:"-"`
13428
13429	// NullFields is a list of field names (e.g. "Holidays") to include in
13430	// API requests with the JSON null value. By default, fields with empty
13431	// values are omitted from API requests. However, any field with an
13432	// empty value appearing in NullFields will be sent to the server as
13433	// null. It is an error if a field in this list has a non-empty value.
13434	// This may be used to include null fields in Patch requests.
13435	NullFields []string `json:"-"`
13436}
13437
13438func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
13439	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
13440	raw := NoMethod(*s)
13441	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13442}
13443
13444type ShippingsettingsGetSupportedPickupServicesResponse struct {
13445	// Kind: Identifies what kind of resource this is. Value: the fixed
13446	// string "content#shippingsettingsGetSupportedPickupServicesResponse".
13447	Kind string `json:"kind,omitempty"`
13448
13449	// PickupServices: A list of supported pickup services. May be empty.
13450	PickupServices []*PickupServicesPickupService `json:"pickupServices,omitempty"`
13451
13452	// ServerResponse contains the HTTP response code and headers from the
13453	// server.
13454	googleapi.ServerResponse `json:"-"`
13455
13456	// ForceSendFields is a list of field names (e.g. "Kind") to
13457	// unconditionally include in API requests. By default, fields with
13458	// empty values are omitted from API requests. However, any non-pointer,
13459	// non-interface field appearing in ForceSendFields will be sent to the
13460	// server regardless of whether the field is empty or not. This may be
13461	// used to include empty fields in Patch requests.
13462	ForceSendFields []string `json:"-"`
13463
13464	// NullFields is a list of field names (e.g. "Kind") to include in API
13465	// requests with the JSON null value. By default, fields with empty
13466	// values are omitted from API requests. However, any field with an
13467	// empty value appearing in NullFields will be sent to the server as
13468	// null. It is an error if a field in this list has a non-empty value.
13469	// This may be used to include null fields in Patch requests.
13470	NullFields []string `json:"-"`
13471}
13472
13473func (s *ShippingsettingsGetSupportedPickupServicesResponse) MarshalJSON() ([]byte, error) {
13474	type NoMethod ShippingsettingsGetSupportedPickupServicesResponse
13475	raw := NoMethod(*s)
13476	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13477}
13478
13479type ShippingsettingsListResponse struct {
13480	// Kind: Identifies what kind of resource this is. Value: the fixed
13481	// string "content#shippingsettingsListResponse".
13482	Kind string `json:"kind,omitempty"`
13483
13484	// NextPageToken: The token for the retrieval of the next page of
13485	// shipping settings.
13486	NextPageToken string `json:"nextPageToken,omitempty"`
13487
13488	Resources []*ShippingSettings `json:"resources,omitempty"`
13489
13490	// ServerResponse contains the HTTP response code and headers from the
13491	// server.
13492	googleapi.ServerResponse `json:"-"`
13493
13494	// ForceSendFields is a list of field names (e.g. "Kind") to
13495	// unconditionally include in API requests. By default, fields with
13496	// empty values are omitted from API requests. However, any non-pointer,
13497	// non-interface field appearing in ForceSendFields will be sent to the
13498	// server regardless of whether the field is empty or not. This may be
13499	// used to include empty fields in Patch requests.
13500	ForceSendFields []string `json:"-"`
13501
13502	// NullFields is a list of field names (e.g. "Kind") to include in API
13503	// requests with the JSON null value. By default, fields with empty
13504	// values are omitted from API requests. However, any field with an
13505	// empty value appearing in NullFields will be sent to the server as
13506	// null. It is an error if a field in this list has a non-empty value.
13507	// This may be used to include null fields in Patch requests.
13508	NullFields []string `json:"-"`
13509}
13510
13511func (s *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
13512	type NoMethod ShippingsettingsListResponse
13513	raw := NoMethod(*s)
13514	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13515}
13516
13517type Table struct {
13518	// ColumnHeaders: Headers of the table's columns. Optional: if not set
13519	// then the table has only one dimension.
13520	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
13521
13522	// Name: Name of the table. Required for subtables, ignored for the main
13523	// table.
13524	Name string `json:"name,omitempty"`
13525
13526	// RowHeaders: Headers of the table's rows. Required.
13527	RowHeaders *Headers `json:"rowHeaders,omitempty"`
13528
13529	// Rows: The list of rows that constitute the table. Must have the same
13530	// length as `rowHeaders`. Required.
13531	Rows []*Row `json:"rows,omitempty"`
13532
13533	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
13534	// unconditionally include in API requests. By default, fields with
13535	// empty values are omitted from API requests. However, any non-pointer,
13536	// non-interface field appearing in ForceSendFields will be sent to the
13537	// server regardless of whether the field is empty or not. This may be
13538	// used to include empty fields in Patch requests.
13539	ForceSendFields []string `json:"-"`
13540
13541	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
13542	// in API requests with the JSON null value. By default, fields with
13543	// empty values are omitted from API requests. However, any field with
13544	// an empty value appearing in NullFields will be sent to the server as
13545	// null. It is an error if a field in this list has a non-empty value.
13546	// This may be used to include null fields in Patch requests.
13547	NullFields []string `json:"-"`
13548}
13549
13550func (s *Table) MarshalJSON() ([]byte, error) {
13551	type NoMethod Table
13552	raw := NoMethod(*s)
13553	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13554}
13555
13556type TestOrder struct {
13557	// DeliveryDetails: Overrides the predefined delivery details if
13558	// provided.
13559	DeliveryDetails *TestOrderDeliveryDetails `json:"deliveryDetails,omitempty"`
13560
13561	// EnableOrderinvoices: Whether the orderinvoices service should support
13562	// this order.
13563	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
13564
13565	// Kind: Identifies what kind of resource this is. Value: the fixed
13566	// string "content#testOrder"
13567	Kind string `json:"kind,omitempty"`
13568
13569	// LineItems: Required. Line items that are ordered. At least one line
13570	// item must be provided.
13571	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
13572
13573	// NotificationMode: Restricted. Do not use.
13574	NotificationMode string `json:"notificationMode,omitempty"`
13575
13576	// PickupDetails: Overrides the predefined pickup details if provided.
13577	PickupDetails *TestOrderPickupDetails `json:"pickupDetails,omitempty"`
13578
13579	// PredefinedBillingAddress: Required. The billing address. Acceptable
13580	// values are: - "dwight" - "jim" - "pam"
13581	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
13582
13583	// PredefinedDeliveryAddress: Required. Identifier of one of the
13584	// predefined delivery addresses for the delivery. Acceptable values
13585	// are: - "dwight" - "jim" - "pam"
13586	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
13587
13588	// PredefinedEmail: Required. Email address of the customer. Acceptable
13589	// values are: - "pog.dwight.schrute@gmail.com" -
13590	// "pog.jim.halpert@gmail.com" - "penpog.pam.beesly@gmail.comding"
13591	PredefinedEmail string `json:"predefinedEmail,omitempty"`
13592
13593	// PredefinedPickupDetails: Identifier of one of the predefined pickup
13594	// details. Required for orders containing line items with shipping type
13595	// `pickup`. Acceptable values are: - "dwight" - "jim" - "pam"
13596	PredefinedPickupDetails string `json:"predefinedPickupDetails,omitempty"`
13597
13598	// Promotions: Promotions associated with the order.
13599	Promotions []*OrderPromotion `json:"promotions,omitempty"`
13600
13601	// ShippingCost: Required. The price of shipping for all items. Shipping
13602	// tax is automatically calculated for orders where marketplace
13603	// facilitator tax laws are applicable. Otherwise, tax settings from
13604	// Merchant Center are applied. Note that shipping is not taxed in
13605	// certain states.
13606	ShippingCost *Price `json:"shippingCost,omitempty"`
13607
13608	// ShippingOption: Required. The requested shipping option. Acceptable
13609	// values are: - "economy" - "expedited" - "oneDay" - "sameDay"
13610	// - "standard" - "twoDay"
13611	ShippingOption string `json:"shippingOption,omitempty"`
13612
13613	// ForceSendFields is a list of field names (e.g. "DeliveryDetails") to
13614	// unconditionally include in API requests. By default, fields with
13615	// empty values are omitted from API requests. However, any non-pointer,
13616	// non-interface field appearing in ForceSendFields will be sent to the
13617	// server regardless of whether the field is empty or not. This may be
13618	// used to include empty fields in Patch requests.
13619	ForceSendFields []string `json:"-"`
13620
13621	// NullFields is a list of field names (e.g. "DeliveryDetails") to
13622	// include in API requests with the JSON null value. By default, fields
13623	// with empty values are omitted from API requests. However, any field
13624	// with an empty value appearing in NullFields will be sent to the
13625	// server as null. It is an error if a field in this list has a
13626	// non-empty value. This may be used to include null fields in Patch
13627	// requests.
13628	NullFields []string `json:"-"`
13629}
13630
13631func (s *TestOrder) MarshalJSON() ([]byte, error) {
13632	type NoMethod TestOrder
13633	raw := NoMethod(*s)
13634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13635}
13636
13637type TestOrderAddress struct {
13638	// Country: CLDR country code (e.g. "US").
13639	Country string `json:"country,omitempty"`
13640
13641	// FullAddress: Strings representing the lines of the printed label for
13642	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
13643	// Mountain View, CA, 94043 United States
13644	FullAddress []string `json:"fullAddress,omitempty"`
13645
13646	// IsPostOfficeBox: Whether the address is a post office box.
13647	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
13648
13649	// Locality: City, town or commune. May also include dependent
13650	// localities or sublocalities (e.g. neighborhoods or suburbs).
13651	Locality string `json:"locality,omitempty"`
13652
13653	// PostalCode: Postal Code or ZIP (e.g. "94043").
13654	PostalCode string `json:"postalCode,omitempty"`
13655
13656	// RecipientName: Name of the recipient.
13657	RecipientName string `json:"recipientName,omitempty"`
13658
13659	// Region: Top-level administrative subdivision of the country. For
13660	// example, a state like California ("CA") or a province like Quebec
13661	// ("QC").
13662	Region string `json:"region,omitempty"`
13663
13664	// StreetAddress: Street-level part of the address.
13665	StreetAddress []string `json:"streetAddress,omitempty"`
13666
13667	// ForceSendFields is a list of field names (e.g. "Country") to
13668	// unconditionally include in API requests. By default, fields with
13669	// empty values are omitted from API requests. However, any non-pointer,
13670	// non-interface field appearing in ForceSendFields will be sent to the
13671	// server regardless of whether the field is empty or not. This may be
13672	// used to include empty fields in Patch requests.
13673	ForceSendFields []string `json:"-"`
13674
13675	// NullFields is a list of field names (e.g. "Country") to include in
13676	// API requests with the JSON null value. By default, fields with empty
13677	// values are omitted from API requests. However, any field with an
13678	// empty value appearing in NullFields will be sent to the server as
13679	// null. It is an error if a field in this list has a non-empty value.
13680	// This may be used to include null fields in Patch requests.
13681	NullFields []string `json:"-"`
13682}
13683
13684func (s *TestOrderAddress) MarshalJSON() ([]byte, error) {
13685	type NoMethod TestOrderAddress
13686	raw := NoMethod(*s)
13687	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13688}
13689
13690type TestOrderDeliveryDetails struct {
13691	// Address: The delivery address
13692	Address *TestOrderAddress `json:"address,omitempty"`
13693
13694	// PhoneNumber: The phone number of the person receiving the delivery.
13695	PhoneNumber string `json:"phoneNumber,omitempty"`
13696
13697	// ForceSendFields is a list of field names (e.g. "Address") to
13698	// unconditionally include in API requests. By default, fields with
13699	// empty values are omitted from API requests. However, any non-pointer,
13700	// non-interface field appearing in ForceSendFields will be sent to the
13701	// server regardless of whether the field is empty or not. This may be
13702	// used to include empty fields in Patch requests.
13703	ForceSendFields []string `json:"-"`
13704
13705	// NullFields is a list of field names (e.g. "Address") to include in
13706	// API requests with the JSON null value. By default, fields with empty
13707	// values are omitted from API requests. However, any field with an
13708	// empty value appearing in NullFields will be sent to the server as
13709	// null. It is an error if a field in this list has a non-empty value.
13710	// This may be used to include null fields in Patch requests.
13711	NullFields []string `json:"-"`
13712}
13713
13714func (s *TestOrderDeliveryDetails) MarshalJSON() ([]byte, error) {
13715	type NoMethod TestOrderDeliveryDetails
13716	raw := NoMethod(*s)
13717	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13718}
13719
13720type TestOrderLineItem struct {
13721	// Product: Required. Product data from the time of the order placement.
13722	Product *TestOrderLineItemProduct `json:"product,omitempty"`
13723
13724	// QuantityOrdered: Required. Number of items ordered.
13725	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
13726
13727	// ReturnInfo: Required. Details of the return policy for the line item.
13728	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
13729
13730	// ShippingDetails: Required. Details of the requested shipping for the
13731	// line item.
13732	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
13733
13734	// ForceSendFields is a list of field names (e.g. "Product") to
13735	// unconditionally include in API requests. By default, fields with
13736	// empty values are omitted from API requests. However, any non-pointer,
13737	// non-interface field appearing in ForceSendFields will be sent to the
13738	// server regardless of whether the field is empty or not. This may be
13739	// used to include empty fields in Patch requests.
13740	ForceSendFields []string `json:"-"`
13741
13742	// NullFields is a list of field names (e.g. "Product") to include in
13743	// API requests with the JSON null value. By default, fields with empty
13744	// values are omitted from API requests. However, any field with an
13745	// empty value appearing in NullFields will be sent to the server as
13746	// null. It is an error if a field in this list has a non-empty value.
13747	// This may be used to include null fields in Patch requests.
13748	NullFields []string `json:"-"`
13749}
13750
13751func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
13752	type NoMethod TestOrderLineItem
13753	raw := NoMethod(*s)
13754	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13755}
13756
13757type TestOrderLineItemProduct struct {
13758	// Brand: Required. Brand of the item.
13759	Brand string `json:"brand,omitempty"`
13760
13761	// Condition: Required. Condition or state of the item. Acceptable
13762	// values are: - "new"
13763	Condition string `json:"condition,omitempty"`
13764
13765	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
13766	// the item. Acceptable values are: - "en" - "fr"
13767	ContentLanguage string `json:"contentLanguage,omitempty"`
13768
13769	// Fees: Fees for the item. Optional.
13770	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
13771
13772	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
13773	Gtin string `json:"gtin,omitempty"`
13774
13775	// ImageLink: Required. URL of an image of the item.
13776	ImageLink string `json:"imageLink,omitempty"`
13777
13778	// ItemGroupId: Shared identifier for all variants of the same product.
13779	// Optional.
13780	ItemGroupId string `json:"itemGroupId,omitempty"`
13781
13782	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
13783	Mpn string `json:"mpn,omitempty"`
13784
13785	// OfferId: Required. An identifier of the item.
13786	OfferId string `json:"offerId,omitempty"`
13787
13788	// Price: Required. The price for the product. Tax is automatically
13789	// calculated for orders where marketplace facilitator tax laws are
13790	// applicable. Otherwise, tax settings from Merchant Center are applied.
13791	Price *Price `json:"price,omitempty"`
13792
13793	// TargetCountry: Required. The CLDR territory // code of the target
13794	// country of the product.
13795	TargetCountry string `json:"targetCountry,omitempty"`
13796
13797	// Title: Required. The title of the product.
13798	Title string `json:"title,omitempty"`
13799
13800	// VariantAttributes: Variant attributes for the item. Optional.
13801	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
13802
13803	// ForceSendFields is a list of field names (e.g. "Brand") to
13804	// unconditionally include in API requests. By default, fields with
13805	// empty values are omitted from API requests. However, any non-pointer,
13806	// non-interface field appearing in ForceSendFields will be sent to the
13807	// server regardless of whether the field is empty or not. This may be
13808	// used to include empty fields in Patch requests.
13809	ForceSendFields []string `json:"-"`
13810
13811	// NullFields is a list of field names (e.g. "Brand") to include in API
13812	// 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 *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
13821	type NoMethod TestOrderLineItemProduct
13822	raw := NoMethod(*s)
13823	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13824}
13825
13826type TestOrderPickupDetails struct {
13827	// LocationCode: Required. Code of the location defined by provider or
13828	// merchant.
13829	LocationCode string `json:"locationCode,omitempty"`
13830
13831	// PickupLocationAddress: Required. Pickup location address.
13832	PickupLocationAddress *TestOrderAddress `json:"pickupLocationAddress,omitempty"`
13833
13834	// PickupLocationType: Pickup location type. Acceptable values are: -
13835	// "locker" - "store" - "curbside"
13836	PickupLocationType string `json:"pickupLocationType,omitempty"`
13837
13838	// PickupPersons: Required. all pickup persons set by users.
13839	PickupPersons []*TestOrderPickupDetailsPickupPerson `json:"pickupPersons,omitempty"`
13840
13841	// ForceSendFields is a list of field names (e.g. "LocationCode") to
13842	// unconditionally include in API requests. By default, fields with
13843	// empty values are omitted from API requests. However, any non-pointer,
13844	// non-interface field appearing in ForceSendFields will be sent to the
13845	// server regardless of whether the field is empty or not. This may be
13846	// used to include empty fields in Patch requests.
13847	ForceSendFields []string `json:"-"`
13848
13849	// NullFields is a list of field names (e.g. "LocationCode") to include
13850	// in API requests with the JSON null value. By default, fields with
13851	// empty values are omitted from API requests. However, any field with
13852	// an empty value appearing in NullFields will be sent to the server as
13853	// null. It is an error if a field in this list has a non-empty value.
13854	// This may be used to include null fields in Patch requests.
13855	NullFields []string `json:"-"`
13856}
13857
13858func (s *TestOrderPickupDetails) MarshalJSON() ([]byte, error) {
13859	type NoMethod TestOrderPickupDetails
13860	raw := NoMethod(*s)
13861	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13862}
13863
13864type TestOrderPickupDetailsPickupPerson struct {
13865	// Name: Required. Full name of the pickup person.
13866	Name string `json:"name,omitempty"`
13867
13868	// PhoneNumber: Required. The phone number of the person picking up the
13869	// items.
13870	PhoneNumber string `json:"phoneNumber,omitempty"`
13871
13872	// ForceSendFields is a list of field names (e.g. "Name") to
13873	// unconditionally include in API requests. By default, fields with
13874	// empty values are omitted from API requests. However, any non-pointer,
13875	// non-interface field appearing in ForceSendFields will be sent to the
13876	// server regardless of whether the field is empty or not. This may be
13877	// used to include empty fields in Patch requests.
13878	ForceSendFields []string `json:"-"`
13879
13880	// NullFields is a list of field names (e.g. "Name") to include in API
13881	// requests with the JSON null value. By default, fields with empty
13882	// values are omitted from API requests. However, any field with an
13883	// empty value appearing in NullFields will be sent to the server as
13884	// null. It is an error if a field in this list has a non-empty value.
13885	// This may be used to include null fields in Patch requests.
13886	NullFields []string `json:"-"`
13887}
13888
13889func (s *TestOrderPickupDetailsPickupPerson) MarshalJSON() ([]byte, error) {
13890	type NoMethod TestOrderPickupDetailsPickupPerson
13891	raw := NoMethod(*s)
13892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13893}
13894
13895// TimeZone: Represents a time zone from the [IANA Time Zone
13896// Database](https://www.iana.org/time-zones).
13897type TimeZone struct {
13898	// Id: IANA Time Zone Database time zone, e.g. "America/New_York".
13899	Id string `json:"id,omitempty"`
13900
13901	// Version: Optional. IANA Time Zone Database version number, e.g.
13902	// "2019a".
13903	Version string `json:"version,omitempty"`
13904
13905	// ForceSendFields is a list of field names (e.g. "Id") to
13906	// unconditionally include in API requests. By default, fields with
13907	// empty values are omitted from API requests. However, any non-pointer,
13908	// non-interface field appearing in ForceSendFields will be sent to the
13909	// server regardless of whether the field is empty or not. This may be
13910	// used to include empty fields in Patch requests.
13911	ForceSendFields []string `json:"-"`
13912
13913	// NullFields is a list of field names (e.g. "Id") to include in API
13914	// requests with the JSON null value. By default, fields with empty
13915	// values are omitted from API requests. However, any field with an
13916	// empty value appearing in NullFields will be sent to the server as
13917	// null. It is an error if a field in this list has a non-empty value.
13918	// This may be used to include null fields in Patch requests.
13919	NullFields []string `json:"-"`
13920}
13921
13922func (s *TimeZone) MarshalJSON() ([]byte, error) {
13923	type NoMethod TimeZone
13924	raw := NoMethod(*s)
13925	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13926}
13927
13928type TransitTable struct {
13929	// PostalCodeGroupNames: A list of postal group names. The last value
13930	// can be "all other locations". Example: `["zone 1", "zone 2", "all
13931	// other locations"]`. The referred postal code groups must match the
13932	// delivery country of the service.
13933	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
13934
13935	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
13936
13937	// TransitTimeLabels: A list of transit time labels. The last value can
13938	// be "all other labels". Example: `["food", "electronics", "all other
13939	// labels"]`.
13940	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
13941
13942	// ForceSendFields is a list of field names (e.g.
13943	// "PostalCodeGroupNames") to unconditionally include in API requests.
13944	// By default, fields with empty values are omitted from API requests.
13945	// However, any non-pointer, non-interface field appearing in
13946	// ForceSendFields will be sent to the server regardless of whether the
13947	// field is empty or not. This may be used to include empty fields in
13948	// Patch requests.
13949	ForceSendFields []string `json:"-"`
13950
13951	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
13952	// include in API requests with the JSON null value. By default, fields
13953	// with empty values are omitted from API requests. However, any field
13954	// with an empty value appearing in NullFields will be sent to the
13955	// server as null. It is an error if a field in this list has a
13956	// non-empty value. This may be used to include null fields in Patch
13957	// requests.
13958	NullFields []string `json:"-"`
13959}
13960
13961func (s *TransitTable) MarshalJSON() ([]byte, error) {
13962	type NoMethod TransitTable
13963	raw := NoMethod(*s)
13964	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13965}
13966
13967type TransitTableTransitTimeRow struct {
13968	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
13969
13970	// ForceSendFields is a list of field names (e.g. "Values") to
13971	// unconditionally include in API requests. By default, fields with
13972	// empty values are omitted from API requests. However, any non-pointer,
13973	// non-interface field appearing in ForceSendFields will be sent to the
13974	// server regardless of whether the field is empty or not. This may be
13975	// used to include empty fields in Patch requests.
13976	ForceSendFields []string `json:"-"`
13977
13978	// NullFields is a list of field names (e.g. "Values") to include in API
13979	// requests with the JSON null value. By default, fields with empty
13980	// values are omitted from API requests. However, any field with an
13981	// empty value appearing in NullFields will be sent to the server as
13982	// null. It is an error if a field in this list has a non-empty value.
13983	// This may be used to include null fields in Patch requests.
13984	NullFields []string `json:"-"`
13985}
13986
13987func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
13988	type NoMethod TransitTableTransitTimeRow
13989	raw := NoMethod(*s)
13990	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13991}
13992
13993type TransitTableTransitTimeRowTransitTimeValue struct {
13994	// MaxTransitTimeInDays: Must be greater than or equal to
13995	// `minTransitTimeInDays`.
13996	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
13997
13998	// MinTransitTimeInDays: Transit time range (min-max) in business days.
13999	// 0 means same day delivery, 1 means next day delivery.
14000	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
14001
14002	// ForceSendFields is a list of field names (e.g.
14003	// "MaxTransitTimeInDays") to unconditionally include in API requests.
14004	// By default, fields with empty values are omitted from API requests.
14005	// However, any non-pointer, non-interface field appearing in
14006	// ForceSendFields will be sent to the server regardless of whether the
14007	// field is empty or not. This may be used to include empty fields in
14008	// Patch requests.
14009	ForceSendFields []string `json:"-"`
14010
14011	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
14012	// include in API requests with the JSON null value. By default, fields
14013	// with empty values are omitted from API requests. However, any field
14014	// with an empty value appearing in NullFields will be sent to the
14015	// server as null. It is an error if a field in this list has a
14016	// non-empty value. This may be used to include null fields in Patch
14017	// requests.
14018	NullFields []string `json:"-"`
14019}
14020
14021func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
14022	type NoMethod TransitTableTransitTimeRowTransitTimeValue
14023	raw := NoMethod(*s)
14024	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14025}
14026
14027type UnitInvoice struct {
14028	// AdditionalCharges: Additional charges for a unit, e.g. shipping
14029	// costs.
14030	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
14031
14032	// UnitPrice: [required] Pre-tax or post-tax price of the unit depending
14033	// on the locality of the order.
14034	UnitPrice *Price `json:"unitPrice,omitempty"`
14035
14036	// UnitPriceTaxes: Tax amounts to apply to the unit price.
14037	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
14038
14039	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
14040	// to unconditionally include in API requests. By default, fields with
14041	// empty values are omitted from API requests. However, any non-pointer,
14042	// non-interface field appearing in ForceSendFields will be sent to the
14043	// server regardless of whether the field is empty or not. This may be
14044	// used to include empty fields in Patch requests.
14045	ForceSendFields []string `json:"-"`
14046
14047	// NullFields is a list of field names (e.g. "AdditionalCharges") to
14048	// include in API requests with the JSON null value. By default, fields
14049	// with empty values are omitted from API requests. However, any field
14050	// with an empty value appearing in NullFields will be sent to the
14051	// server as null. It is an error if a field in this list has a
14052	// non-empty value. This may be used to include null fields in Patch
14053	// requests.
14054	NullFields []string `json:"-"`
14055}
14056
14057func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
14058	type NoMethod UnitInvoice
14059	raw := NoMethod(*s)
14060	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14061}
14062
14063type UnitInvoiceAdditionalCharge struct {
14064	// AdditionalChargeAmount: [required] Amount of the additional charge.
14065	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
14066
14067	// Type: [required] Type of the additional charge. Acceptable values
14068	// are: - "shipping"
14069	Type string `json:"type,omitempty"`
14070
14071	// ForceSendFields is a list of field names (e.g.
14072	// "AdditionalChargeAmount") to unconditionally include in API requests.
14073	// By default, fields with empty values are omitted from API requests.
14074	// However, any non-pointer, non-interface field appearing in
14075	// ForceSendFields will be sent to the server regardless of whether the
14076	// field is empty or not. This may be used to include empty fields in
14077	// Patch requests.
14078	ForceSendFields []string `json:"-"`
14079
14080	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
14081	// to include in API requests with the JSON null value. By default,
14082	// fields with empty values are omitted from API requests. However, any
14083	// field with an empty value appearing in NullFields will be sent to the
14084	// server as null. It is an error if a field in this list has a
14085	// non-empty value. This may be used to include null fields in Patch
14086	// requests.
14087	NullFields []string `json:"-"`
14088}
14089
14090func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
14091	type NoMethod UnitInvoiceAdditionalCharge
14092	raw := NoMethod(*s)
14093	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14094}
14095
14096type UnitInvoiceTaxLine struct {
14097	// TaxAmount: [required] Tax amount for the tax type.
14098	TaxAmount *Price `json:"taxAmount,omitempty"`
14099
14100	// TaxName: Optional name of the tax type. This should only be provided
14101	// if `taxType` is `otherFeeTax`.
14102	TaxName string `json:"taxName,omitempty"`
14103
14104	// TaxType: [required] Type of the tax. Acceptable values are: -
14105	// "otherFee" - "otherFeeTax" - "sales"
14106	TaxType string `json:"taxType,omitempty"`
14107
14108	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
14109	// unconditionally include in API requests. By default, fields with
14110	// empty values are omitted from API requests. However, any non-pointer,
14111	// non-interface field appearing in ForceSendFields will be sent to the
14112	// server regardless of whether the field is empty or not. This may be
14113	// used to include empty fields in Patch requests.
14114	ForceSendFields []string `json:"-"`
14115
14116	// NullFields is a list of field names (e.g. "TaxAmount") to include in
14117	// API requests with the JSON null value. By default, fields with empty
14118	// values are omitted from API requests. However, any field with an
14119	// empty value appearing in NullFields will be sent to the server as
14120	// null. It is an error if a field in this list has a non-empty value.
14121	// This may be used to include null fields in Patch requests.
14122	NullFields []string `json:"-"`
14123}
14124
14125func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
14126	type NoMethod UnitInvoiceTaxLine
14127	raw := NoMethod(*s)
14128	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14129}
14130
14131// Value: The single value of a rate group or the value of a rate group
14132// table's cell. Exactly one of `noShipping`, `flatRate`,
14133// `pricePercentage`, `carrierRateName`, `subtableName` must be set.
14134type Value struct {
14135	// CarrierRateName: The name of a carrier rate referring to a carrier
14136	// rate defined in the same rate group. Can only be set if all other
14137	// fields are not set.
14138	CarrierRateName string `json:"carrierRateName,omitempty"`
14139
14140	// FlatRate: A flat rate. Can only be set if all other fields are not
14141	// set.
14142	FlatRate *Price `json:"flatRate,omitempty"`
14143
14144	// NoShipping: If true, then the product can't ship. Must be true when
14145	// set, can only be set if all other fields are not set.
14146	NoShipping bool `json:"noShipping,omitempty"`
14147
14148	// PricePercentage: A percentage of the price represented as a number in
14149	// decimal notation (e.g., "5.4"). Can only be set if all other fields
14150	// are not set.
14151	PricePercentage string `json:"pricePercentage,omitempty"`
14152
14153	// SubtableName: The name of a subtable. Can only be set in table cells
14154	// (i.e., not for single values), and only if all other fields are not
14155	// set.
14156	SubtableName string `json:"subtableName,omitempty"`
14157
14158	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
14159	// unconditionally include in API requests. By default, fields with
14160	// empty values are omitted from API requests. However, any non-pointer,
14161	// non-interface field appearing in ForceSendFields will be sent to the
14162	// server regardless of whether the field is empty or not. This may be
14163	// used to include empty fields in Patch requests.
14164	ForceSendFields []string `json:"-"`
14165
14166	// NullFields is a list of field names (e.g. "CarrierRateName") to
14167	// include in API requests with the JSON null value. By default, fields
14168	// with empty values are omitted from API requests. However, any field
14169	// with an empty value appearing in NullFields will be sent to the
14170	// server as null. It is an error if a field in this list has a
14171	// non-empty value. This may be used to include null fields in Patch
14172	// requests.
14173	NullFields []string `json:"-"`
14174}
14175
14176func (s *Value) MarshalJSON() ([]byte, error) {
14177	type NoMethod Value
14178	raw := NoMethod(*s)
14179	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14180}
14181
14182type Weight struct {
14183	// Unit: Required. The weight unit. Acceptable values are: - "kg" -
14184	// "lb"
14185	Unit string `json:"unit,omitempty"`
14186
14187	// Value: Required. The weight represented as a number.
14188	Value string `json:"value,omitempty"`
14189
14190	// ForceSendFields is a list of field names (e.g. "Unit") to
14191	// unconditionally include in API requests. By default, fields with
14192	// empty values are omitted from API requests. However, any non-pointer,
14193	// non-interface field appearing in ForceSendFields will be sent to the
14194	// server regardless of whether the field is empty or not. This may be
14195	// used to include empty fields in Patch requests.
14196	ForceSendFields []string `json:"-"`
14197
14198	// NullFields is a list of field names (e.g. "Unit") to include in API
14199	// requests with the JSON null value. By default, fields with empty
14200	// values are omitted from API requests. However, any field with an
14201	// empty value appearing in NullFields will be sent to the server as
14202	// null. It is an error if a field in this list has a non-empty value.
14203	// This may be used to include null fields in Patch requests.
14204	NullFields []string `json:"-"`
14205}
14206
14207func (s *Weight) MarshalJSON() ([]byte, error) {
14208	type NoMethod Weight
14209	raw := NoMethod(*s)
14210	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14211}
14212
14213// method id "content.accounts.authinfo":
14214
14215type AccountsAuthinfoCall struct {
14216	s            *APIService
14217	urlParams_   gensupport.URLParams
14218	ifNoneMatch_ string
14219	ctx_         context.Context
14220	header_      http.Header
14221}
14222
14223// Authinfo: Returns information about the authenticated user.
14224func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
14225	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14226	return c
14227}
14228
14229// Fields allows partial responses to be retrieved. See
14230// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14231// for more information.
14232func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
14233	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14234	return c
14235}
14236
14237// IfNoneMatch sets the optional parameter which makes the operation
14238// fail if the object's ETag matches the given value. This is useful for
14239// getting updates only after the object has changed since the last
14240// request. Use googleapi.IsNotModified to check whether the response
14241// error from Do is the result of In-None-Match.
14242func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
14243	c.ifNoneMatch_ = entityTag
14244	return c
14245}
14246
14247// Context sets the context to be used in this call's Do method. Any
14248// pending HTTP request will be aborted if the provided context is
14249// canceled.
14250func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
14251	c.ctx_ = ctx
14252	return c
14253}
14254
14255// Header returns an http.Header that can be modified by the caller to
14256// add HTTP headers to the request.
14257func (c *AccountsAuthinfoCall) Header() http.Header {
14258	if c.header_ == nil {
14259		c.header_ = make(http.Header)
14260	}
14261	return c.header_
14262}
14263
14264func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
14265	reqHeaders := make(http.Header)
14266	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
14267	for k, v := range c.header_ {
14268		reqHeaders[k] = v
14269	}
14270	reqHeaders.Set("User-Agent", c.s.userAgent())
14271	if c.ifNoneMatch_ != "" {
14272		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14273	}
14274	var body io.Reader = nil
14275	c.urlParams_.Set("alt", alt)
14276	c.urlParams_.Set("prettyPrint", "false")
14277	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/accounts/authinfo")
14278	urls += "?" + c.urlParams_.Encode()
14279	req, err := http.NewRequest("GET", urls, body)
14280	if err != nil {
14281		return nil, err
14282	}
14283	req.Header = reqHeaders
14284	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14285}
14286
14287// Do executes the "content.accounts.authinfo" call.
14288// Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
14289// Any non-2xx status code is an error. Response headers are in either
14290// *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
14291// returned at all) in error.(*googleapi.Error).Header. Use
14292// googleapi.IsNotModified to check whether the returned error was
14293// because http.StatusNotModified was returned.
14294func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
14295	gensupport.SetOptions(c.urlParams_, opts...)
14296	res, err := c.doRequest("json")
14297	if res != nil && res.StatusCode == http.StatusNotModified {
14298		if res.Body != nil {
14299			res.Body.Close()
14300		}
14301		return nil, &googleapi.Error{
14302			Code:   res.StatusCode,
14303			Header: res.Header,
14304		}
14305	}
14306	if err != nil {
14307		return nil, err
14308	}
14309	defer googleapi.CloseBody(res)
14310	if err := googleapi.CheckResponse(res); err != nil {
14311		return nil, err
14312	}
14313	ret := &AccountsAuthInfoResponse{
14314		ServerResponse: googleapi.ServerResponse{
14315			Header:         res.Header,
14316			HTTPStatusCode: res.StatusCode,
14317		},
14318	}
14319	target := &ret
14320	if err := gensupport.DecodeResponse(target, res); err != nil {
14321		return nil, err
14322	}
14323	return ret, nil
14324	// {
14325	//   "description": "Returns information about the authenticated user.",
14326	//   "flatPath": "content/v2.1/accounts/authinfo",
14327	//   "httpMethod": "GET",
14328	//   "id": "content.accounts.authinfo",
14329	//   "parameterOrder": [],
14330	//   "parameters": {},
14331	//   "path": "content/v2.1/accounts/authinfo",
14332	//   "response": {
14333	//     "$ref": "AccountsAuthInfoResponse"
14334	//   },
14335	//   "scopes": [
14336	//     "https://www.googleapis.com/auth/content"
14337	//   ]
14338	// }
14339
14340}
14341
14342// method id "content.accounts.claimwebsite":
14343
14344type AccountsClaimwebsiteCall struct {
14345	s          *APIService
14346	merchantId uint64
14347	accountId  uint64
14348	urlParams_ gensupport.URLParams
14349	ctx_       context.Context
14350	header_    http.Header
14351}
14352
14353// Claimwebsite: Claims the website of a Merchant Center sub-account.
14354func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
14355	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14356	c.merchantId = merchantId
14357	c.accountId = accountId
14358	return c
14359}
14360
14361// Overwrite sets the optional parameter "overwrite": Only available to
14362// selected merchants. When set to `True`, this flag removes any
14363// existing claim on the requested website by another account and
14364// replaces it with a claim from this account.
14365func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
14366	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
14367	return c
14368}
14369
14370// Fields allows partial responses to be retrieved. See
14371// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14372// for more information.
14373func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
14374	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14375	return c
14376}
14377
14378// Context sets the context to be used in this call's Do method. Any
14379// pending HTTP request will be aborted if the provided context is
14380// canceled.
14381func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
14382	c.ctx_ = ctx
14383	return c
14384}
14385
14386// Header returns an http.Header that can be modified by the caller to
14387// add HTTP headers to the request.
14388func (c *AccountsClaimwebsiteCall) Header() http.Header {
14389	if c.header_ == nil {
14390		c.header_ = make(http.Header)
14391	}
14392	return c.header_
14393}
14394
14395func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
14396	reqHeaders := make(http.Header)
14397	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
14398	for k, v := range c.header_ {
14399		reqHeaders[k] = v
14400	}
14401	reqHeaders.Set("User-Agent", c.s.userAgent())
14402	var body io.Reader = nil
14403	c.urlParams_.Set("alt", alt)
14404	c.urlParams_.Set("prettyPrint", "false")
14405	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts/{accountId}/claimwebsite")
14406	urls += "?" + c.urlParams_.Encode()
14407	req, err := http.NewRequest("POST", urls, body)
14408	if err != nil {
14409		return nil, err
14410	}
14411	req.Header = reqHeaders
14412	googleapi.Expand(req.URL, map[string]string{
14413		"merchantId": strconv.FormatUint(c.merchantId, 10),
14414		"accountId":  strconv.FormatUint(c.accountId, 10),
14415	})
14416	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14417}
14418
14419// Do executes the "content.accounts.claimwebsite" call.
14420// Exactly one of *AccountsClaimWebsiteResponse or error will be
14421// non-nil. Any non-2xx status code is an error. Response headers are in
14422// either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
14423// response was returned at all) in error.(*googleapi.Error).Header. Use
14424// googleapi.IsNotModified to check whether the returned error was
14425// because http.StatusNotModified was returned.
14426func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
14427	gensupport.SetOptions(c.urlParams_, opts...)
14428	res, err := c.doRequest("json")
14429	if res != nil && res.StatusCode == http.StatusNotModified {
14430		if res.Body != nil {
14431			res.Body.Close()
14432		}
14433		return nil, &googleapi.Error{
14434			Code:   res.StatusCode,
14435			Header: res.Header,
14436		}
14437	}
14438	if err != nil {
14439		return nil, err
14440	}
14441	defer googleapi.CloseBody(res)
14442	if err := googleapi.CheckResponse(res); err != nil {
14443		return nil, err
14444	}
14445	ret := &AccountsClaimWebsiteResponse{
14446		ServerResponse: googleapi.ServerResponse{
14447			Header:         res.Header,
14448			HTTPStatusCode: res.StatusCode,
14449		},
14450	}
14451	target := &ret
14452	if err := gensupport.DecodeResponse(target, res); err != nil {
14453		return nil, err
14454	}
14455	return ret, nil
14456	// {
14457	//   "description": "Claims the website of a Merchant Center sub-account.",
14458	//   "flatPath": "content/v2.1/{merchantId}/accounts/{accountId}/claimwebsite",
14459	//   "httpMethod": "POST",
14460	//   "id": "content.accounts.claimwebsite",
14461	//   "parameterOrder": [
14462	//     "merchantId",
14463	//     "accountId"
14464	//   ],
14465	//   "parameters": {
14466	//     "accountId": {
14467	//       "description": "The ID of the account whose website is claimed.",
14468	//       "format": "uint64",
14469	//       "location": "path",
14470	//       "required": true,
14471	//       "type": "string"
14472	//     },
14473	//     "merchantId": {
14474	//       "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.",
14475	//       "format": "uint64",
14476	//       "location": "path",
14477	//       "required": true,
14478	//       "type": "string"
14479	//     },
14480	//     "overwrite": {
14481	//       "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.",
14482	//       "location": "query",
14483	//       "type": "boolean"
14484	//     }
14485	//   },
14486	//   "path": "content/v2.1/{merchantId}/accounts/{accountId}/claimwebsite",
14487	//   "response": {
14488	//     "$ref": "AccountsClaimWebsiteResponse"
14489	//   },
14490	//   "scopes": [
14491	//     "https://www.googleapis.com/auth/content"
14492	//   ]
14493	// }
14494
14495}
14496
14497// method id "content.accounts.custombatch":
14498
14499type AccountsCustombatchCall struct {
14500	s                          *APIService
14501	accountscustombatchrequest *AccountsCustomBatchRequest
14502	urlParams_                 gensupport.URLParams
14503	ctx_                       context.Context
14504	header_                    http.Header
14505}
14506
14507// Custombatch: Retrieves, inserts, updates, and deletes multiple
14508// Merchant Center (sub-)accounts in a single request.
14509func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
14510	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14511	c.accountscustombatchrequest = accountscustombatchrequest
14512	return c
14513}
14514
14515// Fields allows partial responses to be retrieved. See
14516// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14517// for more information.
14518func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
14519	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14520	return c
14521}
14522
14523// Context sets the context to be used in this call's Do method. Any
14524// pending HTTP request will be aborted if the provided context is
14525// canceled.
14526func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
14527	c.ctx_ = ctx
14528	return c
14529}
14530
14531// Header returns an http.Header that can be modified by the caller to
14532// add HTTP headers to the request.
14533func (c *AccountsCustombatchCall) Header() http.Header {
14534	if c.header_ == nil {
14535		c.header_ = make(http.Header)
14536	}
14537	return c.header_
14538}
14539
14540func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
14541	reqHeaders := make(http.Header)
14542	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
14543	for k, v := range c.header_ {
14544		reqHeaders[k] = v
14545	}
14546	reqHeaders.Set("User-Agent", c.s.userAgent())
14547	var body io.Reader = nil
14548	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
14549	if err != nil {
14550		return nil, err
14551	}
14552	reqHeaders.Set("Content-Type", "application/json")
14553	c.urlParams_.Set("alt", alt)
14554	c.urlParams_.Set("prettyPrint", "false")
14555	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/accounts/batch")
14556	urls += "?" + c.urlParams_.Encode()
14557	req, err := http.NewRequest("POST", urls, body)
14558	if err != nil {
14559		return nil, err
14560	}
14561	req.Header = reqHeaders
14562	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14563}
14564
14565// Do executes the "content.accounts.custombatch" call.
14566// Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
14567// Any non-2xx status code is an error. Response headers are in either
14568// *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
14569// was returned at all) in error.(*googleapi.Error).Header. Use
14570// googleapi.IsNotModified to check whether the returned error was
14571// because http.StatusNotModified was returned.
14572func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
14573	gensupport.SetOptions(c.urlParams_, opts...)
14574	res, err := c.doRequest("json")
14575	if res != nil && res.StatusCode == http.StatusNotModified {
14576		if res.Body != nil {
14577			res.Body.Close()
14578		}
14579		return nil, &googleapi.Error{
14580			Code:   res.StatusCode,
14581			Header: res.Header,
14582		}
14583	}
14584	if err != nil {
14585		return nil, err
14586	}
14587	defer googleapi.CloseBody(res)
14588	if err := googleapi.CheckResponse(res); err != nil {
14589		return nil, err
14590	}
14591	ret := &AccountsCustomBatchResponse{
14592		ServerResponse: googleapi.ServerResponse{
14593			Header:         res.Header,
14594			HTTPStatusCode: res.StatusCode,
14595		},
14596	}
14597	target := &ret
14598	if err := gensupport.DecodeResponse(target, res); err != nil {
14599		return nil, err
14600	}
14601	return ret, nil
14602	// {
14603	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
14604	//   "flatPath": "content/v2.1/accounts/batch",
14605	//   "httpMethod": "POST",
14606	//   "id": "content.accounts.custombatch",
14607	//   "parameterOrder": [],
14608	//   "parameters": {},
14609	//   "path": "content/v2.1/accounts/batch",
14610	//   "request": {
14611	//     "$ref": "AccountsCustomBatchRequest"
14612	//   },
14613	//   "response": {
14614	//     "$ref": "AccountsCustomBatchResponse"
14615	//   },
14616	//   "scopes": [
14617	//     "https://www.googleapis.com/auth/content"
14618	//   ]
14619	// }
14620
14621}
14622
14623// method id "content.accounts.delete":
14624
14625type AccountsDeleteCall struct {
14626	s          *APIService
14627	merchantId uint64
14628	accountId  uint64
14629	urlParams_ gensupport.URLParams
14630	ctx_       context.Context
14631	header_    http.Header
14632}
14633
14634// Delete: Deletes a Merchant Center sub-account.
14635func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
14636	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14637	c.merchantId = merchantId
14638	c.accountId = accountId
14639	return c
14640}
14641
14642// Force sets the optional parameter "force": Flag to delete
14643// sub-accounts with products. The default value is false.
14644func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
14645	c.urlParams_.Set("force", fmt.Sprint(force))
14646	return c
14647}
14648
14649// Fields allows partial responses to be retrieved. See
14650// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14651// for more information.
14652func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
14653	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14654	return c
14655}
14656
14657// Context sets the context to be used in this call's Do method. Any
14658// pending HTTP request will be aborted if the provided context is
14659// canceled.
14660func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
14661	c.ctx_ = ctx
14662	return c
14663}
14664
14665// Header returns an http.Header that can be modified by the caller to
14666// add HTTP headers to the request.
14667func (c *AccountsDeleteCall) Header() http.Header {
14668	if c.header_ == nil {
14669		c.header_ = make(http.Header)
14670	}
14671	return c.header_
14672}
14673
14674func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
14675	reqHeaders := make(http.Header)
14676	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
14677	for k, v := range c.header_ {
14678		reqHeaders[k] = v
14679	}
14680	reqHeaders.Set("User-Agent", c.s.userAgent())
14681	var body io.Reader = nil
14682	c.urlParams_.Set("alt", alt)
14683	c.urlParams_.Set("prettyPrint", "false")
14684	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts/{accountId}")
14685	urls += "?" + c.urlParams_.Encode()
14686	req, err := http.NewRequest("DELETE", urls, body)
14687	if err != nil {
14688		return nil, err
14689	}
14690	req.Header = reqHeaders
14691	googleapi.Expand(req.URL, map[string]string{
14692		"merchantId": strconv.FormatUint(c.merchantId, 10),
14693		"accountId":  strconv.FormatUint(c.accountId, 10),
14694	})
14695	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14696}
14697
14698// Do executes the "content.accounts.delete" call.
14699func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
14700	gensupport.SetOptions(c.urlParams_, opts...)
14701	res, err := c.doRequest("json")
14702	if err != nil {
14703		return err
14704	}
14705	defer googleapi.CloseBody(res)
14706	if err := googleapi.CheckResponse(res); err != nil {
14707		return err
14708	}
14709	return nil
14710	// {
14711	//   "description": "Deletes a Merchant Center sub-account.",
14712	//   "flatPath": "content/v2.1/{merchantId}/accounts/{accountId}",
14713	//   "httpMethod": "DELETE",
14714	//   "id": "content.accounts.delete",
14715	//   "parameterOrder": [
14716	//     "merchantId",
14717	//     "accountId"
14718	//   ],
14719	//   "parameters": {
14720	//     "accountId": {
14721	//       "description": "The ID of the account.",
14722	//       "format": "uint64",
14723	//       "location": "path",
14724	//       "required": true,
14725	//       "type": "string"
14726	//     },
14727	//     "force": {
14728	//       "default": "false",
14729	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
14730	//       "location": "query",
14731	//       "type": "boolean"
14732	//     },
14733	//     "merchantId": {
14734	//       "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.",
14735	//       "format": "uint64",
14736	//       "location": "path",
14737	//       "required": true,
14738	//       "type": "string"
14739	//     }
14740	//   },
14741	//   "path": "content/v2.1/{merchantId}/accounts/{accountId}",
14742	//   "scopes": [
14743	//     "https://www.googleapis.com/auth/content"
14744	//   ]
14745	// }
14746
14747}
14748
14749// method id "content.accounts.get":
14750
14751type AccountsGetCall struct {
14752	s            *APIService
14753	merchantId   uint64
14754	accountId    uint64
14755	urlParams_   gensupport.URLParams
14756	ifNoneMatch_ string
14757	ctx_         context.Context
14758	header_      http.Header
14759}
14760
14761// Get: Retrieves a Merchant Center account.
14762func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
14763	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14764	c.merchantId = merchantId
14765	c.accountId = accountId
14766	return c
14767}
14768
14769// View sets the optional parameter "view": Controls which fields will
14770// be populated. Acceptable values are: "merchant" and "css". The
14771// default value is "merchant".
14772//
14773// Possible values:
14774//   "MERCHANT"
14775//   "CSS"
14776func (c *AccountsGetCall) View(view string) *AccountsGetCall {
14777	c.urlParams_.Set("view", view)
14778	return c
14779}
14780
14781// Fields allows partial responses to be retrieved. See
14782// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14783// for more information.
14784func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
14785	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14786	return c
14787}
14788
14789// IfNoneMatch sets the optional parameter which makes the operation
14790// fail if the object's ETag matches the given value. This is useful for
14791// getting updates only after the object has changed since the last
14792// request. Use googleapi.IsNotModified to check whether the response
14793// error from Do is the result of In-None-Match.
14794func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
14795	c.ifNoneMatch_ = entityTag
14796	return c
14797}
14798
14799// Context sets the context to be used in this call's Do method. Any
14800// pending HTTP request will be aborted if the provided context is
14801// canceled.
14802func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
14803	c.ctx_ = ctx
14804	return c
14805}
14806
14807// Header returns an http.Header that can be modified by the caller to
14808// add HTTP headers to the request.
14809func (c *AccountsGetCall) Header() http.Header {
14810	if c.header_ == nil {
14811		c.header_ = make(http.Header)
14812	}
14813	return c.header_
14814}
14815
14816func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
14817	reqHeaders := make(http.Header)
14818	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
14819	for k, v := range c.header_ {
14820		reqHeaders[k] = v
14821	}
14822	reqHeaders.Set("User-Agent", c.s.userAgent())
14823	if c.ifNoneMatch_ != "" {
14824		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14825	}
14826	var body io.Reader = nil
14827	c.urlParams_.Set("alt", alt)
14828	c.urlParams_.Set("prettyPrint", "false")
14829	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts/{accountId}")
14830	urls += "?" + c.urlParams_.Encode()
14831	req, err := http.NewRequest("GET", urls, body)
14832	if err != nil {
14833		return nil, err
14834	}
14835	req.Header = reqHeaders
14836	googleapi.Expand(req.URL, map[string]string{
14837		"merchantId": strconv.FormatUint(c.merchantId, 10),
14838		"accountId":  strconv.FormatUint(c.accountId, 10),
14839	})
14840	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14841}
14842
14843// Do executes the "content.accounts.get" call.
14844// Exactly one of *Account or error will be non-nil. Any non-2xx status
14845// code is an error. Response headers are in either
14846// *Account.ServerResponse.Header or (if a response was returned at all)
14847// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
14848// check whether the returned error was because http.StatusNotModified
14849// was returned.
14850func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
14851	gensupport.SetOptions(c.urlParams_, opts...)
14852	res, err := c.doRequest("json")
14853	if res != nil && res.StatusCode == http.StatusNotModified {
14854		if res.Body != nil {
14855			res.Body.Close()
14856		}
14857		return nil, &googleapi.Error{
14858			Code:   res.StatusCode,
14859			Header: res.Header,
14860		}
14861	}
14862	if err != nil {
14863		return nil, err
14864	}
14865	defer googleapi.CloseBody(res)
14866	if err := googleapi.CheckResponse(res); err != nil {
14867		return nil, err
14868	}
14869	ret := &Account{
14870		ServerResponse: googleapi.ServerResponse{
14871			Header:         res.Header,
14872			HTTPStatusCode: res.StatusCode,
14873		},
14874	}
14875	target := &ret
14876	if err := gensupport.DecodeResponse(target, res); err != nil {
14877		return nil, err
14878	}
14879	return ret, nil
14880	// {
14881	//   "description": "Retrieves a Merchant Center account.",
14882	//   "flatPath": "content/v2.1/{merchantId}/accounts/{accountId}",
14883	//   "httpMethod": "GET",
14884	//   "id": "content.accounts.get",
14885	//   "parameterOrder": [
14886	//     "merchantId",
14887	//     "accountId"
14888	//   ],
14889	//   "parameters": {
14890	//     "accountId": {
14891	//       "description": "The ID of the account.",
14892	//       "format": "uint64",
14893	//       "location": "path",
14894	//       "required": true,
14895	//       "type": "string"
14896	//     },
14897	//     "merchantId": {
14898	//       "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.",
14899	//       "format": "uint64",
14900	//       "location": "path",
14901	//       "required": true,
14902	//       "type": "string"
14903	//     },
14904	//     "view": {
14905	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
14906	//       "enum": [
14907	//         "MERCHANT",
14908	//         "CSS"
14909	//       ],
14910	//       "enumDescriptions": [
14911	//         "",
14912	//         ""
14913	//       ],
14914	//       "location": "query",
14915	//       "type": "string"
14916	//     }
14917	//   },
14918	//   "path": "content/v2.1/{merchantId}/accounts/{accountId}",
14919	//   "response": {
14920	//     "$ref": "Account"
14921	//   },
14922	//   "scopes": [
14923	//     "https://www.googleapis.com/auth/content"
14924	//   ]
14925	// }
14926
14927}
14928
14929// method id "content.accounts.insert":
14930
14931type AccountsInsertCall struct {
14932	s          *APIService
14933	merchantId uint64
14934	account    *Account
14935	urlParams_ gensupport.URLParams
14936	ctx_       context.Context
14937	header_    http.Header
14938}
14939
14940// Insert: Creates a Merchant Center sub-account.
14941func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
14942	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14943	c.merchantId = merchantId
14944	c.account = account
14945	return c
14946}
14947
14948// Fields allows partial responses to be retrieved. See
14949// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14950// for more information.
14951func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
14952	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14953	return c
14954}
14955
14956// Context sets the context to be used in this call's Do method. Any
14957// pending HTTP request will be aborted if the provided context is
14958// canceled.
14959func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
14960	c.ctx_ = ctx
14961	return c
14962}
14963
14964// Header returns an http.Header that can be modified by the caller to
14965// add HTTP headers to the request.
14966func (c *AccountsInsertCall) Header() http.Header {
14967	if c.header_ == nil {
14968		c.header_ = make(http.Header)
14969	}
14970	return c.header_
14971}
14972
14973func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
14974	reqHeaders := make(http.Header)
14975	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
14976	for k, v := range c.header_ {
14977		reqHeaders[k] = v
14978	}
14979	reqHeaders.Set("User-Agent", c.s.userAgent())
14980	var body io.Reader = nil
14981	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
14982	if err != nil {
14983		return nil, err
14984	}
14985	reqHeaders.Set("Content-Type", "application/json")
14986	c.urlParams_.Set("alt", alt)
14987	c.urlParams_.Set("prettyPrint", "false")
14988	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts")
14989	urls += "?" + c.urlParams_.Encode()
14990	req, err := http.NewRequest("POST", urls, body)
14991	if err != nil {
14992		return nil, err
14993	}
14994	req.Header = reqHeaders
14995	googleapi.Expand(req.URL, map[string]string{
14996		"merchantId": strconv.FormatUint(c.merchantId, 10),
14997	})
14998	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14999}
15000
15001// Do executes the "content.accounts.insert" call.
15002// Exactly one of *Account or error will be non-nil. Any non-2xx status
15003// code is an error. Response headers are in either
15004// *Account.ServerResponse.Header or (if a response was returned at all)
15005// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
15006// check whether the returned error was because http.StatusNotModified
15007// was returned.
15008func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
15009	gensupport.SetOptions(c.urlParams_, opts...)
15010	res, err := c.doRequest("json")
15011	if res != nil && res.StatusCode == http.StatusNotModified {
15012		if res.Body != nil {
15013			res.Body.Close()
15014		}
15015		return nil, &googleapi.Error{
15016			Code:   res.StatusCode,
15017			Header: res.Header,
15018		}
15019	}
15020	if err != nil {
15021		return nil, err
15022	}
15023	defer googleapi.CloseBody(res)
15024	if err := googleapi.CheckResponse(res); err != nil {
15025		return nil, err
15026	}
15027	ret := &Account{
15028		ServerResponse: googleapi.ServerResponse{
15029			Header:         res.Header,
15030			HTTPStatusCode: res.StatusCode,
15031		},
15032	}
15033	target := &ret
15034	if err := gensupport.DecodeResponse(target, res); err != nil {
15035		return nil, err
15036	}
15037	return ret, nil
15038	// {
15039	//   "description": "Creates a Merchant Center sub-account.",
15040	//   "flatPath": "content/v2.1/{merchantId}/accounts",
15041	//   "httpMethod": "POST",
15042	//   "id": "content.accounts.insert",
15043	//   "parameterOrder": [
15044	//     "merchantId"
15045	//   ],
15046	//   "parameters": {
15047	//     "merchantId": {
15048	//       "description": "The ID of the managing account. This must be a multi-client account.",
15049	//       "format": "uint64",
15050	//       "location": "path",
15051	//       "required": true,
15052	//       "type": "string"
15053	//     }
15054	//   },
15055	//   "path": "content/v2.1/{merchantId}/accounts",
15056	//   "request": {
15057	//     "$ref": "Account"
15058	//   },
15059	//   "response": {
15060	//     "$ref": "Account"
15061	//   },
15062	//   "scopes": [
15063	//     "https://www.googleapis.com/auth/content"
15064	//   ]
15065	// }
15066
15067}
15068
15069// method id "content.accounts.link":
15070
15071type AccountsLinkCall struct {
15072	s                   *APIService
15073	merchantId          uint64
15074	accountId           uint64
15075	accountslinkrequest *AccountsLinkRequest
15076	urlParams_          gensupport.URLParams
15077	ctx_                context.Context
15078	header_             http.Header
15079}
15080
15081// Link: Performs an action on a link between two Merchant Center
15082// accounts, namely accountId and linkedAccountId.
15083func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
15084	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15085	c.merchantId = merchantId
15086	c.accountId = accountId
15087	c.accountslinkrequest = accountslinkrequest
15088	return c
15089}
15090
15091// Fields allows partial responses to be retrieved. See
15092// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15093// for more information.
15094func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
15095	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15096	return c
15097}
15098
15099// Context sets the context to be used in this call's Do method. Any
15100// pending HTTP request will be aborted if the provided context is
15101// canceled.
15102func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
15103	c.ctx_ = ctx
15104	return c
15105}
15106
15107// Header returns an http.Header that can be modified by the caller to
15108// add HTTP headers to the request.
15109func (c *AccountsLinkCall) Header() http.Header {
15110	if c.header_ == nil {
15111		c.header_ = make(http.Header)
15112	}
15113	return c.header_
15114}
15115
15116func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
15117	reqHeaders := make(http.Header)
15118	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
15119	for k, v := range c.header_ {
15120		reqHeaders[k] = v
15121	}
15122	reqHeaders.Set("User-Agent", c.s.userAgent())
15123	var body io.Reader = nil
15124	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
15125	if err != nil {
15126		return nil, err
15127	}
15128	reqHeaders.Set("Content-Type", "application/json")
15129	c.urlParams_.Set("alt", alt)
15130	c.urlParams_.Set("prettyPrint", "false")
15131	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts/{accountId}/link")
15132	urls += "?" + c.urlParams_.Encode()
15133	req, err := http.NewRequest("POST", urls, body)
15134	if err != nil {
15135		return nil, err
15136	}
15137	req.Header = reqHeaders
15138	googleapi.Expand(req.URL, map[string]string{
15139		"merchantId": strconv.FormatUint(c.merchantId, 10),
15140		"accountId":  strconv.FormatUint(c.accountId, 10),
15141	})
15142	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15143}
15144
15145// Do executes the "content.accounts.link" call.
15146// Exactly one of *AccountsLinkResponse or error will be non-nil. Any
15147// non-2xx status code is an error. Response headers are in either
15148// *AccountsLinkResponse.ServerResponse.Header or (if a response was
15149// returned at all) in error.(*googleapi.Error).Header. Use
15150// googleapi.IsNotModified to check whether the returned error was
15151// because http.StatusNotModified was returned.
15152func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
15153	gensupport.SetOptions(c.urlParams_, opts...)
15154	res, err := c.doRequest("json")
15155	if res != nil && res.StatusCode == http.StatusNotModified {
15156		if res.Body != nil {
15157			res.Body.Close()
15158		}
15159		return nil, &googleapi.Error{
15160			Code:   res.StatusCode,
15161			Header: res.Header,
15162		}
15163	}
15164	if err != nil {
15165		return nil, err
15166	}
15167	defer googleapi.CloseBody(res)
15168	if err := googleapi.CheckResponse(res); err != nil {
15169		return nil, err
15170	}
15171	ret := &AccountsLinkResponse{
15172		ServerResponse: googleapi.ServerResponse{
15173			Header:         res.Header,
15174			HTTPStatusCode: res.StatusCode,
15175		},
15176	}
15177	target := &ret
15178	if err := gensupport.DecodeResponse(target, res); err != nil {
15179		return nil, err
15180	}
15181	return ret, nil
15182	// {
15183	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
15184	//   "flatPath": "content/v2.1/{merchantId}/accounts/{accountId}/link",
15185	//   "httpMethod": "POST",
15186	//   "id": "content.accounts.link",
15187	//   "parameterOrder": [
15188	//     "merchantId",
15189	//     "accountId"
15190	//   ],
15191	//   "parameters": {
15192	//     "accountId": {
15193	//       "description": "The ID of the account that should be linked.",
15194	//       "format": "uint64",
15195	//       "location": "path",
15196	//       "required": true,
15197	//       "type": "string"
15198	//     },
15199	//     "merchantId": {
15200	//       "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.",
15201	//       "format": "uint64",
15202	//       "location": "path",
15203	//       "required": true,
15204	//       "type": "string"
15205	//     }
15206	//   },
15207	//   "path": "content/v2.1/{merchantId}/accounts/{accountId}/link",
15208	//   "request": {
15209	//     "$ref": "AccountsLinkRequest"
15210	//   },
15211	//   "response": {
15212	//     "$ref": "AccountsLinkResponse"
15213	//   },
15214	//   "scopes": [
15215	//     "https://www.googleapis.com/auth/content"
15216	//   ]
15217	// }
15218
15219}
15220
15221// method id "content.accounts.list":
15222
15223type AccountsListCall struct {
15224	s            *APIService
15225	merchantId   uint64
15226	urlParams_   gensupport.URLParams
15227	ifNoneMatch_ string
15228	ctx_         context.Context
15229	header_      http.Header
15230}
15231
15232// List: Lists the sub-accounts in your Merchant Center account.
15233func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
15234	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15235	c.merchantId = merchantId
15236	return c
15237}
15238
15239// Label sets the optional parameter "label": If view is set to "css",
15240// only return accounts that are assigned label with given ID.
15241func (c *AccountsListCall) Label(label uint64) *AccountsListCall {
15242	c.urlParams_.Set("label", fmt.Sprint(label))
15243	return c
15244}
15245
15246// MaxResults sets the optional parameter "maxResults": The maximum
15247// number of accounts to return in the response, used for paging.
15248func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
15249	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
15250	return c
15251}
15252
15253// PageToken sets the optional parameter "pageToken": The token returned
15254// by the previous request.
15255func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
15256	c.urlParams_.Set("pageToken", pageToken)
15257	return c
15258}
15259
15260// View sets the optional parameter "view": Controls which fields will
15261// be populated. Acceptable values are: "merchant" and "css". The
15262// default value is "merchant".
15263//
15264// Possible values:
15265//   "MERCHANT"
15266//   "CSS"
15267func (c *AccountsListCall) View(view string) *AccountsListCall {
15268	c.urlParams_.Set("view", view)
15269	return c
15270}
15271
15272// Fields allows partial responses to be retrieved. See
15273// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15274// for more information.
15275func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
15276	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15277	return c
15278}
15279
15280// IfNoneMatch sets the optional parameter which makes the operation
15281// fail if the object's ETag matches the given value. This is useful for
15282// getting updates only after the object has changed since the last
15283// request. Use googleapi.IsNotModified to check whether the response
15284// error from Do is the result of In-None-Match.
15285func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
15286	c.ifNoneMatch_ = entityTag
15287	return c
15288}
15289
15290// Context sets the context to be used in this call's Do method. Any
15291// pending HTTP request will be aborted if the provided context is
15292// canceled.
15293func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
15294	c.ctx_ = ctx
15295	return c
15296}
15297
15298// Header returns an http.Header that can be modified by the caller to
15299// add HTTP headers to the request.
15300func (c *AccountsListCall) Header() http.Header {
15301	if c.header_ == nil {
15302		c.header_ = make(http.Header)
15303	}
15304	return c.header_
15305}
15306
15307func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
15308	reqHeaders := make(http.Header)
15309	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
15310	for k, v := range c.header_ {
15311		reqHeaders[k] = v
15312	}
15313	reqHeaders.Set("User-Agent", c.s.userAgent())
15314	if c.ifNoneMatch_ != "" {
15315		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15316	}
15317	var body io.Reader = nil
15318	c.urlParams_.Set("alt", alt)
15319	c.urlParams_.Set("prettyPrint", "false")
15320	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts")
15321	urls += "?" + c.urlParams_.Encode()
15322	req, err := http.NewRequest("GET", urls, body)
15323	if err != nil {
15324		return nil, err
15325	}
15326	req.Header = reqHeaders
15327	googleapi.Expand(req.URL, map[string]string{
15328		"merchantId": strconv.FormatUint(c.merchantId, 10),
15329	})
15330	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15331}
15332
15333// Do executes the "content.accounts.list" call.
15334// Exactly one of *AccountsListResponse or error will be non-nil. Any
15335// non-2xx status code is an error. Response headers are in either
15336// *AccountsListResponse.ServerResponse.Header or (if a response was
15337// returned at all) in error.(*googleapi.Error).Header. Use
15338// googleapi.IsNotModified to check whether the returned error was
15339// because http.StatusNotModified was returned.
15340func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
15341	gensupport.SetOptions(c.urlParams_, opts...)
15342	res, err := c.doRequest("json")
15343	if res != nil && res.StatusCode == http.StatusNotModified {
15344		if res.Body != nil {
15345			res.Body.Close()
15346		}
15347		return nil, &googleapi.Error{
15348			Code:   res.StatusCode,
15349			Header: res.Header,
15350		}
15351	}
15352	if err != nil {
15353		return nil, err
15354	}
15355	defer googleapi.CloseBody(res)
15356	if err := googleapi.CheckResponse(res); err != nil {
15357		return nil, err
15358	}
15359	ret := &AccountsListResponse{
15360		ServerResponse: googleapi.ServerResponse{
15361			Header:         res.Header,
15362			HTTPStatusCode: res.StatusCode,
15363		},
15364	}
15365	target := &ret
15366	if err := gensupport.DecodeResponse(target, res); err != nil {
15367		return nil, err
15368	}
15369	return ret, nil
15370	// {
15371	//   "description": "Lists the sub-accounts in your Merchant Center account.",
15372	//   "flatPath": "content/v2.1/{merchantId}/accounts",
15373	//   "httpMethod": "GET",
15374	//   "id": "content.accounts.list",
15375	//   "parameterOrder": [
15376	//     "merchantId"
15377	//   ],
15378	//   "parameters": {
15379	//     "label": {
15380	//       "description": "If view is set to \"css\", only return accounts that are assigned label with given ID.",
15381	//       "format": "uint64",
15382	//       "location": "query",
15383	//       "type": "string"
15384	//     },
15385	//     "maxResults": {
15386	//       "description": "The maximum number of accounts to return in the response, used for paging.",
15387	//       "format": "uint32",
15388	//       "location": "query",
15389	//       "type": "integer"
15390	//     },
15391	//     "merchantId": {
15392	//       "description": "The ID of the managing account. This must be a multi-client account.",
15393	//       "format": "uint64",
15394	//       "location": "path",
15395	//       "required": true,
15396	//       "type": "string"
15397	//     },
15398	//     "pageToken": {
15399	//       "description": "The token returned by the previous request.",
15400	//       "location": "query",
15401	//       "type": "string"
15402	//     },
15403	//     "view": {
15404	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
15405	//       "enum": [
15406	//         "MERCHANT",
15407	//         "CSS"
15408	//       ],
15409	//       "enumDescriptions": [
15410	//         "",
15411	//         ""
15412	//       ],
15413	//       "location": "query",
15414	//       "type": "string"
15415	//     }
15416	//   },
15417	//   "path": "content/v2.1/{merchantId}/accounts",
15418	//   "response": {
15419	//     "$ref": "AccountsListResponse"
15420	//   },
15421	//   "scopes": [
15422	//     "https://www.googleapis.com/auth/content"
15423	//   ]
15424	// }
15425
15426}
15427
15428// Pages invokes f for each page of results.
15429// A non-nil error returned from f will halt the iteration.
15430// The provided context supersedes any context provided to the Context method.
15431func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
15432	c.ctx_ = ctx
15433	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
15434	for {
15435		x, err := c.Do()
15436		if err != nil {
15437			return err
15438		}
15439		if err := f(x); err != nil {
15440			return err
15441		}
15442		if x.NextPageToken == "" {
15443			return nil
15444		}
15445		c.PageToken(x.NextPageToken)
15446	}
15447}
15448
15449// method id "content.accounts.listlinks":
15450
15451type AccountsListlinksCall struct {
15452	s            *APIService
15453	merchantId   uint64
15454	accountId    uint64
15455	urlParams_   gensupport.URLParams
15456	ifNoneMatch_ string
15457	ctx_         context.Context
15458	header_      http.Header
15459}
15460
15461// Listlinks: Returns the list of accounts linked to your Merchant
15462// Center account.
15463func (r *AccountsService) Listlinks(merchantId uint64, accountId uint64) *AccountsListlinksCall {
15464	c := &AccountsListlinksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15465	c.merchantId = merchantId
15466	c.accountId = accountId
15467	return c
15468}
15469
15470// MaxResults sets the optional parameter "maxResults": The maximum
15471// number of links to return in the response, used for pagination.
15472func (c *AccountsListlinksCall) MaxResults(maxResults int64) *AccountsListlinksCall {
15473	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
15474	return c
15475}
15476
15477// PageToken sets the optional parameter "pageToken": The token returned
15478// by the previous request.
15479func (c *AccountsListlinksCall) PageToken(pageToken string) *AccountsListlinksCall {
15480	c.urlParams_.Set("pageToken", pageToken)
15481	return c
15482}
15483
15484// Fields allows partial responses to be retrieved. See
15485// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15486// for more information.
15487func (c *AccountsListlinksCall) Fields(s ...googleapi.Field) *AccountsListlinksCall {
15488	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15489	return c
15490}
15491
15492// IfNoneMatch sets the optional parameter which makes the operation
15493// fail if the object's ETag matches the given value. This is useful for
15494// getting updates only after the object has changed since the last
15495// request. Use googleapi.IsNotModified to check whether the response
15496// error from Do is the result of In-None-Match.
15497func (c *AccountsListlinksCall) IfNoneMatch(entityTag string) *AccountsListlinksCall {
15498	c.ifNoneMatch_ = entityTag
15499	return c
15500}
15501
15502// Context sets the context to be used in this call's Do method. Any
15503// pending HTTP request will be aborted if the provided context is
15504// canceled.
15505func (c *AccountsListlinksCall) Context(ctx context.Context) *AccountsListlinksCall {
15506	c.ctx_ = ctx
15507	return c
15508}
15509
15510// Header returns an http.Header that can be modified by the caller to
15511// add HTTP headers to the request.
15512func (c *AccountsListlinksCall) Header() http.Header {
15513	if c.header_ == nil {
15514		c.header_ = make(http.Header)
15515	}
15516	return c.header_
15517}
15518
15519func (c *AccountsListlinksCall) doRequest(alt string) (*http.Response, error) {
15520	reqHeaders := make(http.Header)
15521	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
15522	for k, v := range c.header_ {
15523		reqHeaders[k] = v
15524	}
15525	reqHeaders.Set("User-Agent", c.s.userAgent())
15526	if c.ifNoneMatch_ != "" {
15527		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15528	}
15529	var body io.Reader = nil
15530	c.urlParams_.Set("alt", alt)
15531	c.urlParams_.Set("prettyPrint", "false")
15532	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts/{accountId}/listlinks")
15533	urls += "?" + c.urlParams_.Encode()
15534	req, err := http.NewRequest("GET", urls, body)
15535	if err != nil {
15536		return nil, err
15537	}
15538	req.Header = reqHeaders
15539	googleapi.Expand(req.URL, map[string]string{
15540		"merchantId": strconv.FormatUint(c.merchantId, 10),
15541		"accountId":  strconv.FormatUint(c.accountId, 10),
15542	})
15543	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15544}
15545
15546// Do executes the "content.accounts.listlinks" call.
15547// Exactly one of *AccountsListLinksResponse or error will be non-nil.
15548// Any non-2xx status code is an error. Response headers are in either
15549// *AccountsListLinksResponse.ServerResponse.Header or (if a response
15550// was returned at all) in error.(*googleapi.Error).Header. Use
15551// googleapi.IsNotModified to check whether the returned error was
15552// because http.StatusNotModified was returned.
15553func (c *AccountsListlinksCall) Do(opts ...googleapi.CallOption) (*AccountsListLinksResponse, error) {
15554	gensupport.SetOptions(c.urlParams_, opts...)
15555	res, err := c.doRequest("json")
15556	if res != nil && res.StatusCode == http.StatusNotModified {
15557		if res.Body != nil {
15558			res.Body.Close()
15559		}
15560		return nil, &googleapi.Error{
15561			Code:   res.StatusCode,
15562			Header: res.Header,
15563		}
15564	}
15565	if err != nil {
15566		return nil, err
15567	}
15568	defer googleapi.CloseBody(res)
15569	if err := googleapi.CheckResponse(res); err != nil {
15570		return nil, err
15571	}
15572	ret := &AccountsListLinksResponse{
15573		ServerResponse: googleapi.ServerResponse{
15574			Header:         res.Header,
15575			HTTPStatusCode: res.StatusCode,
15576		},
15577	}
15578	target := &ret
15579	if err := gensupport.DecodeResponse(target, res); err != nil {
15580		return nil, err
15581	}
15582	return ret, nil
15583	// {
15584	//   "description": "Returns the list of accounts linked to your Merchant Center account.",
15585	//   "flatPath": "content/v2.1/{merchantId}/accounts/{accountId}/listlinks",
15586	//   "httpMethod": "GET",
15587	//   "id": "content.accounts.listlinks",
15588	//   "parameterOrder": [
15589	//     "merchantId",
15590	//     "accountId"
15591	//   ],
15592	//   "parameters": {
15593	//     "accountId": {
15594	//       "description": "The ID of the account for which to list links.",
15595	//       "format": "uint64",
15596	//       "location": "path",
15597	//       "required": true,
15598	//       "type": "string"
15599	//     },
15600	//     "maxResults": {
15601	//       "description": "The maximum number of links to return in the response, used for pagination.",
15602	//       "format": "uint32",
15603	//       "location": "query",
15604	//       "type": "integer"
15605	//     },
15606	//     "merchantId": {
15607	//       "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.",
15608	//       "format": "uint64",
15609	//       "location": "path",
15610	//       "required": true,
15611	//       "type": "string"
15612	//     },
15613	//     "pageToken": {
15614	//       "description": "The token returned by the previous request.",
15615	//       "location": "query",
15616	//       "type": "string"
15617	//     }
15618	//   },
15619	//   "path": "content/v2.1/{merchantId}/accounts/{accountId}/listlinks",
15620	//   "response": {
15621	//     "$ref": "AccountsListLinksResponse"
15622	//   },
15623	//   "scopes": [
15624	//     "https://www.googleapis.com/auth/content"
15625	//   ]
15626	// }
15627
15628}
15629
15630// Pages invokes f for each page of results.
15631// A non-nil error returned from f will halt the iteration.
15632// The provided context supersedes any context provided to the Context method.
15633func (c *AccountsListlinksCall) Pages(ctx context.Context, f func(*AccountsListLinksResponse) error) error {
15634	c.ctx_ = ctx
15635	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
15636	for {
15637		x, err := c.Do()
15638		if err != nil {
15639			return err
15640		}
15641		if err := f(x); err != nil {
15642			return err
15643		}
15644		if x.NextPageToken == "" {
15645			return nil
15646		}
15647		c.PageToken(x.NextPageToken)
15648	}
15649}
15650
15651// method id "content.accounts.update":
15652
15653type AccountsUpdateCall struct {
15654	s          *APIService
15655	merchantId uint64
15656	accountId  uint64
15657	account    *Account
15658	urlParams_ gensupport.URLParams
15659	ctx_       context.Context
15660	header_    http.Header
15661}
15662
15663// Update: Updates a Merchant Center account. Any fields that are not
15664// provided are deleted from the resource.
15665func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
15666	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15667	c.merchantId = merchantId
15668	c.accountId = accountId
15669	c.account = account
15670	return c
15671}
15672
15673// Fields allows partial responses to be retrieved. See
15674// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15675// for more information.
15676func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
15677	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15678	return c
15679}
15680
15681// Context sets the context to be used in this call's Do method. Any
15682// pending HTTP request will be aborted if the provided context is
15683// canceled.
15684func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
15685	c.ctx_ = ctx
15686	return c
15687}
15688
15689// Header returns an http.Header that can be modified by the caller to
15690// add HTTP headers to the request.
15691func (c *AccountsUpdateCall) Header() http.Header {
15692	if c.header_ == nil {
15693		c.header_ = make(http.Header)
15694	}
15695	return c.header_
15696}
15697
15698func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
15699	reqHeaders := make(http.Header)
15700	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
15701	for k, v := range c.header_ {
15702		reqHeaders[k] = v
15703	}
15704	reqHeaders.Set("User-Agent", c.s.userAgent())
15705	var body io.Reader = nil
15706	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
15707	if err != nil {
15708		return nil, err
15709	}
15710	reqHeaders.Set("Content-Type", "application/json")
15711	c.urlParams_.Set("alt", alt)
15712	c.urlParams_.Set("prettyPrint", "false")
15713	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts/{accountId}")
15714	urls += "?" + c.urlParams_.Encode()
15715	req, err := http.NewRequest("PUT", urls, body)
15716	if err != nil {
15717		return nil, err
15718	}
15719	req.Header = reqHeaders
15720	googleapi.Expand(req.URL, map[string]string{
15721		"merchantId": strconv.FormatUint(c.merchantId, 10),
15722		"accountId":  strconv.FormatUint(c.accountId, 10),
15723	})
15724	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15725}
15726
15727// Do executes the "content.accounts.update" call.
15728// Exactly one of *Account or error will be non-nil. Any non-2xx status
15729// code is an error. Response headers are in either
15730// *Account.ServerResponse.Header or (if a response was returned at all)
15731// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
15732// check whether the returned error was because http.StatusNotModified
15733// was returned.
15734func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
15735	gensupport.SetOptions(c.urlParams_, opts...)
15736	res, err := c.doRequest("json")
15737	if res != nil && res.StatusCode == http.StatusNotModified {
15738		if res.Body != nil {
15739			res.Body.Close()
15740		}
15741		return nil, &googleapi.Error{
15742			Code:   res.StatusCode,
15743			Header: res.Header,
15744		}
15745	}
15746	if err != nil {
15747		return nil, err
15748	}
15749	defer googleapi.CloseBody(res)
15750	if err := googleapi.CheckResponse(res); err != nil {
15751		return nil, err
15752	}
15753	ret := &Account{
15754		ServerResponse: googleapi.ServerResponse{
15755			Header:         res.Header,
15756			HTTPStatusCode: res.StatusCode,
15757		},
15758	}
15759	target := &ret
15760	if err := gensupport.DecodeResponse(target, res); err != nil {
15761		return nil, err
15762	}
15763	return ret, nil
15764	// {
15765	//   "description": "Updates a Merchant Center account. Any fields that are not provided are deleted from the resource.",
15766	//   "flatPath": "content/v2.1/{merchantId}/accounts/{accountId}",
15767	//   "httpMethod": "PUT",
15768	//   "id": "content.accounts.update",
15769	//   "parameterOrder": [
15770	//     "merchantId",
15771	//     "accountId"
15772	//   ],
15773	//   "parameters": {
15774	//     "accountId": {
15775	//       "description": "The ID of the account.",
15776	//       "format": "uint64",
15777	//       "location": "path",
15778	//       "required": true,
15779	//       "type": "string"
15780	//     },
15781	//     "merchantId": {
15782	//       "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.",
15783	//       "format": "uint64",
15784	//       "location": "path",
15785	//       "required": true,
15786	//       "type": "string"
15787	//     }
15788	//   },
15789	//   "path": "content/v2.1/{merchantId}/accounts/{accountId}",
15790	//   "request": {
15791	//     "$ref": "Account"
15792	//   },
15793	//   "response": {
15794	//     "$ref": "Account"
15795	//   },
15796	//   "scopes": [
15797	//     "https://www.googleapis.com/auth/content"
15798	//   ]
15799	// }
15800
15801}
15802
15803// method id "content.accounts.updatelabels":
15804
15805type AccountsUpdatelabelsCall struct {
15806	s                           *APIService
15807	merchantId                  uint64
15808	accountId                   uint64
15809	accountsupdatelabelsrequest *AccountsUpdateLabelsRequest
15810	urlParams_                  gensupport.URLParams
15811	ctx_                        context.Context
15812	header_                     http.Header
15813}
15814
15815// Updatelabels: Updates labels that are assigned to the Merchant Center
15816// account by CSS user.
15817func (r *AccountsService) Updatelabels(merchantId uint64, accountId uint64, accountsupdatelabelsrequest *AccountsUpdateLabelsRequest) *AccountsUpdatelabelsCall {
15818	c := &AccountsUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15819	c.merchantId = merchantId
15820	c.accountId = accountId
15821	c.accountsupdatelabelsrequest = accountsupdatelabelsrequest
15822	return c
15823}
15824
15825// Fields allows partial responses to be retrieved. See
15826// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15827// for more information.
15828func (c *AccountsUpdatelabelsCall) Fields(s ...googleapi.Field) *AccountsUpdatelabelsCall {
15829	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15830	return c
15831}
15832
15833// Context sets the context to be used in this call's Do method. Any
15834// pending HTTP request will be aborted if the provided context is
15835// canceled.
15836func (c *AccountsUpdatelabelsCall) Context(ctx context.Context) *AccountsUpdatelabelsCall {
15837	c.ctx_ = ctx
15838	return c
15839}
15840
15841// Header returns an http.Header that can be modified by the caller to
15842// add HTTP headers to the request.
15843func (c *AccountsUpdatelabelsCall) Header() http.Header {
15844	if c.header_ == nil {
15845		c.header_ = make(http.Header)
15846	}
15847	return c.header_
15848}
15849
15850func (c *AccountsUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
15851	reqHeaders := make(http.Header)
15852	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
15853	for k, v := range c.header_ {
15854		reqHeaders[k] = v
15855	}
15856	reqHeaders.Set("User-Agent", c.s.userAgent())
15857	var body io.Reader = nil
15858	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountsupdatelabelsrequest)
15859	if err != nil {
15860		return nil, err
15861	}
15862	reqHeaders.Set("Content-Type", "application/json")
15863	c.urlParams_.Set("alt", alt)
15864	c.urlParams_.Set("prettyPrint", "false")
15865	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounts/{accountId}/updatelabels")
15866	urls += "?" + c.urlParams_.Encode()
15867	req, err := http.NewRequest("POST", urls, body)
15868	if err != nil {
15869		return nil, err
15870	}
15871	req.Header = reqHeaders
15872	googleapi.Expand(req.URL, map[string]string{
15873		"merchantId": strconv.FormatUint(c.merchantId, 10),
15874		"accountId":  strconv.FormatUint(c.accountId, 10),
15875	})
15876	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15877}
15878
15879// Do executes the "content.accounts.updatelabels" call.
15880// Exactly one of *AccountsUpdateLabelsResponse or error will be
15881// non-nil. Any non-2xx status code is an error. Response headers are in
15882// either *AccountsUpdateLabelsResponse.ServerResponse.Header or (if a
15883// response was returned at all) in error.(*googleapi.Error).Header. Use
15884// googleapi.IsNotModified to check whether the returned error was
15885// because http.StatusNotModified was returned.
15886func (c *AccountsUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*AccountsUpdateLabelsResponse, error) {
15887	gensupport.SetOptions(c.urlParams_, opts...)
15888	res, err := c.doRequest("json")
15889	if res != nil && res.StatusCode == http.StatusNotModified {
15890		if res.Body != nil {
15891			res.Body.Close()
15892		}
15893		return nil, &googleapi.Error{
15894			Code:   res.StatusCode,
15895			Header: res.Header,
15896		}
15897	}
15898	if err != nil {
15899		return nil, err
15900	}
15901	defer googleapi.CloseBody(res)
15902	if err := googleapi.CheckResponse(res); err != nil {
15903		return nil, err
15904	}
15905	ret := &AccountsUpdateLabelsResponse{
15906		ServerResponse: googleapi.ServerResponse{
15907			Header:         res.Header,
15908			HTTPStatusCode: res.StatusCode,
15909		},
15910	}
15911	target := &ret
15912	if err := gensupport.DecodeResponse(target, res); err != nil {
15913		return nil, err
15914	}
15915	return ret, nil
15916	// {
15917	//   "description": "Updates labels that are assigned to the Merchant Center account by CSS user.",
15918	//   "flatPath": "content/v2.1/{merchantId}/accounts/{accountId}/updatelabels",
15919	//   "httpMethod": "POST",
15920	//   "id": "content.accounts.updatelabels",
15921	//   "parameterOrder": [
15922	//     "merchantId",
15923	//     "accountId"
15924	//   ],
15925	//   "parameters": {
15926	//     "accountId": {
15927	//       "description": "The ID of the account whose labels are updated.",
15928	//       "format": "uint64",
15929	//       "location": "path",
15930	//       "required": true,
15931	//       "type": "string"
15932	//     },
15933	//     "merchantId": {
15934	//       "description": "The ID of the managing account.",
15935	//       "format": "uint64",
15936	//       "location": "path",
15937	//       "required": true,
15938	//       "type": "string"
15939	//     }
15940	//   },
15941	//   "path": "content/v2.1/{merchantId}/accounts/{accountId}/updatelabels",
15942	//   "request": {
15943	//     "$ref": "AccountsUpdateLabelsRequest"
15944	//   },
15945	//   "response": {
15946	//     "$ref": "AccountsUpdateLabelsResponse"
15947	//   },
15948	//   "scopes": [
15949	//     "https://www.googleapis.com/auth/content"
15950	//   ]
15951	// }
15952
15953}
15954
15955// method id "content.accounts.labels.create":
15956
15957type AccountsLabelsCreateCall struct {
15958	s            *APIService
15959	accountId    int64
15960	accountlabel *AccountLabel
15961	urlParams_   gensupport.URLParams
15962	ctx_         context.Context
15963	header_      http.Header
15964}
15965
15966// Create: Creates a new label, not assigned to any account.
15967func (r *AccountsLabelsService) Create(accountId int64, accountlabel *AccountLabel) *AccountsLabelsCreateCall {
15968	c := &AccountsLabelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15969	c.accountId = accountId
15970	c.accountlabel = accountlabel
15971	return c
15972}
15973
15974// Fields allows partial responses to be retrieved. See
15975// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15976// for more information.
15977func (c *AccountsLabelsCreateCall) Fields(s ...googleapi.Field) *AccountsLabelsCreateCall {
15978	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15979	return c
15980}
15981
15982// Context sets the context to be used in this call's Do method. Any
15983// pending HTTP request will be aborted if the provided context is
15984// canceled.
15985func (c *AccountsLabelsCreateCall) Context(ctx context.Context) *AccountsLabelsCreateCall {
15986	c.ctx_ = ctx
15987	return c
15988}
15989
15990// Header returns an http.Header that can be modified by the caller to
15991// add HTTP headers to the request.
15992func (c *AccountsLabelsCreateCall) Header() http.Header {
15993	if c.header_ == nil {
15994		c.header_ = make(http.Header)
15995	}
15996	return c.header_
15997}
15998
15999func (c *AccountsLabelsCreateCall) doRequest(alt string) (*http.Response, error) {
16000	reqHeaders := make(http.Header)
16001	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
16002	for k, v := range c.header_ {
16003		reqHeaders[k] = v
16004	}
16005	reqHeaders.Set("User-Agent", c.s.userAgent())
16006	var body io.Reader = nil
16007	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
16008	if err != nil {
16009		return nil, err
16010	}
16011	reqHeaders.Set("Content-Type", "application/json")
16012	c.urlParams_.Set("alt", alt)
16013	c.urlParams_.Set("prettyPrint", "false")
16014	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/accounts/{accountId}/labels")
16015	urls += "?" + c.urlParams_.Encode()
16016	req, err := http.NewRequest("POST", urls, body)
16017	if err != nil {
16018		return nil, err
16019	}
16020	req.Header = reqHeaders
16021	googleapi.Expand(req.URL, map[string]string{
16022		"accountId": strconv.FormatInt(c.accountId, 10),
16023	})
16024	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16025}
16026
16027// Do executes the "content.accounts.labels.create" call.
16028// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
16029// status code is an error. Response headers are in either
16030// *AccountLabel.ServerResponse.Header or (if a response was returned at
16031// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
16032// to check whether the returned error was because
16033// http.StatusNotModified was returned.
16034func (c *AccountsLabelsCreateCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
16035	gensupport.SetOptions(c.urlParams_, opts...)
16036	res, err := c.doRequest("json")
16037	if res != nil && res.StatusCode == http.StatusNotModified {
16038		if res.Body != nil {
16039			res.Body.Close()
16040		}
16041		return nil, &googleapi.Error{
16042			Code:   res.StatusCode,
16043			Header: res.Header,
16044		}
16045	}
16046	if err != nil {
16047		return nil, err
16048	}
16049	defer googleapi.CloseBody(res)
16050	if err := googleapi.CheckResponse(res); err != nil {
16051		return nil, err
16052	}
16053	ret := &AccountLabel{
16054		ServerResponse: googleapi.ServerResponse{
16055			Header:         res.Header,
16056			HTTPStatusCode: res.StatusCode,
16057		},
16058	}
16059	target := &ret
16060	if err := gensupport.DecodeResponse(target, res); err != nil {
16061		return nil, err
16062	}
16063	return ret, nil
16064	// {
16065	//   "description": "Creates a new label, not assigned to any account.",
16066	//   "flatPath": "content/v2.1/accounts/{accountId}/labels",
16067	//   "httpMethod": "POST",
16068	//   "id": "content.accounts.labels.create",
16069	//   "parameterOrder": [
16070	//     "accountId"
16071	//   ],
16072	//   "parameters": {
16073	//     "accountId": {
16074	//       "description": "Required. The id of the account this label belongs to.",
16075	//       "format": "int64",
16076	//       "location": "path",
16077	//       "required": true,
16078	//       "type": "string"
16079	//     }
16080	//   },
16081	//   "path": "content/v2.1/accounts/{accountId}/labels",
16082	//   "request": {
16083	//     "$ref": "AccountLabel"
16084	//   },
16085	//   "response": {
16086	//     "$ref": "AccountLabel"
16087	//   },
16088	//   "scopes": [
16089	//     "https://www.googleapis.com/auth/content"
16090	//   ]
16091	// }
16092
16093}
16094
16095// method id "content.accounts.labels.delete":
16096
16097type AccountsLabelsDeleteCall struct {
16098	s          *APIService
16099	accountId  int64
16100	labelId    int64
16101	urlParams_ gensupport.URLParams
16102	ctx_       context.Context
16103	header_    http.Header
16104}
16105
16106// Delete: Deletes a label and removes it from all accounts to which it
16107// was assigned.
16108func (r *AccountsLabelsService) Delete(accountId int64, labelId int64) *AccountsLabelsDeleteCall {
16109	c := &AccountsLabelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16110	c.accountId = accountId
16111	c.labelId = labelId
16112	return c
16113}
16114
16115// Fields allows partial responses to be retrieved. See
16116// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16117// for more information.
16118func (c *AccountsLabelsDeleteCall) Fields(s ...googleapi.Field) *AccountsLabelsDeleteCall {
16119	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16120	return c
16121}
16122
16123// Context sets the context to be used in this call's Do method. Any
16124// pending HTTP request will be aborted if the provided context is
16125// canceled.
16126func (c *AccountsLabelsDeleteCall) Context(ctx context.Context) *AccountsLabelsDeleteCall {
16127	c.ctx_ = ctx
16128	return c
16129}
16130
16131// Header returns an http.Header that can be modified by the caller to
16132// add HTTP headers to the request.
16133func (c *AccountsLabelsDeleteCall) Header() http.Header {
16134	if c.header_ == nil {
16135		c.header_ = make(http.Header)
16136	}
16137	return c.header_
16138}
16139
16140func (c *AccountsLabelsDeleteCall) doRequest(alt string) (*http.Response, error) {
16141	reqHeaders := make(http.Header)
16142	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
16143	for k, v := range c.header_ {
16144		reqHeaders[k] = v
16145	}
16146	reqHeaders.Set("User-Agent", c.s.userAgent())
16147	var body io.Reader = nil
16148	c.urlParams_.Set("alt", alt)
16149	c.urlParams_.Set("prettyPrint", "false")
16150	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/accounts/{accountId}/labels/{labelId}")
16151	urls += "?" + c.urlParams_.Encode()
16152	req, err := http.NewRequest("DELETE", urls, body)
16153	if err != nil {
16154		return nil, err
16155	}
16156	req.Header = reqHeaders
16157	googleapi.Expand(req.URL, map[string]string{
16158		"accountId": strconv.FormatInt(c.accountId, 10),
16159		"labelId":   strconv.FormatInt(c.labelId, 10),
16160	})
16161	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16162}
16163
16164// Do executes the "content.accounts.labels.delete" call.
16165func (c *AccountsLabelsDeleteCall) Do(opts ...googleapi.CallOption) error {
16166	gensupport.SetOptions(c.urlParams_, opts...)
16167	res, err := c.doRequest("json")
16168	if err != nil {
16169		return err
16170	}
16171	defer googleapi.CloseBody(res)
16172	if err := googleapi.CheckResponse(res); err != nil {
16173		return err
16174	}
16175	return nil
16176	// {
16177	//   "description": "Deletes a label and removes it from all accounts to which it was assigned.",
16178	//   "flatPath": "content/v2.1/accounts/{accountId}/labels/{labelId}",
16179	//   "httpMethod": "DELETE",
16180	//   "id": "content.accounts.labels.delete",
16181	//   "parameterOrder": [
16182	//     "accountId",
16183	//     "labelId"
16184	//   ],
16185	//   "parameters": {
16186	//     "accountId": {
16187	//       "description": "Required. The id of the account that owns the label.",
16188	//       "format": "int64",
16189	//       "location": "path",
16190	//       "required": true,
16191	//       "type": "string"
16192	//     },
16193	//     "labelId": {
16194	//       "description": "Required. The id of the label to delete.",
16195	//       "format": "int64",
16196	//       "location": "path",
16197	//       "required": true,
16198	//       "type": "string"
16199	//     }
16200	//   },
16201	//   "path": "content/v2.1/accounts/{accountId}/labels/{labelId}",
16202	//   "scopes": [
16203	//     "https://www.googleapis.com/auth/content"
16204	//   ]
16205	// }
16206
16207}
16208
16209// method id "content.accounts.labels.list":
16210
16211type AccountsLabelsListCall struct {
16212	s            *APIService
16213	accountId    int64
16214	urlParams_   gensupport.URLParams
16215	ifNoneMatch_ string
16216	ctx_         context.Context
16217	header_      http.Header
16218}
16219
16220// List: Lists the labels assigned to an account.
16221func (r *AccountsLabelsService) List(accountId int64) *AccountsLabelsListCall {
16222	c := &AccountsLabelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16223	c.accountId = accountId
16224	return c
16225}
16226
16227// PageSize sets the optional parameter "pageSize": The maximum number
16228// of labels to return. The service may return fewer than this value. If
16229// unspecified, at most 50 labels will be returned. The maximum value is
16230// 1000; values above 1000 will be coerced to 1000.
16231func (c *AccountsLabelsListCall) PageSize(pageSize int64) *AccountsLabelsListCall {
16232	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
16233	return c
16234}
16235
16236// PageToken sets the optional parameter "pageToken": A page token,
16237// received from a previous `ListAccountLabels` call. Provide this to
16238// retrieve the subsequent page. When paginating, all other parameters
16239// provided to `ListAccountLabels` must match the call that provided the
16240// page token.
16241func (c *AccountsLabelsListCall) PageToken(pageToken string) *AccountsLabelsListCall {
16242	c.urlParams_.Set("pageToken", pageToken)
16243	return c
16244}
16245
16246// Fields allows partial responses to be retrieved. See
16247// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16248// for more information.
16249func (c *AccountsLabelsListCall) Fields(s ...googleapi.Field) *AccountsLabelsListCall {
16250	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16251	return c
16252}
16253
16254// IfNoneMatch sets the optional parameter which makes the operation
16255// fail if the object's ETag matches the given value. This is useful for
16256// getting updates only after the object has changed since the last
16257// request. Use googleapi.IsNotModified to check whether the response
16258// error from Do is the result of In-None-Match.
16259func (c *AccountsLabelsListCall) IfNoneMatch(entityTag string) *AccountsLabelsListCall {
16260	c.ifNoneMatch_ = entityTag
16261	return c
16262}
16263
16264// Context sets the context to be used in this call's Do method. Any
16265// pending HTTP request will be aborted if the provided context is
16266// canceled.
16267func (c *AccountsLabelsListCall) Context(ctx context.Context) *AccountsLabelsListCall {
16268	c.ctx_ = ctx
16269	return c
16270}
16271
16272// Header returns an http.Header that can be modified by the caller to
16273// add HTTP headers to the request.
16274func (c *AccountsLabelsListCall) Header() http.Header {
16275	if c.header_ == nil {
16276		c.header_ = make(http.Header)
16277	}
16278	return c.header_
16279}
16280
16281func (c *AccountsLabelsListCall) doRequest(alt string) (*http.Response, error) {
16282	reqHeaders := make(http.Header)
16283	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
16284	for k, v := range c.header_ {
16285		reqHeaders[k] = v
16286	}
16287	reqHeaders.Set("User-Agent", c.s.userAgent())
16288	if c.ifNoneMatch_ != "" {
16289		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16290	}
16291	var body io.Reader = nil
16292	c.urlParams_.Set("alt", alt)
16293	c.urlParams_.Set("prettyPrint", "false")
16294	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/accounts/{accountId}/labels")
16295	urls += "?" + c.urlParams_.Encode()
16296	req, err := http.NewRequest("GET", urls, body)
16297	if err != nil {
16298		return nil, err
16299	}
16300	req.Header = reqHeaders
16301	googleapi.Expand(req.URL, map[string]string{
16302		"accountId": strconv.FormatInt(c.accountId, 10),
16303	})
16304	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16305}
16306
16307// Do executes the "content.accounts.labels.list" call.
16308// Exactly one of *ListAccountLabelsResponse or error will be non-nil.
16309// Any non-2xx status code is an error. Response headers are in either
16310// *ListAccountLabelsResponse.ServerResponse.Header or (if a response
16311// was returned at all) in error.(*googleapi.Error).Header. Use
16312// googleapi.IsNotModified to check whether the returned error was
16313// because http.StatusNotModified was returned.
16314func (c *AccountsLabelsListCall) Do(opts ...googleapi.CallOption) (*ListAccountLabelsResponse, error) {
16315	gensupport.SetOptions(c.urlParams_, opts...)
16316	res, err := c.doRequest("json")
16317	if res != nil && res.StatusCode == http.StatusNotModified {
16318		if res.Body != nil {
16319			res.Body.Close()
16320		}
16321		return nil, &googleapi.Error{
16322			Code:   res.StatusCode,
16323			Header: res.Header,
16324		}
16325	}
16326	if err != nil {
16327		return nil, err
16328	}
16329	defer googleapi.CloseBody(res)
16330	if err := googleapi.CheckResponse(res); err != nil {
16331		return nil, err
16332	}
16333	ret := &ListAccountLabelsResponse{
16334		ServerResponse: googleapi.ServerResponse{
16335			Header:         res.Header,
16336			HTTPStatusCode: res.StatusCode,
16337		},
16338	}
16339	target := &ret
16340	if err := gensupport.DecodeResponse(target, res); err != nil {
16341		return nil, err
16342	}
16343	return ret, nil
16344	// {
16345	//   "description": "Lists the labels assigned to an account.",
16346	//   "flatPath": "content/v2.1/accounts/{accountId}/labels",
16347	//   "httpMethod": "GET",
16348	//   "id": "content.accounts.labels.list",
16349	//   "parameterOrder": [
16350	//     "accountId"
16351	//   ],
16352	//   "parameters": {
16353	//     "accountId": {
16354	//       "description": "Required. The account id for whose labels are to be listed.",
16355	//       "format": "int64",
16356	//       "location": "path",
16357	//       "required": true,
16358	//       "type": "string"
16359	//     },
16360	//     "pageSize": {
16361	//       "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.",
16362	//       "format": "int32",
16363	//       "location": "query",
16364	//       "type": "integer"
16365	//     },
16366	//     "pageToken": {
16367	//       "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.",
16368	//       "location": "query",
16369	//       "type": "string"
16370	//     }
16371	//   },
16372	//   "path": "content/v2.1/accounts/{accountId}/labels",
16373	//   "response": {
16374	//     "$ref": "ListAccountLabelsResponse"
16375	//   },
16376	//   "scopes": [
16377	//     "https://www.googleapis.com/auth/content"
16378	//   ]
16379	// }
16380
16381}
16382
16383// Pages invokes f for each page of results.
16384// A non-nil error returned from f will halt the iteration.
16385// The provided context supersedes any context provided to the Context method.
16386func (c *AccountsLabelsListCall) Pages(ctx context.Context, f func(*ListAccountLabelsResponse) error) error {
16387	c.ctx_ = ctx
16388	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
16389	for {
16390		x, err := c.Do()
16391		if err != nil {
16392			return err
16393		}
16394		if err := f(x); err != nil {
16395			return err
16396		}
16397		if x.NextPageToken == "" {
16398			return nil
16399		}
16400		c.PageToken(x.NextPageToken)
16401	}
16402}
16403
16404// method id "content.accounts.labels.patch":
16405
16406type AccountsLabelsPatchCall struct {
16407	s            *APIService
16408	accountId    int64
16409	labelId      int64
16410	accountlabel *AccountLabel
16411	urlParams_   gensupport.URLParams
16412	ctx_         context.Context
16413	header_      http.Header
16414}
16415
16416// Patch: Updates a label.
16417func (r *AccountsLabelsService) Patch(accountId int64, labelId int64, accountlabel *AccountLabel) *AccountsLabelsPatchCall {
16418	c := &AccountsLabelsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16419	c.accountId = accountId
16420	c.labelId = labelId
16421	c.accountlabel = accountlabel
16422	return c
16423}
16424
16425// Fields allows partial responses to be retrieved. See
16426// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16427// for more information.
16428func (c *AccountsLabelsPatchCall) Fields(s ...googleapi.Field) *AccountsLabelsPatchCall {
16429	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16430	return c
16431}
16432
16433// Context sets the context to be used in this call's Do method. Any
16434// pending HTTP request will be aborted if the provided context is
16435// canceled.
16436func (c *AccountsLabelsPatchCall) Context(ctx context.Context) *AccountsLabelsPatchCall {
16437	c.ctx_ = ctx
16438	return c
16439}
16440
16441// Header returns an http.Header that can be modified by the caller to
16442// add HTTP headers to the request.
16443func (c *AccountsLabelsPatchCall) Header() http.Header {
16444	if c.header_ == nil {
16445		c.header_ = make(http.Header)
16446	}
16447	return c.header_
16448}
16449
16450func (c *AccountsLabelsPatchCall) doRequest(alt string) (*http.Response, error) {
16451	reqHeaders := make(http.Header)
16452	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
16453	for k, v := range c.header_ {
16454		reqHeaders[k] = v
16455	}
16456	reqHeaders.Set("User-Agent", c.s.userAgent())
16457	var body io.Reader = nil
16458	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
16459	if err != nil {
16460		return nil, err
16461	}
16462	reqHeaders.Set("Content-Type", "application/json")
16463	c.urlParams_.Set("alt", alt)
16464	c.urlParams_.Set("prettyPrint", "false")
16465	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/accounts/{accountId}/labels/{labelId}")
16466	urls += "?" + c.urlParams_.Encode()
16467	req, err := http.NewRequest("PATCH", urls, body)
16468	if err != nil {
16469		return nil, err
16470	}
16471	req.Header = reqHeaders
16472	googleapi.Expand(req.URL, map[string]string{
16473		"accountId": strconv.FormatInt(c.accountId, 10),
16474		"labelId":   strconv.FormatInt(c.labelId, 10),
16475	})
16476	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16477}
16478
16479// Do executes the "content.accounts.labels.patch" call.
16480// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
16481// status code is an error. Response headers are in either
16482// *AccountLabel.ServerResponse.Header or (if a response was returned at
16483// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
16484// to check whether the returned error was because
16485// http.StatusNotModified was returned.
16486func (c *AccountsLabelsPatchCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
16487	gensupport.SetOptions(c.urlParams_, opts...)
16488	res, err := c.doRequest("json")
16489	if res != nil && res.StatusCode == http.StatusNotModified {
16490		if res.Body != nil {
16491			res.Body.Close()
16492		}
16493		return nil, &googleapi.Error{
16494			Code:   res.StatusCode,
16495			Header: res.Header,
16496		}
16497	}
16498	if err != nil {
16499		return nil, err
16500	}
16501	defer googleapi.CloseBody(res)
16502	if err := googleapi.CheckResponse(res); err != nil {
16503		return nil, err
16504	}
16505	ret := &AccountLabel{
16506		ServerResponse: googleapi.ServerResponse{
16507			Header:         res.Header,
16508			HTTPStatusCode: res.StatusCode,
16509		},
16510	}
16511	target := &ret
16512	if err := gensupport.DecodeResponse(target, res); err != nil {
16513		return nil, err
16514	}
16515	return ret, nil
16516	// {
16517	//   "description": "Updates a label.",
16518	//   "flatPath": "content/v2.1/accounts/{accountId}/labels/{labelId}",
16519	//   "httpMethod": "PATCH",
16520	//   "id": "content.accounts.labels.patch",
16521	//   "parameterOrder": [
16522	//     "accountId",
16523	//     "labelId"
16524	//   ],
16525	//   "parameters": {
16526	//     "accountId": {
16527	//       "description": "Required. The id of the account this label belongs to.",
16528	//       "format": "int64",
16529	//       "location": "path",
16530	//       "required": true,
16531	//       "type": "string"
16532	//     },
16533	//     "labelId": {
16534	//       "description": "Required. The id of the label to update.",
16535	//       "format": "int64",
16536	//       "location": "path",
16537	//       "required": true,
16538	//       "type": "string"
16539	//     }
16540	//   },
16541	//   "path": "content/v2.1/accounts/{accountId}/labels/{labelId}",
16542	//   "request": {
16543	//     "$ref": "AccountLabel"
16544	//   },
16545	//   "response": {
16546	//     "$ref": "AccountLabel"
16547	//   },
16548	//   "scopes": [
16549	//     "https://www.googleapis.com/auth/content"
16550	//   ]
16551	// }
16552
16553}
16554
16555// method id "content.accountstatuses.custombatch":
16556
16557type AccountstatusesCustombatchCall struct {
16558	s                                 *APIService
16559	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
16560	urlParams_                        gensupport.URLParams
16561	ctx_                              context.Context
16562	header_                           http.Header
16563}
16564
16565// Custombatch: Retrieves multiple Merchant Center account statuses in a
16566// single request.
16567func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
16568	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16569	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
16570	return c
16571}
16572
16573// Fields allows partial responses to be retrieved. See
16574// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16575// for more information.
16576func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
16577	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16578	return c
16579}
16580
16581// Context sets the context to be used in this call's Do method. Any
16582// pending HTTP request will be aborted if the provided context is
16583// canceled.
16584func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
16585	c.ctx_ = ctx
16586	return c
16587}
16588
16589// Header returns an http.Header that can be modified by the caller to
16590// add HTTP headers to the request.
16591func (c *AccountstatusesCustombatchCall) Header() http.Header {
16592	if c.header_ == nil {
16593		c.header_ = make(http.Header)
16594	}
16595	return c.header_
16596}
16597
16598func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
16599	reqHeaders := make(http.Header)
16600	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
16601	for k, v := range c.header_ {
16602		reqHeaders[k] = v
16603	}
16604	reqHeaders.Set("User-Agent", c.s.userAgent())
16605	var body io.Reader = nil
16606	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
16607	if err != nil {
16608		return nil, err
16609	}
16610	reqHeaders.Set("Content-Type", "application/json")
16611	c.urlParams_.Set("alt", alt)
16612	c.urlParams_.Set("prettyPrint", "false")
16613	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/accountstatuses/batch")
16614	urls += "?" + c.urlParams_.Encode()
16615	req, err := http.NewRequest("POST", urls, body)
16616	if err != nil {
16617		return nil, err
16618	}
16619	req.Header = reqHeaders
16620	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16621}
16622
16623// Do executes the "content.accountstatuses.custombatch" call.
16624// Exactly one of *AccountstatusesCustomBatchResponse or error will be
16625// non-nil. Any non-2xx status code is an error. Response headers are in
16626// either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
16627// (if a response was returned at all) in
16628// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
16629// whether the returned error was because http.StatusNotModified was
16630// returned.
16631func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
16632	gensupport.SetOptions(c.urlParams_, opts...)
16633	res, err := c.doRequest("json")
16634	if res != nil && res.StatusCode == http.StatusNotModified {
16635		if res.Body != nil {
16636			res.Body.Close()
16637		}
16638		return nil, &googleapi.Error{
16639			Code:   res.StatusCode,
16640			Header: res.Header,
16641		}
16642	}
16643	if err != nil {
16644		return nil, err
16645	}
16646	defer googleapi.CloseBody(res)
16647	if err := googleapi.CheckResponse(res); err != nil {
16648		return nil, err
16649	}
16650	ret := &AccountstatusesCustomBatchResponse{
16651		ServerResponse: googleapi.ServerResponse{
16652			Header:         res.Header,
16653			HTTPStatusCode: res.StatusCode,
16654		},
16655	}
16656	target := &ret
16657	if err := gensupport.DecodeResponse(target, res); err != nil {
16658		return nil, err
16659	}
16660	return ret, nil
16661	// {
16662	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
16663	//   "flatPath": "content/v2.1/accountstatuses/batch",
16664	//   "httpMethod": "POST",
16665	//   "id": "content.accountstatuses.custombatch",
16666	//   "parameterOrder": [],
16667	//   "parameters": {},
16668	//   "path": "content/v2.1/accountstatuses/batch",
16669	//   "request": {
16670	//     "$ref": "AccountstatusesCustomBatchRequest"
16671	//   },
16672	//   "response": {
16673	//     "$ref": "AccountstatusesCustomBatchResponse"
16674	//   },
16675	//   "scopes": [
16676	//     "https://www.googleapis.com/auth/content"
16677	//   ]
16678	// }
16679
16680}
16681
16682// method id "content.accountstatuses.get":
16683
16684type AccountstatusesGetCall struct {
16685	s            *APIService
16686	merchantId   uint64
16687	accountId    uint64
16688	urlParams_   gensupport.URLParams
16689	ifNoneMatch_ string
16690	ctx_         context.Context
16691	header_      http.Header
16692}
16693
16694// Get: Retrieves the status of a Merchant Center account. No
16695// itemLevelIssues are returned for multi-client accounts.
16696func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
16697	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16698	c.merchantId = merchantId
16699	c.accountId = accountId
16700	return c
16701}
16702
16703// Destinations sets the optional parameter "destinations": If set, only
16704// issues for the specified destinations are returned, otherwise only
16705// issues for the Shopping destination.
16706func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
16707	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
16708	return c
16709}
16710
16711// Fields allows partial responses to be retrieved. See
16712// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16713// for more information.
16714func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
16715	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16716	return c
16717}
16718
16719// IfNoneMatch sets the optional parameter which makes the operation
16720// fail if the object's ETag matches the given value. This is useful for
16721// getting updates only after the object has changed since the last
16722// request. Use googleapi.IsNotModified to check whether the response
16723// error from Do is the result of In-None-Match.
16724func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
16725	c.ifNoneMatch_ = entityTag
16726	return c
16727}
16728
16729// Context sets the context to be used in this call's Do method. Any
16730// pending HTTP request will be aborted if the provided context is
16731// canceled.
16732func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
16733	c.ctx_ = ctx
16734	return c
16735}
16736
16737// Header returns an http.Header that can be modified by the caller to
16738// add HTTP headers to the request.
16739func (c *AccountstatusesGetCall) Header() http.Header {
16740	if c.header_ == nil {
16741		c.header_ = make(http.Header)
16742	}
16743	return c.header_
16744}
16745
16746func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
16747	reqHeaders := make(http.Header)
16748	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
16749	for k, v := range c.header_ {
16750		reqHeaders[k] = v
16751	}
16752	reqHeaders.Set("User-Agent", c.s.userAgent())
16753	if c.ifNoneMatch_ != "" {
16754		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16755	}
16756	var body io.Reader = nil
16757	c.urlParams_.Set("alt", alt)
16758	c.urlParams_.Set("prettyPrint", "false")
16759	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accountstatuses/{accountId}")
16760	urls += "?" + c.urlParams_.Encode()
16761	req, err := http.NewRequest("GET", urls, body)
16762	if err != nil {
16763		return nil, err
16764	}
16765	req.Header = reqHeaders
16766	googleapi.Expand(req.URL, map[string]string{
16767		"merchantId": strconv.FormatUint(c.merchantId, 10),
16768		"accountId":  strconv.FormatUint(c.accountId, 10),
16769	})
16770	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16771}
16772
16773// Do executes the "content.accountstatuses.get" call.
16774// Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
16775// status code is an error. Response headers are in either
16776// *AccountStatus.ServerResponse.Header or (if a response was returned
16777// at all) in error.(*googleapi.Error).Header. Use
16778// googleapi.IsNotModified to check whether the returned error was
16779// because http.StatusNotModified was returned.
16780func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
16781	gensupport.SetOptions(c.urlParams_, opts...)
16782	res, err := c.doRequest("json")
16783	if res != nil && res.StatusCode == http.StatusNotModified {
16784		if res.Body != nil {
16785			res.Body.Close()
16786		}
16787		return nil, &googleapi.Error{
16788			Code:   res.StatusCode,
16789			Header: res.Header,
16790		}
16791	}
16792	if err != nil {
16793		return nil, err
16794	}
16795	defer googleapi.CloseBody(res)
16796	if err := googleapi.CheckResponse(res); err != nil {
16797		return nil, err
16798	}
16799	ret := &AccountStatus{
16800		ServerResponse: googleapi.ServerResponse{
16801			Header:         res.Header,
16802			HTTPStatusCode: res.StatusCode,
16803		},
16804	}
16805	target := &ret
16806	if err := gensupport.DecodeResponse(target, res); err != nil {
16807		return nil, err
16808	}
16809	return ret, nil
16810	// {
16811	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
16812	//   "flatPath": "content/v2.1/{merchantId}/accountstatuses/{accountId}",
16813	//   "httpMethod": "GET",
16814	//   "id": "content.accountstatuses.get",
16815	//   "parameterOrder": [
16816	//     "merchantId",
16817	//     "accountId"
16818	//   ],
16819	//   "parameters": {
16820	//     "accountId": {
16821	//       "description": "The ID of the account.",
16822	//       "format": "uint64",
16823	//       "location": "path",
16824	//       "required": true,
16825	//       "type": "string"
16826	//     },
16827	//     "destinations": {
16828	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
16829	//       "location": "query",
16830	//       "repeated": true,
16831	//       "type": "string"
16832	//     },
16833	//     "merchantId": {
16834	//       "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.",
16835	//       "format": "uint64",
16836	//       "location": "path",
16837	//       "required": true,
16838	//       "type": "string"
16839	//     }
16840	//   },
16841	//   "path": "content/v2.1/{merchantId}/accountstatuses/{accountId}",
16842	//   "response": {
16843	//     "$ref": "AccountStatus"
16844	//   },
16845	//   "scopes": [
16846	//     "https://www.googleapis.com/auth/content"
16847	//   ]
16848	// }
16849
16850}
16851
16852// method id "content.accountstatuses.list":
16853
16854type AccountstatusesListCall struct {
16855	s            *APIService
16856	merchantId   uint64
16857	urlParams_   gensupport.URLParams
16858	ifNoneMatch_ string
16859	ctx_         context.Context
16860	header_      http.Header
16861}
16862
16863// List: Lists the statuses of the sub-accounts in your Merchant Center
16864// account.
16865func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
16866	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16867	c.merchantId = merchantId
16868	return c
16869}
16870
16871// Destinations sets the optional parameter "destinations": If set, only
16872// issues for the specified destinations are returned, otherwise only
16873// issues for the Shopping destination.
16874func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
16875	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
16876	return c
16877}
16878
16879// MaxResults sets the optional parameter "maxResults": The maximum
16880// number of account statuses to return in the response, used for
16881// paging.
16882func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
16883	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
16884	return c
16885}
16886
16887// PageToken sets the optional parameter "pageToken": The token returned
16888// by the previous request.
16889func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
16890	c.urlParams_.Set("pageToken", pageToken)
16891	return c
16892}
16893
16894// Fields allows partial responses to be retrieved. See
16895// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16896// for more information.
16897func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
16898	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16899	return c
16900}
16901
16902// IfNoneMatch sets the optional parameter which makes the operation
16903// fail if the object's ETag matches the given value. This is useful for
16904// getting updates only after the object has changed since the last
16905// request. Use googleapi.IsNotModified to check whether the response
16906// error from Do is the result of In-None-Match.
16907func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
16908	c.ifNoneMatch_ = entityTag
16909	return c
16910}
16911
16912// Context sets the context to be used in this call's Do method. Any
16913// pending HTTP request will be aborted if the provided context is
16914// canceled.
16915func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
16916	c.ctx_ = ctx
16917	return c
16918}
16919
16920// Header returns an http.Header that can be modified by the caller to
16921// add HTTP headers to the request.
16922func (c *AccountstatusesListCall) Header() http.Header {
16923	if c.header_ == nil {
16924		c.header_ = make(http.Header)
16925	}
16926	return c.header_
16927}
16928
16929func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
16930	reqHeaders := make(http.Header)
16931	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
16932	for k, v := range c.header_ {
16933		reqHeaders[k] = v
16934	}
16935	reqHeaders.Set("User-Agent", c.s.userAgent())
16936	if c.ifNoneMatch_ != "" {
16937		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16938	}
16939	var body io.Reader = nil
16940	c.urlParams_.Set("alt", alt)
16941	c.urlParams_.Set("prettyPrint", "false")
16942	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accountstatuses")
16943	urls += "?" + c.urlParams_.Encode()
16944	req, err := http.NewRequest("GET", urls, body)
16945	if err != nil {
16946		return nil, err
16947	}
16948	req.Header = reqHeaders
16949	googleapi.Expand(req.URL, map[string]string{
16950		"merchantId": strconv.FormatUint(c.merchantId, 10),
16951	})
16952	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16953}
16954
16955// Do executes the "content.accountstatuses.list" call.
16956// Exactly one of *AccountstatusesListResponse or error will be non-nil.
16957// Any non-2xx status code is an error. Response headers are in either
16958// *AccountstatusesListResponse.ServerResponse.Header or (if a response
16959// was returned at all) in error.(*googleapi.Error).Header. Use
16960// googleapi.IsNotModified to check whether the returned error was
16961// because http.StatusNotModified was returned.
16962func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
16963	gensupport.SetOptions(c.urlParams_, opts...)
16964	res, err := c.doRequest("json")
16965	if res != nil && res.StatusCode == http.StatusNotModified {
16966		if res.Body != nil {
16967			res.Body.Close()
16968		}
16969		return nil, &googleapi.Error{
16970			Code:   res.StatusCode,
16971			Header: res.Header,
16972		}
16973	}
16974	if err != nil {
16975		return nil, err
16976	}
16977	defer googleapi.CloseBody(res)
16978	if err := googleapi.CheckResponse(res); err != nil {
16979		return nil, err
16980	}
16981	ret := &AccountstatusesListResponse{
16982		ServerResponse: googleapi.ServerResponse{
16983			Header:         res.Header,
16984			HTTPStatusCode: res.StatusCode,
16985		},
16986	}
16987	target := &ret
16988	if err := gensupport.DecodeResponse(target, res); err != nil {
16989		return nil, err
16990	}
16991	return ret, nil
16992	// {
16993	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
16994	//   "flatPath": "content/v2.1/{merchantId}/accountstatuses",
16995	//   "httpMethod": "GET",
16996	//   "id": "content.accountstatuses.list",
16997	//   "parameterOrder": [
16998	//     "merchantId"
16999	//   ],
17000	//   "parameters": {
17001	//     "destinations": {
17002	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
17003	//       "location": "query",
17004	//       "repeated": true,
17005	//       "type": "string"
17006	//     },
17007	//     "maxResults": {
17008	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
17009	//       "format": "uint32",
17010	//       "location": "query",
17011	//       "type": "integer"
17012	//     },
17013	//     "merchantId": {
17014	//       "description": "The ID of the managing account. This must be a multi-client account.",
17015	//       "format": "uint64",
17016	//       "location": "path",
17017	//       "required": true,
17018	//       "type": "string"
17019	//     },
17020	//     "pageToken": {
17021	//       "description": "The token returned by the previous request.",
17022	//       "location": "query",
17023	//       "type": "string"
17024	//     }
17025	//   },
17026	//   "path": "content/v2.1/{merchantId}/accountstatuses",
17027	//   "response": {
17028	//     "$ref": "AccountstatusesListResponse"
17029	//   },
17030	//   "scopes": [
17031	//     "https://www.googleapis.com/auth/content"
17032	//   ]
17033	// }
17034
17035}
17036
17037// Pages invokes f for each page of results.
17038// A non-nil error returned from f will halt the iteration.
17039// The provided context supersedes any context provided to the Context method.
17040func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
17041	c.ctx_ = ctx
17042	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17043	for {
17044		x, err := c.Do()
17045		if err != nil {
17046			return err
17047		}
17048		if err := f(x); err != nil {
17049			return err
17050		}
17051		if x.NextPageToken == "" {
17052			return nil
17053		}
17054		c.PageToken(x.NextPageToken)
17055	}
17056}
17057
17058// method id "content.accounttax.custombatch":
17059
17060type AccounttaxCustombatchCall struct {
17061	s                            *APIService
17062	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
17063	urlParams_                   gensupport.URLParams
17064	ctx_                         context.Context
17065	header_                      http.Header
17066}
17067
17068// Custombatch: Retrieves and updates tax settings of multiple accounts
17069// in a single request.
17070func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
17071	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17072	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
17073	return c
17074}
17075
17076// Fields allows partial responses to be retrieved. See
17077// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17078// for more information.
17079func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
17080	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17081	return c
17082}
17083
17084// Context sets the context to be used in this call's Do method. Any
17085// pending HTTP request will be aborted if the provided context is
17086// canceled.
17087func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
17088	c.ctx_ = ctx
17089	return c
17090}
17091
17092// Header returns an http.Header that can be modified by the caller to
17093// add HTTP headers to the request.
17094func (c *AccounttaxCustombatchCall) Header() http.Header {
17095	if c.header_ == nil {
17096		c.header_ = make(http.Header)
17097	}
17098	return c.header_
17099}
17100
17101func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
17102	reqHeaders := make(http.Header)
17103	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
17104	for k, v := range c.header_ {
17105		reqHeaders[k] = v
17106	}
17107	reqHeaders.Set("User-Agent", c.s.userAgent())
17108	var body io.Reader = nil
17109	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
17110	if err != nil {
17111		return nil, err
17112	}
17113	reqHeaders.Set("Content-Type", "application/json")
17114	c.urlParams_.Set("alt", alt)
17115	c.urlParams_.Set("prettyPrint", "false")
17116	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/accounttax/batch")
17117	urls += "?" + c.urlParams_.Encode()
17118	req, err := http.NewRequest("POST", urls, body)
17119	if err != nil {
17120		return nil, err
17121	}
17122	req.Header = reqHeaders
17123	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17124}
17125
17126// Do executes the "content.accounttax.custombatch" call.
17127// Exactly one of *AccounttaxCustomBatchResponse or error will be
17128// non-nil. Any non-2xx status code is an error. Response headers are in
17129// either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
17130// response was returned at all) in error.(*googleapi.Error).Header. Use
17131// googleapi.IsNotModified to check whether the returned error was
17132// because http.StatusNotModified was returned.
17133func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
17134	gensupport.SetOptions(c.urlParams_, opts...)
17135	res, err := c.doRequest("json")
17136	if res != nil && res.StatusCode == http.StatusNotModified {
17137		if res.Body != nil {
17138			res.Body.Close()
17139		}
17140		return nil, &googleapi.Error{
17141			Code:   res.StatusCode,
17142			Header: res.Header,
17143		}
17144	}
17145	if err != nil {
17146		return nil, err
17147	}
17148	defer googleapi.CloseBody(res)
17149	if err := googleapi.CheckResponse(res); err != nil {
17150		return nil, err
17151	}
17152	ret := &AccounttaxCustomBatchResponse{
17153		ServerResponse: googleapi.ServerResponse{
17154			Header:         res.Header,
17155			HTTPStatusCode: res.StatusCode,
17156		},
17157	}
17158	target := &ret
17159	if err := gensupport.DecodeResponse(target, res); err != nil {
17160		return nil, err
17161	}
17162	return ret, nil
17163	// {
17164	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
17165	//   "flatPath": "content/v2.1/accounttax/batch",
17166	//   "httpMethod": "POST",
17167	//   "id": "content.accounttax.custombatch",
17168	//   "parameterOrder": [],
17169	//   "parameters": {},
17170	//   "path": "content/v2.1/accounttax/batch",
17171	//   "request": {
17172	//     "$ref": "AccounttaxCustomBatchRequest"
17173	//   },
17174	//   "response": {
17175	//     "$ref": "AccounttaxCustomBatchResponse"
17176	//   },
17177	//   "scopes": [
17178	//     "https://www.googleapis.com/auth/content"
17179	//   ]
17180	// }
17181
17182}
17183
17184// method id "content.accounttax.get":
17185
17186type AccounttaxGetCall struct {
17187	s            *APIService
17188	merchantId   uint64
17189	accountId    uint64
17190	urlParams_   gensupport.URLParams
17191	ifNoneMatch_ string
17192	ctx_         context.Context
17193	header_      http.Header
17194}
17195
17196// Get: Retrieves the tax settings of the account.
17197func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
17198	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17199	c.merchantId = merchantId
17200	c.accountId = accountId
17201	return c
17202}
17203
17204// Fields allows partial responses to be retrieved. See
17205// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17206// for more information.
17207func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
17208	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17209	return c
17210}
17211
17212// IfNoneMatch sets the optional parameter which makes the operation
17213// fail if the object's ETag matches the given value. This is useful for
17214// getting updates only after the object has changed since the last
17215// request. Use googleapi.IsNotModified to check whether the response
17216// error from Do is the result of In-None-Match.
17217func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
17218	c.ifNoneMatch_ = entityTag
17219	return c
17220}
17221
17222// Context sets the context to be used in this call's Do method. Any
17223// pending HTTP request will be aborted if the provided context is
17224// canceled.
17225func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
17226	c.ctx_ = ctx
17227	return c
17228}
17229
17230// Header returns an http.Header that can be modified by the caller to
17231// add HTTP headers to the request.
17232func (c *AccounttaxGetCall) Header() http.Header {
17233	if c.header_ == nil {
17234		c.header_ = make(http.Header)
17235	}
17236	return c.header_
17237}
17238
17239func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
17240	reqHeaders := make(http.Header)
17241	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
17242	for k, v := range c.header_ {
17243		reqHeaders[k] = v
17244	}
17245	reqHeaders.Set("User-Agent", c.s.userAgent())
17246	if c.ifNoneMatch_ != "" {
17247		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17248	}
17249	var body io.Reader = nil
17250	c.urlParams_.Set("alt", alt)
17251	c.urlParams_.Set("prettyPrint", "false")
17252	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounttax/{accountId}")
17253	urls += "?" + c.urlParams_.Encode()
17254	req, err := http.NewRequest("GET", urls, body)
17255	if err != nil {
17256		return nil, err
17257	}
17258	req.Header = reqHeaders
17259	googleapi.Expand(req.URL, map[string]string{
17260		"merchantId": strconv.FormatUint(c.merchantId, 10),
17261		"accountId":  strconv.FormatUint(c.accountId, 10),
17262	})
17263	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17264}
17265
17266// Do executes the "content.accounttax.get" call.
17267// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
17268// status code is an error. Response headers are in either
17269// *AccountTax.ServerResponse.Header or (if a response was returned at
17270// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
17271// to check whether the returned error was because
17272// http.StatusNotModified was returned.
17273func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
17274	gensupport.SetOptions(c.urlParams_, opts...)
17275	res, err := c.doRequest("json")
17276	if res != nil && res.StatusCode == http.StatusNotModified {
17277		if res.Body != nil {
17278			res.Body.Close()
17279		}
17280		return nil, &googleapi.Error{
17281			Code:   res.StatusCode,
17282			Header: res.Header,
17283		}
17284	}
17285	if err != nil {
17286		return nil, err
17287	}
17288	defer googleapi.CloseBody(res)
17289	if err := googleapi.CheckResponse(res); err != nil {
17290		return nil, err
17291	}
17292	ret := &AccountTax{
17293		ServerResponse: googleapi.ServerResponse{
17294			Header:         res.Header,
17295			HTTPStatusCode: res.StatusCode,
17296		},
17297	}
17298	target := &ret
17299	if err := gensupport.DecodeResponse(target, res); err != nil {
17300		return nil, err
17301	}
17302	return ret, nil
17303	// {
17304	//   "description": "Retrieves the tax settings of the account.",
17305	//   "flatPath": "content/v2.1/{merchantId}/accounttax/{accountId}",
17306	//   "httpMethod": "GET",
17307	//   "id": "content.accounttax.get",
17308	//   "parameterOrder": [
17309	//     "merchantId",
17310	//     "accountId"
17311	//   ],
17312	//   "parameters": {
17313	//     "accountId": {
17314	//       "description": "The ID of the account for which to get/update account tax settings.",
17315	//       "format": "uint64",
17316	//       "location": "path",
17317	//       "required": true,
17318	//       "type": "string"
17319	//     },
17320	//     "merchantId": {
17321	//       "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.",
17322	//       "format": "uint64",
17323	//       "location": "path",
17324	//       "required": true,
17325	//       "type": "string"
17326	//     }
17327	//   },
17328	//   "path": "content/v2.1/{merchantId}/accounttax/{accountId}",
17329	//   "response": {
17330	//     "$ref": "AccountTax"
17331	//   },
17332	//   "scopes": [
17333	//     "https://www.googleapis.com/auth/content"
17334	//   ]
17335	// }
17336
17337}
17338
17339// method id "content.accounttax.list":
17340
17341type AccounttaxListCall struct {
17342	s            *APIService
17343	merchantId   uint64
17344	urlParams_   gensupport.URLParams
17345	ifNoneMatch_ string
17346	ctx_         context.Context
17347	header_      http.Header
17348}
17349
17350// List: Lists the tax settings of the sub-accounts in your Merchant
17351// Center account.
17352func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
17353	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17354	c.merchantId = merchantId
17355	return c
17356}
17357
17358// MaxResults sets the optional parameter "maxResults": The maximum
17359// number of tax settings to return in the response, used for paging.
17360func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
17361	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
17362	return c
17363}
17364
17365// PageToken sets the optional parameter "pageToken": The token returned
17366// by the previous request.
17367func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
17368	c.urlParams_.Set("pageToken", pageToken)
17369	return c
17370}
17371
17372// Fields allows partial responses to be retrieved. See
17373// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17374// for more information.
17375func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
17376	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17377	return c
17378}
17379
17380// IfNoneMatch sets the optional parameter which makes the operation
17381// fail if the object's ETag matches the given value. This is useful for
17382// getting updates only after the object has changed since the last
17383// request. Use googleapi.IsNotModified to check whether the response
17384// error from Do is the result of In-None-Match.
17385func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
17386	c.ifNoneMatch_ = entityTag
17387	return c
17388}
17389
17390// Context sets the context to be used in this call's Do method. Any
17391// pending HTTP request will be aborted if the provided context is
17392// canceled.
17393func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
17394	c.ctx_ = ctx
17395	return c
17396}
17397
17398// Header returns an http.Header that can be modified by the caller to
17399// add HTTP headers to the request.
17400func (c *AccounttaxListCall) Header() http.Header {
17401	if c.header_ == nil {
17402		c.header_ = make(http.Header)
17403	}
17404	return c.header_
17405}
17406
17407func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
17408	reqHeaders := make(http.Header)
17409	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
17410	for k, v := range c.header_ {
17411		reqHeaders[k] = v
17412	}
17413	reqHeaders.Set("User-Agent", c.s.userAgent())
17414	if c.ifNoneMatch_ != "" {
17415		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17416	}
17417	var body io.Reader = nil
17418	c.urlParams_.Set("alt", alt)
17419	c.urlParams_.Set("prettyPrint", "false")
17420	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounttax")
17421	urls += "?" + c.urlParams_.Encode()
17422	req, err := http.NewRequest("GET", urls, body)
17423	if err != nil {
17424		return nil, err
17425	}
17426	req.Header = reqHeaders
17427	googleapi.Expand(req.URL, map[string]string{
17428		"merchantId": strconv.FormatUint(c.merchantId, 10),
17429	})
17430	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17431}
17432
17433// Do executes the "content.accounttax.list" call.
17434// Exactly one of *AccounttaxListResponse or error will be non-nil. Any
17435// non-2xx status code is an error. Response headers are in either
17436// *AccounttaxListResponse.ServerResponse.Header or (if a response was
17437// returned at all) in error.(*googleapi.Error).Header. Use
17438// googleapi.IsNotModified to check whether the returned error was
17439// because http.StatusNotModified was returned.
17440func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
17441	gensupport.SetOptions(c.urlParams_, opts...)
17442	res, err := c.doRequest("json")
17443	if res != nil && res.StatusCode == http.StatusNotModified {
17444		if res.Body != nil {
17445			res.Body.Close()
17446		}
17447		return nil, &googleapi.Error{
17448			Code:   res.StatusCode,
17449			Header: res.Header,
17450		}
17451	}
17452	if err != nil {
17453		return nil, err
17454	}
17455	defer googleapi.CloseBody(res)
17456	if err := googleapi.CheckResponse(res); err != nil {
17457		return nil, err
17458	}
17459	ret := &AccounttaxListResponse{
17460		ServerResponse: googleapi.ServerResponse{
17461			Header:         res.Header,
17462			HTTPStatusCode: res.StatusCode,
17463		},
17464	}
17465	target := &ret
17466	if err := gensupport.DecodeResponse(target, res); err != nil {
17467		return nil, err
17468	}
17469	return ret, nil
17470	// {
17471	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
17472	//   "flatPath": "content/v2.1/{merchantId}/accounttax",
17473	//   "httpMethod": "GET",
17474	//   "id": "content.accounttax.list",
17475	//   "parameterOrder": [
17476	//     "merchantId"
17477	//   ],
17478	//   "parameters": {
17479	//     "maxResults": {
17480	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
17481	//       "format": "uint32",
17482	//       "location": "query",
17483	//       "type": "integer"
17484	//     },
17485	//     "merchantId": {
17486	//       "description": "The ID of the managing account. This must be a multi-client account.",
17487	//       "format": "uint64",
17488	//       "location": "path",
17489	//       "required": true,
17490	//       "type": "string"
17491	//     },
17492	//     "pageToken": {
17493	//       "description": "The token returned by the previous request.",
17494	//       "location": "query",
17495	//       "type": "string"
17496	//     }
17497	//   },
17498	//   "path": "content/v2.1/{merchantId}/accounttax",
17499	//   "response": {
17500	//     "$ref": "AccounttaxListResponse"
17501	//   },
17502	//   "scopes": [
17503	//     "https://www.googleapis.com/auth/content"
17504	//   ]
17505	// }
17506
17507}
17508
17509// Pages invokes f for each page of results.
17510// A non-nil error returned from f will halt the iteration.
17511// The provided context supersedes any context provided to the Context method.
17512func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
17513	c.ctx_ = ctx
17514	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17515	for {
17516		x, err := c.Do()
17517		if err != nil {
17518			return err
17519		}
17520		if err := f(x); err != nil {
17521			return err
17522		}
17523		if x.NextPageToken == "" {
17524			return nil
17525		}
17526		c.PageToken(x.NextPageToken)
17527	}
17528}
17529
17530// method id "content.accounttax.update":
17531
17532type AccounttaxUpdateCall struct {
17533	s          *APIService
17534	merchantId uint64
17535	accountId  uint64
17536	accounttax *AccountTax
17537	urlParams_ gensupport.URLParams
17538	ctx_       context.Context
17539	header_    http.Header
17540}
17541
17542// Update: Updates the tax settings of the account. Any fields that are
17543// not provided are deleted from the resource.
17544func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
17545	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17546	c.merchantId = merchantId
17547	c.accountId = accountId
17548	c.accounttax = accounttax
17549	return c
17550}
17551
17552// Fields allows partial responses to be retrieved. See
17553// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17554// for more information.
17555func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
17556	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17557	return c
17558}
17559
17560// Context sets the context to be used in this call's Do method. Any
17561// pending HTTP request will be aborted if the provided context is
17562// canceled.
17563func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
17564	c.ctx_ = ctx
17565	return c
17566}
17567
17568// Header returns an http.Header that can be modified by the caller to
17569// add HTTP headers to the request.
17570func (c *AccounttaxUpdateCall) Header() http.Header {
17571	if c.header_ == nil {
17572		c.header_ = make(http.Header)
17573	}
17574	return c.header_
17575}
17576
17577func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
17578	reqHeaders := make(http.Header)
17579	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
17580	for k, v := range c.header_ {
17581		reqHeaders[k] = v
17582	}
17583	reqHeaders.Set("User-Agent", c.s.userAgent())
17584	var body io.Reader = nil
17585	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
17586	if err != nil {
17587		return nil, err
17588	}
17589	reqHeaders.Set("Content-Type", "application/json")
17590	c.urlParams_.Set("alt", alt)
17591	c.urlParams_.Set("prettyPrint", "false")
17592	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/accounttax/{accountId}")
17593	urls += "?" + c.urlParams_.Encode()
17594	req, err := http.NewRequest("PUT", urls, body)
17595	if err != nil {
17596		return nil, err
17597	}
17598	req.Header = reqHeaders
17599	googleapi.Expand(req.URL, map[string]string{
17600		"merchantId": strconv.FormatUint(c.merchantId, 10),
17601		"accountId":  strconv.FormatUint(c.accountId, 10),
17602	})
17603	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17604}
17605
17606// Do executes the "content.accounttax.update" call.
17607// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
17608// status code is an error. Response headers are in either
17609// *AccountTax.ServerResponse.Header or (if a response was returned at
17610// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
17611// to check whether the returned error was because
17612// http.StatusNotModified was returned.
17613func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
17614	gensupport.SetOptions(c.urlParams_, opts...)
17615	res, err := c.doRequest("json")
17616	if res != nil && res.StatusCode == http.StatusNotModified {
17617		if res.Body != nil {
17618			res.Body.Close()
17619		}
17620		return nil, &googleapi.Error{
17621			Code:   res.StatusCode,
17622			Header: res.Header,
17623		}
17624	}
17625	if err != nil {
17626		return nil, err
17627	}
17628	defer googleapi.CloseBody(res)
17629	if err := googleapi.CheckResponse(res); err != nil {
17630		return nil, err
17631	}
17632	ret := &AccountTax{
17633		ServerResponse: googleapi.ServerResponse{
17634			Header:         res.Header,
17635			HTTPStatusCode: res.StatusCode,
17636		},
17637	}
17638	target := &ret
17639	if err := gensupport.DecodeResponse(target, res); err != nil {
17640		return nil, err
17641	}
17642	return ret, nil
17643	// {
17644	//   "description": "Updates the tax settings of the account. Any fields that are not provided are deleted from the resource.",
17645	//   "flatPath": "content/v2.1/{merchantId}/accounttax/{accountId}",
17646	//   "httpMethod": "PUT",
17647	//   "id": "content.accounttax.update",
17648	//   "parameterOrder": [
17649	//     "merchantId",
17650	//     "accountId"
17651	//   ],
17652	//   "parameters": {
17653	//     "accountId": {
17654	//       "description": "The ID of the account for which to get/update account tax settings.",
17655	//       "format": "uint64",
17656	//       "location": "path",
17657	//       "required": true,
17658	//       "type": "string"
17659	//     },
17660	//     "merchantId": {
17661	//       "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.",
17662	//       "format": "uint64",
17663	//       "location": "path",
17664	//       "required": true,
17665	//       "type": "string"
17666	//     }
17667	//   },
17668	//   "path": "content/v2.1/{merchantId}/accounttax/{accountId}",
17669	//   "request": {
17670	//     "$ref": "AccountTax"
17671	//   },
17672	//   "response": {
17673	//     "$ref": "AccountTax"
17674	//   },
17675	//   "scopes": [
17676	//     "https://www.googleapis.com/auth/content"
17677	//   ]
17678	// }
17679
17680}
17681
17682// method id "content.csses.get":
17683
17684type CssesGetCall struct {
17685	s            *APIService
17686	cssGroupId   int64
17687	cssDomainId  int64
17688	urlParams_   gensupport.URLParams
17689	ifNoneMatch_ string
17690	ctx_         context.Context
17691	header_      http.Header
17692}
17693
17694// Get: Retrieves a single CSS domain by ID.
17695func (r *CssesService) Get(cssGroupId int64, cssDomainId int64) *CssesGetCall {
17696	c := &CssesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17697	c.cssGroupId = cssGroupId
17698	c.cssDomainId = cssDomainId
17699	return c
17700}
17701
17702// Fields allows partial responses to be retrieved. See
17703// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17704// for more information.
17705func (c *CssesGetCall) Fields(s ...googleapi.Field) *CssesGetCall {
17706	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17707	return c
17708}
17709
17710// IfNoneMatch sets the optional parameter which makes the operation
17711// fail if the object's ETag matches the given value. This is useful for
17712// getting updates only after the object has changed since the last
17713// request. Use googleapi.IsNotModified to check whether the response
17714// error from Do is the result of In-None-Match.
17715func (c *CssesGetCall) IfNoneMatch(entityTag string) *CssesGetCall {
17716	c.ifNoneMatch_ = entityTag
17717	return c
17718}
17719
17720// Context sets the context to be used in this call's Do method. Any
17721// pending HTTP request will be aborted if the provided context is
17722// canceled.
17723func (c *CssesGetCall) Context(ctx context.Context) *CssesGetCall {
17724	c.ctx_ = ctx
17725	return c
17726}
17727
17728// Header returns an http.Header that can be modified by the caller to
17729// add HTTP headers to the request.
17730func (c *CssesGetCall) Header() http.Header {
17731	if c.header_ == nil {
17732		c.header_ = make(http.Header)
17733	}
17734	return c.header_
17735}
17736
17737func (c *CssesGetCall) doRequest(alt string) (*http.Response, error) {
17738	reqHeaders := make(http.Header)
17739	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
17740	for k, v := range c.header_ {
17741		reqHeaders[k] = v
17742	}
17743	reqHeaders.Set("User-Agent", c.s.userAgent())
17744	if c.ifNoneMatch_ != "" {
17745		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17746	}
17747	var body io.Reader = nil
17748	c.urlParams_.Set("alt", alt)
17749	c.urlParams_.Set("prettyPrint", "false")
17750	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{cssGroupId}/csses/{cssDomainId}")
17751	urls += "?" + c.urlParams_.Encode()
17752	req, err := http.NewRequest("GET", urls, body)
17753	if err != nil {
17754		return nil, err
17755	}
17756	req.Header = reqHeaders
17757	googleapi.Expand(req.URL, map[string]string{
17758		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
17759		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
17760	})
17761	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17762}
17763
17764// Do executes the "content.csses.get" call.
17765// Exactly one of *Css or error will be non-nil. Any non-2xx status code
17766// is an error. Response headers are in either
17767// *Css.ServerResponse.Header or (if a response was returned at all) in
17768// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17769// whether the returned error was because http.StatusNotModified was
17770// returned.
17771func (c *CssesGetCall) Do(opts ...googleapi.CallOption) (*Css, error) {
17772	gensupport.SetOptions(c.urlParams_, opts...)
17773	res, err := c.doRequest("json")
17774	if res != nil && res.StatusCode == http.StatusNotModified {
17775		if res.Body != nil {
17776			res.Body.Close()
17777		}
17778		return nil, &googleapi.Error{
17779			Code:   res.StatusCode,
17780			Header: res.Header,
17781		}
17782	}
17783	if err != nil {
17784		return nil, err
17785	}
17786	defer googleapi.CloseBody(res)
17787	if err := googleapi.CheckResponse(res); err != nil {
17788		return nil, err
17789	}
17790	ret := &Css{
17791		ServerResponse: googleapi.ServerResponse{
17792			Header:         res.Header,
17793			HTTPStatusCode: res.StatusCode,
17794		},
17795	}
17796	target := &ret
17797	if err := gensupport.DecodeResponse(target, res); err != nil {
17798		return nil, err
17799	}
17800	return ret, nil
17801	// {
17802	//   "description": "Retrieves a single CSS domain by ID.",
17803	//   "flatPath": "content/v2.1/{cssGroupId}/csses/{cssDomainId}",
17804	//   "httpMethod": "GET",
17805	//   "id": "content.csses.get",
17806	//   "parameterOrder": [
17807	//     "cssGroupId",
17808	//     "cssDomainId"
17809	//   ],
17810	//   "parameters": {
17811	//     "cssDomainId": {
17812	//       "description": "Required. The ID of the CSS domain to return.",
17813	//       "format": "int64",
17814	//       "location": "path",
17815	//       "required": true,
17816	//       "type": "string"
17817	//     },
17818	//     "cssGroupId": {
17819	//       "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.",
17820	//       "format": "int64",
17821	//       "location": "path",
17822	//       "required": true,
17823	//       "type": "string"
17824	//     }
17825	//   },
17826	//   "path": "content/v2.1/{cssGroupId}/csses/{cssDomainId}",
17827	//   "response": {
17828	//     "$ref": "Css"
17829	//   },
17830	//   "scopes": [
17831	//     "https://www.googleapis.com/auth/content"
17832	//   ]
17833	// }
17834
17835}
17836
17837// method id "content.csses.list":
17838
17839type CssesListCall struct {
17840	s            *APIService
17841	cssGroupId   int64
17842	urlParams_   gensupport.URLParams
17843	ifNoneMatch_ string
17844	ctx_         context.Context
17845	header_      http.Header
17846}
17847
17848// List: Lists CSS domains affiliated with a CSS group.
17849func (r *CssesService) List(cssGroupId int64) *CssesListCall {
17850	c := &CssesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17851	c.cssGroupId = cssGroupId
17852	return c
17853}
17854
17855// PageSize sets the optional parameter "pageSize": The maximum number
17856// of CSS domains to return. The service may return fewer than this
17857// value. If unspecified, at most 50 CSS domains will be returned. The
17858// maximum value is 1000; values above 1000 will be coerced to 1000.
17859func (c *CssesListCall) PageSize(pageSize int64) *CssesListCall {
17860	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
17861	return c
17862}
17863
17864// PageToken sets the optional parameter "pageToken": A page token,
17865// received from a previous `ListCsses` call. Provide this to retrieve
17866// the subsequent page. When paginating, all other parameters provided
17867// to `ListCsses` must match the call that provided the page token.
17868func (c *CssesListCall) PageToken(pageToken string) *CssesListCall {
17869	c.urlParams_.Set("pageToken", pageToken)
17870	return c
17871}
17872
17873// Fields allows partial responses to be retrieved. See
17874// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17875// for more information.
17876func (c *CssesListCall) Fields(s ...googleapi.Field) *CssesListCall {
17877	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17878	return c
17879}
17880
17881// IfNoneMatch sets the optional parameter which makes the operation
17882// fail if the object's ETag matches the given value. This is useful for
17883// getting updates only after the object has changed since the last
17884// request. Use googleapi.IsNotModified to check whether the response
17885// error from Do is the result of In-None-Match.
17886func (c *CssesListCall) IfNoneMatch(entityTag string) *CssesListCall {
17887	c.ifNoneMatch_ = entityTag
17888	return c
17889}
17890
17891// Context sets the context to be used in this call's Do method. Any
17892// pending HTTP request will be aborted if the provided context is
17893// canceled.
17894func (c *CssesListCall) Context(ctx context.Context) *CssesListCall {
17895	c.ctx_ = ctx
17896	return c
17897}
17898
17899// Header returns an http.Header that can be modified by the caller to
17900// add HTTP headers to the request.
17901func (c *CssesListCall) Header() http.Header {
17902	if c.header_ == nil {
17903		c.header_ = make(http.Header)
17904	}
17905	return c.header_
17906}
17907
17908func (c *CssesListCall) doRequest(alt string) (*http.Response, error) {
17909	reqHeaders := make(http.Header)
17910	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
17911	for k, v := range c.header_ {
17912		reqHeaders[k] = v
17913	}
17914	reqHeaders.Set("User-Agent", c.s.userAgent())
17915	if c.ifNoneMatch_ != "" {
17916		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17917	}
17918	var body io.Reader = nil
17919	c.urlParams_.Set("alt", alt)
17920	c.urlParams_.Set("prettyPrint", "false")
17921	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{cssGroupId}/csses")
17922	urls += "?" + c.urlParams_.Encode()
17923	req, err := http.NewRequest("GET", urls, body)
17924	if err != nil {
17925		return nil, err
17926	}
17927	req.Header = reqHeaders
17928	googleapi.Expand(req.URL, map[string]string{
17929		"cssGroupId": strconv.FormatInt(c.cssGroupId, 10),
17930	})
17931	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17932}
17933
17934// Do executes the "content.csses.list" call.
17935// Exactly one of *ListCssesResponse or error will be non-nil. Any
17936// non-2xx status code is an error. Response headers are in either
17937// *ListCssesResponse.ServerResponse.Header or (if a response was
17938// returned at all) in error.(*googleapi.Error).Header. Use
17939// googleapi.IsNotModified to check whether the returned error was
17940// because http.StatusNotModified was returned.
17941func (c *CssesListCall) Do(opts ...googleapi.CallOption) (*ListCssesResponse, error) {
17942	gensupport.SetOptions(c.urlParams_, opts...)
17943	res, err := c.doRequest("json")
17944	if res != nil && res.StatusCode == http.StatusNotModified {
17945		if res.Body != nil {
17946			res.Body.Close()
17947		}
17948		return nil, &googleapi.Error{
17949			Code:   res.StatusCode,
17950			Header: res.Header,
17951		}
17952	}
17953	if err != nil {
17954		return nil, err
17955	}
17956	defer googleapi.CloseBody(res)
17957	if err := googleapi.CheckResponse(res); err != nil {
17958		return nil, err
17959	}
17960	ret := &ListCssesResponse{
17961		ServerResponse: googleapi.ServerResponse{
17962			Header:         res.Header,
17963			HTTPStatusCode: res.StatusCode,
17964		},
17965	}
17966	target := &ret
17967	if err := gensupport.DecodeResponse(target, res); err != nil {
17968		return nil, err
17969	}
17970	return ret, nil
17971	// {
17972	//   "description": "Lists CSS domains affiliated with a CSS group.",
17973	//   "flatPath": "content/v2.1/{cssGroupId}/csses",
17974	//   "httpMethod": "GET",
17975	//   "id": "content.csses.list",
17976	//   "parameterOrder": [
17977	//     "cssGroupId"
17978	//   ],
17979	//   "parameters": {
17980	//     "cssGroupId": {
17981	//       "description": "Required. The CSS group ID of CSS domains to be listed.",
17982	//       "format": "int64",
17983	//       "location": "path",
17984	//       "required": true,
17985	//       "type": "string"
17986	//     },
17987	//     "pageSize": {
17988	//       "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.",
17989	//       "format": "int32",
17990	//       "location": "query",
17991	//       "type": "integer"
17992	//     },
17993	//     "pageToken": {
17994	//       "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.",
17995	//       "location": "query",
17996	//       "type": "string"
17997	//     }
17998	//   },
17999	//   "path": "content/v2.1/{cssGroupId}/csses",
18000	//   "response": {
18001	//     "$ref": "ListCssesResponse"
18002	//   },
18003	//   "scopes": [
18004	//     "https://www.googleapis.com/auth/content"
18005	//   ]
18006	// }
18007
18008}
18009
18010// Pages invokes f for each page of results.
18011// A non-nil error returned from f will halt the iteration.
18012// The provided context supersedes any context provided to the Context method.
18013func (c *CssesListCall) Pages(ctx context.Context, f func(*ListCssesResponse) error) error {
18014	c.ctx_ = ctx
18015	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18016	for {
18017		x, err := c.Do()
18018		if err != nil {
18019			return err
18020		}
18021		if err := f(x); err != nil {
18022			return err
18023		}
18024		if x.NextPageToken == "" {
18025			return nil
18026		}
18027		c.PageToken(x.NextPageToken)
18028	}
18029}
18030
18031// method id "content.csses.updatelabels":
18032
18033type CssesUpdatelabelsCall struct {
18034	s           *APIService
18035	cssGroupId  int64
18036	cssDomainId int64
18037	labelids    *LabelIds
18038	urlParams_  gensupport.URLParams
18039	ctx_        context.Context
18040	header_     http.Header
18041}
18042
18043// Updatelabels: Updates labels that are assigned to a CSS domain by its
18044// CSS group.
18045func (r *CssesService) Updatelabels(cssGroupId int64, cssDomainId int64, labelids *LabelIds) *CssesUpdatelabelsCall {
18046	c := &CssesUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18047	c.cssGroupId = cssGroupId
18048	c.cssDomainId = cssDomainId
18049	c.labelids = labelids
18050	return c
18051}
18052
18053// Fields allows partial responses to be retrieved. See
18054// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18055// for more information.
18056func (c *CssesUpdatelabelsCall) Fields(s ...googleapi.Field) *CssesUpdatelabelsCall {
18057	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18058	return c
18059}
18060
18061// Context sets the context to be used in this call's Do method. Any
18062// pending HTTP request will be aborted if the provided context is
18063// canceled.
18064func (c *CssesUpdatelabelsCall) Context(ctx context.Context) *CssesUpdatelabelsCall {
18065	c.ctx_ = ctx
18066	return c
18067}
18068
18069// Header returns an http.Header that can be modified by the caller to
18070// add HTTP headers to the request.
18071func (c *CssesUpdatelabelsCall) Header() http.Header {
18072	if c.header_ == nil {
18073		c.header_ = make(http.Header)
18074	}
18075	return c.header_
18076}
18077
18078func (c *CssesUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
18079	reqHeaders := make(http.Header)
18080	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
18081	for k, v := range c.header_ {
18082		reqHeaders[k] = v
18083	}
18084	reqHeaders.Set("User-Agent", c.s.userAgent())
18085	var body io.Reader = nil
18086	body, err := googleapi.WithoutDataWrapper.JSONReader(c.labelids)
18087	if err != nil {
18088		return nil, err
18089	}
18090	reqHeaders.Set("Content-Type", "application/json")
18091	c.urlParams_.Set("alt", alt)
18092	c.urlParams_.Set("prettyPrint", "false")
18093	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{cssGroupId}/csses/{cssDomainId}/updatelabels")
18094	urls += "?" + c.urlParams_.Encode()
18095	req, err := http.NewRequest("POST", urls, body)
18096	if err != nil {
18097		return nil, err
18098	}
18099	req.Header = reqHeaders
18100	googleapi.Expand(req.URL, map[string]string{
18101		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
18102		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
18103	})
18104	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18105}
18106
18107// Do executes the "content.csses.updatelabels" call.
18108// Exactly one of *Css or error will be non-nil. Any non-2xx status code
18109// is an error. Response headers are in either
18110// *Css.ServerResponse.Header or (if a response was returned at all) in
18111// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18112// whether the returned error was because http.StatusNotModified was
18113// returned.
18114func (c *CssesUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*Css, error) {
18115	gensupport.SetOptions(c.urlParams_, opts...)
18116	res, err := c.doRequest("json")
18117	if res != nil && res.StatusCode == http.StatusNotModified {
18118		if res.Body != nil {
18119			res.Body.Close()
18120		}
18121		return nil, &googleapi.Error{
18122			Code:   res.StatusCode,
18123			Header: res.Header,
18124		}
18125	}
18126	if err != nil {
18127		return nil, err
18128	}
18129	defer googleapi.CloseBody(res)
18130	if err := googleapi.CheckResponse(res); err != nil {
18131		return nil, err
18132	}
18133	ret := &Css{
18134		ServerResponse: googleapi.ServerResponse{
18135			Header:         res.Header,
18136			HTTPStatusCode: res.StatusCode,
18137		},
18138	}
18139	target := &ret
18140	if err := gensupport.DecodeResponse(target, res); err != nil {
18141		return nil, err
18142	}
18143	return ret, nil
18144	// {
18145	//   "description": "Updates labels that are assigned to a CSS domain by its CSS group.",
18146	//   "flatPath": "content/v2.1/{cssGroupId}/csses/{cssDomainId}/updatelabels",
18147	//   "httpMethod": "POST",
18148	//   "id": "content.csses.updatelabels",
18149	//   "parameterOrder": [
18150	//     "cssGroupId",
18151	//     "cssDomainId"
18152	//   ],
18153	//   "parameters": {
18154	//     "cssDomainId": {
18155	//       "description": "Required. The ID of the updated CSS domain.",
18156	//       "format": "int64",
18157	//       "location": "path",
18158	//       "required": true,
18159	//       "type": "string"
18160	//     },
18161	//     "cssGroupId": {
18162	//       "description": "Required. The CSS group ID of the updated CSS domain.",
18163	//       "format": "int64",
18164	//       "location": "path",
18165	//       "required": true,
18166	//       "type": "string"
18167	//     }
18168	//   },
18169	//   "path": "content/v2.1/{cssGroupId}/csses/{cssDomainId}/updatelabels",
18170	//   "request": {
18171	//     "$ref": "LabelIds"
18172	//   },
18173	//   "response": {
18174	//     "$ref": "Css"
18175	//   },
18176	//   "scopes": [
18177	//     "https://www.googleapis.com/auth/content"
18178	//   ]
18179	// }
18180
18181}
18182
18183// method id "content.datafeeds.custombatch":
18184
18185type DatafeedsCustombatchCall struct {
18186	s                           *APIService
18187	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
18188	urlParams_                  gensupport.URLParams
18189	ctx_                        context.Context
18190	header_                     http.Header
18191}
18192
18193// Custombatch: Deletes, fetches, gets, inserts and updates multiple
18194// datafeeds in a single request.
18195func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
18196	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18197	c.datafeedscustombatchrequest = datafeedscustombatchrequest
18198	return c
18199}
18200
18201// Fields allows partial responses to be retrieved. See
18202// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18203// for more information.
18204func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
18205	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18206	return c
18207}
18208
18209// Context sets the context to be used in this call's Do method. Any
18210// pending HTTP request will be aborted if the provided context is
18211// canceled.
18212func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
18213	c.ctx_ = ctx
18214	return c
18215}
18216
18217// Header returns an http.Header that can be modified by the caller to
18218// add HTTP headers to the request.
18219func (c *DatafeedsCustombatchCall) Header() http.Header {
18220	if c.header_ == nil {
18221		c.header_ = make(http.Header)
18222	}
18223	return c.header_
18224}
18225
18226func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
18227	reqHeaders := make(http.Header)
18228	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
18229	for k, v := range c.header_ {
18230		reqHeaders[k] = v
18231	}
18232	reqHeaders.Set("User-Agent", c.s.userAgent())
18233	var body io.Reader = nil
18234	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
18235	if err != nil {
18236		return nil, err
18237	}
18238	reqHeaders.Set("Content-Type", "application/json")
18239	c.urlParams_.Set("alt", alt)
18240	c.urlParams_.Set("prettyPrint", "false")
18241	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/datafeeds/batch")
18242	urls += "?" + c.urlParams_.Encode()
18243	req, err := http.NewRequest("POST", urls, body)
18244	if err != nil {
18245		return nil, err
18246	}
18247	req.Header = reqHeaders
18248	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18249}
18250
18251// Do executes the "content.datafeeds.custombatch" call.
18252// Exactly one of *DatafeedsCustomBatchResponse or error will be
18253// non-nil. Any non-2xx status code is an error. Response headers are in
18254// either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
18255// response was returned at all) in error.(*googleapi.Error).Header. Use
18256// googleapi.IsNotModified to check whether the returned error was
18257// because http.StatusNotModified was returned.
18258func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
18259	gensupport.SetOptions(c.urlParams_, opts...)
18260	res, err := c.doRequest("json")
18261	if res != nil && res.StatusCode == http.StatusNotModified {
18262		if res.Body != nil {
18263			res.Body.Close()
18264		}
18265		return nil, &googleapi.Error{
18266			Code:   res.StatusCode,
18267			Header: res.Header,
18268		}
18269	}
18270	if err != nil {
18271		return nil, err
18272	}
18273	defer googleapi.CloseBody(res)
18274	if err := googleapi.CheckResponse(res); err != nil {
18275		return nil, err
18276	}
18277	ret := &DatafeedsCustomBatchResponse{
18278		ServerResponse: googleapi.ServerResponse{
18279			Header:         res.Header,
18280			HTTPStatusCode: res.StatusCode,
18281		},
18282	}
18283	target := &ret
18284	if err := gensupport.DecodeResponse(target, res); err != nil {
18285		return nil, err
18286	}
18287	return ret, nil
18288	// {
18289	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
18290	//   "flatPath": "content/v2.1/datafeeds/batch",
18291	//   "httpMethod": "POST",
18292	//   "id": "content.datafeeds.custombatch",
18293	//   "parameterOrder": [],
18294	//   "parameters": {},
18295	//   "path": "content/v2.1/datafeeds/batch",
18296	//   "request": {
18297	//     "$ref": "DatafeedsCustomBatchRequest"
18298	//   },
18299	//   "response": {
18300	//     "$ref": "DatafeedsCustomBatchResponse"
18301	//   },
18302	//   "scopes": [
18303	//     "https://www.googleapis.com/auth/content"
18304	//   ]
18305	// }
18306
18307}
18308
18309// method id "content.datafeeds.delete":
18310
18311type DatafeedsDeleteCall struct {
18312	s          *APIService
18313	merchantId uint64
18314	datafeedId uint64
18315	urlParams_ gensupport.URLParams
18316	ctx_       context.Context
18317	header_    http.Header
18318}
18319
18320// Delete: Deletes a datafeed configuration from your Merchant Center
18321// account.
18322func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
18323	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18324	c.merchantId = merchantId
18325	c.datafeedId = datafeedId
18326	return c
18327}
18328
18329// Fields allows partial responses to be retrieved. See
18330// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18331// for more information.
18332func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
18333	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18334	return c
18335}
18336
18337// Context sets the context to be used in this call's Do method. Any
18338// pending HTTP request will be aborted if the provided context is
18339// canceled.
18340func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
18341	c.ctx_ = ctx
18342	return c
18343}
18344
18345// Header returns an http.Header that can be modified by the caller to
18346// add HTTP headers to the request.
18347func (c *DatafeedsDeleteCall) Header() http.Header {
18348	if c.header_ == nil {
18349		c.header_ = make(http.Header)
18350	}
18351	return c.header_
18352}
18353
18354func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
18355	reqHeaders := make(http.Header)
18356	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
18357	for k, v := range c.header_ {
18358		reqHeaders[k] = v
18359	}
18360	reqHeaders.Set("User-Agent", c.s.userAgent())
18361	var body io.Reader = nil
18362	c.urlParams_.Set("alt", alt)
18363	c.urlParams_.Set("prettyPrint", "false")
18364	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/datafeeds/{datafeedId}")
18365	urls += "?" + c.urlParams_.Encode()
18366	req, err := http.NewRequest("DELETE", urls, body)
18367	if err != nil {
18368		return nil, err
18369	}
18370	req.Header = reqHeaders
18371	googleapi.Expand(req.URL, map[string]string{
18372		"merchantId": strconv.FormatUint(c.merchantId, 10),
18373		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
18374	})
18375	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18376}
18377
18378// Do executes the "content.datafeeds.delete" call.
18379func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
18380	gensupport.SetOptions(c.urlParams_, opts...)
18381	res, err := c.doRequest("json")
18382	if err != nil {
18383		return err
18384	}
18385	defer googleapi.CloseBody(res)
18386	if err := googleapi.CheckResponse(res); err != nil {
18387		return err
18388	}
18389	return nil
18390	// {
18391	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
18392	//   "flatPath": "content/v2.1/{merchantId}/datafeeds/{datafeedId}",
18393	//   "httpMethod": "DELETE",
18394	//   "id": "content.datafeeds.delete",
18395	//   "parameterOrder": [
18396	//     "merchantId",
18397	//     "datafeedId"
18398	//   ],
18399	//   "parameters": {
18400	//     "datafeedId": {
18401	//       "description": "The ID of the datafeed.",
18402	//       "format": "uint64",
18403	//       "location": "path",
18404	//       "required": true,
18405	//       "type": "string"
18406	//     },
18407	//     "merchantId": {
18408	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
18409	//       "format": "uint64",
18410	//       "location": "path",
18411	//       "required": true,
18412	//       "type": "string"
18413	//     }
18414	//   },
18415	//   "path": "content/v2.1/{merchantId}/datafeeds/{datafeedId}",
18416	//   "scopes": [
18417	//     "https://www.googleapis.com/auth/content"
18418	//   ]
18419	// }
18420
18421}
18422
18423// method id "content.datafeeds.fetchnow":
18424
18425type DatafeedsFetchnowCall struct {
18426	s          *APIService
18427	merchantId uint64
18428	datafeedId uint64
18429	urlParams_ gensupport.URLParams
18430	ctx_       context.Context
18431	header_    http.Header
18432}
18433
18434// Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
18435// account. If you need to call this method more than once per day, we
18436// recommend you use the Products service to update your product data.
18437func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
18438	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18439	c.merchantId = merchantId
18440	c.datafeedId = datafeedId
18441	return c
18442}
18443
18444// Fields allows partial responses to be retrieved. See
18445// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18446// for more information.
18447func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
18448	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18449	return c
18450}
18451
18452// Context sets the context to be used in this call's Do method. Any
18453// pending HTTP request will be aborted if the provided context is
18454// canceled.
18455func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
18456	c.ctx_ = ctx
18457	return c
18458}
18459
18460// Header returns an http.Header that can be modified by the caller to
18461// add HTTP headers to the request.
18462func (c *DatafeedsFetchnowCall) Header() http.Header {
18463	if c.header_ == nil {
18464		c.header_ = make(http.Header)
18465	}
18466	return c.header_
18467}
18468
18469func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
18470	reqHeaders := make(http.Header)
18471	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
18472	for k, v := range c.header_ {
18473		reqHeaders[k] = v
18474	}
18475	reqHeaders.Set("User-Agent", c.s.userAgent())
18476	var body io.Reader = nil
18477	c.urlParams_.Set("alt", alt)
18478	c.urlParams_.Set("prettyPrint", "false")
18479	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/datafeeds/{datafeedId}/fetchNow")
18480	urls += "?" + c.urlParams_.Encode()
18481	req, err := http.NewRequest("POST", urls, body)
18482	if err != nil {
18483		return nil, err
18484	}
18485	req.Header = reqHeaders
18486	googleapi.Expand(req.URL, map[string]string{
18487		"merchantId": strconv.FormatUint(c.merchantId, 10),
18488		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
18489	})
18490	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18491}
18492
18493// Do executes the "content.datafeeds.fetchnow" call.
18494// Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
18495// Any non-2xx status code is an error. Response headers are in either
18496// *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
18497// was returned at all) in error.(*googleapi.Error).Header. Use
18498// googleapi.IsNotModified to check whether the returned error was
18499// because http.StatusNotModified was returned.
18500func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
18501	gensupport.SetOptions(c.urlParams_, opts...)
18502	res, err := c.doRequest("json")
18503	if res != nil && res.StatusCode == http.StatusNotModified {
18504		if res.Body != nil {
18505			res.Body.Close()
18506		}
18507		return nil, &googleapi.Error{
18508			Code:   res.StatusCode,
18509			Header: res.Header,
18510		}
18511	}
18512	if err != nil {
18513		return nil, err
18514	}
18515	defer googleapi.CloseBody(res)
18516	if err := googleapi.CheckResponse(res); err != nil {
18517		return nil, err
18518	}
18519	ret := &DatafeedsFetchNowResponse{
18520		ServerResponse: googleapi.ServerResponse{
18521			Header:         res.Header,
18522			HTTPStatusCode: res.StatusCode,
18523		},
18524	}
18525	target := &ret
18526	if err := gensupport.DecodeResponse(target, res); err != nil {
18527		return nil, err
18528	}
18529	return ret, nil
18530	// {
18531	//   "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.",
18532	//   "flatPath": "content/v2.1/{merchantId}/datafeeds/{datafeedId}/fetchNow",
18533	//   "httpMethod": "POST",
18534	//   "id": "content.datafeeds.fetchnow",
18535	//   "parameterOrder": [
18536	//     "merchantId",
18537	//     "datafeedId"
18538	//   ],
18539	//   "parameters": {
18540	//     "datafeedId": {
18541	//       "description": "The ID of the datafeed to be fetched.",
18542	//       "format": "uint64",
18543	//       "location": "path",
18544	//       "required": true,
18545	//       "type": "string"
18546	//     },
18547	//     "merchantId": {
18548	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
18549	//       "format": "uint64",
18550	//       "location": "path",
18551	//       "required": true,
18552	//       "type": "string"
18553	//     }
18554	//   },
18555	//   "path": "content/v2.1/{merchantId}/datafeeds/{datafeedId}/fetchNow",
18556	//   "response": {
18557	//     "$ref": "DatafeedsFetchNowResponse"
18558	//   },
18559	//   "scopes": [
18560	//     "https://www.googleapis.com/auth/content"
18561	//   ]
18562	// }
18563
18564}
18565
18566// method id "content.datafeeds.get":
18567
18568type DatafeedsGetCall struct {
18569	s            *APIService
18570	merchantId   uint64
18571	datafeedId   uint64
18572	urlParams_   gensupport.URLParams
18573	ifNoneMatch_ string
18574	ctx_         context.Context
18575	header_      http.Header
18576}
18577
18578// Get: Retrieves a datafeed configuration from your Merchant Center
18579// account.
18580func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
18581	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18582	c.merchantId = merchantId
18583	c.datafeedId = datafeedId
18584	return c
18585}
18586
18587// Fields allows partial responses to be retrieved. See
18588// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18589// for more information.
18590func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
18591	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18592	return c
18593}
18594
18595// IfNoneMatch sets the optional parameter which makes the operation
18596// fail if the object's ETag matches the given value. This is useful for
18597// getting updates only after the object has changed since the last
18598// request. Use googleapi.IsNotModified to check whether the response
18599// error from Do is the result of In-None-Match.
18600func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
18601	c.ifNoneMatch_ = entityTag
18602	return c
18603}
18604
18605// Context sets the context to be used in this call's Do method. Any
18606// pending HTTP request will be aborted if the provided context is
18607// canceled.
18608func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
18609	c.ctx_ = ctx
18610	return c
18611}
18612
18613// Header returns an http.Header that can be modified by the caller to
18614// add HTTP headers to the request.
18615func (c *DatafeedsGetCall) Header() http.Header {
18616	if c.header_ == nil {
18617		c.header_ = make(http.Header)
18618	}
18619	return c.header_
18620}
18621
18622func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
18623	reqHeaders := make(http.Header)
18624	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
18625	for k, v := range c.header_ {
18626		reqHeaders[k] = v
18627	}
18628	reqHeaders.Set("User-Agent", c.s.userAgent())
18629	if c.ifNoneMatch_ != "" {
18630		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18631	}
18632	var body io.Reader = nil
18633	c.urlParams_.Set("alt", alt)
18634	c.urlParams_.Set("prettyPrint", "false")
18635	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/datafeeds/{datafeedId}")
18636	urls += "?" + c.urlParams_.Encode()
18637	req, err := http.NewRequest("GET", urls, body)
18638	if err != nil {
18639		return nil, err
18640	}
18641	req.Header = reqHeaders
18642	googleapi.Expand(req.URL, map[string]string{
18643		"merchantId": strconv.FormatUint(c.merchantId, 10),
18644		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
18645	})
18646	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18647}
18648
18649// Do executes the "content.datafeeds.get" call.
18650// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
18651// code is an error. Response headers are in either
18652// *Datafeed.ServerResponse.Header or (if a response was returned at
18653// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
18654// to check whether the returned error was because
18655// http.StatusNotModified was returned.
18656func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
18657	gensupport.SetOptions(c.urlParams_, opts...)
18658	res, err := c.doRequest("json")
18659	if res != nil && res.StatusCode == http.StatusNotModified {
18660		if res.Body != nil {
18661			res.Body.Close()
18662		}
18663		return nil, &googleapi.Error{
18664			Code:   res.StatusCode,
18665			Header: res.Header,
18666		}
18667	}
18668	if err != nil {
18669		return nil, err
18670	}
18671	defer googleapi.CloseBody(res)
18672	if err := googleapi.CheckResponse(res); err != nil {
18673		return nil, err
18674	}
18675	ret := &Datafeed{
18676		ServerResponse: googleapi.ServerResponse{
18677			Header:         res.Header,
18678			HTTPStatusCode: res.StatusCode,
18679		},
18680	}
18681	target := &ret
18682	if err := gensupport.DecodeResponse(target, res); err != nil {
18683		return nil, err
18684	}
18685	return ret, nil
18686	// {
18687	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
18688	//   "flatPath": "content/v2.1/{merchantId}/datafeeds/{datafeedId}",
18689	//   "httpMethod": "GET",
18690	//   "id": "content.datafeeds.get",
18691	//   "parameterOrder": [
18692	//     "merchantId",
18693	//     "datafeedId"
18694	//   ],
18695	//   "parameters": {
18696	//     "datafeedId": {
18697	//       "description": "The ID of the datafeed.",
18698	//       "format": "uint64",
18699	//       "location": "path",
18700	//       "required": true,
18701	//       "type": "string"
18702	//     },
18703	//     "merchantId": {
18704	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
18705	//       "format": "uint64",
18706	//       "location": "path",
18707	//       "required": true,
18708	//       "type": "string"
18709	//     }
18710	//   },
18711	//   "path": "content/v2.1/{merchantId}/datafeeds/{datafeedId}",
18712	//   "response": {
18713	//     "$ref": "Datafeed"
18714	//   },
18715	//   "scopes": [
18716	//     "https://www.googleapis.com/auth/content"
18717	//   ]
18718	// }
18719
18720}
18721
18722// method id "content.datafeeds.insert":
18723
18724type DatafeedsInsertCall struct {
18725	s          *APIService
18726	merchantId uint64
18727	datafeed   *Datafeed
18728	urlParams_ gensupport.URLParams
18729	ctx_       context.Context
18730	header_    http.Header
18731}
18732
18733// Insert: Registers a datafeed configuration with your Merchant Center
18734// account.
18735func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
18736	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18737	c.merchantId = merchantId
18738	c.datafeed = datafeed
18739	return c
18740}
18741
18742// Fields allows partial responses to be retrieved. See
18743// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18744// for more information.
18745func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
18746	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18747	return c
18748}
18749
18750// Context sets the context to be used in this call's Do method. Any
18751// pending HTTP request will be aborted if the provided context is
18752// canceled.
18753func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
18754	c.ctx_ = ctx
18755	return c
18756}
18757
18758// Header returns an http.Header that can be modified by the caller to
18759// add HTTP headers to the request.
18760func (c *DatafeedsInsertCall) Header() http.Header {
18761	if c.header_ == nil {
18762		c.header_ = make(http.Header)
18763	}
18764	return c.header_
18765}
18766
18767func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
18768	reqHeaders := make(http.Header)
18769	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
18770	for k, v := range c.header_ {
18771		reqHeaders[k] = v
18772	}
18773	reqHeaders.Set("User-Agent", c.s.userAgent())
18774	var body io.Reader = nil
18775	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
18776	if err != nil {
18777		return nil, err
18778	}
18779	reqHeaders.Set("Content-Type", "application/json")
18780	c.urlParams_.Set("alt", alt)
18781	c.urlParams_.Set("prettyPrint", "false")
18782	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/datafeeds")
18783	urls += "?" + c.urlParams_.Encode()
18784	req, err := http.NewRequest("POST", urls, body)
18785	if err != nil {
18786		return nil, err
18787	}
18788	req.Header = reqHeaders
18789	googleapi.Expand(req.URL, map[string]string{
18790		"merchantId": strconv.FormatUint(c.merchantId, 10),
18791	})
18792	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18793}
18794
18795// Do executes the "content.datafeeds.insert" call.
18796// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
18797// code is an error. Response headers are in either
18798// *Datafeed.ServerResponse.Header or (if a response was returned at
18799// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
18800// to check whether the returned error was because
18801// http.StatusNotModified was returned.
18802func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
18803	gensupport.SetOptions(c.urlParams_, opts...)
18804	res, err := c.doRequest("json")
18805	if res != nil && res.StatusCode == http.StatusNotModified {
18806		if res.Body != nil {
18807			res.Body.Close()
18808		}
18809		return nil, &googleapi.Error{
18810			Code:   res.StatusCode,
18811			Header: res.Header,
18812		}
18813	}
18814	if err != nil {
18815		return nil, err
18816	}
18817	defer googleapi.CloseBody(res)
18818	if err := googleapi.CheckResponse(res); err != nil {
18819		return nil, err
18820	}
18821	ret := &Datafeed{
18822		ServerResponse: googleapi.ServerResponse{
18823			Header:         res.Header,
18824			HTTPStatusCode: res.StatusCode,
18825		},
18826	}
18827	target := &ret
18828	if err := gensupport.DecodeResponse(target, res); err != nil {
18829		return nil, err
18830	}
18831	return ret, nil
18832	// {
18833	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
18834	//   "flatPath": "content/v2.1/{merchantId}/datafeeds",
18835	//   "httpMethod": "POST",
18836	//   "id": "content.datafeeds.insert",
18837	//   "parameterOrder": [
18838	//     "merchantId"
18839	//   ],
18840	//   "parameters": {
18841	//     "merchantId": {
18842	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
18843	//       "format": "uint64",
18844	//       "location": "path",
18845	//       "required": true,
18846	//       "type": "string"
18847	//     }
18848	//   },
18849	//   "path": "content/v2.1/{merchantId}/datafeeds",
18850	//   "request": {
18851	//     "$ref": "Datafeed"
18852	//   },
18853	//   "response": {
18854	//     "$ref": "Datafeed"
18855	//   },
18856	//   "scopes": [
18857	//     "https://www.googleapis.com/auth/content"
18858	//   ]
18859	// }
18860
18861}
18862
18863// method id "content.datafeeds.list":
18864
18865type DatafeedsListCall struct {
18866	s            *APIService
18867	merchantId   uint64
18868	urlParams_   gensupport.URLParams
18869	ifNoneMatch_ string
18870	ctx_         context.Context
18871	header_      http.Header
18872}
18873
18874// List: Lists the configurations for datafeeds in your Merchant Center
18875// account.
18876func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
18877	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18878	c.merchantId = merchantId
18879	return c
18880}
18881
18882// MaxResults sets the optional parameter "maxResults": The maximum
18883// number of products to return in the response, used for paging.
18884func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
18885	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18886	return c
18887}
18888
18889// PageToken sets the optional parameter "pageToken": The token returned
18890// by the previous request.
18891func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
18892	c.urlParams_.Set("pageToken", pageToken)
18893	return c
18894}
18895
18896// Fields allows partial responses to be retrieved. See
18897// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18898// for more information.
18899func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
18900	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18901	return c
18902}
18903
18904// IfNoneMatch sets the optional parameter which makes the operation
18905// fail if the object's ETag matches the given value. This is useful for
18906// getting updates only after the object has changed since the last
18907// request. Use googleapi.IsNotModified to check whether the response
18908// error from Do is the result of In-None-Match.
18909func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
18910	c.ifNoneMatch_ = entityTag
18911	return c
18912}
18913
18914// Context sets the context to be used in this call's Do method. Any
18915// pending HTTP request will be aborted if the provided context is
18916// canceled.
18917func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
18918	c.ctx_ = ctx
18919	return c
18920}
18921
18922// Header returns an http.Header that can be modified by the caller to
18923// add HTTP headers to the request.
18924func (c *DatafeedsListCall) Header() http.Header {
18925	if c.header_ == nil {
18926		c.header_ = make(http.Header)
18927	}
18928	return c.header_
18929}
18930
18931func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
18932	reqHeaders := make(http.Header)
18933	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
18934	for k, v := range c.header_ {
18935		reqHeaders[k] = v
18936	}
18937	reqHeaders.Set("User-Agent", c.s.userAgent())
18938	if c.ifNoneMatch_ != "" {
18939		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18940	}
18941	var body io.Reader = nil
18942	c.urlParams_.Set("alt", alt)
18943	c.urlParams_.Set("prettyPrint", "false")
18944	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/datafeeds")
18945	urls += "?" + c.urlParams_.Encode()
18946	req, err := http.NewRequest("GET", urls, body)
18947	if err != nil {
18948		return nil, err
18949	}
18950	req.Header = reqHeaders
18951	googleapi.Expand(req.URL, map[string]string{
18952		"merchantId": strconv.FormatUint(c.merchantId, 10),
18953	})
18954	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18955}
18956
18957// Do executes the "content.datafeeds.list" call.
18958// Exactly one of *DatafeedsListResponse or error will be non-nil. Any
18959// non-2xx status code is an error. Response headers are in either
18960// *DatafeedsListResponse.ServerResponse.Header or (if a response was
18961// returned at all) in error.(*googleapi.Error).Header. Use
18962// googleapi.IsNotModified to check whether the returned error was
18963// because http.StatusNotModified was returned.
18964func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
18965	gensupport.SetOptions(c.urlParams_, opts...)
18966	res, err := c.doRequest("json")
18967	if res != nil && res.StatusCode == http.StatusNotModified {
18968		if res.Body != nil {
18969			res.Body.Close()
18970		}
18971		return nil, &googleapi.Error{
18972			Code:   res.StatusCode,
18973			Header: res.Header,
18974		}
18975	}
18976	if err != nil {
18977		return nil, err
18978	}
18979	defer googleapi.CloseBody(res)
18980	if err := googleapi.CheckResponse(res); err != nil {
18981		return nil, err
18982	}
18983	ret := &DatafeedsListResponse{
18984		ServerResponse: googleapi.ServerResponse{
18985			Header:         res.Header,
18986			HTTPStatusCode: res.StatusCode,
18987		},
18988	}
18989	target := &ret
18990	if err := gensupport.DecodeResponse(target, res); err != nil {
18991		return nil, err
18992	}
18993	return ret, nil
18994	// {
18995	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
18996	//   "flatPath": "content/v2.1/{merchantId}/datafeeds",
18997	//   "httpMethod": "GET",
18998	//   "id": "content.datafeeds.list",
18999	//   "parameterOrder": [
19000	//     "merchantId"
19001	//   ],
19002	//   "parameters": {
19003	//     "maxResults": {
19004	//       "description": "The maximum number of products to return in the response, used for paging.",
19005	//       "format": "uint32",
19006	//       "location": "query",
19007	//       "type": "integer"
19008	//     },
19009	//     "merchantId": {
19010	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
19011	//       "format": "uint64",
19012	//       "location": "path",
19013	//       "required": true,
19014	//       "type": "string"
19015	//     },
19016	//     "pageToken": {
19017	//       "description": "The token returned by the previous request.",
19018	//       "location": "query",
19019	//       "type": "string"
19020	//     }
19021	//   },
19022	//   "path": "content/v2.1/{merchantId}/datafeeds",
19023	//   "response": {
19024	//     "$ref": "DatafeedsListResponse"
19025	//   },
19026	//   "scopes": [
19027	//     "https://www.googleapis.com/auth/content"
19028	//   ]
19029	// }
19030
19031}
19032
19033// Pages invokes f for each page of results.
19034// A non-nil error returned from f will halt the iteration.
19035// The provided context supersedes any context provided to the Context method.
19036func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
19037	c.ctx_ = ctx
19038	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19039	for {
19040		x, err := c.Do()
19041		if err != nil {
19042			return err
19043		}
19044		if err := f(x); err != nil {
19045			return err
19046		}
19047		if x.NextPageToken == "" {
19048			return nil
19049		}
19050		c.PageToken(x.NextPageToken)
19051	}
19052}
19053
19054// method id "content.datafeeds.update":
19055
19056type DatafeedsUpdateCall struct {
19057	s          *APIService
19058	merchantId uint64
19059	datafeedId uint64
19060	datafeed   *Datafeed
19061	urlParams_ gensupport.URLParams
19062	ctx_       context.Context
19063	header_    http.Header
19064}
19065
19066// Update: Updates a datafeed configuration of your Merchant Center
19067// account. Any fields that are not provided are deleted from the
19068// resource.
19069func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
19070	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19071	c.merchantId = merchantId
19072	c.datafeedId = datafeedId
19073	c.datafeed = datafeed
19074	return c
19075}
19076
19077// Fields allows partial responses to be retrieved. See
19078// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19079// for more information.
19080func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
19081	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19082	return c
19083}
19084
19085// Context sets the context to be used in this call's Do method. Any
19086// pending HTTP request will be aborted if the provided context is
19087// canceled.
19088func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
19089	c.ctx_ = ctx
19090	return c
19091}
19092
19093// Header returns an http.Header that can be modified by the caller to
19094// add HTTP headers to the request.
19095func (c *DatafeedsUpdateCall) Header() http.Header {
19096	if c.header_ == nil {
19097		c.header_ = make(http.Header)
19098	}
19099	return c.header_
19100}
19101
19102func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
19103	reqHeaders := make(http.Header)
19104	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
19105	for k, v := range c.header_ {
19106		reqHeaders[k] = v
19107	}
19108	reqHeaders.Set("User-Agent", c.s.userAgent())
19109	var body io.Reader = nil
19110	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
19111	if err != nil {
19112		return nil, err
19113	}
19114	reqHeaders.Set("Content-Type", "application/json")
19115	c.urlParams_.Set("alt", alt)
19116	c.urlParams_.Set("prettyPrint", "false")
19117	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/datafeeds/{datafeedId}")
19118	urls += "?" + c.urlParams_.Encode()
19119	req, err := http.NewRequest("PUT", urls, body)
19120	if err != nil {
19121		return nil, err
19122	}
19123	req.Header = reqHeaders
19124	googleapi.Expand(req.URL, map[string]string{
19125		"merchantId": strconv.FormatUint(c.merchantId, 10),
19126		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
19127	})
19128	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19129}
19130
19131// Do executes the "content.datafeeds.update" call.
19132// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
19133// code is an error. Response headers are in either
19134// *Datafeed.ServerResponse.Header or (if a response was returned at
19135// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19136// to check whether the returned error was because
19137// http.StatusNotModified was returned.
19138func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
19139	gensupport.SetOptions(c.urlParams_, opts...)
19140	res, err := c.doRequest("json")
19141	if res != nil && res.StatusCode == http.StatusNotModified {
19142		if res.Body != nil {
19143			res.Body.Close()
19144		}
19145		return nil, &googleapi.Error{
19146			Code:   res.StatusCode,
19147			Header: res.Header,
19148		}
19149	}
19150	if err != nil {
19151		return nil, err
19152	}
19153	defer googleapi.CloseBody(res)
19154	if err := googleapi.CheckResponse(res); err != nil {
19155		return nil, err
19156	}
19157	ret := &Datafeed{
19158		ServerResponse: googleapi.ServerResponse{
19159			Header:         res.Header,
19160			HTTPStatusCode: res.StatusCode,
19161		},
19162	}
19163	target := &ret
19164	if err := gensupport.DecodeResponse(target, res); err != nil {
19165		return nil, err
19166	}
19167	return ret, nil
19168	// {
19169	//   "description": "Updates a datafeed configuration of your Merchant Center account. Any fields that are not provided are deleted from the resource.",
19170	//   "flatPath": "content/v2.1/{merchantId}/datafeeds/{datafeedId}",
19171	//   "httpMethod": "PUT",
19172	//   "id": "content.datafeeds.update",
19173	//   "parameterOrder": [
19174	//     "merchantId",
19175	//     "datafeedId"
19176	//   ],
19177	//   "parameters": {
19178	//     "datafeedId": {
19179	//       "description": "The ID of the datafeed.",
19180	//       "format": "uint64",
19181	//       "location": "path",
19182	//       "required": true,
19183	//       "type": "string"
19184	//     },
19185	//     "merchantId": {
19186	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
19187	//       "format": "uint64",
19188	//       "location": "path",
19189	//       "required": true,
19190	//       "type": "string"
19191	//     }
19192	//   },
19193	//   "path": "content/v2.1/{merchantId}/datafeeds/{datafeedId}",
19194	//   "request": {
19195	//     "$ref": "Datafeed"
19196	//   },
19197	//   "response": {
19198	//     "$ref": "Datafeed"
19199	//   },
19200	//   "scopes": [
19201	//     "https://www.googleapis.com/auth/content"
19202	//   ]
19203	// }
19204
19205}
19206
19207// method id "content.datafeedstatuses.custombatch":
19208
19209type DatafeedstatusesCustombatchCall struct {
19210	s                                  *APIService
19211	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
19212	urlParams_                         gensupport.URLParams
19213	ctx_                               context.Context
19214	header_                            http.Header
19215}
19216
19217// Custombatch: Gets multiple Merchant Center datafeed statuses in a
19218// single request.
19219func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
19220	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19221	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
19222	return c
19223}
19224
19225// Fields allows partial responses to be retrieved. See
19226// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19227// for more information.
19228func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
19229	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19230	return c
19231}
19232
19233// Context sets the context to be used in this call's Do method. Any
19234// pending HTTP request will be aborted if the provided context is
19235// canceled.
19236func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
19237	c.ctx_ = ctx
19238	return c
19239}
19240
19241// Header returns an http.Header that can be modified by the caller to
19242// add HTTP headers to the request.
19243func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
19244	if c.header_ == nil {
19245		c.header_ = make(http.Header)
19246	}
19247	return c.header_
19248}
19249
19250func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
19251	reqHeaders := make(http.Header)
19252	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
19253	for k, v := range c.header_ {
19254		reqHeaders[k] = v
19255	}
19256	reqHeaders.Set("User-Agent", c.s.userAgent())
19257	var body io.Reader = nil
19258	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
19259	if err != nil {
19260		return nil, err
19261	}
19262	reqHeaders.Set("Content-Type", "application/json")
19263	c.urlParams_.Set("alt", alt)
19264	c.urlParams_.Set("prettyPrint", "false")
19265	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/datafeedstatuses/batch")
19266	urls += "?" + c.urlParams_.Encode()
19267	req, err := http.NewRequest("POST", urls, body)
19268	if err != nil {
19269		return nil, err
19270	}
19271	req.Header = reqHeaders
19272	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19273}
19274
19275// Do executes the "content.datafeedstatuses.custombatch" call.
19276// Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
19277// non-nil. Any non-2xx status code is an error. Response headers are in
19278// either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
19279// (if a response was returned at all) in
19280// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19281// whether the returned error was because http.StatusNotModified was
19282// returned.
19283func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
19284	gensupport.SetOptions(c.urlParams_, opts...)
19285	res, err := c.doRequest("json")
19286	if res != nil && res.StatusCode == http.StatusNotModified {
19287		if res.Body != nil {
19288			res.Body.Close()
19289		}
19290		return nil, &googleapi.Error{
19291			Code:   res.StatusCode,
19292			Header: res.Header,
19293		}
19294	}
19295	if err != nil {
19296		return nil, err
19297	}
19298	defer googleapi.CloseBody(res)
19299	if err := googleapi.CheckResponse(res); err != nil {
19300		return nil, err
19301	}
19302	ret := &DatafeedstatusesCustomBatchResponse{
19303		ServerResponse: googleapi.ServerResponse{
19304			Header:         res.Header,
19305			HTTPStatusCode: res.StatusCode,
19306		},
19307	}
19308	target := &ret
19309	if err := gensupport.DecodeResponse(target, res); err != nil {
19310		return nil, err
19311	}
19312	return ret, nil
19313	// {
19314	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
19315	//   "flatPath": "content/v2.1/datafeedstatuses/batch",
19316	//   "httpMethod": "POST",
19317	//   "id": "content.datafeedstatuses.custombatch",
19318	//   "parameterOrder": [],
19319	//   "parameters": {},
19320	//   "path": "content/v2.1/datafeedstatuses/batch",
19321	//   "request": {
19322	//     "$ref": "DatafeedstatusesCustomBatchRequest"
19323	//   },
19324	//   "response": {
19325	//     "$ref": "DatafeedstatusesCustomBatchResponse"
19326	//   },
19327	//   "scopes": [
19328	//     "https://www.googleapis.com/auth/content"
19329	//   ]
19330	// }
19331
19332}
19333
19334// method id "content.datafeedstatuses.get":
19335
19336type DatafeedstatusesGetCall struct {
19337	s            *APIService
19338	merchantId   uint64
19339	datafeedId   uint64
19340	urlParams_   gensupport.URLParams
19341	ifNoneMatch_ string
19342	ctx_         context.Context
19343	header_      http.Header
19344}
19345
19346// Get: Retrieves the status of a datafeed from your Merchant Center
19347// account.
19348func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
19349	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19350	c.merchantId = merchantId
19351	c.datafeedId = datafeedId
19352	return c
19353}
19354
19355// Country sets the optional parameter "country": The country for which
19356// to get the datafeed status. If this parameter is provided then
19357// language must also be provided. Note that this parameter is required
19358// for feeds targeting multiple countries and languages, since a feed
19359// may have a different status for each target.
19360func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
19361	c.urlParams_.Set("country", country)
19362	return c
19363}
19364
19365// Language sets the optional parameter "language": The language for
19366// which to get the datafeed status. If this parameter is provided then
19367// country must also be provided. Note that this parameter is required
19368// for feeds targeting multiple countries and languages, since a feed
19369// may have a different status for each target.
19370func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
19371	c.urlParams_.Set("language", language)
19372	return c
19373}
19374
19375// Fields allows partial responses to be retrieved. See
19376// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19377// for more information.
19378func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
19379	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19380	return c
19381}
19382
19383// IfNoneMatch sets the optional parameter which makes the operation
19384// fail if the object's ETag matches the given value. This is useful for
19385// getting updates only after the object has changed since the last
19386// request. Use googleapi.IsNotModified to check whether the response
19387// error from Do is the result of In-None-Match.
19388func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
19389	c.ifNoneMatch_ = entityTag
19390	return c
19391}
19392
19393// Context sets the context to be used in this call's Do method. Any
19394// pending HTTP request will be aborted if the provided context is
19395// canceled.
19396func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
19397	c.ctx_ = ctx
19398	return c
19399}
19400
19401// Header returns an http.Header that can be modified by the caller to
19402// add HTTP headers to the request.
19403func (c *DatafeedstatusesGetCall) Header() http.Header {
19404	if c.header_ == nil {
19405		c.header_ = make(http.Header)
19406	}
19407	return c.header_
19408}
19409
19410func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
19411	reqHeaders := make(http.Header)
19412	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
19413	for k, v := range c.header_ {
19414		reqHeaders[k] = v
19415	}
19416	reqHeaders.Set("User-Agent", c.s.userAgent())
19417	if c.ifNoneMatch_ != "" {
19418		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19419	}
19420	var body io.Reader = nil
19421	c.urlParams_.Set("alt", alt)
19422	c.urlParams_.Set("prettyPrint", "false")
19423	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/datafeedstatuses/{datafeedId}")
19424	urls += "?" + c.urlParams_.Encode()
19425	req, err := http.NewRequest("GET", urls, body)
19426	if err != nil {
19427		return nil, err
19428	}
19429	req.Header = reqHeaders
19430	googleapi.Expand(req.URL, map[string]string{
19431		"merchantId": strconv.FormatUint(c.merchantId, 10),
19432		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
19433	})
19434	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19435}
19436
19437// Do executes the "content.datafeedstatuses.get" call.
19438// Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
19439// status code is an error. Response headers are in either
19440// *DatafeedStatus.ServerResponse.Header or (if a response was returned
19441// at all) in error.(*googleapi.Error).Header. Use
19442// googleapi.IsNotModified to check whether the returned error was
19443// because http.StatusNotModified was returned.
19444func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
19445	gensupport.SetOptions(c.urlParams_, opts...)
19446	res, err := c.doRequest("json")
19447	if res != nil && res.StatusCode == http.StatusNotModified {
19448		if res.Body != nil {
19449			res.Body.Close()
19450		}
19451		return nil, &googleapi.Error{
19452			Code:   res.StatusCode,
19453			Header: res.Header,
19454		}
19455	}
19456	if err != nil {
19457		return nil, err
19458	}
19459	defer googleapi.CloseBody(res)
19460	if err := googleapi.CheckResponse(res); err != nil {
19461		return nil, err
19462	}
19463	ret := &DatafeedStatus{
19464		ServerResponse: googleapi.ServerResponse{
19465			Header:         res.Header,
19466			HTTPStatusCode: res.StatusCode,
19467		},
19468	}
19469	target := &ret
19470	if err := gensupport.DecodeResponse(target, res); err != nil {
19471		return nil, err
19472	}
19473	return ret, nil
19474	// {
19475	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
19476	//   "flatPath": "content/v2.1/{merchantId}/datafeedstatuses/{datafeedId}",
19477	//   "httpMethod": "GET",
19478	//   "id": "content.datafeedstatuses.get",
19479	//   "parameterOrder": [
19480	//     "merchantId",
19481	//     "datafeedId"
19482	//   ],
19483	//   "parameters": {
19484	//     "country": {
19485	//       "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.",
19486	//       "location": "query",
19487	//       "type": "string"
19488	//     },
19489	//     "datafeedId": {
19490	//       "description": "The ID of the datafeed.",
19491	//       "format": "uint64",
19492	//       "location": "path",
19493	//       "required": true,
19494	//       "type": "string"
19495	//     },
19496	//     "language": {
19497	//       "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.",
19498	//       "location": "query",
19499	//       "type": "string"
19500	//     },
19501	//     "merchantId": {
19502	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
19503	//       "format": "uint64",
19504	//       "location": "path",
19505	//       "required": true,
19506	//       "type": "string"
19507	//     }
19508	//   },
19509	//   "path": "content/v2.1/{merchantId}/datafeedstatuses/{datafeedId}",
19510	//   "response": {
19511	//     "$ref": "DatafeedStatus"
19512	//   },
19513	//   "scopes": [
19514	//     "https://www.googleapis.com/auth/content"
19515	//   ]
19516	// }
19517
19518}
19519
19520// method id "content.datafeedstatuses.list":
19521
19522type DatafeedstatusesListCall struct {
19523	s            *APIService
19524	merchantId   uint64
19525	urlParams_   gensupport.URLParams
19526	ifNoneMatch_ string
19527	ctx_         context.Context
19528	header_      http.Header
19529}
19530
19531// List: Lists the statuses of the datafeeds in your Merchant Center
19532// account.
19533func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
19534	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19535	c.merchantId = merchantId
19536	return c
19537}
19538
19539// MaxResults sets the optional parameter "maxResults": The maximum
19540// number of products to return in the response, used for paging.
19541func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
19542	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19543	return c
19544}
19545
19546// PageToken sets the optional parameter "pageToken": The token returned
19547// by the previous request.
19548func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
19549	c.urlParams_.Set("pageToken", pageToken)
19550	return c
19551}
19552
19553// Fields allows partial responses to be retrieved. See
19554// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19555// for more information.
19556func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
19557	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19558	return c
19559}
19560
19561// IfNoneMatch sets the optional parameter which makes the operation
19562// fail if the object's ETag matches the given value. This is useful for
19563// getting updates only after the object has changed since the last
19564// request. Use googleapi.IsNotModified to check whether the response
19565// error from Do is the result of In-None-Match.
19566func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
19567	c.ifNoneMatch_ = entityTag
19568	return c
19569}
19570
19571// Context sets the context to be used in this call's Do method. Any
19572// pending HTTP request will be aborted if the provided context is
19573// canceled.
19574func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
19575	c.ctx_ = ctx
19576	return c
19577}
19578
19579// Header returns an http.Header that can be modified by the caller to
19580// add HTTP headers to the request.
19581func (c *DatafeedstatusesListCall) Header() http.Header {
19582	if c.header_ == nil {
19583		c.header_ = make(http.Header)
19584	}
19585	return c.header_
19586}
19587
19588func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
19589	reqHeaders := make(http.Header)
19590	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
19591	for k, v := range c.header_ {
19592		reqHeaders[k] = v
19593	}
19594	reqHeaders.Set("User-Agent", c.s.userAgent())
19595	if c.ifNoneMatch_ != "" {
19596		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19597	}
19598	var body io.Reader = nil
19599	c.urlParams_.Set("alt", alt)
19600	c.urlParams_.Set("prettyPrint", "false")
19601	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/datafeedstatuses")
19602	urls += "?" + c.urlParams_.Encode()
19603	req, err := http.NewRequest("GET", urls, body)
19604	if err != nil {
19605		return nil, err
19606	}
19607	req.Header = reqHeaders
19608	googleapi.Expand(req.URL, map[string]string{
19609		"merchantId": strconv.FormatUint(c.merchantId, 10),
19610	})
19611	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19612}
19613
19614// Do executes the "content.datafeedstatuses.list" call.
19615// Exactly one of *DatafeedstatusesListResponse or error will be
19616// non-nil. Any non-2xx status code is an error. Response headers are in
19617// either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
19618// response was returned at all) in error.(*googleapi.Error).Header. Use
19619// googleapi.IsNotModified to check whether the returned error was
19620// because http.StatusNotModified was returned.
19621func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
19622	gensupport.SetOptions(c.urlParams_, opts...)
19623	res, err := c.doRequest("json")
19624	if res != nil && res.StatusCode == http.StatusNotModified {
19625		if res.Body != nil {
19626			res.Body.Close()
19627		}
19628		return nil, &googleapi.Error{
19629			Code:   res.StatusCode,
19630			Header: res.Header,
19631		}
19632	}
19633	if err != nil {
19634		return nil, err
19635	}
19636	defer googleapi.CloseBody(res)
19637	if err := googleapi.CheckResponse(res); err != nil {
19638		return nil, err
19639	}
19640	ret := &DatafeedstatusesListResponse{
19641		ServerResponse: googleapi.ServerResponse{
19642			Header:         res.Header,
19643			HTTPStatusCode: res.StatusCode,
19644		},
19645	}
19646	target := &ret
19647	if err := gensupport.DecodeResponse(target, res); err != nil {
19648		return nil, err
19649	}
19650	return ret, nil
19651	// {
19652	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
19653	//   "flatPath": "content/v2.1/{merchantId}/datafeedstatuses",
19654	//   "httpMethod": "GET",
19655	//   "id": "content.datafeedstatuses.list",
19656	//   "parameterOrder": [
19657	//     "merchantId"
19658	//   ],
19659	//   "parameters": {
19660	//     "maxResults": {
19661	//       "description": "The maximum number of products to return in the response, used for paging.",
19662	//       "format": "uint32",
19663	//       "location": "query",
19664	//       "type": "integer"
19665	//     },
19666	//     "merchantId": {
19667	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
19668	//       "format": "uint64",
19669	//       "location": "path",
19670	//       "required": true,
19671	//       "type": "string"
19672	//     },
19673	//     "pageToken": {
19674	//       "description": "The token returned by the previous request.",
19675	//       "location": "query",
19676	//       "type": "string"
19677	//     }
19678	//   },
19679	//   "path": "content/v2.1/{merchantId}/datafeedstatuses",
19680	//   "response": {
19681	//     "$ref": "DatafeedstatusesListResponse"
19682	//   },
19683	//   "scopes": [
19684	//     "https://www.googleapis.com/auth/content"
19685	//   ]
19686	// }
19687
19688}
19689
19690// Pages invokes f for each page of results.
19691// A non-nil error returned from f will halt the iteration.
19692// The provided context supersedes any context provided to the Context method.
19693func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
19694	c.ctx_ = ctx
19695	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19696	for {
19697		x, err := c.Do()
19698		if err != nil {
19699			return err
19700		}
19701		if err := f(x); err != nil {
19702			return err
19703		}
19704		if x.NextPageToken == "" {
19705			return nil
19706		}
19707		c.PageToken(x.NextPageToken)
19708	}
19709}
19710
19711// method id "content.liasettings.custombatch":
19712
19713type LiasettingsCustombatchCall struct {
19714	s                             *APIService
19715	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
19716	urlParams_                    gensupport.URLParams
19717	ctx_                          context.Context
19718	header_                       http.Header
19719}
19720
19721// Custombatch: Retrieves and/or updates the LIA settings of multiple
19722// accounts in a single request.
19723func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
19724	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19725	c.liasettingscustombatchrequest = liasettingscustombatchrequest
19726	return c
19727}
19728
19729// Fields allows partial responses to be retrieved. See
19730// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19731// for more information.
19732func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
19733	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19734	return c
19735}
19736
19737// Context sets the context to be used in this call's Do method. Any
19738// pending HTTP request will be aborted if the provided context is
19739// canceled.
19740func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
19741	c.ctx_ = ctx
19742	return c
19743}
19744
19745// Header returns an http.Header that can be modified by the caller to
19746// add HTTP headers to the request.
19747func (c *LiasettingsCustombatchCall) Header() http.Header {
19748	if c.header_ == nil {
19749		c.header_ = make(http.Header)
19750	}
19751	return c.header_
19752}
19753
19754func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
19755	reqHeaders := make(http.Header)
19756	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
19757	for k, v := range c.header_ {
19758		reqHeaders[k] = v
19759	}
19760	reqHeaders.Set("User-Agent", c.s.userAgent())
19761	var body io.Reader = nil
19762	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
19763	if err != nil {
19764		return nil, err
19765	}
19766	reqHeaders.Set("Content-Type", "application/json")
19767	c.urlParams_.Set("alt", alt)
19768	c.urlParams_.Set("prettyPrint", "false")
19769	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/liasettings/batch")
19770	urls += "?" + c.urlParams_.Encode()
19771	req, err := http.NewRequest("POST", urls, body)
19772	if err != nil {
19773		return nil, err
19774	}
19775	req.Header = reqHeaders
19776	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19777}
19778
19779// Do executes the "content.liasettings.custombatch" call.
19780// Exactly one of *LiasettingsCustomBatchResponse or error will be
19781// non-nil. Any non-2xx status code is an error. Response headers are in
19782// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
19783// response was returned at all) in error.(*googleapi.Error).Header. Use
19784// googleapi.IsNotModified to check whether the returned error was
19785// because http.StatusNotModified was returned.
19786func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
19787	gensupport.SetOptions(c.urlParams_, opts...)
19788	res, err := c.doRequest("json")
19789	if res != nil && res.StatusCode == http.StatusNotModified {
19790		if res.Body != nil {
19791			res.Body.Close()
19792		}
19793		return nil, &googleapi.Error{
19794			Code:   res.StatusCode,
19795			Header: res.Header,
19796		}
19797	}
19798	if err != nil {
19799		return nil, err
19800	}
19801	defer googleapi.CloseBody(res)
19802	if err := googleapi.CheckResponse(res); err != nil {
19803		return nil, err
19804	}
19805	ret := &LiasettingsCustomBatchResponse{
19806		ServerResponse: googleapi.ServerResponse{
19807			Header:         res.Header,
19808			HTTPStatusCode: res.StatusCode,
19809		},
19810	}
19811	target := &ret
19812	if err := gensupport.DecodeResponse(target, res); err != nil {
19813		return nil, err
19814	}
19815	return ret, nil
19816	// {
19817	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
19818	//   "flatPath": "content/v2.1/liasettings/batch",
19819	//   "httpMethod": "POST",
19820	//   "id": "content.liasettings.custombatch",
19821	//   "parameterOrder": [],
19822	//   "parameters": {},
19823	//   "path": "content/v2.1/liasettings/batch",
19824	//   "request": {
19825	//     "$ref": "LiasettingsCustomBatchRequest"
19826	//   },
19827	//   "response": {
19828	//     "$ref": "LiasettingsCustomBatchResponse"
19829	//   },
19830	//   "scopes": [
19831	//     "https://www.googleapis.com/auth/content"
19832	//   ]
19833	// }
19834
19835}
19836
19837// method id "content.liasettings.get":
19838
19839type LiasettingsGetCall struct {
19840	s            *APIService
19841	merchantId   uint64
19842	accountId    uint64
19843	urlParams_   gensupport.URLParams
19844	ifNoneMatch_ string
19845	ctx_         context.Context
19846	header_      http.Header
19847}
19848
19849// Get: Retrieves the LIA settings of the account.
19850func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
19851	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19852	c.merchantId = merchantId
19853	c.accountId = accountId
19854	return c
19855}
19856
19857// Fields allows partial responses to be retrieved. See
19858// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19859// for more information.
19860func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
19861	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19862	return c
19863}
19864
19865// IfNoneMatch sets the optional parameter which makes the operation
19866// fail if the object's ETag matches the given value. This is useful for
19867// getting updates only after the object has changed since the last
19868// request. Use googleapi.IsNotModified to check whether the response
19869// error from Do is the result of In-None-Match.
19870func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
19871	c.ifNoneMatch_ = entityTag
19872	return c
19873}
19874
19875// Context sets the context to be used in this call's Do method. Any
19876// pending HTTP request will be aborted if the provided context is
19877// canceled.
19878func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
19879	c.ctx_ = ctx
19880	return c
19881}
19882
19883// Header returns an http.Header that can be modified by the caller to
19884// add HTTP headers to the request.
19885func (c *LiasettingsGetCall) Header() http.Header {
19886	if c.header_ == nil {
19887		c.header_ = make(http.Header)
19888	}
19889	return c.header_
19890}
19891
19892func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
19893	reqHeaders := make(http.Header)
19894	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
19895	for k, v := range c.header_ {
19896		reqHeaders[k] = v
19897	}
19898	reqHeaders.Set("User-Agent", c.s.userAgent())
19899	if c.ifNoneMatch_ != "" {
19900		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19901	}
19902	var body io.Reader = nil
19903	c.urlParams_.Set("alt", alt)
19904	c.urlParams_.Set("prettyPrint", "false")
19905	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/liasettings/{accountId}")
19906	urls += "?" + c.urlParams_.Encode()
19907	req, err := http.NewRequest("GET", urls, body)
19908	if err != nil {
19909		return nil, err
19910	}
19911	req.Header = reqHeaders
19912	googleapi.Expand(req.URL, map[string]string{
19913		"merchantId": strconv.FormatUint(c.merchantId, 10),
19914		"accountId":  strconv.FormatUint(c.accountId, 10),
19915	})
19916	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19917}
19918
19919// Do executes the "content.liasettings.get" call.
19920// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
19921// status code is an error. Response headers are in either
19922// *LiaSettings.ServerResponse.Header or (if a response was returned at
19923// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19924// to check whether the returned error was because
19925// http.StatusNotModified was returned.
19926func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
19927	gensupport.SetOptions(c.urlParams_, opts...)
19928	res, err := c.doRequest("json")
19929	if res != nil && res.StatusCode == http.StatusNotModified {
19930		if res.Body != nil {
19931			res.Body.Close()
19932		}
19933		return nil, &googleapi.Error{
19934			Code:   res.StatusCode,
19935			Header: res.Header,
19936		}
19937	}
19938	if err != nil {
19939		return nil, err
19940	}
19941	defer googleapi.CloseBody(res)
19942	if err := googleapi.CheckResponse(res); err != nil {
19943		return nil, err
19944	}
19945	ret := &LiaSettings{
19946		ServerResponse: googleapi.ServerResponse{
19947			Header:         res.Header,
19948			HTTPStatusCode: res.StatusCode,
19949		},
19950	}
19951	target := &ret
19952	if err := gensupport.DecodeResponse(target, res); err != nil {
19953		return nil, err
19954	}
19955	return ret, nil
19956	// {
19957	//   "description": "Retrieves the LIA settings of the account.",
19958	//   "flatPath": "content/v2.1/{merchantId}/liasettings/{accountId}",
19959	//   "httpMethod": "GET",
19960	//   "id": "content.liasettings.get",
19961	//   "parameterOrder": [
19962	//     "merchantId",
19963	//     "accountId"
19964	//   ],
19965	//   "parameters": {
19966	//     "accountId": {
19967	//       "description": "The ID of the account for which to get or update LIA settings.",
19968	//       "format": "uint64",
19969	//       "location": "path",
19970	//       "required": true,
19971	//       "type": "string"
19972	//     },
19973	//     "merchantId": {
19974	//       "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.",
19975	//       "format": "uint64",
19976	//       "location": "path",
19977	//       "required": true,
19978	//       "type": "string"
19979	//     }
19980	//   },
19981	//   "path": "content/v2.1/{merchantId}/liasettings/{accountId}",
19982	//   "response": {
19983	//     "$ref": "LiaSettings"
19984	//   },
19985	//   "scopes": [
19986	//     "https://www.googleapis.com/auth/content"
19987	//   ]
19988	// }
19989
19990}
19991
19992// method id "content.liasettings.getaccessiblegmbaccounts":
19993
19994type LiasettingsGetaccessiblegmbaccountsCall struct {
19995	s            *APIService
19996	merchantId   uint64
19997	accountId    uint64
19998	urlParams_   gensupport.URLParams
19999	ifNoneMatch_ string
20000	ctx_         context.Context
20001	header_      http.Header
20002}
20003
20004// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
20005// Business accounts.
20006func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
20007	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20008	c.merchantId = merchantId
20009	c.accountId = accountId
20010	return c
20011}
20012
20013// Fields allows partial responses to be retrieved. See
20014// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20015// for more information.
20016func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
20017	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20018	return c
20019}
20020
20021// IfNoneMatch sets the optional parameter which makes the operation
20022// fail if the object's ETag matches the given value. This is useful for
20023// getting updates only after the object has changed since the last
20024// request. Use googleapi.IsNotModified to check whether the response
20025// error from Do is the result of In-None-Match.
20026func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
20027	c.ifNoneMatch_ = entityTag
20028	return c
20029}
20030
20031// Context sets the context to be used in this call's Do method. Any
20032// pending HTTP request will be aborted if the provided context is
20033// canceled.
20034func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
20035	c.ctx_ = ctx
20036	return c
20037}
20038
20039// Header returns an http.Header that can be modified by the caller to
20040// add HTTP headers to the request.
20041func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
20042	if c.header_ == nil {
20043		c.header_ = make(http.Header)
20044	}
20045	return c.header_
20046}
20047
20048func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
20049	reqHeaders := make(http.Header)
20050	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
20051	for k, v := range c.header_ {
20052		reqHeaders[k] = v
20053	}
20054	reqHeaders.Set("User-Agent", c.s.userAgent())
20055	if c.ifNoneMatch_ != "" {
20056		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20057	}
20058	var body io.Reader = nil
20059	c.urlParams_.Set("alt", alt)
20060	c.urlParams_.Set("prettyPrint", "false")
20061	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
20062	urls += "?" + c.urlParams_.Encode()
20063	req, err := http.NewRequest("GET", urls, body)
20064	if err != nil {
20065		return nil, err
20066	}
20067	req.Header = reqHeaders
20068	googleapi.Expand(req.URL, map[string]string{
20069		"merchantId": strconv.FormatUint(c.merchantId, 10),
20070		"accountId":  strconv.FormatUint(c.accountId, 10),
20071	})
20072	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20073}
20074
20075// Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
20076// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
20077// will be non-nil. Any non-2xx status code is an error. Response
20078// headers are in either
20079// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
20080// (if a response was returned at all) in
20081// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20082// whether the returned error was because http.StatusNotModified was
20083// returned.
20084func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
20085	gensupport.SetOptions(c.urlParams_, opts...)
20086	res, err := c.doRequest("json")
20087	if res != nil && res.StatusCode == http.StatusNotModified {
20088		if res.Body != nil {
20089			res.Body.Close()
20090		}
20091		return nil, &googleapi.Error{
20092			Code:   res.StatusCode,
20093			Header: res.Header,
20094		}
20095	}
20096	if err != nil {
20097		return nil, err
20098	}
20099	defer googleapi.CloseBody(res)
20100	if err := googleapi.CheckResponse(res); err != nil {
20101		return nil, err
20102	}
20103	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
20104		ServerResponse: googleapi.ServerResponse{
20105			Header:         res.Header,
20106			HTTPStatusCode: res.StatusCode,
20107		},
20108	}
20109	target := &ret
20110	if err := gensupport.DecodeResponse(target, res); err != nil {
20111		return nil, err
20112	}
20113	return ret, nil
20114	// {
20115	//   "description": "Retrieves the list of accessible Google My Business accounts.",
20116	//   "flatPath": "content/v2.1/{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
20117	//   "httpMethod": "GET",
20118	//   "id": "content.liasettings.getaccessiblegmbaccounts",
20119	//   "parameterOrder": [
20120	//     "merchantId",
20121	//     "accountId"
20122	//   ],
20123	//   "parameters": {
20124	//     "accountId": {
20125	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
20126	//       "format": "uint64",
20127	//       "location": "path",
20128	//       "required": true,
20129	//       "type": "string"
20130	//     },
20131	//     "merchantId": {
20132	//       "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.",
20133	//       "format": "uint64",
20134	//       "location": "path",
20135	//       "required": true,
20136	//       "type": "string"
20137	//     }
20138	//   },
20139	//   "path": "content/v2.1/{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
20140	//   "response": {
20141	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
20142	//   },
20143	//   "scopes": [
20144	//     "https://www.googleapis.com/auth/content"
20145	//   ]
20146	// }
20147
20148}
20149
20150// method id "content.liasettings.list":
20151
20152type LiasettingsListCall struct {
20153	s            *APIService
20154	merchantId   uint64
20155	urlParams_   gensupport.URLParams
20156	ifNoneMatch_ string
20157	ctx_         context.Context
20158	header_      http.Header
20159}
20160
20161// List: Lists the LIA settings of the sub-accounts in your Merchant
20162// Center account.
20163func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
20164	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20165	c.merchantId = merchantId
20166	return c
20167}
20168
20169// MaxResults sets the optional parameter "maxResults": The maximum
20170// number of LIA settings to return in the response, used for paging.
20171func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
20172	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
20173	return c
20174}
20175
20176// PageToken sets the optional parameter "pageToken": The token returned
20177// by the previous request.
20178func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
20179	c.urlParams_.Set("pageToken", pageToken)
20180	return c
20181}
20182
20183// Fields allows partial responses to be retrieved. See
20184// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20185// for more information.
20186func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
20187	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20188	return c
20189}
20190
20191// IfNoneMatch sets the optional parameter which makes the operation
20192// fail if the object's ETag matches the given value. This is useful for
20193// getting updates only after the object has changed since the last
20194// request. Use googleapi.IsNotModified to check whether the response
20195// error from Do is the result of In-None-Match.
20196func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
20197	c.ifNoneMatch_ = entityTag
20198	return c
20199}
20200
20201// Context sets the context to be used in this call's Do method. Any
20202// pending HTTP request will be aborted if the provided context is
20203// canceled.
20204func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
20205	c.ctx_ = ctx
20206	return c
20207}
20208
20209// Header returns an http.Header that can be modified by the caller to
20210// add HTTP headers to the request.
20211func (c *LiasettingsListCall) Header() http.Header {
20212	if c.header_ == nil {
20213		c.header_ = make(http.Header)
20214	}
20215	return c.header_
20216}
20217
20218func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
20219	reqHeaders := make(http.Header)
20220	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
20221	for k, v := range c.header_ {
20222		reqHeaders[k] = v
20223	}
20224	reqHeaders.Set("User-Agent", c.s.userAgent())
20225	if c.ifNoneMatch_ != "" {
20226		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20227	}
20228	var body io.Reader = nil
20229	c.urlParams_.Set("alt", alt)
20230	c.urlParams_.Set("prettyPrint", "false")
20231	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/liasettings")
20232	urls += "?" + c.urlParams_.Encode()
20233	req, err := http.NewRequest("GET", urls, body)
20234	if err != nil {
20235		return nil, err
20236	}
20237	req.Header = reqHeaders
20238	googleapi.Expand(req.URL, map[string]string{
20239		"merchantId": strconv.FormatUint(c.merchantId, 10),
20240	})
20241	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20242}
20243
20244// Do executes the "content.liasettings.list" call.
20245// Exactly one of *LiasettingsListResponse or error will be non-nil. Any
20246// non-2xx status code is an error. Response headers are in either
20247// *LiasettingsListResponse.ServerResponse.Header or (if a response was
20248// returned at all) in error.(*googleapi.Error).Header. Use
20249// googleapi.IsNotModified to check whether the returned error was
20250// because http.StatusNotModified was returned.
20251func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
20252	gensupport.SetOptions(c.urlParams_, opts...)
20253	res, err := c.doRequest("json")
20254	if res != nil && res.StatusCode == http.StatusNotModified {
20255		if res.Body != nil {
20256			res.Body.Close()
20257		}
20258		return nil, &googleapi.Error{
20259			Code:   res.StatusCode,
20260			Header: res.Header,
20261		}
20262	}
20263	if err != nil {
20264		return nil, err
20265	}
20266	defer googleapi.CloseBody(res)
20267	if err := googleapi.CheckResponse(res); err != nil {
20268		return nil, err
20269	}
20270	ret := &LiasettingsListResponse{
20271		ServerResponse: googleapi.ServerResponse{
20272			Header:         res.Header,
20273			HTTPStatusCode: res.StatusCode,
20274		},
20275	}
20276	target := &ret
20277	if err := gensupport.DecodeResponse(target, res); err != nil {
20278		return nil, err
20279	}
20280	return ret, nil
20281	// {
20282	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
20283	//   "flatPath": "content/v2.1/{merchantId}/liasettings",
20284	//   "httpMethod": "GET",
20285	//   "id": "content.liasettings.list",
20286	//   "parameterOrder": [
20287	//     "merchantId"
20288	//   ],
20289	//   "parameters": {
20290	//     "maxResults": {
20291	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
20292	//       "format": "uint32",
20293	//       "location": "query",
20294	//       "type": "integer"
20295	//     },
20296	//     "merchantId": {
20297	//       "description": "The ID of the managing account. This must be a multi-client account.",
20298	//       "format": "uint64",
20299	//       "location": "path",
20300	//       "required": true,
20301	//       "type": "string"
20302	//     },
20303	//     "pageToken": {
20304	//       "description": "The token returned by the previous request.",
20305	//       "location": "query",
20306	//       "type": "string"
20307	//     }
20308	//   },
20309	//   "path": "content/v2.1/{merchantId}/liasettings",
20310	//   "response": {
20311	//     "$ref": "LiasettingsListResponse"
20312	//   },
20313	//   "scopes": [
20314	//     "https://www.googleapis.com/auth/content"
20315	//   ]
20316	// }
20317
20318}
20319
20320// Pages invokes f for each page of results.
20321// A non-nil error returned from f will halt the iteration.
20322// The provided context supersedes any context provided to the Context method.
20323func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
20324	c.ctx_ = ctx
20325	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20326	for {
20327		x, err := c.Do()
20328		if err != nil {
20329			return err
20330		}
20331		if err := f(x); err != nil {
20332			return err
20333		}
20334		if x.NextPageToken == "" {
20335			return nil
20336		}
20337		c.PageToken(x.NextPageToken)
20338	}
20339}
20340
20341// method id "content.liasettings.listposdataproviders":
20342
20343type LiasettingsListposdataprovidersCall struct {
20344	s            *APIService
20345	urlParams_   gensupport.URLParams
20346	ifNoneMatch_ string
20347	ctx_         context.Context
20348	header_      http.Header
20349}
20350
20351// Listposdataproviders: Retrieves the list of POS data providers that
20352// have active settings for the all eiligible countries.
20353func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
20354	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20355	return c
20356}
20357
20358// Fields allows partial responses to be retrieved. See
20359// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20360// for more information.
20361func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
20362	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20363	return c
20364}
20365
20366// IfNoneMatch sets the optional parameter which makes the operation
20367// fail if the object's ETag matches the given value. This is useful for
20368// getting updates only after the object has changed since the last
20369// request. Use googleapi.IsNotModified to check whether the response
20370// error from Do is the result of In-None-Match.
20371func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
20372	c.ifNoneMatch_ = entityTag
20373	return c
20374}
20375
20376// Context sets the context to be used in this call's Do method. Any
20377// pending HTTP request will be aborted if the provided context is
20378// canceled.
20379func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
20380	c.ctx_ = ctx
20381	return c
20382}
20383
20384// Header returns an http.Header that can be modified by the caller to
20385// add HTTP headers to the request.
20386func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
20387	if c.header_ == nil {
20388		c.header_ = make(http.Header)
20389	}
20390	return c.header_
20391}
20392
20393func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
20394	reqHeaders := make(http.Header)
20395	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
20396	for k, v := range c.header_ {
20397		reqHeaders[k] = v
20398	}
20399	reqHeaders.Set("User-Agent", c.s.userAgent())
20400	if c.ifNoneMatch_ != "" {
20401		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20402	}
20403	var body io.Reader = nil
20404	c.urlParams_.Set("alt", alt)
20405	c.urlParams_.Set("prettyPrint", "false")
20406	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/liasettings/posdataproviders")
20407	urls += "?" + c.urlParams_.Encode()
20408	req, err := http.NewRequest("GET", urls, body)
20409	if err != nil {
20410		return nil, err
20411	}
20412	req.Header = reqHeaders
20413	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20414}
20415
20416// Do executes the "content.liasettings.listposdataproviders" call.
20417// Exactly one of *LiasettingsListPosDataProvidersResponse or error will
20418// be non-nil. Any non-2xx status code is an error. Response headers are
20419// in either
20420// *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
20421// a response was returned at all) in error.(*googleapi.Error).Header.
20422// Use googleapi.IsNotModified to check whether the returned error was
20423// because http.StatusNotModified was returned.
20424func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
20425	gensupport.SetOptions(c.urlParams_, opts...)
20426	res, err := c.doRequest("json")
20427	if res != nil && res.StatusCode == http.StatusNotModified {
20428		if res.Body != nil {
20429			res.Body.Close()
20430		}
20431		return nil, &googleapi.Error{
20432			Code:   res.StatusCode,
20433			Header: res.Header,
20434		}
20435	}
20436	if err != nil {
20437		return nil, err
20438	}
20439	defer googleapi.CloseBody(res)
20440	if err := googleapi.CheckResponse(res); err != nil {
20441		return nil, err
20442	}
20443	ret := &LiasettingsListPosDataProvidersResponse{
20444		ServerResponse: googleapi.ServerResponse{
20445			Header:         res.Header,
20446			HTTPStatusCode: res.StatusCode,
20447		},
20448	}
20449	target := &ret
20450	if err := gensupport.DecodeResponse(target, res); err != nil {
20451		return nil, err
20452	}
20453	return ret, nil
20454	// {
20455	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
20456	//   "flatPath": "content/v2.1/liasettings/posdataproviders",
20457	//   "httpMethod": "GET",
20458	//   "id": "content.liasettings.listposdataproviders",
20459	//   "parameterOrder": [],
20460	//   "parameters": {},
20461	//   "path": "content/v2.1/liasettings/posdataproviders",
20462	//   "response": {
20463	//     "$ref": "LiasettingsListPosDataProvidersResponse"
20464	//   },
20465	//   "scopes": [
20466	//     "https://www.googleapis.com/auth/content"
20467	//   ]
20468	// }
20469
20470}
20471
20472// method id "content.liasettings.requestgmbaccess":
20473
20474type LiasettingsRequestgmbaccessCall struct {
20475	s          *APIService
20476	merchantId uint64
20477	accountId  uint64
20478	urlParams_ gensupport.URLParams
20479	ctx_       context.Context
20480	header_    http.Header
20481}
20482
20483// Requestgmbaccess: Requests access to a specified Google My Business
20484// account.
20485func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
20486	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20487	c.merchantId = merchantId
20488	c.accountId = accountId
20489	c.urlParams_.Set("gmbEmail", gmbEmail)
20490	return c
20491}
20492
20493// Fields allows partial responses to be retrieved. See
20494// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20495// for more information.
20496func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
20497	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20498	return c
20499}
20500
20501// Context sets the context to be used in this call's Do method. Any
20502// pending HTTP request will be aborted if the provided context is
20503// canceled.
20504func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
20505	c.ctx_ = ctx
20506	return c
20507}
20508
20509// Header returns an http.Header that can be modified by the caller to
20510// add HTTP headers to the request.
20511func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
20512	if c.header_ == nil {
20513		c.header_ = make(http.Header)
20514	}
20515	return c.header_
20516}
20517
20518func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
20519	reqHeaders := make(http.Header)
20520	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
20521	for k, v := range c.header_ {
20522		reqHeaders[k] = v
20523	}
20524	reqHeaders.Set("User-Agent", c.s.userAgent())
20525	var body io.Reader = nil
20526	c.urlParams_.Set("alt", alt)
20527	c.urlParams_.Set("prettyPrint", "false")
20528	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/liasettings/{accountId}/requestgmbaccess")
20529	urls += "?" + c.urlParams_.Encode()
20530	req, err := http.NewRequest("POST", urls, body)
20531	if err != nil {
20532		return nil, err
20533	}
20534	req.Header = reqHeaders
20535	googleapi.Expand(req.URL, map[string]string{
20536		"merchantId": strconv.FormatUint(c.merchantId, 10),
20537		"accountId":  strconv.FormatUint(c.accountId, 10),
20538	})
20539	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20540}
20541
20542// Do executes the "content.liasettings.requestgmbaccess" call.
20543// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
20544// non-nil. Any non-2xx status code is an error. Response headers are in
20545// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
20546// (if a response was returned at all) in
20547// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20548// whether the returned error was because http.StatusNotModified was
20549// returned.
20550func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
20551	gensupport.SetOptions(c.urlParams_, opts...)
20552	res, err := c.doRequest("json")
20553	if res != nil && res.StatusCode == http.StatusNotModified {
20554		if res.Body != nil {
20555			res.Body.Close()
20556		}
20557		return nil, &googleapi.Error{
20558			Code:   res.StatusCode,
20559			Header: res.Header,
20560		}
20561	}
20562	if err != nil {
20563		return nil, err
20564	}
20565	defer googleapi.CloseBody(res)
20566	if err := googleapi.CheckResponse(res); err != nil {
20567		return nil, err
20568	}
20569	ret := &LiasettingsRequestGmbAccessResponse{
20570		ServerResponse: googleapi.ServerResponse{
20571			Header:         res.Header,
20572			HTTPStatusCode: res.StatusCode,
20573		},
20574	}
20575	target := &ret
20576	if err := gensupport.DecodeResponse(target, res); err != nil {
20577		return nil, err
20578	}
20579	return ret, nil
20580	// {
20581	//   "description": "Requests access to a specified Google My Business account.",
20582	//   "flatPath": "content/v2.1/{merchantId}/liasettings/{accountId}/requestgmbaccess",
20583	//   "httpMethod": "POST",
20584	//   "id": "content.liasettings.requestgmbaccess",
20585	//   "parameterOrder": [
20586	//     "merchantId",
20587	//     "accountId",
20588	//     "gmbEmail"
20589	//   ],
20590	//   "parameters": {
20591	//     "accountId": {
20592	//       "description": "The ID of the account for which GMB access is requested.",
20593	//       "format": "uint64",
20594	//       "location": "path",
20595	//       "required": true,
20596	//       "type": "string"
20597	//     },
20598	//     "gmbEmail": {
20599	//       "description": "The email of the Google My Business account.",
20600	//       "location": "query",
20601	//       "required": true,
20602	//       "type": "string"
20603	//     },
20604	//     "merchantId": {
20605	//       "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.",
20606	//       "format": "uint64",
20607	//       "location": "path",
20608	//       "required": true,
20609	//       "type": "string"
20610	//     }
20611	//   },
20612	//   "path": "content/v2.1/{merchantId}/liasettings/{accountId}/requestgmbaccess",
20613	//   "response": {
20614	//     "$ref": "LiasettingsRequestGmbAccessResponse"
20615	//   },
20616	//   "scopes": [
20617	//     "https://www.googleapis.com/auth/content"
20618	//   ]
20619	// }
20620
20621}
20622
20623// method id "content.liasettings.requestinventoryverification":
20624
20625type LiasettingsRequestinventoryverificationCall struct {
20626	s          *APIService
20627	merchantId uint64
20628	accountId  uint64
20629	country    string
20630	urlParams_ gensupport.URLParams
20631	ctx_       context.Context
20632	header_    http.Header
20633}
20634
20635// Requestinventoryverification: Requests inventory validation for the
20636// specified country.
20637func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
20638	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20639	c.merchantId = merchantId
20640	c.accountId = accountId
20641	c.country = country
20642	return c
20643}
20644
20645// Fields allows partial responses to be retrieved. See
20646// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20647// for more information.
20648func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
20649	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20650	return c
20651}
20652
20653// Context sets the context to be used in this call's Do method. Any
20654// pending HTTP request will be aborted if the provided context is
20655// canceled.
20656func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
20657	c.ctx_ = ctx
20658	return c
20659}
20660
20661// Header returns an http.Header that can be modified by the caller to
20662// add HTTP headers to the request.
20663func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
20664	if c.header_ == nil {
20665		c.header_ = make(http.Header)
20666	}
20667	return c.header_
20668}
20669
20670func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
20671	reqHeaders := make(http.Header)
20672	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
20673	for k, v := range c.header_ {
20674		reqHeaders[k] = v
20675	}
20676	reqHeaders.Set("User-Agent", c.s.userAgent())
20677	var body io.Reader = nil
20678	c.urlParams_.Set("alt", alt)
20679	c.urlParams_.Set("prettyPrint", "false")
20680	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
20681	urls += "?" + c.urlParams_.Encode()
20682	req, err := http.NewRequest("POST", urls, body)
20683	if err != nil {
20684		return nil, err
20685	}
20686	req.Header = reqHeaders
20687	googleapi.Expand(req.URL, map[string]string{
20688		"merchantId": strconv.FormatUint(c.merchantId, 10),
20689		"accountId":  strconv.FormatUint(c.accountId, 10),
20690		"country":    c.country,
20691	})
20692	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20693}
20694
20695// Do executes the "content.liasettings.requestinventoryverification" call.
20696// Exactly one of *LiasettingsRequestInventoryVerificationResponse or
20697// error will be non-nil. Any non-2xx status code is an error. Response
20698// headers are in either
20699// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
20700//  or (if a response was returned at all) in
20701// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20702// whether the returned error was because http.StatusNotModified was
20703// returned.
20704func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
20705	gensupport.SetOptions(c.urlParams_, opts...)
20706	res, err := c.doRequest("json")
20707	if res != nil && res.StatusCode == http.StatusNotModified {
20708		if res.Body != nil {
20709			res.Body.Close()
20710		}
20711		return nil, &googleapi.Error{
20712			Code:   res.StatusCode,
20713			Header: res.Header,
20714		}
20715	}
20716	if err != nil {
20717		return nil, err
20718	}
20719	defer googleapi.CloseBody(res)
20720	if err := googleapi.CheckResponse(res); err != nil {
20721		return nil, err
20722	}
20723	ret := &LiasettingsRequestInventoryVerificationResponse{
20724		ServerResponse: googleapi.ServerResponse{
20725			Header:         res.Header,
20726			HTTPStatusCode: res.StatusCode,
20727		},
20728	}
20729	target := &ret
20730	if err := gensupport.DecodeResponse(target, res); err != nil {
20731		return nil, err
20732	}
20733	return ret, nil
20734	// {
20735	//   "description": "Requests inventory validation for the specified country.",
20736	//   "flatPath": "content/v2.1/{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
20737	//   "httpMethod": "POST",
20738	//   "id": "content.liasettings.requestinventoryverification",
20739	//   "parameterOrder": [
20740	//     "merchantId",
20741	//     "accountId",
20742	//     "country"
20743	//   ],
20744	//   "parameters": {
20745	//     "accountId": {
20746	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20747	//       "format": "uint64",
20748	//       "location": "path",
20749	//       "required": true,
20750	//       "type": "string"
20751	//     },
20752	//     "country": {
20753	//       "description": "The country for which inventory validation is requested.",
20754	//       "location": "path",
20755	//       "required": true,
20756	//       "type": "string"
20757	//     },
20758	//     "merchantId": {
20759	//       "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.",
20760	//       "format": "uint64",
20761	//       "location": "path",
20762	//       "required": true,
20763	//       "type": "string"
20764	//     }
20765	//   },
20766	//   "path": "content/v2.1/{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
20767	//   "response": {
20768	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
20769	//   },
20770	//   "scopes": [
20771	//     "https://www.googleapis.com/auth/content"
20772	//   ]
20773	// }
20774
20775}
20776
20777// method id "content.liasettings.setinventoryverificationcontact":
20778
20779type LiasettingsSetinventoryverificationcontactCall struct {
20780	s          *APIService
20781	merchantId uint64
20782	accountId  uint64
20783	urlParams_ gensupport.URLParams
20784	ctx_       context.Context
20785	header_    http.Header
20786}
20787
20788// Setinventoryverificationcontact: Sets the inventory verification
20789// contract for the specified country.
20790func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, country string, language string, contactName string, contactEmail string) *LiasettingsSetinventoryverificationcontactCall {
20791	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20792	c.merchantId = merchantId
20793	c.accountId = accountId
20794	c.urlParams_.Set("country", country)
20795	c.urlParams_.Set("language", language)
20796	c.urlParams_.Set("contactName", contactName)
20797	c.urlParams_.Set("contactEmail", contactEmail)
20798	return c
20799}
20800
20801// Fields allows partial responses to be retrieved. See
20802// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20803// for more information.
20804func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
20805	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20806	return c
20807}
20808
20809// Context sets the context to be used in this call's Do method. Any
20810// pending HTTP request will be aborted if the provided context is
20811// canceled.
20812func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
20813	c.ctx_ = ctx
20814	return c
20815}
20816
20817// Header returns an http.Header that can be modified by the caller to
20818// add HTTP headers to the request.
20819func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
20820	if c.header_ == nil {
20821		c.header_ = make(http.Header)
20822	}
20823	return c.header_
20824}
20825
20826func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
20827	reqHeaders := make(http.Header)
20828	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
20829	for k, v := range c.header_ {
20830		reqHeaders[k] = v
20831	}
20832	reqHeaders.Set("User-Agent", c.s.userAgent())
20833	var body io.Reader = nil
20834	c.urlParams_.Set("alt", alt)
20835	c.urlParams_.Set("prettyPrint", "false")
20836	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
20837	urls += "?" + c.urlParams_.Encode()
20838	req, err := http.NewRequest("POST", urls, body)
20839	if err != nil {
20840		return nil, err
20841	}
20842	req.Header = reqHeaders
20843	googleapi.Expand(req.URL, map[string]string{
20844		"merchantId": strconv.FormatUint(c.merchantId, 10),
20845		"accountId":  strconv.FormatUint(c.accountId, 10),
20846	})
20847	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20848}
20849
20850// Do executes the "content.liasettings.setinventoryverificationcontact" call.
20851// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
20852// error will be non-nil. Any non-2xx status code is an error. Response
20853// headers are in either
20854// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
20855// der or (if a response was returned at all) in
20856// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20857// whether the returned error was because http.StatusNotModified was
20858// returned.
20859func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
20860	gensupport.SetOptions(c.urlParams_, opts...)
20861	res, err := c.doRequest("json")
20862	if res != nil && res.StatusCode == http.StatusNotModified {
20863		if res.Body != nil {
20864			res.Body.Close()
20865		}
20866		return nil, &googleapi.Error{
20867			Code:   res.StatusCode,
20868			Header: res.Header,
20869		}
20870	}
20871	if err != nil {
20872		return nil, err
20873	}
20874	defer googleapi.CloseBody(res)
20875	if err := googleapi.CheckResponse(res); err != nil {
20876		return nil, err
20877	}
20878	ret := &LiasettingsSetInventoryVerificationContactResponse{
20879		ServerResponse: googleapi.ServerResponse{
20880			Header:         res.Header,
20881			HTTPStatusCode: res.StatusCode,
20882		},
20883	}
20884	target := &ret
20885	if err := gensupport.DecodeResponse(target, res); err != nil {
20886		return nil, err
20887	}
20888	return ret, nil
20889	// {
20890	//   "description": "Sets the inventory verification contract for the specified country.",
20891	//   "flatPath": "content/v2.1/{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
20892	//   "httpMethod": "POST",
20893	//   "id": "content.liasettings.setinventoryverificationcontact",
20894	//   "parameterOrder": [
20895	//     "merchantId",
20896	//     "accountId",
20897	//     "country",
20898	//     "language",
20899	//     "contactName",
20900	//     "contactEmail"
20901	//   ],
20902	//   "parameters": {
20903	//     "accountId": {
20904	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20905	//       "format": "uint64",
20906	//       "location": "path",
20907	//       "required": true,
20908	//       "type": "string"
20909	//     },
20910	//     "contactEmail": {
20911	//       "description": "The email of the inventory verification contact.",
20912	//       "location": "query",
20913	//       "required": true,
20914	//       "type": "string"
20915	//     },
20916	//     "contactName": {
20917	//       "description": "The name of the inventory verification contact.",
20918	//       "location": "query",
20919	//       "required": true,
20920	//       "type": "string"
20921	//     },
20922	//     "country": {
20923	//       "description": "The country for which inventory verification is requested.",
20924	//       "location": "query",
20925	//       "required": true,
20926	//       "type": "string"
20927	//     },
20928	//     "language": {
20929	//       "description": "The language for which inventory verification is requested.",
20930	//       "location": "query",
20931	//       "required": true,
20932	//       "type": "string"
20933	//     },
20934	//     "merchantId": {
20935	//       "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.",
20936	//       "format": "uint64",
20937	//       "location": "path",
20938	//       "required": true,
20939	//       "type": "string"
20940	//     }
20941	//   },
20942	//   "path": "content/v2.1/{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
20943	//   "response": {
20944	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
20945	//   },
20946	//   "scopes": [
20947	//     "https://www.googleapis.com/auth/content"
20948	//   ]
20949	// }
20950
20951}
20952
20953// method id "content.liasettings.setposdataprovider":
20954
20955type LiasettingsSetposdataproviderCall struct {
20956	s          *APIService
20957	merchantId uint64
20958	accountId  uint64
20959	urlParams_ gensupport.URLParams
20960	ctx_       context.Context
20961	header_    http.Header
20962}
20963
20964// Setposdataprovider: Sets the POS data provider for the specified
20965// country.
20966func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
20967	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20968	c.merchantId = merchantId
20969	c.accountId = accountId
20970	c.urlParams_.Set("country", country)
20971	return c
20972}
20973
20974// PosDataProviderId sets the optional parameter "posDataProviderId":
20975// The ID of POS data provider.
20976func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
20977	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
20978	return c
20979}
20980
20981// PosExternalAccountId sets the optional parameter
20982// "posExternalAccountId": The account ID by which this merchant is
20983// known to the POS data provider.
20984func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
20985	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
20986	return c
20987}
20988
20989// Fields allows partial responses to be retrieved. See
20990// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20991// for more information.
20992func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
20993	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20994	return c
20995}
20996
20997// Context sets the context to be used in this call's Do method. Any
20998// pending HTTP request will be aborted if the provided context is
20999// canceled.
21000func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
21001	c.ctx_ = ctx
21002	return c
21003}
21004
21005// Header returns an http.Header that can be modified by the caller to
21006// add HTTP headers to the request.
21007func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
21008	if c.header_ == nil {
21009		c.header_ = make(http.Header)
21010	}
21011	return c.header_
21012}
21013
21014func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
21015	reqHeaders := make(http.Header)
21016	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
21017	for k, v := range c.header_ {
21018		reqHeaders[k] = v
21019	}
21020	reqHeaders.Set("User-Agent", c.s.userAgent())
21021	var body io.Reader = nil
21022	c.urlParams_.Set("alt", alt)
21023	c.urlParams_.Set("prettyPrint", "false")
21024	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/liasettings/{accountId}/setposdataprovider")
21025	urls += "?" + c.urlParams_.Encode()
21026	req, err := http.NewRequest("POST", urls, body)
21027	if err != nil {
21028		return nil, err
21029	}
21030	req.Header = reqHeaders
21031	googleapi.Expand(req.URL, map[string]string{
21032		"merchantId": strconv.FormatUint(c.merchantId, 10),
21033		"accountId":  strconv.FormatUint(c.accountId, 10),
21034	})
21035	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21036}
21037
21038// Do executes the "content.liasettings.setposdataprovider" call.
21039// Exactly one of *LiasettingsSetPosDataProviderResponse or error will
21040// be non-nil. Any non-2xx status code is an error. Response headers are
21041// in either
21042// *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
21043// response was returned at all) in error.(*googleapi.Error).Header. Use
21044// googleapi.IsNotModified to check whether the returned error was
21045// because http.StatusNotModified was returned.
21046func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
21047	gensupport.SetOptions(c.urlParams_, opts...)
21048	res, err := c.doRequest("json")
21049	if res != nil && res.StatusCode == http.StatusNotModified {
21050		if res.Body != nil {
21051			res.Body.Close()
21052		}
21053		return nil, &googleapi.Error{
21054			Code:   res.StatusCode,
21055			Header: res.Header,
21056		}
21057	}
21058	if err != nil {
21059		return nil, err
21060	}
21061	defer googleapi.CloseBody(res)
21062	if err := googleapi.CheckResponse(res); err != nil {
21063		return nil, err
21064	}
21065	ret := &LiasettingsSetPosDataProviderResponse{
21066		ServerResponse: googleapi.ServerResponse{
21067			Header:         res.Header,
21068			HTTPStatusCode: res.StatusCode,
21069		},
21070	}
21071	target := &ret
21072	if err := gensupport.DecodeResponse(target, res); err != nil {
21073		return nil, err
21074	}
21075	return ret, nil
21076	// {
21077	//   "description": "Sets the POS data provider for the specified country.",
21078	//   "flatPath": "content/v2.1/{merchantId}/liasettings/{accountId}/setposdataprovider",
21079	//   "httpMethod": "POST",
21080	//   "id": "content.liasettings.setposdataprovider",
21081	//   "parameterOrder": [
21082	//     "merchantId",
21083	//     "accountId",
21084	//     "country"
21085	//   ],
21086	//   "parameters": {
21087	//     "accountId": {
21088	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
21089	//       "format": "uint64",
21090	//       "location": "path",
21091	//       "required": true,
21092	//       "type": "string"
21093	//     },
21094	//     "country": {
21095	//       "description": "The country for which the POS data provider is selected.",
21096	//       "location": "query",
21097	//       "required": true,
21098	//       "type": "string"
21099	//     },
21100	//     "merchantId": {
21101	//       "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.",
21102	//       "format": "uint64",
21103	//       "location": "path",
21104	//       "required": true,
21105	//       "type": "string"
21106	//     },
21107	//     "posDataProviderId": {
21108	//       "description": "The ID of POS data provider.",
21109	//       "format": "uint64",
21110	//       "location": "query",
21111	//       "type": "string"
21112	//     },
21113	//     "posExternalAccountId": {
21114	//       "description": "The account ID by which this merchant is known to the POS data provider.",
21115	//       "location": "query",
21116	//       "type": "string"
21117	//     }
21118	//   },
21119	//   "path": "content/v2.1/{merchantId}/liasettings/{accountId}/setposdataprovider",
21120	//   "response": {
21121	//     "$ref": "LiasettingsSetPosDataProviderResponse"
21122	//   },
21123	//   "scopes": [
21124	//     "https://www.googleapis.com/auth/content"
21125	//   ]
21126	// }
21127
21128}
21129
21130// method id "content.liasettings.update":
21131
21132type LiasettingsUpdateCall struct {
21133	s           *APIService
21134	merchantId  uint64
21135	accountId   uint64
21136	liasettings *LiaSettings
21137	urlParams_  gensupport.URLParams
21138	ctx_        context.Context
21139	header_     http.Header
21140}
21141
21142// Update: Updates the LIA settings of the account. Any fields that are
21143// not provided are deleted from the resource.
21144func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
21145	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21146	c.merchantId = merchantId
21147	c.accountId = accountId
21148	c.liasettings = liasettings
21149	return c
21150}
21151
21152// Fields allows partial responses to be retrieved. See
21153// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21154// for more information.
21155func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
21156	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21157	return c
21158}
21159
21160// Context sets the context to be used in this call's Do method. Any
21161// pending HTTP request will be aborted if the provided context is
21162// canceled.
21163func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
21164	c.ctx_ = ctx
21165	return c
21166}
21167
21168// Header returns an http.Header that can be modified by the caller to
21169// add HTTP headers to the request.
21170func (c *LiasettingsUpdateCall) Header() http.Header {
21171	if c.header_ == nil {
21172		c.header_ = make(http.Header)
21173	}
21174	return c.header_
21175}
21176
21177func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
21178	reqHeaders := make(http.Header)
21179	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
21180	for k, v := range c.header_ {
21181		reqHeaders[k] = v
21182	}
21183	reqHeaders.Set("User-Agent", c.s.userAgent())
21184	var body io.Reader = nil
21185	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
21186	if err != nil {
21187		return nil, err
21188	}
21189	reqHeaders.Set("Content-Type", "application/json")
21190	c.urlParams_.Set("alt", alt)
21191	c.urlParams_.Set("prettyPrint", "false")
21192	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/liasettings/{accountId}")
21193	urls += "?" + c.urlParams_.Encode()
21194	req, err := http.NewRequest("PUT", urls, body)
21195	if err != nil {
21196		return nil, err
21197	}
21198	req.Header = reqHeaders
21199	googleapi.Expand(req.URL, map[string]string{
21200		"merchantId": strconv.FormatUint(c.merchantId, 10),
21201		"accountId":  strconv.FormatUint(c.accountId, 10),
21202	})
21203	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21204}
21205
21206// Do executes the "content.liasettings.update" call.
21207// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
21208// status code is an error. Response headers are in either
21209// *LiaSettings.ServerResponse.Header or (if a response was returned at
21210// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21211// to check whether the returned error was because
21212// http.StatusNotModified was returned.
21213func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
21214	gensupport.SetOptions(c.urlParams_, opts...)
21215	res, err := c.doRequest("json")
21216	if res != nil && res.StatusCode == http.StatusNotModified {
21217		if res.Body != nil {
21218			res.Body.Close()
21219		}
21220		return nil, &googleapi.Error{
21221			Code:   res.StatusCode,
21222			Header: res.Header,
21223		}
21224	}
21225	if err != nil {
21226		return nil, err
21227	}
21228	defer googleapi.CloseBody(res)
21229	if err := googleapi.CheckResponse(res); err != nil {
21230		return nil, err
21231	}
21232	ret := &LiaSettings{
21233		ServerResponse: googleapi.ServerResponse{
21234			Header:         res.Header,
21235			HTTPStatusCode: res.StatusCode,
21236		},
21237	}
21238	target := &ret
21239	if err := gensupport.DecodeResponse(target, res); err != nil {
21240		return nil, err
21241	}
21242	return ret, nil
21243	// {
21244	//   "description": "Updates the LIA settings of the account. Any fields that are not provided are deleted from the resource.",
21245	//   "flatPath": "content/v2.1/{merchantId}/liasettings/{accountId}",
21246	//   "httpMethod": "PUT",
21247	//   "id": "content.liasettings.update",
21248	//   "parameterOrder": [
21249	//     "merchantId",
21250	//     "accountId"
21251	//   ],
21252	//   "parameters": {
21253	//     "accountId": {
21254	//       "description": "The ID of the account for which to get or update LIA settings.",
21255	//       "format": "uint64",
21256	//       "location": "path",
21257	//       "required": true,
21258	//       "type": "string"
21259	//     },
21260	//     "merchantId": {
21261	//       "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.",
21262	//       "format": "uint64",
21263	//       "location": "path",
21264	//       "required": true,
21265	//       "type": "string"
21266	//     }
21267	//   },
21268	//   "path": "content/v2.1/{merchantId}/liasettings/{accountId}",
21269	//   "request": {
21270	//     "$ref": "LiaSettings"
21271	//   },
21272	//   "response": {
21273	//     "$ref": "LiaSettings"
21274	//   },
21275	//   "scopes": [
21276	//     "https://www.googleapis.com/auth/content"
21277	//   ]
21278	// }
21279
21280}
21281
21282// method id "content.localinventory.custombatch":
21283
21284type LocalinventoryCustombatchCall struct {
21285	s                                *APIService
21286	localinventorycustombatchrequest *LocalinventoryCustomBatchRequest
21287	urlParams_                       gensupport.URLParams
21288	ctx_                             context.Context
21289	header_                          http.Header
21290}
21291
21292// Custombatch: Updates local inventory for multiple products or stores
21293// in a single request.
21294func (r *LocalinventoryService) Custombatch(localinventorycustombatchrequest *LocalinventoryCustomBatchRequest) *LocalinventoryCustombatchCall {
21295	c := &LocalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21296	c.localinventorycustombatchrequest = localinventorycustombatchrequest
21297	return c
21298}
21299
21300// Fields allows partial responses to be retrieved. See
21301// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21302// for more information.
21303func (c *LocalinventoryCustombatchCall) Fields(s ...googleapi.Field) *LocalinventoryCustombatchCall {
21304	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21305	return c
21306}
21307
21308// Context sets the context to be used in this call's Do method. Any
21309// pending HTTP request will be aborted if the provided context is
21310// canceled.
21311func (c *LocalinventoryCustombatchCall) Context(ctx context.Context) *LocalinventoryCustombatchCall {
21312	c.ctx_ = ctx
21313	return c
21314}
21315
21316// Header returns an http.Header that can be modified by the caller to
21317// add HTTP headers to the request.
21318func (c *LocalinventoryCustombatchCall) Header() http.Header {
21319	if c.header_ == nil {
21320		c.header_ = make(http.Header)
21321	}
21322	return c.header_
21323}
21324
21325func (c *LocalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
21326	reqHeaders := make(http.Header)
21327	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
21328	for k, v := range c.header_ {
21329		reqHeaders[k] = v
21330	}
21331	reqHeaders.Set("User-Agent", c.s.userAgent())
21332	var body io.Reader = nil
21333	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventorycustombatchrequest)
21334	if err != nil {
21335		return nil, err
21336	}
21337	reqHeaders.Set("Content-Type", "application/json")
21338	c.urlParams_.Set("alt", alt)
21339	c.urlParams_.Set("prettyPrint", "false")
21340	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/localinventory/batch")
21341	urls += "?" + c.urlParams_.Encode()
21342	req, err := http.NewRequest("POST", urls, body)
21343	if err != nil {
21344		return nil, err
21345	}
21346	req.Header = reqHeaders
21347	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21348}
21349
21350// Do executes the "content.localinventory.custombatch" call.
21351// Exactly one of *LocalinventoryCustomBatchResponse or error will be
21352// non-nil. Any non-2xx status code is an error. Response headers are in
21353// either *LocalinventoryCustomBatchResponse.ServerResponse.Header or
21354// (if a response was returned at all) in
21355// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21356// whether the returned error was because http.StatusNotModified was
21357// returned.
21358func (c *LocalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*LocalinventoryCustomBatchResponse, error) {
21359	gensupport.SetOptions(c.urlParams_, opts...)
21360	res, err := c.doRequest("json")
21361	if res != nil && res.StatusCode == http.StatusNotModified {
21362		if res.Body != nil {
21363			res.Body.Close()
21364		}
21365		return nil, &googleapi.Error{
21366			Code:   res.StatusCode,
21367			Header: res.Header,
21368		}
21369	}
21370	if err != nil {
21371		return nil, err
21372	}
21373	defer googleapi.CloseBody(res)
21374	if err := googleapi.CheckResponse(res); err != nil {
21375		return nil, err
21376	}
21377	ret := &LocalinventoryCustomBatchResponse{
21378		ServerResponse: googleapi.ServerResponse{
21379			Header:         res.Header,
21380			HTTPStatusCode: res.StatusCode,
21381		},
21382	}
21383	target := &ret
21384	if err := gensupport.DecodeResponse(target, res); err != nil {
21385		return nil, err
21386	}
21387	return ret, nil
21388	// {
21389	//   "description": "Updates local inventory for multiple products or stores in a single request.",
21390	//   "flatPath": "content/v2.1/localinventory/batch",
21391	//   "httpMethod": "POST",
21392	//   "id": "content.localinventory.custombatch",
21393	//   "parameterOrder": [],
21394	//   "parameters": {},
21395	//   "path": "content/v2.1/localinventory/batch",
21396	//   "request": {
21397	//     "$ref": "LocalinventoryCustomBatchRequest"
21398	//   },
21399	//   "response": {
21400	//     "$ref": "LocalinventoryCustomBatchResponse"
21401	//   },
21402	//   "scopes": [
21403	//     "https://www.googleapis.com/auth/content"
21404	//   ]
21405	// }
21406
21407}
21408
21409// method id "content.localinventory.insert":
21410
21411type LocalinventoryInsertCall struct {
21412	s              *APIService
21413	merchantId     uint64
21414	productId      string
21415	localinventory *LocalInventory
21416	urlParams_     gensupport.URLParams
21417	ctx_           context.Context
21418	header_        http.Header
21419}
21420
21421// Insert: Updates the local inventory of a product in your Merchant
21422// Center account.
21423func (r *LocalinventoryService) Insert(merchantId uint64, productId string, localinventory *LocalInventory) *LocalinventoryInsertCall {
21424	c := &LocalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21425	c.merchantId = merchantId
21426	c.productId = productId
21427	c.localinventory = localinventory
21428	return c
21429}
21430
21431// Fields allows partial responses to be retrieved. See
21432// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21433// for more information.
21434func (c *LocalinventoryInsertCall) Fields(s ...googleapi.Field) *LocalinventoryInsertCall {
21435	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21436	return c
21437}
21438
21439// Context sets the context to be used in this call's Do method. Any
21440// pending HTTP request will be aborted if the provided context is
21441// canceled.
21442func (c *LocalinventoryInsertCall) Context(ctx context.Context) *LocalinventoryInsertCall {
21443	c.ctx_ = ctx
21444	return c
21445}
21446
21447// Header returns an http.Header that can be modified by the caller to
21448// add HTTP headers to the request.
21449func (c *LocalinventoryInsertCall) Header() http.Header {
21450	if c.header_ == nil {
21451		c.header_ = make(http.Header)
21452	}
21453	return c.header_
21454}
21455
21456func (c *LocalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
21457	reqHeaders := make(http.Header)
21458	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
21459	for k, v := range c.header_ {
21460		reqHeaders[k] = v
21461	}
21462	reqHeaders.Set("User-Agent", c.s.userAgent())
21463	var body io.Reader = nil
21464	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventory)
21465	if err != nil {
21466		return nil, err
21467	}
21468	reqHeaders.Set("Content-Type", "application/json")
21469	c.urlParams_.Set("alt", alt)
21470	c.urlParams_.Set("prettyPrint", "false")
21471	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/products/{productId}/localinventory")
21472	urls += "?" + c.urlParams_.Encode()
21473	req, err := http.NewRequest("POST", urls, body)
21474	if err != nil {
21475		return nil, err
21476	}
21477	req.Header = reqHeaders
21478	googleapi.Expand(req.URL, map[string]string{
21479		"merchantId": strconv.FormatUint(c.merchantId, 10),
21480		"productId":  c.productId,
21481	})
21482	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21483}
21484
21485// Do executes the "content.localinventory.insert" call.
21486// Exactly one of *LocalInventory or error will be non-nil. Any non-2xx
21487// status code is an error. Response headers are in either
21488// *LocalInventory.ServerResponse.Header or (if a response was returned
21489// at all) in error.(*googleapi.Error).Header. Use
21490// googleapi.IsNotModified to check whether the returned error was
21491// because http.StatusNotModified was returned.
21492func (c *LocalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*LocalInventory, error) {
21493	gensupport.SetOptions(c.urlParams_, opts...)
21494	res, err := c.doRequest("json")
21495	if res != nil && res.StatusCode == http.StatusNotModified {
21496		if res.Body != nil {
21497			res.Body.Close()
21498		}
21499		return nil, &googleapi.Error{
21500			Code:   res.StatusCode,
21501			Header: res.Header,
21502		}
21503	}
21504	if err != nil {
21505		return nil, err
21506	}
21507	defer googleapi.CloseBody(res)
21508	if err := googleapi.CheckResponse(res); err != nil {
21509		return nil, err
21510	}
21511	ret := &LocalInventory{
21512		ServerResponse: googleapi.ServerResponse{
21513			Header:         res.Header,
21514			HTTPStatusCode: res.StatusCode,
21515		},
21516	}
21517	target := &ret
21518	if err := gensupport.DecodeResponse(target, res); err != nil {
21519		return nil, err
21520	}
21521	return ret, nil
21522	// {
21523	//   "description": "Updates the local inventory of a product in your Merchant Center account.",
21524	//   "flatPath": "content/v2.1/{merchantId}/products/{productId}/localinventory",
21525	//   "httpMethod": "POST",
21526	//   "id": "content.localinventory.insert",
21527	//   "parameterOrder": [
21528	//     "merchantId",
21529	//     "productId"
21530	//   ],
21531	//   "parameters": {
21532	//     "merchantId": {
21533	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
21534	//       "format": "uint64",
21535	//       "location": "path",
21536	//       "required": true,
21537	//       "type": "string"
21538	//     },
21539	//     "productId": {
21540	//       "description": "The REST ID of the product for which to update local inventory.",
21541	//       "location": "path",
21542	//       "required": true,
21543	//       "type": "string"
21544	//     }
21545	//   },
21546	//   "path": "content/v2.1/{merchantId}/products/{productId}/localinventory",
21547	//   "request": {
21548	//     "$ref": "LocalInventory"
21549	//   },
21550	//   "response": {
21551	//     "$ref": "LocalInventory"
21552	//   },
21553	//   "scopes": [
21554	//     "https://www.googleapis.com/auth/content"
21555	//   ]
21556	// }
21557
21558}
21559
21560// method id "content.orderinvoices.createchargeinvoice":
21561
21562type OrderinvoicesCreatechargeinvoiceCall struct {
21563	s                                       *APIService
21564	merchantId                              uint64
21565	orderId                                 string
21566	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
21567	urlParams_                              gensupport.URLParams
21568	ctx_                                    context.Context
21569	header_                                 http.Header
21570}
21571
21572// Createchargeinvoice: Creates a charge invoice for a shipment group,
21573// and triggers a charge capture for orderinvoice enabled orders.
21574func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
21575	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21576	c.merchantId = merchantId
21577	c.orderId = orderId
21578	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
21579	return c
21580}
21581
21582// Fields allows partial responses to be retrieved. See
21583// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21584// for more information.
21585func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
21586	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21587	return c
21588}
21589
21590// Context sets the context to be used in this call's Do method. Any
21591// pending HTTP request will be aborted if the provided context is
21592// canceled.
21593func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
21594	c.ctx_ = ctx
21595	return c
21596}
21597
21598// Header returns an http.Header that can be modified by the caller to
21599// add HTTP headers to the request.
21600func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
21601	if c.header_ == nil {
21602		c.header_ = make(http.Header)
21603	}
21604	return c.header_
21605}
21606
21607func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
21608	reqHeaders := make(http.Header)
21609	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
21610	for k, v := range c.header_ {
21611		reqHeaders[k] = v
21612	}
21613	reqHeaders.Set("User-Agent", c.s.userAgent())
21614	var body io.Reader = nil
21615	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
21616	if err != nil {
21617		return nil, err
21618	}
21619	reqHeaders.Set("Content-Type", "application/json")
21620	c.urlParams_.Set("alt", alt)
21621	c.urlParams_.Set("prettyPrint", "false")
21622	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
21623	urls += "?" + c.urlParams_.Encode()
21624	req, err := http.NewRequest("POST", urls, body)
21625	if err != nil {
21626		return nil, err
21627	}
21628	req.Header = reqHeaders
21629	googleapi.Expand(req.URL, map[string]string{
21630		"merchantId": strconv.FormatUint(c.merchantId, 10),
21631		"orderId":    c.orderId,
21632	})
21633	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21634}
21635
21636// Do executes the "content.orderinvoices.createchargeinvoice" call.
21637// Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
21638// will be non-nil. Any non-2xx status code is an error. Response
21639// headers are in either
21640// *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
21641// (if a response was returned at all) in
21642// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21643// whether the returned error was because http.StatusNotModified was
21644// returned.
21645func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
21646	gensupport.SetOptions(c.urlParams_, opts...)
21647	res, err := c.doRequest("json")
21648	if res != nil && res.StatusCode == http.StatusNotModified {
21649		if res.Body != nil {
21650			res.Body.Close()
21651		}
21652		return nil, &googleapi.Error{
21653			Code:   res.StatusCode,
21654			Header: res.Header,
21655		}
21656	}
21657	if err != nil {
21658		return nil, err
21659	}
21660	defer googleapi.CloseBody(res)
21661	if err := googleapi.CheckResponse(res); err != nil {
21662		return nil, err
21663	}
21664	ret := &OrderinvoicesCreateChargeInvoiceResponse{
21665		ServerResponse: googleapi.ServerResponse{
21666			Header:         res.Header,
21667			HTTPStatusCode: res.StatusCode,
21668		},
21669	}
21670	target := &ret
21671	if err := gensupport.DecodeResponse(target, res); err != nil {
21672		return nil, err
21673	}
21674	return ret, nil
21675	// {
21676	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
21677	//   "flatPath": "content/v2.1/{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
21678	//   "httpMethod": "POST",
21679	//   "id": "content.orderinvoices.createchargeinvoice",
21680	//   "parameterOrder": [
21681	//     "merchantId",
21682	//     "orderId"
21683	//   ],
21684	//   "parameters": {
21685	//     "merchantId": {
21686	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21687	//       "format": "uint64",
21688	//       "location": "path",
21689	//       "required": true,
21690	//       "type": "string"
21691	//     },
21692	//     "orderId": {
21693	//       "description": "The ID of the order.",
21694	//       "location": "path",
21695	//       "required": true,
21696	//       "type": "string"
21697	//     }
21698	//   },
21699	//   "path": "content/v2.1/{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
21700	//   "request": {
21701	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
21702	//   },
21703	//   "response": {
21704	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
21705	//   },
21706	//   "scopes": [
21707	//     "https://www.googleapis.com/auth/content"
21708	//   ]
21709	// }
21710
21711}
21712
21713// method id "content.orderinvoices.createrefundinvoice":
21714
21715type OrderinvoicesCreaterefundinvoiceCall struct {
21716	s                                       *APIService
21717	merchantId                              uint64
21718	orderId                                 string
21719	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
21720	urlParams_                              gensupport.URLParams
21721	ctx_                                    context.Context
21722	header_                                 http.Header
21723}
21724
21725// Createrefundinvoice: Creates a refund invoice for one or more
21726// shipment groups, and triggers a refund for orderinvoice enabled
21727// orders. This can only be used for line items that have previously
21728// been charged using `createChargeInvoice`. All amounts (except for the
21729// summary) are incremental with respect to the previous invoice.
21730func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
21731	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21732	c.merchantId = merchantId
21733	c.orderId = orderId
21734	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
21735	return c
21736}
21737
21738// Fields allows partial responses to be retrieved. See
21739// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21740// for more information.
21741func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
21742	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21743	return c
21744}
21745
21746// Context sets the context to be used in this call's Do method. Any
21747// pending HTTP request will be aborted if the provided context is
21748// canceled.
21749func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
21750	c.ctx_ = ctx
21751	return c
21752}
21753
21754// Header returns an http.Header that can be modified by the caller to
21755// add HTTP headers to the request.
21756func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
21757	if c.header_ == nil {
21758		c.header_ = make(http.Header)
21759	}
21760	return c.header_
21761}
21762
21763func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
21764	reqHeaders := make(http.Header)
21765	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
21766	for k, v := range c.header_ {
21767		reqHeaders[k] = v
21768	}
21769	reqHeaders.Set("User-Agent", c.s.userAgent())
21770	var body io.Reader = nil
21771	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
21772	if err != nil {
21773		return nil, err
21774	}
21775	reqHeaders.Set("Content-Type", "application/json")
21776	c.urlParams_.Set("alt", alt)
21777	c.urlParams_.Set("prettyPrint", "false")
21778	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
21779	urls += "?" + c.urlParams_.Encode()
21780	req, err := http.NewRequest("POST", urls, body)
21781	if err != nil {
21782		return nil, err
21783	}
21784	req.Header = reqHeaders
21785	googleapi.Expand(req.URL, map[string]string{
21786		"merchantId": strconv.FormatUint(c.merchantId, 10),
21787		"orderId":    c.orderId,
21788	})
21789	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21790}
21791
21792// Do executes the "content.orderinvoices.createrefundinvoice" call.
21793// Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
21794// will be non-nil. Any non-2xx status code is an error. Response
21795// headers are in either
21796// *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
21797// (if a response was returned at all) in
21798// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21799// whether the returned error was because http.StatusNotModified was
21800// returned.
21801func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
21802	gensupport.SetOptions(c.urlParams_, opts...)
21803	res, err := c.doRequest("json")
21804	if res != nil && res.StatusCode == http.StatusNotModified {
21805		if res.Body != nil {
21806			res.Body.Close()
21807		}
21808		return nil, &googleapi.Error{
21809			Code:   res.StatusCode,
21810			Header: res.Header,
21811		}
21812	}
21813	if err != nil {
21814		return nil, err
21815	}
21816	defer googleapi.CloseBody(res)
21817	if err := googleapi.CheckResponse(res); err != nil {
21818		return nil, err
21819	}
21820	ret := &OrderinvoicesCreateRefundInvoiceResponse{
21821		ServerResponse: googleapi.ServerResponse{
21822			Header:         res.Header,
21823			HTTPStatusCode: res.StatusCode,
21824		},
21825	}
21826	target := &ret
21827	if err := gensupport.DecodeResponse(target, res); err != nil {
21828		return nil, err
21829	}
21830	return ret, nil
21831	// {
21832	//   "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.",
21833	//   "flatPath": "content/v2.1/{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
21834	//   "httpMethod": "POST",
21835	//   "id": "content.orderinvoices.createrefundinvoice",
21836	//   "parameterOrder": [
21837	//     "merchantId",
21838	//     "orderId"
21839	//   ],
21840	//   "parameters": {
21841	//     "merchantId": {
21842	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21843	//       "format": "uint64",
21844	//       "location": "path",
21845	//       "required": true,
21846	//       "type": "string"
21847	//     },
21848	//     "orderId": {
21849	//       "description": "The ID of the order.",
21850	//       "location": "path",
21851	//       "required": true,
21852	//       "type": "string"
21853	//     }
21854	//   },
21855	//   "path": "content/v2.1/{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
21856	//   "request": {
21857	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
21858	//   },
21859	//   "response": {
21860	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
21861	//   },
21862	//   "scopes": [
21863	//     "https://www.googleapis.com/auth/content"
21864	//   ]
21865	// }
21866
21867}
21868
21869// method id "content.orderreports.listdisbursements":
21870
21871type OrderreportsListdisbursementsCall struct {
21872	s            *APIService
21873	merchantId   uint64
21874	urlParams_   gensupport.URLParams
21875	ifNoneMatch_ string
21876	ctx_         context.Context
21877	header_      http.Header
21878}
21879
21880// Listdisbursements: Retrieves a report for disbursements from your
21881// Merchant Center account.
21882func (r *OrderreportsService) Listdisbursements(merchantId uint64) *OrderreportsListdisbursementsCall {
21883	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21884	c.merchantId = merchantId
21885	return c
21886}
21887
21888// DisbursementEndDate sets the optional parameter
21889// "disbursementEndDate": The last date which disbursements occurred. In
21890// ISO 8601 format. Default: current date.
21891func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
21892	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
21893	return c
21894}
21895
21896// DisbursementStartDate sets the optional parameter
21897// "disbursementStartDate": The first date which disbursements occurred.
21898// In ISO 8601 format.
21899func (c *OrderreportsListdisbursementsCall) DisbursementStartDate(disbursementStartDate string) *OrderreportsListdisbursementsCall {
21900	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
21901	return c
21902}
21903
21904// MaxResults sets the optional parameter "maxResults": The maximum
21905// number of disbursements to return in the response, used for paging.
21906func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
21907	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21908	return c
21909}
21910
21911// PageToken sets the optional parameter "pageToken": The token returned
21912// by the previous request.
21913func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
21914	c.urlParams_.Set("pageToken", pageToken)
21915	return c
21916}
21917
21918// Fields allows partial responses to be retrieved. See
21919// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21920// for more information.
21921func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
21922	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21923	return c
21924}
21925
21926// IfNoneMatch sets the optional parameter which makes the operation
21927// fail if the object's ETag matches the given value. This is useful for
21928// getting updates only after the object has changed since the last
21929// request. Use googleapi.IsNotModified to check whether the response
21930// error from Do is the result of In-None-Match.
21931func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
21932	c.ifNoneMatch_ = entityTag
21933	return c
21934}
21935
21936// Context sets the context to be used in this call's Do method. Any
21937// pending HTTP request will be aborted if the provided context is
21938// canceled.
21939func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
21940	c.ctx_ = ctx
21941	return c
21942}
21943
21944// Header returns an http.Header that can be modified by the caller to
21945// add HTTP headers to the request.
21946func (c *OrderreportsListdisbursementsCall) Header() http.Header {
21947	if c.header_ == nil {
21948		c.header_ = make(http.Header)
21949	}
21950	return c.header_
21951}
21952
21953func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
21954	reqHeaders := make(http.Header)
21955	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
21956	for k, v := range c.header_ {
21957		reqHeaders[k] = v
21958	}
21959	reqHeaders.Set("User-Agent", c.s.userAgent())
21960	if c.ifNoneMatch_ != "" {
21961		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21962	}
21963	var body io.Reader = nil
21964	c.urlParams_.Set("alt", alt)
21965	c.urlParams_.Set("prettyPrint", "false")
21966	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderreports/disbursements")
21967	urls += "?" + c.urlParams_.Encode()
21968	req, err := http.NewRequest("GET", urls, body)
21969	if err != nil {
21970		return nil, err
21971	}
21972	req.Header = reqHeaders
21973	googleapi.Expand(req.URL, map[string]string{
21974		"merchantId": strconv.FormatUint(c.merchantId, 10),
21975	})
21976	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21977}
21978
21979// Do executes the "content.orderreports.listdisbursements" call.
21980// Exactly one of *OrderreportsListDisbursementsResponse or error will
21981// be non-nil. Any non-2xx status code is an error. Response headers are
21982// in either
21983// *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
21984// response was returned at all) in error.(*googleapi.Error).Header. Use
21985// googleapi.IsNotModified to check whether the returned error was
21986// because http.StatusNotModified was returned.
21987func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
21988	gensupport.SetOptions(c.urlParams_, opts...)
21989	res, err := c.doRequest("json")
21990	if res != nil && res.StatusCode == http.StatusNotModified {
21991		if res.Body != nil {
21992			res.Body.Close()
21993		}
21994		return nil, &googleapi.Error{
21995			Code:   res.StatusCode,
21996			Header: res.Header,
21997		}
21998	}
21999	if err != nil {
22000		return nil, err
22001	}
22002	defer googleapi.CloseBody(res)
22003	if err := googleapi.CheckResponse(res); err != nil {
22004		return nil, err
22005	}
22006	ret := &OrderreportsListDisbursementsResponse{
22007		ServerResponse: googleapi.ServerResponse{
22008			Header:         res.Header,
22009			HTTPStatusCode: res.StatusCode,
22010		},
22011	}
22012	target := &ret
22013	if err := gensupport.DecodeResponse(target, res); err != nil {
22014		return nil, err
22015	}
22016	return ret, nil
22017	// {
22018	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
22019	//   "flatPath": "content/v2.1/{merchantId}/orderreports/disbursements",
22020	//   "httpMethod": "GET",
22021	//   "id": "content.orderreports.listdisbursements",
22022	//   "parameterOrder": [
22023	//     "merchantId"
22024	//   ],
22025	//   "parameters": {
22026	//     "disbursementEndDate": {
22027	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
22028	//       "location": "query",
22029	//       "type": "string"
22030	//     },
22031	//     "disbursementStartDate": {
22032	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
22033	//       "location": "query",
22034	//       "type": "string"
22035	//     },
22036	//     "maxResults": {
22037	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
22038	//       "format": "uint32",
22039	//       "location": "query",
22040	//       "type": "integer"
22041	//     },
22042	//     "merchantId": {
22043	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22044	//       "format": "uint64",
22045	//       "location": "path",
22046	//       "required": true,
22047	//       "type": "string"
22048	//     },
22049	//     "pageToken": {
22050	//       "description": "The token returned by the previous request.",
22051	//       "location": "query",
22052	//       "type": "string"
22053	//     }
22054	//   },
22055	//   "path": "content/v2.1/{merchantId}/orderreports/disbursements",
22056	//   "response": {
22057	//     "$ref": "OrderreportsListDisbursementsResponse"
22058	//   },
22059	//   "scopes": [
22060	//     "https://www.googleapis.com/auth/content"
22061	//   ]
22062	// }
22063
22064}
22065
22066// Pages invokes f for each page of results.
22067// A non-nil error returned from f will halt the iteration.
22068// The provided context supersedes any context provided to the Context method.
22069func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
22070	c.ctx_ = ctx
22071	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22072	for {
22073		x, err := c.Do()
22074		if err != nil {
22075			return err
22076		}
22077		if err := f(x); err != nil {
22078			return err
22079		}
22080		if x.NextPageToken == "" {
22081			return nil
22082		}
22083		c.PageToken(x.NextPageToken)
22084	}
22085}
22086
22087// method id "content.orderreports.listtransactions":
22088
22089type OrderreportsListtransactionsCall struct {
22090	s              *APIService
22091	merchantId     uint64
22092	disbursementId string
22093	urlParams_     gensupport.URLParams
22094	ifNoneMatch_   string
22095	ctx_           context.Context
22096	header_        http.Header
22097}
22098
22099// Listtransactions: Retrieves a list of transactions for a disbursement
22100// from your Merchant Center account.
22101func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string) *OrderreportsListtransactionsCall {
22102	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22103	c.merchantId = merchantId
22104	c.disbursementId = disbursementId
22105	return c
22106}
22107
22108// MaxResults sets the optional parameter "maxResults": The maximum
22109// number of disbursements to return in the response, used for paging.
22110func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
22111	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
22112	return c
22113}
22114
22115// PageToken sets the optional parameter "pageToken": The token returned
22116// by the previous request.
22117func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
22118	c.urlParams_.Set("pageToken", pageToken)
22119	return c
22120}
22121
22122// TransactionEndDate sets the optional parameter "transactionEndDate":
22123// The last date in which transaction occurred. In ISO 8601 format.
22124// Default: current date.
22125func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
22126	c.urlParams_.Set("transactionEndDate", transactionEndDate)
22127	return c
22128}
22129
22130// TransactionStartDate sets the optional parameter
22131// "transactionStartDate": The first date in which transaction occurred.
22132// In ISO 8601 format.
22133func (c *OrderreportsListtransactionsCall) TransactionStartDate(transactionStartDate string) *OrderreportsListtransactionsCall {
22134	c.urlParams_.Set("transactionStartDate", transactionStartDate)
22135	return c
22136}
22137
22138// Fields allows partial responses to be retrieved. See
22139// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22140// for more information.
22141func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
22142	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22143	return c
22144}
22145
22146// IfNoneMatch sets the optional parameter which makes the operation
22147// fail if the object's ETag matches the given value. This is useful for
22148// getting updates only after the object has changed since the last
22149// request. Use googleapi.IsNotModified to check whether the response
22150// error from Do is the result of In-None-Match.
22151func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
22152	c.ifNoneMatch_ = entityTag
22153	return c
22154}
22155
22156// Context sets the context to be used in this call's Do method. Any
22157// pending HTTP request will be aborted if the provided context is
22158// canceled.
22159func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
22160	c.ctx_ = ctx
22161	return c
22162}
22163
22164// Header returns an http.Header that can be modified by the caller to
22165// add HTTP headers to the request.
22166func (c *OrderreportsListtransactionsCall) Header() http.Header {
22167	if c.header_ == nil {
22168		c.header_ = make(http.Header)
22169	}
22170	return c.header_
22171}
22172
22173func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
22174	reqHeaders := make(http.Header)
22175	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
22176	for k, v := range c.header_ {
22177		reqHeaders[k] = v
22178	}
22179	reqHeaders.Set("User-Agent", c.s.userAgent())
22180	if c.ifNoneMatch_ != "" {
22181		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22182	}
22183	var body io.Reader = nil
22184	c.urlParams_.Set("alt", alt)
22185	c.urlParams_.Set("prettyPrint", "false")
22186	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
22187	urls += "?" + c.urlParams_.Encode()
22188	req, err := http.NewRequest("GET", urls, body)
22189	if err != nil {
22190		return nil, err
22191	}
22192	req.Header = reqHeaders
22193	googleapi.Expand(req.URL, map[string]string{
22194		"merchantId":     strconv.FormatUint(c.merchantId, 10),
22195		"disbursementId": c.disbursementId,
22196	})
22197	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22198}
22199
22200// Do executes the "content.orderreports.listtransactions" call.
22201// Exactly one of *OrderreportsListTransactionsResponse or error will be
22202// non-nil. Any non-2xx status code is an error. Response headers are in
22203// either *OrderreportsListTransactionsResponse.ServerResponse.Header or
22204// (if a response was returned at all) in
22205// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22206// whether the returned error was because http.StatusNotModified was
22207// returned.
22208func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
22209	gensupport.SetOptions(c.urlParams_, opts...)
22210	res, err := c.doRequest("json")
22211	if res != nil && res.StatusCode == http.StatusNotModified {
22212		if res.Body != nil {
22213			res.Body.Close()
22214		}
22215		return nil, &googleapi.Error{
22216			Code:   res.StatusCode,
22217			Header: res.Header,
22218		}
22219	}
22220	if err != nil {
22221		return nil, err
22222	}
22223	defer googleapi.CloseBody(res)
22224	if err := googleapi.CheckResponse(res); err != nil {
22225		return nil, err
22226	}
22227	ret := &OrderreportsListTransactionsResponse{
22228		ServerResponse: googleapi.ServerResponse{
22229			Header:         res.Header,
22230			HTTPStatusCode: res.StatusCode,
22231		},
22232	}
22233	target := &ret
22234	if err := gensupport.DecodeResponse(target, res); err != nil {
22235		return nil, err
22236	}
22237	return ret, nil
22238	// {
22239	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
22240	//   "flatPath": "content/v2.1/{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
22241	//   "httpMethod": "GET",
22242	//   "id": "content.orderreports.listtransactions",
22243	//   "parameterOrder": [
22244	//     "merchantId",
22245	//     "disbursementId"
22246	//   ],
22247	//   "parameters": {
22248	//     "disbursementId": {
22249	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
22250	//       "location": "path",
22251	//       "required": true,
22252	//       "type": "string"
22253	//     },
22254	//     "maxResults": {
22255	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
22256	//       "format": "uint32",
22257	//       "location": "query",
22258	//       "type": "integer"
22259	//     },
22260	//     "merchantId": {
22261	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22262	//       "format": "uint64",
22263	//       "location": "path",
22264	//       "required": true,
22265	//       "type": "string"
22266	//     },
22267	//     "pageToken": {
22268	//       "description": "The token returned by the previous request.",
22269	//       "location": "query",
22270	//       "type": "string"
22271	//     },
22272	//     "transactionEndDate": {
22273	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
22274	//       "location": "query",
22275	//       "type": "string"
22276	//     },
22277	//     "transactionStartDate": {
22278	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
22279	//       "location": "query",
22280	//       "type": "string"
22281	//     }
22282	//   },
22283	//   "path": "content/v2.1/{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
22284	//   "response": {
22285	//     "$ref": "OrderreportsListTransactionsResponse"
22286	//   },
22287	//   "scopes": [
22288	//     "https://www.googleapis.com/auth/content"
22289	//   ]
22290	// }
22291
22292}
22293
22294// Pages invokes f for each page of results.
22295// A non-nil error returned from f will halt the iteration.
22296// The provided context supersedes any context provided to the Context method.
22297func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
22298	c.ctx_ = ctx
22299	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22300	for {
22301		x, err := c.Do()
22302		if err != nil {
22303			return err
22304		}
22305		if err := f(x); err != nil {
22306			return err
22307		}
22308		if x.NextPageToken == "" {
22309			return nil
22310		}
22311		c.PageToken(x.NextPageToken)
22312	}
22313}
22314
22315// method id "content.orderreturns.acknowledge":
22316
22317type OrderreturnsAcknowledgeCall struct {
22318	s                              *APIService
22319	merchantId                     uint64
22320	returnId                       string
22321	orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest
22322	urlParams_                     gensupport.URLParams
22323	ctx_                           context.Context
22324	header_                        http.Header
22325}
22326
22327// Acknowledge: Acks an order return in your Merchant Center account.
22328func (r *OrderreturnsService) Acknowledge(merchantId uint64, returnId string, orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest) *OrderreturnsAcknowledgeCall {
22329	c := &OrderreturnsAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22330	c.merchantId = merchantId
22331	c.returnId = returnId
22332	c.orderreturnsacknowledgerequest = orderreturnsacknowledgerequest
22333	return c
22334}
22335
22336// Fields allows partial responses to be retrieved. See
22337// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22338// for more information.
22339func (c *OrderreturnsAcknowledgeCall) Fields(s ...googleapi.Field) *OrderreturnsAcknowledgeCall {
22340	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22341	return c
22342}
22343
22344// Context sets the context to be used in this call's Do method. Any
22345// pending HTTP request will be aborted if the provided context is
22346// canceled.
22347func (c *OrderreturnsAcknowledgeCall) Context(ctx context.Context) *OrderreturnsAcknowledgeCall {
22348	c.ctx_ = ctx
22349	return c
22350}
22351
22352// Header returns an http.Header that can be modified by the caller to
22353// add HTTP headers to the request.
22354func (c *OrderreturnsAcknowledgeCall) Header() http.Header {
22355	if c.header_ == nil {
22356		c.header_ = make(http.Header)
22357	}
22358	return c.header_
22359}
22360
22361func (c *OrderreturnsAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
22362	reqHeaders := make(http.Header)
22363	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
22364	for k, v := range c.header_ {
22365		reqHeaders[k] = v
22366	}
22367	reqHeaders.Set("User-Agent", c.s.userAgent())
22368	var body io.Reader = nil
22369	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsacknowledgerequest)
22370	if err != nil {
22371		return nil, err
22372	}
22373	reqHeaders.Set("Content-Type", "application/json")
22374	c.urlParams_.Set("alt", alt)
22375	c.urlParams_.Set("prettyPrint", "false")
22376	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderreturns/{returnId}/acknowledge")
22377	urls += "?" + c.urlParams_.Encode()
22378	req, err := http.NewRequest("POST", urls, body)
22379	if err != nil {
22380		return nil, err
22381	}
22382	req.Header = reqHeaders
22383	googleapi.Expand(req.URL, map[string]string{
22384		"merchantId": strconv.FormatUint(c.merchantId, 10),
22385		"returnId":   c.returnId,
22386	})
22387	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22388}
22389
22390// Do executes the "content.orderreturns.acknowledge" call.
22391// Exactly one of *OrderreturnsAcknowledgeResponse or error will be
22392// non-nil. Any non-2xx status code is an error. Response headers are in
22393// either *OrderreturnsAcknowledgeResponse.ServerResponse.Header or (if
22394// a response was returned at all) in error.(*googleapi.Error).Header.
22395// Use googleapi.IsNotModified to check whether the returned error was
22396// because http.StatusNotModified was returned.
22397func (c *OrderreturnsAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrderreturnsAcknowledgeResponse, error) {
22398	gensupport.SetOptions(c.urlParams_, opts...)
22399	res, err := c.doRequest("json")
22400	if res != nil && res.StatusCode == http.StatusNotModified {
22401		if res.Body != nil {
22402			res.Body.Close()
22403		}
22404		return nil, &googleapi.Error{
22405			Code:   res.StatusCode,
22406			Header: res.Header,
22407		}
22408	}
22409	if err != nil {
22410		return nil, err
22411	}
22412	defer googleapi.CloseBody(res)
22413	if err := googleapi.CheckResponse(res); err != nil {
22414		return nil, err
22415	}
22416	ret := &OrderreturnsAcknowledgeResponse{
22417		ServerResponse: googleapi.ServerResponse{
22418			Header:         res.Header,
22419			HTTPStatusCode: res.StatusCode,
22420		},
22421	}
22422	target := &ret
22423	if err := gensupport.DecodeResponse(target, res); err != nil {
22424		return nil, err
22425	}
22426	return ret, nil
22427	// {
22428	//   "description": "Acks an order return in your Merchant Center account.",
22429	//   "flatPath": "content/v2.1/{merchantId}/orderreturns/{returnId}/acknowledge",
22430	//   "httpMethod": "POST",
22431	//   "id": "content.orderreturns.acknowledge",
22432	//   "parameterOrder": [
22433	//     "merchantId",
22434	//     "returnId"
22435	//   ],
22436	//   "parameters": {
22437	//     "merchantId": {
22438	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22439	//       "format": "uint64",
22440	//       "location": "path",
22441	//       "required": true,
22442	//       "type": "string"
22443	//     },
22444	//     "returnId": {
22445	//       "description": "The ID of the return.",
22446	//       "location": "path",
22447	//       "required": true,
22448	//       "type": "string"
22449	//     }
22450	//   },
22451	//   "path": "content/v2.1/{merchantId}/orderreturns/{returnId}/acknowledge",
22452	//   "request": {
22453	//     "$ref": "OrderreturnsAcknowledgeRequest"
22454	//   },
22455	//   "response": {
22456	//     "$ref": "OrderreturnsAcknowledgeResponse"
22457	//   },
22458	//   "scopes": [
22459	//     "https://www.googleapis.com/auth/content"
22460	//   ]
22461	// }
22462
22463}
22464
22465// method id "content.orderreturns.createorderreturn":
22466
22467type OrderreturnsCreateorderreturnCall struct {
22468	s                                    *APIService
22469	merchantId                           uint64
22470	orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest
22471	urlParams_                           gensupport.URLParams
22472	ctx_                                 context.Context
22473	header_                              http.Header
22474}
22475
22476// Createorderreturn: Create return in your Merchant Center account.
22477func (r *OrderreturnsService) Createorderreturn(merchantId uint64, orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest) *OrderreturnsCreateorderreturnCall {
22478	c := &OrderreturnsCreateorderreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22479	c.merchantId = merchantId
22480	c.orderreturnscreateorderreturnrequest = orderreturnscreateorderreturnrequest
22481	return c
22482}
22483
22484// Fields allows partial responses to be retrieved. See
22485// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22486// for more information.
22487func (c *OrderreturnsCreateorderreturnCall) Fields(s ...googleapi.Field) *OrderreturnsCreateorderreturnCall {
22488	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22489	return c
22490}
22491
22492// Context sets the context to be used in this call's Do method. Any
22493// pending HTTP request will be aborted if the provided context is
22494// canceled.
22495func (c *OrderreturnsCreateorderreturnCall) Context(ctx context.Context) *OrderreturnsCreateorderreturnCall {
22496	c.ctx_ = ctx
22497	return c
22498}
22499
22500// Header returns an http.Header that can be modified by the caller to
22501// add HTTP headers to the request.
22502func (c *OrderreturnsCreateorderreturnCall) Header() http.Header {
22503	if c.header_ == nil {
22504		c.header_ = make(http.Header)
22505	}
22506	return c.header_
22507}
22508
22509func (c *OrderreturnsCreateorderreturnCall) doRequest(alt string) (*http.Response, error) {
22510	reqHeaders := make(http.Header)
22511	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
22512	for k, v := range c.header_ {
22513		reqHeaders[k] = v
22514	}
22515	reqHeaders.Set("User-Agent", c.s.userAgent())
22516	var body io.Reader = nil
22517	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnscreateorderreturnrequest)
22518	if err != nil {
22519		return nil, err
22520	}
22521	reqHeaders.Set("Content-Type", "application/json")
22522	c.urlParams_.Set("alt", alt)
22523	c.urlParams_.Set("prettyPrint", "false")
22524	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderreturns/createOrderReturn")
22525	urls += "?" + c.urlParams_.Encode()
22526	req, err := http.NewRequest("POST", urls, body)
22527	if err != nil {
22528		return nil, err
22529	}
22530	req.Header = reqHeaders
22531	googleapi.Expand(req.URL, map[string]string{
22532		"merchantId": strconv.FormatUint(c.merchantId, 10),
22533	})
22534	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22535}
22536
22537// Do executes the "content.orderreturns.createorderreturn" call.
22538// Exactly one of *OrderreturnsCreateOrderReturnResponse or error will
22539// be non-nil. Any non-2xx status code is an error. Response headers are
22540// in either
22541// *OrderreturnsCreateOrderReturnResponse.ServerResponse.Header or (if a
22542// response was returned at all) in error.(*googleapi.Error).Header. Use
22543// googleapi.IsNotModified to check whether the returned error was
22544// because http.StatusNotModified was returned.
22545func (c *OrderreturnsCreateorderreturnCall) Do(opts ...googleapi.CallOption) (*OrderreturnsCreateOrderReturnResponse, error) {
22546	gensupport.SetOptions(c.urlParams_, opts...)
22547	res, err := c.doRequest("json")
22548	if res != nil && res.StatusCode == http.StatusNotModified {
22549		if res.Body != nil {
22550			res.Body.Close()
22551		}
22552		return nil, &googleapi.Error{
22553			Code:   res.StatusCode,
22554			Header: res.Header,
22555		}
22556	}
22557	if err != nil {
22558		return nil, err
22559	}
22560	defer googleapi.CloseBody(res)
22561	if err := googleapi.CheckResponse(res); err != nil {
22562		return nil, err
22563	}
22564	ret := &OrderreturnsCreateOrderReturnResponse{
22565		ServerResponse: googleapi.ServerResponse{
22566			Header:         res.Header,
22567			HTTPStatusCode: res.StatusCode,
22568		},
22569	}
22570	target := &ret
22571	if err := gensupport.DecodeResponse(target, res); err != nil {
22572		return nil, err
22573	}
22574	return ret, nil
22575	// {
22576	//   "description": "Create return in your Merchant Center account.",
22577	//   "flatPath": "content/v2.1/{merchantId}/orderreturns/createOrderReturn",
22578	//   "httpMethod": "POST",
22579	//   "id": "content.orderreturns.createorderreturn",
22580	//   "parameterOrder": [
22581	//     "merchantId"
22582	//   ],
22583	//   "parameters": {
22584	//     "merchantId": {
22585	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22586	//       "format": "uint64",
22587	//       "location": "path",
22588	//       "required": true,
22589	//       "type": "string"
22590	//     }
22591	//   },
22592	//   "path": "content/v2.1/{merchantId}/orderreturns/createOrderReturn",
22593	//   "request": {
22594	//     "$ref": "OrderreturnsCreateOrderReturnRequest"
22595	//   },
22596	//   "response": {
22597	//     "$ref": "OrderreturnsCreateOrderReturnResponse"
22598	//   },
22599	//   "scopes": [
22600	//     "https://www.googleapis.com/auth/content"
22601	//   ]
22602	// }
22603
22604}
22605
22606// method id "content.orderreturns.get":
22607
22608type OrderreturnsGetCall struct {
22609	s            *APIService
22610	merchantId   uint64
22611	returnId     string
22612	urlParams_   gensupport.URLParams
22613	ifNoneMatch_ string
22614	ctx_         context.Context
22615	header_      http.Header
22616}
22617
22618// Get: Retrieves an order return from your Merchant Center account.
22619func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
22620	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22621	c.merchantId = merchantId
22622	c.returnId = returnId
22623	return c
22624}
22625
22626// Fields allows partial responses to be retrieved. See
22627// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22628// for more information.
22629func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
22630	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22631	return c
22632}
22633
22634// IfNoneMatch sets the optional parameter which makes the operation
22635// fail if the object's ETag matches the given value. This is useful for
22636// getting updates only after the object has changed since the last
22637// request. Use googleapi.IsNotModified to check whether the response
22638// error from Do is the result of In-None-Match.
22639func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
22640	c.ifNoneMatch_ = entityTag
22641	return c
22642}
22643
22644// Context sets the context to be used in this call's Do method. Any
22645// pending HTTP request will be aborted if the provided context is
22646// canceled.
22647func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
22648	c.ctx_ = ctx
22649	return c
22650}
22651
22652// Header returns an http.Header that can be modified by the caller to
22653// add HTTP headers to the request.
22654func (c *OrderreturnsGetCall) Header() http.Header {
22655	if c.header_ == nil {
22656		c.header_ = make(http.Header)
22657	}
22658	return c.header_
22659}
22660
22661func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
22662	reqHeaders := make(http.Header)
22663	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
22664	for k, v := range c.header_ {
22665		reqHeaders[k] = v
22666	}
22667	reqHeaders.Set("User-Agent", c.s.userAgent())
22668	if c.ifNoneMatch_ != "" {
22669		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22670	}
22671	var body io.Reader = nil
22672	c.urlParams_.Set("alt", alt)
22673	c.urlParams_.Set("prettyPrint", "false")
22674	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderreturns/{returnId}")
22675	urls += "?" + c.urlParams_.Encode()
22676	req, err := http.NewRequest("GET", urls, body)
22677	if err != nil {
22678		return nil, err
22679	}
22680	req.Header = reqHeaders
22681	googleapi.Expand(req.URL, map[string]string{
22682		"merchantId": strconv.FormatUint(c.merchantId, 10),
22683		"returnId":   c.returnId,
22684	})
22685	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22686}
22687
22688// Do executes the "content.orderreturns.get" call.
22689// Exactly one of *MerchantOrderReturn or error will be non-nil. Any
22690// non-2xx status code is an error. Response headers are in either
22691// *MerchantOrderReturn.ServerResponse.Header or (if a response was
22692// returned at all) in error.(*googleapi.Error).Header. Use
22693// googleapi.IsNotModified to check whether the returned error was
22694// because http.StatusNotModified was returned.
22695func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
22696	gensupport.SetOptions(c.urlParams_, opts...)
22697	res, err := c.doRequest("json")
22698	if res != nil && res.StatusCode == http.StatusNotModified {
22699		if res.Body != nil {
22700			res.Body.Close()
22701		}
22702		return nil, &googleapi.Error{
22703			Code:   res.StatusCode,
22704			Header: res.Header,
22705		}
22706	}
22707	if err != nil {
22708		return nil, err
22709	}
22710	defer googleapi.CloseBody(res)
22711	if err := googleapi.CheckResponse(res); err != nil {
22712		return nil, err
22713	}
22714	ret := &MerchantOrderReturn{
22715		ServerResponse: googleapi.ServerResponse{
22716			Header:         res.Header,
22717			HTTPStatusCode: res.StatusCode,
22718		},
22719	}
22720	target := &ret
22721	if err := gensupport.DecodeResponse(target, res); err != nil {
22722		return nil, err
22723	}
22724	return ret, nil
22725	// {
22726	//   "description": "Retrieves an order return from your Merchant Center account.",
22727	//   "flatPath": "content/v2.1/{merchantId}/orderreturns/{returnId}",
22728	//   "httpMethod": "GET",
22729	//   "id": "content.orderreturns.get",
22730	//   "parameterOrder": [
22731	//     "merchantId",
22732	//     "returnId"
22733	//   ],
22734	//   "parameters": {
22735	//     "merchantId": {
22736	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22737	//       "format": "uint64",
22738	//       "location": "path",
22739	//       "required": true,
22740	//       "type": "string"
22741	//     },
22742	//     "returnId": {
22743	//       "description": "Merchant order return ID generated by Google.",
22744	//       "location": "path",
22745	//       "required": true,
22746	//       "type": "string"
22747	//     }
22748	//   },
22749	//   "path": "content/v2.1/{merchantId}/orderreturns/{returnId}",
22750	//   "response": {
22751	//     "$ref": "MerchantOrderReturn"
22752	//   },
22753	//   "scopes": [
22754	//     "https://www.googleapis.com/auth/content"
22755	//   ]
22756	// }
22757
22758}
22759
22760// method id "content.orderreturns.list":
22761
22762type OrderreturnsListCall struct {
22763	s            *APIService
22764	merchantId   uint64
22765	urlParams_   gensupport.URLParams
22766	ifNoneMatch_ string
22767	ctx_         context.Context
22768	header_      http.Header
22769}
22770
22771// List: Lists order returns in your Merchant Center account.
22772func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
22773	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22774	c.merchantId = merchantId
22775	return c
22776}
22777
22778// Acknowledged sets the optional parameter "acknowledged": Obtains
22779// order returns that match the acknowledgement status. When set to
22780// true, obtains order returns that have been acknowledged. When false,
22781// obtains order returns that have not been acknowledged. When not
22782// provided, obtains order returns regardless of their acknowledgement
22783// status. We recommend using this filter set to `false`, in conjunction
22784// with the `acknowledge` call, such that only un-acknowledged order
22785// returns are returned.
22786func (c *OrderreturnsListCall) Acknowledged(acknowledged bool) *OrderreturnsListCall {
22787	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
22788	return c
22789}
22790
22791// CreatedEndDate sets the optional parameter "createdEndDate": Obtains
22792// order returns created before this date (inclusively), in ISO 8601
22793// format.
22794func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
22795	c.urlParams_.Set("createdEndDate", createdEndDate)
22796	return c
22797}
22798
22799// CreatedStartDate sets the optional parameter "createdStartDate":
22800// Obtains order returns created after this date (inclusively), in ISO
22801// 8601 format.
22802func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
22803	c.urlParams_.Set("createdStartDate", createdStartDate)
22804	return c
22805}
22806
22807// GoogleOrderIds sets the optional parameter "googleOrderIds": Obtains
22808// order returns with the specified order ids. If this parameter is
22809// provided, createdStartDate, createdEndDate, shipmentType,
22810// shipmentStatus, shipmentState and acknowledged parameters must be not
22811// set. Note: if googleOrderId and shipmentTrackingNumber parameters are
22812// provided, the obtained results will include all order returns that
22813// either match the specified order id or the specified tracking number.
22814func (c *OrderreturnsListCall) GoogleOrderIds(googleOrderIds ...string) *OrderreturnsListCall {
22815	c.urlParams_.SetMulti("googleOrderIds", append([]string{}, googleOrderIds...))
22816	return c
22817}
22818
22819// MaxResults sets the optional parameter "maxResults": The maximum
22820// number of order returns to return in the response, used for paging.
22821// The default value is 25 returns per page, and the maximum allowed
22822// value is 250 returns per page.
22823func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
22824	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
22825	return c
22826}
22827
22828// OrderBy sets the optional parameter "orderBy": Return the results in
22829// the specified order.
22830//
22831// Possible values:
22832//   "RETURN_CREATION_TIME_DESC"
22833//   "RETURN_CREATION_TIME_ASC"
22834func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
22835	c.urlParams_.Set("orderBy", orderBy)
22836	return c
22837}
22838
22839// PageToken sets the optional parameter "pageToken": The token returned
22840// by the previous request.
22841func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
22842	c.urlParams_.Set("pageToken", pageToken)
22843	return c
22844}
22845
22846// ShipmentStates sets the optional parameter "shipmentStates": Obtains
22847// order returns that match any shipment state provided in this
22848// parameter. When this parameter is not provided, order returns are
22849// obtained regardless of their shipment states.
22850//
22851// Possible values:
22852//   "NEW"
22853//   "SHIPPED"
22854//   "COMPLETED"
22855//   "UNDELIVERABLE"
22856//   "PENDING"
22857func (c *OrderreturnsListCall) ShipmentStates(shipmentStates ...string) *OrderreturnsListCall {
22858	c.urlParams_.SetMulti("shipmentStates", append([]string{}, shipmentStates...))
22859	return c
22860}
22861
22862// ShipmentStatus sets the optional parameter "shipmentStatus": Obtains
22863// order returns that match any shipment status provided in this
22864// parameter. When this parameter is not provided, order returns are
22865// obtained regardless of their shipment statuses.
22866//
22867// Possible values:
22868//   "NEW"
22869//   "IN_PROGRESS"
22870//   "PROCESSED"
22871func (c *OrderreturnsListCall) ShipmentStatus(shipmentStatus ...string) *OrderreturnsListCall {
22872	c.urlParams_.SetMulti("shipmentStatus", append([]string{}, shipmentStatus...))
22873	return c
22874}
22875
22876// ShipmentTrackingNumbers sets the optional parameter
22877// "shipmentTrackingNumbers": Obtains order returns with the specified
22878// tracking numbers. If this parameter is provided, createdStartDate,
22879// createdEndDate, shipmentType, shipmentStatus, shipmentState and
22880// acknowledged parameters must be not set. Note: if googleOrderId and
22881// shipmentTrackingNumber parameters are provided, the obtained results
22882// will include all order returns that either match the specified order
22883// id or the specified tracking number.
22884func (c *OrderreturnsListCall) ShipmentTrackingNumbers(shipmentTrackingNumbers ...string) *OrderreturnsListCall {
22885	c.urlParams_.SetMulti("shipmentTrackingNumbers", append([]string{}, shipmentTrackingNumbers...))
22886	return c
22887}
22888
22889// ShipmentTypes sets the optional parameter "shipmentTypes": Obtains
22890// order returns that match any shipment type provided in this
22891// parameter. When this parameter is not provided, order returns are
22892// obtained regardless of their shipment types.
22893//
22894// Possible values:
22895//   "BY_MAIL"
22896//   "RETURNLESS"
22897//   "CONTACT_CUSTOMER_SUPPORT"
22898func (c *OrderreturnsListCall) ShipmentTypes(shipmentTypes ...string) *OrderreturnsListCall {
22899	c.urlParams_.SetMulti("shipmentTypes", append([]string{}, shipmentTypes...))
22900	return c
22901}
22902
22903// Fields allows partial responses to be retrieved. See
22904// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22905// for more information.
22906func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
22907	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22908	return c
22909}
22910
22911// IfNoneMatch sets the optional parameter which makes the operation
22912// fail if the object's ETag matches the given value. This is useful for
22913// getting updates only after the object has changed since the last
22914// request. Use googleapi.IsNotModified to check whether the response
22915// error from Do is the result of In-None-Match.
22916func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
22917	c.ifNoneMatch_ = entityTag
22918	return c
22919}
22920
22921// Context sets the context to be used in this call's Do method. Any
22922// pending HTTP request will be aborted if the provided context is
22923// canceled.
22924func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
22925	c.ctx_ = ctx
22926	return c
22927}
22928
22929// Header returns an http.Header that can be modified by the caller to
22930// add HTTP headers to the request.
22931func (c *OrderreturnsListCall) Header() http.Header {
22932	if c.header_ == nil {
22933		c.header_ = make(http.Header)
22934	}
22935	return c.header_
22936}
22937
22938func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
22939	reqHeaders := make(http.Header)
22940	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
22941	for k, v := range c.header_ {
22942		reqHeaders[k] = v
22943	}
22944	reqHeaders.Set("User-Agent", c.s.userAgent())
22945	if c.ifNoneMatch_ != "" {
22946		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22947	}
22948	var body io.Reader = nil
22949	c.urlParams_.Set("alt", alt)
22950	c.urlParams_.Set("prettyPrint", "false")
22951	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderreturns")
22952	urls += "?" + c.urlParams_.Encode()
22953	req, err := http.NewRequest("GET", urls, body)
22954	if err != nil {
22955		return nil, err
22956	}
22957	req.Header = reqHeaders
22958	googleapi.Expand(req.URL, map[string]string{
22959		"merchantId": strconv.FormatUint(c.merchantId, 10),
22960	})
22961	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22962}
22963
22964// Do executes the "content.orderreturns.list" call.
22965// Exactly one of *OrderreturnsListResponse or error will be non-nil.
22966// Any non-2xx status code is an error. Response headers are in either
22967// *OrderreturnsListResponse.ServerResponse.Header or (if a response was
22968// returned at all) in error.(*googleapi.Error).Header. Use
22969// googleapi.IsNotModified to check whether the returned error was
22970// because http.StatusNotModified was returned.
22971func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
22972	gensupport.SetOptions(c.urlParams_, opts...)
22973	res, err := c.doRequest("json")
22974	if res != nil && res.StatusCode == http.StatusNotModified {
22975		if res.Body != nil {
22976			res.Body.Close()
22977		}
22978		return nil, &googleapi.Error{
22979			Code:   res.StatusCode,
22980			Header: res.Header,
22981		}
22982	}
22983	if err != nil {
22984		return nil, err
22985	}
22986	defer googleapi.CloseBody(res)
22987	if err := googleapi.CheckResponse(res); err != nil {
22988		return nil, err
22989	}
22990	ret := &OrderreturnsListResponse{
22991		ServerResponse: googleapi.ServerResponse{
22992			Header:         res.Header,
22993			HTTPStatusCode: res.StatusCode,
22994		},
22995	}
22996	target := &ret
22997	if err := gensupport.DecodeResponse(target, res); err != nil {
22998		return nil, err
22999	}
23000	return ret, nil
23001	// {
23002	//   "description": "Lists order returns in your Merchant Center account.",
23003	//   "flatPath": "content/v2.1/{merchantId}/orderreturns",
23004	//   "httpMethod": "GET",
23005	//   "id": "content.orderreturns.list",
23006	//   "parameterOrder": [
23007	//     "merchantId"
23008	//   ],
23009	//   "parameters": {
23010	//     "acknowledged": {
23011	//       "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. ",
23012	//       "location": "query",
23013	//       "type": "boolean"
23014	//     },
23015	//     "createdEndDate": {
23016	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
23017	//       "location": "query",
23018	//       "type": "string"
23019	//     },
23020	//     "createdStartDate": {
23021	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
23022	//       "location": "query",
23023	//       "type": "string"
23024	//     },
23025	//     "googleOrderIds": {
23026	//       "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.",
23027	//       "location": "query",
23028	//       "repeated": true,
23029	//       "type": "string"
23030	//     },
23031	//     "maxResults": {
23032	//       "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.",
23033	//       "format": "uint32",
23034	//       "location": "query",
23035	//       "type": "integer"
23036	//     },
23037	//     "merchantId": {
23038	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23039	//       "format": "uint64",
23040	//       "location": "path",
23041	//       "required": true,
23042	//       "type": "string"
23043	//     },
23044	//     "orderBy": {
23045	//       "description": "Return the results in the specified order.",
23046	//       "enum": [
23047	//         "RETURN_CREATION_TIME_DESC",
23048	//         "RETURN_CREATION_TIME_ASC"
23049	//       ],
23050	//       "enumDescriptions": [
23051	//         "",
23052	//         ""
23053	//       ],
23054	//       "location": "query",
23055	//       "type": "string"
23056	//     },
23057	//     "pageToken": {
23058	//       "description": "The token returned by the previous request.",
23059	//       "location": "query",
23060	//       "type": "string"
23061	//     },
23062	//     "shipmentStates": {
23063	//       "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.",
23064	//       "enum": [
23065	//         "NEW",
23066	//         "SHIPPED",
23067	//         "COMPLETED",
23068	//         "UNDELIVERABLE",
23069	//         "PENDING"
23070	//       ],
23071	//       "enumDescriptions": [
23072	//         "",
23073	//         "",
23074	//         "",
23075	//         "",
23076	//         ""
23077	//       ],
23078	//       "location": "query",
23079	//       "repeated": true,
23080	//       "type": "string"
23081	//     },
23082	//     "shipmentStatus": {
23083	//       "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.",
23084	//       "enum": [
23085	//         "NEW",
23086	//         "IN_PROGRESS",
23087	//         "PROCESSED"
23088	//       ],
23089	//       "enumDescriptions": [
23090	//         "",
23091	//         "",
23092	//         ""
23093	//       ],
23094	//       "location": "query",
23095	//       "repeated": true,
23096	//       "type": "string"
23097	//     },
23098	//     "shipmentTrackingNumbers": {
23099	//       "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.",
23100	//       "location": "query",
23101	//       "repeated": true,
23102	//       "type": "string"
23103	//     },
23104	//     "shipmentTypes": {
23105	//       "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.",
23106	//       "enum": [
23107	//         "BY_MAIL",
23108	//         "RETURNLESS",
23109	//         "CONTACT_CUSTOMER_SUPPORT"
23110	//       ],
23111	//       "enumDescriptions": [
23112	//         "",
23113	//         "",
23114	//         ""
23115	//       ],
23116	//       "location": "query",
23117	//       "repeated": true,
23118	//       "type": "string"
23119	//     }
23120	//   },
23121	//   "path": "content/v2.1/{merchantId}/orderreturns",
23122	//   "response": {
23123	//     "$ref": "OrderreturnsListResponse"
23124	//   },
23125	//   "scopes": [
23126	//     "https://www.googleapis.com/auth/content"
23127	//   ]
23128	// }
23129
23130}
23131
23132// Pages invokes f for each page of results.
23133// A non-nil error returned from f will halt the iteration.
23134// The provided context supersedes any context provided to the Context method.
23135func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
23136	c.ctx_ = ctx
23137	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23138	for {
23139		x, err := c.Do()
23140		if err != nil {
23141			return err
23142		}
23143		if err := f(x); err != nil {
23144			return err
23145		}
23146		if x.NextPageToken == "" {
23147			return nil
23148		}
23149		c.PageToken(x.NextPageToken)
23150	}
23151}
23152
23153// method id "content.orderreturns.process":
23154
23155type OrderreturnsProcessCall struct {
23156	s                          *APIService
23157	merchantId                 uint64
23158	returnId                   string
23159	orderreturnsprocessrequest *OrderreturnsProcessRequest
23160	urlParams_                 gensupport.URLParams
23161	ctx_                       context.Context
23162	header_                    http.Header
23163}
23164
23165// Process: Processes return in your Merchant Center account.
23166func (r *OrderreturnsService) Process(merchantId uint64, returnId string, orderreturnsprocessrequest *OrderreturnsProcessRequest) *OrderreturnsProcessCall {
23167	c := &OrderreturnsProcessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23168	c.merchantId = merchantId
23169	c.returnId = returnId
23170	c.orderreturnsprocessrequest = orderreturnsprocessrequest
23171	return c
23172}
23173
23174// Fields allows partial responses to be retrieved. See
23175// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23176// for more information.
23177func (c *OrderreturnsProcessCall) Fields(s ...googleapi.Field) *OrderreturnsProcessCall {
23178	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23179	return c
23180}
23181
23182// Context sets the context to be used in this call's Do method. Any
23183// pending HTTP request will be aborted if the provided context is
23184// canceled.
23185func (c *OrderreturnsProcessCall) Context(ctx context.Context) *OrderreturnsProcessCall {
23186	c.ctx_ = ctx
23187	return c
23188}
23189
23190// Header returns an http.Header that can be modified by the caller to
23191// add HTTP headers to the request.
23192func (c *OrderreturnsProcessCall) Header() http.Header {
23193	if c.header_ == nil {
23194		c.header_ = make(http.Header)
23195	}
23196	return c.header_
23197}
23198
23199func (c *OrderreturnsProcessCall) doRequest(alt string) (*http.Response, error) {
23200	reqHeaders := make(http.Header)
23201	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
23202	for k, v := range c.header_ {
23203		reqHeaders[k] = v
23204	}
23205	reqHeaders.Set("User-Agent", c.s.userAgent())
23206	var body io.Reader = nil
23207	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsprocessrequest)
23208	if err != nil {
23209		return nil, err
23210	}
23211	reqHeaders.Set("Content-Type", "application/json")
23212	c.urlParams_.Set("alt", alt)
23213	c.urlParams_.Set("prettyPrint", "false")
23214	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orderreturns/{returnId}/process")
23215	urls += "?" + c.urlParams_.Encode()
23216	req, err := http.NewRequest("POST", urls, body)
23217	if err != nil {
23218		return nil, err
23219	}
23220	req.Header = reqHeaders
23221	googleapi.Expand(req.URL, map[string]string{
23222		"merchantId": strconv.FormatUint(c.merchantId, 10),
23223		"returnId":   c.returnId,
23224	})
23225	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23226}
23227
23228// Do executes the "content.orderreturns.process" call.
23229// Exactly one of *OrderreturnsProcessResponse or error will be non-nil.
23230// Any non-2xx status code is an error. Response headers are in either
23231// *OrderreturnsProcessResponse.ServerResponse.Header or (if a response
23232// was returned at all) in error.(*googleapi.Error).Header. Use
23233// googleapi.IsNotModified to check whether the returned error was
23234// because http.StatusNotModified was returned.
23235func (c *OrderreturnsProcessCall) Do(opts ...googleapi.CallOption) (*OrderreturnsProcessResponse, error) {
23236	gensupport.SetOptions(c.urlParams_, opts...)
23237	res, err := c.doRequest("json")
23238	if res != nil && res.StatusCode == http.StatusNotModified {
23239		if res.Body != nil {
23240			res.Body.Close()
23241		}
23242		return nil, &googleapi.Error{
23243			Code:   res.StatusCode,
23244			Header: res.Header,
23245		}
23246	}
23247	if err != nil {
23248		return nil, err
23249	}
23250	defer googleapi.CloseBody(res)
23251	if err := googleapi.CheckResponse(res); err != nil {
23252		return nil, err
23253	}
23254	ret := &OrderreturnsProcessResponse{
23255		ServerResponse: googleapi.ServerResponse{
23256			Header:         res.Header,
23257			HTTPStatusCode: res.StatusCode,
23258		},
23259	}
23260	target := &ret
23261	if err := gensupport.DecodeResponse(target, res); err != nil {
23262		return nil, err
23263	}
23264	return ret, nil
23265	// {
23266	//   "description": "Processes return in your Merchant Center account.",
23267	//   "flatPath": "content/v2.1/{merchantId}/orderreturns/{returnId}/process",
23268	//   "httpMethod": "POST",
23269	//   "id": "content.orderreturns.process",
23270	//   "parameterOrder": [
23271	//     "merchantId",
23272	//     "returnId"
23273	//   ],
23274	//   "parameters": {
23275	//     "merchantId": {
23276	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23277	//       "format": "uint64",
23278	//       "location": "path",
23279	//       "required": true,
23280	//       "type": "string"
23281	//     },
23282	//     "returnId": {
23283	//       "description": "The ID of the return.",
23284	//       "location": "path",
23285	//       "required": true,
23286	//       "type": "string"
23287	//     }
23288	//   },
23289	//   "path": "content/v2.1/{merchantId}/orderreturns/{returnId}/process",
23290	//   "request": {
23291	//     "$ref": "OrderreturnsProcessRequest"
23292	//   },
23293	//   "response": {
23294	//     "$ref": "OrderreturnsProcessResponse"
23295	//   },
23296	//   "scopes": [
23297	//     "https://www.googleapis.com/auth/content"
23298	//   ]
23299	// }
23300
23301}
23302
23303// method id "content.orders.acknowledge":
23304
23305type OrdersAcknowledgeCall struct {
23306	s                        *APIService
23307	merchantId               uint64
23308	orderId                  string
23309	ordersacknowledgerequest *OrdersAcknowledgeRequest
23310	urlParams_               gensupport.URLParams
23311	ctx_                     context.Context
23312	header_                  http.Header
23313}
23314
23315// Acknowledge: Marks an order as acknowledged.
23316func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
23317	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23318	c.merchantId = merchantId
23319	c.orderId = orderId
23320	c.ordersacknowledgerequest = ordersacknowledgerequest
23321	return c
23322}
23323
23324// Fields allows partial responses to be retrieved. See
23325// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23326// for more information.
23327func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
23328	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23329	return c
23330}
23331
23332// Context sets the context to be used in this call's Do method. Any
23333// pending HTTP request will be aborted if the provided context is
23334// canceled.
23335func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
23336	c.ctx_ = ctx
23337	return c
23338}
23339
23340// Header returns an http.Header that can be modified by the caller to
23341// add HTTP headers to the request.
23342func (c *OrdersAcknowledgeCall) Header() http.Header {
23343	if c.header_ == nil {
23344		c.header_ = make(http.Header)
23345	}
23346	return c.header_
23347}
23348
23349func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
23350	reqHeaders := make(http.Header)
23351	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
23352	for k, v := range c.header_ {
23353		reqHeaders[k] = v
23354	}
23355	reqHeaders.Set("User-Agent", c.s.userAgent())
23356	var body io.Reader = nil
23357	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
23358	if err != nil {
23359		return nil, err
23360	}
23361	reqHeaders.Set("Content-Type", "application/json")
23362	c.urlParams_.Set("alt", alt)
23363	c.urlParams_.Set("prettyPrint", "false")
23364	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/acknowledge")
23365	urls += "?" + c.urlParams_.Encode()
23366	req, err := http.NewRequest("POST", urls, body)
23367	if err != nil {
23368		return nil, err
23369	}
23370	req.Header = reqHeaders
23371	googleapi.Expand(req.URL, map[string]string{
23372		"merchantId": strconv.FormatUint(c.merchantId, 10),
23373		"orderId":    c.orderId,
23374	})
23375	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23376}
23377
23378// Do executes the "content.orders.acknowledge" call.
23379// Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
23380// Any non-2xx status code is an error. Response headers are in either
23381// *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
23382// was returned at all) in error.(*googleapi.Error).Header. Use
23383// googleapi.IsNotModified to check whether the returned error was
23384// because http.StatusNotModified was returned.
23385func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
23386	gensupport.SetOptions(c.urlParams_, opts...)
23387	res, err := c.doRequest("json")
23388	if res != nil && res.StatusCode == http.StatusNotModified {
23389		if res.Body != nil {
23390			res.Body.Close()
23391		}
23392		return nil, &googleapi.Error{
23393			Code:   res.StatusCode,
23394			Header: res.Header,
23395		}
23396	}
23397	if err != nil {
23398		return nil, err
23399	}
23400	defer googleapi.CloseBody(res)
23401	if err := googleapi.CheckResponse(res); err != nil {
23402		return nil, err
23403	}
23404	ret := &OrdersAcknowledgeResponse{
23405		ServerResponse: googleapi.ServerResponse{
23406			Header:         res.Header,
23407			HTTPStatusCode: res.StatusCode,
23408		},
23409	}
23410	target := &ret
23411	if err := gensupport.DecodeResponse(target, res); err != nil {
23412		return nil, err
23413	}
23414	return ret, nil
23415	// {
23416	//   "description": "Marks an order as acknowledged.",
23417	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/acknowledge",
23418	//   "httpMethod": "POST",
23419	//   "id": "content.orders.acknowledge",
23420	//   "parameterOrder": [
23421	//     "merchantId",
23422	//     "orderId"
23423	//   ],
23424	//   "parameters": {
23425	//     "merchantId": {
23426	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23427	//       "format": "uint64",
23428	//       "location": "path",
23429	//       "required": true,
23430	//       "type": "string"
23431	//     },
23432	//     "orderId": {
23433	//       "description": "The ID of the order.",
23434	//       "location": "path",
23435	//       "required": true,
23436	//       "type": "string"
23437	//     }
23438	//   },
23439	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/acknowledge",
23440	//   "request": {
23441	//     "$ref": "OrdersAcknowledgeRequest"
23442	//   },
23443	//   "response": {
23444	//     "$ref": "OrdersAcknowledgeResponse"
23445	//   },
23446	//   "scopes": [
23447	//     "https://www.googleapis.com/auth/content"
23448	//   ]
23449	// }
23450
23451}
23452
23453// method id "content.orders.advancetestorder":
23454
23455type OrdersAdvancetestorderCall struct {
23456	s          *APIService
23457	merchantId uint64
23458	orderId    string
23459	urlParams_ gensupport.URLParams
23460	ctx_       context.Context
23461	header_    http.Header
23462}
23463
23464// Advancetestorder: Sandbox only. Moves a test order from state
23465// "inProgress" to state "pendingShipment".
23466func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
23467	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23468	c.merchantId = merchantId
23469	c.orderId = orderId
23470	return c
23471}
23472
23473// Fields allows partial responses to be retrieved. See
23474// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23475// for more information.
23476func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
23477	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23478	return c
23479}
23480
23481// Context sets the context to be used in this call's Do method. Any
23482// pending HTTP request will be aborted if the provided context is
23483// canceled.
23484func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
23485	c.ctx_ = ctx
23486	return c
23487}
23488
23489// Header returns an http.Header that can be modified by the caller to
23490// add HTTP headers to the request.
23491func (c *OrdersAdvancetestorderCall) Header() http.Header {
23492	if c.header_ == nil {
23493		c.header_ = make(http.Header)
23494	}
23495	return c.header_
23496}
23497
23498func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
23499	reqHeaders := make(http.Header)
23500	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
23501	for k, v := range c.header_ {
23502		reqHeaders[k] = v
23503	}
23504	reqHeaders.Set("User-Agent", c.s.userAgent())
23505	var body io.Reader = nil
23506	c.urlParams_.Set("alt", alt)
23507	c.urlParams_.Set("prettyPrint", "false")
23508	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/testorders/{orderId}/advance")
23509	urls += "?" + c.urlParams_.Encode()
23510	req, err := http.NewRequest("POST", urls, body)
23511	if err != nil {
23512		return nil, err
23513	}
23514	req.Header = reqHeaders
23515	googleapi.Expand(req.URL, map[string]string{
23516		"merchantId": strconv.FormatUint(c.merchantId, 10),
23517		"orderId":    c.orderId,
23518	})
23519	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23520}
23521
23522// Do executes the "content.orders.advancetestorder" call.
23523// Exactly one of *OrdersAdvanceTestOrderResponse or error will be
23524// non-nil. Any non-2xx status code is an error. Response headers are in
23525// either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
23526// response was returned at all) in error.(*googleapi.Error).Header. Use
23527// googleapi.IsNotModified to check whether the returned error was
23528// because http.StatusNotModified was returned.
23529func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
23530	gensupport.SetOptions(c.urlParams_, opts...)
23531	res, err := c.doRequest("json")
23532	if res != nil && res.StatusCode == http.StatusNotModified {
23533		if res.Body != nil {
23534			res.Body.Close()
23535		}
23536		return nil, &googleapi.Error{
23537			Code:   res.StatusCode,
23538			Header: res.Header,
23539		}
23540	}
23541	if err != nil {
23542		return nil, err
23543	}
23544	defer googleapi.CloseBody(res)
23545	if err := googleapi.CheckResponse(res); err != nil {
23546		return nil, err
23547	}
23548	ret := &OrdersAdvanceTestOrderResponse{
23549		ServerResponse: googleapi.ServerResponse{
23550			Header:         res.Header,
23551			HTTPStatusCode: res.StatusCode,
23552		},
23553	}
23554	target := &ret
23555	if err := gensupport.DecodeResponse(target, res); err != nil {
23556		return nil, err
23557	}
23558	return ret, nil
23559	// {
23560	//   "description": "Sandbox only. Moves a test order from state \"`inProgress`\" to state \"`pendingShipment`\".",
23561	//   "flatPath": "content/v2.1/{merchantId}/testorders/{orderId}/advance",
23562	//   "httpMethod": "POST",
23563	//   "id": "content.orders.advancetestorder",
23564	//   "parameterOrder": [
23565	//     "merchantId",
23566	//     "orderId"
23567	//   ],
23568	//   "parameters": {
23569	//     "merchantId": {
23570	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23571	//       "format": "uint64",
23572	//       "location": "path",
23573	//       "required": true,
23574	//       "type": "string"
23575	//     },
23576	//     "orderId": {
23577	//       "description": "The ID of the test order to modify.",
23578	//       "location": "path",
23579	//       "required": true,
23580	//       "type": "string"
23581	//     }
23582	//   },
23583	//   "path": "content/v2.1/{merchantId}/testorders/{orderId}/advance",
23584	//   "response": {
23585	//     "$ref": "OrdersAdvanceTestOrderResponse"
23586	//   },
23587	//   "scopes": [
23588	//     "https://www.googleapis.com/auth/content"
23589	//   ]
23590	// }
23591
23592}
23593
23594// method id "content.orders.cancel":
23595
23596type OrdersCancelCall struct {
23597	s                   *APIService
23598	merchantId          uint64
23599	orderId             string
23600	orderscancelrequest *OrdersCancelRequest
23601	urlParams_          gensupport.URLParams
23602	ctx_                context.Context
23603	header_             http.Header
23604}
23605
23606// Cancel: Cancels all line items in an order, making a full refund.
23607func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
23608	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23609	c.merchantId = merchantId
23610	c.orderId = orderId
23611	c.orderscancelrequest = orderscancelrequest
23612	return c
23613}
23614
23615// Fields allows partial responses to be retrieved. See
23616// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23617// for more information.
23618func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
23619	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23620	return c
23621}
23622
23623// Context sets the context to be used in this call's Do method. Any
23624// pending HTTP request will be aborted if the provided context is
23625// canceled.
23626func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
23627	c.ctx_ = ctx
23628	return c
23629}
23630
23631// Header returns an http.Header that can be modified by the caller to
23632// add HTTP headers to the request.
23633func (c *OrdersCancelCall) Header() http.Header {
23634	if c.header_ == nil {
23635		c.header_ = make(http.Header)
23636	}
23637	return c.header_
23638}
23639
23640func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
23641	reqHeaders := make(http.Header)
23642	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
23643	for k, v := range c.header_ {
23644		reqHeaders[k] = v
23645	}
23646	reqHeaders.Set("User-Agent", c.s.userAgent())
23647	var body io.Reader = nil
23648	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
23649	if err != nil {
23650		return nil, err
23651	}
23652	reqHeaders.Set("Content-Type", "application/json")
23653	c.urlParams_.Set("alt", alt)
23654	c.urlParams_.Set("prettyPrint", "false")
23655	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/cancel")
23656	urls += "?" + c.urlParams_.Encode()
23657	req, err := http.NewRequest("POST", urls, body)
23658	if err != nil {
23659		return nil, err
23660	}
23661	req.Header = reqHeaders
23662	googleapi.Expand(req.URL, map[string]string{
23663		"merchantId": strconv.FormatUint(c.merchantId, 10),
23664		"orderId":    c.orderId,
23665	})
23666	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23667}
23668
23669// Do executes the "content.orders.cancel" call.
23670// Exactly one of *OrdersCancelResponse or error will be non-nil. Any
23671// non-2xx status code is an error. Response headers are in either
23672// *OrdersCancelResponse.ServerResponse.Header or (if a response was
23673// returned at all) in error.(*googleapi.Error).Header. Use
23674// googleapi.IsNotModified to check whether the returned error was
23675// because http.StatusNotModified was returned.
23676func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
23677	gensupport.SetOptions(c.urlParams_, opts...)
23678	res, err := c.doRequest("json")
23679	if res != nil && res.StatusCode == http.StatusNotModified {
23680		if res.Body != nil {
23681			res.Body.Close()
23682		}
23683		return nil, &googleapi.Error{
23684			Code:   res.StatusCode,
23685			Header: res.Header,
23686		}
23687	}
23688	if err != nil {
23689		return nil, err
23690	}
23691	defer googleapi.CloseBody(res)
23692	if err := googleapi.CheckResponse(res); err != nil {
23693		return nil, err
23694	}
23695	ret := &OrdersCancelResponse{
23696		ServerResponse: googleapi.ServerResponse{
23697			Header:         res.Header,
23698			HTTPStatusCode: res.StatusCode,
23699		},
23700	}
23701	target := &ret
23702	if err := gensupport.DecodeResponse(target, res); err != nil {
23703		return nil, err
23704	}
23705	return ret, nil
23706	// {
23707	//   "description": "Cancels all line items in an order, making a full refund.",
23708	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/cancel",
23709	//   "httpMethod": "POST",
23710	//   "id": "content.orders.cancel",
23711	//   "parameterOrder": [
23712	//     "merchantId",
23713	//     "orderId"
23714	//   ],
23715	//   "parameters": {
23716	//     "merchantId": {
23717	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23718	//       "format": "uint64",
23719	//       "location": "path",
23720	//       "required": true,
23721	//       "type": "string"
23722	//     },
23723	//     "orderId": {
23724	//       "description": "The ID of the order to cancel.",
23725	//       "location": "path",
23726	//       "required": true,
23727	//       "type": "string"
23728	//     }
23729	//   },
23730	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/cancel",
23731	//   "request": {
23732	//     "$ref": "OrdersCancelRequest"
23733	//   },
23734	//   "response": {
23735	//     "$ref": "OrdersCancelResponse"
23736	//   },
23737	//   "scopes": [
23738	//     "https://www.googleapis.com/auth/content"
23739	//   ]
23740	// }
23741
23742}
23743
23744// method id "content.orders.cancellineitem":
23745
23746type OrdersCancellineitemCall struct {
23747	s                           *APIService
23748	merchantId                  uint64
23749	orderId                     string
23750	orderscancellineitemrequest *OrdersCancelLineItemRequest
23751	urlParams_                  gensupport.URLParams
23752	ctx_                        context.Context
23753	header_                     http.Header
23754}
23755
23756// Cancellineitem: Cancels a line item, making a full refund.
23757func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
23758	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23759	c.merchantId = merchantId
23760	c.orderId = orderId
23761	c.orderscancellineitemrequest = orderscancellineitemrequest
23762	return c
23763}
23764
23765// Fields allows partial responses to be retrieved. See
23766// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23767// for more information.
23768func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
23769	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23770	return c
23771}
23772
23773// Context sets the context to be used in this call's Do method. Any
23774// pending HTTP request will be aborted if the provided context is
23775// canceled.
23776func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
23777	c.ctx_ = ctx
23778	return c
23779}
23780
23781// Header returns an http.Header that can be modified by the caller to
23782// add HTTP headers to the request.
23783func (c *OrdersCancellineitemCall) Header() http.Header {
23784	if c.header_ == nil {
23785		c.header_ = make(http.Header)
23786	}
23787	return c.header_
23788}
23789
23790func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
23791	reqHeaders := make(http.Header)
23792	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
23793	for k, v := range c.header_ {
23794		reqHeaders[k] = v
23795	}
23796	reqHeaders.Set("User-Agent", c.s.userAgent())
23797	var body io.Reader = nil
23798	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
23799	if err != nil {
23800		return nil, err
23801	}
23802	reqHeaders.Set("Content-Type", "application/json")
23803	c.urlParams_.Set("alt", alt)
23804	c.urlParams_.Set("prettyPrint", "false")
23805	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/cancelLineItem")
23806	urls += "?" + c.urlParams_.Encode()
23807	req, err := http.NewRequest("POST", urls, body)
23808	if err != nil {
23809		return nil, err
23810	}
23811	req.Header = reqHeaders
23812	googleapi.Expand(req.URL, map[string]string{
23813		"merchantId": strconv.FormatUint(c.merchantId, 10),
23814		"orderId":    c.orderId,
23815	})
23816	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23817}
23818
23819// Do executes the "content.orders.cancellineitem" call.
23820// Exactly one of *OrdersCancelLineItemResponse or error will be
23821// non-nil. Any non-2xx status code is an error. Response headers are in
23822// either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
23823// response was returned at all) in error.(*googleapi.Error).Header. Use
23824// googleapi.IsNotModified to check whether the returned error was
23825// because http.StatusNotModified was returned.
23826func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
23827	gensupport.SetOptions(c.urlParams_, opts...)
23828	res, err := c.doRequest("json")
23829	if res != nil && res.StatusCode == http.StatusNotModified {
23830		if res.Body != nil {
23831			res.Body.Close()
23832		}
23833		return nil, &googleapi.Error{
23834			Code:   res.StatusCode,
23835			Header: res.Header,
23836		}
23837	}
23838	if err != nil {
23839		return nil, err
23840	}
23841	defer googleapi.CloseBody(res)
23842	if err := googleapi.CheckResponse(res); err != nil {
23843		return nil, err
23844	}
23845	ret := &OrdersCancelLineItemResponse{
23846		ServerResponse: googleapi.ServerResponse{
23847			Header:         res.Header,
23848			HTTPStatusCode: res.StatusCode,
23849		},
23850	}
23851	target := &ret
23852	if err := gensupport.DecodeResponse(target, res); err != nil {
23853		return nil, err
23854	}
23855	return ret, nil
23856	// {
23857	//   "description": "Cancels a line item, making a full refund.",
23858	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/cancelLineItem",
23859	//   "httpMethod": "POST",
23860	//   "id": "content.orders.cancellineitem",
23861	//   "parameterOrder": [
23862	//     "merchantId",
23863	//     "orderId"
23864	//   ],
23865	//   "parameters": {
23866	//     "merchantId": {
23867	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23868	//       "format": "uint64",
23869	//       "location": "path",
23870	//       "required": true,
23871	//       "type": "string"
23872	//     },
23873	//     "orderId": {
23874	//       "description": "The ID of the order.",
23875	//       "location": "path",
23876	//       "required": true,
23877	//       "type": "string"
23878	//     }
23879	//   },
23880	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/cancelLineItem",
23881	//   "request": {
23882	//     "$ref": "OrdersCancelLineItemRequest"
23883	//   },
23884	//   "response": {
23885	//     "$ref": "OrdersCancelLineItemResponse"
23886	//   },
23887	//   "scopes": [
23888	//     "https://www.googleapis.com/auth/content"
23889	//   ]
23890	// }
23891
23892}
23893
23894// method id "content.orders.canceltestorderbycustomer":
23895
23896type OrdersCanceltestorderbycustomerCall struct {
23897	s                                      *APIService
23898	merchantId                             uint64
23899	orderId                                string
23900	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
23901	urlParams_                             gensupport.URLParams
23902	ctx_                                   context.Context
23903	header_                                http.Header
23904}
23905
23906// Canceltestorderbycustomer: Sandbox only. Cancels a test order for
23907// customer-initiated cancellation.
23908func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
23909	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23910	c.merchantId = merchantId
23911	c.orderId = orderId
23912	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
23913	return c
23914}
23915
23916// Fields allows partial responses to be retrieved. See
23917// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23918// for more information.
23919func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
23920	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23921	return c
23922}
23923
23924// Context sets the context to be used in this call's Do method. Any
23925// pending HTTP request will be aborted if the provided context is
23926// canceled.
23927func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
23928	c.ctx_ = ctx
23929	return c
23930}
23931
23932// Header returns an http.Header that can be modified by the caller to
23933// add HTTP headers to the request.
23934func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
23935	if c.header_ == nil {
23936		c.header_ = make(http.Header)
23937	}
23938	return c.header_
23939}
23940
23941func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
23942	reqHeaders := make(http.Header)
23943	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
23944	for k, v := range c.header_ {
23945		reqHeaders[k] = v
23946	}
23947	reqHeaders.Set("User-Agent", c.s.userAgent())
23948	var body io.Reader = nil
23949	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
23950	if err != nil {
23951		return nil, err
23952	}
23953	reqHeaders.Set("Content-Type", "application/json")
23954	c.urlParams_.Set("alt", alt)
23955	c.urlParams_.Set("prettyPrint", "false")
23956	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/testorders/{orderId}/cancelByCustomer")
23957	urls += "?" + c.urlParams_.Encode()
23958	req, err := http.NewRequest("POST", urls, body)
23959	if err != nil {
23960		return nil, err
23961	}
23962	req.Header = reqHeaders
23963	googleapi.Expand(req.URL, map[string]string{
23964		"merchantId": strconv.FormatUint(c.merchantId, 10),
23965		"orderId":    c.orderId,
23966	})
23967	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23968}
23969
23970// Do executes the "content.orders.canceltestorderbycustomer" call.
23971// Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
23972// be non-nil. Any non-2xx status code is an error. Response headers are
23973// in either
23974// *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
23975// a response was returned at all) in error.(*googleapi.Error).Header.
23976// Use googleapi.IsNotModified to check whether the returned error was
23977// because http.StatusNotModified was returned.
23978func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
23979	gensupport.SetOptions(c.urlParams_, opts...)
23980	res, err := c.doRequest("json")
23981	if res != nil && res.StatusCode == http.StatusNotModified {
23982		if res.Body != nil {
23983			res.Body.Close()
23984		}
23985		return nil, &googleapi.Error{
23986			Code:   res.StatusCode,
23987			Header: res.Header,
23988		}
23989	}
23990	if err != nil {
23991		return nil, err
23992	}
23993	defer googleapi.CloseBody(res)
23994	if err := googleapi.CheckResponse(res); err != nil {
23995		return nil, err
23996	}
23997	ret := &OrdersCancelTestOrderByCustomerResponse{
23998		ServerResponse: googleapi.ServerResponse{
23999			Header:         res.Header,
24000			HTTPStatusCode: res.StatusCode,
24001		},
24002	}
24003	target := &ret
24004	if err := gensupport.DecodeResponse(target, res); err != nil {
24005		return nil, err
24006	}
24007	return ret, nil
24008	// {
24009	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
24010	//   "flatPath": "content/v2.1/{merchantId}/testorders/{orderId}/cancelByCustomer",
24011	//   "httpMethod": "POST",
24012	//   "id": "content.orders.canceltestorderbycustomer",
24013	//   "parameterOrder": [
24014	//     "merchantId",
24015	//     "orderId"
24016	//   ],
24017	//   "parameters": {
24018	//     "merchantId": {
24019	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
24020	//       "format": "uint64",
24021	//       "location": "path",
24022	//       "required": true,
24023	//       "type": "string"
24024	//     },
24025	//     "orderId": {
24026	//       "description": "The ID of the test order to cancel.",
24027	//       "location": "path",
24028	//       "required": true,
24029	//       "type": "string"
24030	//     }
24031	//   },
24032	//   "path": "content/v2.1/{merchantId}/testorders/{orderId}/cancelByCustomer",
24033	//   "request": {
24034	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
24035	//   },
24036	//   "response": {
24037	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
24038	//   },
24039	//   "scopes": [
24040	//     "https://www.googleapis.com/auth/content"
24041	//   ]
24042	// }
24043
24044}
24045
24046// method id "content.orders.createtestorder":
24047
24048type OrdersCreatetestorderCall struct {
24049	s                            *APIService
24050	merchantId                   uint64
24051	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
24052	urlParams_                   gensupport.URLParams
24053	ctx_                         context.Context
24054	header_                      http.Header
24055}
24056
24057// Createtestorder: Sandbox only. Creates a test order.
24058func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
24059	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24060	c.merchantId = merchantId
24061	c.orderscreatetestorderrequest = orderscreatetestorderrequest
24062	return c
24063}
24064
24065// Fields allows partial responses to be retrieved. See
24066// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24067// for more information.
24068func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
24069	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24070	return c
24071}
24072
24073// Context sets the context to be used in this call's Do method. Any
24074// pending HTTP request will be aborted if the provided context is
24075// canceled.
24076func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
24077	c.ctx_ = ctx
24078	return c
24079}
24080
24081// Header returns an http.Header that can be modified by the caller to
24082// add HTTP headers to the request.
24083func (c *OrdersCreatetestorderCall) Header() http.Header {
24084	if c.header_ == nil {
24085		c.header_ = make(http.Header)
24086	}
24087	return c.header_
24088}
24089
24090func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
24091	reqHeaders := make(http.Header)
24092	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
24093	for k, v := range c.header_ {
24094		reqHeaders[k] = v
24095	}
24096	reqHeaders.Set("User-Agent", c.s.userAgent())
24097	var body io.Reader = nil
24098	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
24099	if err != nil {
24100		return nil, err
24101	}
24102	reqHeaders.Set("Content-Type", "application/json")
24103	c.urlParams_.Set("alt", alt)
24104	c.urlParams_.Set("prettyPrint", "false")
24105	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/testorders")
24106	urls += "?" + c.urlParams_.Encode()
24107	req, err := http.NewRequest("POST", urls, body)
24108	if err != nil {
24109		return nil, err
24110	}
24111	req.Header = reqHeaders
24112	googleapi.Expand(req.URL, map[string]string{
24113		"merchantId": strconv.FormatUint(c.merchantId, 10),
24114	})
24115	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24116}
24117
24118// Do executes the "content.orders.createtestorder" call.
24119// Exactly one of *OrdersCreateTestOrderResponse or error will be
24120// non-nil. Any non-2xx status code is an error. Response headers are in
24121// either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
24122// response was returned at all) in error.(*googleapi.Error).Header. Use
24123// googleapi.IsNotModified to check whether the returned error was
24124// because http.StatusNotModified was returned.
24125func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
24126	gensupport.SetOptions(c.urlParams_, opts...)
24127	res, err := c.doRequest("json")
24128	if res != nil && res.StatusCode == http.StatusNotModified {
24129		if res.Body != nil {
24130			res.Body.Close()
24131		}
24132		return nil, &googleapi.Error{
24133			Code:   res.StatusCode,
24134			Header: res.Header,
24135		}
24136	}
24137	if err != nil {
24138		return nil, err
24139	}
24140	defer googleapi.CloseBody(res)
24141	if err := googleapi.CheckResponse(res); err != nil {
24142		return nil, err
24143	}
24144	ret := &OrdersCreateTestOrderResponse{
24145		ServerResponse: googleapi.ServerResponse{
24146			Header:         res.Header,
24147			HTTPStatusCode: res.StatusCode,
24148		},
24149	}
24150	target := &ret
24151	if err := gensupport.DecodeResponse(target, res); err != nil {
24152		return nil, err
24153	}
24154	return ret, nil
24155	// {
24156	//   "description": "Sandbox only. Creates a test order.",
24157	//   "flatPath": "content/v2.1/{merchantId}/testorders",
24158	//   "httpMethod": "POST",
24159	//   "id": "content.orders.createtestorder",
24160	//   "parameterOrder": [
24161	//     "merchantId"
24162	//   ],
24163	//   "parameters": {
24164	//     "merchantId": {
24165	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
24166	//       "format": "uint64",
24167	//       "location": "path",
24168	//       "required": true,
24169	//       "type": "string"
24170	//     }
24171	//   },
24172	//   "path": "content/v2.1/{merchantId}/testorders",
24173	//   "request": {
24174	//     "$ref": "OrdersCreateTestOrderRequest"
24175	//   },
24176	//   "response": {
24177	//     "$ref": "OrdersCreateTestOrderResponse"
24178	//   },
24179	//   "scopes": [
24180	//     "https://www.googleapis.com/auth/content"
24181	//   ]
24182	// }
24183
24184}
24185
24186// method id "content.orders.createtestreturn":
24187
24188type OrdersCreatetestreturnCall struct {
24189	s                             *APIService
24190	merchantId                    uint64
24191	orderId                       string
24192	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
24193	urlParams_                    gensupport.URLParams
24194	ctx_                          context.Context
24195	header_                       http.Header
24196}
24197
24198// Createtestreturn: Sandbox only. Creates a test return.
24199func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
24200	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24201	c.merchantId = merchantId
24202	c.orderId = orderId
24203	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
24204	return c
24205}
24206
24207// Fields allows partial responses to be retrieved. See
24208// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24209// for more information.
24210func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
24211	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24212	return c
24213}
24214
24215// Context sets the context to be used in this call's Do method. Any
24216// pending HTTP request will be aborted if the provided context is
24217// canceled.
24218func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
24219	c.ctx_ = ctx
24220	return c
24221}
24222
24223// Header returns an http.Header that can be modified by the caller to
24224// add HTTP headers to the request.
24225func (c *OrdersCreatetestreturnCall) Header() http.Header {
24226	if c.header_ == nil {
24227		c.header_ = make(http.Header)
24228	}
24229	return c.header_
24230}
24231
24232func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
24233	reqHeaders := make(http.Header)
24234	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
24235	for k, v := range c.header_ {
24236		reqHeaders[k] = v
24237	}
24238	reqHeaders.Set("User-Agent", c.s.userAgent())
24239	var body io.Reader = nil
24240	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
24241	if err != nil {
24242		return nil, err
24243	}
24244	reqHeaders.Set("Content-Type", "application/json")
24245	c.urlParams_.Set("alt", alt)
24246	c.urlParams_.Set("prettyPrint", "false")
24247	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/testreturn")
24248	urls += "?" + c.urlParams_.Encode()
24249	req, err := http.NewRequest("POST", urls, body)
24250	if err != nil {
24251		return nil, err
24252	}
24253	req.Header = reqHeaders
24254	googleapi.Expand(req.URL, map[string]string{
24255		"merchantId": strconv.FormatUint(c.merchantId, 10),
24256		"orderId":    c.orderId,
24257	})
24258	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24259}
24260
24261// Do executes the "content.orders.createtestreturn" call.
24262// Exactly one of *OrdersCreateTestReturnResponse or error will be
24263// non-nil. Any non-2xx status code is an error. Response headers are in
24264// either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
24265// response was returned at all) in error.(*googleapi.Error).Header. Use
24266// googleapi.IsNotModified to check whether the returned error was
24267// because http.StatusNotModified was returned.
24268func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
24269	gensupport.SetOptions(c.urlParams_, opts...)
24270	res, err := c.doRequest("json")
24271	if res != nil && res.StatusCode == http.StatusNotModified {
24272		if res.Body != nil {
24273			res.Body.Close()
24274		}
24275		return nil, &googleapi.Error{
24276			Code:   res.StatusCode,
24277			Header: res.Header,
24278		}
24279	}
24280	if err != nil {
24281		return nil, err
24282	}
24283	defer googleapi.CloseBody(res)
24284	if err := googleapi.CheckResponse(res); err != nil {
24285		return nil, err
24286	}
24287	ret := &OrdersCreateTestReturnResponse{
24288		ServerResponse: googleapi.ServerResponse{
24289			Header:         res.Header,
24290			HTTPStatusCode: res.StatusCode,
24291		},
24292	}
24293	target := &ret
24294	if err := gensupport.DecodeResponse(target, res); err != nil {
24295		return nil, err
24296	}
24297	return ret, nil
24298	// {
24299	//   "description": "Sandbox only. Creates a test return.",
24300	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/testreturn",
24301	//   "httpMethod": "POST",
24302	//   "id": "content.orders.createtestreturn",
24303	//   "parameterOrder": [
24304	//     "merchantId",
24305	//     "orderId"
24306	//   ],
24307	//   "parameters": {
24308	//     "merchantId": {
24309	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
24310	//       "format": "uint64",
24311	//       "location": "path",
24312	//       "required": true,
24313	//       "type": "string"
24314	//     },
24315	//     "orderId": {
24316	//       "description": "The ID of the order.",
24317	//       "location": "path",
24318	//       "required": true,
24319	//       "type": "string"
24320	//     }
24321	//   },
24322	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/testreturn",
24323	//   "request": {
24324	//     "$ref": "OrdersCreateTestReturnRequest"
24325	//   },
24326	//   "response": {
24327	//     "$ref": "OrdersCreateTestReturnResponse"
24328	//   },
24329	//   "scopes": [
24330	//     "https://www.googleapis.com/auth/content"
24331	//   ]
24332	// }
24333
24334}
24335
24336// method id "content.orders.get":
24337
24338type OrdersGetCall struct {
24339	s            *APIService
24340	merchantId   uint64
24341	orderId      string
24342	urlParams_   gensupport.URLParams
24343	ifNoneMatch_ string
24344	ctx_         context.Context
24345	header_      http.Header
24346}
24347
24348// Get: Retrieves an order from your Merchant Center account.
24349func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
24350	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24351	c.merchantId = merchantId
24352	c.orderId = orderId
24353	return c
24354}
24355
24356// Fields allows partial responses to be retrieved. See
24357// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24358// for more information.
24359func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
24360	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24361	return c
24362}
24363
24364// IfNoneMatch sets the optional parameter which makes the operation
24365// fail if the object's ETag matches the given value. This is useful for
24366// getting updates only after the object has changed since the last
24367// request. Use googleapi.IsNotModified to check whether the response
24368// error from Do is the result of In-None-Match.
24369func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
24370	c.ifNoneMatch_ = entityTag
24371	return c
24372}
24373
24374// Context sets the context to be used in this call's Do method. Any
24375// pending HTTP request will be aborted if the provided context is
24376// canceled.
24377func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
24378	c.ctx_ = ctx
24379	return c
24380}
24381
24382// Header returns an http.Header that can be modified by the caller to
24383// add HTTP headers to the request.
24384func (c *OrdersGetCall) Header() http.Header {
24385	if c.header_ == nil {
24386		c.header_ = make(http.Header)
24387	}
24388	return c.header_
24389}
24390
24391func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
24392	reqHeaders := make(http.Header)
24393	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
24394	for k, v := range c.header_ {
24395		reqHeaders[k] = v
24396	}
24397	reqHeaders.Set("User-Agent", c.s.userAgent())
24398	if c.ifNoneMatch_ != "" {
24399		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24400	}
24401	var body io.Reader = nil
24402	c.urlParams_.Set("alt", alt)
24403	c.urlParams_.Set("prettyPrint", "false")
24404	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}")
24405	urls += "?" + c.urlParams_.Encode()
24406	req, err := http.NewRequest("GET", urls, body)
24407	if err != nil {
24408		return nil, err
24409	}
24410	req.Header = reqHeaders
24411	googleapi.Expand(req.URL, map[string]string{
24412		"merchantId": strconv.FormatUint(c.merchantId, 10),
24413		"orderId":    c.orderId,
24414	})
24415	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24416}
24417
24418// Do executes the "content.orders.get" call.
24419// Exactly one of *Order or error will be non-nil. Any non-2xx status
24420// code is an error. Response headers are in either
24421// *Order.ServerResponse.Header or (if a response was returned at all)
24422// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
24423// check whether the returned error was because http.StatusNotModified
24424// was returned.
24425func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
24426	gensupport.SetOptions(c.urlParams_, opts...)
24427	res, err := c.doRequest("json")
24428	if res != nil && res.StatusCode == http.StatusNotModified {
24429		if res.Body != nil {
24430			res.Body.Close()
24431		}
24432		return nil, &googleapi.Error{
24433			Code:   res.StatusCode,
24434			Header: res.Header,
24435		}
24436	}
24437	if err != nil {
24438		return nil, err
24439	}
24440	defer googleapi.CloseBody(res)
24441	if err := googleapi.CheckResponse(res); err != nil {
24442		return nil, err
24443	}
24444	ret := &Order{
24445		ServerResponse: googleapi.ServerResponse{
24446			Header:         res.Header,
24447			HTTPStatusCode: res.StatusCode,
24448		},
24449	}
24450	target := &ret
24451	if err := gensupport.DecodeResponse(target, res); err != nil {
24452		return nil, err
24453	}
24454	return ret, nil
24455	// {
24456	//   "description": "Retrieves an order from your Merchant Center account.",
24457	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}",
24458	//   "httpMethod": "GET",
24459	//   "id": "content.orders.get",
24460	//   "parameterOrder": [
24461	//     "merchantId",
24462	//     "orderId"
24463	//   ],
24464	//   "parameters": {
24465	//     "merchantId": {
24466	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
24467	//       "format": "uint64",
24468	//       "location": "path",
24469	//       "required": true,
24470	//       "type": "string"
24471	//     },
24472	//     "orderId": {
24473	//       "description": "The ID of the order.",
24474	//       "location": "path",
24475	//       "required": true,
24476	//       "type": "string"
24477	//     }
24478	//   },
24479	//   "path": "content/v2.1/{merchantId}/orders/{orderId}",
24480	//   "response": {
24481	//     "$ref": "Order"
24482	//   },
24483	//   "scopes": [
24484	//     "https://www.googleapis.com/auth/content"
24485	//   ]
24486	// }
24487
24488}
24489
24490// method id "content.orders.getbymerchantorderid":
24491
24492type OrdersGetbymerchantorderidCall struct {
24493	s               *APIService
24494	merchantId      uint64
24495	merchantOrderId string
24496	urlParams_      gensupport.URLParams
24497	ifNoneMatch_    string
24498	ctx_            context.Context
24499	header_         http.Header
24500}
24501
24502// Getbymerchantorderid: Retrieves an order using merchant order ID.
24503func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
24504	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24505	c.merchantId = merchantId
24506	c.merchantOrderId = merchantOrderId
24507	return c
24508}
24509
24510// Fields allows partial responses to be retrieved. See
24511// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24512// for more information.
24513func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
24514	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24515	return c
24516}
24517
24518// IfNoneMatch sets the optional parameter which makes the operation
24519// fail if the object's ETag matches the given value. This is useful for
24520// getting updates only after the object has changed since the last
24521// request. Use googleapi.IsNotModified to check whether the response
24522// error from Do is the result of In-None-Match.
24523func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
24524	c.ifNoneMatch_ = entityTag
24525	return c
24526}
24527
24528// Context sets the context to be used in this call's Do method. Any
24529// pending HTTP request will be aborted if the provided context is
24530// canceled.
24531func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
24532	c.ctx_ = ctx
24533	return c
24534}
24535
24536// Header returns an http.Header that can be modified by the caller to
24537// add HTTP headers to the request.
24538func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
24539	if c.header_ == nil {
24540		c.header_ = make(http.Header)
24541	}
24542	return c.header_
24543}
24544
24545func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
24546	reqHeaders := make(http.Header)
24547	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
24548	for k, v := range c.header_ {
24549		reqHeaders[k] = v
24550	}
24551	reqHeaders.Set("User-Agent", c.s.userAgent())
24552	if c.ifNoneMatch_ != "" {
24553		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24554	}
24555	var body io.Reader = nil
24556	c.urlParams_.Set("alt", alt)
24557	c.urlParams_.Set("prettyPrint", "false")
24558	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/ordersbymerchantid/{merchantOrderId}")
24559	urls += "?" + c.urlParams_.Encode()
24560	req, err := http.NewRequest("GET", urls, body)
24561	if err != nil {
24562		return nil, err
24563	}
24564	req.Header = reqHeaders
24565	googleapi.Expand(req.URL, map[string]string{
24566		"merchantId":      strconv.FormatUint(c.merchantId, 10),
24567		"merchantOrderId": c.merchantOrderId,
24568	})
24569	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24570}
24571
24572// Do executes the "content.orders.getbymerchantorderid" call.
24573// Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
24574// non-nil. Any non-2xx status code is an error. Response headers are in
24575// either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
24576// (if a response was returned at all) in
24577// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24578// whether the returned error was because http.StatusNotModified was
24579// returned.
24580func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
24581	gensupport.SetOptions(c.urlParams_, opts...)
24582	res, err := c.doRequest("json")
24583	if res != nil && res.StatusCode == http.StatusNotModified {
24584		if res.Body != nil {
24585			res.Body.Close()
24586		}
24587		return nil, &googleapi.Error{
24588			Code:   res.StatusCode,
24589			Header: res.Header,
24590		}
24591	}
24592	if err != nil {
24593		return nil, err
24594	}
24595	defer googleapi.CloseBody(res)
24596	if err := googleapi.CheckResponse(res); err != nil {
24597		return nil, err
24598	}
24599	ret := &OrdersGetByMerchantOrderIdResponse{
24600		ServerResponse: googleapi.ServerResponse{
24601			Header:         res.Header,
24602			HTTPStatusCode: res.StatusCode,
24603		},
24604	}
24605	target := &ret
24606	if err := gensupport.DecodeResponse(target, res); err != nil {
24607		return nil, err
24608	}
24609	return ret, nil
24610	// {
24611	//   "description": "Retrieves an order using merchant order ID.",
24612	//   "flatPath": "content/v2.1/{merchantId}/ordersbymerchantid/{merchantOrderId}",
24613	//   "httpMethod": "GET",
24614	//   "id": "content.orders.getbymerchantorderid",
24615	//   "parameterOrder": [
24616	//     "merchantId",
24617	//     "merchantOrderId"
24618	//   ],
24619	//   "parameters": {
24620	//     "merchantId": {
24621	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
24622	//       "format": "uint64",
24623	//       "location": "path",
24624	//       "required": true,
24625	//       "type": "string"
24626	//     },
24627	//     "merchantOrderId": {
24628	//       "description": "The merchant order ID to be looked for.",
24629	//       "location": "path",
24630	//       "required": true,
24631	//       "type": "string"
24632	//     }
24633	//   },
24634	//   "path": "content/v2.1/{merchantId}/ordersbymerchantid/{merchantOrderId}",
24635	//   "response": {
24636	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
24637	//   },
24638	//   "scopes": [
24639	//     "https://www.googleapis.com/auth/content"
24640	//   ]
24641	// }
24642
24643}
24644
24645// method id "content.orders.gettestordertemplate":
24646
24647type OrdersGettestordertemplateCall struct {
24648	s            *APIService
24649	merchantId   uint64
24650	templateName string
24651	urlParams_   gensupport.URLParams
24652	ifNoneMatch_ string
24653	ctx_         context.Context
24654	header_      http.Header
24655}
24656
24657// Gettestordertemplate: Sandbox only. Retrieves an order template that
24658// can be used to quickly create a new order in sandbox.
24659func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
24660	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24661	c.merchantId = merchantId
24662	c.templateName = templateName
24663	return c
24664}
24665
24666// Country sets the optional parameter "country": The country of the
24667// template to retrieve. Defaults to `US`.
24668func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
24669	c.urlParams_.Set("country", country)
24670	return c
24671}
24672
24673// Fields allows partial responses to be retrieved. See
24674// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24675// for more information.
24676func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
24677	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24678	return c
24679}
24680
24681// IfNoneMatch sets the optional parameter which makes the operation
24682// fail if the object's ETag matches the given value. This is useful for
24683// getting updates only after the object has changed since the last
24684// request. Use googleapi.IsNotModified to check whether the response
24685// error from Do is the result of In-None-Match.
24686func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
24687	c.ifNoneMatch_ = entityTag
24688	return c
24689}
24690
24691// Context sets the context to be used in this call's Do method. Any
24692// pending HTTP request will be aborted if the provided context is
24693// canceled.
24694func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
24695	c.ctx_ = ctx
24696	return c
24697}
24698
24699// Header returns an http.Header that can be modified by the caller to
24700// add HTTP headers to the request.
24701func (c *OrdersGettestordertemplateCall) Header() http.Header {
24702	if c.header_ == nil {
24703		c.header_ = make(http.Header)
24704	}
24705	return c.header_
24706}
24707
24708func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
24709	reqHeaders := make(http.Header)
24710	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
24711	for k, v := range c.header_ {
24712		reqHeaders[k] = v
24713	}
24714	reqHeaders.Set("User-Agent", c.s.userAgent())
24715	if c.ifNoneMatch_ != "" {
24716		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24717	}
24718	var body io.Reader = nil
24719	c.urlParams_.Set("alt", alt)
24720	c.urlParams_.Set("prettyPrint", "false")
24721	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/testordertemplates/{templateName}")
24722	urls += "?" + c.urlParams_.Encode()
24723	req, err := http.NewRequest("GET", urls, body)
24724	if err != nil {
24725		return nil, err
24726	}
24727	req.Header = reqHeaders
24728	googleapi.Expand(req.URL, map[string]string{
24729		"merchantId":   strconv.FormatUint(c.merchantId, 10),
24730		"templateName": c.templateName,
24731	})
24732	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24733}
24734
24735// Do executes the "content.orders.gettestordertemplate" call.
24736// Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
24737// non-nil. Any non-2xx status code is an error. Response headers are in
24738// either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
24739// (if a response was returned at all) in
24740// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24741// whether the returned error was because http.StatusNotModified was
24742// returned.
24743func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
24744	gensupport.SetOptions(c.urlParams_, opts...)
24745	res, err := c.doRequest("json")
24746	if res != nil && res.StatusCode == http.StatusNotModified {
24747		if res.Body != nil {
24748			res.Body.Close()
24749		}
24750		return nil, &googleapi.Error{
24751			Code:   res.StatusCode,
24752			Header: res.Header,
24753		}
24754	}
24755	if err != nil {
24756		return nil, err
24757	}
24758	defer googleapi.CloseBody(res)
24759	if err := googleapi.CheckResponse(res); err != nil {
24760		return nil, err
24761	}
24762	ret := &OrdersGetTestOrderTemplateResponse{
24763		ServerResponse: googleapi.ServerResponse{
24764			Header:         res.Header,
24765			HTTPStatusCode: res.StatusCode,
24766		},
24767	}
24768	target := &ret
24769	if err := gensupport.DecodeResponse(target, res); err != nil {
24770		return nil, err
24771	}
24772	return ret, nil
24773	// {
24774	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
24775	//   "flatPath": "content/v2.1/{merchantId}/testordertemplates/{templateName}",
24776	//   "httpMethod": "GET",
24777	//   "id": "content.orders.gettestordertemplate",
24778	//   "parameterOrder": [
24779	//     "merchantId",
24780	//     "templateName"
24781	//   ],
24782	//   "parameters": {
24783	//     "country": {
24784	//       "description": "The country of the template to retrieve. Defaults to `US`.",
24785	//       "location": "query",
24786	//       "type": "string"
24787	//     },
24788	//     "merchantId": {
24789	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
24790	//       "format": "uint64",
24791	//       "location": "path",
24792	//       "required": true,
24793	//       "type": "string"
24794	//     },
24795	//     "templateName": {
24796	//       "description": "The name of the template to retrieve.",
24797	//       "enum": [
24798	//         "TEMPLATE1",
24799	//         "TEMPLATE2",
24800	//         "TEMPLATE1A",
24801	//         "TEMPLATE1B",
24802	//         "TEMPLATE3",
24803	//         "TEMPLATE4"
24804	//       ],
24805	//       "enumDescriptions": [
24806	//         "",
24807	//         "",
24808	//         "",
24809	//         "",
24810	//         "",
24811	//         ""
24812	//       ],
24813	//       "location": "path",
24814	//       "required": true,
24815	//       "type": "string"
24816	//     }
24817	//   },
24818	//   "path": "content/v2.1/{merchantId}/testordertemplates/{templateName}",
24819	//   "response": {
24820	//     "$ref": "OrdersGetTestOrderTemplateResponse"
24821	//   },
24822	//   "scopes": [
24823	//     "https://www.googleapis.com/auth/content"
24824	//   ]
24825	// }
24826
24827}
24828
24829// method id "content.orders.instorerefundlineitem":
24830
24831type OrdersInstorerefundlineitemCall struct {
24832	s                                  *APIService
24833	merchantId                         uint64
24834	orderId                            string
24835	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
24836	urlParams_                         gensupport.URLParams
24837	ctx_                               context.Context
24838	header_                            http.Header
24839}
24840
24841// Instorerefundlineitem: Deprecated. Notifies that item return and
24842// refund was handled directly by merchant outside of Google payments
24843// processing (e.g. cash refund done in store). Note: We recommend
24844// calling the returnrefundlineitem method to refund in-store returns.
24845// We will issue the refund directly to the customer. This helps to
24846// prevent possible differences arising between merchant and Google
24847// transaction records. We also recommend having the point of sale
24848// system communicate with Google to ensure that customers do not
24849// receive a double refund by first refunding via Google then via an
24850// in-store return.
24851func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
24852	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24853	c.merchantId = merchantId
24854	c.orderId = orderId
24855	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
24856	return c
24857}
24858
24859// Fields allows partial responses to be retrieved. See
24860// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24861// for more information.
24862func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
24863	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24864	return c
24865}
24866
24867// Context sets the context to be used in this call's Do method. Any
24868// pending HTTP request will be aborted if the provided context is
24869// canceled.
24870func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
24871	c.ctx_ = ctx
24872	return c
24873}
24874
24875// Header returns an http.Header that can be modified by the caller to
24876// add HTTP headers to the request.
24877func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
24878	if c.header_ == nil {
24879		c.header_ = make(http.Header)
24880	}
24881	return c.header_
24882}
24883
24884func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
24885	reqHeaders := make(http.Header)
24886	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
24887	for k, v := range c.header_ {
24888		reqHeaders[k] = v
24889	}
24890	reqHeaders.Set("User-Agent", c.s.userAgent())
24891	var body io.Reader = nil
24892	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
24893	if err != nil {
24894		return nil, err
24895	}
24896	reqHeaders.Set("Content-Type", "application/json")
24897	c.urlParams_.Set("alt", alt)
24898	c.urlParams_.Set("prettyPrint", "false")
24899	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/inStoreRefundLineItem")
24900	urls += "?" + c.urlParams_.Encode()
24901	req, err := http.NewRequest("POST", urls, body)
24902	if err != nil {
24903		return nil, err
24904	}
24905	req.Header = reqHeaders
24906	googleapi.Expand(req.URL, map[string]string{
24907		"merchantId": strconv.FormatUint(c.merchantId, 10),
24908		"orderId":    c.orderId,
24909	})
24910	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24911}
24912
24913// Do executes the "content.orders.instorerefundlineitem" call.
24914// Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
24915// non-nil. Any non-2xx status code is an error. Response headers are in
24916// either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
24917// (if a response was returned at all) in
24918// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24919// whether the returned error was because http.StatusNotModified was
24920// returned.
24921func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, error) {
24922	gensupport.SetOptions(c.urlParams_, opts...)
24923	res, err := c.doRequest("json")
24924	if res != nil && res.StatusCode == http.StatusNotModified {
24925		if res.Body != nil {
24926			res.Body.Close()
24927		}
24928		return nil, &googleapi.Error{
24929			Code:   res.StatusCode,
24930			Header: res.Header,
24931		}
24932	}
24933	if err != nil {
24934		return nil, err
24935	}
24936	defer googleapi.CloseBody(res)
24937	if err := googleapi.CheckResponse(res); err != nil {
24938		return nil, err
24939	}
24940	ret := &OrdersInStoreRefundLineItemResponse{
24941		ServerResponse: googleapi.ServerResponse{
24942			Header:         res.Header,
24943			HTTPStatusCode: res.StatusCode,
24944		},
24945	}
24946	target := &ret
24947	if err := gensupport.DecodeResponse(target, res); err != nil {
24948		return nil, err
24949	}
24950	return ret, nil
24951	// {
24952	//   "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.",
24953	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/inStoreRefundLineItem",
24954	//   "httpMethod": "POST",
24955	//   "id": "content.orders.instorerefundlineitem",
24956	//   "parameterOrder": [
24957	//     "merchantId",
24958	//     "orderId"
24959	//   ],
24960	//   "parameters": {
24961	//     "merchantId": {
24962	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
24963	//       "format": "uint64",
24964	//       "location": "path",
24965	//       "required": true,
24966	//       "type": "string"
24967	//     },
24968	//     "orderId": {
24969	//       "description": "The ID of the order.",
24970	//       "location": "path",
24971	//       "required": true,
24972	//       "type": "string"
24973	//     }
24974	//   },
24975	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/inStoreRefundLineItem",
24976	//   "request": {
24977	//     "$ref": "OrdersInStoreRefundLineItemRequest"
24978	//   },
24979	//   "response": {
24980	//     "$ref": "OrdersInStoreRefundLineItemResponse"
24981	//   },
24982	//   "scopes": [
24983	//     "https://www.googleapis.com/auth/content"
24984	//   ]
24985	// }
24986
24987}
24988
24989// method id "content.orders.list":
24990
24991type OrdersListCall struct {
24992	s            *APIService
24993	merchantId   uint64
24994	urlParams_   gensupport.URLParams
24995	ifNoneMatch_ string
24996	ctx_         context.Context
24997	header_      http.Header
24998}
24999
25000// List: Lists the orders in your Merchant Center account.
25001func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
25002	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25003	c.merchantId = merchantId
25004	return c
25005}
25006
25007// Acknowledged sets the optional parameter "acknowledged": Obtains
25008// orders that match the acknowledgement status. When set to true,
25009// obtains orders that have been acknowledged. When false, obtains
25010// orders that have not been acknowledged. We recommend using this
25011// filter set to `false`, in conjunction with the `acknowledge` call,
25012// such that only un-acknowledged orders are returned.
25013func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
25014	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
25015	return c
25016}
25017
25018// MaxResults sets the optional parameter "maxResults": The maximum
25019// number of orders to return in the response, used for paging. The
25020// default value is 25 orders per page, and the maximum allowed value is
25021// 250 orders per page.
25022func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
25023	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25024	return c
25025}
25026
25027// OrderBy sets the optional parameter "orderBy": Order results by
25028// placement date in descending or ascending order. Acceptable values
25029// are: - placedDateAsc - placedDateDesc
25030func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
25031	c.urlParams_.Set("orderBy", orderBy)
25032	return c
25033}
25034
25035// PageToken sets the optional parameter "pageToken": The token returned
25036// by the previous request.
25037func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
25038	c.urlParams_.Set("pageToken", pageToken)
25039	return c
25040}
25041
25042// PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
25043// orders placed before this date (exclusively), in ISO 8601 format.
25044func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
25045	c.urlParams_.Set("placedDateEnd", placedDateEnd)
25046	return c
25047}
25048
25049// PlacedDateStart sets the optional parameter "placedDateStart":
25050// Obtains orders placed after this date (inclusively), in ISO 8601
25051// format.
25052func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
25053	c.urlParams_.Set("placedDateStart", placedDateStart)
25054	return c
25055}
25056
25057// Statuses sets the optional parameter "statuses": Obtains orders that
25058// match any of the specified statuses. Please note that `active` is a
25059// shortcut for `pendingShipment` and `partiallyShipped`, and
25060// `completed` is a shortcut for `shipped`, `partiallyDelivered`,
25061// `delivered`, `partiallyReturned`, `returned`, and `canceled`.
25062//
25063// Possible values:
25064//   "ACTIVE"
25065//   "COMPLETED"
25066//   "CANCELED"
25067//   "IN_PROGRESS"
25068//   "PENDING_SHIPMENT"
25069//   "PARTIALLY_SHIPPED"
25070//   "SHIPPED"
25071//   "PARTIALLY_DELIVERED"
25072//   "DELIVERED"
25073//   "PARTIALLY_RETURNED"
25074//   "RETURNED"
25075func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
25076	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
25077	return c
25078}
25079
25080// Fields allows partial responses to be retrieved. See
25081// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25082// for more information.
25083func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
25084	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25085	return c
25086}
25087
25088// IfNoneMatch sets the optional parameter which makes the operation
25089// fail if the object's ETag matches the given value. This is useful for
25090// getting updates only after the object has changed since the last
25091// request. Use googleapi.IsNotModified to check whether the response
25092// error from Do is the result of In-None-Match.
25093func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
25094	c.ifNoneMatch_ = entityTag
25095	return c
25096}
25097
25098// Context sets the context to be used in this call's Do method. Any
25099// pending HTTP request will be aborted if the provided context is
25100// canceled.
25101func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
25102	c.ctx_ = ctx
25103	return c
25104}
25105
25106// Header returns an http.Header that can be modified by the caller to
25107// add HTTP headers to the request.
25108func (c *OrdersListCall) Header() http.Header {
25109	if c.header_ == nil {
25110		c.header_ = make(http.Header)
25111	}
25112	return c.header_
25113}
25114
25115func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
25116	reqHeaders := make(http.Header)
25117	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
25118	for k, v := range c.header_ {
25119		reqHeaders[k] = v
25120	}
25121	reqHeaders.Set("User-Agent", c.s.userAgent())
25122	if c.ifNoneMatch_ != "" {
25123		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25124	}
25125	var body io.Reader = nil
25126	c.urlParams_.Set("alt", alt)
25127	c.urlParams_.Set("prettyPrint", "false")
25128	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders")
25129	urls += "?" + c.urlParams_.Encode()
25130	req, err := http.NewRequest("GET", urls, body)
25131	if err != nil {
25132		return nil, err
25133	}
25134	req.Header = reqHeaders
25135	googleapi.Expand(req.URL, map[string]string{
25136		"merchantId": strconv.FormatUint(c.merchantId, 10),
25137	})
25138	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25139}
25140
25141// Do executes the "content.orders.list" call.
25142// Exactly one of *OrdersListResponse or error will be non-nil. Any
25143// non-2xx status code is an error. Response headers are in either
25144// *OrdersListResponse.ServerResponse.Header or (if a response was
25145// returned at all) in error.(*googleapi.Error).Header. Use
25146// googleapi.IsNotModified to check whether the returned error was
25147// because http.StatusNotModified was returned.
25148func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
25149	gensupport.SetOptions(c.urlParams_, opts...)
25150	res, err := c.doRequest("json")
25151	if res != nil && res.StatusCode == http.StatusNotModified {
25152		if res.Body != nil {
25153			res.Body.Close()
25154		}
25155		return nil, &googleapi.Error{
25156			Code:   res.StatusCode,
25157			Header: res.Header,
25158		}
25159	}
25160	if err != nil {
25161		return nil, err
25162	}
25163	defer googleapi.CloseBody(res)
25164	if err := googleapi.CheckResponse(res); err != nil {
25165		return nil, err
25166	}
25167	ret := &OrdersListResponse{
25168		ServerResponse: googleapi.ServerResponse{
25169			Header:         res.Header,
25170			HTTPStatusCode: res.StatusCode,
25171		},
25172	}
25173	target := &ret
25174	if err := gensupport.DecodeResponse(target, res); err != nil {
25175		return nil, err
25176	}
25177	return ret, nil
25178	// {
25179	//   "description": "Lists the orders in your Merchant Center account.",
25180	//   "flatPath": "content/v2.1/{merchantId}/orders",
25181	//   "httpMethod": "GET",
25182	//   "id": "content.orders.list",
25183	//   "parameterOrder": [
25184	//     "merchantId"
25185	//   ],
25186	//   "parameters": {
25187	//     "acknowledged": {
25188	//       "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. ",
25189	//       "location": "query",
25190	//       "type": "boolean"
25191	//     },
25192	//     "maxResults": {
25193	//       "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.",
25194	//       "format": "uint32",
25195	//       "location": "query",
25196	//       "type": "integer"
25197	//     },
25198	//     "merchantId": {
25199	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
25200	//       "format": "uint64",
25201	//       "location": "path",
25202	//       "required": true,
25203	//       "type": "string"
25204	//     },
25205	//     "orderBy": {
25206	//       "description": "Order results by placement date in descending or ascending order. Acceptable values are: - placedDateAsc - placedDateDesc ",
25207	//       "location": "query",
25208	//       "type": "string"
25209	//     },
25210	//     "pageToken": {
25211	//       "description": "The token returned by the previous request.",
25212	//       "location": "query",
25213	//       "type": "string"
25214	//     },
25215	//     "placedDateEnd": {
25216	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
25217	//       "location": "query",
25218	//       "type": "string"
25219	//     },
25220	//     "placedDateStart": {
25221	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
25222	//       "location": "query",
25223	//       "type": "string"
25224	//     },
25225	//     "statuses": {
25226	//       "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`.",
25227	//       "enum": [
25228	//         "ACTIVE",
25229	//         "COMPLETED",
25230	//         "CANCELED",
25231	//         "IN_PROGRESS",
25232	//         "PENDING_SHIPMENT",
25233	//         "PARTIALLY_SHIPPED",
25234	//         "SHIPPED",
25235	//         "PARTIALLY_DELIVERED",
25236	//         "DELIVERED",
25237	//         "PARTIALLY_RETURNED",
25238	//         "RETURNED"
25239	//       ],
25240	//       "enumDescriptions": [
25241	//         "",
25242	//         "",
25243	//         "",
25244	//         "",
25245	//         "",
25246	//         "",
25247	//         "",
25248	//         "",
25249	//         "",
25250	//         "",
25251	//         ""
25252	//       ],
25253	//       "location": "query",
25254	//       "repeated": true,
25255	//       "type": "string"
25256	//     }
25257	//   },
25258	//   "path": "content/v2.1/{merchantId}/orders",
25259	//   "response": {
25260	//     "$ref": "OrdersListResponse"
25261	//   },
25262	//   "scopes": [
25263	//     "https://www.googleapis.com/auth/content"
25264	//   ]
25265	// }
25266
25267}
25268
25269// Pages invokes f for each page of results.
25270// A non-nil error returned from f will halt the iteration.
25271// The provided context supersedes any context provided to the Context method.
25272func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
25273	c.ctx_ = ctx
25274	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25275	for {
25276		x, err := c.Do()
25277		if err != nil {
25278			return err
25279		}
25280		if err := f(x); err != nil {
25281			return err
25282		}
25283		if x.NextPageToken == "" {
25284			return nil
25285		}
25286		c.PageToken(x.NextPageToken)
25287	}
25288}
25289
25290// method id "content.orders.refunditem":
25291
25292type OrdersRefunditemCall struct {
25293	s                       *APIService
25294	merchantId              uint64
25295	orderId                 string
25296	ordersrefunditemrequest *OrdersRefundItemRequest
25297	urlParams_              gensupport.URLParams
25298	ctx_                    context.Context
25299	header_                 http.Header
25300}
25301
25302// Refunditem: Issues a partial or total refund for items and shipment.
25303func (r *OrdersService) Refunditem(merchantId uint64, orderId string, ordersrefunditemrequest *OrdersRefundItemRequest) *OrdersRefunditemCall {
25304	c := &OrdersRefunditemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25305	c.merchantId = merchantId
25306	c.orderId = orderId
25307	c.ordersrefunditemrequest = ordersrefunditemrequest
25308	return c
25309}
25310
25311// Fields allows partial responses to be retrieved. See
25312// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25313// for more information.
25314func (c *OrdersRefunditemCall) Fields(s ...googleapi.Field) *OrdersRefunditemCall {
25315	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25316	return c
25317}
25318
25319// Context sets the context to be used in this call's Do method. Any
25320// pending HTTP request will be aborted if the provided context is
25321// canceled.
25322func (c *OrdersRefunditemCall) Context(ctx context.Context) *OrdersRefunditemCall {
25323	c.ctx_ = ctx
25324	return c
25325}
25326
25327// Header returns an http.Header that can be modified by the caller to
25328// add HTTP headers to the request.
25329func (c *OrdersRefunditemCall) Header() http.Header {
25330	if c.header_ == nil {
25331		c.header_ = make(http.Header)
25332	}
25333	return c.header_
25334}
25335
25336func (c *OrdersRefunditemCall) doRequest(alt string) (*http.Response, error) {
25337	reqHeaders := make(http.Header)
25338	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
25339	for k, v := range c.header_ {
25340		reqHeaders[k] = v
25341	}
25342	reqHeaders.Set("User-Agent", c.s.userAgent())
25343	var body io.Reader = nil
25344	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefunditemrequest)
25345	if err != nil {
25346		return nil, err
25347	}
25348	reqHeaders.Set("Content-Type", "application/json")
25349	c.urlParams_.Set("alt", alt)
25350	c.urlParams_.Set("prettyPrint", "false")
25351	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/refunditem")
25352	urls += "?" + c.urlParams_.Encode()
25353	req, err := http.NewRequest("POST", urls, body)
25354	if err != nil {
25355		return nil, err
25356	}
25357	req.Header = reqHeaders
25358	googleapi.Expand(req.URL, map[string]string{
25359		"merchantId": strconv.FormatUint(c.merchantId, 10),
25360		"orderId":    c.orderId,
25361	})
25362	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25363}
25364
25365// Do executes the "content.orders.refunditem" call.
25366// Exactly one of *OrdersRefundItemResponse or error will be non-nil.
25367// Any non-2xx status code is an error. Response headers are in either
25368// *OrdersRefundItemResponse.ServerResponse.Header or (if a response was
25369// returned at all) in error.(*googleapi.Error).Header. Use
25370// googleapi.IsNotModified to check whether the returned error was
25371// because http.StatusNotModified was returned.
25372func (c *OrdersRefunditemCall) Do(opts ...googleapi.CallOption) (*OrdersRefundItemResponse, error) {
25373	gensupport.SetOptions(c.urlParams_, opts...)
25374	res, err := c.doRequest("json")
25375	if res != nil && res.StatusCode == http.StatusNotModified {
25376		if res.Body != nil {
25377			res.Body.Close()
25378		}
25379		return nil, &googleapi.Error{
25380			Code:   res.StatusCode,
25381			Header: res.Header,
25382		}
25383	}
25384	if err != nil {
25385		return nil, err
25386	}
25387	defer googleapi.CloseBody(res)
25388	if err := googleapi.CheckResponse(res); err != nil {
25389		return nil, err
25390	}
25391	ret := &OrdersRefundItemResponse{
25392		ServerResponse: googleapi.ServerResponse{
25393			Header:         res.Header,
25394			HTTPStatusCode: res.StatusCode,
25395		},
25396	}
25397	target := &ret
25398	if err := gensupport.DecodeResponse(target, res); err != nil {
25399		return nil, err
25400	}
25401	return ret, nil
25402	// {
25403	//   "description": "Issues a partial or total refund for items and shipment.",
25404	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/refunditem",
25405	//   "httpMethod": "POST",
25406	//   "id": "content.orders.refunditem",
25407	//   "parameterOrder": [
25408	//     "merchantId",
25409	//     "orderId"
25410	//   ],
25411	//   "parameters": {
25412	//     "merchantId": {
25413	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
25414	//       "format": "uint64",
25415	//       "location": "path",
25416	//       "required": true,
25417	//       "type": "string"
25418	//     },
25419	//     "orderId": {
25420	//       "description": "The ID of the order to refund.",
25421	//       "location": "path",
25422	//       "required": true,
25423	//       "type": "string"
25424	//     }
25425	//   },
25426	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/refunditem",
25427	//   "request": {
25428	//     "$ref": "OrdersRefundItemRequest"
25429	//   },
25430	//   "response": {
25431	//     "$ref": "OrdersRefundItemResponse"
25432	//   },
25433	//   "scopes": [
25434	//     "https://www.googleapis.com/auth/content"
25435	//   ]
25436	// }
25437
25438}
25439
25440// method id "content.orders.refundorder":
25441
25442type OrdersRefundorderCall struct {
25443	s                        *APIService
25444	merchantId               uint64
25445	orderId                  string
25446	ordersrefundorderrequest *OrdersRefundOrderRequest
25447	urlParams_               gensupport.URLParams
25448	ctx_                     context.Context
25449	header_                  http.Header
25450}
25451
25452// Refundorder: Issues a partial or total refund for an order.
25453func (r *OrdersService) Refundorder(merchantId uint64, orderId string, ordersrefundorderrequest *OrdersRefundOrderRequest) *OrdersRefundorderCall {
25454	c := &OrdersRefundorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25455	c.merchantId = merchantId
25456	c.orderId = orderId
25457	c.ordersrefundorderrequest = ordersrefundorderrequest
25458	return c
25459}
25460
25461// Fields allows partial responses to be retrieved. See
25462// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25463// for more information.
25464func (c *OrdersRefundorderCall) Fields(s ...googleapi.Field) *OrdersRefundorderCall {
25465	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25466	return c
25467}
25468
25469// Context sets the context to be used in this call's Do method. Any
25470// pending HTTP request will be aborted if the provided context is
25471// canceled.
25472func (c *OrdersRefundorderCall) Context(ctx context.Context) *OrdersRefundorderCall {
25473	c.ctx_ = ctx
25474	return c
25475}
25476
25477// Header returns an http.Header that can be modified by the caller to
25478// add HTTP headers to the request.
25479func (c *OrdersRefundorderCall) Header() http.Header {
25480	if c.header_ == nil {
25481		c.header_ = make(http.Header)
25482	}
25483	return c.header_
25484}
25485
25486func (c *OrdersRefundorderCall) doRequest(alt string) (*http.Response, error) {
25487	reqHeaders := make(http.Header)
25488	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
25489	for k, v := range c.header_ {
25490		reqHeaders[k] = v
25491	}
25492	reqHeaders.Set("User-Agent", c.s.userAgent())
25493	var body io.Reader = nil
25494	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefundorderrequest)
25495	if err != nil {
25496		return nil, err
25497	}
25498	reqHeaders.Set("Content-Type", "application/json")
25499	c.urlParams_.Set("alt", alt)
25500	c.urlParams_.Set("prettyPrint", "false")
25501	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/refundorder")
25502	urls += "?" + c.urlParams_.Encode()
25503	req, err := http.NewRequest("POST", urls, body)
25504	if err != nil {
25505		return nil, err
25506	}
25507	req.Header = reqHeaders
25508	googleapi.Expand(req.URL, map[string]string{
25509		"merchantId": strconv.FormatUint(c.merchantId, 10),
25510		"orderId":    c.orderId,
25511	})
25512	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25513}
25514
25515// Do executes the "content.orders.refundorder" call.
25516// Exactly one of *OrdersRefundOrderResponse or error will be non-nil.
25517// Any non-2xx status code is an error. Response headers are in either
25518// *OrdersRefundOrderResponse.ServerResponse.Header or (if a response
25519// was returned at all) in error.(*googleapi.Error).Header. Use
25520// googleapi.IsNotModified to check whether the returned error was
25521// because http.StatusNotModified was returned.
25522func (c *OrdersRefundorderCall) Do(opts ...googleapi.CallOption) (*OrdersRefundOrderResponse, error) {
25523	gensupport.SetOptions(c.urlParams_, opts...)
25524	res, err := c.doRequest("json")
25525	if res != nil && res.StatusCode == http.StatusNotModified {
25526		if res.Body != nil {
25527			res.Body.Close()
25528		}
25529		return nil, &googleapi.Error{
25530			Code:   res.StatusCode,
25531			Header: res.Header,
25532		}
25533	}
25534	if err != nil {
25535		return nil, err
25536	}
25537	defer googleapi.CloseBody(res)
25538	if err := googleapi.CheckResponse(res); err != nil {
25539		return nil, err
25540	}
25541	ret := &OrdersRefundOrderResponse{
25542		ServerResponse: googleapi.ServerResponse{
25543			Header:         res.Header,
25544			HTTPStatusCode: res.StatusCode,
25545		},
25546	}
25547	target := &ret
25548	if err := gensupport.DecodeResponse(target, res); err != nil {
25549		return nil, err
25550	}
25551	return ret, nil
25552	// {
25553	//   "description": "Issues a partial or total refund for an order.",
25554	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/refundorder",
25555	//   "httpMethod": "POST",
25556	//   "id": "content.orders.refundorder",
25557	//   "parameterOrder": [
25558	//     "merchantId",
25559	//     "orderId"
25560	//   ],
25561	//   "parameters": {
25562	//     "merchantId": {
25563	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
25564	//       "format": "uint64",
25565	//       "location": "path",
25566	//       "required": true,
25567	//       "type": "string"
25568	//     },
25569	//     "orderId": {
25570	//       "description": "The ID of the order to refund.",
25571	//       "location": "path",
25572	//       "required": true,
25573	//       "type": "string"
25574	//     }
25575	//   },
25576	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/refundorder",
25577	//   "request": {
25578	//     "$ref": "OrdersRefundOrderRequest"
25579	//   },
25580	//   "response": {
25581	//     "$ref": "OrdersRefundOrderResponse"
25582	//   },
25583	//   "scopes": [
25584	//     "https://www.googleapis.com/auth/content"
25585	//   ]
25586	// }
25587
25588}
25589
25590// method id "content.orders.rejectreturnlineitem":
25591
25592type OrdersRejectreturnlineitemCall struct {
25593	s                                 *APIService
25594	merchantId                        uint64
25595	orderId                           string
25596	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
25597	urlParams_                        gensupport.URLParams
25598	ctx_                              context.Context
25599	header_                           http.Header
25600}
25601
25602// Rejectreturnlineitem: Rejects return on an line item.
25603func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
25604	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25605	c.merchantId = merchantId
25606	c.orderId = orderId
25607	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
25608	return c
25609}
25610
25611// Fields allows partial responses to be retrieved. See
25612// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25613// for more information.
25614func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
25615	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25616	return c
25617}
25618
25619// Context sets the context to be used in this call's Do method. Any
25620// pending HTTP request will be aborted if the provided context is
25621// canceled.
25622func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
25623	c.ctx_ = ctx
25624	return c
25625}
25626
25627// Header returns an http.Header that can be modified by the caller to
25628// add HTTP headers to the request.
25629func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
25630	if c.header_ == nil {
25631		c.header_ = make(http.Header)
25632	}
25633	return c.header_
25634}
25635
25636func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
25637	reqHeaders := make(http.Header)
25638	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
25639	for k, v := range c.header_ {
25640		reqHeaders[k] = v
25641	}
25642	reqHeaders.Set("User-Agent", c.s.userAgent())
25643	var body io.Reader = nil
25644	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
25645	if err != nil {
25646		return nil, err
25647	}
25648	reqHeaders.Set("Content-Type", "application/json")
25649	c.urlParams_.Set("alt", alt)
25650	c.urlParams_.Set("prettyPrint", "false")
25651	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/rejectReturnLineItem")
25652	urls += "?" + c.urlParams_.Encode()
25653	req, err := http.NewRequest("POST", urls, body)
25654	if err != nil {
25655		return nil, err
25656	}
25657	req.Header = reqHeaders
25658	googleapi.Expand(req.URL, map[string]string{
25659		"merchantId": strconv.FormatUint(c.merchantId, 10),
25660		"orderId":    c.orderId,
25661	})
25662	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25663}
25664
25665// Do executes the "content.orders.rejectreturnlineitem" call.
25666// Exactly one of *OrdersRejectReturnLineItemResponse or error will be
25667// non-nil. Any non-2xx status code is an error. Response headers are in
25668// either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
25669// (if a response was returned at all) in
25670// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25671// whether the returned error was because http.StatusNotModified was
25672// returned.
25673func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
25674	gensupport.SetOptions(c.urlParams_, opts...)
25675	res, err := c.doRequest("json")
25676	if res != nil && res.StatusCode == http.StatusNotModified {
25677		if res.Body != nil {
25678			res.Body.Close()
25679		}
25680		return nil, &googleapi.Error{
25681			Code:   res.StatusCode,
25682			Header: res.Header,
25683		}
25684	}
25685	if err != nil {
25686		return nil, err
25687	}
25688	defer googleapi.CloseBody(res)
25689	if err := googleapi.CheckResponse(res); err != nil {
25690		return nil, err
25691	}
25692	ret := &OrdersRejectReturnLineItemResponse{
25693		ServerResponse: googleapi.ServerResponse{
25694			Header:         res.Header,
25695			HTTPStatusCode: res.StatusCode,
25696		},
25697	}
25698	target := &ret
25699	if err := gensupport.DecodeResponse(target, res); err != nil {
25700		return nil, err
25701	}
25702	return ret, nil
25703	// {
25704	//   "description": "Rejects return on an line item.",
25705	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/rejectReturnLineItem",
25706	//   "httpMethod": "POST",
25707	//   "id": "content.orders.rejectreturnlineitem",
25708	//   "parameterOrder": [
25709	//     "merchantId",
25710	//     "orderId"
25711	//   ],
25712	//   "parameters": {
25713	//     "merchantId": {
25714	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
25715	//       "format": "uint64",
25716	//       "location": "path",
25717	//       "required": true,
25718	//       "type": "string"
25719	//     },
25720	//     "orderId": {
25721	//       "description": "The ID of the order.",
25722	//       "location": "path",
25723	//       "required": true,
25724	//       "type": "string"
25725	//     }
25726	//   },
25727	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/rejectReturnLineItem",
25728	//   "request": {
25729	//     "$ref": "OrdersRejectReturnLineItemRequest"
25730	//   },
25731	//   "response": {
25732	//     "$ref": "OrdersRejectReturnLineItemResponse"
25733	//   },
25734	//   "scopes": [
25735	//     "https://www.googleapis.com/auth/content"
25736	//   ]
25737	// }
25738
25739}
25740
25741// method id "content.orders.returnrefundlineitem":
25742
25743type OrdersReturnrefundlineitemCall struct {
25744	s                                 *APIService
25745	merchantId                        uint64
25746	orderId                           string
25747	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
25748	urlParams_                        gensupport.URLParams
25749	ctx_                              context.Context
25750	header_                           http.Header
25751}
25752
25753// Returnrefundlineitem: Returns and refunds a line item. Note that this
25754// method can only be called on fully shipped orders. Please also note
25755// that the Orderreturns API is the preferred way to handle returns
25756// after you receive a return from a customer. You can use
25757// Orderreturns.list or Orderreturns.get to search for the return, and
25758// then use Orderreturns.processreturn to issue the refund. If the
25759// return cannot be found, then we recommend using this API to issue a
25760// refund.
25761func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
25762	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25763	c.merchantId = merchantId
25764	c.orderId = orderId
25765	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
25766	return c
25767}
25768
25769// Fields allows partial responses to be retrieved. See
25770// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25771// for more information.
25772func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
25773	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25774	return c
25775}
25776
25777// Context sets the context to be used in this call's Do method. Any
25778// pending HTTP request will be aborted if the provided context is
25779// canceled.
25780func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
25781	c.ctx_ = ctx
25782	return c
25783}
25784
25785// Header returns an http.Header that can be modified by the caller to
25786// add HTTP headers to the request.
25787func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
25788	if c.header_ == nil {
25789		c.header_ = make(http.Header)
25790	}
25791	return c.header_
25792}
25793
25794func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
25795	reqHeaders := make(http.Header)
25796	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
25797	for k, v := range c.header_ {
25798		reqHeaders[k] = v
25799	}
25800	reqHeaders.Set("User-Agent", c.s.userAgent())
25801	var body io.Reader = nil
25802	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
25803	if err != nil {
25804		return nil, err
25805	}
25806	reqHeaders.Set("Content-Type", "application/json")
25807	c.urlParams_.Set("alt", alt)
25808	c.urlParams_.Set("prettyPrint", "false")
25809	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/returnRefundLineItem")
25810	urls += "?" + c.urlParams_.Encode()
25811	req, err := http.NewRequest("POST", urls, body)
25812	if err != nil {
25813		return nil, err
25814	}
25815	req.Header = reqHeaders
25816	googleapi.Expand(req.URL, map[string]string{
25817		"merchantId": strconv.FormatUint(c.merchantId, 10),
25818		"orderId":    c.orderId,
25819	})
25820	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25821}
25822
25823// Do executes the "content.orders.returnrefundlineitem" call.
25824// Exactly one of *OrdersReturnRefundLineItemResponse or error will be
25825// non-nil. Any non-2xx status code is an error. Response headers are in
25826// either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
25827// (if a response was returned at all) in
25828// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25829// whether the returned error was because http.StatusNotModified was
25830// returned.
25831func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
25832	gensupport.SetOptions(c.urlParams_, opts...)
25833	res, err := c.doRequest("json")
25834	if res != nil && res.StatusCode == http.StatusNotModified {
25835		if res.Body != nil {
25836			res.Body.Close()
25837		}
25838		return nil, &googleapi.Error{
25839			Code:   res.StatusCode,
25840			Header: res.Header,
25841		}
25842	}
25843	if err != nil {
25844		return nil, err
25845	}
25846	defer googleapi.CloseBody(res)
25847	if err := googleapi.CheckResponse(res); err != nil {
25848		return nil, err
25849	}
25850	ret := &OrdersReturnRefundLineItemResponse{
25851		ServerResponse: googleapi.ServerResponse{
25852			Header:         res.Header,
25853			HTTPStatusCode: res.StatusCode,
25854		},
25855	}
25856	target := &ret
25857	if err := gensupport.DecodeResponse(target, res); err != nil {
25858		return nil, err
25859	}
25860	return ret, nil
25861	// {
25862	//   "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.",
25863	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/returnRefundLineItem",
25864	//   "httpMethod": "POST",
25865	//   "id": "content.orders.returnrefundlineitem",
25866	//   "parameterOrder": [
25867	//     "merchantId",
25868	//     "orderId"
25869	//   ],
25870	//   "parameters": {
25871	//     "merchantId": {
25872	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
25873	//       "format": "uint64",
25874	//       "location": "path",
25875	//       "required": true,
25876	//       "type": "string"
25877	//     },
25878	//     "orderId": {
25879	//       "description": "The ID of the order.",
25880	//       "location": "path",
25881	//       "required": true,
25882	//       "type": "string"
25883	//     }
25884	//   },
25885	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/returnRefundLineItem",
25886	//   "request": {
25887	//     "$ref": "OrdersReturnRefundLineItemRequest"
25888	//   },
25889	//   "response": {
25890	//     "$ref": "OrdersReturnRefundLineItemResponse"
25891	//   },
25892	//   "scopes": [
25893	//     "https://www.googleapis.com/auth/content"
25894	//   ]
25895	// }
25896
25897}
25898
25899// method id "content.orders.setlineitemmetadata":
25900
25901type OrdersSetlineitemmetadataCall struct {
25902	s                                *APIService
25903	merchantId                       uint64
25904	orderId                          string
25905	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
25906	urlParams_                       gensupport.URLParams
25907	ctx_                             context.Context
25908	header_                          http.Header
25909}
25910
25911// Setlineitemmetadata: Sets (or overrides if it already exists)
25912// merchant provided annotations in the form of key-value pairs. A
25913// common use case would be to supply us with additional structured
25914// information about a line item that cannot be provided via other
25915// methods. Submitted key-value pairs can be retrieved as part of the
25916// orders resource.
25917func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
25918	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25919	c.merchantId = merchantId
25920	c.orderId = orderId
25921	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
25922	return c
25923}
25924
25925// Fields allows partial responses to be retrieved. See
25926// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25927// for more information.
25928func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
25929	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25930	return c
25931}
25932
25933// Context sets the context to be used in this call's Do method. Any
25934// pending HTTP request will be aborted if the provided context is
25935// canceled.
25936func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
25937	c.ctx_ = ctx
25938	return c
25939}
25940
25941// Header returns an http.Header that can be modified by the caller to
25942// add HTTP headers to the request.
25943func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
25944	if c.header_ == nil {
25945		c.header_ = make(http.Header)
25946	}
25947	return c.header_
25948}
25949
25950func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
25951	reqHeaders := make(http.Header)
25952	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
25953	for k, v := range c.header_ {
25954		reqHeaders[k] = v
25955	}
25956	reqHeaders.Set("User-Agent", c.s.userAgent())
25957	var body io.Reader = nil
25958	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
25959	if err != nil {
25960		return nil, err
25961	}
25962	reqHeaders.Set("Content-Type", "application/json")
25963	c.urlParams_.Set("alt", alt)
25964	c.urlParams_.Set("prettyPrint", "false")
25965	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/setLineItemMetadata")
25966	urls += "?" + c.urlParams_.Encode()
25967	req, err := http.NewRequest("POST", urls, body)
25968	if err != nil {
25969		return nil, err
25970	}
25971	req.Header = reqHeaders
25972	googleapi.Expand(req.URL, map[string]string{
25973		"merchantId": strconv.FormatUint(c.merchantId, 10),
25974		"orderId":    c.orderId,
25975	})
25976	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25977}
25978
25979// Do executes the "content.orders.setlineitemmetadata" call.
25980// Exactly one of *OrdersSetLineItemMetadataResponse or error will be
25981// non-nil. Any non-2xx status code is an error. Response headers are in
25982// either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
25983// (if a response was returned at all) in
25984// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25985// whether the returned error was because http.StatusNotModified was
25986// returned.
25987func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
25988	gensupport.SetOptions(c.urlParams_, opts...)
25989	res, err := c.doRequest("json")
25990	if res != nil && res.StatusCode == http.StatusNotModified {
25991		if res.Body != nil {
25992			res.Body.Close()
25993		}
25994		return nil, &googleapi.Error{
25995			Code:   res.StatusCode,
25996			Header: res.Header,
25997		}
25998	}
25999	if err != nil {
26000		return nil, err
26001	}
26002	defer googleapi.CloseBody(res)
26003	if err := googleapi.CheckResponse(res); err != nil {
26004		return nil, err
26005	}
26006	ret := &OrdersSetLineItemMetadataResponse{
26007		ServerResponse: googleapi.ServerResponse{
26008			Header:         res.Header,
26009			HTTPStatusCode: res.StatusCode,
26010		},
26011	}
26012	target := &ret
26013	if err := gensupport.DecodeResponse(target, res); err != nil {
26014		return nil, err
26015	}
26016	return ret, nil
26017	// {
26018	//   "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.",
26019	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/setLineItemMetadata",
26020	//   "httpMethod": "POST",
26021	//   "id": "content.orders.setlineitemmetadata",
26022	//   "parameterOrder": [
26023	//     "merchantId",
26024	//     "orderId"
26025	//   ],
26026	//   "parameters": {
26027	//     "merchantId": {
26028	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26029	//       "format": "uint64",
26030	//       "location": "path",
26031	//       "required": true,
26032	//       "type": "string"
26033	//     },
26034	//     "orderId": {
26035	//       "description": "The ID of the order.",
26036	//       "location": "path",
26037	//       "required": true,
26038	//       "type": "string"
26039	//     }
26040	//   },
26041	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/setLineItemMetadata",
26042	//   "request": {
26043	//     "$ref": "OrdersSetLineItemMetadataRequest"
26044	//   },
26045	//   "response": {
26046	//     "$ref": "OrdersSetLineItemMetadataResponse"
26047	//   },
26048	//   "scopes": [
26049	//     "https://www.googleapis.com/auth/content"
26050	//   ]
26051	// }
26052
26053}
26054
26055// method id "content.orders.shiplineitems":
26056
26057type OrdersShiplineitemsCall struct {
26058	s                          *APIService
26059	merchantId                 uint64
26060	orderId                    string
26061	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
26062	urlParams_                 gensupport.URLParams
26063	ctx_                       context.Context
26064	header_                    http.Header
26065}
26066
26067// Shiplineitems: Marks line item(s) as shipped.
26068func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
26069	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26070	c.merchantId = merchantId
26071	c.orderId = orderId
26072	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
26073	return c
26074}
26075
26076// Fields allows partial responses to be retrieved. See
26077// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26078// for more information.
26079func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
26080	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26081	return c
26082}
26083
26084// Context sets the context to be used in this call's Do method. Any
26085// pending HTTP request will be aborted if the provided context is
26086// canceled.
26087func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
26088	c.ctx_ = ctx
26089	return c
26090}
26091
26092// Header returns an http.Header that can be modified by the caller to
26093// add HTTP headers to the request.
26094func (c *OrdersShiplineitemsCall) Header() http.Header {
26095	if c.header_ == nil {
26096		c.header_ = make(http.Header)
26097	}
26098	return c.header_
26099}
26100
26101func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
26102	reqHeaders := make(http.Header)
26103	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
26104	for k, v := range c.header_ {
26105		reqHeaders[k] = v
26106	}
26107	reqHeaders.Set("User-Agent", c.s.userAgent())
26108	var body io.Reader = nil
26109	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
26110	if err != nil {
26111		return nil, err
26112	}
26113	reqHeaders.Set("Content-Type", "application/json")
26114	c.urlParams_.Set("alt", alt)
26115	c.urlParams_.Set("prettyPrint", "false")
26116	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/shipLineItems")
26117	urls += "?" + c.urlParams_.Encode()
26118	req, err := http.NewRequest("POST", urls, body)
26119	if err != nil {
26120		return nil, err
26121	}
26122	req.Header = reqHeaders
26123	googleapi.Expand(req.URL, map[string]string{
26124		"merchantId": strconv.FormatUint(c.merchantId, 10),
26125		"orderId":    c.orderId,
26126	})
26127	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26128}
26129
26130// Do executes the "content.orders.shiplineitems" call.
26131// Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
26132// Any non-2xx status code is an error. Response headers are in either
26133// *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
26134// was returned at all) in error.(*googleapi.Error).Header. Use
26135// googleapi.IsNotModified to check whether the returned error was
26136// because http.StatusNotModified was returned.
26137func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
26138	gensupport.SetOptions(c.urlParams_, opts...)
26139	res, err := c.doRequest("json")
26140	if res != nil && res.StatusCode == http.StatusNotModified {
26141		if res.Body != nil {
26142			res.Body.Close()
26143		}
26144		return nil, &googleapi.Error{
26145			Code:   res.StatusCode,
26146			Header: res.Header,
26147		}
26148	}
26149	if err != nil {
26150		return nil, err
26151	}
26152	defer googleapi.CloseBody(res)
26153	if err := googleapi.CheckResponse(res); err != nil {
26154		return nil, err
26155	}
26156	ret := &OrdersShipLineItemsResponse{
26157		ServerResponse: googleapi.ServerResponse{
26158			Header:         res.Header,
26159			HTTPStatusCode: res.StatusCode,
26160		},
26161	}
26162	target := &ret
26163	if err := gensupport.DecodeResponse(target, res); err != nil {
26164		return nil, err
26165	}
26166	return ret, nil
26167	// {
26168	//   "description": "Marks line item(s) as shipped.",
26169	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/shipLineItems",
26170	//   "httpMethod": "POST",
26171	//   "id": "content.orders.shiplineitems",
26172	//   "parameterOrder": [
26173	//     "merchantId",
26174	//     "orderId"
26175	//   ],
26176	//   "parameters": {
26177	//     "merchantId": {
26178	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26179	//       "format": "uint64",
26180	//       "location": "path",
26181	//       "required": true,
26182	//       "type": "string"
26183	//     },
26184	//     "orderId": {
26185	//       "description": "The ID of the order.",
26186	//       "location": "path",
26187	//       "required": true,
26188	//       "type": "string"
26189	//     }
26190	//   },
26191	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/shipLineItems",
26192	//   "request": {
26193	//     "$ref": "OrdersShipLineItemsRequest"
26194	//   },
26195	//   "response": {
26196	//     "$ref": "OrdersShipLineItemsResponse"
26197	//   },
26198	//   "scopes": [
26199	//     "https://www.googleapis.com/auth/content"
26200	//   ]
26201	// }
26202
26203}
26204
26205// method id "content.orders.updatelineitemshippingdetails":
26206
26207type OrdersUpdatelineitemshippingdetailsCall struct {
26208	s                                          *APIService
26209	merchantId                                 uint64
26210	orderId                                    string
26211	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
26212	urlParams_                                 gensupport.URLParams
26213	ctx_                                       context.Context
26214	header_                                    http.Header
26215}
26216
26217// Updatelineitemshippingdetails: Updates ship by and delivery by dates
26218// for a line item.
26219func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
26220	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26221	c.merchantId = merchantId
26222	c.orderId = orderId
26223	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
26224	return c
26225}
26226
26227// Fields allows partial responses to be retrieved. See
26228// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26229// for more information.
26230func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
26231	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26232	return c
26233}
26234
26235// Context sets the context to be used in this call's Do method. Any
26236// pending HTTP request will be aborted if the provided context is
26237// canceled.
26238func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
26239	c.ctx_ = ctx
26240	return c
26241}
26242
26243// Header returns an http.Header that can be modified by the caller to
26244// add HTTP headers to the request.
26245func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
26246	if c.header_ == nil {
26247		c.header_ = make(http.Header)
26248	}
26249	return c.header_
26250}
26251
26252func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
26253	reqHeaders := make(http.Header)
26254	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
26255	for k, v := range c.header_ {
26256		reqHeaders[k] = v
26257	}
26258	reqHeaders.Set("User-Agent", c.s.userAgent())
26259	var body io.Reader = nil
26260	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
26261	if err != nil {
26262		return nil, err
26263	}
26264	reqHeaders.Set("Content-Type", "application/json")
26265	c.urlParams_.Set("alt", alt)
26266	c.urlParams_.Set("prettyPrint", "false")
26267	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
26268	urls += "?" + c.urlParams_.Encode()
26269	req, err := http.NewRequest("POST", urls, body)
26270	if err != nil {
26271		return nil, err
26272	}
26273	req.Header = reqHeaders
26274	googleapi.Expand(req.URL, map[string]string{
26275		"merchantId": strconv.FormatUint(c.merchantId, 10),
26276		"orderId":    c.orderId,
26277	})
26278	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26279}
26280
26281// Do executes the "content.orders.updatelineitemshippingdetails" call.
26282// Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
26283// will be non-nil. Any non-2xx status code is an error. Response
26284// headers are in either
26285// *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
26286// (if a response was returned at all) in
26287// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26288// whether the returned error was because http.StatusNotModified was
26289// returned.
26290func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
26291	gensupport.SetOptions(c.urlParams_, opts...)
26292	res, err := c.doRequest("json")
26293	if res != nil && res.StatusCode == http.StatusNotModified {
26294		if res.Body != nil {
26295			res.Body.Close()
26296		}
26297		return nil, &googleapi.Error{
26298			Code:   res.StatusCode,
26299			Header: res.Header,
26300		}
26301	}
26302	if err != nil {
26303		return nil, err
26304	}
26305	defer googleapi.CloseBody(res)
26306	if err := googleapi.CheckResponse(res); err != nil {
26307		return nil, err
26308	}
26309	ret := &OrdersUpdateLineItemShippingDetailsResponse{
26310		ServerResponse: googleapi.ServerResponse{
26311			Header:         res.Header,
26312			HTTPStatusCode: res.StatusCode,
26313		},
26314	}
26315	target := &ret
26316	if err := gensupport.DecodeResponse(target, res); err != nil {
26317		return nil, err
26318	}
26319	return ret, nil
26320	// {
26321	//   "description": "Updates ship by and delivery by dates for a line item.",
26322	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
26323	//   "httpMethod": "POST",
26324	//   "id": "content.orders.updatelineitemshippingdetails",
26325	//   "parameterOrder": [
26326	//     "merchantId",
26327	//     "orderId"
26328	//   ],
26329	//   "parameters": {
26330	//     "merchantId": {
26331	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26332	//       "format": "uint64",
26333	//       "location": "path",
26334	//       "required": true,
26335	//       "type": "string"
26336	//     },
26337	//     "orderId": {
26338	//       "description": "The ID of the order.",
26339	//       "location": "path",
26340	//       "required": true,
26341	//       "type": "string"
26342	//     }
26343	//   },
26344	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
26345	//   "request": {
26346	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
26347	//   },
26348	//   "response": {
26349	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
26350	//   },
26351	//   "scopes": [
26352	//     "https://www.googleapis.com/auth/content"
26353	//   ]
26354	// }
26355
26356}
26357
26358// method id "content.orders.updatemerchantorderid":
26359
26360type OrdersUpdatemerchantorderidCall struct {
26361	s                                  *APIService
26362	merchantId                         uint64
26363	orderId                            string
26364	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
26365	urlParams_                         gensupport.URLParams
26366	ctx_                               context.Context
26367	header_                            http.Header
26368}
26369
26370// Updatemerchantorderid: Updates the merchant order ID for a given
26371// order.
26372func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
26373	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26374	c.merchantId = merchantId
26375	c.orderId = orderId
26376	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
26377	return c
26378}
26379
26380// Fields allows partial responses to be retrieved. See
26381// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26382// for more information.
26383func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
26384	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26385	return c
26386}
26387
26388// Context sets the context to be used in this call's Do method. Any
26389// pending HTTP request will be aborted if the provided context is
26390// canceled.
26391func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
26392	c.ctx_ = ctx
26393	return c
26394}
26395
26396// Header returns an http.Header that can be modified by the caller to
26397// add HTTP headers to the request.
26398func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
26399	if c.header_ == nil {
26400		c.header_ = make(http.Header)
26401	}
26402	return c.header_
26403}
26404
26405func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
26406	reqHeaders := make(http.Header)
26407	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
26408	for k, v := range c.header_ {
26409		reqHeaders[k] = v
26410	}
26411	reqHeaders.Set("User-Agent", c.s.userAgent())
26412	var body io.Reader = nil
26413	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
26414	if err != nil {
26415		return nil, err
26416	}
26417	reqHeaders.Set("Content-Type", "application/json")
26418	c.urlParams_.Set("alt", alt)
26419	c.urlParams_.Set("prettyPrint", "false")
26420	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/updateMerchantOrderId")
26421	urls += "?" + c.urlParams_.Encode()
26422	req, err := http.NewRequest("POST", urls, body)
26423	if err != nil {
26424		return nil, err
26425	}
26426	req.Header = reqHeaders
26427	googleapi.Expand(req.URL, map[string]string{
26428		"merchantId": strconv.FormatUint(c.merchantId, 10),
26429		"orderId":    c.orderId,
26430	})
26431	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26432}
26433
26434// Do executes the "content.orders.updatemerchantorderid" call.
26435// Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
26436// non-nil. Any non-2xx status code is an error. Response headers are in
26437// either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
26438// (if a response was returned at all) in
26439// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26440// whether the returned error was because http.StatusNotModified was
26441// returned.
26442func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
26443	gensupport.SetOptions(c.urlParams_, opts...)
26444	res, err := c.doRequest("json")
26445	if res != nil && res.StatusCode == http.StatusNotModified {
26446		if res.Body != nil {
26447			res.Body.Close()
26448		}
26449		return nil, &googleapi.Error{
26450			Code:   res.StatusCode,
26451			Header: res.Header,
26452		}
26453	}
26454	if err != nil {
26455		return nil, err
26456	}
26457	defer googleapi.CloseBody(res)
26458	if err := googleapi.CheckResponse(res); err != nil {
26459		return nil, err
26460	}
26461	ret := &OrdersUpdateMerchantOrderIdResponse{
26462		ServerResponse: googleapi.ServerResponse{
26463			Header:         res.Header,
26464			HTTPStatusCode: res.StatusCode,
26465		},
26466	}
26467	target := &ret
26468	if err := gensupport.DecodeResponse(target, res); err != nil {
26469		return nil, err
26470	}
26471	return ret, nil
26472	// {
26473	//   "description": "Updates the merchant order ID for a given order.",
26474	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/updateMerchantOrderId",
26475	//   "httpMethod": "POST",
26476	//   "id": "content.orders.updatemerchantorderid",
26477	//   "parameterOrder": [
26478	//     "merchantId",
26479	//     "orderId"
26480	//   ],
26481	//   "parameters": {
26482	//     "merchantId": {
26483	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26484	//       "format": "uint64",
26485	//       "location": "path",
26486	//       "required": true,
26487	//       "type": "string"
26488	//     },
26489	//     "orderId": {
26490	//       "description": "The ID of the order.",
26491	//       "location": "path",
26492	//       "required": true,
26493	//       "type": "string"
26494	//     }
26495	//   },
26496	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/updateMerchantOrderId",
26497	//   "request": {
26498	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
26499	//   },
26500	//   "response": {
26501	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
26502	//   },
26503	//   "scopes": [
26504	//     "https://www.googleapis.com/auth/content"
26505	//   ]
26506	// }
26507
26508}
26509
26510// method id "content.orders.updateshipment":
26511
26512type OrdersUpdateshipmentCall struct {
26513	s                           *APIService
26514	merchantId                  uint64
26515	orderId                     string
26516	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
26517	urlParams_                  gensupport.URLParams
26518	ctx_                        context.Context
26519	header_                     http.Header
26520}
26521
26522// Updateshipment: Updates a shipment's status, carrier, and/or tracking
26523// ID.
26524func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
26525	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26526	c.merchantId = merchantId
26527	c.orderId = orderId
26528	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
26529	return c
26530}
26531
26532// Fields allows partial responses to be retrieved. See
26533// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26534// for more information.
26535func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
26536	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26537	return c
26538}
26539
26540// Context sets the context to be used in this call's Do method. Any
26541// pending HTTP request will be aborted if the provided context is
26542// canceled.
26543func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
26544	c.ctx_ = ctx
26545	return c
26546}
26547
26548// Header returns an http.Header that can be modified by the caller to
26549// add HTTP headers to the request.
26550func (c *OrdersUpdateshipmentCall) Header() http.Header {
26551	if c.header_ == nil {
26552		c.header_ = make(http.Header)
26553	}
26554	return c.header_
26555}
26556
26557func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
26558	reqHeaders := make(http.Header)
26559	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
26560	for k, v := range c.header_ {
26561		reqHeaders[k] = v
26562	}
26563	reqHeaders.Set("User-Agent", c.s.userAgent())
26564	var body io.Reader = nil
26565	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
26566	if err != nil {
26567		return nil, err
26568	}
26569	reqHeaders.Set("Content-Type", "application/json")
26570	c.urlParams_.Set("alt", alt)
26571	c.urlParams_.Set("prettyPrint", "false")
26572	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/orders/{orderId}/updateShipment")
26573	urls += "?" + c.urlParams_.Encode()
26574	req, err := http.NewRequest("POST", urls, body)
26575	if err != nil {
26576		return nil, err
26577	}
26578	req.Header = reqHeaders
26579	googleapi.Expand(req.URL, map[string]string{
26580		"merchantId": strconv.FormatUint(c.merchantId, 10),
26581		"orderId":    c.orderId,
26582	})
26583	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26584}
26585
26586// Do executes the "content.orders.updateshipment" call.
26587// Exactly one of *OrdersUpdateShipmentResponse or error will be
26588// non-nil. Any non-2xx status code is an error. Response headers are in
26589// either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
26590// response was returned at all) in error.(*googleapi.Error).Header. Use
26591// googleapi.IsNotModified to check whether the returned error was
26592// because http.StatusNotModified was returned.
26593func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
26594	gensupport.SetOptions(c.urlParams_, opts...)
26595	res, err := c.doRequest("json")
26596	if res != nil && res.StatusCode == http.StatusNotModified {
26597		if res.Body != nil {
26598			res.Body.Close()
26599		}
26600		return nil, &googleapi.Error{
26601			Code:   res.StatusCode,
26602			Header: res.Header,
26603		}
26604	}
26605	if err != nil {
26606		return nil, err
26607	}
26608	defer googleapi.CloseBody(res)
26609	if err := googleapi.CheckResponse(res); err != nil {
26610		return nil, err
26611	}
26612	ret := &OrdersUpdateShipmentResponse{
26613		ServerResponse: googleapi.ServerResponse{
26614			Header:         res.Header,
26615			HTTPStatusCode: res.StatusCode,
26616		},
26617	}
26618	target := &ret
26619	if err := gensupport.DecodeResponse(target, res); err != nil {
26620		return nil, err
26621	}
26622	return ret, nil
26623	// {
26624	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
26625	//   "flatPath": "content/v2.1/{merchantId}/orders/{orderId}/updateShipment",
26626	//   "httpMethod": "POST",
26627	//   "id": "content.orders.updateshipment",
26628	//   "parameterOrder": [
26629	//     "merchantId",
26630	//     "orderId"
26631	//   ],
26632	//   "parameters": {
26633	//     "merchantId": {
26634	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
26635	//       "format": "uint64",
26636	//       "location": "path",
26637	//       "required": true,
26638	//       "type": "string"
26639	//     },
26640	//     "orderId": {
26641	//       "description": "The ID of the order.",
26642	//       "location": "path",
26643	//       "required": true,
26644	//       "type": "string"
26645	//     }
26646	//   },
26647	//   "path": "content/v2.1/{merchantId}/orders/{orderId}/updateShipment",
26648	//   "request": {
26649	//     "$ref": "OrdersUpdateShipmentRequest"
26650	//   },
26651	//   "response": {
26652	//     "$ref": "OrdersUpdateShipmentResponse"
26653	//   },
26654	//   "scopes": [
26655	//     "https://www.googleapis.com/auth/content"
26656	//   ]
26657	// }
26658
26659}
26660
26661// method id "content.ordertrackingsignals.create":
26662
26663type OrdertrackingsignalsCreateCall struct {
26664	s                   *APIService
26665	merchantId          int64
26666	ordertrackingsignal *OrderTrackingSignal
26667	urlParams_          gensupport.URLParams
26668	ctx_                context.Context
26669	header_             http.Header
26670}
26671
26672// Create: Creates new order tracking signal.
26673func (r *OrdertrackingsignalsService) Create(merchantId int64, ordertrackingsignal *OrderTrackingSignal) *OrdertrackingsignalsCreateCall {
26674	c := &OrdertrackingsignalsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26675	c.merchantId = merchantId
26676	c.ordertrackingsignal = ordertrackingsignal
26677	return c
26678}
26679
26680// Fields allows partial responses to be retrieved. See
26681// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26682// for more information.
26683func (c *OrdertrackingsignalsCreateCall) Fields(s ...googleapi.Field) *OrdertrackingsignalsCreateCall {
26684	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26685	return c
26686}
26687
26688// Context sets the context to be used in this call's Do method. Any
26689// pending HTTP request will be aborted if the provided context is
26690// canceled.
26691func (c *OrdertrackingsignalsCreateCall) Context(ctx context.Context) *OrdertrackingsignalsCreateCall {
26692	c.ctx_ = ctx
26693	return c
26694}
26695
26696// Header returns an http.Header that can be modified by the caller to
26697// add HTTP headers to the request.
26698func (c *OrdertrackingsignalsCreateCall) Header() http.Header {
26699	if c.header_ == nil {
26700		c.header_ = make(http.Header)
26701	}
26702	return c.header_
26703}
26704
26705func (c *OrdertrackingsignalsCreateCall) doRequest(alt string) (*http.Response, error) {
26706	reqHeaders := make(http.Header)
26707	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
26708	for k, v := range c.header_ {
26709		reqHeaders[k] = v
26710	}
26711	reqHeaders.Set("User-Agent", c.s.userAgent())
26712	var body io.Reader = nil
26713	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordertrackingsignal)
26714	if err != nil {
26715		return nil, err
26716	}
26717	reqHeaders.Set("Content-Type", "application/json")
26718	c.urlParams_.Set("alt", alt)
26719	c.urlParams_.Set("prettyPrint", "false")
26720	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/ordertrackingsignals")
26721	urls += "?" + c.urlParams_.Encode()
26722	req, err := http.NewRequest("POST", urls, body)
26723	if err != nil {
26724		return nil, err
26725	}
26726	req.Header = reqHeaders
26727	googleapi.Expand(req.URL, map[string]string{
26728		"merchantId": strconv.FormatInt(c.merchantId, 10),
26729	})
26730	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26731}
26732
26733// Do executes the "content.ordertrackingsignals.create" call.
26734// Exactly one of *OrderTrackingSignal or error will be non-nil. Any
26735// non-2xx status code is an error. Response headers are in either
26736// *OrderTrackingSignal.ServerResponse.Header or (if a response was
26737// returned at all) in error.(*googleapi.Error).Header. Use
26738// googleapi.IsNotModified to check whether the returned error was
26739// because http.StatusNotModified was returned.
26740func (c *OrdertrackingsignalsCreateCall) Do(opts ...googleapi.CallOption) (*OrderTrackingSignal, error) {
26741	gensupport.SetOptions(c.urlParams_, opts...)
26742	res, err := c.doRequest("json")
26743	if res != nil && res.StatusCode == http.StatusNotModified {
26744		if res.Body != nil {
26745			res.Body.Close()
26746		}
26747		return nil, &googleapi.Error{
26748			Code:   res.StatusCode,
26749			Header: res.Header,
26750		}
26751	}
26752	if err != nil {
26753		return nil, err
26754	}
26755	defer googleapi.CloseBody(res)
26756	if err := googleapi.CheckResponse(res); err != nil {
26757		return nil, err
26758	}
26759	ret := &OrderTrackingSignal{
26760		ServerResponse: googleapi.ServerResponse{
26761			Header:         res.Header,
26762			HTTPStatusCode: res.StatusCode,
26763		},
26764	}
26765	target := &ret
26766	if err := gensupport.DecodeResponse(target, res); err != nil {
26767		return nil, err
26768	}
26769	return ret, nil
26770	// {
26771	//   "description": "Creates new order tracking signal.",
26772	//   "flatPath": "content/v2.1/{merchantId}/ordertrackingsignals",
26773	//   "httpMethod": "POST",
26774	//   "id": "content.ordertrackingsignals.create",
26775	//   "parameterOrder": [
26776	//     "merchantId"
26777	//   ],
26778	//   "parameters": {
26779	//     "merchantId": {
26780	//       "description": "The ID of the merchant for which the order signal is created.",
26781	//       "format": "int64",
26782	//       "location": "path",
26783	//       "required": true,
26784	//       "type": "string"
26785	//     }
26786	//   },
26787	//   "path": "content/v2.1/{merchantId}/ordertrackingsignals",
26788	//   "request": {
26789	//     "$ref": "OrderTrackingSignal"
26790	//   },
26791	//   "response": {
26792	//     "$ref": "OrderTrackingSignal"
26793	//   },
26794	//   "scopes": [
26795	//     "https://www.googleapis.com/auth/content"
26796	//   ]
26797	// }
26798
26799}
26800
26801// method id "content.pos.custombatch":
26802
26803type PosCustombatchCall struct {
26804	s                     *APIService
26805	poscustombatchrequest *PosCustomBatchRequest
26806	urlParams_            gensupport.URLParams
26807	ctx_                  context.Context
26808	header_               http.Header
26809}
26810
26811// Custombatch: Batches multiple POS-related calls in a single request.
26812func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
26813	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26814	c.poscustombatchrequest = poscustombatchrequest
26815	return c
26816}
26817
26818// Fields allows partial responses to be retrieved. See
26819// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26820// for more information.
26821func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
26822	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26823	return c
26824}
26825
26826// Context sets the context to be used in this call's Do method. Any
26827// pending HTTP request will be aborted if the provided context is
26828// canceled.
26829func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
26830	c.ctx_ = ctx
26831	return c
26832}
26833
26834// Header returns an http.Header that can be modified by the caller to
26835// add HTTP headers to the request.
26836func (c *PosCustombatchCall) Header() http.Header {
26837	if c.header_ == nil {
26838		c.header_ = make(http.Header)
26839	}
26840	return c.header_
26841}
26842
26843func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
26844	reqHeaders := make(http.Header)
26845	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
26846	for k, v := range c.header_ {
26847		reqHeaders[k] = v
26848	}
26849	reqHeaders.Set("User-Agent", c.s.userAgent())
26850	var body io.Reader = nil
26851	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
26852	if err != nil {
26853		return nil, err
26854	}
26855	reqHeaders.Set("Content-Type", "application/json")
26856	c.urlParams_.Set("alt", alt)
26857	c.urlParams_.Set("prettyPrint", "false")
26858	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/pos/batch")
26859	urls += "?" + c.urlParams_.Encode()
26860	req, err := http.NewRequest("POST", urls, body)
26861	if err != nil {
26862		return nil, err
26863	}
26864	req.Header = reqHeaders
26865	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26866}
26867
26868// Do executes the "content.pos.custombatch" call.
26869// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
26870// non-2xx status code is an error. Response headers are in either
26871// *PosCustomBatchResponse.ServerResponse.Header or (if a response was
26872// returned at all) in error.(*googleapi.Error).Header. Use
26873// googleapi.IsNotModified to check whether the returned error was
26874// because http.StatusNotModified was returned.
26875func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
26876	gensupport.SetOptions(c.urlParams_, opts...)
26877	res, err := c.doRequest("json")
26878	if res != nil && res.StatusCode == http.StatusNotModified {
26879		if res.Body != nil {
26880			res.Body.Close()
26881		}
26882		return nil, &googleapi.Error{
26883			Code:   res.StatusCode,
26884			Header: res.Header,
26885		}
26886	}
26887	if err != nil {
26888		return nil, err
26889	}
26890	defer googleapi.CloseBody(res)
26891	if err := googleapi.CheckResponse(res); err != nil {
26892		return nil, err
26893	}
26894	ret := &PosCustomBatchResponse{
26895		ServerResponse: googleapi.ServerResponse{
26896			Header:         res.Header,
26897			HTTPStatusCode: res.StatusCode,
26898		},
26899	}
26900	target := &ret
26901	if err := gensupport.DecodeResponse(target, res); err != nil {
26902		return nil, err
26903	}
26904	return ret, nil
26905	// {
26906	//   "description": "Batches multiple POS-related calls in a single request.",
26907	//   "flatPath": "content/v2.1/pos/batch",
26908	//   "httpMethod": "POST",
26909	//   "id": "content.pos.custombatch",
26910	//   "parameterOrder": [],
26911	//   "parameters": {},
26912	//   "path": "content/v2.1/pos/batch",
26913	//   "request": {
26914	//     "$ref": "PosCustomBatchRequest"
26915	//   },
26916	//   "response": {
26917	//     "$ref": "PosCustomBatchResponse"
26918	//   },
26919	//   "scopes": [
26920	//     "https://www.googleapis.com/auth/content"
26921	//   ]
26922	// }
26923
26924}
26925
26926// method id "content.pos.delete":
26927
26928type PosDeleteCall struct {
26929	s                *APIService
26930	merchantId       uint64
26931	targetMerchantId uint64
26932	storeCode        string
26933	urlParams_       gensupport.URLParams
26934	ctx_             context.Context
26935	header_          http.Header
26936}
26937
26938// Delete: Deletes a store for the given merchant.
26939func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
26940	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26941	c.merchantId = merchantId
26942	c.targetMerchantId = targetMerchantId
26943	c.storeCode = storeCode
26944	return c
26945}
26946
26947// Fields allows partial responses to be retrieved. See
26948// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26949// for more information.
26950func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
26951	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26952	return c
26953}
26954
26955// Context sets the context to be used in this call's Do method. Any
26956// pending HTTP request will be aborted if the provided context is
26957// canceled.
26958func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
26959	c.ctx_ = ctx
26960	return c
26961}
26962
26963// Header returns an http.Header that can be modified by the caller to
26964// add HTTP headers to the request.
26965func (c *PosDeleteCall) Header() http.Header {
26966	if c.header_ == nil {
26967		c.header_ = make(http.Header)
26968	}
26969	return c.header_
26970}
26971
26972func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
26973	reqHeaders := make(http.Header)
26974	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
26975	for k, v := range c.header_ {
26976		reqHeaders[k] = v
26977	}
26978	reqHeaders.Set("User-Agent", c.s.userAgent())
26979	var body io.Reader = nil
26980	c.urlParams_.Set("alt", alt)
26981	c.urlParams_.Set("prettyPrint", "false")
26982	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
26983	urls += "?" + c.urlParams_.Encode()
26984	req, err := http.NewRequest("DELETE", urls, body)
26985	if err != nil {
26986		return nil, err
26987	}
26988	req.Header = reqHeaders
26989	googleapi.Expand(req.URL, map[string]string{
26990		"merchantId":       strconv.FormatUint(c.merchantId, 10),
26991		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
26992		"storeCode":        c.storeCode,
26993	})
26994	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26995}
26996
26997// Do executes the "content.pos.delete" call.
26998func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
26999	gensupport.SetOptions(c.urlParams_, opts...)
27000	res, err := c.doRequest("json")
27001	if err != nil {
27002		return err
27003	}
27004	defer googleapi.CloseBody(res)
27005	if err := googleapi.CheckResponse(res); err != nil {
27006		return err
27007	}
27008	return nil
27009	// {
27010	//   "description": "Deletes a store for the given merchant.",
27011	//   "flatPath": "content/v2.1/{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
27012	//   "httpMethod": "DELETE",
27013	//   "id": "content.pos.delete",
27014	//   "parameterOrder": [
27015	//     "merchantId",
27016	//     "targetMerchantId",
27017	//     "storeCode"
27018	//   ],
27019	//   "parameters": {
27020	//     "merchantId": {
27021	//       "description": "The ID of the POS or inventory data provider.",
27022	//       "format": "uint64",
27023	//       "location": "path",
27024	//       "required": true,
27025	//       "type": "string"
27026	//     },
27027	//     "storeCode": {
27028	//       "description": "A store code that is unique per merchant.",
27029	//       "location": "path",
27030	//       "required": true,
27031	//       "type": "string"
27032	//     },
27033	//     "targetMerchantId": {
27034	//       "description": "The ID of the target merchant.",
27035	//       "format": "uint64",
27036	//       "location": "path",
27037	//       "required": true,
27038	//       "type": "string"
27039	//     }
27040	//   },
27041	//   "path": "content/v2.1/{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
27042	//   "scopes": [
27043	//     "https://www.googleapis.com/auth/content"
27044	//   ]
27045	// }
27046
27047}
27048
27049// method id "content.pos.get":
27050
27051type PosGetCall struct {
27052	s                *APIService
27053	merchantId       uint64
27054	targetMerchantId uint64
27055	storeCode        string
27056	urlParams_       gensupport.URLParams
27057	ifNoneMatch_     string
27058	ctx_             context.Context
27059	header_          http.Header
27060}
27061
27062// Get: Retrieves information about the given store.
27063func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
27064	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27065	c.merchantId = merchantId
27066	c.targetMerchantId = targetMerchantId
27067	c.storeCode = storeCode
27068	return c
27069}
27070
27071// Fields allows partial responses to be retrieved. See
27072// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27073// for more information.
27074func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
27075	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27076	return c
27077}
27078
27079// IfNoneMatch sets the optional parameter which makes the operation
27080// fail if the object's ETag matches the given value. This is useful for
27081// getting updates only after the object has changed since the last
27082// request. Use googleapi.IsNotModified to check whether the response
27083// error from Do is the result of In-None-Match.
27084func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
27085	c.ifNoneMatch_ = entityTag
27086	return c
27087}
27088
27089// Context sets the context to be used in this call's Do method. Any
27090// pending HTTP request will be aborted if the provided context is
27091// canceled.
27092func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
27093	c.ctx_ = ctx
27094	return c
27095}
27096
27097// Header returns an http.Header that can be modified by the caller to
27098// add HTTP headers to the request.
27099func (c *PosGetCall) Header() http.Header {
27100	if c.header_ == nil {
27101		c.header_ = make(http.Header)
27102	}
27103	return c.header_
27104}
27105
27106func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
27107	reqHeaders := make(http.Header)
27108	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
27109	for k, v := range c.header_ {
27110		reqHeaders[k] = v
27111	}
27112	reqHeaders.Set("User-Agent", c.s.userAgent())
27113	if c.ifNoneMatch_ != "" {
27114		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27115	}
27116	var body io.Reader = nil
27117	c.urlParams_.Set("alt", alt)
27118	c.urlParams_.Set("prettyPrint", "false")
27119	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
27120	urls += "?" + c.urlParams_.Encode()
27121	req, err := http.NewRequest("GET", urls, body)
27122	if err != nil {
27123		return nil, err
27124	}
27125	req.Header = reqHeaders
27126	googleapi.Expand(req.URL, map[string]string{
27127		"merchantId":       strconv.FormatUint(c.merchantId, 10),
27128		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
27129		"storeCode":        c.storeCode,
27130	})
27131	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27132}
27133
27134// Do executes the "content.pos.get" call.
27135// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
27136// code is an error. Response headers are in either
27137// *PosStore.ServerResponse.Header or (if a response was returned at
27138// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
27139// to check whether the returned error was because
27140// http.StatusNotModified was returned.
27141func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
27142	gensupport.SetOptions(c.urlParams_, opts...)
27143	res, err := c.doRequest("json")
27144	if res != nil && res.StatusCode == http.StatusNotModified {
27145		if res.Body != nil {
27146			res.Body.Close()
27147		}
27148		return nil, &googleapi.Error{
27149			Code:   res.StatusCode,
27150			Header: res.Header,
27151		}
27152	}
27153	if err != nil {
27154		return nil, err
27155	}
27156	defer googleapi.CloseBody(res)
27157	if err := googleapi.CheckResponse(res); err != nil {
27158		return nil, err
27159	}
27160	ret := &PosStore{
27161		ServerResponse: googleapi.ServerResponse{
27162			Header:         res.Header,
27163			HTTPStatusCode: res.StatusCode,
27164		},
27165	}
27166	target := &ret
27167	if err := gensupport.DecodeResponse(target, res); err != nil {
27168		return nil, err
27169	}
27170	return ret, nil
27171	// {
27172	//   "description": "Retrieves information about the given store.",
27173	//   "flatPath": "content/v2.1/{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
27174	//   "httpMethod": "GET",
27175	//   "id": "content.pos.get",
27176	//   "parameterOrder": [
27177	//     "merchantId",
27178	//     "targetMerchantId",
27179	//     "storeCode"
27180	//   ],
27181	//   "parameters": {
27182	//     "merchantId": {
27183	//       "description": "The ID of the POS or inventory data provider.",
27184	//       "format": "uint64",
27185	//       "location": "path",
27186	//       "required": true,
27187	//       "type": "string"
27188	//     },
27189	//     "storeCode": {
27190	//       "description": "A store code that is unique per merchant.",
27191	//       "location": "path",
27192	//       "required": true,
27193	//       "type": "string"
27194	//     },
27195	//     "targetMerchantId": {
27196	//       "description": "The ID of the target merchant.",
27197	//       "format": "uint64",
27198	//       "location": "path",
27199	//       "required": true,
27200	//       "type": "string"
27201	//     }
27202	//   },
27203	//   "path": "content/v2.1/{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
27204	//   "response": {
27205	//     "$ref": "PosStore"
27206	//   },
27207	//   "scopes": [
27208	//     "https://www.googleapis.com/auth/content"
27209	//   ]
27210	// }
27211
27212}
27213
27214// method id "content.pos.insert":
27215
27216type PosInsertCall struct {
27217	s                *APIService
27218	merchantId       uint64
27219	targetMerchantId uint64
27220	posstore         *PosStore
27221	urlParams_       gensupport.URLParams
27222	ctx_             context.Context
27223	header_          http.Header
27224}
27225
27226// Insert: Creates a store for the given merchant.
27227func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
27228	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27229	c.merchantId = merchantId
27230	c.targetMerchantId = targetMerchantId
27231	c.posstore = posstore
27232	return c
27233}
27234
27235// Fields allows partial responses to be retrieved. See
27236// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27237// for more information.
27238func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
27239	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27240	return c
27241}
27242
27243// Context sets the context to be used in this call's Do method. Any
27244// pending HTTP request will be aborted if the provided context is
27245// canceled.
27246func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
27247	c.ctx_ = ctx
27248	return c
27249}
27250
27251// Header returns an http.Header that can be modified by the caller to
27252// add HTTP headers to the request.
27253func (c *PosInsertCall) Header() http.Header {
27254	if c.header_ == nil {
27255		c.header_ = make(http.Header)
27256	}
27257	return c.header_
27258}
27259
27260func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
27261	reqHeaders := make(http.Header)
27262	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
27263	for k, v := range c.header_ {
27264		reqHeaders[k] = v
27265	}
27266	reqHeaders.Set("User-Agent", c.s.userAgent())
27267	var body io.Reader = nil
27268	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
27269	if err != nil {
27270		return nil, err
27271	}
27272	reqHeaders.Set("Content-Type", "application/json")
27273	c.urlParams_.Set("alt", alt)
27274	c.urlParams_.Set("prettyPrint", "false")
27275	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/pos/{targetMerchantId}/store")
27276	urls += "?" + c.urlParams_.Encode()
27277	req, err := http.NewRequest("POST", urls, body)
27278	if err != nil {
27279		return nil, err
27280	}
27281	req.Header = reqHeaders
27282	googleapi.Expand(req.URL, map[string]string{
27283		"merchantId":       strconv.FormatUint(c.merchantId, 10),
27284		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
27285	})
27286	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27287}
27288
27289// Do executes the "content.pos.insert" call.
27290// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
27291// code is an error. Response headers are in either
27292// *PosStore.ServerResponse.Header or (if a response was returned at
27293// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
27294// to check whether the returned error was because
27295// http.StatusNotModified was returned.
27296func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
27297	gensupport.SetOptions(c.urlParams_, opts...)
27298	res, err := c.doRequest("json")
27299	if res != nil && res.StatusCode == http.StatusNotModified {
27300		if res.Body != nil {
27301			res.Body.Close()
27302		}
27303		return nil, &googleapi.Error{
27304			Code:   res.StatusCode,
27305			Header: res.Header,
27306		}
27307	}
27308	if err != nil {
27309		return nil, err
27310	}
27311	defer googleapi.CloseBody(res)
27312	if err := googleapi.CheckResponse(res); err != nil {
27313		return nil, err
27314	}
27315	ret := &PosStore{
27316		ServerResponse: googleapi.ServerResponse{
27317			Header:         res.Header,
27318			HTTPStatusCode: res.StatusCode,
27319		},
27320	}
27321	target := &ret
27322	if err := gensupport.DecodeResponse(target, res); err != nil {
27323		return nil, err
27324	}
27325	return ret, nil
27326	// {
27327	//   "description": "Creates a store for the given merchant.",
27328	//   "flatPath": "content/v2.1/{merchantId}/pos/{targetMerchantId}/store",
27329	//   "httpMethod": "POST",
27330	//   "id": "content.pos.insert",
27331	//   "parameterOrder": [
27332	//     "merchantId",
27333	//     "targetMerchantId"
27334	//   ],
27335	//   "parameters": {
27336	//     "merchantId": {
27337	//       "description": "The ID of the POS or inventory data provider.",
27338	//       "format": "uint64",
27339	//       "location": "path",
27340	//       "required": true,
27341	//       "type": "string"
27342	//     },
27343	//     "targetMerchantId": {
27344	//       "description": "The ID of the target merchant.",
27345	//       "format": "uint64",
27346	//       "location": "path",
27347	//       "required": true,
27348	//       "type": "string"
27349	//     }
27350	//   },
27351	//   "path": "content/v2.1/{merchantId}/pos/{targetMerchantId}/store",
27352	//   "request": {
27353	//     "$ref": "PosStore"
27354	//   },
27355	//   "response": {
27356	//     "$ref": "PosStore"
27357	//   },
27358	//   "scopes": [
27359	//     "https://www.googleapis.com/auth/content"
27360	//   ]
27361	// }
27362
27363}
27364
27365// method id "content.pos.inventory":
27366
27367type PosInventoryCall struct {
27368	s                   *APIService
27369	merchantId          uint64
27370	targetMerchantId    uint64
27371	posinventoryrequest *PosInventoryRequest
27372	urlParams_          gensupport.URLParams
27373	ctx_                context.Context
27374	header_             http.Header
27375}
27376
27377// Inventory: Submit inventory for the given merchant.
27378func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
27379	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27380	c.merchantId = merchantId
27381	c.targetMerchantId = targetMerchantId
27382	c.posinventoryrequest = posinventoryrequest
27383	return c
27384}
27385
27386// Fields allows partial responses to be retrieved. See
27387// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27388// for more information.
27389func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
27390	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27391	return c
27392}
27393
27394// Context sets the context to be used in this call's Do method. Any
27395// pending HTTP request will be aborted if the provided context is
27396// canceled.
27397func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
27398	c.ctx_ = ctx
27399	return c
27400}
27401
27402// Header returns an http.Header that can be modified by the caller to
27403// add HTTP headers to the request.
27404func (c *PosInventoryCall) Header() http.Header {
27405	if c.header_ == nil {
27406		c.header_ = make(http.Header)
27407	}
27408	return c.header_
27409}
27410
27411func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
27412	reqHeaders := make(http.Header)
27413	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
27414	for k, v := range c.header_ {
27415		reqHeaders[k] = v
27416	}
27417	reqHeaders.Set("User-Agent", c.s.userAgent())
27418	var body io.Reader = nil
27419	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
27420	if err != nil {
27421		return nil, err
27422	}
27423	reqHeaders.Set("Content-Type", "application/json")
27424	c.urlParams_.Set("alt", alt)
27425	c.urlParams_.Set("prettyPrint", "false")
27426	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/pos/{targetMerchantId}/inventory")
27427	urls += "?" + c.urlParams_.Encode()
27428	req, err := http.NewRequest("POST", urls, body)
27429	if err != nil {
27430		return nil, err
27431	}
27432	req.Header = reqHeaders
27433	googleapi.Expand(req.URL, map[string]string{
27434		"merchantId":       strconv.FormatUint(c.merchantId, 10),
27435		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
27436	})
27437	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27438}
27439
27440// Do executes the "content.pos.inventory" call.
27441// Exactly one of *PosInventoryResponse or error will be non-nil. Any
27442// non-2xx status code is an error. Response headers are in either
27443// *PosInventoryResponse.ServerResponse.Header or (if a response was
27444// returned at all) in error.(*googleapi.Error).Header. Use
27445// googleapi.IsNotModified to check whether the returned error was
27446// because http.StatusNotModified was returned.
27447func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
27448	gensupport.SetOptions(c.urlParams_, opts...)
27449	res, err := c.doRequest("json")
27450	if res != nil && res.StatusCode == http.StatusNotModified {
27451		if res.Body != nil {
27452			res.Body.Close()
27453		}
27454		return nil, &googleapi.Error{
27455			Code:   res.StatusCode,
27456			Header: res.Header,
27457		}
27458	}
27459	if err != nil {
27460		return nil, err
27461	}
27462	defer googleapi.CloseBody(res)
27463	if err := googleapi.CheckResponse(res); err != nil {
27464		return nil, err
27465	}
27466	ret := &PosInventoryResponse{
27467		ServerResponse: googleapi.ServerResponse{
27468			Header:         res.Header,
27469			HTTPStatusCode: res.StatusCode,
27470		},
27471	}
27472	target := &ret
27473	if err := gensupport.DecodeResponse(target, res); err != nil {
27474		return nil, err
27475	}
27476	return ret, nil
27477	// {
27478	//   "description": "Submit inventory for the given merchant.",
27479	//   "flatPath": "content/v2.1/{merchantId}/pos/{targetMerchantId}/inventory",
27480	//   "httpMethod": "POST",
27481	//   "id": "content.pos.inventory",
27482	//   "parameterOrder": [
27483	//     "merchantId",
27484	//     "targetMerchantId"
27485	//   ],
27486	//   "parameters": {
27487	//     "merchantId": {
27488	//       "description": "The ID of the POS or inventory data provider.",
27489	//       "format": "uint64",
27490	//       "location": "path",
27491	//       "required": true,
27492	//       "type": "string"
27493	//     },
27494	//     "targetMerchantId": {
27495	//       "description": "The ID of the target merchant.",
27496	//       "format": "uint64",
27497	//       "location": "path",
27498	//       "required": true,
27499	//       "type": "string"
27500	//     }
27501	//   },
27502	//   "path": "content/v2.1/{merchantId}/pos/{targetMerchantId}/inventory",
27503	//   "request": {
27504	//     "$ref": "PosInventoryRequest"
27505	//   },
27506	//   "response": {
27507	//     "$ref": "PosInventoryResponse"
27508	//   },
27509	//   "scopes": [
27510	//     "https://www.googleapis.com/auth/content"
27511	//   ]
27512	// }
27513
27514}
27515
27516// method id "content.pos.list":
27517
27518type PosListCall struct {
27519	s                *APIService
27520	merchantId       uint64
27521	targetMerchantId uint64
27522	urlParams_       gensupport.URLParams
27523	ifNoneMatch_     string
27524	ctx_             context.Context
27525	header_          http.Header
27526}
27527
27528// List: Lists the stores of the target merchant.
27529func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
27530	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27531	c.merchantId = merchantId
27532	c.targetMerchantId = targetMerchantId
27533	return c
27534}
27535
27536// Fields allows partial responses to be retrieved. See
27537// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27538// for more information.
27539func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
27540	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27541	return c
27542}
27543
27544// IfNoneMatch sets the optional parameter which makes the operation
27545// fail if the object's ETag matches the given value. This is useful for
27546// getting updates only after the object has changed since the last
27547// request. Use googleapi.IsNotModified to check whether the response
27548// error from Do is the result of In-None-Match.
27549func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
27550	c.ifNoneMatch_ = entityTag
27551	return c
27552}
27553
27554// Context sets the context to be used in this call's Do method. Any
27555// pending HTTP request will be aborted if the provided context is
27556// canceled.
27557func (c *PosListCall) Context(ctx context.Context) *PosListCall {
27558	c.ctx_ = ctx
27559	return c
27560}
27561
27562// Header returns an http.Header that can be modified by the caller to
27563// add HTTP headers to the request.
27564func (c *PosListCall) Header() http.Header {
27565	if c.header_ == nil {
27566		c.header_ = make(http.Header)
27567	}
27568	return c.header_
27569}
27570
27571func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
27572	reqHeaders := make(http.Header)
27573	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
27574	for k, v := range c.header_ {
27575		reqHeaders[k] = v
27576	}
27577	reqHeaders.Set("User-Agent", c.s.userAgent())
27578	if c.ifNoneMatch_ != "" {
27579		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27580	}
27581	var body io.Reader = nil
27582	c.urlParams_.Set("alt", alt)
27583	c.urlParams_.Set("prettyPrint", "false")
27584	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/pos/{targetMerchantId}/store")
27585	urls += "?" + c.urlParams_.Encode()
27586	req, err := http.NewRequest("GET", urls, body)
27587	if err != nil {
27588		return nil, err
27589	}
27590	req.Header = reqHeaders
27591	googleapi.Expand(req.URL, map[string]string{
27592		"merchantId":       strconv.FormatUint(c.merchantId, 10),
27593		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
27594	})
27595	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27596}
27597
27598// Do executes the "content.pos.list" call.
27599// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
27600// status code is an error. Response headers are in either
27601// *PosListResponse.ServerResponse.Header or (if a response was returned
27602// at all) in error.(*googleapi.Error).Header. Use
27603// googleapi.IsNotModified to check whether the returned error was
27604// because http.StatusNotModified was returned.
27605func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
27606	gensupport.SetOptions(c.urlParams_, opts...)
27607	res, err := c.doRequest("json")
27608	if res != nil && res.StatusCode == http.StatusNotModified {
27609		if res.Body != nil {
27610			res.Body.Close()
27611		}
27612		return nil, &googleapi.Error{
27613			Code:   res.StatusCode,
27614			Header: res.Header,
27615		}
27616	}
27617	if err != nil {
27618		return nil, err
27619	}
27620	defer googleapi.CloseBody(res)
27621	if err := googleapi.CheckResponse(res); err != nil {
27622		return nil, err
27623	}
27624	ret := &PosListResponse{
27625		ServerResponse: googleapi.ServerResponse{
27626			Header:         res.Header,
27627			HTTPStatusCode: res.StatusCode,
27628		},
27629	}
27630	target := &ret
27631	if err := gensupport.DecodeResponse(target, res); err != nil {
27632		return nil, err
27633	}
27634	return ret, nil
27635	// {
27636	//   "description": "Lists the stores of the target merchant.",
27637	//   "flatPath": "content/v2.1/{merchantId}/pos/{targetMerchantId}/store",
27638	//   "httpMethod": "GET",
27639	//   "id": "content.pos.list",
27640	//   "parameterOrder": [
27641	//     "merchantId",
27642	//     "targetMerchantId"
27643	//   ],
27644	//   "parameters": {
27645	//     "merchantId": {
27646	//       "description": "The ID of the POS or inventory data provider.",
27647	//       "format": "uint64",
27648	//       "location": "path",
27649	//       "required": true,
27650	//       "type": "string"
27651	//     },
27652	//     "targetMerchantId": {
27653	//       "description": "The ID of the target merchant.",
27654	//       "format": "uint64",
27655	//       "location": "path",
27656	//       "required": true,
27657	//       "type": "string"
27658	//     }
27659	//   },
27660	//   "path": "content/v2.1/{merchantId}/pos/{targetMerchantId}/store",
27661	//   "response": {
27662	//     "$ref": "PosListResponse"
27663	//   },
27664	//   "scopes": [
27665	//     "https://www.googleapis.com/auth/content"
27666	//   ]
27667	// }
27668
27669}
27670
27671// method id "content.pos.sale":
27672
27673type PosSaleCall struct {
27674	s                *APIService
27675	merchantId       uint64
27676	targetMerchantId uint64
27677	possalerequest   *PosSaleRequest
27678	urlParams_       gensupport.URLParams
27679	ctx_             context.Context
27680	header_          http.Header
27681}
27682
27683// Sale: Submit a sale event for the given merchant.
27684func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
27685	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27686	c.merchantId = merchantId
27687	c.targetMerchantId = targetMerchantId
27688	c.possalerequest = possalerequest
27689	return c
27690}
27691
27692// Fields allows partial responses to be retrieved. See
27693// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27694// for more information.
27695func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
27696	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27697	return c
27698}
27699
27700// Context sets the context to be used in this call's Do method. Any
27701// pending HTTP request will be aborted if the provided context is
27702// canceled.
27703func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
27704	c.ctx_ = ctx
27705	return c
27706}
27707
27708// Header returns an http.Header that can be modified by the caller to
27709// add HTTP headers to the request.
27710func (c *PosSaleCall) Header() http.Header {
27711	if c.header_ == nil {
27712		c.header_ = make(http.Header)
27713	}
27714	return c.header_
27715}
27716
27717func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
27718	reqHeaders := make(http.Header)
27719	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
27720	for k, v := range c.header_ {
27721		reqHeaders[k] = v
27722	}
27723	reqHeaders.Set("User-Agent", c.s.userAgent())
27724	var body io.Reader = nil
27725	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
27726	if err != nil {
27727		return nil, err
27728	}
27729	reqHeaders.Set("Content-Type", "application/json")
27730	c.urlParams_.Set("alt", alt)
27731	c.urlParams_.Set("prettyPrint", "false")
27732	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/pos/{targetMerchantId}/sale")
27733	urls += "?" + c.urlParams_.Encode()
27734	req, err := http.NewRequest("POST", urls, body)
27735	if err != nil {
27736		return nil, err
27737	}
27738	req.Header = reqHeaders
27739	googleapi.Expand(req.URL, map[string]string{
27740		"merchantId":       strconv.FormatUint(c.merchantId, 10),
27741		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
27742	})
27743	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27744}
27745
27746// Do executes the "content.pos.sale" call.
27747// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
27748// status code is an error. Response headers are in either
27749// *PosSaleResponse.ServerResponse.Header or (if a response was returned
27750// at all) in error.(*googleapi.Error).Header. Use
27751// googleapi.IsNotModified to check whether the returned error was
27752// because http.StatusNotModified was returned.
27753func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) {
27754	gensupport.SetOptions(c.urlParams_, opts...)
27755	res, err := c.doRequest("json")
27756	if res != nil && res.StatusCode == http.StatusNotModified {
27757		if res.Body != nil {
27758			res.Body.Close()
27759		}
27760		return nil, &googleapi.Error{
27761			Code:   res.StatusCode,
27762			Header: res.Header,
27763		}
27764	}
27765	if err != nil {
27766		return nil, err
27767	}
27768	defer googleapi.CloseBody(res)
27769	if err := googleapi.CheckResponse(res); err != nil {
27770		return nil, err
27771	}
27772	ret := &PosSaleResponse{
27773		ServerResponse: googleapi.ServerResponse{
27774			Header:         res.Header,
27775			HTTPStatusCode: res.StatusCode,
27776		},
27777	}
27778	target := &ret
27779	if err := gensupport.DecodeResponse(target, res); err != nil {
27780		return nil, err
27781	}
27782	return ret, nil
27783	// {
27784	//   "description": "Submit a sale event for the given merchant.",
27785	//   "flatPath": "content/v2.1/{merchantId}/pos/{targetMerchantId}/sale",
27786	//   "httpMethod": "POST",
27787	//   "id": "content.pos.sale",
27788	//   "parameterOrder": [
27789	//     "merchantId",
27790	//     "targetMerchantId"
27791	//   ],
27792	//   "parameters": {
27793	//     "merchantId": {
27794	//       "description": "The ID of the POS or inventory data provider.",
27795	//       "format": "uint64",
27796	//       "location": "path",
27797	//       "required": true,
27798	//       "type": "string"
27799	//     },
27800	//     "targetMerchantId": {
27801	//       "description": "The ID of the target merchant.",
27802	//       "format": "uint64",
27803	//       "location": "path",
27804	//       "required": true,
27805	//       "type": "string"
27806	//     }
27807	//   },
27808	//   "path": "content/v2.1/{merchantId}/pos/{targetMerchantId}/sale",
27809	//   "request": {
27810	//     "$ref": "PosSaleRequest"
27811	//   },
27812	//   "response": {
27813	//     "$ref": "PosSaleResponse"
27814	//   },
27815	//   "scopes": [
27816	//     "https://www.googleapis.com/auth/content"
27817	//   ]
27818	// }
27819
27820}
27821
27822// method id "content.products.custombatch":
27823
27824type ProductsCustombatchCall struct {
27825	s                          *APIService
27826	productscustombatchrequest *ProductsCustomBatchRequest
27827	urlParams_                 gensupport.URLParams
27828	ctx_                       context.Context
27829	header_                    http.Header
27830}
27831
27832// Custombatch: Retrieves, inserts, and deletes multiple products in a
27833// single request.
27834func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
27835	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27836	c.productscustombatchrequest = productscustombatchrequest
27837	return c
27838}
27839
27840// Fields allows partial responses to be retrieved. See
27841// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27842// for more information.
27843func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
27844	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27845	return c
27846}
27847
27848// Context sets the context to be used in this call's Do method. Any
27849// pending HTTP request will be aborted if the provided context is
27850// canceled.
27851func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
27852	c.ctx_ = ctx
27853	return c
27854}
27855
27856// Header returns an http.Header that can be modified by the caller to
27857// add HTTP headers to the request.
27858func (c *ProductsCustombatchCall) Header() http.Header {
27859	if c.header_ == nil {
27860		c.header_ = make(http.Header)
27861	}
27862	return c.header_
27863}
27864
27865func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
27866	reqHeaders := make(http.Header)
27867	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
27868	for k, v := range c.header_ {
27869		reqHeaders[k] = v
27870	}
27871	reqHeaders.Set("User-Agent", c.s.userAgent())
27872	var body io.Reader = nil
27873	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
27874	if err != nil {
27875		return nil, err
27876	}
27877	reqHeaders.Set("Content-Type", "application/json")
27878	c.urlParams_.Set("alt", alt)
27879	c.urlParams_.Set("prettyPrint", "false")
27880	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/products/batch")
27881	urls += "?" + c.urlParams_.Encode()
27882	req, err := http.NewRequest("POST", urls, body)
27883	if err != nil {
27884		return nil, err
27885	}
27886	req.Header = reqHeaders
27887	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27888}
27889
27890// Do executes the "content.products.custombatch" call.
27891// Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
27892// Any non-2xx status code is an error. Response headers are in either
27893// *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
27894// was returned at all) in error.(*googleapi.Error).Header. Use
27895// googleapi.IsNotModified to check whether the returned error was
27896// because http.StatusNotModified was returned.
27897func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
27898	gensupport.SetOptions(c.urlParams_, opts...)
27899	res, err := c.doRequest("json")
27900	if res != nil && res.StatusCode == http.StatusNotModified {
27901		if res.Body != nil {
27902			res.Body.Close()
27903		}
27904		return nil, &googleapi.Error{
27905			Code:   res.StatusCode,
27906			Header: res.Header,
27907		}
27908	}
27909	if err != nil {
27910		return nil, err
27911	}
27912	defer googleapi.CloseBody(res)
27913	if err := googleapi.CheckResponse(res); err != nil {
27914		return nil, err
27915	}
27916	ret := &ProductsCustomBatchResponse{
27917		ServerResponse: googleapi.ServerResponse{
27918			Header:         res.Header,
27919			HTTPStatusCode: res.StatusCode,
27920		},
27921	}
27922	target := &ret
27923	if err := gensupport.DecodeResponse(target, res); err != nil {
27924		return nil, err
27925	}
27926	return ret, nil
27927	// {
27928	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
27929	//   "flatPath": "content/v2.1/products/batch",
27930	//   "httpMethod": "POST",
27931	//   "id": "content.products.custombatch",
27932	//   "parameterOrder": [],
27933	//   "parameters": {},
27934	//   "path": "content/v2.1/products/batch",
27935	//   "request": {
27936	//     "$ref": "ProductsCustomBatchRequest"
27937	//   },
27938	//   "response": {
27939	//     "$ref": "ProductsCustomBatchResponse"
27940	//   },
27941	//   "scopes": [
27942	//     "https://www.googleapis.com/auth/content"
27943	//   ]
27944	// }
27945
27946}
27947
27948// method id "content.products.delete":
27949
27950type ProductsDeleteCall struct {
27951	s          *APIService
27952	merchantId uint64
27953	productId  string
27954	urlParams_ gensupport.URLParams
27955	ctx_       context.Context
27956	header_    http.Header
27957}
27958
27959// Delete: Deletes a product from your Merchant Center account.
27960func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
27961	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27962	c.merchantId = merchantId
27963	c.productId = productId
27964	return c
27965}
27966
27967// FeedId sets the optional parameter "feedId": The Content API
27968// Supplemental Feed ID.
27969func (c *ProductsDeleteCall) FeedId(feedId uint64) *ProductsDeleteCall {
27970	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
27971	return c
27972}
27973
27974// Fields allows partial responses to be retrieved. See
27975// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27976// for more information.
27977func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
27978	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27979	return c
27980}
27981
27982// Context sets the context to be used in this call's Do method. Any
27983// pending HTTP request will be aborted if the provided context is
27984// canceled.
27985func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
27986	c.ctx_ = ctx
27987	return c
27988}
27989
27990// Header returns an http.Header that can be modified by the caller to
27991// add HTTP headers to the request.
27992func (c *ProductsDeleteCall) Header() http.Header {
27993	if c.header_ == nil {
27994		c.header_ = make(http.Header)
27995	}
27996	return c.header_
27997}
27998
27999func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
28000	reqHeaders := make(http.Header)
28001	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
28002	for k, v := range c.header_ {
28003		reqHeaders[k] = v
28004	}
28005	reqHeaders.Set("User-Agent", c.s.userAgent())
28006	var body io.Reader = nil
28007	c.urlParams_.Set("alt", alt)
28008	c.urlParams_.Set("prettyPrint", "false")
28009	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/products/{productId}")
28010	urls += "?" + c.urlParams_.Encode()
28011	req, err := http.NewRequest("DELETE", urls, body)
28012	if err != nil {
28013		return nil, err
28014	}
28015	req.Header = reqHeaders
28016	googleapi.Expand(req.URL, map[string]string{
28017		"merchantId": strconv.FormatUint(c.merchantId, 10),
28018		"productId":  c.productId,
28019	})
28020	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28021}
28022
28023// Do executes the "content.products.delete" call.
28024func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
28025	gensupport.SetOptions(c.urlParams_, opts...)
28026	res, err := c.doRequest("json")
28027	if err != nil {
28028		return err
28029	}
28030	defer googleapi.CloseBody(res)
28031	if err := googleapi.CheckResponse(res); err != nil {
28032		return err
28033	}
28034	return nil
28035	// {
28036	//   "description": "Deletes a product from your Merchant Center account.",
28037	//   "flatPath": "content/v2.1/{merchantId}/products/{productId}",
28038	//   "httpMethod": "DELETE",
28039	//   "id": "content.products.delete",
28040	//   "parameterOrder": [
28041	//     "merchantId",
28042	//     "productId"
28043	//   ],
28044	//   "parameters": {
28045	//     "feedId": {
28046	//       "description": "The Content API Supplemental Feed ID.",
28047	//       "format": "uint64",
28048	//       "location": "query",
28049	//       "type": "string"
28050	//     },
28051	//     "merchantId": {
28052	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
28053	//       "format": "uint64",
28054	//       "location": "path",
28055	//       "required": true,
28056	//       "type": "string"
28057	//     },
28058	//     "productId": {
28059	//       "description": "The REST ID of the product.",
28060	//       "location": "path",
28061	//       "required": true,
28062	//       "type": "string"
28063	//     }
28064	//   },
28065	//   "path": "content/v2.1/{merchantId}/products/{productId}",
28066	//   "scopes": [
28067	//     "https://www.googleapis.com/auth/content"
28068	//   ]
28069	// }
28070
28071}
28072
28073// method id "content.products.get":
28074
28075type ProductsGetCall struct {
28076	s            *APIService
28077	merchantId   uint64
28078	productId    string
28079	urlParams_   gensupport.URLParams
28080	ifNoneMatch_ string
28081	ctx_         context.Context
28082	header_      http.Header
28083}
28084
28085// Get: Retrieves a product from your Merchant Center account.
28086func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
28087	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28088	c.merchantId = merchantId
28089	c.productId = productId
28090	return c
28091}
28092
28093// Fields allows partial responses to be retrieved. See
28094// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28095// for more information.
28096func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
28097	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28098	return c
28099}
28100
28101// IfNoneMatch sets the optional parameter which makes the operation
28102// fail if the object's ETag matches the given value. This is useful for
28103// getting updates only after the object has changed since the last
28104// request. Use googleapi.IsNotModified to check whether the response
28105// error from Do is the result of In-None-Match.
28106func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
28107	c.ifNoneMatch_ = entityTag
28108	return c
28109}
28110
28111// Context sets the context to be used in this call's Do method. Any
28112// pending HTTP request will be aborted if the provided context is
28113// canceled.
28114func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
28115	c.ctx_ = ctx
28116	return c
28117}
28118
28119// Header returns an http.Header that can be modified by the caller to
28120// add HTTP headers to the request.
28121func (c *ProductsGetCall) Header() http.Header {
28122	if c.header_ == nil {
28123		c.header_ = make(http.Header)
28124	}
28125	return c.header_
28126}
28127
28128func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
28129	reqHeaders := make(http.Header)
28130	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
28131	for k, v := range c.header_ {
28132		reqHeaders[k] = v
28133	}
28134	reqHeaders.Set("User-Agent", c.s.userAgent())
28135	if c.ifNoneMatch_ != "" {
28136		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28137	}
28138	var body io.Reader = nil
28139	c.urlParams_.Set("alt", alt)
28140	c.urlParams_.Set("prettyPrint", "false")
28141	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/products/{productId}")
28142	urls += "?" + c.urlParams_.Encode()
28143	req, err := http.NewRequest("GET", urls, body)
28144	if err != nil {
28145		return nil, err
28146	}
28147	req.Header = reqHeaders
28148	googleapi.Expand(req.URL, map[string]string{
28149		"merchantId": strconv.FormatUint(c.merchantId, 10),
28150		"productId":  c.productId,
28151	})
28152	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28153}
28154
28155// Do executes the "content.products.get" call.
28156// Exactly one of *Product or error will be non-nil. Any non-2xx status
28157// code is an error. Response headers are in either
28158// *Product.ServerResponse.Header or (if a response was returned at all)
28159// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
28160// check whether the returned error was because http.StatusNotModified
28161// was returned.
28162func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
28163	gensupport.SetOptions(c.urlParams_, opts...)
28164	res, err := c.doRequest("json")
28165	if res != nil && res.StatusCode == http.StatusNotModified {
28166		if res.Body != nil {
28167			res.Body.Close()
28168		}
28169		return nil, &googleapi.Error{
28170			Code:   res.StatusCode,
28171			Header: res.Header,
28172		}
28173	}
28174	if err != nil {
28175		return nil, err
28176	}
28177	defer googleapi.CloseBody(res)
28178	if err := googleapi.CheckResponse(res); err != nil {
28179		return nil, err
28180	}
28181	ret := &Product{
28182		ServerResponse: googleapi.ServerResponse{
28183			Header:         res.Header,
28184			HTTPStatusCode: res.StatusCode,
28185		},
28186	}
28187	target := &ret
28188	if err := gensupport.DecodeResponse(target, res); err != nil {
28189		return nil, err
28190	}
28191	return ret, nil
28192	// {
28193	//   "description": "Retrieves a product from your Merchant Center account.",
28194	//   "flatPath": "content/v2.1/{merchantId}/products/{productId}",
28195	//   "httpMethod": "GET",
28196	//   "id": "content.products.get",
28197	//   "parameterOrder": [
28198	//     "merchantId",
28199	//     "productId"
28200	//   ],
28201	//   "parameters": {
28202	//     "merchantId": {
28203	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
28204	//       "format": "uint64",
28205	//       "location": "path",
28206	//       "required": true,
28207	//       "type": "string"
28208	//     },
28209	//     "productId": {
28210	//       "description": "The REST ID of the product.",
28211	//       "location": "path",
28212	//       "required": true,
28213	//       "type": "string"
28214	//     }
28215	//   },
28216	//   "path": "content/v2.1/{merchantId}/products/{productId}",
28217	//   "response": {
28218	//     "$ref": "Product"
28219	//   },
28220	//   "scopes": [
28221	//     "https://www.googleapis.com/auth/content"
28222	//   ]
28223	// }
28224
28225}
28226
28227// method id "content.products.insert":
28228
28229type ProductsInsertCall struct {
28230	s          *APIService
28231	merchantId uint64
28232	product    *Product
28233	urlParams_ gensupport.URLParams
28234	ctx_       context.Context
28235	header_    http.Header
28236}
28237
28238// Insert: Uploads a product to your Merchant Center account. If an item
28239// with the same channel, contentLanguage, offerId, and targetCountry
28240// already exists, this method updates that entry.
28241func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
28242	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28243	c.merchantId = merchantId
28244	c.product = product
28245	return c
28246}
28247
28248// FeedId sets the optional parameter "feedId": The Content API
28249// Supplemental Feed ID.
28250func (c *ProductsInsertCall) FeedId(feedId uint64) *ProductsInsertCall {
28251	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
28252	return c
28253}
28254
28255// Fields allows partial responses to be retrieved. See
28256// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28257// for more information.
28258func (c *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
28259	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28260	return c
28261}
28262
28263// Context sets the context to be used in this call's Do method. Any
28264// pending HTTP request will be aborted if the provided context is
28265// canceled.
28266func (c *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
28267	c.ctx_ = ctx
28268	return c
28269}
28270
28271// Header returns an http.Header that can be modified by the caller to
28272// add HTTP headers to the request.
28273func (c *ProductsInsertCall) Header() http.Header {
28274	if c.header_ == nil {
28275		c.header_ = make(http.Header)
28276	}
28277	return c.header_
28278}
28279
28280func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
28281	reqHeaders := make(http.Header)
28282	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
28283	for k, v := range c.header_ {
28284		reqHeaders[k] = v
28285	}
28286	reqHeaders.Set("User-Agent", c.s.userAgent())
28287	var body io.Reader = nil
28288	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
28289	if err != nil {
28290		return nil, err
28291	}
28292	reqHeaders.Set("Content-Type", "application/json")
28293	c.urlParams_.Set("alt", alt)
28294	c.urlParams_.Set("prettyPrint", "false")
28295	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/products")
28296	urls += "?" + c.urlParams_.Encode()
28297	req, err := http.NewRequest("POST", urls, body)
28298	if err != nil {
28299		return nil, err
28300	}
28301	req.Header = reqHeaders
28302	googleapi.Expand(req.URL, map[string]string{
28303		"merchantId": strconv.FormatUint(c.merchantId, 10),
28304	})
28305	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28306}
28307
28308// Do executes the "content.products.insert" call.
28309// Exactly one of *Product or error will be non-nil. Any non-2xx status
28310// code is an error. Response headers are in either
28311// *Product.ServerResponse.Header or (if a response was returned at all)
28312// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
28313// check whether the returned error was because http.StatusNotModified
28314// was returned.
28315func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
28316	gensupport.SetOptions(c.urlParams_, opts...)
28317	res, err := c.doRequest("json")
28318	if res != nil && res.StatusCode == http.StatusNotModified {
28319		if res.Body != nil {
28320			res.Body.Close()
28321		}
28322		return nil, &googleapi.Error{
28323			Code:   res.StatusCode,
28324			Header: res.Header,
28325		}
28326	}
28327	if err != nil {
28328		return nil, err
28329	}
28330	defer googleapi.CloseBody(res)
28331	if err := googleapi.CheckResponse(res); err != nil {
28332		return nil, err
28333	}
28334	ret := &Product{
28335		ServerResponse: googleapi.ServerResponse{
28336			Header:         res.Header,
28337			HTTPStatusCode: res.StatusCode,
28338		},
28339	}
28340	target := &ret
28341	if err := gensupport.DecodeResponse(target, res); err != nil {
28342		return nil, err
28343	}
28344	return ret, nil
28345	// {
28346	//   "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.",
28347	//   "flatPath": "content/v2.1/{merchantId}/products",
28348	//   "httpMethod": "POST",
28349	//   "id": "content.products.insert",
28350	//   "parameterOrder": [
28351	//     "merchantId"
28352	//   ],
28353	//   "parameters": {
28354	//     "feedId": {
28355	//       "description": "The Content API Supplemental Feed ID.",
28356	//       "format": "uint64",
28357	//       "location": "query",
28358	//       "type": "string"
28359	//     },
28360	//     "merchantId": {
28361	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
28362	//       "format": "uint64",
28363	//       "location": "path",
28364	//       "required": true,
28365	//       "type": "string"
28366	//     }
28367	//   },
28368	//   "path": "content/v2.1/{merchantId}/products",
28369	//   "request": {
28370	//     "$ref": "Product"
28371	//   },
28372	//   "response": {
28373	//     "$ref": "Product"
28374	//   },
28375	//   "scopes": [
28376	//     "https://www.googleapis.com/auth/content"
28377	//   ]
28378	// }
28379
28380}
28381
28382// method id "content.products.list":
28383
28384type ProductsListCall struct {
28385	s            *APIService
28386	merchantId   uint64
28387	urlParams_   gensupport.URLParams
28388	ifNoneMatch_ string
28389	ctx_         context.Context
28390	header_      http.Header
28391}
28392
28393// List: Lists the products in your Merchant Center account. The
28394// response might contain fewer items than specified by maxResults. Rely
28395// on nextPageToken to determine if there are more items to be
28396// requested.
28397func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
28398	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28399	c.merchantId = merchantId
28400	return c
28401}
28402
28403// MaxResults sets the optional parameter "maxResults": The maximum
28404// number of products to return in the response, used for paging.
28405func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
28406	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28407	return c
28408}
28409
28410// PageToken sets the optional parameter "pageToken": The token returned
28411// by the previous request.
28412func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
28413	c.urlParams_.Set("pageToken", pageToken)
28414	return c
28415}
28416
28417// Fields allows partial responses to be retrieved. See
28418// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28419// for more information.
28420func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
28421	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28422	return c
28423}
28424
28425// IfNoneMatch sets the optional parameter which makes the operation
28426// fail if the object's ETag matches the given value. This is useful for
28427// getting updates only after the object has changed since the last
28428// request. Use googleapi.IsNotModified to check whether the response
28429// error from Do is the result of In-None-Match.
28430func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
28431	c.ifNoneMatch_ = entityTag
28432	return c
28433}
28434
28435// Context sets the context to be used in this call's Do method. Any
28436// pending HTTP request will be aborted if the provided context is
28437// canceled.
28438func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
28439	c.ctx_ = ctx
28440	return c
28441}
28442
28443// Header returns an http.Header that can be modified by the caller to
28444// add HTTP headers to the request.
28445func (c *ProductsListCall) Header() http.Header {
28446	if c.header_ == nil {
28447		c.header_ = make(http.Header)
28448	}
28449	return c.header_
28450}
28451
28452func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
28453	reqHeaders := make(http.Header)
28454	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
28455	for k, v := range c.header_ {
28456		reqHeaders[k] = v
28457	}
28458	reqHeaders.Set("User-Agent", c.s.userAgent())
28459	if c.ifNoneMatch_ != "" {
28460		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28461	}
28462	var body io.Reader = nil
28463	c.urlParams_.Set("alt", alt)
28464	c.urlParams_.Set("prettyPrint", "false")
28465	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/products")
28466	urls += "?" + c.urlParams_.Encode()
28467	req, err := http.NewRequest("GET", urls, body)
28468	if err != nil {
28469		return nil, err
28470	}
28471	req.Header = reqHeaders
28472	googleapi.Expand(req.URL, map[string]string{
28473		"merchantId": strconv.FormatUint(c.merchantId, 10),
28474	})
28475	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28476}
28477
28478// Do executes the "content.products.list" call.
28479// Exactly one of *ProductsListResponse or error will be non-nil. Any
28480// non-2xx status code is an error. Response headers are in either
28481// *ProductsListResponse.ServerResponse.Header or (if a response was
28482// returned at all) in error.(*googleapi.Error).Header. Use
28483// googleapi.IsNotModified to check whether the returned error was
28484// because http.StatusNotModified was returned.
28485func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
28486	gensupport.SetOptions(c.urlParams_, opts...)
28487	res, err := c.doRequest("json")
28488	if res != nil && res.StatusCode == http.StatusNotModified {
28489		if res.Body != nil {
28490			res.Body.Close()
28491		}
28492		return nil, &googleapi.Error{
28493			Code:   res.StatusCode,
28494			Header: res.Header,
28495		}
28496	}
28497	if err != nil {
28498		return nil, err
28499	}
28500	defer googleapi.CloseBody(res)
28501	if err := googleapi.CheckResponse(res); err != nil {
28502		return nil, err
28503	}
28504	ret := &ProductsListResponse{
28505		ServerResponse: googleapi.ServerResponse{
28506			Header:         res.Header,
28507			HTTPStatusCode: res.StatusCode,
28508		},
28509	}
28510	target := &ret
28511	if err := gensupport.DecodeResponse(target, res); err != nil {
28512		return nil, err
28513	}
28514	return ret, nil
28515	// {
28516	//   "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.",
28517	//   "flatPath": "content/v2.1/{merchantId}/products",
28518	//   "httpMethod": "GET",
28519	//   "id": "content.products.list",
28520	//   "parameterOrder": [
28521	//     "merchantId"
28522	//   ],
28523	//   "parameters": {
28524	//     "maxResults": {
28525	//       "description": "The maximum number of products to return in the response, used for paging.",
28526	//       "format": "uint32",
28527	//       "location": "query",
28528	//       "type": "integer"
28529	//     },
28530	//     "merchantId": {
28531	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
28532	//       "format": "uint64",
28533	//       "location": "path",
28534	//       "required": true,
28535	//       "type": "string"
28536	//     },
28537	//     "pageToken": {
28538	//       "description": "The token returned by the previous request.",
28539	//       "location": "query",
28540	//       "type": "string"
28541	//     }
28542	//   },
28543	//   "path": "content/v2.1/{merchantId}/products",
28544	//   "response": {
28545	//     "$ref": "ProductsListResponse"
28546	//   },
28547	//   "scopes": [
28548	//     "https://www.googleapis.com/auth/content"
28549	//   ]
28550	// }
28551
28552}
28553
28554// Pages invokes f for each page of results.
28555// A non-nil error returned from f will halt the iteration.
28556// The provided context supersedes any context provided to the Context method.
28557func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
28558	c.ctx_ = ctx
28559	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
28560	for {
28561		x, err := c.Do()
28562		if err != nil {
28563			return err
28564		}
28565		if err := f(x); err != nil {
28566			return err
28567		}
28568		if x.NextPageToken == "" {
28569			return nil
28570		}
28571		c.PageToken(x.NextPageToken)
28572	}
28573}
28574
28575// method id "content.productstatuses.custombatch":
28576
28577type ProductstatusesCustombatchCall struct {
28578	s                                 *APIService
28579	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
28580	urlParams_                        gensupport.URLParams
28581	ctx_                              context.Context
28582	header_                           http.Header
28583}
28584
28585// Custombatch: Gets the statuses of multiple products in a single
28586// request.
28587func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
28588	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28589	c.productstatusescustombatchrequest = productstatusescustombatchrequest
28590	return c
28591}
28592
28593// Fields allows partial responses to be retrieved. See
28594// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28595// for more information.
28596func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
28597	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28598	return c
28599}
28600
28601// Context sets the context to be used in this call's Do method. Any
28602// pending HTTP request will be aborted if the provided context is
28603// canceled.
28604func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
28605	c.ctx_ = ctx
28606	return c
28607}
28608
28609// Header returns an http.Header that can be modified by the caller to
28610// add HTTP headers to the request.
28611func (c *ProductstatusesCustombatchCall) Header() http.Header {
28612	if c.header_ == nil {
28613		c.header_ = make(http.Header)
28614	}
28615	return c.header_
28616}
28617
28618func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
28619	reqHeaders := make(http.Header)
28620	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
28621	for k, v := range c.header_ {
28622		reqHeaders[k] = v
28623	}
28624	reqHeaders.Set("User-Agent", c.s.userAgent())
28625	var body io.Reader = nil
28626	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
28627	if err != nil {
28628		return nil, err
28629	}
28630	reqHeaders.Set("Content-Type", "application/json")
28631	c.urlParams_.Set("alt", alt)
28632	c.urlParams_.Set("prettyPrint", "false")
28633	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/productstatuses/batch")
28634	urls += "?" + c.urlParams_.Encode()
28635	req, err := http.NewRequest("POST", urls, body)
28636	if err != nil {
28637		return nil, err
28638	}
28639	req.Header = reqHeaders
28640	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28641}
28642
28643// Do executes the "content.productstatuses.custombatch" call.
28644// Exactly one of *ProductstatusesCustomBatchResponse or error will be
28645// non-nil. Any non-2xx status code is an error. Response headers are in
28646// either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
28647// (if a response was returned at all) in
28648// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28649// whether the returned error was because http.StatusNotModified was
28650// returned.
28651func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
28652	gensupport.SetOptions(c.urlParams_, opts...)
28653	res, err := c.doRequest("json")
28654	if res != nil && res.StatusCode == http.StatusNotModified {
28655		if res.Body != nil {
28656			res.Body.Close()
28657		}
28658		return nil, &googleapi.Error{
28659			Code:   res.StatusCode,
28660			Header: res.Header,
28661		}
28662	}
28663	if err != nil {
28664		return nil, err
28665	}
28666	defer googleapi.CloseBody(res)
28667	if err := googleapi.CheckResponse(res); err != nil {
28668		return nil, err
28669	}
28670	ret := &ProductstatusesCustomBatchResponse{
28671		ServerResponse: googleapi.ServerResponse{
28672			Header:         res.Header,
28673			HTTPStatusCode: res.StatusCode,
28674		},
28675	}
28676	target := &ret
28677	if err := gensupport.DecodeResponse(target, res); err != nil {
28678		return nil, err
28679	}
28680	return ret, nil
28681	// {
28682	//   "description": "Gets the statuses of multiple products in a single request.",
28683	//   "flatPath": "content/v2.1/productstatuses/batch",
28684	//   "httpMethod": "POST",
28685	//   "id": "content.productstatuses.custombatch",
28686	//   "parameterOrder": [],
28687	//   "parameters": {},
28688	//   "path": "content/v2.1/productstatuses/batch",
28689	//   "request": {
28690	//     "$ref": "ProductstatusesCustomBatchRequest"
28691	//   },
28692	//   "response": {
28693	//     "$ref": "ProductstatusesCustomBatchResponse"
28694	//   },
28695	//   "scopes": [
28696	//     "https://www.googleapis.com/auth/content"
28697	//   ]
28698	// }
28699
28700}
28701
28702// method id "content.productstatuses.get":
28703
28704type ProductstatusesGetCall struct {
28705	s            *APIService
28706	merchantId   uint64
28707	productId    string
28708	urlParams_   gensupport.URLParams
28709	ifNoneMatch_ string
28710	ctx_         context.Context
28711	header_      http.Header
28712}
28713
28714// Get: Gets the status of a product from your Merchant Center account.
28715func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
28716	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28717	c.merchantId = merchantId
28718	c.productId = productId
28719	return c
28720}
28721
28722// Destinations sets the optional parameter "destinations": If set, only
28723// issues for the specified destinations are returned, otherwise only
28724// issues for the Shopping destination.
28725func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
28726	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
28727	return c
28728}
28729
28730// Fields allows partial responses to be retrieved. See
28731// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28732// for more information.
28733func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
28734	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28735	return c
28736}
28737
28738// IfNoneMatch sets the optional parameter which makes the operation
28739// fail if the object's ETag matches the given value. This is useful for
28740// getting updates only after the object has changed since the last
28741// request. Use googleapi.IsNotModified to check whether the response
28742// error from Do is the result of In-None-Match.
28743func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
28744	c.ifNoneMatch_ = entityTag
28745	return c
28746}
28747
28748// Context sets the context to be used in this call's Do method. Any
28749// pending HTTP request will be aborted if the provided context is
28750// canceled.
28751func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
28752	c.ctx_ = ctx
28753	return c
28754}
28755
28756// Header returns an http.Header that can be modified by the caller to
28757// add HTTP headers to the request.
28758func (c *ProductstatusesGetCall) Header() http.Header {
28759	if c.header_ == nil {
28760		c.header_ = make(http.Header)
28761	}
28762	return c.header_
28763}
28764
28765func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
28766	reqHeaders := make(http.Header)
28767	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
28768	for k, v := range c.header_ {
28769		reqHeaders[k] = v
28770	}
28771	reqHeaders.Set("User-Agent", c.s.userAgent())
28772	if c.ifNoneMatch_ != "" {
28773		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28774	}
28775	var body io.Reader = nil
28776	c.urlParams_.Set("alt", alt)
28777	c.urlParams_.Set("prettyPrint", "false")
28778	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/productstatuses/{productId}")
28779	urls += "?" + c.urlParams_.Encode()
28780	req, err := http.NewRequest("GET", urls, body)
28781	if err != nil {
28782		return nil, err
28783	}
28784	req.Header = reqHeaders
28785	googleapi.Expand(req.URL, map[string]string{
28786		"merchantId": strconv.FormatUint(c.merchantId, 10),
28787		"productId":  c.productId,
28788	})
28789	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28790}
28791
28792// Do executes the "content.productstatuses.get" call.
28793// Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
28794// status code is an error. Response headers are in either
28795// *ProductStatus.ServerResponse.Header or (if a response was returned
28796// at all) in error.(*googleapi.Error).Header. Use
28797// googleapi.IsNotModified to check whether the returned error was
28798// because http.StatusNotModified was returned.
28799func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
28800	gensupport.SetOptions(c.urlParams_, opts...)
28801	res, err := c.doRequest("json")
28802	if res != nil && res.StatusCode == http.StatusNotModified {
28803		if res.Body != nil {
28804			res.Body.Close()
28805		}
28806		return nil, &googleapi.Error{
28807			Code:   res.StatusCode,
28808			Header: res.Header,
28809		}
28810	}
28811	if err != nil {
28812		return nil, err
28813	}
28814	defer googleapi.CloseBody(res)
28815	if err := googleapi.CheckResponse(res); err != nil {
28816		return nil, err
28817	}
28818	ret := &ProductStatus{
28819		ServerResponse: googleapi.ServerResponse{
28820			Header:         res.Header,
28821			HTTPStatusCode: res.StatusCode,
28822		},
28823	}
28824	target := &ret
28825	if err := gensupport.DecodeResponse(target, res); err != nil {
28826		return nil, err
28827	}
28828	return ret, nil
28829	// {
28830	//   "description": "Gets the status of a product from your Merchant Center account.",
28831	//   "flatPath": "content/v2.1/{merchantId}/productstatuses/{productId}",
28832	//   "httpMethod": "GET",
28833	//   "id": "content.productstatuses.get",
28834	//   "parameterOrder": [
28835	//     "merchantId",
28836	//     "productId"
28837	//   ],
28838	//   "parameters": {
28839	//     "destinations": {
28840	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
28841	//       "location": "query",
28842	//       "repeated": true,
28843	//       "type": "string"
28844	//     },
28845	//     "merchantId": {
28846	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
28847	//       "format": "uint64",
28848	//       "location": "path",
28849	//       "required": true,
28850	//       "type": "string"
28851	//     },
28852	//     "productId": {
28853	//       "description": "The REST ID of the product.",
28854	//       "location": "path",
28855	//       "required": true,
28856	//       "type": "string"
28857	//     }
28858	//   },
28859	//   "path": "content/v2.1/{merchantId}/productstatuses/{productId}",
28860	//   "response": {
28861	//     "$ref": "ProductStatus"
28862	//   },
28863	//   "scopes": [
28864	//     "https://www.googleapis.com/auth/content"
28865	//   ]
28866	// }
28867
28868}
28869
28870// method id "content.productstatuses.list":
28871
28872type ProductstatusesListCall struct {
28873	s            *APIService
28874	merchantId   uint64
28875	urlParams_   gensupport.URLParams
28876	ifNoneMatch_ string
28877	ctx_         context.Context
28878	header_      http.Header
28879}
28880
28881// List: Lists the statuses of the products in your Merchant Center
28882// account.
28883func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
28884	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28885	c.merchantId = merchantId
28886	return c
28887}
28888
28889// Destinations sets the optional parameter "destinations": If set, only
28890// issues for the specified destinations are returned, otherwise only
28891// issues for the Shopping destination.
28892func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
28893	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
28894	return c
28895}
28896
28897// MaxResults sets the optional parameter "maxResults": The maximum
28898// number of product statuses to return in the response, used for
28899// paging.
28900func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
28901	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28902	return c
28903}
28904
28905// PageToken sets the optional parameter "pageToken": The token returned
28906// by the previous request.
28907func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
28908	c.urlParams_.Set("pageToken", pageToken)
28909	return c
28910}
28911
28912// Fields allows partial responses to be retrieved. See
28913// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28914// for more information.
28915func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
28916	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28917	return c
28918}
28919
28920// IfNoneMatch sets the optional parameter which makes the operation
28921// fail if the object's ETag matches the given value. This is useful for
28922// getting updates only after the object has changed since the last
28923// request. Use googleapi.IsNotModified to check whether the response
28924// error from Do is the result of In-None-Match.
28925func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
28926	c.ifNoneMatch_ = entityTag
28927	return c
28928}
28929
28930// Context sets the context to be used in this call's Do method. Any
28931// pending HTTP request will be aborted if the provided context is
28932// canceled.
28933func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
28934	c.ctx_ = ctx
28935	return c
28936}
28937
28938// Header returns an http.Header that can be modified by the caller to
28939// add HTTP headers to the request.
28940func (c *ProductstatusesListCall) Header() http.Header {
28941	if c.header_ == nil {
28942		c.header_ = make(http.Header)
28943	}
28944	return c.header_
28945}
28946
28947func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
28948	reqHeaders := make(http.Header)
28949	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
28950	for k, v := range c.header_ {
28951		reqHeaders[k] = v
28952	}
28953	reqHeaders.Set("User-Agent", c.s.userAgent())
28954	if c.ifNoneMatch_ != "" {
28955		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28956	}
28957	var body io.Reader = nil
28958	c.urlParams_.Set("alt", alt)
28959	c.urlParams_.Set("prettyPrint", "false")
28960	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/productstatuses")
28961	urls += "?" + c.urlParams_.Encode()
28962	req, err := http.NewRequest("GET", urls, body)
28963	if err != nil {
28964		return nil, err
28965	}
28966	req.Header = reqHeaders
28967	googleapi.Expand(req.URL, map[string]string{
28968		"merchantId": strconv.FormatUint(c.merchantId, 10),
28969	})
28970	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28971}
28972
28973// Do executes the "content.productstatuses.list" call.
28974// Exactly one of *ProductstatusesListResponse or error will be non-nil.
28975// Any non-2xx status code is an error. Response headers are in either
28976// *ProductstatusesListResponse.ServerResponse.Header or (if a response
28977// was returned at all) in error.(*googleapi.Error).Header. Use
28978// googleapi.IsNotModified to check whether the returned error was
28979// because http.StatusNotModified was returned.
28980func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
28981	gensupport.SetOptions(c.urlParams_, opts...)
28982	res, err := c.doRequest("json")
28983	if res != nil && res.StatusCode == http.StatusNotModified {
28984		if res.Body != nil {
28985			res.Body.Close()
28986		}
28987		return nil, &googleapi.Error{
28988			Code:   res.StatusCode,
28989			Header: res.Header,
28990		}
28991	}
28992	if err != nil {
28993		return nil, err
28994	}
28995	defer googleapi.CloseBody(res)
28996	if err := googleapi.CheckResponse(res); err != nil {
28997		return nil, err
28998	}
28999	ret := &ProductstatusesListResponse{
29000		ServerResponse: googleapi.ServerResponse{
29001			Header:         res.Header,
29002			HTTPStatusCode: res.StatusCode,
29003		},
29004	}
29005	target := &ret
29006	if err := gensupport.DecodeResponse(target, res); err != nil {
29007		return nil, err
29008	}
29009	return ret, nil
29010	// {
29011	//   "description": "Lists the statuses of the products in your Merchant Center account.",
29012	//   "flatPath": "content/v2.1/{merchantId}/productstatuses",
29013	//   "httpMethod": "GET",
29014	//   "id": "content.productstatuses.list",
29015	//   "parameterOrder": [
29016	//     "merchantId"
29017	//   ],
29018	//   "parameters": {
29019	//     "destinations": {
29020	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
29021	//       "location": "query",
29022	//       "repeated": true,
29023	//       "type": "string"
29024	//     },
29025	//     "maxResults": {
29026	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
29027	//       "format": "uint32",
29028	//       "location": "query",
29029	//       "type": "integer"
29030	//     },
29031	//     "merchantId": {
29032	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
29033	//       "format": "uint64",
29034	//       "location": "path",
29035	//       "required": true,
29036	//       "type": "string"
29037	//     },
29038	//     "pageToken": {
29039	//       "description": "The token returned by the previous request.",
29040	//       "location": "query",
29041	//       "type": "string"
29042	//     }
29043	//   },
29044	//   "path": "content/v2.1/{merchantId}/productstatuses",
29045	//   "response": {
29046	//     "$ref": "ProductstatusesListResponse"
29047	//   },
29048	//   "scopes": [
29049	//     "https://www.googleapis.com/auth/content"
29050	//   ]
29051	// }
29052
29053}
29054
29055// Pages invokes f for each page of results.
29056// A non-nil error returned from f will halt the iteration.
29057// The provided context supersedes any context provided to the Context method.
29058func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
29059	c.ctx_ = ctx
29060	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29061	for {
29062		x, err := c.Do()
29063		if err != nil {
29064			return err
29065		}
29066		if err := f(x); err != nil {
29067			return err
29068		}
29069		if x.NextPageToken == "" {
29070			return nil
29071		}
29072		c.PageToken(x.NextPageToken)
29073	}
29074}
29075
29076// method id "content.pubsubnotificationsettings.get":
29077
29078type PubsubnotificationsettingsGetCall struct {
29079	s            *APIService
29080	merchantId   uint64
29081	urlParams_   gensupport.URLParams
29082	ifNoneMatch_ string
29083	ctx_         context.Context
29084	header_      http.Header
29085}
29086
29087// Get: Retrieves a Merchant Center account's pubsub notification
29088// settings.
29089func (r *PubsubnotificationsettingsService) Get(merchantId uint64) *PubsubnotificationsettingsGetCall {
29090	c := &PubsubnotificationsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29091	c.merchantId = merchantId
29092	return c
29093}
29094
29095// Fields allows partial responses to be retrieved. See
29096// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29097// for more information.
29098func (c *PubsubnotificationsettingsGetCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsGetCall {
29099	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29100	return c
29101}
29102
29103// IfNoneMatch sets the optional parameter which makes the operation
29104// fail if the object's ETag matches the given value. This is useful for
29105// getting updates only after the object has changed since the last
29106// request. Use googleapi.IsNotModified to check whether the response
29107// error from Do is the result of In-None-Match.
29108func (c *PubsubnotificationsettingsGetCall) IfNoneMatch(entityTag string) *PubsubnotificationsettingsGetCall {
29109	c.ifNoneMatch_ = entityTag
29110	return c
29111}
29112
29113// Context sets the context to be used in this call's Do method. Any
29114// pending HTTP request will be aborted if the provided context is
29115// canceled.
29116func (c *PubsubnotificationsettingsGetCall) Context(ctx context.Context) *PubsubnotificationsettingsGetCall {
29117	c.ctx_ = ctx
29118	return c
29119}
29120
29121// Header returns an http.Header that can be modified by the caller to
29122// add HTTP headers to the request.
29123func (c *PubsubnotificationsettingsGetCall) Header() http.Header {
29124	if c.header_ == nil {
29125		c.header_ = make(http.Header)
29126	}
29127	return c.header_
29128}
29129
29130func (c *PubsubnotificationsettingsGetCall) doRequest(alt string) (*http.Response, error) {
29131	reqHeaders := make(http.Header)
29132	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
29133	for k, v := range c.header_ {
29134		reqHeaders[k] = v
29135	}
29136	reqHeaders.Set("User-Agent", c.s.userAgent())
29137	if c.ifNoneMatch_ != "" {
29138		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29139	}
29140	var body io.Reader = nil
29141	c.urlParams_.Set("alt", alt)
29142	c.urlParams_.Set("prettyPrint", "false")
29143	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/pubsubnotificationsettings")
29144	urls += "?" + c.urlParams_.Encode()
29145	req, err := http.NewRequest("GET", urls, body)
29146	if err != nil {
29147		return nil, err
29148	}
29149	req.Header = reqHeaders
29150	googleapi.Expand(req.URL, map[string]string{
29151		"merchantId": strconv.FormatUint(c.merchantId, 10),
29152	})
29153	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29154}
29155
29156// Do executes the "content.pubsubnotificationsettings.get" call.
29157// Exactly one of *PubsubNotificationSettings or error will be non-nil.
29158// Any non-2xx status code is an error. Response headers are in either
29159// *PubsubNotificationSettings.ServerResponse.Header or (if a response
29160// was returned at all) in error.(*googleapi.Error).Header. Use
29161// googleapi.IsNotModified to check whether the returned error was
29162// because http.StatusNotModified was returned.
29163func (c *PubsubnotificationsettingsGetCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
29164	gensupport.SetOptions(c.urlParams_, opts...)
29165	res, err := c.doRequest("json")
29166	if res != nil && res.StatusCode == http.StatusNotModified {
29167		if res.Body != nil {
29168			res.Body.Close()
29169		}
29170		return nil, &googleapi.Error{
29171			Code:   res.StatusCode,
29172			Header: res.Header,
29173		}
29174	}
29175	if err != nil {
29176		return nil, err
29177	}
29178	defer googleapi.CloseBody(res)
29179	if err := googleapi.CheckResponse(res); err != nil {
29180		return nil, err
29181	}
29182	ret := &PubsubNotificationSettings{
29183		ServerResponse: googleapi.ServerResponse{
29184			Header:         res.Header,
29185			HTTPStatusCode: res.StatusCode,
29186		},
29187	}
29188	target := &ret
29189	if err := gensupport.DecodeResponse(target, res); err != nil {
29190		return nil, err
29191	}
29192	return ret, nil
29193	// {
29194	//   "description": "Retrieves a Merchant Center account's pubsub notification settings.",
29195	//   "flatPath": "content/v2.1/{merchantId}/pubsubnotificationsettings",
29196	//   "httpMethod": "GET",
29197	//   "id": "content.pubsubnotificationsettings.get",
29198	//   "parameterOrder": [
29199	//     "merchantId"
29200	//   ],
29201	//   "parameters": {
29202	//     "merchantId": {
29203	//       "description": "The ID of the account for which to get pubsub notification settings.",
29204	//       "format": "uint64",
29205	//       "location": "path",
29206	//       "required": true,
29207	//       "type": "string"
29208	//     }
29209	//   },
29210	//   "path": "content/v2.1/{merchantId}/pubsubnotificationsettings",
29211	//   "response": {
29212	//     "$ref": "PubsubNotificationSettings"
29213	//   },
29214	//   "scopes": [
29215	//     "https://www.googleapis.com/auth/content"
29216	//   ]
29217	// }
29218
29219}
29220
29221// method id "content.pubsubnotificationsettings.update":
29222
29223type PubsubnotificationsettingsUpdateCall struct {
29224	s                          *APIService
29225	merchantId                 uint64
29226	pubsubnotificationsettings *PubsubNotificationSettings
29227	urlParams_                 gensupport.URLParams
29228	ctx_                       context.Context
29229	header_                    http.Header
29230}
29231
29232// Update: Register a Merchant Center account for pubsub notifications.
29233// Note that cloud topic name should not be provided as part of the
29234// request.
29235func (r *PubsubnotificationsettingsService) Update(merchantId uint64, pubsubnotificationsettings *PubsubNotificationSettings) *PubsubnotificationsettingsUpdateCall {
29236	c := &PubsubnotificationsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29237	c.merchantId = merchantId
29238	c.pubsubnotificationsettings = pubsubnotificationsettings
29239	return c
29240}
29241
29242// Fields allows partial responses to be retrieved. See
29243// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29244// for more information.
29245func (c *PubsubnotificationsettingsUpdateCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsUpdateCall {
29246	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29247	return c
29248}
29249
29250// Context sets the context to be used in this call's Do method. Any
29251// pending HTTP request will be aborted if the provided context is
29252// canceled.
29253func (c *PubsubnotificationsettingsUpdateCall) Context(ctx context.Context) *PubsubnotificationsettingsUpdateCall {
29254	c.ctx_ = ctx
29255	return c
29256}
29257
29258// Header returns an http.Header that can be modified by the caller to
29259// add HTTP headers to the request.
29260func (c *PubsubnotificationsettingsUpdateCall) Header() http.Header {
29261	if c.header_ == nil {
29262		c.header_ = make(http.Header)
29263	}
29264	return c.header_
29265}
29266
29267func (c *PubsubnotificationsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
29268	reqHeaders := make(http.Header)
29269	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
29270	for k, v := range c.header_ {
29271		reqHeaders[k] = v
29272	}
29273	reqHeaders.Set("User-Agent", c.s.userAgent())
29274	var body io.Reader = nil
29275	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pubsubnotificationsettings)
29276	if err != nil {
29277		return nil, err
29278	}
29279	reqHeaders.Set("Content-Type", "application/json")
29280	c.urlParams_.Set("alt", alt)
29281	c.urlParams_.Set("prettyPrint", "false")
29282	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/pubsubnotificationsettings")
29283	urls += "?" + c.urlParams_.Encode()
29284	req, err := http.NewRequest("PUT", urls, body)
29285	if err != nil {
29286		return nil, err
29287	}
29288	req.Header = reqHeaders
29289	googleapi.Expand(req.URL, map[string]string{
29290		"merchantId": strconv.FormatUint(c.merchantId, 10),
29291	})
29292	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29293}
29294
29295// Do executes the "content.pubsubnotificationsettings.update" call.
29296// Exactly one of *PubsubNotificationSettings or error will be non-nil.
29297// Any non-2xx status code is an error. Response headers are in either
29298// *PubsubNotificationSettings.ServerResponse.Header or (if a response
29299// was returned at all) in error.(*googleapi.Error).Header. Use
29300// googleapi.IsNotModified to check whether the returned error was
29301// because http.StatusNotModified was returned.
29302func (c *PubsubnotificationsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
29303	gensupport.SetOptions(c.urlParams_, opts...)
29304	res, err := c.doRequest("json")
29305	if res != nil && res.StatusCode == http.StatusNotModified {
29306		if res.Body != nil {
29307			res.Body.Close()
29308		}
29309		return nil, &googleapi.Error{
29310			Code:   res.StatusCode,
29311			Header: res.Header,
29312		}
29313	}
29314	if err != nil {
29315		return nil, err
29316	}
29317	defer googleapi.CloseBody(res)
29318	if err := googleapi.CheckResponse(res); err != nil {
29319		return nil, err
29320	}
29321	ret := &PubsubNotificationSettings{
29322		ServerResponse: googleapi.ServerResponse{
29323			Header:         res.Header,
29324			HTTPStatusCode: res.StatusCode,
29325		},
29326	}
29327	target := &ret
29328	if err := gensupport.DecodeResponse(target, res); err != nil {
29329		return nil, err
29330	}
29331	return ret, nil
29332	// {
29333	//   "description": "Register a Merchant Center account for pubsub notifications. Note that cloud topic name should not be provided as part of the request.",
29334	//   "flatPath": "content/v2.1/{merchantId}/pubsubnotificationsettings",
29335	//   "httpMethod": "PUT",
29336	//   "id": "content.pubsubnotificationsettings.update",
29337	//   "parameterOrder": [
29338	//     "merchantId"
29339	//   ],
29340	//   "parameters": {
29341	//     "merchantId": {
29342	//       "description": "The ID of the account.",
29343	//       "format": "uint64",
29344	//       "location": "path",
29345	//       "required": true,
29346	//       "type": "string"
29347	//     }
29348	//   },
29349	//   "path": "content/v2.1/{merchantId}/pubsubnotificationsettings",
29350	//   "request": {
29351	//     "$ref": "PubsubNotificationSettings"
29352	//   },
29353	//   "response": {
29354	//     "$ref": "PubsubNotificationSettings"
29355	//   },
29356	//   "scopes": [
29357	//     "https://www.googleapis.com/auth/content"
29358	//   ]
29359	// }
29360
29361}
29362
29363// method id "content.regionalinventory.custombatch":
29364
29365type RegionalinventoryCustombatchCall struct {
29366	s                                   *APIService
29367	regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest
29368	urlParams_                          gensupport.URLParams
29369	ctx_                                context.Context
29370	header_                             http.Header
29371}
29372
29373// Custombatch: Updates regional inventory for multiple products or
29374// regions in a single request.
29375func (r *RegionalinventoryService) Custombatch(regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest) *RegionalinventoryCustombatchCall {
29376	c := &RegionalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29377	c.regionalinventorycustombatchrequest = regionalinventorycustombatchrequest
29378	return c
29379}
29380
29381// Fields allows partial responses to be retrieved. See
29382// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29383// for more information.
29384func (c *RegionalinventoryCustombatchCall) Fields(s ...googleapi.Field) *RegionalinventoryCustombatchCall {
29385	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29386	return c
29387}
29388
29389// Context sets the context to be used in this call's Do method. Any
29390// pending HTTP request will be aborted if the provided context is
29391// canceled.
29392func (c *RegionalinventoryCustombatchCall) Context(ctx context.Context) *RegionalinventoryCustombatchCall {
29393	c.ctx_ = ctx
29394	return c
29395}
29396
29397// Header returns an http.Header that can be modified by the caller to
29398// add HTTP headers to the request.
29399func (c *RegionalinventoryCustombatchCall) Header() http.Header {
29400	if c.header_ == nil {
29401		c.header_ = make(http.Header)
29402	}
29403	return c.header_
29404}
29405
29406func (c *RegionalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
29407	reqHeaders := make(http.Header)
29408	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
29409	for k, v := range c.header_ {
29410		reqHeaders[k] = v
29411	}
29412	reqHeaders.Set("User-Agent", c.s.userAgent())
29413	var body io.Reader = nil
29414	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventorycustombatchrequest)
29415	if err != nil {
29416		return nil, err
29417	}
29418	reqHeaders.Set("Content-Type", "application/json")
29419	c.urlParams_.Set("alt", alt)
29420	c.urlParams_.Set("prettyPrint", "false")
29421	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/regionalinventory/batch")
29422	urls += "?" + c.urlParams_.Encode()
29423	req, err := http.NewRequest("POST", urls, body)
29424	if err != nil {
29425		return nil, err
29426	}
29427	req.Header = reqHeaders
29428	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29429}
29430
29431// Do executes the "content.regionalinventory.custombatch" call.
29432// Exactly one of *RegionalinventoryCustomBatchResponse or error will be
29433// non-nil. Any non-2xx status code is an error. Response headers are in
29434// either *RegionalinventoryCustomBatchResponse.ServerResponse.Header or
29435// (if a response was returned at all) in
29436// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29437// whether the returned error was because http.StatusNotModified was
29438// returned.
29439func (c *RegionalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*RegionalinventoryCustomBatchResponse, error) {
29440	gensupport.SetOptions(c.urlParams_, opts...)
29441	res, err := c.doRequest("json")
29442	if res != nil && res.StatusCode == http.StatusNotModified {
29443		if res.Body != nil {
29444			res.Body.Close()
29445		}
29446		return nil, &googleapi.Error{
29447			Code:   res.StatusCode,
29448			Header: res.Header,
29449		}
29450	}
29451	if err != nil {
29452		return nil, err
29453	}
29454	defer googleapi.CloseBody(res)
29455	if err := googleapi.CheckResponse(res); err != nil {
29456		return nil, err
29457	}
29458	ret := &RegionalinventoryCustomBatchResponse{
29459		ServerResponse: googleapi.ServerResponse{
29460			Header:         res.Header,
29461			HTTPStatusCode: res.StatusCode,
29462		},
29463	}
29464	target := &ret
29465	if err := gensupport.DecodeResponse(target, res); err != nil {
29466		return nil, err
29467	}
29468	return ret, nil
29469	// {
29470	//   "description": "Updates regional inventory for multiple products or regions in a single request.",
29471	//   "flatPath": "content/v2.1/regionalinventory/batch",
29472	//   "httpMethod": "POST",
29473	//   "id": "content.regionalinventory.custombatch",
29474	//   "parameterOrder": [],
29475	//   "parameters": {},
29476	//   "path": "content/v2.1/regionalinventory/batch",
29477	//   "request": {
29478	//     "$ref": "RegionalinventoryCustomBatchRequest"
29479	//   },
29480	//   "response": {
29481	//     "$ref": "RegionalinventoryCustomBatchResponse"
29482	//   },
29483	//   "scopes": [
29484	//     "https://www.googleapis.com/auth/content"
29485	//   ]
29486	// }
29487
29488}
29489
29490// method id "content.regionalinventory.insert":
29491
29492type RegionalinventoryInsertCall struct {
29493	s                 *APIService
29494	merchantId        uint64
29495	productId         string
29496	regionalinventory *RegionalInventory
29497	urlParams_        gensupport.URLParams
29498	ctx_              context.Context
29499	header_           http.Header
29500}
29501
29502// Insert: Update the regional inventory of a product in your Merchant
29503// Center account. If a regional inventory with the same region ID
29504// already exists, this method updates that entry.
29505func (r *RegionalinventoryService) Insert(merchantId uint64, productId string, regionalinventory *RegionalInventory) *RegionalinventoryInsertCall {
29506	c := &RegionalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29507	c.merchantId = merchantId
29508	c.productId = productId
29509	c.regionalinventory = regionalinventory
29510	return c
29511}
29512
29513// Fields allows partial responses to be retrieved. See
29514// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29515// for more information.
29516func (c *RegionalinventoryInsertCall) Fields(s ...googleapi.Field) *RegionalinventoryInsertCall {
29517	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29518	return c
29519}
29520
29521// Context sets the context to be used in this call's Do method. Any
29522// pending HTTP request will be aborted if the provided context is
29523// canceled.
29524func (c *RegionalinventoryInsertCall) Context(ctx context.Context) *RegionalinventoryInsertCall {
29525	c.ctx_ = ctx
29526	return c
29527}
29528
29529// Header returns an http.Header that can be modified by the caller to
29530// add HTTP headers to the request.
29531func (c *RegionalinventoryInsertCall) Header() http.Header {
29532	if c.header_ == nil {
29533		c.header_ = make(http.Header)
29534	}
29535	return c.header_
29536}
29537
29538func (c *RegionalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
29539	reqHeaders := make(http.Header)
29540	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
29541	for k, v := range c.header_ {
29542		reqHeaders[k] = v
29543	}
29544	reqHeaders.Set("User-Agent", c.s.userAgent())
29545	var body io.Reader = nil
29546	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventory)
29547	if err != nil {
29548		return nil, err
29549	}
29550	reqHeaders.Set("Content-Type", "application/json")
29551	c.urlParams_.Set("alt", alt)
29552	c.urlParams_.Set("prettyPrint", "false")
29553	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/products/{productId}/regionalinventory")
29554	urls += "?" + c.urlParams_.Encode()
29555	req, err := http.NewRequest("POST", urls, body)
29556	if err != nil {
29557		return nil, err
29558	}
29559	req.Header = reqHeaders
29560	googleapi.Expand(req.URL, map[string]string{
29561		"merchantId": strconv.FormatUint(c.merchantId, 10),
29562		"productId":  c.productId,
29563	})
29564	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29565}
29566
29567// Do executes the "content.regionalinventory.insert" call.
29568// Exactly one of *RegionalInventory or error will be non-nil. Any
29569// non-2xx status code is an error. Response headers are in either
29570// *RegionalInventory.ServerResponse.Header or (if a response was
29571// returned at all) in error.(*googleapi.Error).Header. Use
29572// googleapi.IsNotModified to check whether the returned error was
29573// because http.StatusNotModified was returned.
29574func (c *RegionalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*RegionalInventory, error) {
29575	gensupport.SetOptions(c.urlParams_, opts...)
29576	res, err := c.doRequest("json")
29577	if res != nil && res.StatusCode == http.StatusNotModified {
29578		if res.Body != nil {
29579			res.Body.Close()
29580		}
29581		return nil, &googleapi.Error{
29582			Code:   res.StatusCode,
29583			Header: res.Header,
29584		}
29585	}
29586	if err != nil {
29587		return nil, err
29588	}
29589	defer googleapi.CloseBody(res)
29590	if err := googleapi.CheckResponse(res); err != nil {
29591		return nil, err
29592	}
29593	ret := &RegionalInventory{
29594		ServerResponse: googleapi.ServerResponse{
29595			Header:         res.Header,
29596			HTTPStatusCode: res.StatusCode,
29597		},
29598	}
29599	target := &ret
29600	if err := gensupport.DecodeResponse(target, res); err != nil {
29601		return nil, err
29602	}
29603	return ret, nil
29604	// {
29605	//   "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.",
29606	//   "flatPath": "content/v2.1/{merchantId}/products/{productId}/regionalinventory",
29607	//   "httpMethod": "POST",
29608	//   "id": "content.regionalinventory.insert",
29609	//   "parameterOrder": [
29610	//     "merchantId",
29611	//     "productId"
29612	//   ],
29613	//   "parameters": {
29614	//     "merchantId": {
29615	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
29616	//       "format": "uint64",
29617	//       "location": "path",
29618	//       "required": true,
29619	//       "type": "string"
29620	//     },
29621	//     "productId": {
29622	//       "description": "The REST ID of the product for which to update the regional inventory.",
29623	//       "location": "path",
29624	//       "required": true,
29625	//       "type": "string"
29626	//     }
29627	//   },
29628	//   "path": "content/v2.1/{merchantId}/products/{productId}/regionalinventory",
29629	//   "request": {
29630	//     "$ref": "RegionalInventory"
29631	//   },
29632	//   "response": {
29633	//     "$ref": "RegionalInventory"
29634	//   },
29635	//   "scopes": [
29636	//     "https://www.googleapis.com/auth/content"
29637	//   ]
29638	// }
29639
29640}
29641
29642// method id "content.regions.create":
29643
29644type RegionsCreateCall struct {
29645	s          *APIService
29646	merchantId int64
29647	region     *Region
29648	urlParams_ gensupport.URLParams
29649	ctx_       context.Context
29650	header_    http.Header
29651}
29652
29653// Create: Creates a region definition in your Merchant Center account.
29654func (r *RegionsService) Create(merchantId int64, region *Region) *RegionsCreateCall {
29655	c := &RegionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29656	c.merchantId = merchantId
29657	c.region = region
29658	return c
29659}
29660
29661// RegionId sets the optional parameter "regionId": Required. The id of
29662// the region to create.
29663func (c *RegionsCreateCall) RegionId(regionId string) *RegionsCreateCall {
29664	c.urlParams_.Set("regionId", regionId)
29665	return c
29666}
29667
29668// Fields allows partial responses to be retrieved. See
29669// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29670// for more information.
29671func (c *RegionsCreateCall) Fields(s ...googleapi.Field) *RegionsCreateCall {
29672	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29673	return c
29674}
29675
29676// Context sets the context to be used in this call's Do method. Any
29677// pending HTTP request will be aborted if the provided context is
29678// canceled.
29679func (c *RegionsCreateCall) Context(ctx context.Context) *RegionsCreateCall {
29680	c.ctx_ = ctx
29681	return c
29682}
29683
29684// Header returns an http.Header that can be modified by the caller to
29685// add HTTP headers to the request.
29686func (c *RegionsCreateCall) Header() http.Header {
29687	if c.header_ == nil {
29688		c.header_ = make(http.Header)
29689	}
29690	return c.header_
29691}
29692
29693func (c *RegionsCreateCall) doRequest(alt string) (*http.Response, error) {
29694	reqHeaders := make(http.Header)
29695	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
29696	for k, v := range c.header_ {
29697		reqHeaders[k] = v
29698	}
29699	reqHeaders.Set("User-Agent", c.s.userAgent())
29700	var body io.Reader = nil
29701	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
29702	if err != nil {
29703		return nil, err
29704	}
29705	reqHeaders.Set("Content-Type", "application/json")
29706	c.urlParams_.Set("alt", alt)
29707	c.urlParams_.Set("prettyPrint", "false")
29708	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/regions")
29709	urls += "?" + c.urlParams_.Encode()
29710	req, err := http.NewRequest("POST", urls, body)
29711	if err != nil {
29712		return nil, err
29713	}
29714	req.Header = reqHeaders
29715	googleapi.Expand(req.URL, map[string]string{
29716		"merchantId": strconv.FormatInt(c.merchantId, 10),
29717	})
29718	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29719}
29720
29721// Do executes the "content.regions.create" call.
29722// Exactly one of *Region or error will be non-nil. Any non-2xx status
29723// code is an error. Response headers are in either
29724// *Region.ServerResponse.Header or (if a response was returned at all)
29725// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
29726// check whether the returned error was because http.StatusNotModified
29727// was returned.
29728func (c *RegionsCreateCall) Do(opts ...googleapi.CallOption) (*Region, error) {
29729	gensupport.SetOptions(c.urlParams_, opts...)
29730	res, err := c.doRequest("json")
29731	if res != nil && res.StatusCode == http.StatusNotModified {
29732		if res.Body != nil {
29733			res.Body.Close()
29734		}
29735		return nil, &googleapi.Error{
29736			Code:   res.StatusCode,
29737			Header: res.Header,
29738		}
29739	}
29740	if err != nil {
29741		return nil, err
29742	}
29743	defer googleapi.CloseBody(res)
29744	if err := googleapi.CheckResponse(res); err != nil {
29745		return nil, err
29746	}
29747	ret := &Region{
29748		ServerResponse: googleapi.ServerResponse{
29749			Header:         res.Header,
29750			HTTPStatusCode: res.StatusCode,
29751		},
29752	}
29753	target := &ret
29754	if err := gensupport.DecodeResponse(target, res); err != nil {
29755		return nil, err
29756	}
29757	return ret, nil
29758	// {
29759	//   "description": "Creates a region definition in your Merchant Center account.",
29760	//   "flatPath": "content/v2.1/{merchantId}/regions",
29761	//   "httpMethod": "POST",
29762	//   "id": "content.regions.create",
29763	//   "parameterOrder": [
29764	//     "merchantId"
29765	//   ],
29766	//   "parameters": {
29767	//     "merchantId": {
29768	//       "description": "Required. The id of the merchant for which to create region definition.",
29769	//       "format": "int64",
29770	//       "location": "path",
29771	//       "required": true,
29772	//       "type": "string"
29773	//     },
29774	//     "regionId": {
29775	//       "description": "Required. The id of the region to create.",
29776	//       "location": "query",
29777	//       "type": "string"
29778	//     }
29779	//   },
29780	//   "path": "content/v2.1/{merchantId}/regions",
29781	//   "request": {
29782	//     "$ref": "Region"
29783	//   },
29784	//   "response": {
29785	//     "$ref": "Region"
29786	//   },
29787	//   "scopes": [
29788	//     "https://www.googleapis.com/auth/content"
29789	//   ]
29790	// }
29791
29792}
29793
29794// method id "content.regions.delete":
29795
29796type RegionsDeleteCall struct {
29797	s          *APIService
29798	merchantId int64
29799	regionId   string
29800	urlParams_ gensupport.URLParams
29801	ctx_       context.Context
29802	header_    http.Header
29803}
29804
29805// Delete: Deletes a region definition from your Merchant Center
29806// account.
29807func (r *RegionsService) Delete(merchantId int64, regionId string) *RegionsDeleteCall {
29808	c := &RegionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29809	c.merchantId = merchantId
29810	c.regionId = regionId
29811	return c
29812}
29813
29814// Fields allows partial responses to be retrieved. See
29815// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29816// for more information.
29817func (c *RegionsDeleteCall) Fields(s ...googleapi.Field) *RegionsDeleteCall {
29818	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29819	return c
29820}
29821
29822// Context sets the context to be used in this call's Do method. Any
29823// pending HTTP request will be aborted if the provided context is
29824// canceled.
29825func (c *RegionsDeleteCall) Context(ctx context.Context) *RegionsDeleteCall {
29826	c.ctx_ = ctx
29827	return c
29828}
29829
29830// Header returns an http.Header that can be modified by the caller to
29831// add HTTP headers to the request.
29832func (c *RegionsDeleteCall) Header() http.Header {
29833	if c.header_ == nil {
29834		c.header_ = make(http.Header)
29835	}
29836	return c.header_
29837}
29838
29839func (c *RegionsDeleteCall) doRequest(alt string) (*http.Response, error) {
29840	reqHeaders := make(http.Header)
29841	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
29842	for k, v := range c.header_ {
29843		reqHeaders[k] = v
29844	}
29845	reqHeaders.Set("User-Agent", c.s.userAgent())
29846	var body io.Reader = nil
29847	c.urlParams_.Set("alt", alt)
29848	c.urlParams_.Set("prettyPrint", "false")
29849	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/regions/{regionId}")
29850	urls += "?" + c.urlParams_.Encode()
29851	req, err := http.NewRequest("DELETE", urls, body)
29852	if err != nil {
29853		return nil, err
29854	}
29855	req.Header = reqHeaders
29856	googleapi.Expand(req.URL, map[string]string{
29857		"merchantId": strconv.FormatInt(c.merchantId, 10),
29858		"regionId":   c.regionId,
29859	})
29860	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29861}
29862
29863// Do executes the "content.regions.delete" call.
29864func (c *RegionsDeleteCall) Do(opts ...googleapi.CallOption) error {
29865	gensupport.SetOptions(c.urlParams_, opts...)
29866	res, err := c.doRequest("json")
29867	if err != nil {
29868		return err
29869	}
29870	defer googleapi.CloseBody(res)
29871	if err := googleapi.CheckResponse(res); err != nil {
29872		return err
29873	}
29874	return nil
29875	// {
29876	//   "description": "Deletes a region definition from your Merchant Center account.",
29877	//   "flatPath": "content/v2.1/{merchantId}/regions/{regionId}",
29878	//   "httpMethod": "DELETE",
29879	//   "id": "content.regions.delete",
29880	//   "parameterOrder": [
29881	//     "merchantId",
29882	//     "regionId"
29883	//   ],
29884	//   "parameters": {
29885	//     "merchantId": {
29886	//       "description": "Required. The id of the merchant for which to delete region definition.",
29887	//       "format": "int64",
29888	//       "location": "path",
29889	//       "required": true,
29890	//       "type": "string"
29891	//     },
29892	//     "regionId": {
29893	//       "description": "Required. The id of the region to delete.",
29894	//       "location": "path",
29895	//       "required": true,
29896	//       "type": "string"
29897	//     }
29898	//   },
29899	//   "path": "content/v2.1/{merchantId}/regions/{regionId}",
29900	//   "scopes": [
29901	//     "https://www.googleapis.com/auth/content"
29902	//   ]
29903	// }
29904
29905}
29906
29907// method id "content.regions.get":
29908
29909type RegionsGetCall struct {
29910	s            *APIService
29911	merchantId   int64
29912	regionId     string
29913	urlParams_   gensupport.URLParams
29914	ifNoneMatch_ string
29915	ctx_         context.Context
29916	header_      http.Header
29917}
29918
29919// Get: Retrieves a region defined in your Merchant Center account.
29920func (r *RegionsService) Get(merchantId int64, regionId string) *RegionsGetCall {
29921	c := &RegionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29922	c.merchantId = merchantId
29923	c.regionId = regionId
29924	return c
29925}
29926
29927// Fields allows partial responses to be retrieved. See
29928// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29929// for more information.
29930func (c *RegionsGetCall) Fields(s ...googleapi.Field) *RegionsGetCall {
29931	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29932	return c
29933}
29934
29935// IfNoneMatch sets the optional parameter which makes the operation
29936// fail if the object's ETag matches the given value. This is useful for
29937// getting updates only after the object has changed since the last
29938// request. Use googleapi.IsNotModified to check whether the response
29939// error from Do is the result of In-None-Match.
29940func (c *RegionsGetCall) IfNoneMatch(entityTag string) *RegionsGetCall {
29941	c.ifNoneMatch_ = entityTag
29942	return c
29943}
29944
29945// Context sets the context to be used in this call's Do method. Any
29946// pending HTTP request will be aborted if the provided context is
29947// canceled.
29948func (c *RegionsGetCall) Context(ctx context.Context) *RegionsGetCall {
29949	c.ctx_ = ctx
29950	return c
29951}
29952
29953// Header returns an http.Header that can be modified by the caller to
29954// add HTTP headers to the request.
29955func (c *RegionsGetCall) Header() http.Header {
29956	if c.header_ == nil {
29957		c.header_ = make(http.Header)
29958	}
29959	return c.header_
29960}
29961
29962func (c *RegionsGetCall) doRequest(alt string) (*http.Response, error) {
29963	reqHeaders := make(http.Header)
29964	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
29965	for k, v := range c.header_ {
29966		reqHeaders[k] = v
29967	}
29968	reqHeaders.Set("User-Agent", c.s.userAgent())
29969	if c.ifNoneMatch_ != "" {
29970		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29971	}
29972	var body io.Reader = nil
29973	c.urlParams_.Set("alt", alt)
29974	c.urlParams_.Set("prettyPrint", "false")
29975	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/regions/{regionId}")
29976	urls += "?" + c.urlParams_.Encode()
29977	req, err := http.NewRequest("GET", urls, body)
29978	if err != nil {
29979		return nil, err
29980	}
29981	req.Header = reqHeaders
29982	googleapi.Expand(req.URL, map[string]string{
29983		"merchantId": strconv.FormatInt(c.merchantId, 10),
29984		"regionId":   c.regionId,
29985	})
29986	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29987}
29988
29989// Do executes the "content.regions.get" call.
29990// Exactly one of *Region or error will be non-nil. Any non-2xx status
29991// code is an error. Response headers are in either
29992// *Region.ServerResponse.Header or (if a response was returned at all)
29993// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
29994// check whether the returned error was because http.StatusNotModified
29995// was returned.
29996func (c *RegionsGetCall) Do(opts ...googleapi.CallOption) (*Region, error) {
29997	gensupport.SetOptions(c.urlParams_, opts...)
29998	res, err := c.doRequest("json")
29999	if res != nil && res.StatusCode == http.StatusNotModified {
30000		if res.Body != nil {
30001			res.Body.Close()
30002		}
30003		return nil, &googleapi.Error{
30004			Code:   res.StatusCode,
30005			Header: res.Header,
30006		}
30007	}
30008	if err != nil {
30009		return nil, err
30010	}
30011	defer googleapi.CloseBody(res)
30012	if err := googleapi.CheckResponse(res); err != nil {
30013		return nil, err
30014	}
30015	ret := &Region{
30016		ServerResponse: googleapi.ServerResponse{
30017			Header:         res.Header,
30018			HTTPStatusCode: res.StatusCode,
30019		},
30020	}
30021	target := &ret
30022	if err := gensupport.DecodeResponse(target, res); err != nil {
30023		return nil, err
30024	}
30025	return ret, nil
30026	// {
30027	//   "description": "Retrieves a region defined in your Merchant Center account.",
30028	//   "flatPath": "content/v2.1/{merchantId}/regions/{regionId}",
30029	//   "httpMethod": "GET",
30030	//   "id": "content.regions.get",
30031	//   "parameterOrder": [
30032	//     "merchantId",
30033	//     "regionId"
30034	//   ],
30035	//   "parameters": {
30036	//     "merchantId": {
30037	//       "description": "Required. The id of the merchant for which to retrieve region definition.",
30038	//       "format": "int64",
30039	//       "location": "path",
30040	//       "required": true,
30041	//       "type": "string"
30042	//     },
30043	//     "regionId": {
30044	//       "description": "Required. The id of the region to retrieve.",
30045	//       "location": "path",
30046	//       "required": true,
30047	//       "type": "string"
30048	//     }
30049	//   },
30050	//   "path": "content/v2.1/{merchantId}/regions/{regionId}",
30051	//   "response": {
30052	//     "$ref": "Region"
30053	//   },
30054	//   "scopes": [
30055	//     "https://www.googleapis.com/auth/content"
30056	//   ]
30057	// }
30058
30059}
30060
30061// method id "content.regions.list":
30062
30063type RegionsListCall struct {
30064	s            *APIService
30065	merchantId   int64
30066	urlParams_   gensupport.URLParams
30067	ifNoneMatch_ string
30068	ctx_         context.Context
30069	header_      http.Header
30070}
30071
30072// List: Lists the regions in your Merchant Center account.
30073func (r *RegionsService) List(merchantId int64) *RegionsListCall {
30074	c := &RegionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30075	c.merchantId = merchantId
30076	return c
30077}
30078
30079// PageSize sets the optional parameter "pageSize": The maximum number
30080// of regions to return. The service may return fewer than this value.
30081// If unspecified, at most 50 rules will be returned. The maximum value
30082// is 1000; values above 1000 will be coerced to 1000.
30083func (c *RegionsListCall) PageSize(pageSize int64) *RegionsListCall {
30084	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
30085	return c
30086}
30087
30088// PageToken sets the optional parameter "pageToken": A page token,
30089// received from a previous `ListRegions` call. Provide this to retrieve
30090// the subsequent page. When paginating, all other parameters provided
30091// to `ListRegions` must match the call that provided the page token.
30092func (c *RegionsListCall) PageToken(pageToken string) *RegionsListCall {
30093	c.urlParams_.Set("pageToken", pageToken)
30094	return c
30095}
30096
30097// Fields allows partial responses to be retrieved. See
30098// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30099// for more information.
30100func (c *RegionsListCall) Fields(s ...googleapi.Field) *RegionsListCall {
30101	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30102	return c
30103}
30104
30105// IfNoneMatch sets the optional parameter which makes the operation
30106// fail if the object's ETag matches the given value. This is useful for
30107// getting updates only after the object has changed since the last
30108// request. Use googleapi.IsNotModified to check whether the response
30109// error from Do is the result of In-None-Match.
30110func (c *RegionsListCall) IfNoneMatch(entityTag string) *RegionsListCall {
30111	c.ifNoneMatch_ = entityTag
30112	return c
30113}
30114
30115// Context sets the context to be used in this call's Do method. Any
30116// pending HTTP request will be aborted if the provided context is
30117// canceled.
30118func (c *RegionsListCall) Context(ctx context.Context) *RegionsListCall {
30119	c.ctx_ = ctx
30120	return c
30121}
30122
30123// Header returns an http.Header that can be modified by the caller to
30124// add HTTP headers to the request.
30125func (c *RegionsListCall) Header() http.Header {
30126	if c.header_ == nil {
30127		c.header_ = make(http.Header)
30128	}
30129	return c.header_
30130}
30131
30132func (c *RegionsListCall) doRequest(alt string) (*http.Response, error) {
30133	reqHeaders := make(http.Header)
30134	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
30135	for k, v := range c.header_ {
30136		reqHeaders[k] = v
30137	}
30138	reqHeaders.Set("User-Agent", c.s.userAgent())
30139	if c.ifNoneMatch_ != "" {
30140		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30141	}
30142	var body io.Reader = nil
30143	c.urlParams_.Set("alt", alt)
30144	c.urlParams_.Set("prettyPrint", "false")
30145	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/regions")
30146	urls += "?" + c.urlParams_.Encode()
30147	req, err := http.NewRequest("GET", urls, body)
30148	if err != nil {
30149		return nil, err
30150	}
30151	req.Header = reqHeaders
30152	googleapi.Expand(req.URL, map[string]string{
30153		"merchantId": strconv.FormatInt(c.merchantId, 10),
30154	})
30155	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30156}
30157
30158// Do executes the "content.regions.list" call.
30159// Exactly one of *ListRegionsResponse or error will be non-nil. Any
30160// non-2xx status code is an error. Response headers are in either
30161// *ListRegionsResponse.ServerResponse.Header or (if a response was
30162// returned at all) in error.(*googleapi.Error).Header. Use
30163// googleapi.IsNotModified to check whether the returned error was
30164// because http.StatusNotModified was returned.
30165func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*ListRegionsResponse, error) {
30166	gensupport.SetOptions(c.urlParams_, opts...)
30167	res, err := c.doRequest("json")
30168	if res != nil && res.StatusCode == http.StatusNotModified {
30169		if res.Body != nil {
30170			res.Body.Close()
30171		}
30172		return nil, &googleapi.Error{
30173			Code:   res.StatusCode,
30174			Header: res.Header,
30175		}
30176	}
30177	if err != nil {
30178		return nil, err
30179	}
30180	defer googleapi.CloseBody(res)
30181	if err := googleapi.CheckResponse(res); err != nil {
30182		return nil, err
30183	}
30184	ret := &ListRegionsResponse{
30185		ServerResponse: googleapi.ServerResponse{
30186			Header:         res.Header,
30187			HTTPStatusCode: res.StatusCode,
30188		},
30189	}
30190	target := &ret
30191	if err := gensupport.DecodeResponse(target, res); err != nil {
30192		return nil, err
30193	}
30194	return ret, nil
30195	// {
30196	//   "description": "Lists the regions in your Merchant Center account.",
30197	//   "flatPath": "content/v2.1/{merchantId}/regions",
30198	//   "httpMethod": "GET",
30199	//   "id": "content.regions.list",
30200	//   "parameterOrder": [
30201	//     "merchantId"
30202	//   ],
30203	//   "parameters": {
30204	//     "merchantId": {
30205	//       "description": "Required. The id of the merchant for which to list region definitions.",
30206	//       "format": "int64",
30207	//       "location": "path",
30208	//       "required": true,
30209	//       "type": "string"
30210	//     },
30211	//     "pageSize": {
30212	//       "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.",
30213	//       "format": "int32",
30214	//       "location": "query",
30215	//       "type": "integer"
30216	//     },
30217	//     "pageToken": {
30218	//       "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.",
30219	//       "location": "query",
30220	//       "type": "string"
30221	//     }
30222	//   },
30223	//   "path": "content/v2.1/{merchantId}/regions",
30224	//   "response": {
30225	//     "$ref": "ListRegionsResponse"
30226	//   },
30227	//   "scopes": [
30228	//     "https://www.googleapis.com/auth/content"
30229	//   ]
30230	// }
30231
30232}
30233
30234// Pages invokes f for each page of results.
30235// A non-nil error returned from f will halt the iteration.
30236// The provided context supersedes any context provided to the Context method.
30237func (c *RegionsListCall) Pages(ctx context.Context, f func(*ListRegionsResponse) error) error {
30238	c.ctx_ = ctx
30239	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
30240	for {
30241		x, err := c.Do()
30242		if err != nil {
30243			return err
30244		}
30245		if err := f(x); err != nil {
30246			return err
30247		}
30248		if x.NextPageToken == "" {
30249			return nil
30250		}
30251		c.PageToken(x.NextPageToken)
30252	}
30253}
30254
30255// method id "content.regions.patch":
30256
30257type RegionsPatchCall struct {
30258	s          *APIService
30259	merchantId int64
30260	regionId   string
30261	region     *Region
30262	urlParams_ gensupport.URLParams
30263	ctx_       context.Context
30264	header_    http.Header
30265}
30266
30267// Patch: Updates a region definition in your Merchant Center account.
30268func (r *RegionsService) Patch(merchantId int64, regionId string, region *Region) *RegionsPatchCall {
30269	c := &RegionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30270	c.merchantId = merchantId
30271	c.regionId = regionId
30272	c.region = region
30273	return c
30274}
30275
30276// UpdateMask sets the optional parameter "updateMask": The field mask
30277// indicating the fields to update.
30278func (c *RegionsPatchCall) UpdateMask(updateMask string) *RegionsPatchCall {
30279	c.urlParams_.Set("updateMask", updateMask)
30280	return c
30281}
30282
30283// Fields allows partial responses to be retrieved. See
30284// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30285// for more information.
30286func (c *RegionsPatchCall) Fields(s ...googleapi.Field) *RegionsPatchCall {
30287	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30288	return c
30289}
30290
30291// Context sets the context to be used in this call's Do method. Any
30292// pending HTTP request will be aborted if the provided context is
30293// canceled.
30294func (c *RegionsPatchCall) Context(ctx context.Context) *RegionsPatchCall {
30295	c.ctx_ = ctx
30296	return c
30297}
30298
30299// Header returns an http.Header that can be modified by the caller to
30300// add HTTP headers to the request.
30301func (c *RegionsPatchCall) Header() http.Header {
30302	if c.header_ == nil {
30303		c.header_ = make(http.Header)
30304	}
30305	return c.header_
30306}
30307
30308func (c *RegionsPatchCall) doRequest(alt string) (*http.Response, error) {
30309	reqHeaders := make(http.Header)
30310	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
30311	for k, v := range c.header_ {
30312		reqHeaders[k] = v
30313	}
30314	reqHeaders.Set("User-Agent", c.s.userAgent())
30315	var body io.Reader = nil
30316	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
30317	if err != nil {
30318		return nil, err
30319	}
30320	reqHeaders.Set("Content-Type", "application/json")
30321	c.urlParams_.Set("alt", alt)
30322	c.urlParams_.Set("prettyPrint", "false")
30323	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/regions/{regionId}")
30324	urls += "?" + c.urlParams_.Encode()
30325	req, err := http.NewRequest("PATCH", urls, body)
30326	if err != nil {
30327		return nil, err
30328	}
30329	req.Header = reqHeaders
30330	googleapi.Expand(req.URL, map[string]string{
30331		"merchantId": strconv.FormatInt(c.merchantId, 10),
30332		"regionId":   c.regionId,
30333	})
30334	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30335}
30336
30337// Do executes the "content.regions.patch" call.
30338// Exactly one of *Region or error will be non-nil. Any non-2xx status
30339// code is an error. Response headers are in either
30340// *Region.ServerResponse.Header or (if a response was returned at all)
30341// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
30342// check whether the returned error was because http.StatusNotModified
30343// was returned.
30344func (c *RegionsPatchCall) Do(opts ...googleapi.CallOption) (*Region, error) {
30345	gensupport.SetOptions(c.urlParams_, opts...)
30346	res, err := c.doRequest("json")
30347	if res != nil && res.StatusCode == http.StatusNotModified {
30348		if res.Body != nil {
30349			res.Body.Close()
30350		}
30351		return nil, &googleapi.Error{
30352			Code:   res.StatusCode,
30353			Header: res.Header,
30354		}
30355	}
30356	if err != nil {
30357		return nil, err
30358	}
30359	defer googleapi.CloseBody(res)
30360	if err := googleapi.CheckResponse(res); err != nil {
30361		return nil, err
30362	}
30363	ret := &Region{
30364		ServerResponse: googleapi.ServerResponse{
30365			Header:         res.Header,
30366			HTTPStatusCode: res.StatusCode,
30367		},
30368	}
30369	target := &ret
30370	if err := gensupport.DecodeResponse(target, res); err != nil {
30371		return nil, err
30372	}
30373	return ret, nil
30374	// {
30375	//   "description": "Updates a region definition in your Merchant Center account.",
30376	//   "flatPath": "content/v2.1/{merchantId}/regions/{regionId}",
30377	//   "httpMethod": "PATCH",
30378	//   "id": "content.regions.patch",
30379	//   "parameterOrder": [
30380	//     "merchantId",
30381	//     "regionId"
30382	//   ],
30383	//   "parameters": {
30384	//     "merchantId": {
30385	//       "description": "Required. The id of the merchant for which to update region definition.",
30386	//       "format": "int64",
30387	//       "location": "path",
30388	//       "required": true,
30389	//       "type": "string"
30390	//     },
30391	//     "regionId": {
30392	//       "description": "Required. The id of the region to update.",
30393	//       "location": "path",
30394	//       "required": true,
30395	//       "type": "string"
30396	//     },
30397	//     "updateMask": {
30398	//       "description": "Optional. The field mask indicating the fields to update.",
30399	//       "format": "google-fieldmask",
30400	//       "location": "query",
30401	//       "type": "string"
30402	//     }
30403	//   },
30404	//   "path": "content/v2.1/{merchantId}/regions/{regionId}",
30405	//   "request": {
30406	//     "$ref": "Region"
30407	//   },
30408	//   "response": {
30409	//     "$ref": "Region"
30410	//   },
30411	//   "scopes": [
30412	//     "https://www.googleapis.com/auth/content"
30413	//   ]
30414	// }
30415
30416}
30417
30418// method id "content.repricingrules.create":
30419
30420type RepricingrulesCreateCall struct {
30421	s             *APIService
30422	merchantId    int64
30423	repricingrule *RepricingRule
30424	urlParams_    gensupport.URLParams
30425	ctx_          context.Context
30426	header_       http.Header
30427}
30428
30429// Create: Creates a repricing rule for your Merchant Center account.
30430func (r *RepricingrulesService) Create(merchantId int64, repricingrule *RepricingRule) *RepricingrulesCreateCall {
30431	c := &RepricingrulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30432	c.merchantId = merchantId
30433	c.repricingrule = repricingrule
30434	return c
30435}
30436
30437// RuleId sets the optional parameter "ruleId": Required. The id of the
30438// rule to create.
30439func (c *RepricingrulesCreateCall) RuleId(ruleId string) *RepricingrulesCreateCall {
30440	c.urlParams_.Set("ruleId", ruleId)
30441	return c
30442}
30443
30444// Fields allows partial responses to be retrieved. See
30445// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30446// for more information.
30447func (c *RepricingrulesCreateCall) Fields(s ...googleapi.Field) *RepricingrulesCreateCall {
30448	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30449	return c
30450}
30451
30452// Context sets the context to be used in this call's Do method. Any
30453// pending HTTP request will be aborted if the provided context is
30454// canceled.
30455func (c *RepricingrulesCreateCall) Context(ctx context.Context) *RepricingrulesCreateCall {
30456	c.ctx_ = ctx
30457	return c
30458}
30459
30460// Header returns an http.Header that can be modified by the caller to
30461// add HTTP headers to the request.
30462func (c *RepricingrulesCreateCall) Header() http.Header {
30463	if c.header_ == nil {
30464		c.header_ = make(http.Header)
30465	}
30466	return c.header_
30467}
30468
30469func (c *RepricingrulesCreateCall) doRequest(alt string) (*http.Response, error) {
30470	reqHeaders := make(http.Header)
30471	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
30472	for k, v := range c.header_ {
30473		reqHeaders[k] = v
30474	}
30475	reqHeaders.Set("User-Agent", c.s.userAgent())
30476	var body io.Reader = nil
30477	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
30478	if err != nil {
30479		return nil, err
30480	}
30481	reqHeaders.Set("Content-Type", "application/json")
30482	c.urlParams_.Set("alt", alt)
30483	c.urlParams_.Set("prettyPrint", "false")
30484	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/repricingrules")
30485	urls += "?" + c.urlParams_.Encode()
30486	req, err := http.NewRequest("POST", urls, body)
30487	if err != nil {
30488		return nil, err
30489	}
30490	req.Header = reqHeaders
30491	googleapi.Expand(req.URL, map[string]string{
30492		"merchantId": strconv.FormatInt(c.merchantId, 10),
30493	})
30494	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30495}
30496
30497// Do executes the "content.repricingrules.create" call.
30498// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
30499// status code is an error. Response headers are in either
30500// *RepricingRule.ServerResponse.Header or (if a response was returned
30501// at all) in error.(*googleapi.Error).Header. Use
30502// googleapi.IsNotModified to check whether the returned error was
30503// because http.StatusNotModified was returned.
30504func (c *RepricingrulesCreateCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
30505	gensupport.SetOptions(c.urlParams_, opts...)
30506	res, err := c.doRequest("json")
30507	if res != nil && res.StatusCode == http.StatusNotModified {
30508		if res.Body != nil {
30509			res.Body.Close()
30510		}
30511		return nil, &googleapi.Error{
30512			Code:   res.StatusCode,
30513			Header: res.Header,
30514		}
30515	}
30516	if err != nil {
30517		return nil, err
30518	}
30519	defer googleapi.CloseBody(res)
30520	if err := googleapi.CheckResponse(res); err != nil {
30521		return nil, err
30522	}
30523	ret := &RepricingRule{
30524		ServerResponse: googleapi.ServerResponse{
30525			Header:         res.Header,
30526			HTTPStatusCode: res.StatusCode,
30527		},
30528	}
30529	target := &ret
30530	if err := gensupport.DecodeResponse(target, res); err != nil {
30531		return nil, err
30532	}
30533	return ret, nil
30534	// {
30535	//   "description": "Creates a repricing rule for your Merchant Center account.",
30536	//   "flatPath": "content/v2.1/{merchantId}/repricingrules",
30537	//   "httpMethod": "POST",
30538	//   "id": "content.repricingrules.create",
30539	//   "parameterOrder": [
30540	//     "merchantId"
30541	//   ],
30542	//   "parameters": {
30543	//     "merchantId": {
30544	//       "description": "Required. The id of the merchant who owns the repricing rule.",
30545	//       "format": "int64",
30546	//       "location": "path",
30547	//       "required": true,
30548	//       "type": "string"
30549	//     },
30550	//     "ruleId": {
30551	//       "description": "Required. The id of the rule to create.",
30552	//       "location": "query",
30553	//       "type": "string"
30554	//     }
30555	//   },
30556	//   "path": "content/v2.1/{merchantId}/repricingrules",
30557	//   "request": {
30558	//     "$ref": "RepricingRule"
30559	//   },
30560	//   "response": {
30561	//     "$ref": "RepricingRule"
30562	//   },
30563	//   "scopes": [
30564	//     "https://www.googleapis.com/auth/content"
30565	//   ]
30566	// }
30567
30568}
30569
30570// method id "content.repricingrules.delete":
30571
30572type RepricingrulesDeleteCall struct {
30573	s          *APIService
30574	merchantId int64
30575	ruleId     string
30576	urlParams_ gensupport.URLParams
30577	ctx_       context.Context
30578	header_    http.Header
30579}
30580
30581// Delete: Deletes a repricing rule in your Merchant Center account.
30582func (r *RepricingrulesService) Delete(merchantId int64, ruleId string) *RepricingrulesDeleteCall {
30583	c := &RepricingrulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30584	c.merchantId = merchantId
30585	c.ruleId = ruleId
30586	return c
30587}
30588
30589// Fields allows partial responses to be retrieved. See
30590// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30591// for more information.
30592func (c *RepricingrulesDeleteCall) Fields(s ...googleapi.Field) *RepricingrulesDeleteCall {
30593	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30594	return c
30595}
30596
30597// Context sets the context to be used in this call's Do method. Any
30598// pending HTTP request will be aborted if the provided context is
30599// canceled.
30600func (c *RepricingrulesDeleteCall) Context(ctx context.Context) *RepricingrulesDeleteCall {
30601	c.ctx_ = ctx
30602	return c
30603}
30604
30605// Header returns an http.Header that can be modified by the caller to
30606// add HTTP headers to the request.
30607func (c *RepricingrulesDeleteCall) Header() http.Header {
30608	if c.header_ == nil {
30609		c.header_ = make(http.Header)
30610	}
30611	return c.header_
30612}
30613
30614func (c *RepricingrulesDeleteCall) doRequest(alt string) (*http.Response, error) {
30615	reqHeaders := make(http.Header)
30616	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
30617	for k, v := range c.header_ {
30618		reqHeaders[k] = v
30619	}
30620	reqHeaders.Set("User-Agent", c.s.userAgent())
30621	var body io.Reader = nil
30622	c.urlParams_.Set("alt", alt)
30623	c.urlParams_.Set("prettyPrint", "false")
30624	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/repricingrules/{ruleId}")
30625	urls += "?" + c.urlParams_.Encode()
30626	req, err := http.NewRequest("DELETE", urls, body)
30627	if err != nil {
30628		return nil, err
30629	}
30630	req.Header = reqHeaders
30631	googleapi.Expand(req.URL, map[string]string{
30632		"merchantId": strconv.FormatInt(c.merchantId, 10),
30633		"ruleId":     c.ruleId,
30634	})
30635	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30636}
30637
30638// Do executes the "content.repricingrules.delete" call.
30639func (c *RepricingrulesDeleteCall) Do(opts ...googleapi.CallOption) error {
30640	gensupport.SetOptions(c.urlParams_, opts...)
30641	res, err := c.doRequest("json")
30642	if err != nil {
30643		return err
30644	}
30645	defer googleapi.CloseBody(res)
30646	if err := googleapi.CheckResponse(res); err != nil {
30647		return err
30648	}
30649	return nil
30650	// {
30651	//   "description": "Deletes a repricing rule in your Merchant Center account.",
30652	//   "flatPath": "content/v2.1/{merchantId}/repricingrules/{ruleId}",
30653	//   "httpMethod": "DELETE",
30654	//   "id": "content.repricingrules.delete",
30655	//   "parameterOrder": [
30656	//     "merchantId",
30657	//     "ruleId"
30658	//   ],
30659	//   "parameters": {
30660	//     "merchantId": {
30661	//       "description": "Required. The id of the merchant who owns the repricing rule.",
30662	//       "format": "int64",
30663	//       "location": "path",
30664	//       "required": true,
30665	//       "type": "string"
30666	//     },
30667	//     "ruleId": {
30668	//       "description": "Required. The id of the rule to Delete.",
30669	//       "location": "path",
30670	//       "required": true,
30671	//       "type": "string"
30672	//     }
30673	//   },
30674	//   "path": "content/v2.1/{merchantId}/repricingrules/{ruleId}",
30675	//   "scopes": [
30676	//     "https://www.googleapis.com/auth/content"
30677	//   ]
30678	// }
30679
30680}
30681
30682// method id "content.repricingrules.get":
30683
30684type RepricingrulesGetCall struct {
30685	s            *APIService
30686	merchantId   int64
30687	ruleId       string
30688	urlParams_   gensupport.URLParams
30689	ifNoneMatch_ string
30690	ctx_         context.Context
30691	header_      http.Header
30692}
30693
30694// Get: Retrieves a repricing rule from your Merchant Center account.
30695func (r *RepricingrulesService) Get(merchantId int64, ruleId string) *RepricingrulesGetCall {
30696	c := &RepricingrulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30697	c.merchantId = merchantId
30698	c.ruleId = ruleId
30699	return c
30700}
30701
30702// Fields allows partial responses to be retrieved. See
30703// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30704// for more information.
30705func (c *RepricingrulesGetCall) Fields(s ...googleapi.Field) *RepricingrulesGetCall {
30706	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30707	return c
30708}
30709
30710// IfNoneMatch sets the optional parameter which makes the operation
30711// fail if the object's ETag matches the given value. This is useful for
30712// getting updates only after the object has changed since the last
30713// request. Use googleapi.IsNotModified to check whether the response
30714// error from Do is the result of In-None-Match.
30715func (c *RepricingrulesGetCall) IfNoneMatch(entityTag string) *RepricingrulesGetCall {
30716	c.ifNoneMatch_ = entityTag
30717	return c
30718}
30719
30720// Context sets the context to be used in this call's Do method. Any
30721// pending HTTP request will be aborted if the provided context is
30722// canceled.
30723func (c *RepricingrulesGetCall) Context(ctx context.Context) *RepricingrulesGetCall {
30724	c.ctx_ = ctx
30725	return c
30726}
30727
30728// Header returns an http.Header that can be modified by the caller to
30729// add HTTP headers to the request.
30730func (c *RepricingrulesGetCall) Header() http.Header {
30731	if c.header_ == nil {
30732		c.header_ = make(http.Header)
30733	}
30734	return c.header_
30735}
30736
30737func (c *RepricingrulesGetCall) doRequest(alt string) (*http.Response, error) {
30738	reqHeaders := make(http.Header)
30739	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
30740	for k, v := range c.header_ {
30741		reqHeaders[k] = v
30742	}
30743	reqHeaders.Set("User-Agent", c.s.userAgent())
30744	if c.ifNoneMatch_ != "" {
30745		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30746	}
30747	var body io.Reader = nil
30748	c.urlParams_.Set("alt", alt)
30749	c.urlParams_.Set("prettyPrint", "false")
30750	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/repricingrules/{ruleId}")
30751	urls += "?" + c.urlParams_.Encode()
30752	req, err := http.NewRequest("GET", urls, body)
30753	if err != nil {
30754		return nil, err
30755	}
30756	req.Header = reqHeaders
30757	googleapi.Expand(req.URL, map[string]string{
30758		"merchantId": strconv.FormatInt(c.merchantId, 10),
30759		"ruleId":     c.ruleId,
30760	})
30761	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30762}
30763
30764// Do executes the "content.repricingrules.get" call.
30765// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
30766// status code is an error. Response headers are in either
30767// *RepricingRule.ServerResponse.Header or (if a response was returned
30768// at all) in error.(*googleapi.Error).Header. Use
30769// googleapi.IsNotModified to check whether the returned error was
30770// because http.StatusNotModified was returned.
30771func (c *RepricingrulesGetCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
30772	gensupport.SetOptions(c.urlParams_, opts...)
30773	res, err := c.doRequest("json")
30774	if res != nil && res.StatusCode == http.StatusNotModified {
30775		if res.Body != nil {
30776			res.Body.Close()
30777		}
30778		return nil, &googleapi.Error{
30779			Code:   res.StatusCode,
30780			Header: res.Header,
30781		}
30782	}
30783	if err != nil {
30784		return nil, err
30785	}
30786	defer googleapi.CloseBody(res)
30787	if err := googleapi.CheckResponse(res); err != nil {
30788		return nil, err
30789	}
30790	ret := &RepricingRule{
30791		ServerResponse: googleapi.ServerResponse{
30792			Header:         res.Header,
30793			HTTPStatusCode: res.StatusCode,
30794		},
30795	}
30796	target := &ret
30797	if err := gensupport.DecodeResponse(target, res); err != nil {
30798		return nil, err
30799	}
30800	return ret, nil
30801	// {
30802	//   "description": "Retrieves a repricing rule from your Merchant Center account.",
30803	//   "flatPath": "content/v2.1/{merchantId}/repricingrules/{ruleId}",
30804	//   "httpMethod": "GET",
30805	//   "id": "content.repricingrules.get",
30806	//   "parameterOrder": [
30807	//     "merchantId",
30808	//     "ruleId"
30809	//   ],
30810	//   "parameters": {
30811	//     "merchantId": {
30812	//       "description": "Required. The id of the merchant who owns the repricing rule.",
30813	//       "format": "int64",
30814	//       "location": "path",
30815	//       "required": true,
30816	//       "type": "string"
30817	//     },
30818	//     "ruleId": {
30819	//       "description": "Required. The id of the rule to retrieve.",
30820	//       "location": "path",
30821	//       "required": true,
30822	//       "type": "string"
30823	//     }
30824	//   },
30825	//   "path": "content/v2.1/{merchantId}/repricingrules/{ruleId}",
30826	//   "response": {
30827	//     "$ref": "RepricingRule"
30828	//   },
30829	//   "scopes": [
30830	//     "https://www.googleapis.com/auth/content"
30831	//   ]
30832	// }
30833
30834}
30835
30836// method id "content.repricingrules.list":
30837
30838type RepricingrulesListCall struct {
30839	s            *APIService
30840	merchantId   int64
30841	urlParams_   gensupport.URLParams
30842	ifNoneMatch_ string
30843	ctx_         context.Context
30844	header_      http.Header
30845}
30846
30847// List: Lists the repricing rules in your Merchant Center account.
30848func (r *RepricingrulesService) List(merchantId int64) *RepricingrulesListCall {
30849	c := &RepricingrulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30850	c.merchantId = merchantId
30851	return c
30852}
30853
30854// CountryCode sets the optional parameter "countryCode": CLDR country
30855// code (e.g. "US"), used as a filter on repricing rules.
30856func (c *RepricingrulesListCall) CountryCode(countryCode string) *RepricingrulesListCall {
30857	c.urlParams_.Set("countryCode", countryCode)
30858	return c
30859}
30860
30861// LanguageCode sets the optional parameter "languageCode": The
30862// two-letter ISO 639-1 language code associated with the repricing
30863// rule, used as a filter.
30864func (c *RepricingrulesListCall) LanguageCode(languageCode string) *RepricingrulesListCall {
30865	c.urlParams_.Set("languageCode", languageCode)
30866	return c
30867}
30868
30869// PageSize sets the optional parameter "pageSize": The maximum number
30870// of repricing rules to return. The service may return fewer than this
30871// value. If unspecified, at most 50 rules will be returned. The maximum
30872// value is 1000; values above 1000 will be coerced to 1000.
30873func (c *RepricingrulesListCall) PageSize(pageSize int64) *RepricingrulesListCall {
30874	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
30875	return c
30876}
30877
30878// PageToken sets the optional parameter "pageToken": A page token,
30879// received from a previous `ListRepricingRules` call. Provide this to
30880// retrieve the subsequent page. When paginating, all other parameters
30881// provided to `ListRepricingRules` must match the call that provided
30882// the page token.
30883func (c *RepricingrulesListCall) PageToken(pageToken string) *RepricingrulesListCall {
30884	c.urlParams_.Set("pageToken", pageToken)
30885	return c
30886}
30887
30888// Fields allows partial responses to be retrieved. See
30889// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30890// for more information.
30891func (c *RepricingrulesListCall) Fields(s ...googleapi.Field) *RepricingrulesListCall {
30892	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30893	return c
30894}
30895
30896// IfNoneMatch sets the optional parameter which makes the operation
30897// fail if the object's ETag matches the given value. This is useful for
30898// getting updates only after the object has changed since the last
30899// request. Use googleapi.IsNotModified to check whether the response
30900// error from Do is the result of In-None-Match.
30901func (c *RepricingrulesListCall) IfNoneMatch(entityTag string) *RepricingrulesListCall {
30902	c.ifNoneMatch_ = entityTag
30903	return c
30904}
30905
30906// Context sets the context to be used in this call's Do method. Any
30907// pending HTTP request will be aborted if the provided context is
30908// canceled.
30909func (c *RepricingrulesListCall) Context(ctx context.Context) *RepricingrulesListCall {
30910	c.ctx_ = ctx
30911	return c
30912}
30913
30914// Header returns an http.Header that can be modified by the caller to
30915// add HTTP headers to the request.
30916func (c *RepricingrulesListCall) Header() http.Header {
30917	if c.header_ == nil {
30918		c.header_ = make(http.Header)
30919	}
30920	return c.header_
30921}
30922
30923func (c *RepricingrulesListCall) doRequest(alt string) (*http.Response, error) {
30924	reqHeaders := make(http.Header)
30925	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
30926	for k, v := range c.header_ {
30927		reqHeaders[k] = v
30928	}
30929	reqHeaders.Set("User-Agent", c.s.userAgent())
30930	if c.ifNoneMatch_ != "" {
30931		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30932	}
30933	var body io.Reader = nil
30934	c.urlParams_.Set("alt", alt)
30935	c.urlParams_.Set("prettyPrint", "false")
30936	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/repricingrules")
30937	urls += "?" + c.urlParams_.Encode()
30938	req, err := http.NewRequest("GET", urls, body)
30939	if err != nil {
30940		return nil, err
30941	}
30942	req.Header = reqHeaders
30943	googleapi.Expand(req.URL, map[string]string{
30944		"merchantId": strconv.FormatInt(c.merchantId, 10),
30945	})
30946	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30947}
30948
30949// Do executes the "content.repricingrules.list" call.
30950// Exactly one of *ListRepricingRulesResponse or error will be non-nil.
30951// Any non-2xx status code is an error. Response headers are in either
30952// *ListRepricingRulesResponse.ServerResponse.Header or (if a response
30953// was returned at all) in error.(*googleapi.Error).Header. Use
30954// googleapi.IsNotModified to check whether the returned error was
30955// because http.StatusNotModified was returned.
30956func (c *RepricingrulesListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRulesResponse, error) {
30957	gensupport.SetOptions(c.urlParams_, opts...)
30958	res, err := c.doRequest("json")
30959	if res != nil && res.StatusCode == http.StatusNotModified {
30960		if res.Body != nil {
30961			res.Body.Close()
30962		}
30963		return nil, &googleapi.Error{
30964			Code:   res.StatusCode,
30965			Header: res.Header,
30966		}
30967	}
30968	if err != nil {
30969		return nil, err
30970	}
30971	defer googleapi.CloseBody(res)
30972	if err := googleapi.CheckResponse(res); err != nil {
30973		return nil, err
30974	}
30975	ret := &ListRepricingRulesResponse{
30976		ServerResponse: googleapi.ServerResponse{
30977			Header:         res.Header,
30978			HTTPStatusCode: res.StatusCode,
30979		},
30980	}
30981	target := &ret
30982	if err := gensupport.DecodeResponse(target, res); err != nil {
30983		return nil, err
30984	}
30985	return ret, nil
30986	// {
30987	//   "description": "Lists the repricing rules in your Merchant Center account.",
30988	//   "flatPath": "content/v2.1/{merchantId}/repricingrules",
30989	//   "httpMethod": "GET",
30990	//   "id": "content.repricingrules.list",
30991	//   "parameterOrder": [
30992	//     "merchantId"
30993	//   ],
30994	//   "parameters": {
30995	//     "countryCode": {
30996	//       "description": "CLDR country code (e.g. \"US\"), used as a filter on repricing rules.",
30997	//       "location": "query",
30998	//       "type": "string"
30999	//     },
31000	//     "languageCode": {
31001	//       "description": "The two-letter ISO 639-1 language code associated with the repricing rule, used as a filter.",
31002	//       "location": "query",
31003	//       "type": "string"
31004	//     },
31005	//     "merchantId": {
31006	//       "description": "Required. The id of the merchant who owns the repricing rule.",
31007	//       "format": "int64",
31008	//       "location": "path",
31009	//       "required": true,
31010	//       "type": "string"
31011	//     },
31012	//     "pageSize": {
31013	//       "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.",
31014	//       "format": "int32",
31015	//       "location": "query",
31016	//       "type": "integer"
31017	//     },
31018	//     "pageToken": {
31019	//       "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.",
31020	//       "location": "query",
31021	//       "type": "string"
31022	//     }
31023	//   },
31024	//   "path": "content/v2.1/{merchantId}/repricingrules",
31025	//   "response": {
31026	//     "$ref": "ListRepricingRulesResponse"
31027	//   },
31028	//   "scopes": [
31029	//     "https://www.googleapis.com/auth/content"
31030	//   ]
31031	// }
31032
31033}
31034
31035// Pages invokes f for each page of results.
31036// A non-nil error returned from f will halt the iteration.
31037// The provided context supersedes any context provided to the Context method.
31038func (c *RepricingrulesListCall) Pages(ctx context.Context, f func(*ListRepricingRulesResponse) error) error {
31039	c.ctx_ = ctx
31040	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
31041	for {
31042		x, err := c.Do()
31043		if err != nil {
31044			return err
31045		}
31046		if err := f(x); err != nil {
31047			return err
31048		}
31049		if x.NextPageToken == "" {
31050			return nil
31051		}
31052		c.PageToken(x.NextPageToken)
31053	}
31054}
31055
31056// method id "content.repricingrules.patch":
31057
31058type RepricingrulesPatchCall struct {
31059	s             *APIService
31060	merchantId    int64
31061	ruleId        string
31062	repricingrule *RepricingRule
31063	urlParams_    gensupport.URLParams
31064	ctx_          context.Context
31065	header_       http.Header
31066}
31067
31068// Patch: Updates a repricing rule in your Merchant Center account. All
31069// mutable fields will be overwritten in each update request. In each
31070// update, you must provide all required mutable fields, or an error
31071// will be thrown. If you do not provide an optional field in the update
31072// request, if that field currently exists, it will be deleted from the
31073// rule.
31074func (r *RepricingrulesService) Patch(merchantId int64, ruleId string, repricingrule *RepricingRule) *RepricingrulesPatchCall {
31075	c := &RepricingrulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31076	c.merchantId = merchantId
31077	c.ruleId = ruleId
31078	c.repricingrule = repricingrule
31079	return c
31080}
31081
31082// Fields allows partial responses to be retrieved. See
31083// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31084// for more information.
31085func (c *RepricingrulesPatchCall) Fields(s ...googleapi.Field) *RepricingrulesPatchCall {
31086	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31087	return c
31088}
31089
31090// Context sets the context to be used in this call's Do method. Any
31091// pending HTTP request will be aborted if the provided context is
31092// canceled.
31093func (c *RepricingrulesPatchCall) Context(ctx context.Context) *RepricingrulesPatchCall {
31094	c.ctx_ = ctx
31095	return c
31096}
31097
31098// Header returns an http.Header that can be modified by the caller to
31099// add HTTP headers to the request.
31100func (c *RepricingrulesPatchCall) Header() http.Header {
31101	if c.header_ == nil {
31102		c.header_ = make(http.Header)
31103	}
31104	return c.header_
31105}
31106
31107func (c *RepricingrulesPatchCall) doRequest(alt string) (*http.Response, error) {
31108	reqHeaders := make(http.Header)
31109	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
31110	for k, v := range c.header_ {
31111		reqHeaders[k] = v
31112	}
31113	reqHeaders.Set("User-Agent", c.s.userAgent())
31114	var body io.Reader = nil
31115	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
31116	if err != nil {
31117		return nil, err
31118	}
31119	reqHeaders.Set("Content-Type", "application/json")
31120	c.urlParams_.Set("alt", alt)
31121	c.urlParams_.Set("prettyPrint", "false")
31122	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/repricingrules/{ruleId}")
31123	urls += "?" + c.urlParams_.Encode()
31124	req, err := http.NewRequest("PATCH", urls, body)
31125	if err != nil {
31126		return nil, err
31127	}
31128	req.Header = reqHeaders
31129	googleapi.Expand(req.URL, map[string]string{
31130		"merchantId": strconv.FormatInt(c.merchantId, 10),
31131		"ruleId":     c.ruleId,
31132	})
31133	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31134}
31135
31136// Do executes the "content.repricingrules.patch" call.
31137// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
31138// status code is an error. Response headers are in either
31139// *RepricingRule.ServerResponse.Header or (if a response was returned
31140// at all) in error.(*googleapi.Error).Header. Use
31141// googleapi.IsNotModified to check whether the returned error was
31142// because http.StatusNotModified was returned.
31143func (c *RepricingrulesPatchCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
31144	gensupport.SetOptions(c.urlParams_, opts...)
31145	res, err := c.doRequest("json")
31146	if res != nil && res.StatusCode == http.StatusNotModified {
31147		if res.Body != nil {
31148			res.Body.Close()
31149		}
31150		return nil, &googleapi.Error{
31151			Code:   res.StatusCode,
31152			Header: res.Header,
31153		}
31154	}
31155	if err != nil {
31156		return nil, err
31157	}
31158	defer googleapi.CloseBody(res)
31159	if err := googleapi.CheckResponse(res); err != nil {
31160		return nil, err
31161	}
31162	ret := &RepricingRule{
31163		ServerResponse: googleapi.ServerResponse{
31164			Header:         res.Header,
31165			HTTPStatusCode: res.StatusCode,
31166		},
31167	}
31168	target := &ret
31169	if err := gensupport.DecodeResponse(target, res); err != nil {
31170		return nil, err
31171	}
31172	return ret, nil
31173	// {
31174	//   "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.",
31175	//   "flatPath": "content/v2.1/{merchantId}/repricingrules/{ruleId}",
31176	//   "httpMethod": "PATCH",
31177	//   "id": "content.repricingrules.patch",
31178	//   "parameterOrder": [
31179	//     "merchantId",
31180	//     "ruleId"
31181	//   ],
31182	//   "parameters": {
31183	//     "merchantId": {
31184	//       "description": "Required. The id of the merchant who owns the repricing rule.",
31185	//       "format": "int64",
31186	//       "location": "path",
31187	//       "required": true,
31188	//       "type": "string"
31189	//     },
31190	//     "ruleId": {
31191	//       "description": "Required. The id of the rule to update.",
31192	//       "location": "path",
31193	//       "required": true,
31194	//       "type": "string"
31195	//     }
31196	//   },
31197	//   "path": "content/v2.1/{merchantId}/repricingrules/{ruleId}",
31198	//   "request": {
31199	//     "$ref": "RepricingRule"
31200	//   },
31201	//   "response": {
31202	//     "$ref": "RepricingRule"
31203	//   },
31204	//   "scopes": [
31205	//     "https://www.googleapis.com/auth/content"
31206	//   ]
31207	// }
31208
31209}
31210
31211// method id "content.returnaddress.custombatch":
31212
31213type ReturnaddressCustombatchCall struct {
31214	s                               *APIService
31215	returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest
31216	urlParams_                      gensupport.URLParams
31217	ctx_                            context.Context
31218	header_                         http.Header
31219}
31220
31221// Custombatch: Batches multiple return address related calls in a
31222// single request.
31223func (r *ReturnaddressService) Custombatch(returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest) *ReturnaddressCustombatchCall {
31224	c := &ReturnaddressCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31225	c.returnaddresscustombatchrequest = returnaddresscustombatchrequest
31226	return c
31227}
31228
31229// Fields allows partial responses to be retrieved. See
31230// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31231// for more information.
31232func (c *ReturnaddressCustombatchCall) Fields(s ...googleapi.Field) *ReturnaddressCustombatchCall {
31233	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31234	return c
31235}
31236
31237// Context sets the context to be used in this call's Do method. Any
31238// pending HTTP request will be aborted if the provided context is
31239// canceled.
31240func (c *ReturnaddressCustombatchCall) Context(ctx context.Context) *ReturnaddressCustombatchCall {
31241	c.ctx_ = ctx
31242	return c
31243}
31244
31245// Header returns an http.Header that can be modified by the caller to
31246// add HTTP headers to the request.
31247func (c *ReturnaddressCustombatchCall) Header() http.Header {
31248	if c.header_ == nil {
31249		c.header_ = make(http.Header)
31250	}
31251	return c.header_
31252}
31253
31254func (c *ReturnaddressCustombatchCall) doRequest(alt string) (*http.Response, error) {
31255	reqHeaders := make(http.Header)
31256	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
31257	for k, v := range c.header_ {
31258		reqHeaders[k] = v
31259	}
31260	reqHeaders.Set("User-Agent", c.s.userAgent())
31261	var body io.Reader = nil
31262	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddresscustombatchrequest)
31263	if err != nil {
31264		return nil, err
31265	}
31266	reqHeaders.Set("Content-Type", "application/json")
31267	c.urlParams_.Set("alt", alt)
31268	c.urlParams_.Set("prettyPrint", "false")
31269	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/returnaddress/batch")
31270	urls += "?" + c.urlParams_.Encode()
31271	req, err := http.NewRequest("POST", urls, body)
31272	if err != nil {
31273		return nil, err
31274	}
31275	req.Header = reqHeaders
31276	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31277}
31278
31279// Do executes the "content.returnaddress.custombatch" call.
31280// Exactly one of *ReturnaddressCustomBatchResponse or error will be
31281// non-nil. Any non-2xx status code is an error. Response headers are in
31282// either *ReturnaddressCustomBatchResponse.ServerResponse.Header or (if
31283// a response was returned at all) in error.(*googleapi.Error).Header.
31284// Use googleapi.IsNotModified to check whether the returned error was
31285// because http.StatusNotModified was returned.
31286func (c *ReturnaddressCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnaddressCustomBatchResponse, error) {
31287	gensupport.SetOptions(c.urlParams_, opts...)
31288	res, err := c.doRequest("json")
31289	if res != nil && res.StatusCode == http.StatusNotModified {
31290		if res.Body != nil {
31291			res.Body.Close()
31292		}
31293		return nil, &googleapi.Error{
31294			Code:   res.StatusCode,
31295			Header: res.Header,
31296		}
31297	}
31298	if err != nil {
31299		return nil, err
31300	}
31301	defer googleapi.CloseBody(res)
31302	if err := googleapi.CheckResponse(res); err != nil {
31303		return nil, err
31304	}
31305	ret := &ReturnaddressCustomBatchResponse{
31306		ServerResponse: googleapi.ServerResponse{
31307			Header:         res.Header,
31308			HTTPStatusCode: res.StatusCode,
31309		},
31310	}
31311	target := &ret
31312	if err := gensupport.DecodeResponse(target, res); err != nil {
31313		return nil, err
31314	}
31315	return ret, nil
31316	// {
31317	//   "description": "Batches multiple return address related calls in a single request.",
31318	//   "flatPath": "content/v2.1/returnaddress/batch",
31319	//   "httpMethod": "POST",
31320	//   "id": "content.returnaddress.custombatch",
31321	//   "parameterOrder": [],
31322	//   "parameters": {},
31323	//   "path": "content/v2.1/returnaddress/batch",
31324	//   "request": {
31325	//     "$ref": "ReturnaddressCustomBatchRequest"
31326	//   },
31327	//   "response": {
31328	//     "$ref": "ReturnaddressCustomBatchResponse"
31329	//   },
31330	//   "scopes": [
31331	//     "https://www.googleapis.com/auth/content"
31332	//   ]
31333	// }
31334
31335}
31336
31337// method id "content.returnaddress.delete":
31338
31339type ReturnaddressDeleteCall struct {
31340	s               *APIService
31341	merchantId      uint64
31342	returnAddressId string
31343	urlParams_      gensupport.URLParams
31344	ctx_            context.Context
31345	header_         http.Header
31346}
31347
31348// Delete: Deletes a return address for the given Merchant Center
31349// account.
31350func (r *ReturnaddressService) Delete(merchantId uint64, returnAddressId string) *ReturnaddressDeleteCall {
31351	c := &ReturnaddressDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31352	c.merchantId = merchantId
31353	c.returnAddressId = returnAddressId
31354	return c
31355}
31356
31357// Fields allows partial responses to be retrieved. See
31358// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31359// for more information.
31360func (c *ReturnaddressDeleteCall) Fields(s ...googleapi.Field) *ReturnaddressDeleteCall {
31361	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31362	return c
31363}
31364
31365// Context sets the context to be used in this call's Do method. Any
31366// pending HTTP request will be aborted if the provided context is
31367// canceled.
31368func (c *ReturnaddressDeleteCall) Context(ctx context.Context) *ReturnaddressDeleteCall {
31369	c.ctx_ = ctx
31370	return c
31371}
31372
31373// Header returns an http.Header that can be modified by the caller to
31374// add HTTP headers to the request.
31375func (c *ReturnaddressDeleteCall) Header() http.Header {
31376	if c.header_ == nil {
31377		c.header_ = make(http.Header)
31378	}
31379	return c.header_
31380}
31381
31382func (c *ReturnaddressDeleteCall) doRequest(alt string) (*http.Response, error) {
31383	reqHeaders := make(http.Header)
31384	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
31385	for k, v := range c.header_ {
31386		reqHeaders[k] = v
31387	}
31388	reqHeaders.Set("User-Agent", c.s.userAgent())
31389	var body io.Reader = nil
31390	c.urlParams_.Set("alt", alt)
31391	c.urlParams_.Set("prettyPrint", "false")
31392	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/returnaddress/{returnAddressId}")
31393	urls += "?" + c.urlParams_.Encode()
31394	req, err := http.NewRequest("DELETE", urls, body)
31395	if err != nil {
31396		return nil, err
31397	}
31398	req.Header = reqHeaders
31399	googleapi.Expand(req.URL, map[string]string{
31400		"merchantId":      strconv.FormatUint(c.merchantId, 10),
31401		"returnAddressId": c.returnAddressId,
31402	})
31403	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31404}
31405
31406// Do executes the "content.returnaddress.delete" call.
31407func (c *ReturnaddressDeleteCall) Do(opts ...googleapi.CallOption) error {
31408	gensupport.SetOptions(c.urlParams_, opts...)
31409	res, err := c.doRequest("json")
31410	if err != nil {
31411		return err
31412	}
31413	defer googleapi.CloseBody(res)
31414	if err := googleapi.CheckResponse(res); err != nil {
31415		return err
31416	}
31417	return nil
31418	// {
31419	//   "description": "Deletes a return address for the given Merchant Center account.",
31420	//   "flatPath": "content/v2.1/{merchantId}/returnaddress/{returnAddressId}",
31421	//   "httpMethod": "DELETE",
31422	//   "id": "content.returnaddress.delete",
31423	//   "parameterOrder": [
31424	//     "merchantId",
31425	//     "returnAddressId"
31426	//   ],
31427	//   "parameters": {
31428	//     "merchantId": {
31429	//       "description": "The Merchant Center account from which to delete the given return address.",
31430	//       "format": "uint64",
31431	//       "location": "path",
31432	//       "required": true,
31433	//       "type": "string"
31434	//     },
31435	//     "returnAddressId": {
31436	//       "description": "Return address ID generated by Google.",
31437	//       "location": "path",
31438	//       "required": true,
31439	//       "type": "string"
31440	//     }
31441	//   },
31442	//   "path": "content/v2.1/{merchantId}/returnaddress/{returnAddressId}",
31443	//   "scopes": [
31444	//     "https://www.googleapis.com/auth/content"
31445	//   ]
31446	// }
31447
31448}
31449
31450// method id "content.returnaddress.get":
31451
31452type ReturnaddressGetCall struct {
31453	s               *APIService
31454	merchantId      uint64
31455	returnAddressId string
31456	urlParams_      gensupport.URLParams
31457	ifNoneMatch_    string
31458	ctx_            context.Context
31459	header_         http.Header
31460}
31461
31462// Get: Gets a return address of the Merchant Center account.
31463func (r *ReturnaddressService) Get(merchantId uint64, returnAddressId string) *ReturnaddressGetCall {
31464	c := &ReturnaddressGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31465	c.merchantId = merchantId
31466	c.returnAddressId = returnAddressId
31467	return c
31468}
31469
31470// Fields allows partial responses to be retrieved. See
31471// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31472// for more information.
31473func (c *ReturnaddressGetCall) Fields(s ...googleapi.Field) *ReturnaddressGetCall {
31474	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31475	return c
31476}
31477
31478// IfNoneMatch sets the optional parameter which makes the operation
31479// fail if the object's ETag matches the given value. This is useful for
31480// getting updates only after the object has changed since the last
31481// request. Use googleapi.IsNotModified to check whether the response
31482// error from Do is the result of In-None-Match.
31483func (c *ReturnaddressGetCall) IfNoneMatch(entityTag string) *ReturnaddressGetCall {
31484	c.ifNoneMatch_ = entityTag
31485	return c
31486}
31487
31488// Context sets the context to be used in this call's Do method. Any
31489// pending HTTP request will be aborted if the provided context is
31490// canceled.
31491func (c *ReturnaddressGetCall) Context(ctx context.Context) *ReturnaddressGetCall {
31492	c.ctx_ = ctx
31493	return c
31494}
31495
31496// Header returns an http.Header that can be modified by the caller to
31497// add HTTP headers to the request.
31498func (c *ReturnaddressGetCall) Header() http.Header {
31499	if c.header_ == nil {
31500		c.header_ = make(http.Header)
31501	}
31502	return c.header_
31503}
31504
31505func (c *ReturnaddressGetCall) doRequest(alt string) (*http.Response, error) {
31506	reqHeaders := make(http.Header)
31507	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
31508	for k, v := range c.header_ {
31509		reqHeaders[k] = v
31510	}
31511	reqHeaders.Set("User-Agent", c.s.userAgent())
31512	if c.ifNoneMatch_ != "" {
31513		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31514	}
31515	var body io.Reader = nil
31516	c.urlParams_.Set("alt", alt)
31517	c.urlParams_.Set("prettyPrint", "false")
31518	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/returnaddress/{returnAddressId}")
31519	urls += "?" + c.urlParams_.Encode()
31520	req, err := http.NewRequest("GET", urls, body)
31521	if err != nil {
31522		return nil, err
31523	}
31524	req.Header = reqHeaders
31525	googleapi.Expand(req.URL, map[string]string{
31526		"merchantId":      strconv.FormatUint(c.merchantId, 10),
31527		"returnAddressId": c.returnAddressId,
31528	})
31529	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31530}
31531
31532// Do executes the "content.returnaddress.get" call.
31533// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
31534// status code is an error. Response headers are in either
31535// *ReturnAddress.ServerResponse.Header or (if a response was returned
31536// at all) in error.(*googleapi.Error).Header. Use
31537// googleapi.IsNotModified to check whether the returned error was
31538// because http.StatusNotModified was returned.
31539func (c *ReturnaddressGetCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
31540	gensupport.SetOptions(c.urlParams_, opts...)
31541	res, err := c.doRequest("json")
31542	if res != nil && res.StatusCode == http.StatusNotModified {
31543		if res.Body != nil {
31544			res.Body.Close()
31545		}
31546		return nil, &googleapi.Error{
31547			Code:   res.StatusCode,
31548			Header: res.Header,
31549		}
31550	}
31551	if err != nil {
31552		return nil, err
31553	}
31554	defer googleapi.CloseBody(res)
31555	if err := googleapi.CheckResponse(res); err != nil {
31556		return nil, err
31557	}
31558	ret := &ReturnAddress{
31559		ServerResponse: googleapi.ServerResponse{
31560			Header:         res.Header,
31561			HTTPStatusCode: res.StatusCode,
31562		},
31563	}
31564	target := &ret
31565	if err := gensupport.DecodeResponse(target, res); err != nil {
31566		return nil, err
31567	}
31568	return ret, nil
31569	// {
31570	//   "description": "Gets a return address of the Merchant Center account.",
31571	//   "flatPath": "content/v2.1/{merchantId}/returnaddress/{returnAddressId}",
31572	//   "httpMethod": "GET",
31573	//   "id": "content.returnaddress.get",
31574	//   "parameterOrder": [
31575	//     "merchantId",
31576	//     "returnAddressId"
31577	//   ],
31578	//   "parameters": {
31579	//     "merchantId": {
31580	//       "description": "The Merchant Center account to get a return address for.",
31581	//       "format": "uint64",
31582	//       "location": "path",
31583	//       "required": true,
31584	//       "type": "string"
31585	//     },
31586	//     "returnAddressId": {
31587	//       "description": "Return address ID generated by Google.",
31588	//       "location": "path",
31589	//       "required": true,
31590	//       "type": "string"
31591	//     }
31592	//   },
31593	//   "path": "content/v2.1/{merchantId}/returnaddress/{returnAddressId}",
31594	//   "response": {
31595	//     "$ref": "ReturnAddress"
31596	//   },
31597	//   "scopes": [
31598	//     "https://www.googleapis.com/auth/content"
31599	//   ]
31600	// }
31601
31602}
31603
31604// method id "content.returnaddress.insert":
31605
31606type ReturnaddressInsertCall struct {
31607	s             *APIService
31608	merchantId    uint64
31609	returnaddress *ReturnAddress
31610	urlParams_    gensupport.URLParams
31611	ctx_          context.Context
31612	header_       http.Header
31613}
31614
31615// Insert: Inserts a return address for the Merchant Center account.
31616func (r *ReturnaddressService) Insert(merchantId uint64, returnaddress *ReturnAddress) *ReturnaddressInsertCall {
31617	c := &ReturnaddressInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31618	c.merchantId = merchantId
31619	c.returnaddress = returnaddress
31620	return c
31621}
31622
31623// Fields allows partial responses to be retrieved. See
31624// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31625// for more information.
31626func (c *ReturnaddressInsertCall) Fields(s ...googleapi.Field) *ReturnaddressInsertCall {
31627	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31628	return c
31629}
31630
31631// Context sets the context to be used in this call's Do method. Any
31632// pending HTTP request will be aborted if the provided context is
31633// canceled.
31634func (c *ReturnaddressInsertCall) Context(ctx context.Context) *ReturnaddressInsertCall {
31635	c.ctx_ = ctx
31636	return c
31637}
31638
31639// Header returns an http.Header that can be modified by the caller to
31640// add HTTP headers to the request.
31641func (c *ReturnaddressInsertCall) Header() http.Header {
31642	if c.header_ == nil {
31643		c.header_ = make(http.Header)
31644	}
31645	return c.header_
31646}
31647
31648func (c *ReturnaddressInsertCall) doRequest(alt string) (*http.Response, error) {
31649	reqHeaders := make(http.Header)
31650	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
31651	for k, v := range c.header_ {
31652		reqHeaders[k] = v
31653	}
31654	reqHeaders.Set("User-Agent", c.s.userAgent())
31655	var body io.Reader = nil
31656	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddress)
31657	if err != nil {
31658		return nil, err
31659	}
31660	reqHeaders.Set("Content-Type", "application/json")
31661	c.urlParams_.Set("alt", alt)
31662	c.urlParams_.Set("prettyPrint", "false")
31663	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/returnaddress")
31664	urls += "?" + c.urlParams_.Encode()
31665	req, err := http.NewRequest("POST", urls, body)
31666	if err != nil {
31667		return nil, err
31668	}
31669	req.Header = reqHeaders
31670	googleapi.Expand(req.URL, map[string]string{
31671		"merchantId": strconv.FormatUint(c.merchantId, 10),
31672	})
31673	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31674}
31675
31676// Do executes the "content.returnaddress.insert" call.
31677// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
31678// status code is an error. Response headers are in either
31679// *ReturnAddress.ServerResponse.Header or (if a response was returned
31680// at all) in error.(*googleapi.Error).Header. Use
31681// googleapi.IsNotModified to check whether the returned error was
31682// because http.StatusNotModified was returned.
31683func (c *ReturnaddressInsertCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
31684	gensupport.SetOptions(c.urlParams_, opts...)
31685	res, err := c.doRequest("json")
31686	if res != nil && res.StatusCode == http.StatusNotModified {
31687		if res.Body != nil {
31688			res.Body.Close()
31689		}
31690		return nil, &googleapi.Error{
31691			Code:   res.StatusCode,
31692			Header: res.Header,
31693		}
31694	}
31695	if err != nil {
31696		return nil, err
31697	}
31698	defer googleapi.CloseBody(res)
31699	if err := googleapi.CheckResponse(res); err != nil {
31700		return nil, err
31701	}
31702	ret := &ReturnAddress{
31703		ServerResponse: googleapi.ServerResponse{
31704			Header:         res.Header,
31705			HTTPStatusCode: res.StatusCode,
31706		},
31707	}
31708	target := &ret
31709	if err := gensupport.DecodeResponse(target, res); err != nil {
31710		return nil, err
31711	}
31712	return ret, nil
31713	// {
31714	//   "description": "Inserts a return address for the Merchant Center account.",
31715	//   "flatPath": "content/v2.1/{merchantId}/returnaddress",
31716	//   "httpMethod": "POST",
31717	//   "id": "content.returnaddress.insert",
31718	//   "parameterOrder": [
31719	//     "merchantId"
31720	//   ],
31721	//   "parameters": {
31722	//     "merchantId": {
31723	//       "description": "The Merchant Center account to insert a return address for.",
31724	//       "format": "uint64",
31725	//       "location": "path",
31726	//       "required": true,
31727	//       "type": "string"
31728	//     }
31729	//   },
31730	//   "path": "content/v2.1/{merchantId}/returnaddress",
31731	//   "request": {
31732	//     "$ref": "ReturnAddress"
31733	//   },
31734	//   "response": {
31735	//     "$ref": "ReturnAddress"
31736	//   },
31737	//   "scopes": [
31738	//     "https://www.googleapis.com/auth/content"
31739	//   ]
31740	// }
31741
31742}
31743
31744// method id "content.returnaddress.list":
31745
31746type ReturnaddressListCall struct {
31747	s            *APIService
31748	merchantId   uint64
31749	urlParams_   gensupport.URLParams
31750	ifNoneMatch_ string
31751	ctx_         context.Context
31752	header_      http.Header
31753}
31754
31755// List: Lists the return addresses of the Merchant Center account.
31756func (r *ReturnaddressService) List(merchantId uint64) *ReturnaddressListCall {
31757	c := &ReturnaddressListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31758	c.merchantId = merchantId
31759	return c
31760}
31761
31762// Country sets the optional parameter "country": List only return
31763// addresses applicable to the given country of sale. When omitted, all
31764// return addresses are listed.
31765func (c *ReturnaddressListCall) Country(country string) *ReturnaddressListCall {
31766	c.urlParams_.Set("country", country)
31767	return c
31768}
31769
31770// MaxResults sets the optional parameter "maxResults": The maximum
31771// number of addresses in the response, used for paging.
31772func (c *ReturnaddressListCall) MaxResults(maxResults int64) *ReturnaddressListCall {
31773	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
31774	return c
31775}
31776
31777// PageToken sets the optional parameter "pageToken": The token returned
31778// by the previous request.
31779func (c *ReturnaddressListCall) PageToken(pageToken string) *ReturnaddressListCall {
31780	c.urlParams_.Set("pageToken", pageToken)
31781	return c
31782}
31783
31784// Fields allows partial responses to be retrieved. See
31785// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31786// for more information.
31787func (c *ReturnaddressListCall) Fields(s ...googleapi.Field) *ReturnaddressListCall {
31788	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31789	return c
31790}
31791
31792// IfNoneMatch sets the optional parameter which makes the operation
31793// fail if the object's ETag matches the given value. This is useful for
31794// getting updates only after the object has changed since the last
31795// request. Use googleapi.IsNotModified to check whether the response
31796// error from Do is the result of In-None-Match.
31797func (c *ReturnaddressListCall) IfNoneMatch(entityTag string) *ReturnaddressListCall {
31798	c.ifNoneMatch_ = entityTag
31799	return c
31800}
31801
31802// Context sets the context to be used in this call's Do method. Any
31803// pending HTTP request will be aborted if the provided context is
31804// canceled.
31805func (c *ReturnaddressListCall) Context(ctx context.Context) *ReturnaddressListCall {
31806	c.ctx_ = ctx
31807	return c
31808}
31809
31810// Header returns an http.Header that can be modified by the caller to
31811// add HTTP headers to the request.
31812func (c *ReturnaddressListCall) Header() http.Header {
31813	if c.header_ == nil {
31814		c.header_ = make(http.Header)
31815	}
31816	return c.header_
31817}
31818
31819func (c *ReturnaddressListCall) doRequest(alt string) (*http.Response, error) {
31820	reqHeaders := make(http.Header)
31821	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
31822	for k, v := range c.header_ {
31823		reqHeaders[k] = v
31824	}
31825	reqHeaders.Set("User-Agent", c.s.userAgent())
31826	if c.ifNoneMatch_ != "" {
31827		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31828	}
31829	var body io.Reader = nil
31830	c.urlParams_.Set("alt", alt)
31831	c.urlParams_.Set("prettyPrint", "false")
31832	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/returnaddress")
31833	urls += "?" + c.urlParams_.Encode()
31834	req, err := http.NewRequest("GET", urls, body)
31835	if err != nil {
31836		return nil, err
31837	}
31838	req.Header = reqHeaders
31839	googleapi.Expand(req.URL, map[string]string{
31840		"merchantId": strconv.FormatUint(c.merchantId, 10),
31841	})
31842	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31843}
31844
31845// Do executes the "content.returnaddress.list" call.
31846// Exactly one of *ReturnaddressListResponse or error will be non-nil.
31847// Any non-2xx status code is an error. Response headers are in either
31848// *ReturnaddressListResponse.ServerResponse.Header or (if a response
31849// was returned at all) in error.(*googleapi.Error).Header. Use
31850// googleapi.IsNotModified to check whether the returned error was
31851// because http.StatusNotModified was returned.
31852func (c *ReturnaddressListCall) Do(opts ...googleapi.CallOption) (*ReturnaddressListResponse, error) {
31853	gensupport.SetOptions(c.urlParams_, opts...)
31854	res, err := c.doRequest("json")
31855	if res != nil && res.StatusCode == http.StatusNotModified {
31856		if res.Body != nil {
31857			res.Body.Close()
31858		}
31859		return nil, &googleapi.Error{
31860			Code:   res.StatusCode,
31861			Header: res.Header,
31862		}
31863	}
31864	if err != nil {
31865		return nil, err
31866	}
31867	defer googleapi.CloseBody(res)
31868	if err := googleapi.CheckResponse(res); err != nil {
31869		return nil, err
31870	}
31871	ret := &ReturnaddressListResponse{
31872		ServerResponse: googleapi.ServerResponse{
31873			Header:         res.Header,
31874			HTTPStatusCode: res.StatusCode,
31875		},
31876	}
31877	target := &ret
31878	if err := gensupport.DecodeResponse(target, res); err != nil {
31879		return nil, err
31880	}
31881	return ret, nil
31882	// {
31883	//   "description": "Lists the return addresses of the Merchant Center account.",
31884	//   "flatPath": "content/v2.1/{merchantId}/returnaddress",
31885	//   "httpMethod": "GET",
31886	//   "id": "content.returnaddress.list",
31887	//   "parameterOrder": [
31888	//     "merchantId"
31889	//   ],
31890	//   "parameters": {
31891	//     "country": {
31892	//       "description": "List only return addresses applicable to the given country of sale. When omitted, all return addresses are listed.",
31893	//       "location": "query",
31894	//       "type": "string"
31895	//     },
31896	//     "maxResults": {
31897	//       "description": "The maximum number of addresses in the response, used for paging.",
31898	//       "format": "uint32",
31899	//       "location": "query",
31900	//       "type": "integer"
31901	//     },
31902	//     "merchantId": {
31903	//       "description": "The Merchant Center account to list return addresses for.",
31904	//       "format": "uint64",
31905	//       "location": "path",
31906	//       "required": true,
31907	//       "type": "string"
31908	//     },
31909	//     "pageToken": {
31910	//       "description": "The token returned by the previous request.",
31911	//       "location": "query",
31912	//       "type": "string"
31913	//     }
31914	//   },
31915	//   "path": "content/v2.1/{merchantId}/returnaddress",
31916	//   "response": {
31917	//     "$ref": "ReturnaddressListResponse"
31918	//   },
31919	//   "scopes": [
31920	//     "https://www.googleapis.com/auth/content"
31921	//   ]
31922	// }
31923
31924}
31925
31926// Pages invokes f for each page of results.
31927// A non-nil error returned from f will halt the iteration.
31928// The provided context supersedes any context provided to the Context method.
31929func (c *ReturnaddressListCall) Pages(ctx context.Context, f func(*ReturnaddressListResponse) error) error {
31930	c.ctx_ = ctx
31931	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
31932	for {
31933		x, err := c.Do()
31934		if err != nil {
31935			return err
31936		}
31937		if err := f(x); err != nil {
31938			return err
31939		}
31940		if x.NextPageToken == "" {
31941			return nil
31942		}
31943		c.PageToken(x.NextPageToken)
31944	}
31945}
31946
31947// method id "content.returnpolicy.custombatch":
31948
31949type ReturnpolicyCustombatchCall struct {
31950	s                              *APIService
31951	returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest
31952	urlParams_                     gensupport.URLParams
31953	ctx_                           context.Context
31954	header_                        http.Header
31955}
31956
31957// Custombatch: Batches multiple return policy related calls in a single
31958// request.
31959func (r *ReturnpolicyService) Custombatch(returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest) *ReturnpolicyCustombatchCall {
31960	c := &ReturnpolicyCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31961	c.returnpolicycustombatchrequest = returnpolicycustombatchrequest
31962	return c
31963}
31964
31965// Fields allows partial responses to be retrieved. See
31966// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31967// for more information.
31968func (c *ReturnpolicyCustombatchCall) Fields(s ...googleapi.Field) *ReturnpolicyCustombatchCall {
31969	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31970	return c
31971}
31972
31973// Context sets the context to be used in this call's Do method. Any
31974// pending HTTP request will be aborted if the provided context is
31975// canceled.
31976func (c *ReturnpolicyCustombatchCall) Context(ctx context.Context) *ReturnpolicyCustombatchCall {
31977	c.ctx_ = ctx
31978	return c
31979}
31980
31981// Header returns an http.Header that can be modified by the caller to
31982// add HTTP headers to the request.
31983func (c *ReturnpolicyCustombatchCall) Header() http.Header {
31984	if c.header_ == nil {
31985		c.header_ = make(http.Header)
31986	}
31987	return c.header_
31988}
31989
31990func (c *ReturnpolicyCustombatchCall) doRequest(alt string) (*http.Response, error) {
31991	reqHeaders := make(http.Header)
31992	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
31993	for k, v := range c.header_ {
31994		reqHeaders[k] = v
31995	}
31996	reqHeaders.Set("User-Agent", c.s.userAgent())
31997	var body io.Reader = nil
31998	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicycustombatchrequest)
31999	if err != nil {
32000		return nil, err
32001	}
32002	reqHeaders.Set("Content-Type", "application/json")
32003	c.urlParams_.Set("alt", alt)
32004	c.urlParams_.Set("prettyPrint", "false")
32005	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/returnpolicy/batch")
32006	urls += "?" + c.urlParams_.Encode()
32007	req, err := http.NewRequest("POST", urls, body)
32008	if err != nil {
32009		return nil, err
32010	}
32011	req.Header = reqHeaders
32012	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32013}
32014
32015// Do executes the "content.returnpolicy.custombatch" call.
32016// Exactly one of *ReturnpolicyCustomBatchResponse or error will be
32017// non-nil. Any non-2xx status code is an error. Response headers are in
32018// either *ReturnpolicyCustomBatchResponse.ServerResponse.Header or (if
32019// a response was returned at all) in error.(*googleapi.Error).Header.
32020// Use googleapi.IsNotModified to check whether the returned error was
32021// because http.StatusNotModified was returned.
32022func (c *ReturnpolicyCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyCustomBatchResponse, error) {
32023	gensupport.SetOptions(c.urlParams_, opts...)
32024	res, err := c.doRequest("json")
32025	if res != nil && res.StatusCode == http.StatusNotModified {
32026		if res.Body != nil {
32027			res.Body.Close()
32028		}
32029		return nil, &googleapi.Error{
32030			Code:   res.StatusCode,
32031			Header: res.Header,
32032		}
32033	}
32034	if err != nil {
32035		return nil, err
32036	}
32037	defer googleapi.CloseBody(res)
32038	if err := googleapi.CheckResponse(res); err != nil {
32039		return nil, err
32040	}
32041	ret := &ReturnpolicyCustomBatchResponse{
32042		ServerResponse: googleapi.ServerResponse{
32043			Header:         res.Header,
32044			HTTPStatusCode: res.StatusCode,
32045		},
32046	}
32047	target := &ret
32048	if err := gensupport.DecodeResponse(target, res); err != nil {
32049		return nil, err
32050	}
32051	return ret, nil
32052	// {
32053	//   "description": "Batches multiple return policy related calls in a single request.",
32054	//   "flatPath": "content/v2.1/returnpolicy/batch",
32055	//   "httpMethod": "POST",
32056	//   "id": "content.returnpolicy.custombatch",
32057	//   "parameterOrder": [],
32058	//   "parameters": {},
32059	//   "path": "content/v2.1/returnpolicy/batch",
32060	//   "request": {
32061	//     "$ref": "ReturnpolicyCustomBatchRequest"
32062	//   },
32063	//   "response": {
32064	//     "$ref": "ReturnpolicyCustomBatchResponse"
32065	//   },
32066	//   "scopes": [
32067	//     "https://www.googleapis.com/auth/content"
32068	//   ]
32069	// }
32070
32071}
32072
32073// method id "content.returnpolicy.delete":
32074
32075type ReturnpolicyDeleteCall struct {
32076	s              *APIService
32077	merchantId     uint64
32078	returnPolicyId string
32079	urlParams_     gensupport.URLParams
32080	ctx_           context.Context
32081	header_        http.Header
32082}
32083
32084// Delete: Deletes a return policy for the given Merchant Center
32085// account.
32086func (r *ReturnpolicyService) Delete(merchantId uint64, returnPolicyId string) *ReturnpolicyDeleteCall {
32087	c := &ReturnpolicyDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32088	c.merchantId = merchantId
32089	c.returnPolicyId = returnPolicyId
32090	return c
32091}
32092
32093// Fields allows partial responses to be retrieved. See
32094// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32095// for more information.
32096func (c *ReturnpolicyDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyDeleteCall {
32097	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32098	return c
32099}
32100
32101// Context sets the context to be used in this call's Do method. Any
32102// pending HTTP request will be aborted if the provided context is
32103// canceled.
32104func (c *ReturnpolicyDeleteCall) Context(ctx context.Context) *ReturnpolicyDeleteCall {
32105	c.ctx_ = ctx
32106	return c
32107}
32108
32109// Header returns an http.Header that can be modified by the caller to
32110// add HTTP headers to the request.
32111func (c *ReturnpolicyDeleteCall) Header() http.Header {
32112	if c.header_ == nil {
32113		c.header_ = make(http.Header)
32114	}
32115	return c.header_
32116}
32117
32118func (c *ReturnpolicyDeleteCall) doRequest(alt string) (*http.Response, error) {
32119	reqHeaders := make(http.Header)
32120	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
32121	for k, v := range c.header_ {
32122		reqHeaders[k] = v
32123	}
32124	reqHeaders.Set("User-Agent", c.s.userAgent())
32125	var body io.Reader = nil
32126	c.urlParams_.Set("alt", alt)
32127	c.urlParams_.Set("prettyPrint", "false")
32128	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/returnpolicy/{returnPolicyId}")
32129	urls += "?" + c.urlParams_.Encode()
32130	req, err := http.NewRequest("DELETE", urls, body)
32131	if err != nil {
32132		return nil, err
32133	}
32134	req.Header = reqHeaders
32135	googleapi.Expand(req.URL, map[string]string{
32136		"merchantId":     strconv.FormatUint(c.merchantId, 10),
32137		"returnPolicyId": c.returnPolicyId,
32138	})
32139	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32140}
32141
32142// Do executes the "content.returnpolicy.delete" call.
32143func (c *ReturnpolicyDeleteCall) Do(opts ...googleapi.CallOption) error {
32144	gensupport.SetOptions(c.urlParams_, opts...)
32145	res, err := c.doRequest("json")
32146	if err != nil {
32147		return err
32148	}
32149	defer googleapi.CloseBody(res)
32150	if err := googleapi.CheckResponse(res); err != nil {
32151		return err
32152	}
32153	return nil
32154	// {
32155	//   "description": "Deletes a return policy for the given Merchant Center account.",
32156	//   "flatPath": "content/v2.1/{merchantId}/returnpolicy/{returnPolicyId}",
32157	//   "httpMethod": "DELETE",
32158	//   "id": "content.returnpolicy.delete",
32159	//   "parameterOrder": [
32160	//     "merchantId",
32161	//     "returnPolicyId"
32162	//   ],
32163	//   "parameters": {
32164	//     "merchantId": {
32165	//       "description": "The Merchant Center account from which to delete the given return policy.",
32166	//       "format": "uint64",
32167	//       "location": "path",
32168	//       "required": true,
32169	//       "type": "string"
32170	//     },
32171	//     "returnPolicyId": {
32172	//       "description": "Return policy ID generated by Google.",
32173	//       "location": "path",
32174	//       "required": true,
32175	//       "type": "string"
32176	//     }
32177	//   },
32178	//   "path": "content/v2.1/{merchantId}/returnpolicy/{returnPolicyId}",
32179	//   "scopes": [
32180	//     "https://www.googleapis.com/auth/content"
32181	//   ]
32182	// }
32183
32184}
32185
32186// method id "content.returnpolicy.get":
32187
32188type ReturnpolicyGetCall struct {
32189	s              *APIService
32190	merchantId     uint64
32191	returnPolicyId string
32192	urlParams_     gensupport.URLParams
32193	ifNoneMatch_   string
32194	ctx_           context.Context
32195	header_        http.Header
32196}
32197
32198// Get: Gets a return policy of the Merchant Center account.
32199func (r *ReturnpolicyService) Get(merchantId uint64, returnPolicyId string) *ReturnpolicyGetCall {
32200	c := &ReturnpolicyGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32201	c.merchantId = merchantId
32202	c.returnPolicyId = returnPolicyId
32203	return c
32204}
32205
32206// Fields allows partial responses to be retrieved. See
32207// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32208// for more information.
32209func (c *ReturnpolicyGetCall) Fields(s ...googleapi.Field) *ReturnpolicyGetCall {
32210	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32211	return c
32212}
32213
32214// IfNoneMatch sets the optional parameter which makes the operation
32215// fail if the object's ETag matches the given value. This is useful for
32216// getting updates only after the object has changed since the last
32217// request. Use googleapi.IsNotModified to check whether the response
32218// error from Do is the result of In-None-Match.
32219func (c *ReturnpolicyGetCall) IfNoneMatch(entityTag string) *ReturnpolicyGetCall {
32220	c.ifNoneMatch_ = entityTag
32221	return c
32222}
32223
32224// Context sets the context to be used in this call's Do method. Any
32225// pending HTTP request will be aborted if the provided context is
32226// canceled.
32227func (c *ReturnpolicyGetCall) Context(ctx context.Context) *ReturnpolicyGetCall {
32228	c.ctx_ = ctx
32229	return c
32230}
32231
32232// Header returns an http.Header that can be modified by the caller to
32233// add HTTP headers to the request.
32234func (c *ReturnpolicyGetCall) Header() http.Header {
32235	if c.header_ == nil {
32236		c.header_ = make(http.Header)
32237	}
32238	return c.header_
32239}
32240
32241func (c *ReturnpolicyGetCall) doRequest(alt string) (*http.Response, error) {
32242	reqHeaders := make(http.Header)
32243	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
32244	for k, v := range c.header_ {
32245		reqHeaders[k] = v
32246	}
32247	reqHeaders.Set("User-Agent", c.s.userAgent())
32248	if c.ifNoneMatch_ != "" {
32249		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32250	}
32251	var body io.Reader = nil
32252	c.urlParams_.Set("alt", alt)
32253	c.urlParams_.Set("prettyPrint", "false")
32254	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/returnpolicy/{returnPolicyId}")
32255	urls += "?" + c.urlParams_.Encode()
32256	req, err := http.NewRequest("GET", urls, body)
32257	if err != nil {
32258		return nil, err
32259	}
32260	req.Header = reqHeaders
32261	googleapi.Expand(req.URL, map[string]string{
32262		"merchantId":     strconv.FormatUint(c.merchantId, 10),
32263		"returnPolicyId": c.returnPolicyId,
32264	})
32265	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32266}
32267
32268// Do executes the "content.returnpolicy.get" call.
32269// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
32270// status code is an error. Response headers are in either
32271// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
32272// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
32273// to check whether the returned error was because
32274// http.StatusNotModified was returned.
32275func (c *ReturnpolicyGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
32276	gensupport.SetOptions(c.urlParams_, opts...)
32277	res, err := c.doRequest("json")
32278	if res != nil && res.StatusCode == http.StatusNotModified {
32279		if res.Body != nil {
32280			res.Body.Close()
32281		}
32282		return nil, &googleapi.Error{
32283			Code:   res.StatusCode,
32284			Header: res.Header,
32285		}
32286	}
32287	if err != nil {
32288		return nil, err
32289	}
32290	defer googleapi.CloseBody(res)
32291	if err := googleapi.CheckResponse(res); err != nil {
32292		return nil, err
32293	}
32294	ret := &ReturnPolicy{
32295		ServerResponse: googleapi.ServerResponse{
32296			Header:         res.Header,
32297			HTTPStatusCode: res.StatusCode,
32298		},
32299	}
32300	target := &ret
32301	if err := gensupport.DecodeResponse(target, res); err != nil {
32302		return nil, err
32303	}
32304	return ret, nil
32305	// {
32306	//   "description": "Gets a return policy of the Merchant Center account.",
32307	//   "flatPath": "content/v2.1/{merchantId}/returnpolicy/{returnPolicyId}",
32308	//   "httpMethod": "GET",
32309	//   "id": "content.returnpolicy.get",
32310	//   "parameterOrder": [
32311	//     "merchantId",
32312	//     "returnPolicyId"
32313	//   ],
32314	//   "parameters": {
32315	//     "merchantId": {
32316	//       "description": "The Merchant Center account to get a return policy for.",
32317	//       "format": "uint64",
32318	//       "location": "path",
32319	//       "required": true,
32320	//       "type": "string"
32321	//     },
32322	//     "returnPolicyId": {
32323	//       "description": "Return policy ID generated by Google.",
32324	//       "location": "path",
32325	//       "required": true,
32326	//       "type": "string"
32327	//     }
32328	//   },
32329	//   "path": "content/v2.1/{merchantId}/returnpolicy/{returnPolicyId}",
32330	//   "response": {
32331	//     "$ref": "ReturnPolicy"
32332	//   },
32333	//   "scopes": [
32334	//     "https://www.googleapis.com/auth/content"
32335	//   ]
32336	// }
32337
32338}
32339
32340// method id "content.returnpolicy.insert":
32341
32342type ReturnpolicyInsertCall struct {
32343	s            *APIService
32344	merchantId   uint64
32345	returnpolicy *ReturnPolicy
32346	urlParams_   gensupport.URLParams
32347	ctx_         context.Context
32348	header_      http.Header
32349}
32350
32351// Insert: Inserts a return policy for the Merchant Center account.
32352func (r *ReturnpolicyService) Insert(merchantId uint64, returnpolicy *ReturnPolicy) *ReturnpolicyInsertCall {
32353	c := &ReturnpolicyInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32354	c.merchantId = merchantId
32355	c.returnpolicy = returnpolicy
32356	return c
32357}
32358
32359// Fields allows partial responses to be retrieved. See
32360// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32361// for more information.
32362func (c *ReturnpolicyInsertCall) Fields(s ...googleapi.Field) *ReturnpolicyInsertCall {
32363	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32364	return c
32365}
32366
32367// Context sets the context to be used in this call's Do method. Any
32368// pending HTTP request will be aborted if the provided context is
32369// canceled.
32370func (c *ReturnpolicyInsertCall) Context(ctx context.Context) *ReturnpolicyInsertCall {
32371	c.ctx_ = ctx
32372	return c
32373}
32374
32375// Header returns an http.Header that can be modified by the caller to
32376// add HTTP headers to the request.
32377func (c *ReturnpolicyInsertCall) Header() http.Header {
32378	if c.header_ == nil {
32379		c.header_ = make(http.Header)
32380	}
32381	return c.header_
32382}
32383
32384func (c *ReturnpolicyInsertCall) doRequest(alt string) (*http.Response, error) {
32385	reqHeaders := make(http.Header)
32386	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
32387	for k, v := range c.header_ {
32388		reqHeaders[k] = v
32389	}
32390	reqHeaders.Set("User-Agent", c.s.userAgent())
32391	var body io.Reader = nil
32392	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicy)
32393	if err != nil {
32394		return nil, err
32395	}
32396	reqHeaders.Set("Content-Type", "application/json")
32397	c.urlParams_.Set("alt", alt)
32398	c.urlParams_.Set("prettyPrint", "false")
32399	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/returnpolicy")
32400	urls += "?" + c.urlParams_.Encode()
32401	req, err := http.NewRequest("POST", urls, body)
32402	if err != nil {
32403		return nil, err
32404	}
32405	req.Header = reqHeaders
32406	googleapi.Expand(req.URL, map[string]string{
32407		"merchantId": strconv.FormatUint(c.merchantId, 10),
32408	})
32409	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32410}
32411
32412// Do executes the "content.returnpolicy.insert" call.
32413// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
32414// status code is an error. Response headers are in either
32415// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
32416// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
32417// to check whether the returned error was because
32418// http.StatusNotModified was returned.
32419func (c *ReturnpolicyInsertCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
32420	gensupport.SetOptions(c.urlParams_, opts...)
32421	res, err := c.doRequest("json")
32422	if res != nil && res.StatusCode == http.StatusNotModified {
32423		if res.Body != nil {
32424			res.Body.Close()
32425		}
32426		return nil, &googleapi.Error{
32427			Code:   res.StatusCode,
32428			Header: res.Header,
32429		}
32430	}
32431	if err != nil {
32432		return nil, err
32433	}
32434	defer googleapi.CloseBody(res)
32435	if err := googleapi.CheckResponse(res); err != nil {
32436		return nil, err
32437	}
32438	ret := &ReturnPolicy{
32439		ServerResponse: googleapi.ServerResponse{
32440			Header:         res.Header,
32441			HTTPStatusCode: res.StatusCode,
32442		},
32443	}
32444	target := &ret
32445	if err := gensupport.DecodeResponse(target, res); err != nil {
32446		return nil, err
32447	}
32448	return ret, nil
32449	// {
32450	//   "description": "Inserts a return policy for the Merchant Center account.",
32451	//   "flatPath": "content/v2.1/{merchantId}/returnpolicy",
32452	//   "httpMethod": "POST",
32453	//   "id": "content.returnpolicy.insert",
32454	//   "parameterOrder": [
32455	//     "merchantId"
32456	//   ],
32457	//   "parameters": {
32458	//     "merchantId": {
32459	//       "description": "The Merchant Center account to insert a return policy for.",
32460	//       "format": "uint64",
32461	//       "location": "path",
32462	//       "required": true,
32463	//       "type": "string"
32464	//     }
32465	//   },
32466	//   "path": "content/v2.1/{merchantId}/returnpolicy",
32467	//   "request": {
32468	//     "$ref": "ReturnPolicy"
32469	//   },
32470	//   "response": {
32471	//     "$ref": "ReturnPolicy"
32472	//   },
32473	//   "scopes": [
32474	//     "https://www.googleapis.com/auth/content"
32475	//   ]
32476	// }
32477
32478}
32479
32480// method id "content.returnpolicy.list":
32481
32482type ReturnpolicyListCall struct {
32483	s            *APIService
32484	merchantId   uint64
32485	urlParams_   gensupport.URLParams
32486	ifNoneMatch_ string
32487	ctx_         context.Context
32488	header_      http.Header
32489}
32490
32491// List: Lists the return policies of the Merchant Center account.
32492func (r *ReturnpolicyService) List(merchantId uint64) *ReturnpolicyListCall {
32493	c := &ReturnpolicyListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32494	c.merchantId = merchantId
32495	return c
32496}
32497
32498// Fields allows partial responses to be retrieved. See
32499// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32500// for more information.
32501func (c *ReturnpolicyListCall) Fields(s ...googleapi.Field) *ReturnpolicyListCall {
32502	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32503	return c
32504}
32505
32506// IfNoneMatch sets the optional parameter which makes the operation
32507// fail if the object's ETag matches the given value. This is useful for
32508// getting updates only after the object has changed since the last
32509// request. Use googleapi.IsNotModified to check whether the response
32510// error from Do is the result of In-None-Match.
32511func (c *ReturnpolicyListCall) IfNoneMatch(entityTag string) *ReturnpolicyListCall {
32512	c.ifNoneMatch_ = entityTag
32513	return c
32514}
32515
32516// Context sets the context to be used in this call's Do method. Any
32517// pending HTTP request will be aborted if the provided context is
32518// canceled.
32519func (c *ReturnpolicyListCall) Context(ctx context.Context) *ReturnpolicyListCall {
32520	c.ctx_ = ctx
32521	return c
32522}
32523
32524// Header returns an http.Header that can be modified by the caller to
32525// add HTTP headers to the request.
32526func (c *ReturnpolicyListCall) Header() http.Header {
32527	if c.header_ == nil {
32528		c.header_ = make(http.Header)
32529	}
32530	return c.header_
32531}
32532
32533func (c *ReturnpolicyListCall) doRequest(alt string) (*http.Response, error) {
32534	reqHeaders := make(http.Header)
32535	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
32536	for k, v := range c.header_ {
32537		reqHeaders[k] = v
32538	}
32539	reqHeaders.Set("User-Agent", c.s.userAgent())
32540	if c.ifNoneMatch_ != "" {
32541		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32542	}
32543	var body io.Reader = nil
32544	c.urlParams_.Set("alt", alt)
32545	c.urlParams_.Set("prettyPrint", "false")
32546	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/returnpolicy")
32547	urls += "?" + c.urlParams_.Encode()
32548	req, err := http.NewRequest("GET", urls, body)
32549	if err != nil {
32550		return nil, err
32551	}
32552	req.Header = reqHeaders
32553	googleapi.Expand(req.URL, map[string]string{
32554		"merchantId": strconv.FormatUint(c.merchantId, 10),
32555	})
32556	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32557}
32558
32559// Do executes the "content.returnpolicy.list" call.
32560// Exactly one of *ReturnpolicyListResponse or error will be non-nil.
32561// Any non-2xx status code is an error. Response headers are in either
32562// *ReturnpolicyListResponse.ServerResponse.Header or (if a response was
32563// returned at all) in error.(*googleapi.Error).Header. Use
32564// googleapi.IsNotModified to check whether the returned error was
32565// because http.StatusNotModified was returned.
32566func (c *ReturnpolicyListCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyListResponse, error) {
32567	gensupport.SetOptions(c.urlParams_, opts...)
32568	res, err := c.doRequest("json")
32569	if res != nil && res.StatusCode == http.StatusNotModified {
32570		if res.Body != nil {
32571			res.Body.Close()
32572		}
32573		return nil, &googleapi.Error{
32574			Code:   res.StatusCode,
32575			Header: res.Header,
32576		}
32577	}
32578	if err != nil {
32579		return nil, err
32580	}
32581	defer googleapi.CloseBody(res)
32582	if err := googleapi.CheckResponse(res); err != nil {
32583		return nil, err
32584	}
32585	ret := &ReturnpolicyListResponse{
32586		ServerResponse: googleapi.ServerResponse{
32587			Header:         res.Header,
32588			HTTPStatusCode: res.StatusCode,
32589		},
32590	}
32591	target := &ret
32592	if err := gensupport.DecodeResponse(target, res); err != nil {
32593		return nil, err
32594	}
32595	return ret, nil
32596	// {
32597	//   "description": "Lists the return policies of the Merchant Center account.",
32598	//   "flatPath": "content/v2.1/{merchantId}/returnpolicy",
32599	//   "httpMethod": "GET",
32600	//   "id": "content.returnpolicy.list",
32601	//   "parameterOrder": [
32602	//     "merchantId"
32603	//   ],
32604	//   "parameters": {
32605	//     "merchantId": {
32606	//       "description": "The Merchant Center account to list return policies for.",
32607	//       "format": "uint64",
32608	//       "location": "path",
32609	//       "required": true,
32610	//       "type": "string"
32611	//     }
32612	//   },
32613	//   "path": "content/v2.1/{merchantId}/returnpolicy",
32614	//   "response": {
32615	//     "$ref": "ReturnpolicyListResponse"
32616	//   },
32617	//   "scopes": [
32618	//     "https://www.googleapis.com/auth/content"
32619	//   ]
32620	// }
32621
32622}
32623
32624// method id "content.settlementreports.get":
32625
32626type SettlementreportsGetCall struct {
32627	s            *APIService
32628	merchantId   uint64
32629	settlementId string
32630	urlParams_   gensupport.URLParams
32631	ifNoneMatch_ string
32632	ctx_         context.Context
32633	header_      http.Header
32634}
32635
32636// Get: Retrieves a settlement report from your Merchant Center account.
32637func (r *SettlementreportsService) Get(merchantId uint64, settlementId string) *SettlementreportsGetCall {
32638	c := &SettlementreportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32639	c.merchantId = merchantId
32640	c.settlementId = settlementId
32641	return c
32642}
32643
32644// Fields allows partial responses to be retrieved. See
32645// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32646// for more information.
32647func (c *SettlementreportsGetCall) Fields(s ...googleapi.Field) *SettlementreportsGetCall {
32648	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32649	return c
32650}
32651
32652// IfNoneMatch sets the optional parameter which makes the operation
32653// fail if the object's ETag matches the given value. This is useful for
32654// getting updates only after the object has changed since the last
32655// request. Use googleapi.IsNotModified to check whether the response
32656// error from Do is the result of In-None-Match.
32657func (c *SettlementreportsGetCall) IfNoneMatch(entityTag string) *SettlementreportsGetCall {
32658	c.ifNoneMatch_ = entityTag
32659	return c
32660}
32661
32662// Context sets the context to be used in this call's Do method. Any
32663// pending HTTP request will be aborted if the provided context is
32664// canceled.
32665func (c *SettlementreportsGetCall) Context(ctx context.Context) *SettlementreportsGetCall {
32666	c.ctx_ = ctx
32667	return c
32668}
32669
32670// Header returns an http.Header that can be modified by the caller to
32671// add HTTP headers to the request.
32672func (c *SettlementreportsGetCall) Header() http.Header {
32673	if c.header_ == nil {
32674		c.header_ = make(http.Header)
32675	}
32676	return c.header_
32677}
32678
32679func (c *SettlementreportsGetCall) doRequest(alt string) (*http.Response, error) {
32680	reqHeaders := make(http.Header)
32681	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
32682	for k, v := range c.header_ {
32683		reqHeaders[k] = v
32684	}
32685	reqHeaders.Set("User-Agent", c.s.userAgent())
32686	if c.ifNoneMatch_ != "" {
32687		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32688	}
32689	var body io.Reader = nil
32690	c.urlParams_.Set("alt", alt)
32691	c.urlParams_.Set("prettyPrint", "false")
32692	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/settlementreports/{settlementId}")
32693	urls += "?" + c.urlParams_.Encode()
32694	req, err := http.NewRequest("GET", urls, body)
32695	if err != nil {
32696		return nil, err
32697	}
32698	req.Header = reqHeaders
32699	googleapi.Expand(req.URL, map[string]string{
32700		"merchantId":   strconv.FormatUint(c.merchantId, 10),
32701		"settlementId": c.settlementId,
32702	})
32703	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32704}
32705
32706// Do executes the "content.settlementreports.get" call.
32707// Exactly one of *SettlementReport or error will be non-nil. Any
32708// non-2xx status code is an error. Response headers are in either
32709// *SettlementReport.ServerResponse.Header or (if a response was
32710// returned at all) in error.(*googleapi.Error).Header. Use
32711// googleapi.IsNotModified to check whether the returned error was
32712// because http.StatusNotModified was returned.
32713func (c *SettlementreportsGetCall) Do(opts ...googleapi.CallOption) (*SettlementReport, error) {
32714	gensupport.SetOptions(c.urlParams_, opts...)
32715	res, err := c.doRequest("json")
32716	if res != nil && res.StatusCode == http.StatusNotModified {
32717		if res.Body != nil {
32718			res.Body.Close()
32719		}
32720		return nil, &googleapi.Error{
32721			Code:   res.StatusCode,
32722			Header: res.Header,
32723		}
32724	}
32725	if err != nil {
32726		return nil, err
32727	}
32728	defer googleapi.CloseBody(res)
32729	if err := googleapi.CheckResponse(res); err != nil {
32730		return nil, err
32731	}
32732	ret := &SettlementReport{
32733		ServerResponse: googleapi.ServerResponse{
32734			Header:         res.Header,
32735			HTTPStatusCode: res.StatusCode,
32736		},
32737	}
32738	target := &ret
32739	if err := gensupport.DecodeResponse(target, res); err != nil {
32740		return nil, err
32741	}
32742	return ret, nil
32743	// {
32744	//   "description": "Retrieves a settlement report from your Merchant Center account.",
32745	//   "flatPath": "content/v2.1/{merchantId}/settlementreports/{settlementId}",
32746	//   "httpMethod": "GET",
32747	//   "id": "content.settlementreports.get",
32748	//   "parameterOrder": [
32749	//     "merchantId",
32750	//     "settlementId"
32751	//   ],
32752	//   "parameters": {
32753	//     "merchantId": {
32754	//       "description": "The Merchant Center account of the settlement report.",
32755	//       "format": "uint64",
32756	//       "location": "path",
32757	//       "required": true,
32758	//       "type": "string"
32759	//     },
32760	//     "settlementId": {
32761	//       "description": "The Google-provided ID of the settlement.",
32762	//       "location": "path",
32763	//       "required": true,
32764	//       "type": "string"
32765	//     }
32766	//   },
32767	//   "path": "content/v2.1/{merchantId}/settlementreports/{settlementId}",
32768	//   "response": {
32769	//     "$ref": "SettlementReport"
32770	//   },
32771	//   "scopes": [
32772	//     "https://www.googleapis.com/auth/content"
32773	//   ]
32774	// }
32775
32776}
32777
32778// method id "content.settlementreports.list":
32779
32780type SettlementreportsListCall struct {
32781	s            *APIService
32782	merchantId   uint64
32783	urlParams_   gensupport.URLParams
32784	ifNoneMatch_ string
32785	ctx_         context.Context
32786	header_      http.Header
32787}
32788
32789// List: Retrieves a list of settlement reports from your Merchant
32790// Center account.
32791func (r *SettlementreportsService) List(merchantId uint64) *SettlementreportsListCall {
32792	c := &SettlementreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32793	c.merchantId = merchantId
32794	return c
32795}
32796
32797// MaxResults sets the optional parameter "maxResults": The maximum
32798// number of settlements to return in the response, used for paging. The
32799// default value is 200 returns per page, and the maximum allowed value
32800// is 5000 returns per page.
32801func (c *SettlementreportsListCall) MaxResults(maxResults int64) *SettlementreportsListCall {
32802	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
32803	return c
32804}
32805
32806// PageToken sets the optional parameter "pageToken": The token returned
32807// by the previous request.
32808func (c *SettlementreportsListCall) PageToken(pageToken string) *SettlementreportsListCall {
32809	c.urlParams_.Set("pageToken", pageToken)
32810	return c
32811}
32812
32813// TransferEndDate sets the optional parameter "transferEndDate":
32814// Obtains settlements which have transactions before this date
32815// (inclusively), in ISO 8601 format.
32816func (c *SettlementreportsListCall) TransferEndDate(transferEndDate string) *SettlementreportsListCall {
32817	c.urlParams_.Set("transferEndDate", transferEndDate)
32818	return c
32819}
32820
32821// TransferStartDate sets the optional parameter "transferStartDate":
32822// Obtains settlements which have transactions after this date
32823// (inclusively), in ISO 8601 format.
32824func (c *SettlementreportsListCall) TransferStartDate(transferStartDate string) *SettlementreportsListCall {
32825	c.urlParams_.Set("transferStartDate", transferStartDate)
32826	return c
32827}
32828
32829// Fields allows partial responses to be retrieved. See
32830// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32831// for more information.
32832func (c *SettlementreportsListCall) Fields(s ...googleapi.Field) *SettlementreportsListCall {
32833	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32834	return c
32835}
32836
32837// IfNoneMatch sets the optional parameter which makes the operation
32838// fail if the object's ETag matches the given value. This is useful for
32839// getting updates only after the object has changed since the last
32840// request. Use googleapi.IsNotModified to check whether the response
32841// error from Do is the result of In-None-Match.
32842func (c *SettlementreportsListCall) IfNoneMatch(entityTag string) *SettlementreportsListCall {
32843	c.ifNoneMatch_ = entityTag
32844	return c
32845}
32846
32847// Context sets the context to be used in this call's Do method. Any
32848// pending HTTP request will be aborted if the provided context is
32849// canceled.
32850func (c *SettlementreportsListCall) Context(ctx context.Context) *SettlementreportsListCall {
32851	c.ctx_ = ctx
32852	return c
32853}
32854
32855// Header returns an http.Header that can be modified by the caller to
32856// add HTTP headers to the request.
32857func (c *SettlementreportsListCall) Header() http.Header {
32858	if c.header_ == nil {
32859		c.header_ = make(http.Header)
32860	}
32861	return c.header_
32862}
32863
32864func (c *SettlementreportsListCall) doRequest(alt string) (*http.Response, error) {
32865	reqHeaders := make(http.Header)
32866	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
32867	for k, v := range c.header_ {
32868		reqHeaders[k] = v
32869	}
32870	reqHeaders.Set("User-Agent", c.s.userAgent())
32871	if c.ifNoneMatch_ != "" {
32872		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32873	}
32874	var body io.Reader = nil
32875	c.urlParams_.Set("alt", alt)
32876	c.urlParams_.Set("prettyPrint", "false")
32877	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/settlementreports")
32878	urls += "?" + c.urlParams_.Encode()
32879	req, err := http.NewRequest("GET", urls, body)
32880	if err != nil {
32881		return nil, err
32882	}
32883	req.Header = reqHeaders
32884	googleapi.Expand(req.URL, map[string]string{
32885		"merchantId": strconv.FormatUint(c.merchantId, 10),
32886	})
32887	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32888}
32889
32890// Do executes the "content.settlementreports.list" call.
32891// Exactly one of *SettlementreportsListResponse or error will be
32892// non-nil. Any non-2xx status code is an error. Response headers are in
32893// either *SettlementreportsListResponse.ServerResponse.Header or (if a
32894// response was returned at all) in error.(*googleapi.Error).Header. Use
32895// googleapi.IsNotModified to check whether the returned error was
32896// because http.StatusNotModified was returned.
32897func (c *SettlementreportsListCall) Do(opts ...googleapi.CallOption) (*SettlementreportsListResponse, error) {
32898	gensupport.SetOptions(c.urlParams_, opts...)
32899	res, err := c.doRequest("json")
32900	if res != nil && res.StatusCode == http.StatusNotModified {
32901		if res.Body != nil {
32902			res.Body.Close()
32903		}
32904		return nil, &googleapi.Error{
32905			Code:   res.StatusCode,
32906			Header: res.Header,
32907		}
32908	}
32909	if err != nil {
32910		return nil, err
32911	}
32912	defer googleapi.CloseBody(res)
32913	if err := googleapi.CheckResponse(res); err != nil {
32914		return nil, err
32915	}
32916	ret := &SettlementreportsListResponse{
32917		ServerResponse: googleapi.ServerResponse{
32918			Header:         res.Header,
32919			HTTPStatusCode: res.StatusCode,
32920		},
32921	}
32922	target := &ret
32923	if err := gensupport.DecodeResponse(target, res); err != nil {
32924		return nil, err
32925	}
32926	return ret, nil
32927	// {
32928	//   "description": "Retrieves a list of settlement reports from your Merchant Center account.",
32929	//   "flatPath": "content/v2.1/{merchantId}/settlementreports",
32930	//   "httpMethod": "GET",
32931	//   "id": "content.settlementreports.list",
32932	//   "parameterOrder": [
32933	//     "merchantId"
32934	//   ],
32935	//   "parameters": {
32936	//     "maxResults": {
32937	//       "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.",
32938	//       "format": "uint32",
32939	//       "location": "query",
32940	//       "type": "integer"
32941	//     },
32942	//     "merchantId": {
32943	//       "description": "The Merchant Center account to list settlements for.",
32944	//       "format": "uint64",
32945	//       "location": "path",
32946	//       "required": true,
32947	//       "type": "string"
32948	//     },
32949	//     "pageToken": {
32950	//       "description": "The token returned by the previous request.",
32951	//       "location": "query",
32952	//       "type": "string"
32953	//     },
32954	//     "transferEndDate": {
32955	//       "description": "Obtains settlements which have transactions before this date (inclusively), in ISO 8601 format.",
32956	//       "location": "query",
32957	//       "type": "string"
32958	//     },
32959	//     "transferStartDate": {
32960	//       "description": "Obtains settlements which have transactions after this date (inclusively), in ISO 8601 format.",
32961	//       "location": "query",
32962	//       "type": "string"
32963	//     }
32964	//   },
32965	//   "path": "content/v2.1/{merchantId}/settlementreports",
32966	//   "response": {
32967	//     "$ref": "SettlementreportsListResponse"
32968	//   },
32969	//   "scopes": [
32970	//     "https://www.googleapis.com/auth/content"
32971	//   ]
32972	// }
32973
32974}
32975
32976// Pages invokes f for each page of results.
32977// A non-nil error returned from f will halt the iteration.
32978// The provided context supersedes any context provided to the Context method.
32979func (c *SettlementreportsListCall) Pages(ctx context.Context, f func(*SettlementreportsListResponse) error) error {
32980	c.ctx_ = ctx
32981	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32982	for {
32983		x, err := c.Do()
32984		if err != nil {
32985			return err
32986		}
32987		if err := f(x); err != nil {
32988			return err
32989		}
32990		if x.NextPageToken == "" {
32991			return nil
32992		}
32993		c.PageToken(x.NextPageToken)
32994	}
32995}
32996
32997// method id "content.settlementtransactions.list":
32998
32999type SettlementtransactionsListCall struct {
33000	s            *APIService
33001	merchantId   uint64
33002	settlementId string
33003	urlParams_   gensupport.URLParams
33004	ifNoneMatch_ string
33005	ctx_         context.Context
33006	header_      http.Header
33007}
33008
33009// List: Retrieves a list of transactions for the settlement.
33010func (r *SettlementtransactionsService) List(merchantId uint64, settlementId string) *SettlementtransactionsListCall {
33011	c := &SettlementtransactionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33012	c.merchantId = merchantId
33013	c.settlementId = settlementId
33014	return c
33015}
33016
33017// MaxResults sets the optional parameter "maxResults": The maximum
33018// number of transactions to return in the response, used for paging.
33019// The default value is 200 transactions per page, and the maximum
33020// allowed value is 5000 transactions per page.
33021func (c *SettlementtransactionsListCall) MaxResults(maxResults int64) *SettlementtransactionsListCall {
33022	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
33023	return c
33024}
33025
33026// PageToken sets the optional parameter "pageToken": The token returned
33027// by the previous request.
33028func (c *SettlementtransactionsListCall) PageToken(pageToken string) *SettlementtransactionsListCall {
33029	c.urlParams_.Set("pageToken", pageToken)
33030	return c
33031}
33032
33033// TransactionIds sets the optional parameter "transactionIds": The list
33034// of transactions to return. If not set, all transactions will be
33035// returned.
33036func (c *SettlementtransactionsListCall) TransactionIds(transactionIds ...string) *SettlementtransactionsListCall {
33037	c.urlParams_.SetMulti("transactionIds", append([]string{}, transactionIds...))
33038	return c
33039}
33040
33041// Fields allows partial responses to be retrieved. See
33042// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33043// for more information.
33044func (c *SettlementtransactionsListCall) Fields(s ...googleapi.Field) *SettlementtransactionsListCall {
33045	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33046	return c
33047}
33048
33049// IfNoneMatch sets the optional parameter which makes the operation
33050// fail if the object's ETag matches the given value. This is useful for
33051// getting updates only after the object has changed since the last
33052// request. Use googleapi.IsNotModified to check whether the response
33053// error from Do is the result of In-None-Match.
33054func (c *SettlementtransactionsListCall) IfNoneMatch(entityTag string) *SettlementtransactionsListCall {
33055	c.ifNoneMatch_ = entityTag
33056	return c
33057}
33058
33059// Context sets the context to be used in this call's Do method. Any
33060// pending HTTP request will be aborted if the provided context is
33061// canceled.
33062func (c *SettlementtransactionsListCall) Context(ctx context.Context) *SettlementtransactionsListCall {
33063	c.ctx_ = ctx
33064	return c
33065}
33066
33067// Header returns an http.Header that can be modified by the caller to
33068// add HTTP headers to the request.
33069func (c *SettlementtransactionsListCall) Header() http.Header {
33070	if c.header_ == nil {
33071		c.header_ = make(http.Header)
33072	}
33073	return c.header_
33074}
33075
33076func (c *SettlementtransactionsListCall) doRequest(alt string) (*http.Response, error) {
33077	reqHeaders := make(http.Header)
33078	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
33079	for k, v := range c.header_ {
33080		reqHeaders[k] = v
33081	}
33082	reqHeaders.Set("User-Agent", c.s.userAgent())
33083	if c.ifNoneMatch_ != "" {
33084		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33085	}
33086	var body io.Reader = nil
33087	c.urlParams_.Set("alt", alt)
33088	c.urlParams_.Set("prettyPrint", "false")
33089	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/settlementreports/{settlementId}/transactions")
33090	urls += "?" + c.urlParams_.Encode()
33091	req, err := http.NewRequest("GET", urls, body)
33092	if err != nil {
33093		return nil, err
33094	}
33095	req.Header = reqHeaders
33096	googleapi.Expand(req.URL, map[string]string{
33097		"merchantId":   strconv.FormatUint(c.merchantId, 10),
33098		"settlementId": c.settlementId,
33099	})
33100	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33101}
33102
33103// Do executes the "content.settlementtransactions.list" call.
33104// Exactly one of *SettlementtransactionsListResponse or error will be
33105// non-nil. Any non-2xx status code is an error. Response headers are in
33106// either *SettlementtransactionsListResponse.ServerResponse.Header or
33107// (if a response was returned at all) in
33108// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33109// whether the returned error was because http.StatusNotModified was
33110// returned.
33111func (c *SettlementtransactionsListCall) Do(opts ...googleapi.CallOption) (*SettlementtransactionsListResponse, error) {
33112	gensupport.SetOptions(c.urlParams_, opts...)
33113	res, err := c.doRequest("json")
33114	if res != nil && res.StatusCode == http.StatusNotModified {
33115		if res.Body != nil {
33116			res.Body.Close()
33117		}
33118		return nil, &googleapi.Error{
33119			Code:   res.StatusCode,
33120			Header: res.Header,
33121		}
33122	}
33123	if err != nil {
33124		return nil, err
33125	}
33126	defer googleapi.CloseBody(res)
33127	if err := googleapi.CheckResponse(res); err != nil {
33128		return nil, err
33129	}
33130	ret := &SettlementtransactionsListResponse{
33131		ServerResponse: googleapi.ServerResponse{
33132			Header:         res.Header,
33133			HTTPStatusCode: res.StatusCode,
33134		},
33135	}
33136	target := &ret
33137	if err := gensupport.DecodeResponse(target, res); err != nil {
33138		return nil, err
33139	}
33140	return ret, nil
33141	// {
33142	//   "description": "Retrieves a list of transactions for the settlement.",
33143	//   "flatPath": "content/v2.1/{merchantId}/settlementreports/{settlementId}/transactions",
33144	//   "httpMethod": "GET",
33145	//   "id": "content.settlementtransactions.list",
33146	//   "parameterOrder": [
33147	//     "merchantId",
33148	//     "settlementId"
33149	//   ],
33150	//   "parameters": {
33151	//     "maxResults": {
33152	//       "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.",
33153	//       "format": "uint32",
33154	//       "location": "query",
33155	//       "type": "integer"
33156	//     },
33157	//     "merchantId": {
33158	//       "description": "The Merchant Center account to list transactions for.",
33159	//       "format": "uint64",
33160	//       "location": "path",
33161	//       "required": true,
33162	//       "type": "string"
33163	//     },
33164	//     "pageToken": {
33165	//       "description": "The token returned by the previous request.",
33166	//       "location": "query",
33167	//       "type": "string"
33168	//     },
33169	//     "settlementId": {
33170	//       "description": "The Google-provided ID of the settlement.",
33171	//       "location": "path",
33172	//       "required": true,
33173	//       "type": "string"
33174	//     },
33175	//     "transactionIds": {
33176	//       "description": "The list of transactions to return. If not set, all transactions will be returned.",
33177	//       "location": "query",
33178	//       "repeated": true,
33179	//       "type": "string"
33180	//     }
33181	//   },
33182	//   "path": "content/v2.1/{merchantId}/settlementreports/{settlementId}/transactions",
33183	//   "response": {
33184	//     "$ref": "SettlementtransactionsListResponse"
33185	//   },
33186	//   "scopes": [
33187	//     "https://www.googleapis.com/auth/content"
33188	//   ]
33189	// }
33190
33191}
33192
33193// Pages invokes f for each page of results.
33194// A non-nil error returned from f will halt the iteration.
33195// The provided context supersedes any context provided to the Context method.
33196func (c *SettlementtransactionsListCall) Pages(ctx context.Context, f func(*SettlementtransactionsListResponse) error) error {
33197	c.ctx_ = ctx
33198	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
33199	for {
33200		x, err := c.Do()
33201		if err != nil {
33202			return err
33203		}
33204		if err := f(x); err != nil {
33205			return err
33206		}
33207		if x.NextPageToken == "" {
33208			return nil
33209		}
33210		c.PageToken(x.NextPageToken)
33211	}
33212}
33213
33214// method id "content.shippingsettings.custombatch":
33215
33216type ShippingsettingsCustombatchCall struct {
33217	s                                  *APIService
33218	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
33219	urlParams_                         gensupport.URLParams
33220	ctx_                               context.Context
33221	header_                            http.Header
33222}
33223
33224// Custombatch: Retrieves and updates the shipping settings of multiple
33225// accounts in a single request.
33226func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
33227	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33228	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
33229	return c
33230}
33231
33232// Fields allows partial responses to be retrieved. See
33233// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33234// for more information.
33235func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
33236	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33237	return c
33238}
33239
33240// Context sets the context to be used in this call's Do method. Any
33241// pending HTTP request will be aborted if the provided context is
33242// canceled.
33243func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
33244	c.ctx_ = ctx
33245	return c
33246}
33247
33248// Header returns an http.Header that can be modified by the caller to
33249// add HTTP headers to the request.
33250func (c *ShippingsettingsCustombatchCall) Header() http.Header {
33251	if c.header_ == nil {
33252		c.header_ = make(http.Header)
33253	}
33254	return c.header_
33255}
33256
33257func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
33258	reqHeaders := make(http.Header)
33259	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
33260	for k, v := range c.header_ {
33261		reqHeaders[k] = v
33262	}
33263	reqHeaders.Set("User-Agent", c.s.userAgent())
33264	var body io.Reader = nil
33265	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
33266	if err != nil {
33267		return nil, err
33268	}
33269	reqHeaders.Set("Content-Type", "application/json")
33270	c.urlParams_.Set("alt", alt)
33271	c.urlParams_.Set("prettyPrint", "false")
33272	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/shippingsettings/batch")
33273	urls += "?" + c.urlParams_.Encode()
33274	req, err := http.NewRequest("POST", urls, body)
33275	if err != nil {
33276		return nil, err
33277	}
33278	req.Header = reqHeaders
33279	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33280}
33281
33282// Do executes the "content.shippingsettings.custombatch" call.
33283// Exactly one of *ShippingsettingsCustomBatchResponse or error will be
33284// non-nil. Any non-2xx status code is an error. Response headers are in
33285// either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
33286// (if a response was returned at all) in
33287// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33288// whether the returned error was because http.StatusNotModified was
33289// returned.
33290func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
33291	gensupport.SetOptions(c.urlParams_, opts...)
33292	res, err := c.doRequest("json")
33293	if res != nil && res.StatusCode == http.StatusNotModified {
33294		if res.Body != nil {
33295			res.Body.Close()
33296		}
33297		return nil, &googleapi.Error{
33298			Code:   res.StatusCode,
33299			Header: res.Header,
33300		}
33301	}
33302	if err != nil {
33303		return nil, err
33304	}
33305	defer googleapi.CloseBody(res)
33306	if err := googleapi.CheckResponse(res); err != nil {
33307		return nil, err
33308	}
33309	ret := &ShippingsettingsCustomBatchResponse{
33310		ServerResponse: googleapi.ServerResponse{
33311			Header:         res.Header,
33312			HTTPStatusCode: res.StatusCode,
33313		},
33314	}
33315	target := &ret
33316	if err := gensupport.DecodeResponse(target, res); err != nil {
33317		return nil, err
33318	}
33319	return ret, nil
33320	// {
33321	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
33322	//   "flatPath": "content/v2.1/shippingsettings/batch",
33323	//   "httpMethod": "POST",
33324	//   "id": "content.shippingsettings.custombatch",
33325	//   "parameterOrder": [],
33326	//   "parameters": {},
33327	//   "path": "content/v2.1/shippingsettings/batch",
33328	//   "request": {
33329	//     "$ref": "ShippingsettingsCustomBatchRequest"
33330	//   },
33331	//   "response": {
33332	//     "$ref": "ShippingsettingsCustomBatchResponse"
33333	//   },
33334	//   "scopes": [
33335	//     "https://www.googleapis.com/auth/content"
33336	//   ]
33337	// }
33338
33339}
33340
33341// method id "content.shippingsettings.get":
33342
33343type ShippingsettingsGetCall struct {
33344	s            *APIService
33345	merchantId   uint64
33346	accountId    uint64
33347	urlParams_   gensupport.URLParams
33348	ifNoneMatch_ string
33349	ctx_         context.Context
33350	header_      http.Header
33351}
33352
33353// Get: Retrieves the shipping settings of the account.
33354func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
33355	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33356	c.merchantId = merchantId
33357	c.accountId = accountId
33358	return c
33359}
33360
33361// Fields allows partial responses to be retrieved. See
33362// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33363// for more information.
33364func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
33365	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33366	return c
33367}
33368
33369// IfNoneMatch sets the optional parameter which makes the operation
33370// fail if the object's ETag matches the given value. This is useful for
33371// getting updates only after the object has changed since the last
33372// request. Use googleapi.IsNotModified to check whether the response
33373// error from Do is the result of In-None-Match.
33374func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
33375	c.ifNoneMatch_ = entityTag
33376	return c
33377}
33378
33379// Context sets the context to be used in this call's Do method. Any
33380// pending HTTP request will be aborted if the provided context is
33381// canceled.
33382func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
33383	c.ctx_ = ctx
33384	return c
33385}
33386
33387// Header returns an http.Header that can be modified by the caller to
33388// add HTTP headers to the request.
33389func (c *ShippingsettingsGetCall) Header() http.Header {
33390	if c.header_ == nil {
33391		c.header_ = make(http.Header)
33392	}
33393	return c.header_
33394}
33395
33396func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
33397	reqHeaders := make(http.Header)
33398	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
33399	for k, v := range c.header_ {
33400		reqHeaders[k] = v
33401	}
33402	reqHeaders.Set("User-Agent", c.s.userAgent())
33403	if c.ifNoneMatch_ != "" {
33404		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33405	}
33406	var body io.Reader = nil
33407	c.urlParams_.Set("alt", alt)
33408	c.urlParams_.Set("prettyPrint", "false")
33409	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/shippingsettings/{accountId}")
33410	urls += "?" + c.urlParams_.Encode()
33411	req, err := http.NewRequest("GET", urls, body)
33412	if err != nil {
33413		return nil, err
33414	}
33415	req.Header = reqHeaders
33416	googleapi.Expand(req.URL, map[string]string{
33417		"merchantId": strconv.FormatUint(c.merchantId, 10),
33418		"accountId":  strconv.FormatUint(c.accountId, 10),
33419	})
33420	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33421}
33422
33423// Do executes the "content.shippingsettings.get" call.
33424// Exactly one of *ShippingSettings or error will be non-nil. Any
33425// non-2xx status code is an error. Response headers are in either
33426// *ShippingSettings.ServerResponse.Header or (if a response was
33427// returned at all) in error.(*googleapi.Error).Header. Use
33428// googleapi.IsNotModified to check whether the returned error was
33429// because http.StatusNotModified was returned.
33430func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
33431	gensupport.SetOptions(c.urlParams_, opts...)
33432	res, err := c.doRequest("json")
33433	if res != nil && res.StatusCode == http.StatusNotModified {
33434		if res.Body != nil {
33435			res.Body.Close()
33436		}
33437		return nil, &googleapi.Error{
33438			Code:   res.StatusCode,
33439			Header: res.Header,
33440		}
33441	}
33442	if err != nil {
33443		return nil, err
33444	}
33445	defer googleapi.CloseBody(res)
33446	if err := googleapi.CheckResponse(res); err != nil {
33447		return nil, err
33448	}
33449	ret := &ShippingSettings{
33450		ServerResponse: googleapi.ServerResponse{
33451			Header:         res.Header,
33452			HTTPStatusCode: res.StatusCode,
33453		},
33454	}
33455	target := &ret
33456	if err := gensupport.DecodeResponse(target, res); err != nil {
33457		return nil, err
33458	}
33459	return ret, nil
33460	// {
33461	//   "description": "Retrieves the shipping settings of the account.",
33462	//   "flatPath": "content/v2.1/{merchantId}/shippingsettings/{accountId}",
33463	//   "httpMethod": "GET",
33464	//   "id": "content.shippingsettings.get",
33465	//   "parameterOrder": [
33466	//     "merchantId",
33467	//     "accountId"
33468	//   ],
33469	//   "parameters": {
33470	//     "accountId": {
33471	//       "description": "The ID of the account for which to get/update shipping settings.",
33472	//       "format": "uint64",
33473	//       "location": "path",
33474	//       "required": true,
33475	//       "type": "string"
33476	//     },
33477	//     "merchantId": {
33478	//       "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.",
33479	//       "format": "uint64",
33480	//       "location": "path",
33481	//       "required": true,
33482	//       "type": "string"
33483	//     }
33484	//   },
33485	//   "path": "content/v2.1/{merchantId}/shippingsettings/{accountId}",
33486	//   "response": {
33487	//     "$ref": "ShippingSettings"
33488	//   },
33489	//   "scopes": [
33490	//     "https://www.googleapis.com/auth/content"
33491	//   ]
33492	// }
33493
33494}
33495
33496// method id "content.shippingsettings.getsupportedcarriers":
33497
33498type ShippingsettingsGetsupportedcarriersCall struct {
33499	s            *APIService
33500	merchantId   uint64
33501	urlParams_   gensupport.URLParams
33502	ifNoneMatch_ string
33503	ctx_         context.Context
33504	header_      http.Header
33505}
33506
33507// Getsupportedcarriers: Retrieves supported carriers and carrier
33508// services for an account.
33509func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
33510	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33511	c.merchantId = merchantId
33512	return c
33513}
33514
33515// Fields allows partial responses to be retrieved. See
33516// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33517// for more information.
33518func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
33519	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33520	return c
33521}
33522
33523// IfNoneMatch sets the optional parameter which makes the operation
33524// fail if the object's ETag matches the given value. This is useful for
33525// getting updates only after the object has changed since the last
33526// request. Use googleapi.IsNotModified to check whether the response
33527// error from Do is the result of In-None-Match.
33528func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
33529	c.ifNoneMatch_ = entityTag
33530	return c
33531}
33532
33533// Context sets the context to be used in this call's Do method. Any
33534// pending HTTP request will be aborted if the provided context is
33535// canceled.
33536func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
33537	c.ctx_ = ctx
33538	return c
33539}
33540
33541// Header returns an http.Header that can be modified by the caller to
33542// add HTTP headers to the request.
33543func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
33544	if c.header_ == nil {
33545		c.header_ = make(http.Header)
33546	}
33547	return c.header_
33548}
33549
33550func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
33551	reqHeaders := make(http.Header)
33552	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
33553	for k, v := range c.header_ {
33554		reqHeaders[k] = v
33555	}
33556	reqHeaders.Set("User-Agent", c.s.userAgent())
33557	if c.ifNoneMatch_ != "" {
33558		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33559	}
33560	var body io.Reader = nil
33561	c.urlParams_.Set("alt", alt)
33562	c.urlParams_.Set("prettyPrint", "false")
33563	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/supportedCarriers")
33564	urls += "?" + c.urlParams_.Encode()
33565	req, err := http.NewRequest("GET", urls, body)
33566	if err != nil {
33567		return nil, err
33568	}
33569	req.Header = reqHeaders
33570	googleapi.Expand(req.URL, map[string]string{
33571		"merchantId": strconv.FormatUint(c.merchantId, 10),
33572	})
33573	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33574}
33575
33576// Do executes the "content.shippingsettings.getsupportedcarriers" call.
33577// Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
33578// will be non-nil. Any non-2xx status code is an error. Response
33579// headers are in either
33580// *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
33581// or (if a response was returned at all) in
33582// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33583// whether the returned error was because http.StatusNotModified was
33584// returned.
33585func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
33586	gensupport.SetOptions(c.urlParams_, opts...)
33587	res, err := c.doRequest("json")
33588	if res != nil && res.StatusCode == http.StatusNotModified {
33589		if res.Body != nil {
33590			res.Body.Close()
33591		}
33592		return nil, &googleapi.Error{
33593			Code:   res.StatusCode,
33594			Header: res.Header,
33595		}
33596	}
33597	if err != nil {
33598		return nil, err
33599	}
33600	defer googleapi.CloseBody(res)
33601	if err := googleapi.CheckResponse(res); err != nil {
33602		return nil, err
33603	}
33604	ret := &ShippingsettingsGetSupportedCarriersResponse{
33605		ServerResponse: googleapi.ServerResponse{
33606			Header:         res.Header,
33607			HTTPStatusCode: res.StatusCode,
33608		},
33609	}
33610	target := &ret
33611	if err := gensupport.DecodeResponse(target, res); err != nil {
33612		return nil, err
33613	}
33614	return ret, nil
33615	// {
33616	//   "description": "Retrieves supported carriers and carrier services for an account.",
33617	//   "flatPath": "content/v2.1/{merchantId}/supportedCarriers",
33618	//   "httpMethod": "GET",
33619	//   "id": "content.shippingsettings.getsupportedcarriers",
33620	//   "parameterOrder": [
33621	//     "merchantId"
33622	//   ],
33623	//   "parameters": {
33624	//     "merchantId": {
33625	//       "description": "The ID of the account for which to retrieve the supported carriers.",
33626	//       "format": "uint64",
33627	//       "location": "path",
33628	//       "required": true,
33629	//       "type": "string"
33630	//     }
33631	//   },
33632	//   "path": "content/v2.1/{merchantId}/supportedCarriers",
33633	//   "response": {
33634	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
33635	//   },
33636	//   "scopes": [
33637	//     "https://www.googleapis.com/auth/content"
33638	//   ]
33639	// }
33640
33641}
33642
33643// method id "content.shippingsettings.getsupportedholidays":
33644
33645type ShippingsettingsGetsupportedholidaysCall struct {
33646	s            *APIService
33647	merchantId   uint64
33648	urlParams_   gensupport.URLParams
33649	ifNoneMatch_ string
33650	ctx_         context.Context
33651	header_      http.Header
33652}
33653
33654// Getsupportedholidays: Retrieves supported holidays for an account.
33655func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
33656	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33657	c.merchantId = merchantId
33658	return c
33659}
33660
33661// Fields allows partial responses to be retrieved. See
33662// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33663// for more information.
33664func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
33665	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33666	return c
33667}
33668
33669// IfNoneMatch sets the optional parameter which makes the operation
33670// fail if the object's ETag matches the given value. This is useful for
33671// getting updates only after the object has changed since the last
33672// request. Use googleapi.IsNotModified to check whether the response
33673// error from Do is the result of In-None-Match.
33674func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
33675	c.ifNoneMatch_ = entityTag
33676	return c
33677}
33678
33679// Context sets the context to be used in this call's Do method. Any
33680// pending HTTP request will be aborted if the provided context is
33681// canceled.
33682func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
33683	c.ctx_ = ctx
33684	return c
33685}
33686
33687// Header returns an http.Header that can be modified by the caller to
33688// add HTTP headers to the request.
33689func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
33690	if c.header_ == nil {
33691		c.header_ = make(http.Header)
33692	}
33693	return c.header_
33694}
33695
33696func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
33697	reqHeaders := make(http.Header)
33698	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
33699	for k, v := range c.header_ {
33700		reqHeaders[k] = v
33701	}
33702	reqHeaders.Set("User-Agent", c.s.userAgent())
33703	if c.ifNoneMatch_ != "" {
33704		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33705	}
33706	var body io.Reader = nil
33707	c.urlParams_.Set("alt", alt)
33708	c.urlParams_.Set("prettyPrint", "false")
33709	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/supportedHolidays")
33710	urls += "?" + c.urlParams_.Encode()
33711	req, err := http.NewRequest("GET", urls, body)
33712	if err != nil {
33713		return nil, err
33714	}
33715	req.Header = reqHeaders
33716	googleapi.Expand(req.URL, map[string]string{
33717		"merchantId": strconv.FormatUint(c.merchantId, 10),
33718	})
33719	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33720}
33721
33722// Do executes the "content.shippingsettings.getsupportedholidays" call.
33723// Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
33724// will be non-nil. Any non-2xx status code is an error. Response
33725// headers are in either
33726// *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
33727// or (if a response was returned at all) in
33728// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33729// whether the returned error was because http.StatusNotModified was
33730// returned.
33731func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
33732	gensupport.SetOptions(c.urlParams_, opts...)
33733	res, err := c.doRequest("json")
33734	if res != nil && res.StatusCode == http.StatusNotModified {
33735		if res.Body != nil {
33736			res.Body.Close()
33737		}
33738		return nil, &googleapi.Error{
33739			Code:   res.StatusCode,
33740			Header: res.Header,
33741		}
33742	}
33743	if err != nil {
33744		return nil, err
33745	}
33746	defer googleapi.CloseBody(res)
33747	if err := googleapi.CheckResponse(res); err != nil {
33748		return nil, err
33749	}
33750	ret := &ShippingsettingsGetSupportedHolidaysResponse{
33751		ServerResponse: googleapi.ServerResponse{
33752			Header:         res.Header,
33753			HTTPStatusCode: res.StatusCode,
33754		},
33755	}
33756	target := &ret
33757	if err := gensupport.DecodeResponse(target, res); err != nil {
33758		return nil, err
33759	}
33760	return ret, nil
33761	// {
33762	//   "description": "Retrieves supported holidays for an account.",
33763	//   "flatPath": "content/v2.1/{merchantId}/supportedHolidays",
33764	//   "httpMethod": "GET",
33765	//   "id": "content.shippingsettings.getsupportedholidays",
33766	//   "parameterOrder": [
33767	//     "merchantId"
33768	//   ],
33769	//   "parameters": {
33770	//     "merchantId": {
33771	//       "description": "The ID of the account for which to retrieve the supported holidays.",
33772	//       "format": "uint64",
33773	//       "location": "path",
33774	//       "required": true,
33775	//       "type": "string"
33776	//     }
33777	//   },
33778	//   "path": "content/v2.1/{merchantId}/supportedHolidays",
33779	//   "response": {
33780	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
33781	//   },
33782	//   "scopes": [
33783	//     "https://www.googleapis.com/auth/content"
33784	//   ]
33785	// }
33786
33787}
33788
33789// method id "content.shippingsettings.getsupportedpickupservices":
33790
33791type ShippingsettingsGetsupportedpickupservicesCall struct {
33792	s            *APIService
33793	merchantId   uint64
33794	urlParams_   gensupport.URLParams
33795	ifNoneMatch_ string
33796	ctx_         context.Context
33797	header_      http.Header
33798}
33799
33800// Getsupportedpickupservices: Retrieves supported pickup services for
33801// an account.
33802func (r *ShippingsettingsService) Getsupportedpickupservices(merchantId uint64) *ShippingsettingsGetsupportedpickupservicesCall {
33803	c := &ShippingsettingsGetsupportedpickupservicesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33804	c.merchantId = merchantId
33805	return c
33806}
33807
33808// Fields allows partial responses to be retrieved. See
33809// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33810// for more information.
33811func (c *ShippingsettingsGetsupportedpickupservicesCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedpickupservicesCall {
33812	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33813	return c
33814}
33815
33816// IfNoneMatch sets the optional parameter which makes the operation
33817// fail if the object's ETag matches the given value. This is useful for
33818// getting updates only after the object has changed since the last
33819// request. Use googleapi.IsNotModified to check whether the response
33820// error from Do is the result of In-None-Match.
33821func (c *ShippingsettingsGetsupportedpickupservicesCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedpickupservicesCall {
33822	c.ifNoneMatch_ = entityTag
33823	return c
33824}
33825
33826// Context sets the context to be used in this call's Do method. Any
33827// pending HTTP request will be aborted if the provided context is
33828// canceled.
33829func (c *ShippingsettingsGetsupportedpickupservicesCall) Context(ctx context.Context) *ShippingsettingsGetsupportedpickupservicesCall {
33830	c.ctx_ = ctx
33831	return c
33832}
33833
33834// Header returns an http.Header that can be modified by the caller to
33835// add HTTP headers to the request.
33836func (c *ShippingsettingsGetsupportedpickupservicesCall) Header() http.Header {
33837	if c.header_ == nil {
33838		c.header_ = make(http.Header)
33839	}
33840	return c.header_
33841}
33842
33843func (c *ShippingsettingsGetsupportedpickupservicesCall) doRequest(alt string) (*http.Response, error) {
33844	reqHeaders := make(http.Header)
33845	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
33846	for k, v := range c.header_ {
33847		reqHeaders[k] = v
33848	}
33849	reqHeaders.Set("User-Agent", c.s.userAgent())
33850	if c.ifNoneMatch_ != "" {
33851		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33852	}
33853	var body io.Reader = nil
33854	c.urlParams_.Set("alt", alt)
33855	c.urlParams_.Set("prettyPrint", "false")
33856	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/supportedPickupServices")
33857	urls += "?" + c.urlParams_.Encode()
33858	req, err := http.NewRequest("GET", urls, body)
33859	if err != nil {
33860		return nil, err
33861	}
33862	req.Header = reqHeaders
33863	googleapi.Expand(req.URL, map[string]string{
33864		"merchantId": strconv.FormatUint(c.merchantId, 10),
33865	})
33866	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33867}
33868
33869// Do executes the "content.shippingsettings.getsupportedpickupservices" call.
33870// Exactly one of *ShippingsettingsGetSupportedPickupServicesResponse or
33871// error will be non-nil. Any non-2xx status code is an error. Response
33872// headers are in either
33873// *ShippingsettingsGetSupportedPickupServicesResponse.ServerResponse.Hea
33874// der or (if a response was returned at all) in
33875// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33876// whether the returned error was because http.StatusNotModified was
33877// returned.
33878func (c *ShippingsettingsGetsupportedpickupservicesCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedPickupServicesResponse, error) {
33879	gensupport.SetOptions(c.urlParams_, opts...)
33880	res, err := c.doRequest("json")
33881	if res != nil && res.StatusCode == http.StatusNotModified {
33882		if res.Body != nil {
33883			res.Body.Close()
33884		}
33885		return nil, &googleapi.Error{
33886			Code:   res.StatusCode,
33887			Header: res.Header,
33888		}
33889	}
33890	if err != nil {
33891		return nil, err
33892	}
33893	defer googleapi.CloseBody(res)
33894	if err := googleapi.CheckResponse(res); err != nil {
33895		return nil, err
33896	}
33897	ret := &ShippingsettingsGetSupportedPickupServicesResponse{
33898		ServerResponse: googleapi.ServerResponse{
33899			Header:         res.Header,
33900			HTTPStatusCode: res.StatusCode,
33901		},
33902	}
33903	target := &ret
33904	if err := gensupport.DecodeResponse(target, res); err != nil {
33905		return nil, err
33906	}
33907	return ret, nil
33908	// {
33909	//   "description": "Retrieves supported pickup services for an account.",
33910	//   "flatPath": "content/v2.1/{merchantId}/supportedPickupServices",
33911	//   "httpMethod": "GET",
33912	//   "id": "content.shippingsettings.getsupportedpickupservices",
33913	//   "parameterOrder": [
33914	//     "merchantId"
33915	//   ],
33916	//   "parameters": {
33917	//     "merchantId": {
33918	//       "description": "The ID of the account for which to retrieve the supported pickup services.",
33919	//       "format": "uint64",
33920	//       "location": "path",
33921	//       "required": true,
33922	//       "type": "string"
33923	//     }
33924	//   },
33925	//   "path": "content/v2.1/{merchantId}/supportedPickupServices",
33926	//   "response": {
33927	//     "$ref": "ShippingsettingsGetSupportedPickupServicesResponse"
33928	//   },
33929	//   "scopes": [
33930	//     "https://www.googleapis.com/auth/content"
33931	//   ]
33932	// }
33933
33934}
33935
33936// method id "content.shippingsettings.list":
33937
33938type ShippingsettingsListCall struct {
33939	s            *APIService
33940	merchantId   uint64
33941	urlParams_   gensupport.URLParams
33942	ifNoneMatch_ string
33943	ctx_         context.Context
33944	header_      http.Header
33945}
33946
33947// List: Lists the shipping settings of the sub-accounts in your
33948// Merchant Center account.
33949func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
33950	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33951	c.merchantId = merchantId
33952	return c
33953}
33954
33955// MaxResults sets the optional parameter "maxResults": The maximum
33956// number of shipping settings to return in the response, used for
33957// paging.
33958func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
33959	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
33960	return c
33961}
33962
33963// PageToken sets the optional parameter "pageToken": The token returned
33964// by the previous request.
33965func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
33966	c.urlParams_.Set("pageToken", pageToken)
33967	return c
33968}
33969
33970// Fields allows partial responses to be retrieved. See
33971// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33972// for more information.
33973func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
33974	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33975	return c
33976}
33977
33978// IfNoneMatch sets the optional parameter which makes the operation
33979// fail if the object's ETag matches the given value. This is useful for
33980// getting updates only after the object has changed since the last
33981// request. Use googleapi.IsNotModified to check whether the response
33982// error from Do is the result of In-None-Match.
33983func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
33984	c.ifNoneMatch_ = entityTag
33985	return c
33986}
33987
33988// Context sets the context to be used in this call's Do method. Any
33989// pending HTTP request will be aborted if the provided context is
33990// canceled.
33991func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
33992	c.ctx_ = ctx
33993	return c
33994}
33995
33996// Header returns an http.Header that can be modified by the caller to
33997// add HTTP headers to the request.
33998func (c *ShippingsettingsListCall) Header() http.Header {
33999	if c.header_ == nil {
34000		c.header_ = make(http.Header)
34001	}
34002	return c.header_
34003}
34004
34005func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
34006	reqHeaders := make(http.Header)
34007	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
34008	for k, v := range c.header_ {
34009		reqHeaders[k] = v
34010	}
34011	reqHeaders.Set("User-Agent", c.s.userAgent())
34012	if c.ifNoneMatch_ != "" {
34013		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34014	}
34015	var body io.Reader = nil
34016	c.urlParams_.Set("alt", alt)
34017	c.urlParams_.Set("prettyPrint", "false")
34018	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/shippingsettings")
34019	urls += "?" + c.urlParams_.Encode()
34020	req, err := http.NewRequest("GET", urls, body)
34021	if err != nil {
34022		return nil, err
34023	}
34024	req.Header = reqHeaders
34025	googleapi.Expand(req.URL, map[string]string{
34026		"merchantId": strconv.FormatUint(c.merchantId, 10),
34027	})
34028	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34029}
34030
34031// Do executes the "content.shippingsettings.list" call.
34032// Exactly one of *ShippingsettingsListResponse or error will be
34033// non-nil. Any non-2xx status code is an error. Response headers are in
34034// either *ShippingsettingsListResponse.ServerResponse.Header or (if a
34035// response was returned at all) in error.(*googleapi.Error).Header. Use
34036// googleapi.IsNotModified to check whether the returned error was
34037// because http.StatusNotModified was returned.
34038func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
34039	gensupport.SetOptions(c.urlParams_, opts...)
34040	res, err := c.doRequest("json")
34041	if res != nil && res.StatusCode == http.StatusNotModified {
34042		if res.Body != nil {
34043			res.Body.Close()
34044		}
34045		return nil, &googleapi.Error{
34046			Code:   res.StatusCode,
34047			Header: res.Header,
34048		}
34049	}
34050	if err != nil {
34051		return nil, err
34052	}
34053	defer googleapi.CloseBody(res)
34054	if err := googleapi.CheckResponse(res); err != nil {
34055		return nil, err
34056	}
34057	ret := &ShippingsettingsListResponse{
34058		ServerResponse: googleapi.ServerResponse{
34059			Header:         res.Header,
34060			HTTPStatusCode: res.StatusCode,
34061		},
34062	}
34063	target := &ret
34064	if err := gensupport.DecodeResponse(target, res); err != nil {
34065		return nil, err
34066	}
34067	return ret, nil
34068	// {
34069	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
34070	//   "flatPath": "content/v2.1/{merchantId}/shippingsettings",
34071	//   "httpMethod": "GET",
34072	//   "id": "content.shippingsettings.list",
34073	//   "parameterOrder": [
34074	//     "merchantId"
34075	//   ],
34076	//   "parameters": {
34077	//     "maxResults": {
34078	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
34079	//       "format": "uint32",
34080	//       "location": "query",
34081	//       "type": "integer"
34082	//     },
34083	//     "merchantId": {
34084	//       "description": "The ID of the managing account. This must be a multi-client account.",
34085	//       "format": "uint64",
34086	//       "location": "path",
34087	//       "required": true,
34088	//       "type": "string"
34089	//     },
34090	//     "pageToken": {
34091	//       "description": "The token returned by the previous request.",
34092	//       "location": "query",
34093	//       "type": "string"
34094	//     }
34095	//   },
34096	//   "path": "content/v2.1/{merchantId}/shippingsettings",
34097	//   "response": {
34098	//     "$ref": "ShippingsettingsListResponse"
34099	//   },
34100	//   "scopes": [
34101	//     "https://www.googleapis.com/auth/content"
34102	//   ]
34103	// }
34104
34105}
34106
34107// Pages invokes f for each page of results.
34108// A non-nil error returned from f will halt the iteration.
34109// The provided context supersedes any context provided to the Context method.
34110func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
34111	c.ctx_ = ctx
34112	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
34113	for {
34114		x, err := c.Do()
34115		if err != nil {
34116			return err
34117		}
34118		if err := f(x); err != nil {
34119			return err
34120		}
34121		if x.NextPageToken == "" {
34122			return nil
34123		}
34124		c.PageToken(x.NextPageToken)
34125	}
34126}
34127
34128// method id "content.shippingsettings.update":
34129
34130type ShippingsettingsUpdateCall struct {
34131	s                *APIService
34132	merchantId       uint64
34133	accountId        uint64
34134	shippingsettings *ShippingSettings
34135	urlParams_       gensupport.URLParams
34136	ctx_             context.Context
34137	header_          http.Header
34138}
34139
34140// Update: Updates the shipping settings of the account. Any fields that
34141// are not provided are deleted from the resource.
34142func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
34143	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34144	c.merchantId = merchantId
34145	c.accountId = accountId
34146	c.shippingsettings = shippingsettings
34147	return c
34148}
34149
34150// Fields allows partial responses to be retrieved. See
34151// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34152// for more information.
34153func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
34154	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34155	return c
34156}
34157
34158// Context sets the context to be used in this call's Do method. Any
34159// pending HTTP request will be aborted if the provided context is
34160// canceled.
34161func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
34162	c.ctx_ = ctx
34163	return c
34164}
34165
34166// Header returns an http.Header that can be modified by the caller to
34167// add HTTP headers to the request.
34168func (c *ShippingsettingsUpdateCall) Header() http.Header {
34169	if c.header_ == nil {
34170		c.header_ = make(http.Header)
34171	}
34172	return c.header_
34173}
34174
34175func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
34176	reqHeaders := make(http.Header)
34177	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124")
34178	for k, v := range c.header_ {
34179		reqHeaders[k] = v
34180	}
34181	reqHeaders.Set("User-Agent", c.s.userAgent())
34182	var body io.Reader = nil
34183	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
34184	if err != nil {
34185		return nil, err
34186	}
34187	reqHeaders.Set("Content-Type", "application/json")
34188	c.urlParams_.Set("alt", alt)
34189	c.urlParams_.Set("prettyPrint", "false")
34190	urls := googleapi.ResolveRelative(c.s.BasePath, "content/v2.1/{merchantId}/shippingsettings/{accountId}")
34191	urls += "?" + c.urlParams_.Encode()
34192	req, err := http.NewRequest("PUT", urls, body)
34193	if err != nil {
34194		return nil, err
34195	}
34196	req.Header = reqHeaders
34197	googleapi.Expand(req.URL, map[string]string{
34198		"merchantId": strconv.FormatUint(c.merchantId, 10),
34199		"accountId":  strconv.FormatUint(c.accountId, 10),
34200	})
34201	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34202}
34203
34204// Do executes the "content.shippingsettings.update" call.
34205// Exactly one of *ShippingSettings or error will be non-nil. Any
34206// non-2xx status code is an error. Response headers are in either
34207// *ShippingSettings.ServerResponse.Header or (if a response was
34208// returned at all) in error.(*googleapi.Error).Header. Use
34209// googleapi.IsNotModified to check whether the returned error was
34210// because http.StatusNotModified was returned.
34211func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
34212	gensupport.SetOptions(c.urlParams_, opts...)
34213	res, err := c.doRequest("json")
34214	if res != nil && res.StatusCode == http.StatusNotModified {
34215		if res.Body != nil {
34216			res.Body.Close()
34217		}
34218		return nil, &googleapi.Error{
34219			Code:   res.StatusCode,
34220			Header: res.Header,
34221		}
34222	}
34223	if err != nil {
34224		return nil, err
34225	}
34226	defer googleapi.CloseBody(res)
34227	if err := googleapi.CheckResponse(res); err != nil {
34228		return nil, err
34229	}
34230	ret := &ShippingSettings{
34231		ServerResponse: googleapi.ServerResponse{
34232			Header:         res.Header,
34233			HTTPStatusCode: res.StatusCode,
34234		},
34235	}
34236	target := &ret
34237	if err := gensupport.DecodeResponse(target, res); err != nil {
34238		return nil, err
34239	}
34240	return ret, nil
34241	// {
34242	//   "description": "Updates the shipping settings of the account. Any fields that are not provided are deleted from the resource.",
34243	//   "flatPath": "content/v2.1/{merchantId}/shippingsettings/{accountId}",
34244	//   "httpMethod": "PUT",
34245	//   "id": "content.shippingsettings.update",
34246	//   "parameterOrder": [
34247	//     "merchantId",
34248	//     "accountId"
34249	//   ],
34250	//   "parameters": {
34251	//     "accountId": {
34252	//       "description": "The ID of the account for which to get/update shipping settings.",
34253	//       "format": "uint64",
34254	//       "location": "path",
34255	//       "required": true,
34256	//       "type": "string"
34257	//     },
34258	//     "merchantId": {
34259	//       "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.",
34260	//       "format": "uint64",
34261	//       "location": "path",
34262	//       "required": true,
34263	//       "type": "string"
34264	//     }
34265	//   },
34266	//   "path": "content/v2.1/{merchantId}/shippingsettings/{accountId}",
34267	//   "request": {
34268	//     "$ref": "ShippingSettings"
34269	//   },
34270	//   "response": {
34271	//     "$ref": "ShippingSettings"
34272	//   },
34273	//   "scopes": [
34274	//     "https://www.googleapis.com/auth/content"
34275	//   ]
34276	// }
34277
34278}
34279